Gazebo Tutorial

Revision as of 22:20, 30 November 2017 by Imcmahon (talk | contribs) (Baxter Simulator Installation)
Jump to: navigation , search

This tutorial describes how to use Sawyer with Gazebo the standard Physics Simulator for ROS.

Note: This page describes an upcoming feature in Intera 5.2. Gazebo Simulation for Sawyer is not yet released.

Gazebo Logo

Please visit the Gazebo Tutorials homepage for more information


  • Make sure you have followed the Workstation Setup tutorial before beginning this section
  • Ensure the following software packages are installed:

$ sudo apt-get install gazebo7 ros-kinetic-qt-build ros-kinetic-gazebo-ros-control ros-kinetic-gazebo-ros-pkgs ros-kinetic-ros-control ros-kinetic-control-toolbox ros-kinetic-realtime-tools ros-kinetic-ros-controllers ros-kinetic-xacro python-wstool ros-kinetic-tf-conversions ros-kinetic-kdl-parser

Baxter Simulator Installation

  • From your catkin workspace where the SDK resides, use wstool to install and update:

Install baxter_simulator

$ cd ~/ros_ws/src
$ wstool init .
$ wstool merge
$ wstool update

IMPORTANT: Make sure all simulator repositories update to their proper branch.

Build Source

$ source /opt/ros/kinetic/setup.bash
$ cd ~/ros_ws
$ catkin_make
  • Use - it has a special hook for sim:
$ cp src/baxter/ .
  • Edit the your_ip value in

Install baxter_simulator

$ sudo apt-get install ros-indigo-baxter-simulator
  • Use - it has a special hook for sim:
$ cd ~/ros_ws
$ wget
  • Edit the your_ip value in


  • Run the baxter shell script with sim specified:
$ ./ sim
  • Start simulation with controllers:
$ roslaunch baxter_gazebo baxter_world.launch

You should wait for the following three lines before the simulator is truly running:

[ INFO] [1400513321.531488283, 34.216000000]: Simulator is loaded and started successfully
[ INFO] [1400513321.535040726, 34.219000000]: Robot is disabled
[ INFO] [1400513321.535125386, 34.220000000]: Gravity compensation was turned off

By default the robot would be in disabled state. To enable, run the enable_robot script from the baxter_tools package. To start and switch the controllers, use the JointCommand topic as documented in the Baxter SDK.

  • Optional: Test/tune the velocity controllers or position controllers using a RQT dashboard GUI. Make sure you are in the right joint command mode when using these:
$ roslaunch baxter_sim_hardware baxter_sdk_position_rqt.launch


$ roslaunch baxter_sim_hardware baxter_sdk_velocity_rqt.launch

Smoke Test

Check if the simulator was installed and launched successfully by typing the following commands:

$ rosnode list

This should list the nodes as here.

$ rostopic list

This should list the topics as here.

$ rostopic echo /robot/state

By default, the following messages should be displayed at 100 HZ.

enabled: False
stopped: False
error: False
estop_button: 0
estop_source: 0

Run SDK Examples

  • Start Wobbler example:
$ ./ sim
$ rosrun baxter_examples
  • Start keyboard joint position example:
$ ./ sim
$ rosrun baxter_examples

For additional information on the interfaces that are implemented with this release, visit the Simulator API page.