New Version Of Robot Operating System (ROS) Released After 14 Years. What Changed?
Recently, a new robot operating system (ROS)2 distribution was launched on 23 May 2021. Since the launch of ROS in 2007, a great deal has evolved in the robotics and ROS communities. ROS is a collection of software frameworks and tools for developing robot applications. List of ROS2 Distributions ROS 2 Distro NameRelease DateEOL DateGalactic Geochelone23rd May, 2021November 2022Foxy Fitzroy5th June, 2020May 2023Eloquent Elusor22nd November, 2019November 2020Dashing Diademata31st May, 2019May 2021Crystal Clemmys14th December, 2018December 2019Bouncy Bolson2nd July, 2018July 2019Ardent Apalone8th December, 2017December 2018beta313th September, 2017December 2017beta25th July, 2017September 2017beta119th December, 2016Jul 2017alpha1 – alpha831st August, 2015December 2016 The expectation is that new ROS 2 distributions will be released once a year. Likewise, Humble Hawksbill is expected to release in May 2022. The most significant change introduced by ROS 2 was the adoption of the data distribution service (DDS) middleware as the communication layer. Its initial release was mostly employed in academic applications, and it was created with the intention of being used in commercial ventures. Simultaneously, ROS 2 has expanded its application base through multi-robot communication, real-time communication, and platform support. At the moment, ROS 2 is used in a variety of applications, ranging from humanoid robots to industrial robots and autonomous vehicles. Apart from that, the OpenCV library is a detection library for ROS 2. Additionally, the QT graphic library is used to create the user interface in ROS 2 applications and is available as an add-on. Why not enhance ROS? Generally, the modifications described above can be included in the existing ROS core code. Given the intrusive nature of the changes, there is far too much danger connected with replacing the current ROS system so many people rely on. ROS should serve as a reminder of the same as it does today. As a result, ROS2 will be developed as a set of parallel packages that may be deployed alongside and interact with ROS. The Architecture of ROS 2 ROS 2 is based on a distributed real-time system architecture. Sensors on robots, motion controllers, detection algorithms, artificial intelligence algorithms, and navigation algorithms are all components of this distributed architecture (referred to as nodes). DDS middleware, which was chosen for data interchange in ROS 2, enables these components to communicate in a distributed environment. Instead of directly utilising the DDS middleware, ROS 2 provides its own abstraction layer on top of it. Thus, the user is abstracted from the specifics of the DDS middleware interface. The ROS 2 binary releases for currently supported distros include out-of-the-box compatibility for numerous RMW implementations (Fast DDS, RTI Connext Pro, Eclipse Cyclone DDS). Since Galactic, the default is Cyclone DDS, which runs automatically as part of our binary packages. Prior to Galactic, the default was Fast DDS. Apart from that, several DDS products support rmw. The user can use any DDS library they choose, and thanks to network-level compatibility, many DDS libraries can be used in the same project. Design goals for ROS 2 compared to ROS 1 Support for multiple robot systems: ROS 2 adds support for multiple robot systems and improves the network performance of multi-robot communication. The ROS community will see an increase in multi-robot systems and applications. Bridging the gap between prototypes and products: ROS 2 is not only concerned with scientific research but also with the transition of robots from research to application, enabling more robots to carry ROS 2 systems directly to the market. Support for embedded microcontrollers: ROS 2 is compatible with existing X86 and ARM platforms and with embedded microcontrollers such as MCUs (ARM-M4, M7 cores). Support for real-time control: ROS 2 has support for real-time control, which can increase control timeliness and overall robot performance. Multi-platform support: ROS 2 not only operates on Linux computers but also on Windows, macOS, RTOS, and other platforms, providing developers with additional options. ROS 2 and Its Application in Projects ROS 2 has garnered considerable attention in recent years, particularly from creators of autonomous vehicles. These companies have begun developing prototypes using ROS 2, which provides numerous infrastructures for their design systems. Apex.ai has released a ROS 2 distribution that is functionally safe and ISO 26262 certified. Additionally, businesses have begun developing ROS 2 libraries that may be utilised in safety-critical projects, together with the associated tests and documentation.
Robot Operating System is a collection of libraries and tools that assist software developers in developing robot applications.
Robot Operating System is a collection of libraries and tools that assist software developers in developing robot applications.
["AI Algorithms", "Autonomous Vehicles", "Humanoid Robots", "industrial robots", "Robots", "Sensors"]
["Go", "Humanoid Robots", "artificial intelligence", "programming_languages:R", "AI", "programming_languages:Go", "industrial robots", "OpenCV", "AI Algorithms", "CLIP", "Sensors", "ai_applications:robotics", "Autonomous Vehicles", "R", "Robots"]
["AI", "artificial intelligence", "OpenCV", "R", "Go", "CLIP", "programming_languages:R", "programming_languages:Go", "ai_applications:robotics"]
Nivash holds a doctorate in information technology and has been a research associate at a university and a development engineer in the IT industry. Data science and machine learning excite him.