ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Multi Robot systems framework in ROS

asked 2012-08-16 06:51:43 -0500

Ammar gravatar image

updated 2014-01-28 17:13:21 -0500

ngrennan gravatar image

Hi Community, We have been working at a multi robot coordination project here at Carnegie Mellon. The framework is completely ROS based right from the robot controller to communication, front end and task allocation. While starting this project I was unable to find ROS packages catering to coordination among multiple robots. An important note here is that each robot runs its own master since we assume a failure prone network. Anyways we thought we would release some of the software we wrote that could help someone else wanting to run multi-robot systems as well. Since we are in the process of packaging and cleaning (its a university project so we really need to clean it!) our code I would like to get some suggestions on what you would desire in a Multi-Robot package. Anything from vague ideas to specific implementations is welcome.

Just a brief and high level description: There are 4 packages: 1) Communication package - currently using UDP however we may switch to ZeroMQ. Any input on protocol is appreciated. This package will handle transmitting topics of interest to other robots on a strictly request-respond basis. This scheme worked well for us in the work we did. This is similar to MultiMaster pkg except the request-respond bit. Currently the comms can transmit Map, Pose, tf, Task (which is a goto Pose), Laser Scans, Camera Image. These topics were relevant to our work so we would appreciate inputs on other topics that might be useful communicating to other robots. One can either query another robot for any of these or request to transmit its own information. Additionally it can serve as a proxy for another robot.

2) Robot Specific Pkg - This provides high level implementation of basic Robot capabilities. Planning, Occupancy Mapping, Task Execution (move base Action client), & Costing.

3) Front End: Visualizes the map, pose etc from multiple robots. Additionally it can manually control, assign tasks to individual robots or to the swarm.

4) Task Allocation: We used a proprietary market based allocation system to handle task management. Unfortunately we cannot publish that. However if you have suggestions on task management systems we might be able to port some of it in this package.

Sorry for the long post. We would really appreciate suggestions, concerns and comments in this multi-robot framework.

Thanks Ammar

edit retag flag offensive close merge delete


I think this might actually be something you should post to ros-users:

jbohren gravatar image jbohren  ( 2012-08-16 07:13:35 -0500 )edit

I dont understand how you say everything is ROS based but then say you may switch to ZeroMQ (even though there is multimaster). Can you give more info on your switch to zeromq? Thanks

PerkinsJames gravatar image PerkinsJames  ( 2012-08-16 07:25:00 -0500 )edit

Well ZeroMQ and UDP are the communication protocol. These are external to ROS since the communication takes places between different roscores running

Ammar gravatar image Ammar  ( 2012-08-16 11:45:38 -0500 )edit

Hi! I would love to know what happened to this project? Was it released, still under development? Thanks!

aamir gravatar image aamir  ( 2015-03-23 06:32:12 -0500 )edit

Hi guys, I'm currently implementing zeroMQ to distribute my applications (working nicely so far), and I'm really interested in using it with ROS, I'll developed a few little projects and share them, but, honestly, for all of us would be great to know further about what happened with this project.

pablocesar gravatar image pablocesar  ( 2015-12-24 00:32:13 -0500 )edit

Have you released this package in ROS community? I'm looking for ROS-based MRTA frameworks. Thanks.

adrianohrl gravatar image adrianohrl  ( 2016-10-08 16:10:22 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2012-08-16 07:38:42 -0500

joq gravatar image

ROS developers working on similar issues have formed a multi-master special interest group. It turns out to be a surprisingly hard problem.

They will be very interested in the work you are doing.

edit flag offensive delete link more


Yes the Multimaster group is definitely trying to handle the same issue. However we based our system entirely on coordination between robots. Seems like Multimaster is attempting to access generic topics over a network between different ros masters.

Ammar gravatar image Ammar  ( 2012-08-16 12:08:16 -0500 )edit

Question Tools



Asked: 2012-08-16 06:51:43 -0500

Seen: 6,057 times

Last updated: Aug 16 '12