角度环与角速度环:内环与外环的本质区别
做飞控这么多年,我见过不少新手一上来就调PID,结果飞机要么抖得像筛子,要么软得像面条。其实问题的根源,往往出在没搞懂内环和外环的关系上。
今天咱们就聊聊角度环和角速度环。说白了,这就是飞控里最经典的串级PID结构。你想想看,一个四轴飞行器要稳住姿态,靠的就是这两个环协同工作。
一、内环(角速度环)是什么?
角速度环,也叫速率环。它直接控制电机的输出,让飞机以某个角速度旋转。
举个例子:你给飞机一个指令,让它以每秒30度的速度翻滚。角速度环的任务就是:
- 读取陀螺仪数据,知道当前实际角速度
- 对比目标角速度和实际角速度的差值
- 调整电机转速,让差值归零
我在项目中遇到过一个问题:有次调试一架250轴距的小四轴,角速度环的P值给大了,结果飞机一解锁就开始高频抖动。嗯,这就是典型的角速度环过冲。
核心要点:角速度环是飞控最底层的控制环,它直接面对电机和陀螺仪。响应速度通常在几毫秒到十几毫秒级别。
二、外环(角度环)是什么?
角度环在角速度环的外面。它不直接控制电机,而是给内环发指令。
角度环的工作逻辑是这样的:
- 读取姿态解算后的角度(比如当前俯仰角是5度)
- 对比目标角度(比如想要俯仰角10度)
- 计算出需要的角速度,发给内环去执行
说白了,角度环是个「指挥官」,它告诉内环「你要以多快的速度转」。内环是个「执行者」,它负责把速度跑准。
个人经验:我习惯把角度环的更新频率设在100-200Hz,角速度环设在400-1000Hz。这个比例关系,基本能保证内环跑得比外环快3-5倍。
三、串级PID结构长什么样?
串级PID,就是把两个PID控制器串在一起。外环的输出,直接作为内环的输入。
咱们用一张图来理解:
这张图里,你能看到两个反馈回路。外环的角度反馈是橙色的虚线,内环的角速度反馈是绿色的虚线。内环跑得快,外环跑得慢,这就是串级PID的精髓。
四、为什么内环响应要快于外环?
这个问题,我当年刚入行时也困惑过。后来在一次炸机事故中,我彻底明白了。
原因其实很简单:内环是「干活」的,外环是「指挥」的。
你想想看:
- 外环每算一次,就给内环一个目标角速度
- 内环必须在这个目标还没变之前,就把它跑完
- 如果内环跑得慢,外环又给了新指令,两个指令就打架了
我曾经调试一架大六轴,把内环频率设得和外环一样,都是100Hz。结果飞机在悬停时出现低频晃动,怎么调P值都没用。后来把内环提到400Hz,问题立刻消失。
避坑指南:内环响应速度至少要比外环快3倍。如果内环和外环频率一样,或者内环更慢,飞控就会出现「指令堆积」现象。飞机要么震荡,要么响应迟钝。
五、实际调参中的经验
调串级PID,我有个习惯:先调内环,再调外环。
具体步骤是这样的:
- 锁定外环:先把角度环的P值设得很小(比如0.5),让它基本不起作用
- 调内环P:慢慢加大角速度环的P值,直到飞机出现轻微抖动,然后退回20%
- 调内环D:加入微分项,抑制过冲。D值从0开始慢慢加
- 调内环I:加一点点积分,消除稳态误差。I值要小,大了会震荡
- 放开外环:内环调稳后,再慢慢加大角度环的P值
一个小技巧:用手转动飞机,感受电机的响应。如果转得快电机反应也快,说明内环响应够了。如果转得快但电机反应慢半拍,内环还得提速。
六、串级PID的数学表达
如果你喜欢看公式,这里有个简化的表达:
// 角度环(外环)
error_angle = target_angle - actual_angle
target_rate = Kp_angle * error_angle + Ki_angle * integral_angle + Kd_angle * derivative_angle
// 角速度环(内环)
error_rate = target_rate - actual_rate
motor_output = Kp_rate * error_rate + Ki_rate * integral_rate + Kd_rate * derivative_rate
看到没?外环算出来的 target_rate,直接喂给了内环。内环再根据这个目标去算电机输出。
我在实际代码里,还会加一些限幅和保护。比如:
- 外环输出的目标角速度不能超过飞机最大角速度(比如每秒300度)
- 内环输出的电机值要限制在0-1000之间
- 积分项要加抗饱和处理
这些细节,都是炸机换来的教训。嗯,说起来都是泪。
七、总结一下
角度环和角速度环的区别,说白了就是:
| 对比项 | 角度环(外环) | 角速度环(内环) |
|---|---|---|
| 控制对象 | 角度 | 角速度 |
| 传感器 | 姿态解算后的角度 | 陀螺仪原始数据 |
| 响应速度 | 慢(100-200Hz) | 快(400-1000Hz) |
| 输出 | 目标角速度 | 电机PWM值 |
| 调参顺序 | 后调 | 先调 |
记住一句话:内环决定稳定性,外环决定响应性。内环不稳,外环再好也没用。内环稳了,外环才能发挥手感调教的作用。
好了,这一节的内容就到这儿。下次咱们聊聊具体的调参工具和波形分析方法。