Skip to content
This repository has been archived by the owner on Aug 7, 2018. It is now read-only.

Baxter and Gazebo Simulation Installation

dtdannen edited this page Jun 5, 2017 · 2 revisions

REQUIREMENTS

  1. UBUNTU 14.04 LTS
  2. PYTHON 2.7

INSTALLATION INSTRUCTIONS

  1. WORKSTATION SETUP Follow steps from 1 to 4 from the reference link: Workstation Setup (ROS Indigo version)

  2. SIMULATOR SETUP Follow steps to install GAZEBO from the reference link : Simulator Installation (ROS Indigo version)

  3. MIDCA Follow instructions from the reference link to install MIDCA : MIDCA

  4. DEPENDENCIES A. Pocket Sphinx

    $ pip install --upgrade pip setuptools wheel

    $ pip install --upgrade pocketsphinx

B. Robot State Publisher

$ sudo apt-get install ros-indigo-robot-state-publisher

RUNNING EXAMPLE SCRIPTS

This is the demo on the gazebo simulator working with the simulated baxter robot on the blocksworld domain. We use three blocks in this domain and perform operations like stack, unstack, get and put.

  1. Launch the Baxter Robot in the Gazebo Simulator Open a new terminal window ( cntrl + T)

    $ cd ~/ros_ws (Go to the workspace directory)

    $ ./baxter.sh sim

    $ roslaunch baxter_gazebo baxter_world.launch

Baxter Robot in Gazebo, after executing the above commands Figure 1: Baxter in Gazebo, after executing the above commands

  1. Get the models into the simulator (Table and Blocks): Open a new terminal (cntrl + T) Direct to the MIDCA Folder

    $ ./baxter.sh sim

    $ cd examples/_gazebo_baxter

    $ python model.py

Baxter Robot along with table and blocks in gazebo, after executing above commands

Figure 2. Baxter Robot along with table and blocks in gazebo, after executing the above commands

  1. Position Right Hand Camera To view Blocks: Open a new terminal (cntrl + T) Direct to the MIDCA Folder

    $ ./baxter.sh sim

    $ cd examples/_gazebo_baxter

    $ python tuck_arms.py -u

    $ python position_right_camera.py

    $ python publish_right_camera_to_xdisplay.py

Figure 3. Baxter Robot with left arm in tucked position and right arm in a position to view blocks, after executing the above commands

  1. Script to Detect Objects and send coordinates to MIDCA Detects the blocks and puts the coordinates into MIDCA's Incoming Message Handler. Open a new terminal (cntrl + T) Direct to the MIDCA Folder

    $ ./baxter.sh sim

    $ cd examples/_gazebo_baxter

    $ python OD.py

  2. Script to Receive command from MIDCA and execute on MIDCA During the Act Phase MIDCA initiates the command into outgoing message handler, that is received through the script grabbing.py and implements the actions to be performed physically. Open a new terminal (cntrl + T) Direct to the MIDCA Folder

    $ ./baxter.sh sim

    $ cd examples/_gazebo_baxter

    $ python grabbing.py

  3. Run MIDCA Receives the instructions through voice commands and executes the phases. MIDCA runs in a continous loop until terminated. Open a new terminal (cntrl + T) Direct to the MIDCA Folder

    $ ./baxter.sh sim

    $ cd examples

    $ python baxter_run_OD_sim.py

  4. Run Voice Commands Use headphones to speak out voice commands, after running the scripts below Format : stack the [block name] on the [block name] put the [block name] on table unstack the [block name] get the [block name] Example: stack the “blue block” on the “red block” Open a new terminal (cntrl + T) Direct to the MIDCA Folder

    $ ./baxter.sh sim

    $ cd examples/_gazebo_baxter

    $ python voice_cmds_sr.py