ROS Kinetic Kame version logo
|
|
Cart pushing simulation in RVIZ
|
|
Original author(s) |
Willow Garage Stanford Artificial Intelligence Laboratory |
---|---|
Initial release | 2007 |
Stable release |
Kinetic Kame / 23 May 2016
|
Development status | Active |
Written in | C++ or Python |
Operating system | Linux |
Type | Robotics suite, OS, library |
License | BSD license |
Website | www |
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 real-time OS (RTOS), though it is possible to integrate ROS with real-time code. The lack of support for real-time systems is being addressed in the creation of ROS 2.0.
Software in the ROS Ecosystem can be separated into three groups:
Both the language-independent tools and the main client libraries (C++, Python, 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.