PX4 是什么?
PX4 是一套开源的飞控系统(Flight Control System),适用于多种类型的无人机与机器人。它不仅仅是一个固件,而是一个完整的无人系统开发生态,包括飞控软件、仿真平台、通信协议、地面站和开发工具链。
PX4 的核心组成
- PX4-Autopilot:飞控固件主仓库,核心逻辑采用 C++ 开发
- QGroundControl:图形化地面站,便于调参与实时监控
- MAVLink:轻量级通信协议,连接地面站与飞控
- Gazebo / jMAVSim:仿真模拟器,支持虚拟环境测试
- MAVSDK / MAVROS:无人机接口,支持 Python、C++ 及 ROS 集成
顶层软件架构
下图展示了 PX4 的顶层架构,上半部分为中间件模块,下半部分为飞行控制栈组件。

PX4 能做什么?
PX4 不只是'让无人机飞起来',它支持多种控制任务,包括自动起降、路径规划、避障、返航、GPS 跟踪等。
| 能力 | 说明 |
|---|---|
| 自动飞行 | 自动起飞、巡航、返航、降落 |
| 多平台支持 | 多旋翼、固定翼、VTOL、水下无人机等 |
| 传感器驱动 | 支持 GPS、IMU、激光雷达、光流等 |
| 自主任务 | 路径规划、任务队列、自主决策 |
| 数据通信 | 与 QGC/MAVSDK/MAVROS 实时通信 |
| 模块拓展 | 支持自定义飞行逻辑、传感器、算法模块开发 |


PX4 vs ArduPilot 区别
两者都是开源飞控,但 PX4 更偏向现代架构与科研开发,而 ArduPilot 更成熟,广泛用于商用系统。
| 对比项 | PX4 | ArduPilot |
|---|---|---|
| 核心语言 | C++ | C |
| 通信协议 | MAVLink | MAVLink |


