【无人机设计与技术】设计内部和外部 PID 回路,用于控制四轴飞行器的姿态和位移

摘要

本文设计了一个用于四轴飞行器控制的内部和外部PID回路。外部PID回路控制飞行器的位移,而内部PID回路则用于控制飞行器的姿态。这种控制结构能够有效调节飞行器的姿态和位移,实现平稳飞行并响应给定的轨迹。通过Simulink仿真模型对控制效果进行了验证,结果显示该设计能够稳定飞行器并具有较好的动态响应和稳态误差特性。

理论

四轴飞行器具有复杂的非线性和耦合特性,因此控制其姿态和位移是一项具有挑战性的任务。通过将控制器分为两个PID回路,外部回路控制位置,而内部回路控制姿态,可以有效地分解控制任务。

姿态控制(内部PID回路):姿态角度包括偏航角(Yaw, ψ)、俯仰角(Pitch, θ)和横滚角(Roll, φ)。内部PID控制器的任务是调节这些角度,使得飞行器的姿态稳定。姿态控制器的输入是期望角度和实际角度之间的误差。

位置控制(外部PID回路):位置控制用于调节飞行器在空间中的位置(x, y, z)。通过将期望位置和实际位置之间的误差输入外部PID控制器,生成所需的姿态角度作为内部PID控制器的输入。

PID控制器的公式如下:

实验结果

通过MATLAB Simulink模型进行仿真,飞行器能够稳定在设定的姿态和位移上。下图展示了飞行器在不同时间点的姿态和位移响应。该控制系统的动态响应具有良好的稳定性,且稳态误差较小。飞行器能够跟踪给定的轨迹,姿态角度和位移误差控制在合理范围内。

姿态响应:仿真结果显示,偏航、俯仰和横滚角度能够迅速达到稳定状态,并且稳态误差接近于零。 位移响应:位移响应同样表现出良好的动态特性,飞行器能够按照给定的轨迹移动,且位移误差较小。

部分代码

以下是用于四轴飞行器姿态和位移控制的部分MATLAB代码:

复制代码
% 定义系统参数
Kp_attitude = 1.5;
Ki_attitude = 0.1;
Kd_attitude = 0.5;

Kp_position = 2.0;
Ki_position = 0.2;
Kd_position = 0.6;

% 姿态控制器(内部回路)
phi_error = phi_d - phi;
theta_error = theta_d - theta;
psi_error = psi_d - psi;

u_phi = Kp_attitude * phi_error + Ki_attitude * integral(phi_error) + Kd_attitude * derivative(phi_error);
u_theta = Kp_attitude * theta_error + Ki_attitude * integral(theta_error) + Kd_attitude * derivative(theta_error);
u_psi = Kp_attitude * psi_error + Ki_attitude * integral(psi_error) + Kd_attitude * derivative(psi_error);

% 位置控制器(外部回路)
x_error = x_d - x;
y_error = y_d - y;
z_error = z_d - z;

u_x = Kp_position * x_error + Ki_position * integral(x_error) + Kd_position * derivative(x_error);
u_y = Kp_position * y_error + Ki_position * integral(y_error) + Kd_position * derivative(y_error);
u_z = Kp_position * z_error + Ki_position * integral(z_error) + Kd_position * derivative(z_error);

% 将控制信号输入飞行器模型
QuadcopterModel(u_phi, u_theta, u_psi, u_x, u_y, u_z);

参考文献

  1. Bouabdallah, S., Murrieri, P., & Siegwart, R. (2004). Design and control of an indoor micro quadrotor. Proceedings of the 2004 IEEE International Conference on Robotics and Automation (ICRA), 3, 4393-4398.

  2. Castillo, P., Lozano, R., & Dzul, A. (2005). Modelling and control of mini-flying machines. Springer. Pounds, P., Mahony, R., & Corke, P. (2006). Modelling and control of a quad-rotor robot. Proceedings of the 2006 Australasian Conference on Robotics and Automation (ACRA), 44(4), 299-308.

相关推荐
weixin_418007602 小时前
大疆无人机的二次开发
无人机
云卓SKYDROID2 小时前
无人机军用与民用技术对比分析
人工智能·无人机·科普·高科技·云卓科技
云卓SKYDROID3 小时前
无人机光纤FC接口模块技术分析
人工智能·无人机·科普·高科技
陕西艾瑞科惯性技术有限公司3 小时前
让飞行姿态 “可感知”:为什么无人机需要三轴陀螺仪?
嵌入式硬件·机器学习·机器人·无人机·pcb工艺
东莞市德晟智能科技有限公司3 小时前
舵机在弹簧刀无人机中的作用是什么?
无人机
视觉语言导航20 小时前
低空城市场景下的多无人机任务规划与动态协调!CoordField:无人机任务分配的智能协调场
人工智能·深度学习·无人机·具身智能
小哈里1 天前
【无人机】无人机UAV、穿越机FPV的概念介绍,机型与工具,证书与规定
无人机·地面站·飞控系统·uav·fpv
Coovally AI模型快速验证1 天前
基于YOLO-NAS-Pose的无人机象群姿态估计:群体行为分析的突破
人工智能·神经网络·算法·yolo·目标检测·无人机·cocos2d
电鱼智能的电小鱼1 天前
无人机巡检智能边缘计算终端技术方案‌‌——基于EFISH-SCB-RK3588工控机/SAIL-RK3588核心板的国产化替代方案‌
网络·人工智能·嵌入式硬件·算法·机器人·无人机·边缘计算
Perishell2 天前
无人机避障——感知部分(Ubuntu 20.04 复现Vins Fusion跑数据集)胎教级教程
无人机·slam·建图感知