Differences

This shows you the differences between two versions of the page.

Link to this comparison view

projects:hands_on_examples_rosservices_examples [2012/06/22 13:15] – created winklerjprojects:hands_on_examples_rosservices_examples [2012/06/22 14:50] (current) winklerj
Line 1: Line 1:
 +====== Simple ROS service examples ======
  
 +An example project (ROS node) that serves a virtual "song title database" via ROS can be checked out here:
 +<code>git clone https://github.com/fairlight1337/ros_service_examples.git</code>
 +This is just an example for reference purposes.
 +
 +===== Running the server =====
 +Running the server using <code>rosrun rosdemo_mp3 mp3_inventory</code> starts the title database server (C++ node, see src/mp3_inventory.cpp). This server serves album lists and according title lists (if requested) of everything stored in `pwd`/albums. So be sure to do <code>roscd rosdemo_mp3</code> before running the mp3_inventory node. The service type for communication is Mp3InventoryService.
 +
 +===== Running the client(s) =====
 +The clients request a list of albums from the server. For each entry in this list, they request a list of titles.
 +
 +For the C++ client, do <code>rosrun rosdemo_mp3 mp3_controller</code>.
 +For the python client, do <code>rosrun rosdemp_mp3 mp3_controller_python.py</code>.
 +For the LISP client, from within emacs, do <code>(ros-load:load-system "rosdemo_mp3" :mp3-controller)</code> and then execute <code>(mp3-inventory-interaction)</code>
 
Recent changes RSS feed Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki