Robot Operating System
This article needs additional citations for verification. (January 2010) |
This article has an unclear citation style. The reason given is: Violates Wikipedia:External links: "Wikipedia articles may include links to web pages outside Wikipedia (external links), but they should not normally be used in the body of an article." (November 2011) |
Original author(s) | Willow Garage, Stanford Artificial Intelligence Laboratory |
---|---|
Initial release | 2007 |
Stable release | Fuerte[1]
/ April 23, 2012 |
Repository | |
Written in | C++ |
Operating system | Linux, Mac OS X |
Type | Robotics suite, OS, library |
License | BSD license |
Website | www |
Robot Operating System (ROS) is a software framework for robot software development, providing operating system-like functionality on a heterogenous 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]) 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.[3][4]
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:
- Perception
- Object Identification
- Segmentation and recognition
- Face recognition
- Gesture recognition
- Motion tracking
- Egomotion
- Motion understanding
- Structure from motion (SFM)
- Stereo vision: depth perception via two cameras
- Motion
- Mobile robotics
- Control
- Planning
- Grasping
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 have been:
- 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
- PR2 personal robot being developed at Willow Garage
- PR1 personal robot developed in Ken Salisbury's lab at Stanford
- HERB developed at CMU in Intel's personal robotics program
- STAIR I and II robots developed in Andrew Ng's lab at Stanford
- [2]: the robotics lab of the Katholieke Universiteit Leuven, Belgium has ported ROS to the Beagleboard
- Nao humanoid: University of Freiburg's Humanoid Robots Lab developed a ROS integration for the Nao humanoid
- Husky A200 robot developed (and integrated into ROS) by Clearpath Robotics
References
- ^ Willow Garage, ROS Fuerte version. Link: [1]
- ^
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) - ^ "Repositories". ROS.org. Retrieved 7 June 2011.
- ^ 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)
- Notes
- STAIR: The STanford Artificial Intelligence Robot project, Andrew Y. Ng, Stephen Gould, Morgan Quigley, Ashutosh Saxena, Eric Berger. Snowbird, 2008.