Robot Operating System

From Wikipedia, the free encyclopedia - View original article

Robot Operating System
Original author(s)Willow Garage, Stanford Artificial Intelligence Laboratory
Initial release2007
Stable releaseHydro Medusa[1] / 4 September 2013; 7 months ago (2013-09-04)
Written in[C++ or Python]
Operating systemLinux
TypeRobotics suite, OS, library
LicenseBSD license
Websitewww.ros.org
 
  (Redirected from ROS (Robot Operating System))
Jump to: navigation, search
Robot Operating System
Original author(s)Willow Garage, Stanford Artificial Intelligence Laboratory
Initial release2007
Stable releaseHydro Medusa[1] / 4 September 2013; 7 months ago (2013-09-04)
Written in[C++ or Python]
Operating systemLinux
TypeRobotics suite, OS, library
LicenseBSD license
Websitewww.ros.org

Robot Operating System (ROS) is a collection of software frameworks for robot software development, (see also Robotics middleware) providing operating system-like functionality on a heterogeneous computer cluster. 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. Running sets of ROS-based processes are represented in a graph architecture where processing takes place in nodes that may receive, post and multiplex sensor, control, state, planning, actuator and other messages. Despite the importance of reactivity and low latency in robot control, ROS, itself, is not a Realtime OS, though it is possible to integrate ROS with realtime code.[2]

Software in the ROS Ecosystem can be separated into three groups: (1) language- and platform-independent tools used for building and distributing ROS-based software; (2) ROS client library implementations such as roscpp, rospy, and roslisp; and (3) packages containing application-related code which uses one or more ROS client libraries. Both the language-independent tools and the main client libraries (C++, Python, and LISP) are released under the terms of the BSD license, and as such are open source software and free for both commercial and research use. The majority of other packages are licensed under a variety of open source licenses. These other packages implement commonly used functionality and applications such as hardware drivers, robot models, datatypes, planning, perception, simultaneous localization and mapping, simulation tools, and other algorithms.

The main ROS client libraries (C+++, Python, LISP) are geared toward a Unix-like system, due primarily because of their dependence on large collections of open-source software dependencies. For these client libraries, Ubuntu Linux is listed as "Supported" while other variants such as Fedora Linux, Mac OS X, and Microsoft Windows are designated "Experimental" and are supported by the community.[3] The native Java ROS client library, rosjava, however, does not share these limitations and has enabled ROS-based software to be written for the Android OS.[4] rosjava has also enabled ROS to be integrated into an officially-supported MATLAB toolbox which can be used on Linux, Mac OS X, and Microsoft Windows.[5] A JavaScript client library, roslibjs has also been developed which enables integration of software into a ROS system via any standards-compliant web browser.

History[edit]

ROS was originally developed in 2007 under the name switchyard by the Stanford Artificial Intelligence Laboratory in support of the Stanford AI Robot STAIR[6][7] project. From 2008 until 2013, development was performed primarily at Willow Garage, a robotics research institute/incubator. During that time, researchers at more than twenty institutions collaborated with Willow Garage engineers in a federated development model.[8][9]

In February 2013, ROS stewardship transitioned to the Open Source Robotics Foundation.[10] In August 2013, a blog posting[11] announced that Willow Garage would be absorbed by another company started by its founder, Suitable Technologies. The support responsibilities for the PR2 created by Willow Garage were also subsequently taken over by Clearpath Robotics.[12]

Applications[edit]

ROS areas include:

ROS Package application areas will include:

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

Version History[edit]

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

Ports to robots and boards[edit]

References[edit]

  1. ^ Willow Garage, ROS Hydro Medusa. Link
  2. ^ ROS-Introduction http://wiki.ros.org/ROS/Introduction
  3. ^ http://wiki.ros.org/ROS/Installation
  4. ^ http://wiki.ros.org/android
  5. ^ http://www.mathworks.com/hardware-support/robot-operating-system.html
  6. ^ STanford Artificial Intelligence Robot http://stair.stanford.edu/
  7. ^ Morgan Quigley, Eric Berger, Andrew Y. Ng (2007), STAIR: Hardware and Software Architecture, AAAI 2007 Robotics Workshop 
  8. ^ "Repositories". ROS.org. Retrieved 7 June 2011. 
  9. ^ 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". Retrieved 3 April 2010. 
  10. ^ http://osrfoundation.org/blog/ros-at-osrf.html
  11. ^ http://www.willowgarage.com/blog/2013/08/21/willow-garage-employees-join-suitable-technologies
  12. ^ http://www.clearpathrobotics.com/blog/clearpath-welcomes-pr2/
  13. ^ ROS-Industrial http://ros.org/wiki/Industrial
  14. ^ Baxter http://www.rethinkrobotics.com/products/baxter-research-robot/baxter-research-robot-qa/
  15. ^ K U leuven http://people.mech.kuleuven.be/%7Eu0062536/embsensor.html
  16. ^ HERB http://personalrobotics.intel-research.net/
  17. ^ Husky A200 http://www.clearpathrobotics.com/husky
  18. ^ PR1 http://personalrobotics.stanford.edu/
  19. ^ PR2 http://www.willowgarage.com/pages/robots
  20. ^ rosbridge protocol and server http://www.ros.org/wiki/rosbridge
  21. ^ brown-robotics http://brown-robotics.org/
  22. ^ SDH http://www.shadowrobot.com/products/dexterous-hand/
  23. ^ STAIR I and II http://stair.stanford.edu/index.php
  24. ^ http://robotnik.es/en/products/mobile-robots/summit-xl
  25. ^ http://www.ros.org/wiki/nao
  26. ^ Humanoid Robots Lab http://hrl.informatik.uni-freiburg.de/
  27. ^ brown-robotics http://brown-robotics.org/
  28. ^ G.T. Jay, Post to ros-users mailing list announcing ROS support for the Nao
  29. ^ http://unboundedrobotics.com/ubr-1/specification/
  30. ^ http://spectrum.ieee.org/automaton/robotics/industrial-robots/unbounded-robotics-revolutionizes-affordable-mobile-manipulation-with-ubr1
Notes

Related projects[edit]

External links[edit]