Jump to content

Robot Operating System

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Rolfedh (talk | contribs) at 15:24, 26 October 2013 (Ports to robots and boards: Added Baxter. Moved BeagleBoard to beginning of phrase. Alphabetized the list.). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
Robot Operating System
Original author(s)Willow Garage, Stanford Artificial Intelligence Laboratory
Initial release2007
Stable release
Hydro Medusa[1] / September 4, 2013; 11 years ago (2013-09-04)
Repository
Written in[C++ or Python]
Operating systemLinux
TypeRobotics suite, OS, library
LicenseBSD license
Websitewww.ros.org

Robot Operating System (ROS) is a software framework for robot software development, providing operating system-like functionality on a heterogeneous computer cluster. ROS was originally developed in 2007 under the name switchyard by the Stanford Artificial Intelligence Laboratory in support of the Stanford AI Robot STAIR [2][3] project. As of 2008, development continues primarily at Willow Garage, a robotics research institute/incubator, with more than twenty institutions collaborating in a federated development model.[4][5]

ROS provides standard operating system services such as hardware abstraction, low-level device control, implementation of commonly used functionality, message-passing between processes, and package management. It is based on a graph architecture where processing takes place in nodes that may receive, post and multiplex sensor, control, state, planning, actuator and other messages. The library is geared toward a Unix-like system (Ubuntu Linux is listed as 'supported' while other variants such as Fedora and Mac OS X are considered 'experimental').

ROS has two basic "sides": The operating system side ros as described above and ros-pkg, a suite of user contributed packages (organized into sets called stacks) that implement functionality such as simultaneous localization and mapping, planning, perception, simulation etc.

ROS is released under the terms of the BSD license, and is open source software. It is free for commercial and research use. The ros-pkg contributed packages are licensed under a variety of open source licenses.

Applications

ROS areas include:

  • A master coordination node
  • Publishing or subscribing to data streams: images, stereo, laser, control, actuator, contact ...
  • Multiplexing information
  • Node creation and destruction
  • Nodes are seamlessly distributed, allowing distributed operation over multi-core, multi-processor, GPUs and clusters
  • Logging
  • Parameter server
  • Test systems

ROS Package application areas will include:

ROS -Industrial[6] is a BSD-licensed “hardware-agnostic” software development program to create a Unified Robot Description Format (URDF) for industrial robots.

Version History

ROS releases may be incompatible with other and are often referred to by code name rather than version number. The major releases so far are:

  • September 4, 2013 - Hydro Medusa
  • December 31, 2012 - Groovy Galapagos
  • April 23, 2012 - Fuerte
  • Aug 30, 2011 - Electric Emys
  • March 2, 2011 - Diamondback
  • August 3, 2010 - C Turtle
  • March 1, 2010 - Box Turtle
  • January 22, 2010 - ROS 1.0

Ports to robots and boards

  • ABB, Adept, Motoman, and Universal Robots are supported by ROS-Industrial
  • Baxter[7] at Reasearch Robotics, Inc.
  • BeagleBoard. The robotics lab of the Katholieke Universiteit Leuven, Belgium:[8] has ported ROS to the Beagleboard
  • HERB[9] developed at CMU in Intel's personal robotics program
  • Husky A200[10] robot developed (and integrated into ROS) by Clearpath Robotics
  • PR1[11] personal robot developed in Ken Salisbury's lab at Stanford
  • PR2[12] personal robot being developed at Willow Garage
  • rosbridge protocol and server[13] Brown University[14] developed the rosbridge protocol to enable any robot or computing environment to integrate with ROS using JSON-based messaging, such as for common web browsers, Matlab, Microsoft Windows, OS X, and embedded systems
  • STAIR I and II[15] robots developed in Andrew Ng's lab at Stanford
  • SummitXL:[16] Mobile robot developed by Robotnik, an engineering company specialized in mobile robots, robotic arms and industrial solutions with ROS architecture.
  • Nao[17] humanoid: University of Freiburg's Humanoid Robots Lab[18] developed a ROS integration for the Nao humanoid based on an initial port by Brown University[19][20]
  • UBR1[21] [22] developed by Unbounded Robotics, a spin off of Willow Garage.

References

  1. ^ Willow Garage, ROS Hydro Medusa. Link
  2. ^ STanford Artificial Intelligence Robot http://stair.stanford.edu/
  3. ^ Morgan Quigley, Eric Berger, Andrew Y. Ng (2007), STAIR: Hardware and Software Architecture (PDF), AAAI 2007 Robotics Workshop{{citation}}: CS1 maint: multiple names: authors list (link)
  4. ^ "Repositories". ROS.org. Retrieved 7 June 2011.
  5. ^ Morgan Quigley, Brian Gerkey, Ken Conley, Josh Faust, Tully Foote, Jeremy Leibs, Eric Berger, Rob Wheeler, Andrew Ng. "ROS: an open-source Robot Operating System" (PDF). Retrieved 3 April 2010.{{cite web}}: CS1 maint: multiple names: authors list (link)
  6. ^ ROS-Industrial http://ros.org/wiki/Industrial
  7. ^ Baxter http://www.rethinkrobotics.com/products/baxter-research-robot/baxter-research-robot-qa/
  8. ^ K U leuven http://people.mech.kuleuven.be/%7Eu0062536/embsensor.html
  9. ^ HERB http://personalrobotics.intel-research.net/
  10. ^ Husky A200 http://www.clearpathrobotics.com/husky
  11. ^ PR1 http://personalrobotics.stanford.edu/
  12. ^ PR2 http://www.willowgarage.com/pages/robots
  13. ^ rosbridge protocol and server http://www.ros.org/wiki/rosbridge
  14. ^ brown-robotics http://brown-robotics.org/
  15. ^ STAIR I and II http://stair.stanford.edu/index.php
  16. ^ http://robotnik.es/en/products/mobile-robots/summit-xl
  17. ^ http://www.ros.org/wiki/nao
  18. ^ Humanoid Robots Lab http://hrl.informatik.uni-freiburg.de/
  19. ^ brown-robotics http://brown-robotics.org/
  20. ^ G.T. Jay, Post to ros-users mailing list announcing ROS support for the Nao
  21. ^ http://unboundedrobotics.com/ubr-1/specification/
  22. ^ http://spectrum.ieee.org/automaton/robotics/industrial-robots/unbounded-robotics-revolutionizes-affordable-mobile-manipulation-with-ubr1
Notes
  • STAIR: The STanford Artificial Intelligence Robot project, Andrew Y. Ng, Stephen Gould, Morgan Quigley, Ashutosh Saxena, Eric Berger. Snowbird, 2008.