Robot Operating System

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen
Robot Operating System

Logo
Basisdaten

Maintainer Open Source Robotics Foundation
Entwickler Willow Garage, Stanford Artificial Intelligence Laboratory
Erscheinungsjahr 2007
Aktuelle Version Melodic Morenia[1]
(23. Mai 2018)
Betriebssystem Linux,
Mac OS (experimentell),
Windows (rudimentär)
Programmiersprache C++, Python
Kategorie Roboter-Software-Framework
Lizenz BSD-Lizenz
http://ros.org/

Robot Operating System (ROS) ist ein Framework für persönliche Roboter. Die Entwicklung begann 2007 am Stanford Artificial Intelligence Laboratory im Rahmen des Stanford-AI-Robot-Projektes (STAIR) und wurde ab 2009 hauptsächlich am Robotikinstitut Willow Garage weiterentwickelt.[2] Seit April 2012 wird ROS von der neu gegründeten, gemeinnützigen Organisation Open Source Robotics Foundation (OSRF) unterstützt[3] und seit Beendigung der operativen Tätigkeit von Willow Garage 2013[4] von dieser koordiniert, gepflegt und weiterentwickelt. Seit 2013 beschäftigt sich das ROS Industrial Consortium mit der Förderung und Unterstützung von ROS für Anwendungen in der Industrierobotik. In Europa koordiniert das Fraunhofer IPA die Aktivitäten des ROS Industrial Consortium Europe.[5]

Software[Bearbeiten | Quelltext bearbeiten]

Die Bibliotheken von ROS setzen auf Betriebssysteme wie Linux, macOS oder Windows auf.

Die Hauptbestandteile und -aufgaben von ROS sind

Das System ist aufgeteilt in das eigentliche Betriebssystem ros und ros-pkg, eine Auswahl an Zusatzpaketen, die das Basissystem um (meist einzelne) Fähigkeiten erweitern. Dabei wird eine Serviceorientierte Architektur eingesetzt, um die Kommunikation zwischen den einzelnen Komponenten zu ermöglichen.

ROS wird unter der BSD-Lizenz veröffentlicht und ist somit der Open-Source-Szene zuzuordnen.

Bis April 2012 wurden für ROS 3699 Pakete veröffentlicht, um einzelne Funktionalitäten abzubilden.

ROS 1.x ist nicht echtzeitfähig, kann jedoch mit echtzeitfähigen Komponenten zusammenarbeiten.[6] Ein Ziel von ROS ab der Version 2.0 ist u. a., echtzeitfähig zu sein.[7]

Seit Beginn der Entwicklung von ROS 2.0 wird zwischen ROS 1 und ROS 2 unterschieden. Die beiden Hauptversionen sind nicht miteinander kompatibel, jedoch interoperabel und können parallel ausgeführt werden. Die Motivation hinter der Entwicklung von ROS 2 ist, zu bewahren, was gut an ROS 1 ist und die Bereiche zu verbessern, die Nachteile mit sich bringen. Dazu zählen z. B. die Echtzeitfähigkeit, die Zertifizierbarkeit für (Sicherheits-)kritische Anwendungen in Endprodukten und die Ausführbarkeit auf kleinen Prozessoren, wie etwa Microcontrollern. Als wesentlicher Unterschied von ROS 2 im Vergleich zu ROS 1 ist der Ersatz der zuvor eigens entwickelten Middleware durch den Standard Data Distribution Service zu nennen.[8]

Entwicklungsgeschichte[Bearbeiten | Quelltext bearbeiten]

ROS 1[Bearbeiten | Quelltext bearbeiten]

Version Veröffentlichung Weblink Anmerkungen
Ältere Version; nicht mehr unterstützt: Box Turtle
(Dosenschildkröte)
2. März 2010 wiki.ros.org/boxturtle
Ältere Version; nicht mehr unterstützt: C Turtle
(Meeresschildkröte/Sea turtle)
2. August 2010 wiki.ros.org/cturtle
Ältere Version; nicht mehr unterstützt: Diamondback
(Diamantschildkröte)
2. März 2011 wiki.ros.org/diamondback
Ältere Version; nicht mehr unterstützt: Electric Emys
(elektrische Emys)
30. August 2011 wiki.ros.org/electric
Ältere Version; nicht mehr unterstützt: Fuerte Turtle
(„starke Schildkröte“)
23. April 2012 wiki.ros.org/fuerte
Ältere Version; nicht mehr unterstützt: Groovy Galapagos
(pfundige Galapagos-Riesenschildkröte)
31. Dezember 2012 wiki.ros.org/groovy Die zur Organisation von Paketen verwendeten
Stacks werden von Metapaketen abgelöst.
Das ROS-eigene Build-System Catkin, welches intern das
Meta-Build-System CMake verwendet, löst das frühere Rosbuild ab.
Ältere Version; nicht mehr unterstützt: Hydro Medusa 4. September 2013 wiki.ros.org/hydro
Ältere Version; nicht mehr unterstützt: Indigo Igloo 22. Juli 2014 wiki.ros.org/indigo Diese Version hatte Long Term Support (LTS) bis April 2019.[9]
Ältere Version; nicht mehr unterstützt: Jade Turtle 23. Mai 2015 wiki.ros.org/jade
Ältere Version; noch unterstützt: Kinetic Kame
Kame japanisch für Schildkröte
23. Mai 2016 wiki.ros.org/kinetic Diese Version hat Long Term Support (LTS) bis April 2021.[10]
Ältere Version; nicht mehr unterstützt: Lunar Loggerhead
(lunare Moschus- oder Karettschildkröte)
Mai 2017 wiki.ros.org/lunar
Aktuelle Version: Melodic Morenia
(melodische Pfauenaugen-Sumpfschildkröte)
Mai 2018 wiki.ros.org/melodic Diese Version hat Long Term Support (LTS) bis April 2023.[10]
Zukünftige Version: Noetic Ninjemys
(Noetische Ninjemys oweni)
Mai 2020 wiki.ros.org/noetic
Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version

ROS 2[Bearbeiten | Quelltext bearbeiten]

Version Veröffentlichung Weblink Anmerkungen
Ältere Version; nicht mehr unterstützt: Ardent Apalone 8. Dezember 2017 [11]
Ältere Version; nicht mehr unterstützt: Bouncy Bolson 2. Juli 2018 [12]
Ältere Version; nicht mehr unterstützt: Crystal Clemmys 14. Dezember 2018 [13]
Ältere Version; noch unterstützt: Dashing Diademata 31. Mai 2019 [14]
Aktuelle Version: Eloquent Elusor 22. Nov 2019 [15]
Zukünftige Version: Foxy Fitzroy 23. Mai 2020 (Annahme) [16] Zukünftig
Legende:
Ältere Version; nicht mehr unterstützt
Ältere Version; noch unterstützt
Aktuelle Version
Aktuelle Vorabversion
Zukünftige Version

Weblinks[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. wiki.ros.org.
  2. willowgarage.com
  3. willowgarage.com
  4. willowgarage.com
  5. rosindustrial.org
  6. de/ROS/Introduction – ROS Wiki. Open Source Robotics Foundation, abgerufen am 24. April 2017.
  7. design.ros2.org
  8. design.ros2.org
  9. ros.org
  10. a b wiki.ros.org
  11. index.ros.org
  12. index.ros.org
  13. index.ros.org
  14. index.ros.org
  15. ROS 2 Eloquent Elusor (codename ‘eloquent’; November 22nd, 2019). Abgerufen am 9. Dezember 2019.
  16. ROS 2 Foxy Fitzroy (codename ‘foxy’; May 23rd, 2020). Abgerufen am 12. Februar 2020.