Implementierung einer Lokalisierungs- und Kartierungssoftware unter Verwendung einer mobilen Roboterplattform mit Ultraschallsensoren

Jan Zimon | Robin Justinger - Sommersemester 2022

Modifizierter iPad-Roboter mit zwei Ultraschallsensoren, Encodermotoren und Bluetooth-Modul.
Abbildung 1: Modifizierter iPad-Roboter mit zwei Ultraschallsensoren, Encodermotoren und Bluetooth-Modul.

Die möglichen Anwendungsgebiete für mobile Roboter sind in den letzten Jahren stark gewachsen. Eine wichtige Voraussetzung für einen reibungslosen und sicheren Einsatz mobiler Roboter ist die Erfassung der Umgebung und die Lokalisierung des Roboters innerhalb dieser Umgebung. SLAM (Simultaneous Localization And Mapping) bezeichnet eine Sammlung von Verfahren zur Lösung dieser Aufgabe.

Im Rahmen dieser Arbeit wurde einer der iPad-Roboter des Labors für Angewandte Informationstechnik so modifiziert, dass die Anwendung von SLAM-Algorithmen möglich ist. Dazu wurden die Antriebsmotoren durch Encodermotoren ersetzt, welche Daten über die gefahrene Distanz zurückgeben können. Zusätzlich wurde ein Servomotor ergänzt, auf dem zwei um 180° versetzte Ultraschallsensoren angebracht sind, die mithilfe des Servomotors die Abstände in fast allen Raumrichtungen messen können. Hinzu kommt noch ein Bluetooth-Modul, um die Verbindung zu einem Bluetooth-fähigen Windows-PC herzustellen.

Die für Windows entwickelte Software kann eine Bluetooth-Verbindung zum Roboter herstellen und Daten mit ihm austauschen. Es können Steuerbefehle gesendet sowie Motor- und Ultraschalldaten empfangen werden. Diese Daten werden in der in Python realisierten Software verarbeitet, um daraus die gefahrene Distanz und Richtung des Roboters sowie die erkannten Hindernisse oder Wände um den Roboter herum zu berechnen. Diese verarbeiteten Daten können als Input für SLAM-Algorithmen verwendet werden. Im Rahmen dieser Arbeit wurden ein EKF-SLAM- (Extended Kalman Filter SLAM) und ein Graph-based SLAM-Algorithmus implementiert. Die Ergebnisse davon werden als Plot dargestellt und nach jedem neuen Messschritt aktualisiert. Es ist möglich, Messungen als csv-Datei aufzunehmen um die Berechnungen später, ohne Roboter, erneut durchführen zu können.

Die Ergebnisse der implementierten SLAM-Algorithmen variieren stark. Die Berechnungen des EKF-SLAM sind unbrauchbar, was zum Teil auf die schlechte Qualität der Ultraschalldaten und zum Teil auf Details des Algorithmus zurückzuführen ist. Die Ergebnisse des Graph-based SLAM weisen eine starke Ähnlichkeit zu den ursprünglichen Daten auf. Dabei ist eine Ähnlichkeit zum realen Testraum erkennbar, allerdings kann auch hier nicht von einer korrekten Darstellung des Testraums gesprochen werden.

Infos zum Projekt

Studierende Jan Zimon, Robin Justinger    
Semester Sommersemester 2022    
Studiengang Elektromobilität (B.Eng.), Elektrotechnik (M.Sc.)    
Art der Arbeit Abschlussarbeit Bachelor, Teamprojekt im Master    
SLAM-Problem: Die Position des Roboters wird falsch geschätzt, wodurch auch die Landmarkenpositionen falsch geschätzt werden.
Abbildung 2: SLAM-Problem: Falsche Einschätzung der Roboterposition, wodurch auch die Landmarkenpositionen falsch geschätzt werden. Quelle: https://www.semanticscholar.org/paper/Clustering-Based-Loop-Closure-Technique-for-2D-on-Ravankar-Kobayashi/984317e7cf19959d236fec9880673880d7f63c0b
Benutzeroberfläche des entwickelten Programms. Links wird der berechnete Plot ausgegeben, rechts befinden sich die verschiedenen Buttons zur Bedienung des Programms und zur Steuerung des Roboters.
Abbildung 3: Benutzeroberfläche des entwickelten Programms. Links wird der berechnete Plot ausgegeben, rechts befinden sich die verschiedenen Buttons zur Bedienung des Programms und zur Steuerung des Roboters.
back-to-top nach oben