前言
本教程基于 ROS2,在搭建之前,需要把 ROS2、QGC 等基础环境安装配置完成。由于 ROS2 下的资料相较于 ROS1 较少,建议对 Linux 和 ROS 有一定了解后再进行操作。
本次安装以 px4 v1.14.0 为例,不适用于旧版本。推荐配置如下:虚拟机 Ubuntu 22.04(运行内存 4G、硬盘 80G)、ROS2 Humble、QGC。
注意:命令执行有先后顺序,建议按步骤操作。对于不熟悉的命令,可查阅官方文档。建议使用虚拟机并开启快照功能,以便在环境配置出错时快速回滚。网络方面,下载 GitHub 资源或 Python 包时若速度较慢,可尝试更换源或多次重试。
1. 准备
1.1 下载 PX4 源码
方式一:从 GitHub 下载
sudo apt install git
git clone https://github.com/PX4/PX4-Autopilot.git # 下载源码
mv PX4-Autopilot PX4_Firmware # 更改目录名
cd PX4_Firmware
git checkout v1.14.0 # 切换版本
git submodule update --init --recursive # 更新子模块
方式二:使用本地解压文件
若网络受限,可从其他渠道获取源码包。解压后进入目录执行:
cd PX4_Firmware
wget https://gitee.com/tyx6/mytools/raw/main/px4/set_executable.sh
chmod +x set_executable.sh
./set_executable.sh
1.2 安装仿真依赖
sudo apt install ros-dev-tools
cd ~/PX4_Firmware/Tools/setup
提示:脚本默认会安装 pip 相关环境。如果觉得 Python 包下载太慢,可以修改脚本中的源地址(如换成清华源)。这一步是可选的,但推荐执行。
chmod +x ubuntu.sh
./ubuntu.sh --no-nuttx --no-sim-tools
# --no-sim-tools 不安装仿真环境
# --no-nuttx 不安装交叉编译环境
# 如需自行编译飞控固件烧录到硬件,则需要交叉编译环境
脚本执行时间取决于网络状况。完成后重启 Ubuntu。
1.3 安装 Gazebo
Gazebo 是一款强大的 3D 仿真软件,提供物理模拟、碰撞检测及传感器模型。Ubuntu 22.04 及以上版本支持 Gazebo Ignition(现更名为 Gazebo),旧版 Gazebo Classic 已不再维护。两者不能共存,安装新版本会自动卸载旧版。
cd ~/PX4_Firmware/Tools/setup
./ubuntu.sh --no-nuttx # 此步骤会安装仿真环境依赖,包括 gazebo


