Explanation to ROS2 python library

asked 2018-06-08 11:08:52 -0500

aks gravatar image

I have already asked multiple times the solution to exchange DDS messages between a node in ROS2 and a non-ROS machine. The best answer I so far got is to use the ROS2 python libraries and implement them in the non-ROS machine. Does anyone have an idea how to proceed with this. Let us say that the publisher is in ROS2 and the subscriber is on the non-ROS machine. I cannot imagine the physical connection.

A general conection scenario (Not related to my use case) Like if we use CAN, we are connecting to machines using a physical wire and then the communication takes place using CAN protocol. If we use a TCP/IP or UDP connection, then we provide the IP address of the machines and the port number.

In my case, I am somehow not clear in my head that how would the conneciton take place between the ROS2 publisher and to be subscriber on a non-ROS machine.

Could anyone be so kind and explain me this phenomenon.

Also, are these the correct libraries to be used ? Could anyone provide a small example using them ? An algorithm would also work.

edit retag flag offensive close merge delete


Is there a reason to the second machine not running ROS?

Marcel Usai gravatar imageMarcel Usai ( 2018-09-04 03:20:57 -0500 )edit

yes, because we need only a ROS interface in our tool i.e. exchange messages between our simulation tool and ROS2. Not every user needs to install ROS2 for this purpose.

aks gravatar imageaks ( 2018-09-04 04:48:02 -0500 )edit