Difference between pages "Workstation Setup" and "Gazebo Tutorial"

(Difference between pages)
Jump to: navigation , search
(Install Intera Robot SDK)
 
(Sawyer Simulator Installation)
 
Line 1: Line 1:
 
+
__NOTOC__
 
<div class="title-block">
 
<div class="title-block">
<span style="font-size:120%;">'''This tutorial describes the setup of a development workstation'''</span>
 
</div>
 
  
{{TOClimit|limit=2}}
+
<span style="font-size:120%;">'''This tutorial describes how to use Sawyer with Gazebo the standard Physics Simulator for ROS.'''</span>
  
<div class="content-block">
+
</div>
  
== Required Hardware ==
 
* 1 Sawyer Robot
 
* 1 Development Workstation (Meeting [[System_requirements | Minimum System Requirements]])
 
</div>
 
 
<div class="content-block">
 
<div class="content-block">
  
== Install Ubuntu ==
+
[[File:gazebo_logo.png|Gazebo Logo|500px]]<br />
 
 
 
 
<tabs>
 
<tab name="Ubuntu 16.04 (Recommended)">
 
Follow the standard Ubuntu Installation Instructions for '''16.04''' (Desktop):
 
* Download the Installer Image file, by picking the "[http://releases.ubuntu.com/xenial/ Desktop CD]" image appropriate for your machine:
 
** [http://releases.ubuntu.com/xenial/ubuntu-16.04.3-desktop-amd64.iso 64-bit (AMD64) .iso image (recommended)] / [http://releases.ubuntu.com/xenial/ubuntu-16.04.3-desktop-i386.iso 32-bit (Intel x86) .iso image]
 
 
 
* Create an Ubuntu LiveUSB installer by burning the installer image onto a USB stick.
 
** [http://www.ubuntu.com/download/desktop/create-a-usb-stick-on-windows Windows] / [http://www.ubuntu.com/download/desktop/create-a-usb-stick-on-mac-osx Mac OS X] / [http://www.ubuntu.com/download/desktop/create-a-usb-stick-on-ubuntu Ubuntu]
 
* Follow the [https://help.ubuntu.com/community/GraphicalInstall Ubuntu Installation Instructions]
 
</tab>
 
 
 
<tab name="Ubuntu 14.04">
 
Follow the standard Ubuntu Installation Instructions for '''14.04''' (Desktop):
 
* Download the Installer Image file, by picking the "[http://releases.ubuntu.com/trusty/ Desktop CD]" image appropriate for your machine:
 
** [http://releases.ubuntu.com/trusty/ubuntu-14.04.5-desktop-amd64.iso 64-bit (AMD64) .iso image (recommended)] / [http://releases.ubuntu.com/trusty/ubuntu-14.04.5-desktop-i386.iso 32-bit (Intel x86) .iso image]
 
  
* Create an Ubuntu LiveUSB installer by burning the installer image onto a USB stick.
+
'''[http://gazebosim.org/tutorials Please visit the Gazebo Tutorials homepage for more information about the Physics simulator]'''
** [http://www.ubuntu.com/download/desktop/create-a-usb-stick-on-windows Windows] / [http://www.ubuntu.com/download/desktop/create-a-usb-stick-on-mac-osx Mac OS X] / [http://www.ubuntu.com/download/desktop/create-a-usb-stick-on-ubuntu Ubuntu]
 
* Follow the [https://help.ubuntu.com/community/GraphicalInstall Ubuntu Installation Instructions]
 
</tab>
 
</tabs>
 
  
 
</div>
 
</div>
  
<div class="content-block">
+
{{TOClimit|limit=2}}
  
== Open Terminal App ==
+
== Installation/Prerequisites ==
Search your computer for the Terminal package, and open it:
+
*Make sure you have followed the [[Workstation Setup]] tutorial before beginning this section. Sawyer Gazebo is '''only''' available for '''Ubuntu 16.04, ROS Kinetic, and Gazebo 7'''.
 +
*Ensure the following software packages are installed:
  
[[File:terminal.png|500px]]
 
  
The rest of the workstation setup tutorial will take place in by typing commands in this terminal prompt.
 
</div>
 
 
<div class="content-block">
 
== Install ROS ==
 
 
<tabs>
 
<tabs>
<tab name="ROS Kinetic for Ubuntu 16.04 (Recommended)">
+
<tab name="ROS Kinetic">
=== Configure Ubuntu repositories ===
 
 
 
Configure your Ubuntu repositories to allow "restricted," "universe," and "multiverse." You can follow [https://help.ubuntu.com/community/Repositories/Ubuntu the Ubuntu guide] for instructions on doing this.<br />
 
 
 
''Likely, they are already configured properly, and you only need to confirm the configuration.''
 
 
 
=== Setup your sources.list ===
 
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
$ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu xenial main" > /etc/apt/sources.list.d/ros-latest.list'
+
$ 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 ros-kinetic-sns-ik-lib
</syntaxhighlight>
 
 
 
=== Setup your keys ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
 
</syntaxhighlight>
 
 
 
=== Update to Latest Software Lists ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ sudo apt-get update
 
</syntaxhighlight>
 
 
 
=== Install ROS Kinetic Desktop Full ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ sudo apt-get install ros-kinetic-desktop-full
 
</syntaxhighlight>
 
 
 
=== Initialize rosdep ===
 
 
 
rosdep enables you to easily install system dependencies for source you want to compile and is required to run some core components in ROS.
 
<syntaxhighlight lang="bash" enclose="div">
 
$ sudo rosdep init
 
$ rosdep update
 
</syntaxhighlight>
 
 
 
=== Install rosinstall ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ sudo apt-get install python-rosinstall
 
</syntaxhighlight>
 
</tab>
 
 
 
<tab name="ROS Indigo for Ubuntu 14.04">
 
 
 
=== Configure Ubuntu repositories ===
 
 
 
Configure your Ubuntu repositories to allow "restricted," "universe," and "multiverse." You can follow [https://help.ubuntu.com/community/Repositories/Ubuntu the Ubuntu guide] for instructions on doing this.<br />
 
 
 
''Likely, they are already configured properly, and you only need to confirm the configuration.''
 
 
 
=== Setup your sources.list ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu trusty main" > /etc/apt/sources.list.d/ros-latest.list'
 
</syntaxhighlight>
 
 
 
=== Setup your keys ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
 
</syntaxhighlight>
 
 
 
=== Update to Latest Software Lists ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ sudo apt-get update
 
</syntaxhighlight>
 
 
 
=== Install ROS Indigo Desktop Full ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ sudo apt-get install ros-indigo-desktop-full
 
</syntaxhighlight>
 
 
 
'''NOTE:''' You may get a prompt about 'hddtemp' during the installation. You can safely answer 'No'.
 
 
 
=== Initialize rosdep ===
 
 
 
rosdep enables you to easily install system dependencies for source you want to compile and is required to run some core components in ROS.
 
<syntaxhighlight lang="bash" enclose="div">
 
$ sudo rosdep init
 
$ rosdep update
 
</syntaxhighlight>
 
 
 
=== Install rosinstall ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ sudo apt-get install python-rosinstall
 
 
</syntaxhighlight>
 
</syntaxhighlight>
 
</tab>
 
</tab>
 
</tabs>
 
</tabs>
</div>
 
 
<div class="content-block">
 
  
== Create Development Workspace ==
+
== Sawyer Simulator Installation ==
 
<tabs>
 
<tabs>
<tab name="ROS Kinetic for Ubuntu 16.04 (Recommended)">
+
<tab name="ROS Kinetic">
=== Create ROS Workspace ===
+
*From your catkin workspace where the SDK resides, use wstool to install and update:
 
+
==== Install sawyer_simulator ====
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
 
$ mkdir -p ~/ros_ws/src
 
$ mkdir -p ~/ros_ws/src
# ros_ws (short for ROS Workspace)
+
$ cd ~/ros_ws/src
</syntaxhighlight>
+
$ git clone https://github.com/RethinkRobotics/sawyer_simulator.git
 
 
=== Source ROS and Build ===
 
 
 
'''ROS Kinetic'''
 
 
 
=== Source ROS Setup ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ source /opt/ros/kinetic/setup.bash
 
</syntaxhighlight>
 
 
 
=== Build ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ cd ~/ros_ws
 
$ catkin_make
 
</syntaxhighlight>
 
</tab>
 
 
 
<tab name="ROS Indigo for Ubuntu 14.04">
 
=== Create ROS Workspace ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ mkdir -p ~/ros_ws/src
 
# ros_ws (short for ROS Workspace)
 
</syntaxhighlight>
 
 
 
=== Source ROS and Build ===
 
 
 
'''ROS Indigo (Supported)'''
 
 
 
=== Source ROS Setup ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ source /opt/ros/indigo/setup.bash
 
</syntaxhighlight>
 
 
 
=== Build ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ cd ~/ros_ws
 
$ catkin_make
 
</syntaxhighlight>
 
</tab>
 
</tabs>
 
 
 
</div>
 
 
 
<div class="content-block">
 
 
 
== Install Intera SDK Dependencies ==
 
 
 
<tabs>
 
<tab name="ROS Kinetic for Ubuntu 16.04 (Recommended)">
 
=== Install SDK Dependencies ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ sudo apt-get update
 
$ sudo apt-get install git-core python-argparse python-wstool python-vcstools python-rosdep ros-kinetic-control-msgs ros-kinetic-joystick-drivers ros-kinetic-xacro ros-kinetic-tf2-ros ros-kinetic-rviz ros-kinetic-cv-bridge ros-kinetic-actionlib ros-kinetic-actionlib-msgs ros-kinetic-dynamic-reconfigure ros-kinetic-trajectory-msgs ros-kinetic-rospy-message-converter
 
</syntaxhighlight>
 
</tab>
 
 
 
<tab name="ROS Indigo for Ubuntu 14.04">
 
=== Install SDK Dependencies ===
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ sudo apt-get update
 
$ sudo apt-get install git-core python-argparse python-wstool python-vcstools python-rosdep ros-indigo-control-msgs ros-indigo-joystick-drivers ros-indigo-xacro ros-indigo-tf2-ros ros-indigo-rviz ros-indigo-cv-bridge ros-indigo-actionlib ros-indigo-actionlib-msgs ros-indigo-dynamic-reconfigure ros-indigo-trajectory-msgs ros-indigo-rospy-message-converter
 
</syntaxhighlight>
 
</tab>
 
</tabs>
 
 
 
</div>
 
 
 
<div class="content-block">
 
 
 
== Install Intera Robot SDK ==
 
 
 
<tabs>
 
<tab name="Intera 5.2 ROS Kinetic for Ubuntu 16.04 (Recommended)">
 
=== Download the SDK on your Workstation ===
 
 
 
Checkout all required Github Repositories into your ROS workspace source directory:
 
Use git clone or download the packages directly from Github:
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
 
$ cd ~/ros_ws/src
 
$ cd ~/ros_ws/src
 
$ wstool init .
 
$ wstool init .
$ git clone https://github.com/RethinkRobotics/sawyer_robot.git
+
$ wstool merge sawyer_simulator/sawyer_simulator.rosinstall
$ wstool merge sawyer_robot/sawyer_robot.rosinstall
 
 
$ wstool update
 
$ wstool update
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
'''IMPORTANT:''' Make sure all simulator repositories update to their proper branch.
=== Source ROS Setup ===
+
==== Build Source ====
To use ROS Kinetic to use RSDK, use command below:
 
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
# ROS Kinetic
 
 
$ source /opt/ros/kinetic/setup.bash
 
$ source /opt/ros/kinetic/setup.bash
</syntaxhighlight>
 
 
=== Build ===
 
 
<syntaxhighlight lang="bash" enclose="div">
 
 
$ cd ~/ros_ws
 
$ cd ~/ros_ws
 
$ catkin_make
 
$ catkin_make
 
</syntaxhighlight>
 
</syntaxhighlight>
 
</tab>
 
</tab>
<tab name="Intera 5.2 ROS Indigo for Ubuntu 14.04">
 
=== Download the SDK on your Workstation ===
 
 
Checkout all required Github Repositories into your ROS workspace source directory:
 
Use git clone or download the packages directly from Github:
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ cd ~/ros_ws/src
 
$ wstool init .
 
$ git clone https://github.com/RethinkRobotics/sawyer_robot.git
 
$ wstool merge sawyer_robot/sawyer_robot.rosinstall
 
$ wstool update
 
</syntaxhighlight>
 
 
=== Source ROS Setup ===
 
To use ROS Kinetic to use RSDK, use command below:
 
 
<syntaxhighlight lang="bash" enclose="div">
 
# ROS Kinetic
 
$ source /opt/ros/indigo/setup.bash
 
</syntaxhighlight>
 
 
=== Build ===
 
 
<syntaxhighlight lang="bash" enclose="div">
 
$ cd ~/ros_ws
 
$ catkin_make
 
</syntaxhighlight>
 
</tab>
 
 
 
</tabs>
 
</tabs>
 
+
=== Simulation ===
</div>
+
*The intera.sh shell has a special hook for Simulation. Run the Intera shell script with sim specified:
 
 
<div class="content-block">
 
 
 
== Configure Robot Communication/ROS Workspace ==
 
This step describes the configuration and setup of your [http://wiki.ros.org/ROS/EnvironmentVariables ROS environment]. This section assumes you have linked your workstation to the robot via Ethernet.<br/>
 
 
 
'''Important Note:''' Connect to the robot via the ethernet port on the outside of the Controller.  Connecting to the ethernet port inside the Controller door will not work (this is a diagnostic port that is only accessible by Rethink Employees).
 
 
 
[[File:Ethernet_Port.png]]
 
 
 
 
 
See [[Networking | Network Setup]] for recommended network configurations.
 
 
 
=== intera.sh ROS Environment Setup ===
 
 
 
The intera.sh script is a convenience script which allows for intuitive modification of the core ROS environment components. This user edited script will allow for the quickest and easiest ROS setup.
 
 
 
Further information and a detailed description is available on the [[SDK_Shell]] page.
 
 
 
=== Copy the intera.sh script ===
 
 
 
The intera.sh file already exists in intera_sdk repo, copy the file into your ros workspace.
 
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
$ cp ~/ros_ws/src/intera_sdk/intera.sh ~/ros_ws
+
$ ./intera.sh sim
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
*Start simulation with controllers:
=== Customize the intera.sh script ===
 
 
 
Please edit the intera.sh shell script making the necessary modifications to describe your development PC.
 
 
 
Using your favorite editor ([https://wiki.gnome.org/Apps/Gedit gedit] used for example)
 
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
$ cd ~/ros_ws
+
$ roslaunch sawyer_gazebo sawyer_world.launch
$ gedit intera.sh
 
 
</syntaxhighlight>
 
</syntaxhighlight>
  
=== Edit the 'robot_hostname' field ===
+
== Smoke Test ==
Your robot's hostname is defaulted as the '''Controller's Serial Number''' and NOT the Robot's Serial Number. The serial number can be located on the back of the robot's controller box. Unless you intend to modify the default [[Networking]] configuration, leave the ".local" suffix on the end of the Controller's Serial Number in the '''robot_hostname.local''' field.<br/>
+
Check if the simulator was installed and launched successfully by typing the following commands:
 
 
=== Edit the 'your_ip' field ===
 
 
 
Modify where 'your_ip' is either your computer's hostname or the IP address of your PC. We advise against using WiFi connections between your robot and workstation.
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
your_ip="192.168.XXX.XXX"
 
</syntaxhighlight>
 
 
 
Useful command for identifying your IP address:
 
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
$ ifconfig
+
$ rosnode list
# Result will be contained in the 'inet addr' field (Ubuntu).
 
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
This should list the nodes as [[Simulator_Architecture#Ros Nodes|here]].
<div class="toccolours mw-collapsible mw-collapsed">
 
Alternatively, you may choose to use the hostname of your development PC rather than the PC's IP address.  For instructions, press Expand on the right.
 
<div class="mw-collapsible-content">
 
You may edit the 'your_hostname' field (only if not using 'your_ip'):
 
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
your_hostname="my_computer.local
+
$ rostopic list
</syntaxhighlight>
 
 
 
 
 
'''Important:''' This hostname must be resolvable to Sawyer. To test if your hostname is resolvable to Sawyer, please visit the development PC [[Hostname Validation]] page.
 
 
 
'''Important:''' Only set either ROS_IP '''*OR*''' ROS_HOSTNAME.
 
 
 
Setting of both ROS_IP and ROS_HOSTNAME will result in ROS_HOSTNAME taking priority, resulting in confusing environment setups. Comment out the unused method using the '#' as leading character.
 
 
 
</div>
 
</div>
 
 
 
=== Verify 'ros_version' field ===
 
 
 
Verify that the the 'ros_version' field matches the ROS version you are running:
 
 
 
This field will default to "indigo". To use another ROS version, update:
 
<tabs>
 
<tab name="ROS Kinetic for Ubuntu 16.04 (Recommended)">
 
<syntaxhighlight lang="bash" enclose="div">
 
ros_version="kinetic"
 
 
</syntaxhighlight>
 
</syntaxhighlight>
</tab>
+
This should list the topics as [[Simulator_Architecture#Ros Topics|here]].
<tab name="ROS Indigo for Ubuntu 14.04">
 
<syntaxhighlight lang="bash" enclose="div">
 
ros_version="indigo"
 
</syntaxhighlight>
 
</tab>
 
</tabs>
 
 
 
=== Save and Close intera.sh script ===
 
 
 
Please save and close the intera.sh script.
 
 
 
=== Initialize your SDK environment ===
 
 
 
From this point forward, your ROS environment setup should be as simple as sourcing the intera.sh script from the root of your Catkin workspace:
 
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
$ cd ~/ros_ws
+
$ rostopic echo /robot/state
$ ./intera.sh
 
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
By default, the following messages should be displayed at 100 HZ.
</div>
 
 
 
<div class="content-block">
 
 
 
== Verify Environment ==
 
 
 
A useful command for viewing and validating your ROS environment setup is:
 
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
$ env | grep ROS
+
enabled: False
 +
stopped: False
 +
error: False
 +
estop_button: 0
 +
estop_source: 0
 +
---
 
</syntaxhighlight>
 
</syntaxhighlight>
  
The important fields at this point: 
+
== Run SDK Examples ==
 
+
*Start Joint Torque Springs example:
'''ROS_MASTER_URI''' - This should now contain your robot's hostname. 
 
 
 
'''ROS_IP''' - This should contain your workstation's IP address.
 
 
 
or
 
 
 
'''ROS_HOSTNAME''' - If not using the workstation's IP address, the ROS_HOSTNAME field should contain your PC's hostname.  Otherwise, this field should not be available.
 
 
 
Try to get rostopic list from robot by typing following command:
 
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
$ rostopic list
+
$ ./intera.sh sim
 +
$ roslaunch sawyer_gazebo sawyer_world.launch
 +
*in a new terminal*
 +
$ ./intera.sh sim
 +
$ rosrun intera_examples joint_torque_springs.py
 
</syntaxhighlight>
 
</syntaxhighlight>
  
You can see the rostopic list from the command line output similar as following:
+
*Or, Start Simulated Pick and Place example:
 
 
[[File:Rostopic_list.png|400px]]
 
 
 
</div>
 
 
 
 
 
<div class="content-block">
 
 
 
== Setup Rviz ==
 
 
 
We can also setup Rviz to view robot model, start Rviz from a properly initialized environment using:
 
 
 
 
<syntaxhighlight lang="bash" enclose="div">
 
<syntaxhighlight lang="bash" enclose="div">
$ rosrun rviz rviz
+
$ ./intera.sh sim
 +
$ roslaunch sawyer_sim_examples sawyer_pick_and_place_demo.launch
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Set the Fixed Frame as <code>/base</code>
+
For additional information on the interfaces that are implemented with this release, visit the [[API_Reference#tab=Simulator_API|Simulator API]] page.
  
Info: The ‘Fixed Frame’ provides a static, base reference for your visualization. Any sensor data that comes in to rviz will be transformed into that reference frame so it can be properly displayed in the virtual world.
+
==Troubleshooting==
 +
*'''Please refer to the troubleshooting page Gazebo Troubleshooting '''
  
[[File:Rviz_Fixed_Frame.png|600px]]
+
----
 
 
Add robot model into Rviz by clicking add button, then select robot model in the list, press OK to add.
 
 
 
 
 
[[File:Rviz_Add_Model.png|300px]]
 
 
 
 
 
Now you can visualize your robot on Rivz! Next : [[Hello Robot]]
 
 
 
 
 
</div>
 

Revision as of 16:29, 14 March 2018

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

Installation/Prerequisites

  • Make sure you have followed the Workstation Setup tutorial before beginning this section. Sawyer Gazebo is only available for Ubuntu 16.04, ROS Kinetic, and Gazebo 7.
  • 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 ros-kinetic-sns-ik-lib

Sawyer Simulator Installation

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

Install sawyer_simulator

$ mkdir -p ~/ros_ws/src
$ cd ~/ros_ws/src
$ git clone https://github.com/RethinkRobotics/sawyer_simulator.git
$ cd ~/ros_ws/src
$ wstool init .
$ wstool merge sawyer_simulator/sawyer_simulator.rosinstall
$ 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

Simulation

  • The intera.sh shell has a special hook for Simulation. Run the Intera shell script with sim specified:
$ ./intera.sh sim
  • Start simulation with controllers:
$ roslaunch sawyer_gazebo sawyer_world.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 Joint Torque Springs example:
$ ./intera.sh sim
$ roslaunch sawyer_gazebo sawyer_world.launch
*in a new terminal*
$ ./intera.sh sim
$ rosrun intera_examples joint_torque_springs.py
  • Or, Start Simulated Pick and Place example:
$ ./intera.sh sim
$ roslaunch sawyer_sim_examples sawyer_pick_and_place_demo.launch

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

Troubleshooting

  • Please refer to the troubleshooting page Gazebo Troubleshooting