wiki:Carologistics/Gazsim-Setup-Without-Fawkes
Last modified 5 years ago Last modified on 06/25/14 15:38:56

Gazebo Simulation Setup for ROS or other robot software frameworks

If you have some problems, please contact me at zwilling@ kbsg.rwth-aachen.de.

Prerequisites

Install Gazebo

How to install, compile and start Gazebo is described in the Gazebo Wiki.

For installing Gazebo in Fedora it is also possible to get an rpm from here. Start Gazebo to check if it works.

Refbox and Models

Setting up the LLSF refbox for the simulation, getting the Gazebo models of the LLSF and setting environmental variables is described here.

Plugins

Currently, the Gazebo-plugins are included in the fawkes and fawkes-robotino repository. We are working on seperating these from Fawkes. To run the simulation, compiling the folders src/plugins/gazebo/gazebo-plugins and src/plugins/gazebo/msgs in fawkes and fawkes-robotino and src/libs/llsf/msgs in fawkes-robotino is necessary. To run the simulation, it is also necessary to run fawkes with the refbox communicarion plugin.

./fawkes -p gazsim-llsfrbcomm

Connect to the simulation

The connection to the simulation is realized with the Gazebo Trasport API. It is possible to send and receive messages on different topics. The messages sent by the simulation contain sensor data and/or perception information. The simulation receives messages with commands such as motor commands and applies them in the simulation world. By looking into the plugins or running gztopic list when the simulation is running the used topics are shown.
Gazebo provides a lot of tutorials and code examples (e.g. here and here). Extra tutorials on how to connect Gazebo to ROS can be found here.

If you want to see how we connected to the Simulation, you can have a look in the src/plugins/gazebo/gazsim-* folders in the fawkes-robotino and fawkes repository.

Extending the simulation

It is possible to extend and modify the simulation (e.g. add sensors used on your robot). It is only necessary to modify the model files in the gazebo-models repository and to write a new or extend the existing Gazebo plugin. Again Gazebo already provides many useful tutorials.