第2章:飞控硬件平台选型

做飞控这么多年,我最大的体会就是:硬件选型决定了项目的天花板。你算法写得再漂亮,传感器噪声大、主控算力不够,飞起来照样晃得像喝醉了酒。这一章,咱们就聊聊飞控硬件选型的那些门道。

核心观点:飞控硬件选型没有标准答案,但有标准方法。你得根据应用场景、成本预算、开发周期来权衡。别想着一步到位,那往往是坑。

2.1 主控芯片选型:STM32、NXP、FPGA怎么选?

主控芯片是飞控的大脑。选错了,后面全白干。我见过不少团队,一开始选了FPGA,结果开发周期拖了半年,最后又换回MCU。

咱们先看三个主流方案:

方案 优势 劣势 典型场景
STM32 生态好、资料多、开发快 算力有限、浮点性能一般 消费级无人机、教育飞控
NXP i.MX RT 算力强、带硬件浮点、实时性好 功耗稍高、封装复杂 工业级飞控、高动态飞行
FPGA 并行处理、延迟极低、可定制 开发难度大、成本高、功耗高 科研、军工、高速无人机

我个人习惯,做原型阶段先用STM32。为什么?因为快。你花两周就能把基本框架搭起来,验证算法可行性。等产品定型了,再根据性能瓶颈换芯片。

小技巧:如果你用STM32,建议选带硬件浮点单元(FPU)的型号,比如STM32F4或F7系列。飞控里大量用到浮点运算,软件模拟浮点会吃掉你30%以上的算力。

说到NXP,我去年做过一个项目,要求飞控响应延迟低于1毫秒。STM32扛不住了,换成了i.MX RT1060。嗯,效果立竿见影。它的实时性确实好,但要注意——它的封装是BGA,手工焊接基本没戏,得找工厂贴片。

FPGA呢?说实话,除非你有特殊需求,否则别碰。我在军工项目里用过Xilinx的FPGA做飞控,那开发周期...唉,一言难尽。但如果你要做的是高速无人机(比如固定翼竞速机),FPGA的并行处理能力确实无可替代。

避坑指南:我曾经在一个项目里选了STM32F103,结果发现它的ADC采样率不够,IMU数据读出来全是噪声。后来换了F405才解决。所以,选型时一定要把外设需求列清楚,别只看主频。

2.2 传感器选型:IMU、GPS、气压计、磁力计

传感器是飞控的感官。你想想看,如果传感器数据不准,飞控算法再牛也没用。就像一个人眼睛近视,跑步肯定摔跤。

2.2.1 IMU(惯性测量单元)

IMU是飞控最核心的传感器。它包含加速度计和陀螺仪。选型时主要看三个指标:

  • 量程:加速度计一般选±2g到±16g,陀螺仪选±250°/s到±2000°/s。消费级无人机用±4g和±500°/s就够了。
  • 噪声密度:这个参数很关键。噪声密度越低,姿态解算越稳。我一般选低于0.01°/s/√Hz的陀螺仪。
  • 温度稳定性:飞控工作温度范围宽,从-20°C到60°C很常见。有些便宜IMU温度漂移大得离谱,飞着飞着就偏了。

市面上常见的IMU芯片:

型号 厂商 特点 我的评价
MPU6050 InvenSense 便宜、资料多 入门可以,量产别用
ICM-20602 InvenSense 低噪声、小封装 性价比之选
BMI088 Bosch 温度稳定性好 工业级首选
ADIS16470 ADI 军工级、带校准 贵,但省心

我建议,量产项目至少用ICM-20602起步。MPU6050虽然便宜,但它的温度漂移和噪声在量产中会让你头疼。我在一个项目中用过MPU6050,结果高温测试时姿态漂了5度,直接导致返工。

2.2.2 GPS

GPS选型其实没那么复杂。主要看两点:定位精度和更新率。

  • 消费级:u-blox M8N系列,精度2.5米,更新率10Hz。够用。
  • 工业级:u-blox F9系列,支持RTK,精度厘米级。适合测绘、农业无人机。
  • 注意:GPS天线也很重要。我用过陶瓷天线和贴片天线,陶瓷天线抗干扰能力明显强一些。

经验之谈:GPS模块的冷启动时间是个容易被忽略的参数。有些模块冷启动要30秒以上,这在紧急情况下很要命。我一般选冷启动低于15秒的模块。

2.2.3 气压计

气压计用来测高度。飞控里一般用MS5611或BMP280。

  • MS5611:精度高(±10cm),响应快。但贵一点。
  • BMP280:便宜,但精度一般(±50cm),而且容易受气流干扰。

我个人习惯,室内飞控用BMP280就够了,室外飞控还是上MS5611靠谱。记得给气压计加海绵罩,不然风一吹高度就跳变。

2.2.4 磁力计

磁力计用来测航向。但说实话,它是个麻烦精。为什么?因为容易受干扰。

常见的磁力计有HMC5883L、IST8310、RM3100。我推荐IST8310,它抗干扰能力比HMC5883L强不少。

避坑指南:我曾经在项目里把磁力计放在电机旁边,结果电机一转动,航向直接偏了30度。后来把磁力计移到机臂末端,问题才解决。所以,布局时一定要远离大电流和磁性物质。

2.3 通信接口选型:UART、I2C、SPI、CAN

通信接口就像飞控的神经。选对了,数据传输又快又稳;选错了,丢包、延迟、干扰全来了。

2.3.1 UART

UART是最常用的接口。GPS、数传、遥控器接收机,基本都是UART。

  • 优点:简单、通用、长距离传输
  • 缺点:速度慢(一般115200bps)、只能点对点
  • 注意:UART没有时钟同步,波特率必须匹配。我遇到过波特率设置错误导致通信失败的案例,排查了半天。

2.3.2 I2C

I2C常用于连接传感器。IMU、气压计、磁力计很多都是I2C接口。

  • 优点:只需要两根线,可以挂多个设备
  • 缺点:速度慢(标准模式100kHz)、抗干扰差
  • 我的建议:飞控里尽量少用I2C。它的总线电容问题在长距离传输时很头疼。我一般只在板内短距离用I2C,超过10cm就换SPI。

2.3.3 SPI

SPI是我在飞控里最喜欢的接口。速度快、全双工、抗干扰好。

  • 优点:速度可达几十MHz,适合高速传感器
  • 缺点:需要4根线,占用IO多
  • 注意:SPI的时钟极性和相位要配置对。我刚开始做飞控时,SPI读IMU数据全是0xFF,后来发现是CPOL和CPHA设反了。

2.3.4 CAN

CAN总线在工业飞控里越来越流行。它适合多节点通信,比如飞控和电调、飞控和地面站之间的数据交换。

  • 优点:实时性好、抗干扰强、支持多主通信
  • 缺点:需要CAN收发器,成本稍高
  • 应用场景:大型无人机、工业级飞控

总结一下我的选型原则:

  • 传感器通信:优先SPI,其次I2C
  • 外设通信(GPS、数传):UART
  • 多节点通信:CAN
  • 能不用I2C就不用I2C,除非你只连一个设备且距离很近

2.4 知识体系总览

下面这张图,是我梳理的飞控硬件选型知识体系。你可以把它当作选型时的检查清单。

飞控硬件选型知识体系 主控芯片 STM32 NXP i.MX RT FPGA 传感器 IMU GPS 气压计 磁力计 通信接口 UART I2C SPI CAN 选型核心原则 应用场景决定方案 成本与性能平衡 开发周期考量 选型不是一次性的,需要根据测试结果反复迭代 原型阶段用STM32 + 常用传感器,量产阶段再优化

这张图把选型分成了三大块:主控、传感器、通信接口。你选型时,可以按这个框架一步步来。先定主控,再选传感器,最后搭通信方案。

最后说一句:硬件选型没有完美的方案,只有最适合你项目的方案。别追求参数上的极致,那往往是成本和无尽debug的深渊。先让飞控飞起来,再谈优化。

专注资料整理