[ros-users] Multi-robot communication

Blaise Gassend blaise at willowgarage.com
Tue Jun 29 04:52:38 UTC 2010


Hi Goncalo,

I have done a bit of multi-robot stuff with the PR2. Here are a few
things I learned from the experience:

- Using a single master for all the robots is really bad. If the
wireless has trouble, even functions that are internal to the robot will
suffer because service calls touch the master.

- Avoid sharing high bandwidth many-to-many topics like /tf. If you do
want to share them, make use of relay nodes so that the data only gets
transmitted between robots once.

- While waiting for better multi-master support, you can try out the
foreign_relay package. 
https://code.ros.org/svn/wg-ros-pkg/branches/trunk_boxturtle/sandbox/foreign_relay/
The C++ version only works in one direction (I forget which) but should
allow you to rename the topic. The python version works in both
directions. Ask me if you need help.

- Using ROSUDP as a transport is probably a good idea. The relay node in
topic_tools in trunk has an unreliable option that should force UDP to
be used.
https://code.ros.org/svn/ros/stacks/ros/trunk/tools/topic_tools

- Combining foreign_relay and unreliable relay, you should be able to
get any topics you want going back and forth between robots.

- Listen to what other people have to say. I know that a few people have
played with multi-robot stuff. Since multi-master isn't here yet, there
are a bunch of more or less half-baked solutions out there. Find out
what they are, and pick the one you like best until something better
comes along.

Cheers,
Blaise

On Tue, 2010-06-29 at 00:02 +0100, Gonçalo Cabrita wrote:
> Hi everyone!
> 
> Here at the university we use groups of simple robots instead of a single, more complex robot, like the PR2. We have currently been taking the first steps into ROS. It became clear that we will need a ROS communication node so that our robots can speak to each other. So here is my question, does anyone have any experience with multiple-robot communication in ROS?
> 
> We are considering a communication node based on UDP sockets capable of exchanging ROS msgs.
> 
> Does anyone have any thoughts on this matter?
> 
> Gonçalo Cabrita
> ISR - University of Coimbra
> Portugal
> 
> 
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users





More information about the ros-users mailing list