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

Hi, I'm working on a multi-robot project. Robots need to talk to each other directly.

asked 2014-07-27 12:46:40 -0500

Armin gravatar image

updated 2014-07-27 16:28:06 -0500

Hi, I'm working on a multi-robot project, which robots need to talk to each other directly. Assume that robot1 wants to talk to robot3, so robot1 publishes its desire to talk. One way to solve is that robot3 subscribes to every other robots to find out which one to talk. This approach have several disadvantages like latency and confliction. I wanted to know if there is any way to solve this problem with direct connection between robots in ROS?

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2014-07-27 20:53:38 -0500

Mehdi. gravatar image

updated 2014-07-28 01:20:17 -0500

I could imagine using services, Whenever a robot 1 wants to talk to robot 3, it calls the service of robot 3 to engage a conversation. No need for subscriptions here, every robot just need to know the name of the services for each other robot. And only then when the conversation is engaged, both robots can subscribe to each other. When the conversation ends, the subscriptions should be canceled.

edit flag offensive delete link more


Thanks that was really helpful.

Armin gravatar image Armin  ( 2014-07-28 17:13:29 -0500 )edit

I want to run these services on each robot but I can only init_node once in each rospy. What would you suggest? Thanks for your help

Armin gravatar image Armin  ( 2014-08-02 19:49:12 -0500 )edit

Question Tools

1 follower


Asked: 2014-07-27 12:42:49 -0500

Seen: 158 times

Last updated: Jul 28 '14