Objekterkennung mit RP Lidar A1M8
Autor: Thomas Miska
Betreuer: Prof. Schneider
Aufgabenstellung
- Einarbeitung in die bestehende Software
- Softwareentwurf in MATLAB
- Meilenstein 1:
- Ansteuerung des RP LiDAR A1M8
- Koordinatentransformation polar- zu karthesisch
- Testdokumentation der KOS-Trafo
- Objektbildung (z.B. Sukzessiv Edge Following)
- Testdokumentation der Objektbildung
- Meilenstein 2:
- Objekttracking (mit Kalman-Filter)
- Testdokumentation des Objekttrackings
- Attribute schätzen: v, a, B, T, Güte (s. Schnittstellendokument)
- Testdokumentation der Attribute mit Referenz
- Dokumentation im Wiki
- Softwareentwurf in C
- Meilenstein 3:
- Test der Kommunikation Kamera/LiDAR mit DS1104
- Testdokumentation
- Diagnoseseite in ControlDesk
- Darstellung der LiDAR-Objekte als XY-Plot und tabellarisch
- ggf. Fertigstellung der Kommunikation
- Meilenstein 4:
- Plausibilisierung der Messdaten (LiDAR, Kamera)
- Referenzmessungen
- Abschätzung der Güte der Spurerkennung und des Objekttrackings
- Dokumentation im Wiki
Softwareentwurf in MATLAB
Ansteuerung des RP LiDAR A1M8
Die Ansteuerung des RPLiDAR mit MATLAB Erfolgt in Verbindung mit einer SDK welche in C-Code geschrieben ist. Dieser Code ist in GitHub frei zugänglich. Der RPLiDAR liefert uns in diesem Fall folgende Messwerte:
- Radius
- Radiant
- Qualität
Die beiden anderen Messdaten konnten nicht spezifiziert werden.
- bNewScan
- Result
Die Verbindungsart beruht auf eine UART - Schnittstelle, die mithilfe eines Chips ermöglicht wird. Um den COM-Port zu definieren wird ein Textdokument zu Hilfe genommen, in es weitere Einstellungsmöglichkeiten gibt. Die Verwendung eines Textdokument liegt an daran, dass der C-Code ebenfalls darauf zugreift.
Koordinatentransformation polar- zu karthesisch
Um die Messwerte darstellen zu können bedarf es einer Umrechnung von Polarkoordinaten (Radius und Winkel in rad) in kartesische Koordinaten (x und y Koordinaten). Folglich wird folgende Formel verwendet:
Objektbildung
Es gibt mehrere Varianten eine Objektbildung durchzuführen. Für das Projekt jedoch wurde ein Successive Edge Following (SEF) Algorithmus verwendet. Dieser Code vergleich dabei nebeneinanderliegende (durch den Winkel) Radius-Messwerte miteinander und falls diese eine kleine Differenz aufweisen wird ein Segment gebildet.
Attribute
Softwareentwurf in C-Code
Test der Kommunikation Kamera/LiDAR mit DS1104
Diagnoseseite in ControlDesk
Plausibilisierung der Messdaten (LiDAR, Kamera)
Abschätzung der Güte der Spurerkennung und des Objekttrackings
Getting started
→ zurück zum Hauptartikel: SDE Praktikum Autonomes Fahren