Isaac Sim + Pegasus + PX4 无人机基础控制

在 Isaac Sim 中加载无人机,并通过 QGC 或 ROS 2 进行控制。

Pegasus 负责将仿真中的无人机接入 PX4。PX4 接收 QGroundControl 或 ROS 2 的控制命令,并驱动无人机运动。

典型验证流程为:使用官方 Iris 验证基础链路,使用 ROS 2 控制无人机,再替换为目标无人机资产。

支持的系统组合:

UbuntuROS 2说明
20.04Foxy历史兼容环境,保留兼容指令
22.04Humble中间版本环境,适合较新的 ROS 2 Bridge / PX4 工作流
24.04Jazzy验证环境示例,用于说明本项目包的默认配置

适配环境示例:

本文档在保留 Ubuntu 20.04 + ROS 2 Foxy 历史指令的基础上,补充 Ubuntu 22.04 + ROS 2 Humble、Ubuntu 24.04 + ROS 2 Jazzy 的指令。宿主机 ROS 2 控制终端应按实际系统选择对应发行版;验证环境使用 Jazzy。Isaac Sim 启动脚本内部为了 ROS 2 Bridge 可能设置 ROS_DISTRO=humble,需避免在同一个终端中反复 source 多套 ROS 2 环境。

文档结构:五个内容模块

核心链路是:

模块说明内容验证目标
模块一:基础认知与仿真控制链路系统架构理解 Isaac Sim、Pegasus、PX4、QGC、ROS 2 的职责
模块二:Isaac Sim + Pegasus + PX4 官方 Iris 试飞官方 Iris 基础飞行QGC 可以连接 PX4,Iris 可以 arm、takeoff、move、land
模块三:PX4 Offboard 与 ROS 2 代码控制ROS 2 自动控制理解 ROS 2 控制流程,并使用代码完成 takeoff、move、hover、land
模块四:自定义无人机接入与资产说明自定义无人机资产接入加载 Sunray150,并判断问题所在层级
模块五:货舱资产加载与控制独立货舱资产验证单独加载货舱 USD,并通过 ROS 2 字符串话题控制舱门
问题排查安装、通信、Offboard、自定义资产问题按现象定位到 Isaac Sim、Pegasus、PX4、ROS 2 或 USD 资产

验证顺序:

顺序主题目标
1基础链路 + Pegasus + PX4 + QGC + Iris 手动试飞在 Isaac Sim 中加载 Iris,QGC 显示 Ready To Fly,并完成手动起飞、移动、降落
2坐标系 + ROS 2 Offboard + 代码控制查看 /fmu/out/* 状态话题,运行控制菜单,并理解 z=-1 表示上升的原因
3自定义无人机 + 目标资产 + 接入排查加载自定义无人机资产,确认 /World/quadrotor/World/quadrotor/body,并通过 QGC 或 ROS 2 控制
4独立货舱资产加载 + 字符串话题控制单独加载货舱 USD,测试 left_openbottom_open 等货舱指令

运行异常时可查看 docs/06_疑难杂症_QA.md。该文件为问题排查文档,按报错现象整理检查顺序。

 

参考资料