When I first heard of the Robot Operating System (ROS) I thought it was just that – an operating system for robots. Well I was wrong it is not an OS but rather an open-source set of software libraries for writing software to control a robot’s behavior. As with any open source software it encourages collaborative software development for robotics. ROS is essentially a framework and is currently supported on Ubuntu Linux and maintained by the Open Source Robotics Foundation.
In ROS a process is called a node and every node is responsible for one task. Nodes communicate with each other using messages passed through logical channels known as topics. Nodes can send or receive data from another node using by publishing or subscribing to a topic.Nodes and topics. Image adapted from a tutorial from Justin Huang.
In order to start learning ROS you will need a robot. For beginners, the best place to start is with a good affordable robot called the Turtlebot. Turtlebot is the most affordable advanced ROS robot on the market. It uses off-the-shelf consumer electronics like the Orbbec Astra Pro sensor, a standard netbook and a robot base built from a repurposed robot vacuum cleaner to keep costs low.
TurtleBot is a low-cost, personal robot kit with open-source software. Turtlebot was designed in collaboration with the original makers of ROS, Willow Garage in 2010 and has since become the go-to software platform for roboticists around the world.
A TurtleBot allows you to build a custom robot that can drive around as well as see in 3D. You can create amazing applications and learn more about ROS. As an entry level mobile robotics platform, TurtleBot has many of the same capabilities of the company’s larger robotics p
latforms, like PR2.
Still want to learn ROS without buying a robot? Easy – robot simulation. A robotics simulator is used to create applications for a physical robot without depending on the actual machine which saves time and money. In most cases these applications can be transferred onto the physical robot without modifications.
The Open Source Robotics Foundation (OSRF) provides a free and open source robot simulator called Gazebo. Gazebo
is an open source robot simulation application. Used by both hobbyists an
d professionals alike, one can build models that act like real robots and move in their own world, ruled by its four, state of the art, physics engines the default being ODE Open Dynamics Engine.
The ROS Foundation provides a free Turtlebot Simulator which allows you to learn ROS and write code that can be moved to a real Turtlebot robot. You can be up and running in 15 minutes!
To learn more check out these links:
Author: Beth Flippo
Beth Flippo is the VP of Embedded Software Development at TELEGRID Technologies Inc. She is an alumni of the SUNY Binghamton School of Engineering and Applied Science. In her free time, she volunteers for a STEM program at a local high school teaching Artificial Intelligence and Computer Science. The B-Hive Blog follows her mantra of ‘When you learn, teach’. Her expertise and passion for technology is palpable and evident in her many successful projects.