(!) Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags.

Pairing

Description: Launching rapps in tandem with rocon interactions.

Keywords: pairing, robot app manager,

Tutorial Level: INTERMEDIATE

Next Tutorial: Run Interactions with QT Remocon

Overview

Pairing is a means of getting a user's interaction (qt/android/web) running in tandem with a specific rapp on the robot. Some examples:

Robot App (Rapp)

User Application (Rocon Interaction)

Gmapping

Android Make A Map

Amcl

Android Navigation

Interactive Marker Navigation

RViz

Software

The mechanisms for doing this are via:

Prerequisite

To follow the tutorial, please install the rocon_app_manager_tutorials.

> sudo apt-get install ros-indigo-rocon-app-manager-tutorials

Enable Interactions in Rapp Manager

Rocon App Manager provides arguments to enable/disable interactions and to load interactions list. This is example roslaunch file in rocon_app_manager_tutorials. You should set interactions as true and add your .interactions file in interactions_list.

   1   <include file="$(find rocon_app_manager)/launch/standalone.launch">
   2     <arg name="interactions"           value="true"/>
   3     <arg name="interactions_list"      value="[rocon_app_manager_tutorials/pairing]"/>
   4     <arg name="rapp_package_whitelist" value="[rocon_apps, turtle_concert]"/>
   5     <arg name="robot_name"             value="Cybernetic Pirate"/>
   6     <arg name="robot_type"             value="pc"/>
   7     <arg name="robot_icon"             value="rocon_icons/cybernetic_pirate.png"/>
   8     <arg name="robot_description"      value="A tutorial environment for demonstrating pairing interactions." />
   9     <arg name="zeroconf"               value="true"/>
  10   </include>
  11   <node pkg="turtlesim" type="turtlesim_node" name="turtlesim" required="true"/>
  12 </launch>

Execute Example Rocon App Manager

 > roslaunch rocon_app_manager_tutorials pairing.launch --screen

Verify loaded Interactions

As interactions are loaded in interaction manager, you can check available interactions with the following command.

 > rocon_interactions

Then you should see like this.

alt text

Example Interactions

rocon_app_manager_tutorials/pairing.interactions include example

Qt Listener

This pairing will run a simple qt listener (the interaction) and a talker (the rapp). Termination of both will occur as soon as the qt listener is closed.

Android Listener

This is android version of listener which starts a talker in the robot and listener in android.

Chirp

This is an example of a dummy pairing, i.e. a trigger used to conveniently launch rapps on the robot. There is no (qt) application on the interaction side, just a monitoring thread. On the robot side chirp.rapp will start and promptly make a moo'ing sound before naturally terminating itself. When it terminates, the monitoring thread started by the remocon too will shut down.

Remocons will typically highlight the active status of the rapp when a dummy interaction is triggered (usually by background colour).

QT Teleop

This pairing will run a qt teleop gui (the interaction) and a rocon_apps/video_teleop (the rapp). With the GUI joystick, you can control turtle in turtlesim.

Android Teleop

Android version of Teleop.

What's Next?

Wiki: rocon_app_manager/Tutorials/indigo/Pairing (last edited 2015-05-06 02:14:32 by jihoonl)