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

DDS messages between multiple master in different subnets

asked 2022-10-11 08:22:00 -0500

monkfood gravatar image

updated 2022-10-11 08:48:19 -0500

ljaniec gravatar image

Hi, i am preparing a multi-robot environment with a set of mobile units and with one coordinating "mastermind" backend unit.

  • The set of mobile robots are all with the same software and thus the same topics.
  • Each Robot should be able to send a broadcast to all the others
  • Each Robot should be able to send messages that is only sent to the backend

I read a lot about DDS, looked at the ros ZMQ option and even considered the ros2_socket_bridge. Obviously I would love to do this with the intended middleware DDS.

So could someone with more understanding of the inner mechanics help me with a few points

  1. Is it correct that DDS does only work within the same subnet (192.168.0.1/24 255.255.255.0) and not between (192.168.0.1 -> 192.168.2.1)?
  2. Is there a possibility to define a DDS Publisher profile that has a predefined receiver (like in my case the backend)

If the answer to any of these is no, is there a suggestion for another package that can do this? Thanks a lot in advance for the help!!

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2022-10-18 18:20:56 -0500

duck-development gravatar image

Dds uses multicast so it can leaf a subnet.

To all the different robots the all should have different ROS_Domain_ID so the topic will not collide.

For your communication you can use iter mqtt or zero mq.

Or you change the robot root topic, with an lauch file then you can stay in one domain under communicate between each other a you intndet

edit flag offensive delete link more

Question Tools

3 followers

Stats

Asked: 2022-10-11 08:22:00 -0500

Seen: 103 times

Last updated: Oct 18 '22