|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.|
PairingDescription: Launching rapps in tandem with rocon interactions.
Keywords: pairing, robot app manager,
Tutorial Level: INTERMEDIATE
Next Tutorial: Run Interactions with QT Remocon
Robot App (Rapp)
User Application (Rocon Interaction)
Android Make A Map
Interactive Marker Navigation
The mechanisms for doing this are via:
remocons - user applications for listing, initiating and managing pairing.
rocon_interactions - handles the user interactions.
rocon_app_manager - handles the rapps.
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.
Then you should see like this.
rocon_app_manager_tutorials/pairing.interactions include example
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.
This is android version of listener which starts a talker in the robot and listener in android.
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).
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 version of Teleop.