AADL zur Modellierung, Analyse und Code-Generierung für ROS2-Architekturen

Conference: AALE 2019 - 16. Fachkonferenz "Autonome und intelligente Systeme in der Automatisierungstechnik"
02/28/2019 - 03/01/2019 at Heilbronn, Deutschland

Proceedings: AALE 2019

Pages: 8Language: germanTyp: PDF

Personal VDE Members are entitled to a 10% discount on this title

Authors:
Zabiensky, Florian von; Kreutzer, Michael; Bienhaus, Diethelm (Technische Hochschule Mittelhessen, Gießen, Deutschland)

Abstract:
Das Robot Operating System (ROS) ist ein Framework zur Entwicklung von Roboter-Systemen. Es wird durch die Open Source Robotics Foundation4 verwaltet sowie entwickelt. Durch ROS werden verschiedene Entwicklungsbestandteile bereitgestellt. Ein Roboter-System besteht in ROS aus verschiedenen Modulen (Knoten), die eine klar definierte Schnittstelle aufweisen. Die Schnittstelle ist dabei sowohl über ihren Kommunikationsmechanismus (Publish/Subscribe, Service) als auch einen Nachrichteninhalt definiert. Bedingt durch wechselnde Anforderungen an die Einsatzgebiete von ROS wurde 2007 die Entwicklung von ROS2 gestartet. Hier gibt es aktuell keine einheitliche Methode, die Architektur eines verteilten Systems mit ROS2 zu beschreiben, was die Software-Qualität und Dokumentation der ROS2 Pakete deutlich steigern kann. In dieser Arbeit wird für die Beschreibung der Knoten eines Systems und deren Zusammenhänge, die Architecture Analysis and Design Language (AADL) vorgeschlagen. In Bild 1 ist beispielhaft eine Architektur mit 4 Prozessen, in denen 5 Knoten interagieren, durch eine grafische Repräsentation von AADL dargestellt. AADL ist eine Sprache, um Architekturen für Eingebettete Systeme mit Echtzeitanforderungen formal zu beschreiben. Dies ermöglicht verschiedene Analysen auf einem Architekturmodell durchzuführen und somit frühzeitig Fehler in der Architektur zu identifizieren. Dies können Fehler wie z. B. eine zu hohe Busauslastung oder nicht eingehaltenen Deadlines im Echtzeitverhalten sein. Besonders durch die Anforderung an ROS2, auch direkt in Eingebetteten Systemen integriert zu werden, bietet sich AADL als Architektur-Beschreibungssprache an.