飞控系统硬件架构:主控芯片选型与传感器执行机构
大家好,我是你们的飞控系统架构课讲师。今天我们来聊聊飞控系统的硬件选型——说白了,就是给飞控系统「攒」一套靠谱的硬件方案。这部分内容我做了十几年,踩过的坑比你们见过的飞控板都多(笑)。咱们直接进入正题。
主控芯片选型:STM32 F7 vs H7
主控芯片是飞控的大脑。我个人习惯首选STM32系列,原因很简单:生态成熟、资料多、社区活跃。你想想看,一个新手遇到问题,百度一下全是答案,这多省心。
具体到F7和H7怎么选?我直接给结论:
| 对比项 | STM32F7(如F767) | STM32H7(如H743) |
|---|---|---|
| 主频 | 216MHz | 480MHz(双核可达550MHz) |
| FPU | 单精度 | 双精度 |
| RAM | 512KB | 1MB+(含TCM) |
| 典型功耗 | ~200mW | ~400mW |
| 适合场景 | 四轴、固定翼 | 大型无人机、需要复杂算法的场景 |
我在项目中遇到过这样的情况:用F7跑PX4固件,CPU占用率已经到70%了。后来换成H7,同样的代码,占用率直接降到30%。嗯,这就是硬件的差距。
核心建议:如果你做的是消费级四轴,F7完全够用。但如果你要做工业级、或者想跑EKF、VIO这类算法,直接上H7,别犹豫。
我的小技巧:选型时别只看主频。H7的D-Cache和I-Cache对实时性影响很大。我习惯在启动代码里把关键中断向量表放到TCM中,能减少20%以上的中断延迟。
传感器选型:IMU、GPS、气压计、磁力计
传感器是飞控的「感官」。没有好的传感器,再牛的算法也是白搭。咱们一个一个说。
IMU(惯性测量单元)
IMU是飞控最核心的传感器。我建议用ICM-20689或BMI088。为什么?因为它们的温漂小、抗振动能力强。
我曾经在项目里用过便宜的MPU6050,结果飞机一飞高,姿态就开始漂。后来换成ICM-20689,问题直接解决。你想想看,一个IMU才贵十几块钱,但省了多少调试时间。
避坑指南:我曾经遇到过IMU安装方向搞反的情况。飞控板上的IMU芯片,X轴必须指向机头方向。如果装反了,飞控会认为飞机在倒着飞——后果你懂的。
GPS模块
GPS选型主要看两个指标:定位精度和更新率。我推荐u-blox M8N或M9N系列。M8N精度2.5米,M9N可以做到1.5米。
这里有个细节:GPS的天线一定要放在飞控板的上方,远离碳纤维和金属。碳纤维会屏蔽GPS信号,我见过有人把GPS藏在机臂下面,结果定位精度直接掉到10米开外。
气压计
气压计用于定高。我推荐MS5611或BMP280。MS5611精度更高,但贵一点。BMP280性价比好,但温漂大一些。
嗯,这里要注意:气压计怕风。如果你做的是室外飞控,一定要给气压计加个海绵罩。我见过有人没加,结果飞机一飞,气压计读数直接跳变2米——这还定个什么高?
磁力计
磁力计用于航向。我推荐HMC5883L或IST8310。磁力计最怕干扰——电机、电调、大电流线缆都会产生磁场。
我的做法是:把磁力计放在飞控板的最边缘,远离电源走线。如果条件允许,用单独的磁力计模块,通过I2C外接。
执行机构:电调与舵机
执行机构是飞控的「手脚」。选不好,飞控再稳也白搭。
电调(ESC)
电调选型主要看电流和协议。我建议:
- 电流:按电机最大电流的1.5倍选。比如电机最大30A,电调选45A以上。
- 协议:现在主流是DShot600或DShot1200。PWM协议已经过时了,延迟大、精度低。
我在项目中遇到过电调烧毁的情况。原因很简单:电调散热不够。电调工作时温度能到80度以上,一定要保证通风。我习惯把电调贴在机臂上,利用飞行时的气流散热。
核心建议:电调的PWM频率要匹配。我一般设400Hz,太高了电调发热大,太低了电机响应慢。
舵机
舵机用于固定翼的舵面控制。选型看扭矩和速度。我推荐:
- 小型固定翼:9g舵机,扭矩0.5kg·cm,速度0.12s/60°
- 中型固定翼:25g舵机,扭矩1.5kg·cm,速度0.10s/60°
- 大型无人机:金属齿轮舵机,扭矩3kg·cm以上
舵机有个坑:PWM信号频率。标准舵机是50Hz,但有些高速舵机支持333Hz。我建议统一用50Hz,兼容性最好。
知识体系总览
下面这张图是我自己画的,把整个硬件架构串起来了。你一看就明白:
这张图把整个硬件架构分成了三层:主控层、传感器层、执行层。传感器通过SPI/I2C把数据传给主控,主控算完后通过PWM/DShot控制执行机构。电源管理给所有模块供电。
我的经验:画硬件框图时,一定要把通信接口标清楚。我见过有人画框图只画了模块,没画接口,结果布线时才发现SPI引脚不够用——那叫一个尴尬。
总结一下
硬件选型没有绝对的对错,只有适合不适合。我的建议是:
- 主控:新手用F7,老手直接上H7
- IMU:别省钱,用ICM-20689或BMI088
- GPS:u-blox M8N起步,M9N更好
- 电调:DShot协议,电流留余量
- 舵机:50Hz PWM,扭矩够用就行
好了,这一章的内容就到这里。记住一句话:硬件是飞控的骨架,选对了骨架,后面的软件才能跑得稳。