飞控固件刷写与配置:PX4/ArduPilot 固件选择、通过 QGC 刷写固件、飞控参数基础设置
飞控固件,说白了就是无人机的大脑操作系统。选对了、刷对了、配好了,飞机才能听话。我见过太多新手在这步栽跟头——固件版本不对、校准跳过、参数乱改,最后炸机了还不知道问题出在哪。
这一章,咱们就把固件选择、刷写流程、基础校准这三件事彻底讲透。你跟着我的节奏走,保证少走弯路。
一、PX4 vs ArduPilot:到底选哪个?
很多学员一上来就问我:「老师,PX4 和 ArduPilot 哪个好?」我的回答永远是——看你的场景。
这两套固件都是开源界的顶梁柱,但设计哲学完全不同。我做个对比表,你一看就明白。
| 对比维度 | PX4 | ArduPilot |
|---|---|---|
| 架构 | 模块化、微内核 | 整体式、功能集成 |
| 适用机型 | 多旋翼、固定翼、VTOL | 多旋翼、固定翼、VTOL、无人车、无人船 |
| 代码语言 | C++,现代风格 | C++,历史包袱较重 |
| 参数复杂度 | 中等,默认参数较合理 | 极高,可调参数上千个 |
| 社区活跃度 | Dronecode 基金会主导 | ArduPilot 团队 + 全球贡献者 |
| 典型场景 | 科研、工业、竞速 | 航测、农业、DIY 折腾 |
我的建议: 如果你是做科研或工业应用,选 PX4,它的代码结构清晰,二次开发友好。如果你喜欢折腾、想玩无人车或船,或者需要极其丰富的功能,ArduPilot 更适合你。我个人习惯是:多旋翼用 PX4,固定翼和无人车用 ArduPilot。
二、通过 QGC 刷写固件
QGroundControl(QGC)是目前最主流的地面站软件之一。刷固件这件事,QGC 做得相当傻瓜化。但傻瓜化不代表你可以乱点——我见过有人刷到一半拔 USB 线,结果飞控变砖。
2.1 准备工作
- 一台安装了 QGC 的电脑(Windows / macOS / Linux 均可)
- 飞控板(如 Pixhawk、Cube、Holybro 系列)
- Micro USB 或 USB-C 数据线(注意:要能传数据,不是充电线!)
- 稳定的网络环境(QGC 需要从 GitHub 下载固件)
2.2 刷写步骤
- 用数据线连接飞控和电脑。QGC 会自动识别飞控。
- 点击 QGC 左上角「Q」图标 → 选择「Vehicle Setup」。
- 在左侧菜单找到「Firmware」页面。
- 选择你要刷的固件类型(PX4 或 ArduPilot)。
- QGC 会自动检测飞控硬件版本,并推荐对应的固件版本。
- 点击「Update」按钮,等待进度条走完。
- 刷写完成后,飞控会自动重启。
⚠️ 重要提醒: 刷写过程中千万不要断开 USB 连接或断电!我曾经有一次在实验室刷固件,学生不小心踢到了 USB 线,结果飞控的 bootloader 损坏,最后只能用 SWD 接口重新烧录,折腾了一下午。所以,刷固件时请确保 USB 接口牢固,最好用带卡扣的线。
2.3 固件版本选择策略
QGC 默认会推荐「稳定版」(Stable)。我个人建议:
- 新手: 无脑选稳定版,别碰「开发版」或「每日构建版」。
- 老手: 如果你需要某个新功能或修复,可以尝试「Beta 版」,但要做好回退的准备。
- 避坑: 不要在生产无人机上使用「开发版」。我在项目中吃过这个亏——开发版的一个 bug 导致飞机在悬停时突然偏航,差点撞墙。
三、飞控参数基础设置
固件刷好了,接下来就是校准。这一步很多人觉得麻烦,想跳过。嗯,这里要注意——校准不做好,飞控就是瞎子。你想想看,一个瞎子飞行员能开好飞机吗?
3.1 IMU 校准
IMU(惯性测量单元)包含加速度计和陀螺仪。校准的目的是让飞控知道「什么是水平」。
操作步骤:
- 在 QGC 的「Vehicle Setup」→「Sensors」页面,点击「Accelerometer」。
- 按照提示,将飞控依次放置到 6 个方向:水平朝上、水平朝下、左侧、右侧、机头朝上、机头朝下。
- 每个方向保持静止 2-3 秒,直到 QGC 显示「Completed」。
- 点击「Calibrate」按钮,等待校准完成。
我的经验: 校准 IMU 时,一定要把飞控放在一个绝对水平的台面上。我习惯用一块亚克力板,下面垫三个水平仪螺丝脚,调平后再校准。另外,校准过程中不要用手触碰飞控,人体晃动会影响加速度计读数。
3.2 罗盘校准
罗盘(磁力计)负责感知地球磁场,帮助飞控确定航向。但问题是——城市里到处都是电磁干扰。
操作步骤:
- 在 QGC 的「Sensors」页面,点击「Compass」。
- 手持无人机,在空中画「8」字轨迹。
- 确保无人机绕 X、Y、Z 三个轴都旋转到位。
- QGC 会实时显示校准进度。当三个轴的曲线都平滑且覆盖完整范围时,校准完成。
⚠️ 避坑指南: 我曾经在一个钢结构厂房里做罗盘校准,结果怎么都过不了。后来才发现,厂房里的钢筋结构严重干扰了磁场。所以,罗盘校准一定要在室外空旷处进行,远离钢筋、高压线、大型金属物体。如果校准后 QGC 显示「Compass Health」为红色,说明干扰太大,换个地方重新来。
3.3 遥控器校准
遥控器校准的目的是让飞控知道你的摇杆「中立点」和「最大行程」在哪里。
操作步骤:
- 在 QGC 的「Sensors」页面,点击「Radio」。
- 确保遥控器已对频并开启。
- 点击「Calibrate」按钮。
- 按照提示,依次将每个摇杆推到最大、最小、中立位置。
- QGC 会显示每个通道的 PWM 值范围。正常范围应在 1000-2000 之间,中立点应在 1500 左右。
- 点击「Apply」保存校准结果。
一个小技巧: 校准完成后,在 QGC 的「Radio」页面观察摇杆的实时数值。如果中立点偏离 1500 超过 20,说明遥控器的微调旋钮没归零。我习惯在每次飞行前都检查一遍这个数值,确保遥控器状态正常。
四、知识体系总览
下面这张图,帮你把本章的核心逻辑串起来。你照着这个流程走,固件刷写和基础设置就不会乱。
五、常见问题与排查
刷写和校准过程中,你可能会遇到一些问题。我把最常见的几个列出来,你遇到了直接对照排查。
| 问题现象 | 可能原因 | 解决方法 |
|---|---|---|
| QGC 无法识别飞控 | 驱动未安装 / USB 线质量问题 | 安装驱动(Windows 需装 Zadig),换一根数据线 |
| 刷写进度卡在 50% | 网络不稳定 / GitHub 被墙 | 切换网络环境,或使用固件离线下载功能 |
| IMU 校准一直失败 | 飞控未放平 / 震动干扰 | 放在水平台面上,确保飞控固定牢固 |
| 罗盘校准后航向不准 | 电磁干扰 / 罗盘安装位置不当 | 换到室外空旷处重新校准,检查罗盘是否远离大电流线缆 |
| 遥控器通道数值异常 | 遥控器微调未归零 / 接收机故障 | 将遥控器所有微调旋钮归零,重新校准 |
核心要点回顾:
- 固件选择:PX4 适合科研/工业,ArduPilot 适合航测/DIY/无人车
- 刷写固件:用 QGC,选稳定版,过程中不要断电
- IMU 校准:6 个方向,水平台面,保持静止
- 罗盘校准:室外空旷处,画 8 字,远离金属干扰
- 遥控器校准:检查中立点 1500,微调归零