Thema des Projekts
Steuerung mobiler Roboter im vermischten Windows-Linux Netzwerk über ROS-Middleware
Kontext
AMFIS (Aufklärung mit mobilen und ortsfesten Sensoren im Verbund) ist eine mobile Bodenkontrollstation zur Überwachung und Steuerung von diversen Sensorträgern und Sensorknoten. Mit AMFIS können verschiedene Typen von unbemannten Boden-, Luft- und Unterwasserfahrzeugen, die mit Kameras und anderen Sensoren ausgerüstet sind, miteinander verbunden werden, Informationen austauschen und von der Bodenkontrollstation aus gesteuert werden. AMFIS wird ständig verbessert und erweitert, um neue Sensoren, Sensorträger und Kommunikationssysteme (drahtgebunden und drahtlos) zu integrieren. In diesem Projekt sollen die Studierenden eine Lösung entwickeln, die es dem System ermöglicht, Befehle an ROS-basierte mobile Roboter oder UAVs zu senden und Informationen von diesen zu empfangen. ROS (Robot Operating System) ist ein Open-Source-Softwareprojekt, das die Entwicklung von Roboteranwendungen erleichtert.
Projektziele
Das Hauptziel des Projekts ist es, eine Lösung für die Integration von mobilen ROS-Robotern in das AMFIS-System vorzuschlagen und zu entwickeln. Bis zum Ende des Projekts sollte das AMFIS-System zumindest in der Lage sein, Bewegungsbefehle an die Roboter zu senden und ihre Position und andere Statusinformationen zu empfangen. Die implementierte Lösung sollte erweiterbar sein und im Laufe der Zeit das Hinzufügen neuer Nachrichten ermöglichen.
Inhalt:
- Identifizierung von Informationen und Befehlen, die zwischen AMFIS und einem ROS-Roboter ausgetauscht werden sollten
- Konvertierung zwischen AMFIS- und ROS-Meldungen
Einrichtung eines Testbeds zur Bewertung des Fortschritts und der Ergebnisse - Entwicklung einer Lösung, um die Kommunikation zwischen beiden Systemen unter Windows und Linux zu ermöglichen
- Tests auf einem realen System
Wenn bald gute Ergebnisse erzielt werden, können Erweiterungen die Hinzufügung von Kommunikationsprimitiven zur Steuerung einiger Sensoren und Aktoren des Roboters und zum Empfang von Live-Streaming-Video umfassen.
Voraussetzungen
- Gutes Niveau der englischen Sprache.
- Kenntnisse der Programmiersprache C/C++/C# werden empfohlen
Organisatorisches
In Praxis der Softwareentwicklung (PSE) wird ein vollständiges Softwareprojekt nach dem Stand der Softwaretechnik in einem Team mit 5 bis 6 Teilnehmern durchgeführt. Ziel ist es insbesondere, Verfahren des Software-Entwurfs und der Qualitätssicherung praktisch einzusetzen, Implementierungskompetenz umzusetzen, und arbeitsteilig im Team ein Projekt gemeinsam zu bearbeiten und zu kooperieren.
Prüfung
Die Erfolgskontrolle erfolgt nach § 4 Abs. 2 Nr. 3 SPO als benotete Erfolgskontrolle anderer Art. Die Artefakte werden separat benotet, die Anteile an der Gesamtnote ergeben sich nach folgendem Schema:
- Pflichtenheft 10%
- Entwurf 30%, Implementierung 30%
- Qualitätssicherung 20%
- Abschlusspräsentation 10%
Arbeitsweise
Um einen reibungslosen Ablauf des Veranstaltung zu gewährleisten und um ein Zusammenarbeit zwischen Forschungs- und Lehrbetrieb zu ermöglichen, sind die Studierenden aufgefordert eigenständig zu arbeiten und den Arbeitsfortschritt regelmäßig zu kommunizieren.
Dazu gehört u.a.:
- Regelmäßige Projektteamtreffen zur Besprechung von Problemen und Aufgaben
- Rechtzeitige Ausarbeitung der abzugebenden Dokumente, wie z.B. Pflichtenheft, Entwurfsdokumentation, Implementierungsplan, etc. Die Dokumente sollten den Betreuern rechtzeitig vorab in einer Entwurfsversion zur Verfügung gestellt werden.
- Bereitstellung eines Versionsverwaltungssystems (z.B. Subversion, git, Mercurial) für die Versionskontrolle der Entwicklungsartefakte (Modelle, Quellcode, Konfiguration, Berichte, etc.)
Die Veranstaltung gliedert sich insgesamt in fünf Phasen. Jede Phase wird durch ein Kolloquium abgeschlossen, in dem die Gruppen ihre Ergebnisse vorstellen.
Hinweis
Da das Werk ggf. vom Fraunhofer IOSB ganz oder in Teilen genutzt werden wird, ist eine Lizenzregelung notwendig, die dem Fraunhofer IOSB uneingeschränkte Nutzungsrechte einräumt.
Betreuer am Fraunhofer IOSB:
- Eduard Santamaria
- Igor Tchouchenkov