{"id":7596,"date":"2020-08-20T10:50:11","date_gmt":"2020-08-20T07:50:11","guid":{"rendered":"https:\/\/atostek.com\/?p=7596"},"modified":"2020-08-21T10:07:17","modified_gmt":"2020-08-21T07:07:17","slug":"robot-operating-system-2-ros-2-is-here-why-should-you-care","status":"publish","type":"post","link":"https:\/\/atostek.com\/robot-operating-system-2-ros-2-is-here-why-should-you-care\/","title":{"rendered":"Robot Operating System 2 (ROS 2) is Here \u2013 Why Should You Care?"},"content":{"rendered":"

Companies around the world are spending huge amounts of money on robotics development. Autonomous cars, industrial robots, autonomous lawn mowers and work machines all are some kind of robots. Almost daily there are news about new R & D efforts and new progress made in robot development.<\/strong><\/p>\n

Robot control requires a complex software stack to sense the environment, navigate, move, avoid obstacles, and perform the tasks the robot is designed for. A major part of the on-board software is common for all robot types, no matter whether the robot operates in logistics, agriculture, or some other field. Robot software is divided into subsystems or \u201cnodes\u201d that control its sensors and actuators, process information, plan the path, avoid obstacles, and communicate with other robots or control systems. Together these systems make the robot sense, plan actions, and act.<\/p>\n

There are several commercial robot software platforms available, but open source alternatives have also emerged. Of the latter, the most widely used is ROS<\/a> (Robot Operating System) which is a set of open source software components, libraries and tools to help developers build robot applications with less effort. The first version of ROS \u2013 ROS 1 \u2013 is mainly used for educational purposes and building proof-of-concept or demo applications. Although ROS 1 has been used for a few commercial applications, it lacks some essential features to enable wider commercial use.<\/p>\n

ROS 2 is a new version of the Robot Operating System<\/em>. It has been built from ground up to meet industrial grade safety and real-time requirements. If you are a robot developer, you should know following five things about ROS 2:<\/p>\n

1. Safety and reliability.<\/strong> ROS 2 has been designed to meet industrial grade requirements for safety and reliability. A central part of the new design is the use of DDS<\/a> (Data Distribution System) messaging between robot software nodes. DDS is fault tolerant and supports a variety of Quality of Service (QoS) policies. You can for example define in a QoS policy if a certain node wants to always receive all messages or if it is acceptable to lose some messages if the data is updated frequently.<\/p>\n

2. Lots of major companies are contributing to ROS 2<\/strong> and developing ROS 2 support for their products. Here are some examples:<\/p>\n