HNI Logo
Web Service-Schnittstellen für mobile, autonome Roboter

Motivation

Ein Web Service ist eine Anwendung, die es seinen Nutzern erlaubt, über das Netzwerk und durch offene, standardisierte Schnittstellen auf seine Funktionalität zuzugreifen. Ein Vorteil von Web Services ist deren Interoperabilität. Die Funktionalität eines Web Services kann unabhängig von Ort, Plattform und Programmiersprache genutzt werden. Autonome mobile Roboter besitzen die Fähigkeit, die reale Welt wahrzunehmen und physikalisch mit ihr zu interagieren. Diese Fähigkeit zur physikalischen Manipulation würde die Funktionalität von Web Services fundamental erweitern. Auf der anderen Seite könnte durch die Ausstattung von mobilen autonomen Robotern mit Web Service-Schnittstellen eine standardisierte Möglichkeit des weltweiten Zugriffs auf die Roboter geschaffen werden.

In diesem Projekt untersuchen wir die Eignung der Web Service-Standards für die Nutzung von mobilen autonomen Robotern. Als Projektergebnis ermöglichen wir den Zugriff auf einen Roboter über eine Web Service-Schnittstelle. Dieses Projekt ist eine Kooperation mit dem C-LAB.

Systemarchitektur unserer Lösung

Implementierung

gSOAP ist eine Open Source Entwicklungsumgebung für Web Services. Wir verwenden diese Umgebung, da sie unsere Anforderungen für eine Implementierung von Web Service-Schnittstellen auf Roboterplattformen erfüllt. Sie unterstützt reines C und generiert kleinen Code. Weiterhin kann die Transportschicht flexibel angepasst und durch roboterspezifische Transportschichten ersetzt werden. Die Kompression von XML-Daten wird unterstützt, so dass das Nachrichtenaufkommen reduziert wird, was besonders in drahtlosen Roboternetzwerken wichtig ist. Schließlich ist der Source Code frei verfügbar, so dass es an spezifische Roboterplattformen angepasst werden kann.

Wir verwenden den Khepera Roboter als Basisplattform für unsere Implementierung. Es ist eine mobile, autonome und flexible Plattform. Das modulare Konzept des Kheperas ermöglicht es, die Basiskonfiguration des Roboters durch weitere Hardware-Module zu erweitern. In diesem Projekt verwenden wir das Basismodul des Kheperas mit einem zusätzlichen Bluetooth-Modul, das in unserer Fachgruppe entwickelt wurde. Weiterhin haben wir in der Fachgruppe die Telewerkbank entwickelt, eine Entwicklungs- und Testumgebung für mobile autonome Roboter. Ein Video des Operationsgebiets kann in Echtzeit über das Internet zur Verfügung gestellt werden. Diese Funktionalität wird verwendet, um dem menschlichen Benutzer visuelle Rückmeldungen seiner Kommandos an die Roboter zur Verfügung zu stellen.

Screenshot der Benutzerschnittstelle

Aufgrund der verwendeten Standards und der Charakteristiken des Internets sind Web Services nicht geeignet für eine harte Echtzeitsteuerung von Robotern. Die verwendeten Protokolle sind nicht echtzeitfähig und die unbestimmte Latenz von Internetverbindungen verhindern eine ständige direkte Kontrolle des Roboters. Daher erfordert die Fernsteuerung durch Web Services einen gewissen Grad an Autonomie von den Robotern. Autonomie ist ebenfalls notwendig, da letztendlich nur die Roboter selbst ihre Umwelt und aktuelle Situation vollständig erfassen und die Gültigkeit und Sicherheit übermittelter Kommandos verifizieren können. Folglich werden hier - in Abhängigkeit von den Erweiterungsmodulen die der Roboter trägt - für die Bedienung eine Anzahl grundlegender, modularer Kommandos zur Kontrolle des Roboters zur Verfügung gestellt.

In unserer Lösung verwenden wir eine auf den Khepera portierte gSOAP Engine. Der Server leitet die aus dem Internet eintreffenden Kommandos über eine Funkverbindung an den Roboter weiter. Der Roboter ist ein vollständiger Web Service und alle diesbezüglich erforderlichen Verarbeitungen erfolgen auf dem Roboter selbst.

Kontakt

 Dipl.-Ing. Jia Lei Du

Telefon: +49 (0) 5251 | 60-6488

Telefax:  +49 (0) 5251 | 60-6351



Nach oben