1 research outputs found

    Semantic Plug & Play - Selbstbeschreibende Hardware für modulare Robotersysteme

    Get PDF
    Moderne Robotersysteme bestehen aus einer Vielzahl unterschiedlicher Sensoren und Aktuatoren, aus deren Zusammenwirken verschiedene Fähigkeiten entstehen und nutzbar gemacht werden. So kann ein Knickarmroboter über die koordinierte Ansteuerung mehrerer Motoren Gegenstände greifen, oder ein Quadrocopter über Sensoren seine Lage und Position bestimmen. Eine besondere Ausprägung bilden modulare Robotersysteme, in denen sich Sensoren und Aktuatoren dynamisch entfernen, austauschen oder hinzufügen lassen, wodurch auch die verfügbaren Fähigkeiten beeinflusst werden. Die Flexibilität modularer Robotersysteme wird jedoch durch deren eingeschränkte Kompatibilität begrenzt. So existieren zahlreiche proprietäre Systeme, die zwar eine einfache Verwendung ermöglichen aber nur auf eine begrenzte Menge an modularen Elementen zurückgreifen können. Open-Source-Projekte mit einer breiten Unterstützung im Hardwarebereich, wie bspw. die Arduino-Plattform, oder Softwareprojekte, wie das Robot Operating System (ROS) versuchen, eine eben solch breite Kompatibilität zu bieten, erfordern allerdings eine sehr ausführliche Dokumentation der Hardware für die Integration. Das zentrale Ergebnis dieser Dissertation ist ein Technologiestack (Semantic Plug & Play) für die einfache Dokumentation und Integration modularer Hardwareelemente durch Selbstbeschreibungsmechanismen. In vielen Anwendungen befindet sich die Dokumentation üblicherweise verteilt in Textdokumenten, Onlineinhalten und Quellcodedokumentationen. In Semantic Plug & Play wird ein System basierend auf den Technologien des Semantic Web vorgestellt, das nicht nur eben solch vorhandene Dokumentationen vereinheitlicht und kollektiviert, sondern das auch durch eine maschinenlesbare Aufbereitung die Dokumentation in der Prozessdefinition verwendet werden kann. Eine in dieser Dissertation entwickelte Architektur bietet für die Prozessdefinition eine API für objektorientierte Programmiersprachen, in der abstrakte Fähigkeiten verwendet werden können. Mit einem besonderen Fokus auf zur Laufzeit rekonfigurierbare Systeme können damit Fähigkeiten über Anforderungen an aktuelle Hardwarekonfigurationen ausgedrückt werden. So ist es möglich, qualitative und quantitative Eigenschaften als Voraussetzung für Fähigkeiten zu definieren, die erst bei einem Wechsel modularer Hardwareelemente erfüllt werden. Diesem Prinzip folgend werden auch kombinierte Fähigkeiten unterstützt, die andere Fähigkeiten hardwareübergreifend für ihre intrinsische Ausführung nutzen. Für die Kapselung der Selbstbeschreibung auf einzelnen Hardwareelementen werden unterschiedliche Adapter in Semantic Plug & Play unterstützt, wie etwa Mikrocontroller oder X86- und ARM-Systeme. Semantic Plug & Play ermöglicht zudem eine Erweiterbarkeit zu ROS anhand unterschiedlicher Werkzeuge, die nicht nur eine hybride Nutzung erlauben, sondern auch die Komplexität mit modellgetriebenen Ansätzen beherrschbar machen. Die Flexibilität von Semantic Plug & Play wird in sechs Experimenten anhand unterschiedlicher Hardware illustriert. Alle Experimente adressieren dabei Problemstellungen einer übergeordneten Fallstudie, für die ein heterogener Quadrocopterschwarm in hochgradig dynamischen Szenarien eingesetzt und gezielt rekonfiguriert wird
    corecore