ROS2 Integration Service

ROS End-Effector
February 18, 2019
February 18, 2019

The main goal is offering a fully open source solution for two general ROS2 use cases:

1.- Integration: Connect ROS2 to other protocols (MQTT, zeroMQ, a file/DB, etc): There are some existing bridges, such as ROS2 to ROS1 Bridge, or FIROS2 (FIWARE to ROS2), but this project will offer a common framework, standard interfaces, and useful services to create general Bridges and transformations.

2.- Routing: Enable ROS2 over Internet/WAN. Currently, ROS2 just allow LAN comms because of the underlying protocol of ROS2. The project will offer routing services for ROS2 traffic in several scenarios.

Public Summary of Milestone 1:

ROS2 Integration Service provides a complete tool to integrate other technologies with ROS2 easily and enable ROS2 on WAN/Internet. In this initial release, the core functionality of ROS Integration Services implementation was completed. This first release:

  • It is fully integrable with Colcon . ROS Integrations Services integrates into ROS 2 workspaces as a package.
  • The configuration is done using YAML format which increases the readability compared to XML configurations.
  • Provided a set of Docker images, so ROS Integration Services is ready to be used out of the box.
  • Define and provide a well-defined API to create new system integrations.
  • Developed Bridges: FIWARE , DDS, ROS2, ROS1, WebSocket, REST.
  • Provide usage examples and tests: TCP tunnel using DDS, ROS2 domain change and a connection ROS2 – FIWARE .
  • Provides user documentation.

This initial release uses SOSS (System Of Systems Synthesizer) as core communications enabler. SOSS provides a set of tools and configuration utilities to communicate different communication middlewares.
The outcome of this first Milestone can be found in a set of publicly available repositories: