带gazebo的 ROS 2

本指南旨在介绍如何使用 ROS 2 将 ArduPilot 与 Gazebo 集成。

先决条件

在开始本 Gazebo 教程之前,请确保您已完成并运行了先决条件。

  1. 安装 ROS 2

  2. 使用 ArduPilot SITL 安装和运行 ROS 2

安装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。

./_images/IrisRunway.png

有关 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