传感器与状态估计¶
飞控需要知道机体如何旋转、朝向哪里、位于何处以及运动多快,但传感器通常只能观测其中一部分物理量,而且测量结果包含噪声、零偏、时延和外部干扰。
因此,传感器提供测量值,状态估计器根据测量值推算姿态、速度和位置。理解这一区别,是分析自稳、定高、返航和自主飞行功能的基础。

惯性测量单元包含什么¶
惯性测量单元(IMU,Inertial Measurement Unit)通常包含三轴陀螺仪和三轴加速度计,有些器件还集成磁力计。
“六轴惯性测量单元”通常表示:
- 三个轴的角速度;
- 三个轴的比力。
这里的“六轴”是六个测量通道,不表示飞行器具有六个可以独立运动的空间维度。
陀螺仪测量角速度¶
陀螺仪测量机体绕三个轴旋转的角速度,常用单位包括度每秒和弧度每秒。
陀螺仪适合高速姿态控制,因为它能够快速反映旋转变化。但它存在几个限制:
- 静止时仍可能存在零偏;
- 温度变化会改变零偏;
- 电机和机架振动会进入测量信号;
- 对角速度积分可以得到角度变化,但误差也会被持续积分。
机体保持30度倾斜并静止时,陀螺仪输出可以接近零。它只能说明“现在没有明显旋转”,不能说明“现在处于水平状态”。
加速度计测量比力¶
加速度计测量的是比力,不应简单理解为“飞行器相对地面的加速度”。
飞行器静止放在桌面上时,加速度计仍会测到约一个重力加速度的量值。状态估计算法利用这一长期参考判断重力方向,从而约束滚转和俯仰估计。

桌面上的飞行器受到桌面支持力,因此加速度计合量约为1g;理想自由落体中,传感器和机体一起下落,合量接近零。读数的正负方向取决于传感器轴和软件约定,判断时应先确认坐标系。
飞行器剧烈加速、急转或受到碰撞时,加速度计同时反映机动产生的比力。此时把全部测量结果都解释为重力,会得到错误姿态。
加速度计通常具有以下作用:
- 为自稳模式提供长期水平参考;
- 检测碰撞、振动和机动状态;
- 与陀螺仪共同估计姿态;
- 在惯性导航中参与速度和位置预测。
仅依靠加速度计通常不能确定偏航角,因为绕重力方向旋转不会改变重力在机体系中的方向。
磁力计提供地磁参考¶
磁力计(Magnetometer)测量机体附近的磁场向量。经过姿态补偿和磁偏角处理后,它可以为航向估计提供长期参考。
磁力计容易受到以下因素影响:
- 电机、电源线和高电流产生的磁场;
- 铁磁材料和磁化螺钉;
- 扬声器、磁铁和钢筋建筑;
- 地区磁偏角;
- 安装位置和传感器轴方向。
磁力计读数稳定不等于方向一定正确。如果周围存在稳定但错误的局部磁场,飞控可能得到稳定的错误航向。
气压计和测距传感器观测高度¶
气压计根据大气压力变化估算相对高度。它适合观察一段时间内的高度变化,但会受到天气、温度、机舱压力、螺旋桨气流和地面效应影响。
测距传感器直接观测飞行器与地面或障碍物之间的距离,常见技术包括:
- 激光测距;
- 超声波测距;
- 雷达测距。
气压计描述的是压力对应的高度变化,向下测距描述的是离地距离。飞过台阶或屋顶边缘时,两者可能出现不同变化,不能当作同一个物理量。
卫星导航提供位置、速度和时间¶
全球导航卫星系统(GNSS,Global Navigation Satellite System)接收机可以输出经纬度、高度、地速、时间和解算质量等信息。
“高度”必须连同参考基准一起使用。接收机可能输出相对于WGS84参考椭球的椭球高,也可能输出经过大地水准面模型换算的平均海平面高;飞控状态估计器还可能建立以上电点或本地原点为基准的相对高度。字段名称、单位、参考基准和原点不明确时,不能直接混合或相减。
卫星导航具有以下边界:
- 室内、桥下和高楼之间可能无法稳定定位;
- 多路径反射会造成位置跳变;
- 更新频率和时延通常低于惯性测量单元;
- 单天线接收机静止时不能仅凭地速方向确定机头航向;
- 高度精度与水平位置精度不同。
“航迹方向”描述飞行器相对地面的运动方向,“机头航向”描述机体朝向。侧风或侧滑时,两者可以不一致。
光流、视觉和外部定位¶
光流传感器通过连续图像之间的纹理移动估计相对运动。它通常还需要离地高度,才能把图像位移换算为实际水平速度。
视觉惯性里程计(VIO,Visual Inertial Odometry)把摄像头与惯性测量单元结合,用于估计姿态、速度和相对位置。
室内定位还可以使用:
- 超宽带定位;
- 动作捕捉系统;
- 人工标志点;
- 激光雷达里程计;
- 外部视觉定位。
这些系统仍然需要处理坐标系、时钟同步、遮挡、量测质量和失效切换。
状态估计如何工作¶
状态估计通常包含两个不断重复的阶段。
使用惯性测量进行预测¶
陀螺仪和加速度计更新快,能够预测短时间内姿态、速度和位置如何变化。但零偏和噪声会逐渐积累。
使用外部观测进行校正¶
加速度计提供重力参考,磁力计提供磁场参考,气压计和测距提供高度观测,卫星导航和视觉提供位置或速度观测。估计器根据各观测的可信度修正预测结果。

互补滤波(Complementary Filter)利用不同传感器在高频和低频范围内的优势进行组合。扩展卡尔曼滤波(EKF,Extended Kalman Filter)则同时维护状态估计及其不确定性,并根据系统模型和观测更新状态。
算法名称并不能保证结果可靠。时间戳错误、坐标轴错误、噪声参数不合理或者传感器受干扰,都会使复杂算法输出错误结果。
不同飞行功能需要哪些状态¶
| 飞行功能 | 最低限度需要的主要信息 | 常见传感器 |
|---|---|---|
| 角速度控制 | 三轴角速度 | 陀螺仪 |
| 自稳控制 | 角速度和重力方向 | 陀螺仪、加速度计 |
| 定高 | 姿态、垂直运动和高度 | 惯性测量单元、气压计、测距或卫星导航 |
| 定点 | 姿态、速度和位置 | 惯性测量单元、卫星导航、光流或视觉 |
| 返航 | 位置、速度、航向和高度 | 惯性测量单元、卫星导航及其他辅助传感器 |
具体固件可能采用不同组合。不能只看到某个传感器存在,就推断对应飞行功能一定可用。
校准、滤波和融合不是同一件事¶
- 校准:估计零偏、比例和轴间误差;
- 滤波:抑制不需要的噪声和振动;
- 融合:组合多个观测,估计不能直接测得的状态;
- 故障检测:判断某个观测是否异常、超时或者不可信。
校准不能消除飞行中的全部振动,滤波不能修复接反的坐标轴,融合也不能凭空生成传感器从未提供的信息。
上电后的基本检查¶
拆除螺旋桨后,可以依次检查:
- 飞行器静止时,陀螺仪角速度是否接近零;
- 缓慢倾斜机体时,地面端模型方向是否一致;
- 水平静止时,加速度计合量是否接近一个重力加速度;
- 转动机头时,航向是否连续变化;
- 气压高度是否在静止条件下大幅漂移;
- 卫星导航是否报告定位状态、卫星数量和合理位置;
- 断开某个传感器后,固件是否给出明确故障状态。
不要使用某一个瞬时数值判定系统正常,应同时观察方向、趋势、稳定性和故障提示。
检查理解¶
- 陀螺仪为什么不能单独提供长期稳定的姿态角?
- 飞行器静止时,加速度计为什么仍有读数?
- 航迹方向和机头航向有什么区别?
- 气压高度和离地距离为什么不能互相替代?
- 校准、滤波和传感器融合分别解决什么问题?