Robot simulation is an essential tool in every roboticist's toolbox. A well-designed simulator makes it possible to rapidly test algorithms, design robots, perform regression testing, and train AI system using realistic scenarios. Gazebo offers the ability to accurately and efficiently simulate populations of robots in complex indoor and outdoor environments. At your fingertips is a robust physics engine, high-quality graphics, and convenient programmatic and graphical interfaces. Best of all, Gazebo is free with a vibrant community.
2019-01-30
We are proud to announce the release of Gazebo 11. This version of Gazebo has long term support with an end-of-life on January 29, 2025.
We've also released new minor versions for Gazebo 9 and 10:
The first stable release of Gazebo came out on October 2012. Now, almost 8 years and 10 major releases later, Gazebo 11 marks the end of major releases from the osrf/gazebo codebase. All released versions will be supported until their end of life, receiving backwards-compatible features and bug fixes.
We'd like to thank external developers who have contributed to Gazebo over the past year:
Moving forward, the simulation team at Open Robotics will be focusing on the development of the Ignition simulation framework.
Not all features available on Gazebo 11 have been ported to Ignition yet. Likewise, Ignition offers new features which are not available on Gazebo 11. You can see the feature comparison between Ignition Citadel and Gazebo 11 here.
Both Gazebo and Ignition use SDFormat as the world description format. Therefore, worlds and models that work on Gazebo can be easily ported to Ignition.
Ignition Gazebo supports different plugin types from Gazebo-classic. Check out this tutorial for a review of plugin types and an example on how to port a plugin from Gazebo.
Improved migration guides and APIs to help the transition from Gazebo to Ignition will be coming up over the next few months.
Gazebo Development Team
Find answers and ask questions.
Join for discussions and announcements.
Robots, objects, and other simulation models.
Get Gazebo's source code.
Utilizing OGRE, Gazebo provides realistic rendering of environments including high-quality lighting, shadows, and textures.
Generate sensor data, optionally with noise, from laser range finders, 2D/3D cameras, Kinect style sensors, contact sensors, force-torque, and more.
Develop custom plugins for robot, sensor, and environmental control. Plugins provide direct access to Gazebo's API.
Many robots are provided including PR2, Pioneer2 DX, iRobot Create, and TurtleBot. Or build your own using SDF.
Run simulation on remote servers, and interface to Gazebo through socket-based message passing using Google Protobufs.
Extensive command line tools facilitate simulation introspection and control.
A simple set of steps to get Gazebo up and running rapidly.
Description of Gazebo's hotkeys and mouse interactions.
The best way to start using Gazebo is to run through the tutorials. These tutorials cover both basic and simple concepts through a series of exercises.
Check out the example worlds and programs that are in the source code.
If you can't find what you are looking for, try our askbot help forum located at answers.gazebosim.org.
Want to exchange ideas with the rest of the community? Come to community.gazebosim.org.
A high-level description of Gazebo and its various components.
Doxygen generated documentation for the Gazebo libraries.
A complete list of all the protobuf messages used by Gazebo
SDFormat is an XML file format that defines environments and models. This specification defines all the XML elements for describing world and models.
Gazebo 11 is the last major release of Gazebo. All currently supported Gazebo versions are still being maintained and may receive new backwards-compatible features and bug fixes until their end-of-life.
Gazebo is being refactored into the new Ignition Gazebo simulator. Check out Ignition Robotics to learn all about it.
Refer documentation in downstream applications, such as ROS, for version compatiblilty.
A tick-tock release cycle allows easy migration to new software versions. Obsolete Gazebo code is marked as deprecated for one major release. Deprecated code produces compile-time warnings. These warning serve as notification to users that their code should be upgraded. The next major release will remove the deprecated code.
Example where function foo is deprecated and replaced by function bar:
Gazebo v1.0 | Gazebo v2.0 | Gazebo v3.0 | |||
---|---|---|---|---|---|
void foo(); |
| void bar(); |
Gazebo supports the ODE, Bullet, Simbody and DART physics engines. By default Gazebo is compiled with support for ODE. In order to use the other engines, first make sure they are installed and then compile Gazebo from source.
Physics Engine | Gazebo Version | Availability | Notes |
---|---|---|---|
ODE | 1.9+ | Binary,Source | Default engine. Gazebo maintains a fork of ODE which has diverged from the upstream package. |
Bullet | 3.0+ | Source | Gazebo requires libbullet2.82, available in the OSRF repository and to be included in Ubuntu Utopic. |
Simbody | 3.0+ | Source | Simbody packages are hosted in the OSRF repository. Expected to appear in Ubuntu Utopic official repositories. |
DART | 3.0+ | Source | DART packages are hosted in dartsim PPA. DART is in the process of moving toward inclusion in Ubuntu. |
The new Ignition simulator uses a physics plugin framework to resolve dependency issues. Each physics engine is interfaced to Ignition Gazebo through a plugin, avoiding the need to compile the simulator with support for each engine. |
Gazebo development began in the fall of 2002 at the University of Southern California. The original creators were Dr. Andrew Howard and his student Nate Koenig. The concept of a high-fidelity simulator stemmed from the need to simulate robots in outdoor environments under various conditions. As a complementary simulator to Stage, the name Gazebo was chosen as the closest structure to an outdoor stage. The name has stuck despite the fact that most users of Gazebo simulate indoor environments.
Over the years, Nate continued development of Gazebo while completing his PhD. In 2009, John Hsu, a Senior Research Engineer at Willow, integrated ROS and the PR2 into Gazebo, which has since become one the primary tools used in the ROS community. A few years later in the Spring of 2011, Willow Garage started providing financial support for the development of Gazebo. In 2012, Open Source Robotics Foundation (OSRF) spun out of Willow Garage and became the steward of the Gazebo project. After significant development effort by a team of talented individuals, OSRF used Gazebo to run the Virtual Robotics Challenge, a component in the DARPA Robotics Challenge, in July of 2013.
OSRF continues development of Gazebo with support from a diverse and active community. Stay tuned for more exciting developments related to robot simulation.