一、飞控系统概述
1.1 多旋翼飞行器的发展历程
多旋翼飞行器,说白了就是咱们常说的无人机。这东西真正火起来,也就是最近十来年的事。
我记得2010年左右,那时候玩四轴还得自己焊飞控板。市面上能买到的成品,基本就是德国MK和国产的玉兔。价格贵不说,稳定性也一般。你想想看,那时候的飞控还用的是8位单片机,算力可怜得很。
真正让多旋翼走进大众视野的,是2013年大疆的Phantom系列。它把飞控、GPS、云台集成到了一起。嗯,这里要注意,不是大疆发明了飞控,而是它把用户体验做到了极致。
从技术演进来看,我把它分成三个阶段:
- 萌芽期(2005-2010):开源飞控为主,玩家自己折腾。代表有ArduPilot的前身——DIY Drones项目。
- 爆发期(2011-2016):Pixhawk横空出世,3DR、大疆等厂商推动商业化。飞控从8位机升级到32位ARM Cortex-M系列。
- 成熟期(2017至今):算力过剩,开始上视觉、激光雷达。飞控从单纯的姿态控制,变成了环境感知+决策+控制的综合体。
我个人习惯把2015年作为一个分水岭。那一年我调试过一个项目,飞控还是STM32F4,跑着1kHz的控制频率。现在呢?随便一个飞控都是双核、甚至带FPGA。时代变了。
1.2 飞控系统的定义与核心作用
飞控系统,全称是飞行控制系统。它干的事很简单:让飞机按照你的指令飞,同时保持稳定。
但背后其实挺复杂的。我打个比方:飞控就像飞机的「小脑」。大脑是你(或者地面站),负责发指令。小脑负责执行,同时处理各种意外——比如风来了、电机坏了、GPS丢了。
飞控的核心作用,我总结成三点:
- 姿态稳定:这是基本功。不管你怎么推油门、打摇杆,飞机不能翻。靠的是陀螺仪和加速度计的融合数据,加上PID控制。
- 位置控制:有了GPS或者光流,飞控就能让飞机悬停在一个点上。这比姿态控制高一个层次。
- 任务执行:自动航线、一键返航、降落检测。这些是飞控的「高级功能」。
避坑指南:我曾经在一个项目中,把姿态控制和位置控制混为一谈。结果飞机在GPS信号差的地方疯狂漂移。后来才明白,位置控制依赖的传感器(GPS/光流)精度远低于姿态传感器(IMU)。这两个环路的带宽差了一个数量级。
为什么会这样?因为IMU的更新频率可以到1kHz以上,而GPS只有10Hz。你想想看,一个每秒更新1000次,一个每秒更新10次,它们能一样吗?
1.3 主流飞控硬件平台对比
现在市面上主流的飞控平台,我接触过的就三个:Pixhawk、ArduPilot(其实它是个软件生态)、Betaflight。嗯,这里要说明一下,ArduPilot和Betaflight是固件,但它们有自己偏好的硬件平台。
我直接上表格,这样对比更清楚:
| 特性 | Pixhawk | ArduPilot | Betaflight |
|---|---|---|---|
| 硬件架构 | STM32F4/F7/H7 | 兼容Pixhawk + 自研板 | STM32F4/F7,主打F4 |
| 控制频率 | 1kHz(姿态) | 1kHz(姿态) | 4kHz-32kHz |
| 传感器冗余 | 支持双IMU、双磁力计 | 同Pixhawk | 单IMU为主 |
| 适用场景 | 科研、工业、航拍 | 科研、农业、无人车 | 穿越机、竞速 |
| 代码量 | 中等(PX4约50万行) | 大(约100万行) | 小(约10万行) |
| 学习曲线 | 陡峭 | 陡峭 | 平缓 |
我一个个说:
Pixhawk
Pixhawk是瑞士苏黎世联邦理工(ETH)和3DR联合搞出来的。它的设计理念是「工业级可靠性」。我最早用Pixhawk是2014年,那时候还是Pixhawk 1代,用的STM32F427。说实话,那个板子做工是真的好,双IMU冗余,带独立的故障保护协处理器。
我个人习惯把Pixhawk叫做「飞控界的Linux」——稳定、开源、生态好。但缺点也明显:贵、重、配置复杂。
ArduPilot
ArduPilot其实是个固件,不是硬件。但它和Pixhawk深度绑定。ArduPilot的历史比Pixhawk还早,最早是APM(ArduPilot Mega),用的Arduino Mega板子。
我记得2012年那会儿,APM还是8位机,跑着Arduino的bootloader。后来移植到Pixhawk上,才算真正起飞。ArduPilot的代码量巨大,支持的东西也多——不光是多旋翼,还有固定翼、无人车、无人船。
我的建议:如果你是做科研或者工业应用,选ArduPilot没错。它的EKF(扩展卡尔曼滤波)算法非常成熟,传感器融合做得很好。但如果你只是想玩玩穿越机,别碰它——太重了。
Betaflight
Betaflight是从Cleanflight分出来的,Cleanflight又是从Baseflight分出来的。说白了,它们都是穿越机玩家的产物。
Betaflight的设计哲学和Pixhawk完全相反:性能优先,安全靠后。它没有传感器冗余,没有复杂的故障保护逻辑。但它快——控制频率可以到32kHz。这是什么概念?Pixhawk跑1kHz,Betaflight跑32kHz,差了32倍。
为什么会这样?因为穿越机不需要GPS,不需要自动返航。它只需要一件事:响应快。你打杆,它立刻动。延迟越低越好。
我曾经用Betaflight飞过一台5寸穿越机,那个手感...嗯,怎么说呢,就像开卡丁车和开大卡车的区别。Pixhawk是卡车,稳但笨重。Betaflight是卡丁车,灵活但容错低。
注意:Betaflight的配置界面是Betaflight Configurator,一个Chrome应用。Pixhawk用的是QGroundControl或者Mission Planner。这两个工具完全不一样,别搞混了。
知识体系总览
下面这张图,是我自己画的。它把本章的核心内容串了起来:
这张图把本章的三个核心模块串起来了。从左到右,分别是「发展历程」、「核心作用」、「平台对比」。底部那句话是我自己加的——选型核心:场景决定平台,需求决定配置。你想想看,做航拍的和玩穿越机的,能用一个飞控吗?肯定不能。
好了,第一章就到这里。内容不多,但都是干货。下一章我们聊飞控的硬件架构——IMU、MCU、传感器,这些东西到底怎么选,怎么搭。