[Documentation] [TitleIndex] [WordIndex

RCommander: a Photoshop for Robots


RCommander is a stack for graphical editing of SMACH state machines. The hope is that RCommander-style expert interfaces will allow end-users (non-programmers) to comfortably program new robot behaviors. RCommander’s infrastructure allow construction of graphical user interfaces that allow editing of parameters in SMACH states, sequence and compose those states as well as save and load them from disk. The state machines constructed are compatible with all code that takes SMACH state machines as input.

This stack contains the core code to create RCommander interfaces for different robots. Currently the main focus is on the PR2 robot but there is emerging support for the Turtlebot platform, and hopefully there will be others. The tutorials and documentation here will help you to adapt RCommander to new platforms. For information on how to use RCommander on the PR2 specifically go here.

Quick Start

To install the standalone version of RCommander (go here for instructions to install RCommander for the PR2) first download this rosinstall file: rcommander_core.rosinstall.

Next, in a directory of your choice call rosinstall, setup your environment, call rosmake, then launch the default vanilla RCommander GUI:

rosinstall .  rcommander_core.rosinstall
source setup.bash
rosdep install rcommander_core
rosmake rcommander_core
roslaunch rcommander_plain rcommander_plain.launch 

Additionally, you will want to keep RCommander into your ROS_PACKAGE_PATH so execute:

echo "source `pwd`/setup.bash" >> ~/.bashrc

That's all you'll need, now proceed to the tutorials!

Programming Tutorials

  1. Adapting RCommander to Your Robot

    Guides you to creating an instance of RCommander for your robot.

  2. Creating New States Editor in RCommander

    Guides you through creating new editors for your SMACH states in RCommander.

  3. Sharing Resources Between Different State Editors

    Shows you how to share system resources between different state editors through run_rcommander's robot parameter.

  4. Simplifying Integration of ROS Actions with SimpleStateBase

    Demonstrates a simpler method to create state editor for actions.

  5. Creating Editors for SMACH States That Has Inputs and Outputs

    Illustrates how to create editors for SMACH states that has defined inputs and outputs.

  6. Using a Saved State Machine in Your Code

    Guides you through the process of loading a state machine saved to disk in your code.

  7. Enabling the Default Frames Package

    Shows how to enable the default frames package containing the tools Freeze Frame, and Create Origin.

Users Guide

  1. Basic Interface Guide

    Gives an overview of the RCommander interface.

  2. States Library

    Demonstrates how to use the states library to save individual states for reuse in future behaviors.

Included Tools

Report a Bug

2024-07-20 13:25