ROS – Robot Operating System

Andrea Gillhuber,

Robotik offen gestalten

Die eigene Robotersteuerung aus verschiedenen Software-Paketen flexibel zusammenstellen: Das ermöglicht das Open-Source-Framework ROS. Mit ihm, den passenden Schnittstellen und einem offenen Konzept lassen sich Roboterapplikationen einfach realisieren. Spezifisches Fachwissen für Programmierung ist nicht notwendig.
Das Open-Source-Framework ROS bildet mit seiner Offenheit und Modularität eine Grundlage für industrielle Service-Robotik-Applikationen. © Pilz

Robot Operating System, kurz: ROS, ist ein Open-Source-Framework, um Software für Robotikanwendungen zu schreiben. Dieses Programmiergerüst besteht aus einer Sammlung von Funktionen, Treibern sowie einer Kommunikationsschicht. Programmierer erstellen eigene ROS-Pakete, welche bestimmte Funktionen und Treiber beinhalten und den Anwendern über eine Community zur Verfügung gestellt werden. Das kann beispielsweise eine Bahnplanung sein, die dann vom Anwender an seine individuelle Applikation, zum Beispiel eine Pick-and-Place-Anwendung, angepasst wird. Die einzelnen Pakete sind modular und mit der Hardware unterschiedlicher Hersteller kompatibel.

Entstanden ist ROS im Jahr 2007 im universitären und forschenden Umfeld. Ein Vorteil des Open-Source-Frameworks ist die Zusammenarbeit in der ROS-Community mit Spezialisten aus verschiedenen Bereichen – von Forschungseinrichtungen bis zum Roboterhersteller. Gemeinsam sind sie in der Lage, auch komplexe Robotikanwendungen zu programmieren. Diese Online-Community arbeitet zusammen an den ROS-Paketen, führt Reviews und Tests durch und unterstützt sich gegenseitig. Dazu gehört beispielsweise die Dokumentation der Pakete, die Bearbeitung von sogenannten Pull-Requests, also Verbesserungsvorschlägen für den Code, und die Erstellung von Tutorials.

Anzeige

Die Vorteile von ROS umfassen neben der offenen Verfügbarkeit des Quelltextes, die Verwendung von Programmiersprachen wie Python oder C++. Damit bietet sich ROS für industrielle Applikationen an, in denen verschiedene Sensoren und Aktoren beliebiger Hersteller unterschiedliche Aufgaben übernehmen und komplex entwickelte Algorithmen steuern. Dafür wird eine standardisierte Kommunikationsschicht benötigt.

Die Service-Robotik-Module

Mit den Service-Robotik-Modulen stellt Pilz einen modularen Baukasten vor, aus dem sich Anwender ihre individuelle Roboterapplikation zusammenstellen können. Das funktioniert nur aufgrund von Offenheit und den passenden physischen und virtuellen Schnittstellen. Für die Service-Robotik-Module nutzt Pilz daher ROS. Viele Roboterhersteller lassen ihre ROS-Pakete extern entwickeln. Im Fall von Pilz stammen die Pakete dagegen direkt vom Hersteller, übernehmen die Steuerung und nicht nur das Absetzen von Befehlen an die herstellerspezifische Robotersteuerung. Die Antriebselektronik ist im Manipulator integriert und reagiert direkt auf die Sollwerte der ROS-Pakete. Das bietet dem Anwender Freiheiten bezüglich der Bahn- und Bewegungsplanung. Das Unternehmen unterstützt die ROS-Community nicht nur durch das Programmieren von Paketen, sondern auch mit Pull-Requests und der Dokumentation von zentralem Code im ROS-Wiki. Pilz bietet seinen Anwendern zudem Produktsupport für die eigenen ROS-Pakete.

Offen, aber mit Qualitätsstandards

Die fertigen ROS-Pakete stellen bestimmte Funktionen und Treiber dar. Das kann eine Bahnplanung sein, die vom Anwender an die Applikation angepasst wird. © Pilz

Aber wie profitiert der Anwender von der Offenheit? Dank Tutorials kann der Nutzer sich schnell in die Pakete einarbeiten. So wird auch ein mechanischer Integrator ohne Expertenkenntnisse in der Programmierung mit ROS dazu befähigt, seine Roboterapplikation individuell einzurichten. Das kann beispielsweise für kleine und mittelständische Unternehmen interessant sein, die Roboter einsetzen möchten, um den Automatisierungsgrad in ihrer Fertigung zu erhöhen. Mit ROS wird zudem die Umsetzung von Roboterapplikationen wie Palettieren, Conveyor Tracking oder auch eine kamerabasierte Objekterkennung möglich.

Für Anwender, die die speziellen Programmiersprachen aus der Industrie nach EN 61131 nicht kennen, ist es zudem von Vorteil, dass ROS-Pakete unter anderem mit der Programmiersprache Python realisierbar sind. Eine Python Programmierschnittstelle ermölgicht zudem die Verwendung der MoveIt!-Schnittstelle – einem Tool zur Bahn- und Bewegungsplanung. MoveIt! plant anhand eines Umgebungsmodells und der Zielposition die Bahn des Manipulators. Pilz stellt dort die Roboterkinematik bereit, damit die konkrete Anwendung des Manipulators im 3D-Visualisierungs-Tool RViz oder in einer Simulationsumgebung wie Gazebo modelliert werden kann. Damit spart der Anwender Zeit und Kosten bei einer virtuellen Inbetriebnahme des realen Roboters.

Anwender können mit den Service-Robotik-Modulen von Pilz ihre individuelle Service-Robotik-Applikation zusammenstellen. © Pilz

Open Source birgt auch Herausforderungen: Grundsätzlich kommen ROS-Pakete innerhalb der Community von unterschiedlichen Autoren. Deshalb reicht die Qualität der Pakete von undokumentierten Bausteinen bis zu professionellen und qualitativ hochwertigen Projekten. Ein hoher Qualitätsstandard seiner ROS Module ist Pilz sehr wichtig, deshalb wird die Software nach den industriellen Qualitätskriterien und Anforderungen des ROS Industrial Consortiums entwickelt und getestet. Hochwertige ROS-Pakete erleichtern für den Anwender die Systemintegration, da die Pakete gut dokumentiert sind und unterstützende Tutorials zur Verfügung gestellt werden.

Das ROS Industrial Consortium ist ein Zusammenschluss von Industrieunternehmen, die ROS für Anwendungen in der Industrie einsetzen und fördern wollen. Die Initiative zählt weltweit rund 65 Mitglieder vom Startup bis zum Konzern und von Forschungseinrichtungen bis zum industriellen Endanwender. In Europa werden die Aktivitäten vom Fraunhofer IPA koordiniert. Zu den Aktivitäten zählt beispielsweise das Forschungsprojekt Easy Cohmo (Ergonomics Assistance Systems for Contactless Human-Machine-Operation), in dessen Rahmen Fraunhofer IPA gemeinsam mit Pilz und weiteren Verbundpartnern eine gestengesteuerte Programmierung entwickelt.

Dr. Manuel Schön, Product Management Controller bei Pilz / ag

Hannover Messe, Halle 9, Stand D17

Anzeige

Das könnte Sie auch interessieren

Anzeige

Safety

Sicherheitslösungen für Roboter

Mit Safety-Option Melfa Safe Plus II von Mitsubishi Electric kann die Geschwindigkeit eines Roboters gesteuert werden. So können Taktzeiten erhöht und der Arbeitsabstand zwischen Mensch und Roboter verringt werden.

mehr...
Anzeige
Anzeige

Robotersteuerung

Mobile Roboterflotten einfach steuern

Mobile Roboter transportieren in der Produktion unterschiedlichste Güter autonom von A nach B. Damit das reibungslos funktioniert, bringt der Hersteller von mobilen Robotern MiR eine neue Version seines Steuerungssystem MiR Fleet auf den Markt.

mehr...
Anzeige
Anzeige
Anzeige
Anzeige

Newsletter bestellen

Immer auf dem Laufenden mit dem SCOPE Newsletter

Aktuelle Unternehmensnachrichten, Produktnews und Innovationen kostenfrei in Ihrer Mailbox.

AGB und Datenschutz gelesen und bestätigt.
Zur Startseite