Gazebo Harmonic

使用 Gazebo 进行物理仿真。

安装

sudo apt install ros-jazzy-gz-*

使用方法

启动文件

ros2 launch ocs2_arm_controller demo.launch.py hardware:=gz

参数

参数

取值

描述

hardware

gz

使用 Gazebo 后端

world

世界文件路径

自定义世界

headless

true/false

无 GUI

功能特性

物理

  • 刚体动力学

  • 接触仿真

  • 关节动力学

传感器

  • 相机仿真

  • 深度传感器

  • 力/力矩

世界

默认世界包含地面。自定义世界:

ros2 launch ocs2_arm_controller demo.launch.py hardware:=gz world:=custom.sdf

集成

ros2_control 桥接

gz_ros2_control 将 Gazebo 物理桥接到 ROS 2:

<ros2_control name="GazeboSystem" type="system">
  <hardware>
    <plugin>gz_ros2_control/GazeboSimSystem</plugin>
  </hardware>
</ros2_control>

主题

Gazebo 会发布 ROS 2 话题:

  • /joint_states — 关节反馈

  • /clock — 仿真时间

  • 按配置发布的传感器话题

调试

检查 Gazebo 状态

gz topic -l

查看仿真

gz gui

仿真过慢

如果仿真运行缓慢:

  1. 降低世界复杂度

  2. 使用无界面模式

  3. 检查 GPU 加速