139、飞控中的气压计选型:MS5611、BMP280

发布时间:2026/6/27 0:00:09

139、飞控中的气压计选型:MS5611、BMP280 飞控中的气压计选型:MS5611、BMP280从一次炸机说起去年夏天调试一架四轴,气压计定高模式,悬停时高度波动从±0.3米慢慢变成±1.5米,最后直接飘到3米开外,切回自稳才救回来。落地一看日志,气压值在起飞后20分钟开始出现周期性跳变,每5秒跳一次,幅度相当于2米高度变化。当时用的BMP280,放在飞控板正中间,紧挨着电调排针。后来换成MS5611,同样的机架、同样的安装位置,同样的飞行条件,高度波动稳定在±0.2米以内。这不是玄学,是选型问题。核心差异:传感器原理决定了上限MS5611用的是压阻式原理,内部有一个微机械加工的硅膜片,压力变化引起电阻变化,通过惠斯通电桥输出。BMP280用的是压容式原理,压力改变电容值,通过Σ-Δ ADC转换成数字量。这两种原理在温度稳定性上有本质区别。压阻式对温度变化更敏感,但博世在BMP280里做了片上温度补偿,理论上补偿后的精度可以做到±1hPa。问题在于这个补偿算法依赖芯片内部的温度传感器,而温度传感器的响应速度远慢于压力传感器。当飞控板经历快速温度变化——比如从空调房拿到室外、或者电机发热导致板温上升——BMP280的温度补偿会滞后,导致气压读数出现瞬态误差。MS5611的补偿算法是外置的,由MCU根据芯片提供的24位原始压力和温度值自行计算。这意味着你可以控制补偿时机,甚至可以在飞控主循环里做二次补偿。代价是计算量稍大,但对于STM32F4以上的芯片来说,一次补偿计算大约耗时0.5ms,完全可以接受。数据手册里不会写的坑

相关新闻