第3章:飞控硬件选型——主控、传感器与执行机构
做飞控这么多年,我最大的感触是:硬件选型决定了飞控的天花板。软件写得再好,硬件跟不上也是白搭。今天咱们就聊聊多旋翼与固定翼过渡控制中,硬件选型那些绕不开的坑。
3.1 主控芯片选型:算力与生态的博弈
主控芯片是飞控的大脑。我个人习惯把选型分成三派:STM32派、NXP派、TI派。说白了,选哪家取决于你的项目阶段和团队积累。
3.1.1 STM32F4/H7:生态最成熟
STM32F4系列(比如F405、F427)是飞控界的「老黄牛」。我在PX4早期项目里用过F427,跑400MHz主频,带FPU,处理姿态解算绰绰有余。H7系列(H743)则更猛,主频480MHz,双核架构,适合跑更复杂的控制算法。
优点:
- 生态无敌——CubeMX、HAL库、各种开源飞控代码(PX4、ArduPilot)都支持
- 成本低——F405芯片不到30元,适合量产
- 资料多——遇到问题百度一下,基本都有答案
缺点:
- 算力上限明显——跑EKF(扩展卡尔曼滤波)时,F4系列CPU占用率经常飙到70%以上
- H7的缓存和TCM配置复杂——我刚开始用H7时,因为没配好ITCM,导致中断响应延迟,炸过一次机
3.1.2 NXP:工业级稳定性
NXP的i.MX RT系列(比如RT1050、RT1060)是跨界处理器,既有MCU的实时性,又有MPU的性能。我在一个工业无人机项目里用过RT1060,主频600MHz,跑M4内核+M7内核双核架构。
优点:
- 算力强——600MHz主频,跑复杂控制算法毫无压力
- 工业级温度范围(-40℃~105℃)——适合户外极端环境
- 外设丰富——带2个CAN-FD接口,适合连接电调
缺点:
- 开发门槛高——SDK文档不如ST详细,我当初调FlexCAN驱动花了两天
- 成本偏高——RT1050芯片价格是F405的2倍以上
3.1.3 TI:DSP强项
TI的TMS320F28379D是DSP+ARM双核架构,主频200MHz。它的强项是浮点运算——做电机控制、FOC算法时,比STM32快30%以上。
优点:
- 浮点性能强——适合做高阶控制算法(比如LQR、MPC)
- PWM分辨率高——150ps分辨率,适合高精度舵机控制
缺点:
- 生态封闭——代码移植困难,我试过把PX4移植到F28379D,折腾了两个月
- 价格贵——芯片单价超过100元,不适合消费级产品
| 芯片型号 | 主频 | 架构 | 价格(参考) | 适用场景 |
|---|---|---|---|---|
| STM32F405 | 168MHz | 单核M4 | ~25元 | 入门级飞控 |
| STM32H743 | 480MHz | 双核M7+M4 | ~60元 | 中高端飞控 |
| NXP RT1060 | 600MHz | 双核M7+M4 | ~80元 | 工业级飞控 |
| TI F28379D | 200MHz | DSP+ARM | ~120元 | 高性能控制 |
3.2 传感器选型:精度与成本的平衡
传感器是飞控的「眼睛」。选错了传感器,再好的算法也白搭。我按功能分成四类:IMU、GPS、空速计、气压计。
3.2.1 IMU:核心中的核心
IMU(惯性测量单元)包含加速度计和陀螺仪。我个人推荐ICM-42688-P(6轴)或BMI088(6轴)。为什么?
- ICM-42688-P:噪声低(0.25°/s RMS),温度稳定性好,适合固定翼过渡控制
- BMI088:抗振动能力强,我在多旋翼上用过,悬停精度比MPU9250高30%
3.2.2 GPS:定位精度决定航线
GPS模块我推荐u-blox M9N或ZED-F9P。M9N支持多星座(GPS+北斗+GLONASS),定位精度2.5米,适合普通航线飞行。F9P是RTK级别,精度2.5厘米,适合精准降落。
选型要点:
- 更新率:至少10Hz,固定翼过渡控制需要快速响应
- 天线:有源天线(增益>25dB)比无源天线好,我试过无源天线在树林里信号直接丢失
- 接口:UART接口最通用,SPI接口延迟更低
3.2.3 空速计:固定翼的命门
固定翼过渡控制中,空速计是必须的。没有空速计,你无法判断飞机是否失速。我推荐MS4525DO(差压式)或SDP3x(数字式)。
- MS4525DO:量程±1psi,分辨率0.1m/s,适合低速固定翼
- SDP3x:量程±500Pa,精度高,但价格贵(200元以上)
3.2.4 气压计:高度估计的基石
气压计推荐MS5611或BMP388。MS5611是经典款,分辨率10cm,温度稳定性好。BMP388是新品,功耗更低(1.7μA),适合电池续航要求高的场景。
注意:气压计对气流敏感。我习惯在PCB上给气压计加一个海绵罩,减少风的影响。否则飞行中高度数据会跳变,导致高度控制不稳。
3.3 执行机构选型:舵机与电调
执行机构是飞控的「手脚」。选型不对,控制指令发出去也执行不了。
3.3.1 舵机:响应速度是关键
固定翼过渡控制中,舵机用于控制副翼、升降舵、方向舵。我推荐数字舵机(比如Futaba S3003或Hitec HS-645MG)。
- 响应速度:数字舵机比模拟舵机快2-3倍,适合过渡控制中的快速响应
- 扭矩:根据飞机重量选型,一般3kg·cm以上够用
- 电压:5V或6V,注意电调BEC的输出能力
3.3.2 电调:PWM频率与协议
电调(ESC)用于控制电机转速。多旋翼和固定翼对电调的要求不同:
- 多旋翼:需要快速响应(PWM频率400Hz以上),推荐DShot协议(延迟低)
- 固定翼:响应速度要求不高(50Hz够用),但需要支持刹车功能(用于滑翔)
选型建议:
- 多旋翼:BLHeli_S或BLHeli_32电调,支持DShot600
- 固定翼:好盈(Hobbywing)Skywalker系列,支持刹车
3.4 硬件架构设计要点
硬件架构设计,说白了就是怎么把芯片、传感器、执行机构连起来。我总结几个要点:
3.4.1 电源架构
飞控的电源设计是重中之重。我习惯用双电源架构:
- 主电源:电池(3S-6S)通过BEC降压到5V,给舵机和电调供电
- 辅助电源:5V通过LDO降压到3.3V,给主控和传感器供电
注意:舵机启动时电流很大(瞬间可达2A),BEC的输出能力至少要3A以上。我见过有人用1A的BEC,结果舵机一动作,飞控就掉电重启。
3.4.2 通信接口分配
主控的通信接口要合理分配:
- UART1:GPS模块(115200bps)
- UART2:数传模块(57600bps)
- SPI1:IMU(10MHz)
- SPI2:气压计(10MHz)
- I2C1:空速计(400kHz)
- PWM输出:舵机(50Hz)和电调(400Hz)
3.4.3 布局与散热
PCB布局时,注意以下几点:
- IMU要放在PCB中心,远离振动源(比如电机、舵机)
- 气压计要远离发热元件(比如主控、电源芯片),否则温度变化会影响气压测量
- 电源走线要粗(至少1mm宽),减少压降
嗯,硬件选型这块内容比较多。但记住一句话:选型不是选最贵的,而是选最合适的。你的项目是消费级还是工业级?预算多少?团队擅长什么平台?想清楚这些,选型就简单了。