4. 飞控系统核心:飞控计算机与传感器选型

飞控系统,说白了就是无人机的大脑和感官。大脑负责运算决策,感官负责感知世界。这一章,我们就把这两部分拆开揉碎了讲清楚。

我个人习惯把飞控系统分成两大块:计算核心和感知核心。计算核心就是飞控计算机,感知核心就是IMU、磁力计、气压计和GNSS接收机。缺了哪一块,飞机都飞不稳。

4.1 飞控计算机:MCU、DSP、FPGA怎么选?

飞控计算机是跑算法的地方。姿态解算、控制律计算、传感器融合,全得靠它。市面上主流的方案有三种:MCU、DSP、FPGA。它们各有各的脾气。

核心观点: 消费级和工业级无人机,90%以上用MCU。DSP和FPGA更多用在军工或科研场景。别盲目追求高性能,够用、稳定、便宜才是王道。

4.1.1 MCU(微控制器)—— 主流之选

MCU是集成度最高的方案。CPU、RAM、Flash、各种外设接口都封装在一个芯片里。我最早做飞控时用的就是STM32F4系列,到现在它还是很多开源飞控的首选。

为什么MCU这么流行?

  • 成本低: 一颗Cortex-M4内核的MCU,几块钱到几十块钱就能搞定。
  • 生态好: 库函数、例程、社区支持都非常完善。你遇到的大多数问题,网上都能找到答案。
  • 够用: 对于100Hz-500Hz的控制频率,MCU的算力完全足够。

但MCU也有短板。它的并行处理能力弱,如果要做复杂的视觉SLAM或者多传感器深度融合,MCU就会很吃力。

选型建议: 如果你做的是常规四旋翼,STM32F405或F7系列是稳妥的选择。我建议预留20%的算力余量,别把芯片跑满,否则后期加功能会很痛苦。

4.1.2 DSP(数字信号处理器)—— 算法加速器

DSP是专门为数字信号处理设计的。它的MAC(乘累加)操作效率极高,适合做FFT、滤波、姿态解算这类运算。

我记得有个项目,需要在飞控上实时做振动频谱分析。MCU跑起来CPU占用率直接飙到90%,换成DSP后,占用率降到了30%。这就是DSP的优势。

但DSP的缺点也很明显:控制逻辑弱,外设接口少,开发门槛高。现在很多MCU也集成了DSP指令集(比如Cortex-M4/M7),所以纯DSP方案在飞控领域用得越来越少了。

4.1.3 FPGA(现场可编程门阵列)—— 硬实时与并行

FPGA是硬件可编程的。你可以用Verilog或VHDL描述电路,实现真正的并行处理。延时可以做到纳秒级。

什么时候需要FPGA?

  • 需要同时采集多路高速传感器数据(比如多路IMU、激光雷达)。
  • 控制周期要求极短(比如1kHz以上)。
  • 需要做像素级图像预处理。

但FPGA的功耗高、价格贵、开发周期长。我见过一个团队用FPGA做飞控,光调试时序就花了两个月。说实话,除非你有硬实时或超高带宽的需求,否则别轻易上FPGA。

对比项 MCU DSP FPGA
典型型号 STM32F4/F7 TMS320C2000 Xilinx Artix-7
主频 100-400 MHz 200-600 MHz 50-200 MHz (逻辑)
并行能力 弱 中 强
开发难度 低 中 高
功耗 低 中 高
典型应用 消费级飞控 工业控制 军工/科研

4.2 惯性测量单元(IMU)

IMU是飞控里最关键的传感器。它告诉你飞机当前的姿态和加速度。IMU的核心就是加速度计和陀螺仪。

4.2.1 加速度计

加速度计测量的是比力,也就是物体受到的惯性力与重力的合力。静止时,它测到的就是重力加速度g。

利用这个原理,我们可以通过加速度计计算俯仰角和横滚角。但加速度计对振动非常敏感,飞行中电机转动带来的振动会严重污染数据。

避坑指南: 我曾经在一个项目中,直接把加速度计裸装在飞控板上,结果数据全是毛刺。后来加了减震海绵和低通滤波,数据才干净。记住:加速度计的安装一定要做减震处理。

4.2.2 陀螺仪

陀螺仪测量的是角速度。对角速度积分,就能得到角度变化。陀螺仪的优点是动态响应快,不受振动影响。但它有零偏漂移,长时间积分后误差会累积。

所以,飞控里通常的做法是:用加速度计修正陀螺仪的长期漂移,用陀螺仪弥补加速度计的动态响应不足。这就是互补滤波或卡尔曼滤波的核心思想。

4.2.3 IMU选型要点

  • 量程: 加速度计一般选±2g到±16g,陀螺仪选±250°/s到±2000°/s。消费级飞控选±4g和±500°/s就够了。
  • 噪声密度: 越低越好。单位是μg/√Hz或°/h/√Hz。
  • 零偏稳定性: 陀螺仪的关键指标。好的IMU能做到1°/h以内。

个人经验: 我常用的IMU是InvenSense的MPU6000或ICM-20602。性价比高,资料多。如果你做高端产品,可以考虑ADI的ADIS系列,性能确实好,但价格也贵一个数量级。

4.3 磁力计与气压计

IMU只能提供姿态和加速度信息,但无人机还需要知道航向和高度。这就轮到磁力计和气压计上场了。

4.3.1 磁力计(电子罗盘)

磁力计测量地球磁场,从而计算出航向角(偏航角)。但它有个大问题:容易受干扰。

无人机上的电机、电调、大电流导线都会产生磁场,严重干扰磁力计。我见过一个案例,磁力计装在电调旁边,航向数据直接偏了30度。

解决办法有两个:

  • 硬件隔离: 把磁力计远离大电流部件,最好装在机臂末端或单独的小板上。
  • 软件校准: 做椭球拟合校准,消除硬磁和软磁干扰。

避坑指南: 我曾经在飞控上电后直接读磁力计数据,发现航向一直在飘。后来才意识到,电机转动产生的磁场变化是动态的,静态校准根本不够。所以,磁力计数据一定要配合GPS航向或视觉里程计做融合。

4.3.2 气压计

气压计通过测量大气压强来推算高度。原理很简单:气压随高度增加而降低。但实际使用中,气压计非常敏感。

无人机旋翼产生的气流会直接吹到气压计上,导致高度数据剧烈跳动。我建议给气压计加一个海绵或泡棉罩,同时做软件滤波。

常用的气压计型号有MS5611、BMP280、SPL06-001。我个人偏爱MS5611,分辨率高,稳定性好。

4.4 GNSS接收机(GPS/北斗)

GNSS是无人机实现自主飞行和定位的关键。它提供位置、速度和时间信息。

4.4.1 定位原理

GNSS定位靠的是三角测量。卫星发射信号,接收机计算信号传播时间,乘以光速得到距离。至少需要4颗卫星才能解算出三维位置和时间。

但GNSS有个致命弱点:信号容易被遮挡。在楼宇间、树荫下、室内,定位精度会急剧下降,甚至完全失效。

4.4.2 选型要点

  • 频段: 单频(L1)够用,双频(L1+L5)抗干扰能力更强。
  • 更新率: 飞控一般需要5Hz-10Hz的定位数据。消费级GPS模块通常能做到10Hz。
  • 精度: 民用GPS精度在2-5米。RTK(实时动态差分)可以做到厘米级。

个人建议: 如果你做的是航拍机,用Ublox M8N或M9N就足够了。如果做植保机或测绘机,建议上RTK,虽然贵,但定位精度完全不是一个量级。

4.5 传感器融合:1+1 > 2

单个传感器都有缺陷。IMU有漂移,磁力计有干扰,气压计有气流扰动,GNSS有遮挡。所以,飞控的核心技术就是传感器融合。

最经典的融合算法是扩展卡尔曼滤波(EKF)。它把IMU的高频数据作为预测,把GNSS和磁力计的低频数据作为观测,互相修正。这样,即使GNSS短暂丢失,飞控也能靠IMU维持几秒钟的稳定飞行。

下面这张图展示了飞控系统的核心数据流:

飞控系统核心数据流 加速度计 陀螺仪 磁力计 气压计 GNSS接收机 传感器融合 EKF / 互补滤波 姿态解算 位置速度估计 控制律 PID / 串级PID → 电机 说明:IMU数据以高频(200-1000Hz)输入融合模块, GNSS/磁力计/气压计以低频(5-20Hz)输入。 融合后的姿态和位置数据用于控制律计算。

你看,从传感器到融合再到控制,是一条完整的数据链。任何一个环节出问题,飞机都飞不好。所以,选型和调试时,一定要把每个传感器都单独验证一遍,再去做融合。

总结一下: 飞控计算机选MCU最稳妥,IMU要关注噪声和零偏,磁力计和气压计要做好抗干扰,GNSS选双频更可靠。最后,别忘了用EKF把这些数据揉在一起。做到这几点,你的飞控就成功了一大半。