Presentation by Yasmine Makkaoui (Fraunhofer IPA)
ROS 2 is an open-source robotics middleware framework that has been evolving for over a decade, driven by a global community of developers, researchers, and companies under the stewardship of Open Robotics.
The ROS 2 architecture features a layered structure designed for flexibility and performance. The Application Layer (containing user nodes, lifecycle nodes, and composable nodes) communicates via language-specific client libraries such as rclcpp for C++ efficiency or rclpy for Python prototyping. These libraries build upon rcl, a pure C library that ensures middleware independence, ABI stability, and portability. At the lower level, an abstract ROS Middleware Interface (rmw) decouples the client libraries from the Data Distribution Service (DDS) layer, which manages discovery, serialization, and decentralized transport over Linux, Windows, or macOS.
Beyond communication frameworks, the ROS 2 ecosystem provides essential tools such as ros2_control for hardware integration, RViz for visualization, MoveIt2 for motion planning, Nav2 for autonomous navigation, and various simulation environments like Gazebo, MuJoCo, and IsaacSim. These capabilities enable robotics automation in complex scenarios like textile handling, low-volume welding, fruit harvesting, and kitting.
The framework shows strong community growth, with ROS 2 now accounting for over 90% of package downloads worldwide. Technical governance is led by steering committees and working groups, supported by global alliances like the Open Source Robotics Alliance. For industrial adoption, the ROS-Industrial Consortium (co-led by Fraunhofer IPA, SwRI, and ARTC A*) drives shared open-source infrastructure through joint projects—such as ros2_canopen and vendor-specific robot drivers while providing on-call technical support, hands-on training, and event networking for member organizations.
