带gazebo的 ROS 2¶
本指南旨在介绍如何使用 ROS 2 将 ArduPilot 与 Gazebo 集成。
先决条件¶
在开始本 Gazebo 教程之前,请确保您已完成并运行了先决条件。
安装gazebo¶
接下来,在工作区中设置所有必要的 ROS 2 软件包。
我们将使用 vcstool 和一个 ros2.repos 文件
CD ~/ros2_ws vcs 舶来品 --输入 https://raw.githubusercontent.com/ArduPilot/ardupilot_gz/main/ros2_gz.repos --递归 来源
将gazebo版本设为 园林
或 调和
出口 GZ_VERSION=园林
更新 ROS 依赖项:
CD ~/ros2_ws
消息来源 /opt/ros/humble/setup.bash sudo 适切 更新 更新 安装 --从路径 来源 --忽略源代码 -r
构建和运行测试¶
建设:
CD ~/ros2_ws colcon 构建 --包至 ardupilot_gz_bringup
如果您想测试安装,请运行
CD ~/ros2_ws
消息来源 install/setup.bash colcon 测试 --软件包--选择 ardupilot_sitl 测试 ardupilot_gazebo 应用程序 ardupilot_gz_description ardupilot_gz_gazebo adupilot_gz_bring up colcon 测试结果 --全部 --verbose
运行模拟¶
最后,您可以为工作区创建源代码,并启动一个 Gazebo 仿真示例:
消息来源 install/setup.bash ros2 启动 ardupilot_gz_bringup iris_runway.launch.py
默认情况下,该启动文件只需一条命令即可启动 ArduPilot SITL、Gazebo 和 RViz。
有关 ardupilot_gz 软件包参见 ardupilot_gz/README.md.
现有实例¶
光圈跑道(旋翼飞行器)
玫瑰2 启动 ardupilot_gz_bringup iris_runway.launch.py
鸢尾花迷宫(旋翼飞行器)
玫瑰2 启动 ardupilot_gz_bringup iris_maze.launch.py
WildThumper (Rover)
玫瑰2 启动 ardupilot_gz_bringup wildthumper.launch.py
下面是 ArduPilot 与 ROS 2 和 Gazebo 协同工作的演示视频:
下一个¶
运行制图师 SLAM Cartographer SLAM 与 SITL 中的 ROS 2