Skip to content

Gazebo 概览

Gazebo 是开源的机器人仿真器,让你在物理仿真环境中构建、测试与迭代机器人——无需硬件即可验证算法与行为。本站内容整理自 Gazebo 官方文档。

如果你刚接触机器人仿真,可以从本页建立整体认识,再进入 安装 与 基础教程 动手实践。

Gazebo 提供高保真的三维物理仿真:你用 SDF/URDF 描述机器人模型与环境,Gazebo 负责刚体动力学、传感器仿真与三维渲染,并通过 ROS 2(ros_gz 桥接)或原生接口与你的控制代码交互。它由 Open Robotics 维护,是 ROS 生态中最广泛使用的仿真器(Darpa 机器人挑战赛、大量高校课程与工业预研都在用)。

  • 物理引擎:内置 ODE、Bullet、DART、Simbody 多种动力学引擎,支持关节、摩擦、碰撞、约束等刚体仿真。
  • 传感器仿真:激光雷达(含噪声模型)、RGB-D 相机、IMU、接触/接触力传感器、GPS 等常用传感器的数据生成。
  • 三维渲染:基于 OGRE2 的场景渲染,支持光照、材质与地面/天空环境,用于视觉算法与演示。
  • 世界与环境:用 SDF 描述世界(World),内置大量模型(家具、建筑、地形)与机器人模型库,可脚本化控制场景演化。
  • 命令行与 GUI 工具:gz sim 启动仿真,GUI 提供场景绘制、关节调试、传感器可视化、录制回放等工具。
  • 插件体系:系统级插件可深度介入物理步进、渲染与消息传递,实现自定义行为。
  • 分布式接口:传输层(Gazebo Transport)与 ROS 2 消息桥(ros_gz_bridge)打通仿真与 ROS 生态。

Gazebo 采用「代号 + 按字母序」的年度发布,长期支持(LTS)版本维护约 5-6 年:

版本发布支持至说明
Jetty2025-092031-05最新 LTS
Harmonic2023-092029-05LTS,Ubuntu 24.04 (Noble) 对应版本
Ionic2024-092026-12短期支持
Fortress2021-092027-05旧 LTS,配合 ROS 2 Humble
Gazebo Classic(11 及以前)—2025-01 已 EOL旧架构,新项目不建议使用

选型建议:Ubuntu 24.04 + ROS 2 Jazzy 用 Harmonic;Ubuntu 22.04 + Humble 用 Fortress;新装环境也可直接上 Jetty。版本对应关系详见 安装指南 与 参考与迁移。

  • 算法预研:SLAM、导航(Nav2)、机械臂规划(MoveIt)在仿真中先行验证,再迁移到实体机器人。
  • CI 回归测试:仿真环境跑自动化测试,代码改动不碰硬件也能验证行为。
  • 机器人设计:新构型的运动学/动力学验证、传感器布局选型(雷达视野、相机位姿)。
  • 危险或昂贵场景:跌落、碰撞、极端工况不损坏设备;多机器人编队不必购置整队硬件。
  • 数据采集:批量生成带真值的传感器数据,用于训练与评测。
  • 工业流程预演:港口设备、堆取料机等大型装备作业流程的仿真推演,见 工业应用实例。
  • 免费开源(Apache 2.0),无授权费用,社区模型与教程丰富;
  • 与 ROS 2 无缝集成,ros_gz 一条桥接即可在仿真中跑真实节点代码;
  • 物理与渲染平衡:同一世界可在高保真与快速(无渲染、无传感器)模式间切换,兼顾精度与速度;
  • Deterministic 复现:支持固定步长与确定性仿真,便于复现实验与回归测试。
  1. 安装 Gazebo:按平台与版本完成安装;
  2. 基础教程:搭建机器人模型、传感器与世界;
  3. ROS 2 集成:桥接话题、控制与感知;
  4. 参考与迁移:Gazebo Classic 迁移与版本对照;
  5. 工业应用实例:工业设备的仿真应用调研。