Partikelfilter SLAM für ein AMR: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Zeile 50: Zeile 50:


== Zusammenfassung ==
== Zusammenfassung ==
SLAM ist ein Verfahren, welches das Kartierungs- und Lokalisationsproblem lösen soll. Dies bedeu-tet die gleichzeitige Lokalisierung und Kartenerstellung. Hierbei werden Lokalisation und Kartierung im Laufe der Zeit, bis zu einem bestimmten Grad immer besser. Dieser Grad ist abhängig vom ver-wendeten Verfahren, der verwendeten Aktorik, Sensorik und der Parametrisierung des Algorith-mus.
<br>


Es wird eingesetzt, um die Ungenauigkeit der Odometrie über bspw. Hallsensoren und oder Gierra-te auszugleichen, welche mit zunehmender Zeit zu einer stetig steigenden Ungenauigkeit der Loka-lisierung führt. Hierdurch kann einerseits keine akkurate Umgebungskarte erstellt werden und andererseits auch keine Navigation vorgenommen werden, da für beide Fälle eine ausrechend genaue Kenntnis der aktuellen Position und Ausrichtung des Roboters vorhanden sein muss. Das Ziel des SLAM-Verfahrens ist es hierbei, die maximale Abweichung der Lokalisierung auf einen fes-ten Bereich zu beschränken, der über die gesamte Zeit gleichbleibt. Hierdurch kann eine Navigation und Kartenerstellung ermöglicht werden, da die maximale Ungenauigkeit auf ein akzeptierbares Niveau eingestellt werden kann.
<br>
Es gibt verschiedene SLAM-Arten wie: EKF-SLAM oder Graph-SLAM. In dieser Arbeit wurde die Partikelbasierten SLAM-Verfahren FastSLAM1.0 und 2.0 behandelt. Sie zeichnen sich durch eine bessere Effizienz und Stabilität im Vergleich zu anderen SLAM-Verfahren aus. Hierbei gibt es zwei Arten: known und unknown Data Association. Erstere ist geeignet, um eingesetzt zu werden, wenn eine ausreichend genaue Karte der Umgebung existiert, die zur Navigation genutzt werden soll. Zweitere wird verwendet, wenn noch keine Karte bekannt ist und diese erst im Laufe des Verfah-rens ermittelt wird. Die Kartenerstellung ist nur erfolgreich, wenn die Umgebung genügend undy-namischer Elemente enthält. Während sich bspw. Menschen in einem Park oder einem Einkaufs-zentrum sukzessive aus der Karte eliminieren, werden bspw. Bäume oder auch Regale oder Möbel dauerhaft festgehalten. Hierbei verliert die Karte an Aussagekraft, je mehr dieser Elemente ver-schwinden, d.h. wenn Möbel umgestellt oder Bäume gefällt werden.
<br>
Es gibt zwei Arten der Implementation: Landmarken und Belegtheitsrasterkarte (Occupancy Grid Mapp). Erstere stellt Objekte als einen oder mehrere Koordinatenpunkte dar und ist somit Spei-cher- und Bearbeitungsärmer und gut zur Outdoornavigation geeignet. Um hierbei eine Rasterkar-te zu erstellen, muss die erstellte Landmarkenkarte nachbehandelt werden. Hierbei ist eine sehr feine Markenauflösung von Nöten, die durch einen besseren Sensor, wie Mess- und Stellgenauig-keit, Gradauflösung und oder Rotationsgeschwindigkeit ermöglicht wird. Die Belegtheitsrasterkar-tenimplementation erstellt hierbei eine rasterkartenbasierte Karte der Umgebung, welche keine Nachbehandlung benötigt. Sie ermöglicht eine sehr einfache Navigation, ist jedoch Speicher und Rechenaufwendiger und bedarf mehr Durchläufe, um ein akkurates Ergebnis zu erzielen. Zudem ist diese Variante eher für Indooranwendungen geeignet, da her die räumliche Ausdehnung begrenzt ist und mehr signifikante Informationen wie Wände, Schränke, Stühle usw. vorhanden sind, welche in einem Park fehlen der nur spärliche Informationen bereitstellt durch bspw. einer Handvoll Bäu-me und offener Fläche.
<br>
FastSLAM 2.0 unterscheidet sich von 1.0 in der Art der Landmarkenschätzung. Während FastSLAM 1.0 eine einfache Posenschätzung der neuen Partikelpose vornimmt und daraufhin die Messung abgleicht, versucht FastSLAM 2.0 die Pose unter allen möglichen neuen Posen zu finden, von der aus unter Berücksichtigung der Messungenauigkeit eine Landmarke am eindeutigsten gesehen werden kann. Hierdurch wird die Gewichtungsberechnung und die Posenschätzung der tatsächli-chen Roboterpose verbessert.
<br>
Das Resultat des Verfahrens kann durch Verbessern der Aktorgenauigkeit oder des Lidarsensors im Sinne der Mess- und Positionierungsgenauigkeit, der Rotationsgeschwindigkeitserhöhung und der Gradauflösung verbessert werden.


== Projektunterlagen ==
== Projektunterlagen ==

Version vom 24. Juli 2023, 19:47 Uhr

Autor: Benjamin Dilly
Art: Projektarbeit
Geplanter Start: 20.02.2023
Betreuer: Prof. Schneider


Aufgabenstellung

  1. Recherche zur Partikelfilter SLAM Verfahren (Quelle: Probabilistic robotics von Sebastian Thrun)
  2. Detaillierte Erläuterung des FastSLAM 2.0
  3. Umsetzung in MATLAB auf Basis bestehender Simulationen
  4. Entwicklung von Gütekriterien
  5. Bewertung der Vor- und Nachteile anhand der Gütekriterien
  6. Dokumentation nach wissenschaftlichem Stand im HSHL-Wiki

Anforderungen an die wissenschaftliche Arbeit

SVN-Repositorium

Link: TBD


Getting Started

Nutzen Sie diese Artikel, um sich in das Thema einzuarbeiten:

Einstiegvideos

Zusätzliche Verständnisvideos

Projektplan

Zusammenfassung

SLAM ist ein Verfahren, welches das Kartierungs- und Lokalisationsproblem lösen soll. Dies bedeu-tet die gleichzeitige Lokalisierung und Kartenerstellung. Hierbei werden Lokalisation und Kartierung im Laufe der Zeit, bis zu einem bestimmten Grad immer besser. Dieser Grad ist abhängig vom ver-wendeten Verfahren, der verwendeten Aktorik, Sensorik und der Parametrisierung des Algorith-mus.

Es wird eingesetzt, um die Ungenauigkeit der Odometrie über bspw. Hallsensoren und oder Gierra-te auszugleichen, welche mit zunehmender Zeit zu einer stetig steigenden Ungenauigkeit der Loka-lisierung führt. Hierdurch kann einerseits keine akkurate Umgebungskarte erstellt werden und andererseits auch keine Navigation vorgenommen werden, da für beide Fälle eine ausrechend genaue Kenntnis der aktuellen Position und Ausrichtung des Roboters vorhanden sein muss. Das Ziel des SLAM-Verfahrens ist es hierbei, die maximale Abweichung der Lokalisierung auf einen fes-ten Bereich zu beschränken, der über die gesamte Zeit gleichbleibt. Hierdurch kann eine Navigation und Kartenerstellung ermöglicht werden, da die maximale Ungenauigkeit auf ein akzeptierbares Niveau eingestellt werden kann.

Es gibt verschiedene SLAM-Arten wie: EKF-SLAM oder Graph-SLAM. In dieser Arbeit wurde die Partikelbasierten SLAM-Verfahren FastSLAM1.0 und 2.0 behandelt. Sie zeichnen sich durch eine bessere Effizienz und Stabilität im Vergleich zu anderen SLAM-Verfahren aus. Hierbei gibt es zwei Arten: known und unknown Data Association. Erstere ist geeignet, um eingesetzt zu werden, wenn eine ausreichend genaue Karte der Umgebung existiert, die zur Navigation genutzt werden soll. Zweitere wird verwendet, wenn noch keine Karte bekannt ist und diese erst im Laufe des Verfah-rens ermittelt wird. Die Kartenerstellung ist nur erfolgreich, wenn die Umgebung genügend undy-namischer Elemente enthält. Während sich bspw. Menschen in einem Park oder einem Einkaufs-zentrum sukzessive aus der Karte eliminieren, werden bspw. Bäume oder auch Regale oder Möbel dauerhaft festgehalten. Hierbei verliert die Karte an Aussagekraft, je mehr dieser Elemente ver-schwinden, d.h. wenn Möbel umgestellt oder Bäume gefällt werden.

Es gibt zwei Arten der Implementation: Landmarken und Belegtheitsrasterkarte (Occupancy Grid Mapp). Erstere stellt Objekte als einen oder mehrere Koordinatenpunkte dar und ist somit Spei-cher- und Bearbeitungsärmer und gut zur Outdoornavigation geeignet. Um hierbei eine Rasterkar-te zu erstellen, muss die erstellte Landmarkenkarte nachbehandelt werden. Hierbei ist eine sehr feine Markenauflösung von Nöten, die durch einen besseren Sensor, wie Mess- und Stellgenauig-keit, Gradauflösung und oder Rotationsgeschwindigkeit ermöglicht wird. Die Belegtheitsrasterkar-tenimplementation erstellt hierbei eine rasterkartenbasierte Karte der Umgebung, welche keine Nachbehandlung benötigt. Sie ermöglicht eine sehr einfache Navigation, ist jedoch Speicher und Rechenaufwendiger und bedarf mehr Durchläufe, um ein akkurates Ergebnis zu erzielen. Zudem ist diese Variante eher für Indooranwendungen geeignet, da her die räumliche Ausdehnung begrenzt ist und mehr signifikante Informationen wie Wände, Schränke, Stühle usw. vorhanden sind, welche in einem Park fehlen der nur spärliche Informationen bereitstellt durch bspw. einer Handvoll Bäu-me und offener Fläche.

FastSLAM 2.0 unterscheidet sich von 1.0 in der Art der Landmarkenschätzung. Während FastSLAM 1.0 eine einfache Posenschätzung der neuen Partikelpose vornimmt und daraufhin die Messung abgleicht, versucht FastSLAM 2.0 die Pose unter allen möglichen neuen Posen zu finden, von der aus unter Berücksichtigung der Messungenauigkeit eine Landmarke am eindeutigsten gesehen werden kann. Hierdurch wird die Gewichtungsberechnung und die Posenschätzung der tatsächli-chen Roboterpose verbessert.

Das Resultat des Verfahrens kann durch Verbessern der Aktorgenauigkeit oder des Lidarsensors im Sinne der Mess- und Positionierungsgenauigkeit, der Rotationsgeschwindigkeitserhöhung und der Gradauflösung verbessert werden.

Projektunterlagen

Link zu dem SVN_Ordner des Projekt.

Weblinks

Literatur

S. Thrun und e. al., Probabilistic Robotics, Massachusetts: The MIT Press, 2006.



→ zurück zum Hauptartikel: Studentische Arbeiten