NODE's view on ROSification
Author: Dr. Stefan Dörr
8th March 2023
What is ROS?
Robotics has come a long way since the first robot was developed in 1954. Today, robots are found in various industries, from manufacturing and healthcare to agriculture and logistics. Mobile robots, in particular, are becoming increasingly popular, and ROS (Robot Operating System) has become the standard framework for developing and operating them.
ROS is an open-source middleware and software library for mobile robots. It provides a range of tools and resources that enable developers to build and operate robots quickly and easily.
Why use ROS?
Using ROS allows developers to focus on the core development of their individual applications without having to reinvent the wheel. This results in shorter development times, which is crucial in today’s fast-paced business environment.
Another key advantage of using ROS is the standardization of messages, interfaces, and components. This makes it easy to integrate different types of hardware and sensors and enables building highly modular, flexible, reusable, and scalable software solutions.
Engaging with the ROS community is another advantage of using ROS. Developers can get help and feedback from a vast pool of developers and roboticists worldwide. Additionally, ROS has a growing community of developers who are continuously improving the system by developing new packages and tools.
One common argument against using ROS is the legal issues that can arise when using open-source software. Although there may be some additional effort required to deal with legal and licensing issues, if you don’t see the benefits of open-source software, then there may not be much more to discuss. It’s worth noting, however, that with increased awareness of this issue, there are more tools and concepts available to help you navigate these challenges.
How NODE is using ROS?
At NODE, we have been using ROS as middleware and toolkit since day one to build NODE.OS, a „plug-and-play,“ industry-ready, and hardware-agnostic software stack for intralogistics applications.
Here’s why ROS is so important to us:
1. Hardware abstraction: ROS provides drivers for all common sensors and a standardized format for feeding sensor data into ROS. This makes it an essential ingredient for our hardware abstraction layer. ROS also facilitates communication with actuators.
2. Interfacing with other software components: NODE.OS’s high modularity requires easy integration with customers‘ software components. ROS provides the base for this.
3. Focus on core: ROS provides a base layer, allowing us to focus on application-specific components and develop the most important and valuable bits of software in-house. This enables us to provide a turn-key, industrial-grade solution by combining ROS open source software with our proprietary software.
4. Interacting with the ROS community: We have developed some packages as open source to give back to the ROS community, as well as receive feedback and support for enhancing the packages and raising attention.
If you are not using ROS yet, consider the benefits it has to offer. Moreover, in cooperation with our partners from Fraunhofer IPA, we also help customers „ROSify“ their robot and get started with ROS.