Welcome to the Robot Operating System (ROS)! A flexible framework for writing robot software. In a nutshell ROS is a collection of tools, libraries, and conventions that aim to simplify the task of creating complex and robust robot behavior across a wide variety of robotic platforms.

ROS provides the services you would expect from an operating system, including hardware abstraction, low-level device control, implementation of commonly-used functionality, message-passing between processes, and package management. It also provides tools and libraries for obtaining, building, writing, and running code across multiple computers. A ROS system is comprised of a number of independent nodes, each of which communicates with the other nodes using a publish/subscribe messaging model.

ROS is the ultimate SDK for robot application development. It provides a distributed architecture and contains state-of-the art algorithms implemented and maintained by experts in the field. Everything with a permissive license that just in a few years changed the landscape of robotics and has been widely adopted by academia and industry.

Note that nodes in ROS do not have to be on the same system (multiple computers) or even of the same architecture! You could have a Erle-Brain publishing messages, a laptop subscribing to them. ROS is also open source, maintained by many people. This makes ROS really flexible and adaptable to the needs of the user.

ROS was originally developed in 2007 by the Stanford Artificial Intelligence Laboratory (SAIL) with the support of the Stanford AI Robot project. As of 2008, development continues primarily at Willow Garage, a robotics research institute, with more than 20 institutions collaborating within a federated development model. In February 2013, ROS stewardship transitioned to the Open Source Robotics Foundation. ROS is released under the terms of the BSD (Berkeley Software Distribution) license and is an open source software. It is free for commercial and research use

ROS promotes code reutilization so that the robotics developers and scientists do not have to reinvent the wheel all the time. With ROS, you can do this and more. You can take the code from the repositories, improve it, and share it again.

At Erle Robotics we work everyday with this awesome robotic operating system. Thanks to Erle-Brain you will be able to work with ROS as you implement new applications for your robot! Isn't that awesome?

Even though ROS 1 is already recognized worldwide ROS 2 is being developed.

In this section, you will find some first steps to work with ROS in Erle-Brain.