一、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 |


