飞控算法从入门到精通 | 076、速度控制:地速与空速控制一、一次坠机让我重新认识速度控制去年在西北某无人机测试场,一架四旋翼在顺风转弯时突然侧翻坠地。事后分析日志发现,飞控在转弯过程中持续输出“速度达标”信号,但飞机实际已经失速——问题出在飞控只控制了地速,而空速已经掉到失速边界以下。那次之后,我在所有速度控制代码里都加了一行注释:“别只盯着地速,空速才是飞机的命根子。”这个案例暴露了飞控速度控制中最容易被忽视的问题:地速和空速在风场中的本质差异。今天这篇笔记,就围绕这两个速度量的控制策略展开,重点讲清楚什么时候该控哪个、怎么控、以及代码实现中那些容易踩的坑。二、地速与空速:两个完全不同的物理量地速是飞机相对地面的速度,由GPS或视觉里程计提供。空速是飞机相对空气的速度,由空速管或风压传感器测量。在无风条件下两者相等,但一旦有风,差异就出来了。顺风飞行时,地速大于空速,飞控如果只控地速,实际空速可能偏低,翼载大的固定翼容易失速。逆风飞行时,地速小于空速,飞控如果只控空速,地速可能过慢导致无法到达航点。侧风情况下更复杂,地速和空速的矢量合成会产生侧滑角,影响飞行效率。我习惯把速度控制拆成两个层次:内环控空速(保证气动安全),外环控地速(保证导航精度)。这个分层思路在PX4和ArduPilot的代码里都能看到影子,但具体实现细节各家有各家的坑。三、空速控制:内环的保命逻辑空速控制的核心目标是维持飞机在安全飞行包线内。对于固定翼,失速空速和最大空速之间就是可操作区间。