角度控制器(外环):角度环的数学模型、P控制器原理、角度环参数(P增益)的作用与调节
各位同学,今天我们来聊聊飞控里最核心的一环——角度控制器。说白了,就是外环那个P控制器。很多新手一上来就调内环,结果飞机抖得像筛子。我个人的经验是,先把外环搞明白,内环才有意义。
角度环的数学模型
先别被「数学模型」四个字吓到。其实没那么复杂。我们想控制的是飞机的姿态角,比如横滚角、俯仰角。你遥控器给一个角度指令,飞控要算出怎么转才能到那个角度。
角度环的输入是期望角度和实际角度的差值,输出是期望角速度。这个角速度会送给内环(角速度环)去执行。所以角度环本质上是一个位置控制器,它告诉内环:「嘿,你以多快的速度转过去。」
数学上,角度环的模型可以简化为一个一阶系统。为什么?因为内环响应比外环快得多,我们可以把内环近似成一个纯增益。这样一来,角度环的传递函数就是:
G(s) = Kp / (s + Kp)
嗯,这里要注意,这个模型是简化过的。实际飞行中还有延迟、非线性等因素。但作为调参的起点,它够用了。
核心要点:角度环的带宽必须低于内环的带宽。一般建议外环带宽是内环的1/5到1/3。否则内外环会打架,飞机就开始抖了。
P控制器原理
角度环用的就是最经典的P控制器。比例控制,说白了就是「偏差越大,输出越大」。你想想看,飞机偏了10度,和偏了1度,纠正的力度肯定不一样。
公式很简单:
期望角速度 = Kp × (期望角度 - 实际角度)
这里Kp就是比例增益。我刚开始做飞控时,总觉得这个公式太简单了,是不是得加点积分、微分才显得专业?后来发现,对于角度环,纯P控制往往就够了。加积分反而容易引入超调。
为什么会这样?因为角度环的输入是角度误差,输出是角速度。角速度积分就是角度,所以这个P控制器本身已经包含了一个积分环节。你再加积分,就成了双重积分,系统容易不稳定。
我的经验:角度环一般只用P控制。除非你的飞机有严重的静差(比如重心偏了),才考虑加一点点I。但这种情况我更建议你先去调机械结构。
角度环参数(P增益)的作用与调节
Kp的作用很直观:它决定了角度环的响应速度。Kp越大,飞机对角度偏差的反应越猛,回正越快。但Kp太大,飞机会出现震荡,甚至发散。
我调参时有个习惯:先把Kp设得很小,比如0.1。然后慢慢往上加,直到飞机出现轻微的震荡。这时候再往回退一点,留个20%的余量。这个点就是比较理想的Kp值。
具体来说,Kp的影响可以总结为:
| Kp值 | 响应速度 | 稳定性 | 典型现象 |
|---|---|---|---|
| 过小 | 慢 | 稳定 | 飞机反应迟钝,打杆后回正慢 |
| 适中 | 快 | 稳定 | 打杆响应迅速,回正干脆 |
| 过大 | 过快 | 不稳定 | 飞机高频抖动,甚至发散 |
避坑指南:我曾经遇到过一架飞机,怎么调Kp都抖。后来发现是机架的共振频率刚好和角度环的带宽重合了。这种情况光调Kp没用,得加滤波器或者降低带宽。
调参时,我建议你用手动模式(比如Acro模式)来测试。先悬停,然后给一个阶跃指令(比如快速打杆到10度),观察飞机的响应曲线。好的响应应该是:快速到达目标角度,没有超调,没有震荡。
如果你有日志分析工具,可以看实际角度和期望角度的跟踪情况。理想情况下,实际角度应该紧贴着期望角度走,延迟很小。
知识体系总览
下面这张图是我自己整理的,把角度环的核心逻辑串起来了。你可以看到,从期望角度到实际角度,中间经过了P控制器、内环、机体动力学,最后反馈回来形成闭环。
这张图里,P控制器就是那个核心的「翻译官」。它把角度误差翻译成角速度指令。你调Kp,就是在调这个翻译的「放大倍数」。
小技巧:如果你用的是PX4,角度环的P增益在参数里叫MC_ROLL_P、MC_PITCH_P、MC_YAW_P。我一般先调横滚和俯仰,再调偏航。偏航的Kp可以比横滚小一些,因为偏航的响应本来就慢。
好了,关于角度环的数学模型、P控制器原理和参数调节,今天就聊这么多。记住一句话:角度环是飞控的「大脑」,它决定了飞机能不能听话。调好它,你的飞机就成功了一半。