Periodic Reporting for period 2 - OFERA (OFERA: Open Framework for Embedded Robot Applications)
Reporting period: 2019-07-01 to 2021-12-31
Micro-ROS is an implementation of the latest version of the Robot Operating System (ROS) for microcontrollers.
It is important for society, as nowadays a robot is a set of sensors and actuators, many of them based on microcontrollers. ROS is the de facto standard robotic framework, and while it has been attempted before, until micro-ROS, there was no good support for microcontrollers.
The main objectives of Micro-ROS are:
a) Create a Platform for seamless integration of resource-constrained devices in the robot ecosystem: micro-ROS
b) Demonstrate the micro-ROS platform with a representative set of Robotic applications
c) Drive the adoption of the Micro-ROS platform.
a) Micro-ROS was released and demonstrated in many events, and now the consortia is focused on maintaining and upgrading the framework. Micro-ROS has been released for every major release of ROS2 since the ROS 2 Crystal Clemmys (codename ‘crystal’; December 2018), and it is planned to be updated following the ROS 2 releases calendar.
b) The consortia has created a set of 5 demonstrators for different use cases: Drones, Sensors and modular Arms, Autonomous lawnmowers, Smart warehouses, and context information integration. See the corresponding deliverables for more details.
c) During the project the consortia did an intense effort on dissemination, presenting Micro-ROS in the Robotics major events including a very strong presence in the latest ROSCONs, and creating an embedded Working Group within the ROS community with a very good track record of attendees, leading to the creation of a stable Micro-ROS open-source community. Moreover, many important companies have adopted Micro-ROS (Renesas, Robotis, eSOL, Capra Robotics, LG Electronics, HydraSystem or Sideways vehicles…) , and some of them are actively participating in the maintenance of the framework.
A complete list of events and publications can be found in the corresponding deliverable and also on the Micro-ROS website (https://micro-ros.github.io/allposts(opens in new window))
The major changes compared to "regular" ROS 2 is that micro-ROS uses a Real-Time Operating System (RTOS) instead of Linux, and DDS for eXtremely Resource Constrained Environments (DDS-XRCE) instead of classical DDS. Above that, we run the ROS 2 stack! Well, with a few cool improvements for taking advantage of microcontroller-specific details, but largely the same.