What is ROS, and Can it Create a Universal Standard?
Posted on Nov 13, 2018 7:00 AM. 2 min read time
The biggest problem with robotics research, is that everyone is working towards an individual goal. Industrial robotics is such a competitive field that numerous countries and companies prefer to keep their research a secret. As a result, advancements rarely make their way to the factory floor.
ROS, and by extension, ROS-Industrial, seeks to bridge this gap by creating pathways that are economical, so robotics can finally realize their full potential. Join us as we look at the strides ROS has made, and how it could contribute to a universal standard.
A quick overview of ROS and ROS-Industrial
ROS is an open-source set of utilities and libraries for adding functions to robots. It's not a programming language, but it does work with a variety of them to make implementation easier.
The official website describes ROS as "an open-source meta-operating system for your robot." Many of the functions of an OS are present, such as hardware abstraction, low-level device control, and inclusion of standard functionality.
It provides tools and libraries for obtaining, building, and running code across multiple computers. It's similar to robot frameworks. The primary purpose of ROS is to facilitate code reuse in robotics research and development.
It is a distributed framework of processes, known as "nodes." These enable executables to be designed and coupled at runtime individually. To make things simpler, you can group the nodes into "packages" and "stacks" which are easy to share.
So, how does ROS differ from any other operating system? ROS supports a system of code repositories that allow you to distribute collaboration. The design, from the file system level, to the community level, enables users to make independent decisions and bring everything together with ROS infrastructure tools.
This leads into several more goals of ROS as a whole:
- Thin as Possible - Code written for ROS is usable with other robotic software frameworks. It's easy to integrate into other software frameworks as well.
- Agnostic Libraries - The development model is to write ROS-agnostic libraries with clean function interfaces
- Independent Language - The ROS framework is easy to implement into modern programming languages like Python, C++, and Lisp.
- Scalable - ROS works with large runtime systems and development processes.
Can ROS become a universal standard?
ROS originally began as a small project at Standford University, but it has since branched off into a separate branch known as ROS-Industrial. Robots in manufacturing have had largely the same functions for 20 years.
Advanced functionality has not been possible due to high costs. The research is being done, but applying to it manufacturing floors is a complicated issue. There needs to be a return on investment for integrating and programming robots with agile processing.
ROS-Industrial seeks to bridge the gap by creating cost-effective solutions that allow robotic applications to reach their full potential without extreme costs behind the integration.
It's highly possible that the goals of ROS will align with industrial standards sooner than we think. As a result, we could see it become a universal standard in the future for industrial robotics.
Do you think such a scenario is possible? Let us know in the comments!