1. QGC 入门:地面站概念、发展史与核心功能
大家好,我是你们这门课的老朋友。做了这么多年无人机地面站开发,我踩过的坑比飞过的航线还多。今天咱们就从最基础的东西聊起——地面站到底是什么?QGC 又是怎么一步步走到今天的?
1.1 地面站是什么?
说白了,地面站就是无人机在地面上的“大脑”和“眼睛”。你想想看,飞机在天上飞,你在地上站着,怎么知道它飞得好不好?怎么给它下指令?
地面站就是干这个的。它是一套软件(有时候也带硬件),运行在电脑、平板甚至手机上。通过它,你能看到飞机的姿态、位置、电量、信号强度……也能给它规划航线、切换模式、一键返航。
我个人习惯把地面站分成三类:
| 类型 | 典型代表 | 适用场景 |
|---|---|---|
| PC 地面站 | QGC、Mission Planner | 开发调试、复杂航线规划 |
| 移动端地面站 | QGC(Android/iOS)、Tower | 外场飞行、快速操控 |
| 嵌入式地面站 | 遥控器内置地面站 | 便携飞行、行业应用 |
核心要点:地面站不是“遥控器”的替代品,而是“遥控器 + 电脑 + 仪表盘”的集合体。它让你从“手动操控”升级到“任务管理”。
1.2 QGC 发展史:从实验室到行业标准
QGC 全称 QGroundControl。我第一次接触它的时候,它还只是个简陋的实验项目。那时候界面丑得不行,功能也少,但理念很超前——开源、跨平台、支持 MAVLink 协议。
为什么会选 QGC 作为咱们这门课的主角?
- 开源免费:代码全在 GitHub 上,随便看、随便改。我当年就是靠读 QGC 源码入门的。
- 跨平台:Windows、macOS、Linux、Android、iOS,一套代码全搞定。
- 生态成熟:PX4、ArduPilot 两大主流飞控都原生支持 QGC。
- 社区活跃:遇到问题,论坛上一问,基本当天就有回复。
我记得 2015 年左右,QGC 还经常崩溃。有一次我在外场演示,刚把航线传上去,地面站直接闪退了……嗯,从那以后我养成了“传航线前先保存”的习惯。
小提示:QGC 的版本号很有意思。早期是 2.x,后来直接跳到 3.0,再到现在 4.x。每次大版本更新,UI 和架构都会有大改动。如果你在网上看到老教程,注意看版本,别照着 2.x 的截图去操作 4.x 的界面。
1.3 QGC 核心功能概览
QGC 能做的事,比你想象的多得多。我把它拆成五大块:
- 实时监控:地图上显示飞机位置、姿态仪表、遥测数据流。
- 任务规划:在地图上点几个点,自动生成航线。支持航点、兴趣点、区域扫描。
- 飞控参数调参:PID、传感器校准、电池参数……不用连 Mission Planner 也能调。
- 日志分析:飞行结束后,下载 .ulog 文件,回放分析。
- 模拟器集成:内置 jMAVSim 和 Gazebo 支持,没飞机也能练手。
注意:QGC 的“模拟器模式”和“真实连接模式”在界面上几乎一模一样。我见过有人调了半天参数,结果发现连的是模拟器……飞控根本没收到。连接前一定看一眼状态栏的“连接状态”指示灯。
1.4 地面站与飞控的通信链路
这是整个系统的命脉。地面站和飞控之间怎么说话?用的是什么语言?
答案是:MAVLink 协议。你可以把它理解成无人机界的 HTTP 协议。飞控每隔一段时间就往外广播一堆数据包,地面站收到后解析、显示。反过来,地面站也通过 MAVLink 发指令给飞控。
通信链路长什么样?我画了张图,你看一眼就明白了:
通信链路里,有几个关键点我得提醒你:
- 数传电台:最常用的方式。433MHz、915MHz、2.4GHz 都有。距离从几百米到几十公里不等。
- 4G/5G 图传数传一体:适合超视距飞行,但依赖基站信号。
- USB 直连:调试时最稳,没有丢包。我习惯在室内调试时先用 USB,确认没问题再换无线。
避坑指南:我曾经在野外飞一架六轴,数传信号一直断断续续。折腾了半天,发现是数传天线和 GPS 天线靠太近,互相干扰。后来我把天线拉开 30 厘米以上,问题立刻解决。嗯,天线布局这事,真不能马虎。
1.5 通信协议:MAVLink 到底传什么?
MAVLink 的数据包结构很简单。每个包就是一个“消息”,包含消息 ID 和载荷。飞控每秒会发几十个这样的包出来。
常见的消息类型:
| 消息 ID | 消息名称 | 内容 |
|---|---|---|
| 0 | HEARTBEAT | 心跳包,表示设备在线 |
| 30 | ATTITUDE | 横滚、俯仰、偏航角 |
| 33 | GLOBAL_POSITION_INT | 经纬度、海拔、地速 |
| 24 | GPS_RAW_INT | GPS 卫星数、定位类型 |
| 74 | VFR_HUD | 空速、地速、高度、爬升率 |
你打开 QGC 的“MAVLink Inspector”面板,就能看到这些数据在实时刷新。我第一次看的时候,觉得这东西比飞机仪表盘还酷。
一句话总结:地面站和飞控之间,就是通过 MAVLink 协议,在无线链路上不停地“你问我答”。地面站负责展示和下发指令,飞控负责执行和回传状态。
好了,第一章的内容就到这。地面站的概念、QGC 的来龙去脉、核心功能、通信链路——这些是后面所有章节的基石。你把这些搞清楚了,后面学起来会顺很多。