New demo - ROS 2 to micro-ROS TCP tunneling via Integration Service

Nov 20, 2020

OFERA partner eProsima has been working on a demo combining several of its cutting-edge technologies. The demo shows how two separate ROS 2 dataspaces hosted by distinct subnets can be put into communication over the WAN thanks to Fast DDS TCP capabilities and to Integration Service, the tool enabling intercommunication of any protocol with Fast DDS. The setup consists of a ROS 2 node publishing velocity directives over the internet to a Turtlesim application and to a micro-ROS node operating a Kobuki Turtlebot2, both running on the remote hub.

In the first dataspace we have a ROS 2 publisher sending data over a Twist type message. More in detail, a joy node is in charge of obtaining displacement commands from a gamepad, which are then converted into ROS 2-understandable Twist type messages by a second teleop_twist_joy node.

The second dataspace handles two subscribers which receive the Twist topic sent by the teleop_twist_joy node. The first subscriber is a Turtlesim application, in charge of displacing the classic virtual turtle in its graphical interface according to the indications received by the remote node. The second subscriber is a micro-ROS Client, communicated with the ROS 2 dataspace via an Agent which allows it to subscribe to the Twist topic. With the data received, micro-ROS is in charge of instructing a Kobuki Turtlebot2, operated by an ESP32 MCU running FreeRTOS, to move accordingly.

The remote communication is mediated by Integration Service, which is able to translate the ROS 2 messages into a language understandable by Fast DDS, and thanks to the TCP capabilities of the latter it connects via WAN the instances launched in the two subnets. Thanks to this, we can see how both the Kobuki robot and the Turtlesim are moving as they are being operated by the remote gamepad.

Share on: