Verteilte Programmierung beim Schwarm-Client

Roboterplattform

Bild 04: Das ROS-Netzwerk für Roboterplattform. (Quelle: Siemens AG, Hochschule Ravensburg-Weingarten; Grafik: etz)

Die Applikation „Schwarm-Client“ nutzt die Möglichkeit der verteilten Programmierung unter Verwendung mehrerer „Nodes“. Die einzelnen „Nodes“ wurden in C++ und XML programmiert und umfassen folgende Funktionen (Bild 4): · Master Node: Registrierung der einzelnen „Nodes“ und Platzierung auf entsprechende Targets Simatic ET 200SP Open Controller PC2; NUC für Serveraufgaben und Raspberry PI für digitale Ein- und Ausgänge; Platzierung der einzelnen Messages (Übertragung der Steuerkom- mandos, Bahndaten für die Plattformen).

  • Server Nodes: Einlesen von Bahndaten, Steuerkommandos und Publizierung zu den einzelnen Clients; publish- Funktion.

  • Bis zu vier Client Nodes: Entgegennahme der Bahndaten vom Server Node; subscribe-Funktion.

  • Bis zu vier Client Nodes: Entgegennahme der Kontroll- kommandos, subscribe-Funktion.

  • Bis zu vier Client Nodes: Publizierung der Positionsdaten der Plattform als Odometriedaten; publish-Funktion.

Als Gast-System wird auf dem Simatic ET 200SP Open Controller PC2 die Linux-Distribution Ubuntu 16.04 eingesetzt. Diese Distribution erlaubt die Installation von ROS-Kinetic aus vorkompilierten Paketen. In der Test- und Erprobungsphase ist eine „Full-Desktop-Version“ empfeh- lenswert, da damit grafische Analyse- bzw. Diagnosewerkzeuge bereitstehen. In der Applikation „Schwarm-Client“ wurde die ROS-Distribution um verschiedene Pakete erweitert. Das „joy“-Paket übernimmt das Einlesen und Verarbeiten von Steuerdaten eines Joysticks zur manuellen Steuerung der Roboterplattform. Das „tf“-Paket ist für die Koordinatentransformation zwischen den Plattformen und Sensordaten verantwortlich. Das Paket „sensor_msgs“ überträgt und verarbeitet die Sensordaten.

Das Betriebssystem Ubuntu wurde dafür um eine CAN-Bus-Schnittstelle, die mittels eines Konverters (USB-CAN-Converter) über eine USB-Schnittstelle betrieben wird, sowie einen Wifi-Dongle für den Betrieb des Funk-Netzwerks zwischen den Roboterplattformen und dem Server erweitert.

Literatur

[1] Hochschule Ravensburg-Weingarten, Weingarten: www.hs-weingarten.de 

[2] Siemens AG, Nürnberg: www.siemens.de 

[3] Doroftei, I.; Grosu, V.; Spinu, V.: Omnidirectional Mobil Robot Design and Implementation. 9/2007. DOI: 10.5772/5518

[4] Open Source Robotics Foundation Inc.: www.ros.org

[5] Canonical Group Ltd.: www.ubuntu.com 

Prof. Dr.-Ing. Franz Brümmer, Hochschule Ravensburg-Weingarten., Dr.-Ing. Axel Buch, Siemens AG
6 / 6

Ähnliche Beiträge