Inbetriebnahme eines UR-10 Roboters mit ROS
Autor: Johannes Schäfer
Einleitung
Dieser Artikel soll als Anleitung dienen, um einen UR-10 Roboter mit Hilfe des Robot Operating Systems in Betrieb zu nehmen.
Was ist ROS?
Das ROS (Robot Operating System) stellt Bibliotheken und Werkzeuge zur Verfügung, welche Softwareentwicklern helfen Roboteranwendungen zu erstellen. Hardware Abstraktion, Gerätetreiber, Bibliotheken, Visualisierungen, Nachrichtenvermittlung, Packetverwaltung und andere Komponenten sind vorhanden. ROS fungiert dabei als Middleware, um die Kommunikation zwischen dem Roboter und einzelnen Nodes(Programmen), welche auf dem ROS laufen, zu ermöglichen. ROS ist unter der Open Source BSD Lizenz veröffentlicht.
Voraussetzungen
- Rechner mit mindestens Ubuntu 18.04 und Internetanbindung
- Polyscope 3.7 sowie zugehörige Firmware ist auf dem CB3-Controller des UR-10 installiert
- Vorkenntnisse im Umgang mit der Kommandozeile in Linux
Installation von ROS
Um den aktuellen Treiber für den UR-10 zu verwenden wird ROS Melodic benötigt. Die Installation ist hier beschrieben. Nach Schritt 1.4 kann man mit $roscore
den Kern des Systems einmal starten und überprüfen, ob die Installation erfolgreich war. Hat dies geklappt sollte dort started core service [/rosout]
im Terminal ausgegeben werden.
Der Treiber funktioniert ebenfalls mit ROS Kinetic und Noetic. Um jedoch auch die Unterstützung anderer Packages zu gewährleisten ist ROS Melodic im Moment die beste Wahl.
Installation des Universal Robots Treibers
Um diesen Treiber nutzen zu können muss, wie oben bereits beschrieben, mindestens Polyscope 3.7 auf dem CB3 Controller installiert sein. Die Installation des Treiber wird in dieser Readme-Datei erklärt. Auf den All-Source-Build ist nach Möglichkeit zu verzichten. Man sollte also die erste Option(die Installation über Binary Packages) bevorzugen. Es existiert ein Paket namens ur_gazebo, welches Funktionalitäten zur Simulation der UR-Roboter enthält. Diese Funktionalitäten sind jedoch in dem ur_robot_driver Package bereits enthalten, sodass dessen Installation ausreicht.
Einbindung der URCap-Datei
Um den UR-10 auch extern ansteuern zu können muss auf dem CB3-Controller eine URCap-Datei eingebunden werden, welche später auf dem Controller einfach als Bestandteil eines Programms aufgerufen werden kann. Wichtig ist, dass die Polyscopeversion nicht zu neu ist, da dadurch Fehler auftreten können. Die Einbindung der URCap-Datei wird hier erklärt.
Installation des RT-Kernels
Um auch in Echtzeit mit dem UR-10 interagieren zu können empfiehlt sich die Installation eines
Troubleshooting
Falls beim kompilieren eigener oder auch fremder Packages mit Catkin Probleme auftreten sollten helfen folgende Befehle:
cd catkin_ws/
rm -rf build/
rm -rf devel/
Anschließend sollte man noch catkin_make
und source devel/setup.bash
ausführen, um die /build und /devel Ordnerstruktur wieder neu zu generieren. Dadurch sollten die meisten Probleme beim kompilieren behoben werden.
Quellen
- [1] ROS Wiki