Gazebo 机器人三维物理仿真平台
简介
Gazebo 是由 Open Robotics(前身为 Willow Garage 和 OSRF)主导开发的开源 3D 机器人仿真软件。在学术界与工业界,它几乎是机器人仿真的事实标准,广泛应用于各类研究与竞赛中。
核心能力
物理引擎
默认采用 ODE(Open Dynamics Engine),擅长刚体动力学。若需软体或复杂碰撞,可选 Bullet;生物力学仿真推荐 Simbody;追求广义坐标效率则用 DART。实际开发中,根据场景复杂度选择引擎能显著提升调试效率。
渲染与传感器
基于 OGRE 引擎提供高质量 3D 可视化,光照阴影效果逼真。传感器支持非常全面,包括 RGB/深度相机、2D/3D 激光雷达、IMU、GPS 及力矩传感器等,基本覆盖主流感知需求。
模型格式
原生支持 SDF 格式,同时可通过插件兼容 ROS 标准的 URDF。内置模型库资源丰富,开箱即用。
架构与版本
架构上分为 GUI 交互层、Server 仿真层、Transport 通信层及底层物理引擎。
┌─────────────────────────────────────┐
│ 用户界面层 (GUI) │
│ (场景视图、模型编辑器、插件面板) │
├─────────────────────────────────────┤
│ 仿真引擎层 (Server) │
│ (物理引擎、传感器管理、世界状态管理)│
├─────────────────────────────────────┤
│ 通信层 (Transport) │
│ (基于 Google Protobuf 的发布/订阅) │
├─────────────────────────────────────┤
│ 物理引擎层 │
│ (ODE/Bullet/Simbody/DART) │
└─────────────────────────────────────┘
值得注意的是,Gazebo Classic(11.x)已于 2025 年 1 月停止维护,官方建议迁移至 Gazebo Sim (gz-sim),后者延续 Ignition 架构并原生支持 ROS 2。
| 版本 | 发布时间 | 主要特性 |
|---|---|---|
| Gazebo Classic (1.x-11.x) | 2002-2022 | 基于 OGRE 1.x,与 ROS 深度集成 |
| Ignition Gazebo (2020-2022) | 2020-2022 | 模块化架构,支持云端仿真 |
| Gazebo Sim (gz-sim) | 2022-至今 | 全新架构,Ignition 的延续,支持 ROS 2 |
| Gazebo Harmonic | 2023 | LTS 版本,长期支持至 2028 年 |
生态集成
与 ROS 结合紧密:ROS 1 使用 gazebo_ros_pkgs,ROS 2 则通过 ros_gz 桥接,利用 gz-transport 和 DDS 实现高效通信。
部署与评价
Ubuntu 下可直接通过包管理器安装最新版 gz-harmonic。
# Gazebo Sim (最新版)
sudo apt install gz-harmonic
# 或 Gazebo Classic(已停止维护)
sudo apt install gazebo11
源码编译支持 Linux、macOS 和 Windows(实验性),需要依赖 OGRE 3D、物理引擎、Qt5/Qt6 及 protobuf 等。

