SDE Systementwurf SoSe2025: Geregelte autonome Fahrt: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Lukas.berkemeier@stud.hshl.de (Diskussion | Beiträge)
 
(171 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Datei:Labor AS Arbeitsplaetze rechts.JPG|thumb|rigth|450px|Abb. 1: Autonome Fahrbahnvermessung im Labor Autonome Systeme]]
[[Datei:Labor AS Arbeitsplaetze rechts.JPG|thumb|rigth|450px|Abb. 1: Autonome Fahrbahnvermessung im Labor Autonome Systeme]]
[[Datei:ZeigeTopConMessung.jpg|thumb|rigth|450px|Abb. 1: Ergebnisdarstellung der Außenlinien]]
[[Datei:Laborteststrecke.jpg|thumb|rigth|450px|Abb. 2: Ergebnisdarstellung der Außenlinien]]
{|class="wikitable"
{|class="wikitable"
|-
|-
Zeile 15: Zeile 15:
| '''Lehrveranstaltung:''' || Praktikum Systementwurf
| '''Lehrveranstaltung:''' || Praktikum Systementwurf
|-
|-
| '''Sprint 1:''' || Autonome Fahrbahnvermessung
| '''Sprint 2:''' || Geregelte autonome Fahrt
|-
|-
| '''Zeit:''' || Dienstag, 08:15 - 10:30 Uhr, Selbstlernzeit: TBD
| '''Zeit:''' || Dienstag, 08:15 - 10:30 Uhr, Selbstlernzeit: TBD
Zeile 33: Zeile 33:
| 2 || Als Referenzmessystem kommt die [[Referenzmessung_mit_der_Topcon_Robotic_Total_Station|Topcon Robotic Total Station]] zum Einsatz.|| 1
| 2 || Als Referenzmessystem kommt die [[Referenzmessung_mit_der_Topcon_Robotic_Total_Station|Topcon Robotic Total Station]] zum Einsatz.|| 1
|-
|-
| 3 || Der AlphaBot kann entweder konstant die Referenzdaten verwenden oder diese als Stützung für die Ausfälle der Linienverfolgung nutzten. || 1
| 3 || Der AlphaBot muss entweder konstant die Referenzdaten verwenden oder diese als Stützung für die Ausfälle der Linienverfolgung nutzten. || 1
|-
|-
| 4 || Die Referenzwerte müssen mit MATLAB<sup>®</sup> aufgezeichnet werden (x, y, Farbe).|| 1
| 4 || Die Referenzwerte müssen mit MATLAB<sup>®</sup> aufgezeichnet werden (x, y, Farbe).|| 1
Zeile 47: Zeile 47:
| 9 || Nach Erstellen der digitalen Karte muss die Fahrt des AlphaBot in der Karte eingezeichnet werden. || 1
| 9 || Nach Erstellen der digitalen Karte muss die Fahrt des AlphaBot in der Karte eingezeichnet werden. || 1
|-
|-
| 9 || Als Vorbereitung für den Sprint 3 muss eine Kamerahaltung für die [[Kamerasensor_Pixy_Lego|Pixy2]] geplant, designed, gedruckt und getestet werden. || 1
| 10 || Als Vorbereitung für den Sprint 3 muss eine Kamerahaltung für die [[Kamerasensor_Pixy_Lego|Pixy2]] geplant, designed, gedruckt und getestet werden. || 1
|}
|}


= Getting Started =
= Getting Started =
[[Datei:Rundkurs mit Mittellinie.jpg|thumb|rigth|450px|Abb. 3: Rundkurs mit Solllinie (rote Mittellinie)]]
# Planung Gantt-Chart
# Planung Gantt-Chart
# Besprechung der Planung mit Prof. Schneider, Verabredung von Meilensteinen und der Abschlusspräsentation von Sprint 2
# Besprechung der Planung mit Prof. Schneider, Verabredung von Meilensteinen und der Abschlusspräsentation von Sprint 2
Zeile 57: Zeile 58:
# Positionsmessung des Fahrzeugs und Schätzung der Roboterpose <math>[x,y,\Psi]</math>.
# Positionsmessung des Fahrzeugs und Schätzung der Roboterpose <math>[x,y,\Psi]</math>.
# Eintragen der Roboterpose in der digitalen Karte.
# Eintragen der Roboterpose in der digitalen Karte.
# Verbinden Sie den AlphaBot via Bluetooth mit dem PC.
# Verbinden Sie den [[AlphaBot: Blootooth Verbindung zu MATLAB|AlphaBot via Bluetooth mit dem PC]].
# Steuern Sie die Antriebsräder vom PC aus via MATLAB an.
# Vergleich der Soll-/Istposition (ggf. mit Prädiktion). Bestimmen Sie die Regelabweichung e.
# Vergleich der Soll-/Istposition (ggf. mit Prädiktion)
# Senden Sie die Regelabweichung e an den AlphaBot.
# Geregelte Fahrt basierend auf der Regelabweichung.
# Regeln Sie den AlphaBot mit Ihrem PD-Regler aus Sprint 1.
# Optional: Inbetriebnahme AlphaBot Linienverfolger für durchgezogene Linie und Stützung währen des Ausfalls der Linie.
# Optional: Inbetriebnahme AlphaBot Linienverfolger für durchgezogene Linie und Stützung währen des Ausfalls der Linie.
# Senden Sie die Messwerte des Linienverfolgers an den PC.
# Messung und Speicherung der Mittelspur (Position, Farbe (s/w))
# Messung und Speicherung der Mittelspur (Position, Farbe (s/w))
# Bereinigung von Fehlern in der Karte
# Bereinigung von Fehlern in der Karte
# Ablage der vollständigen digitalen Karte als <code>.mat</code>-Datei.
# Ablage der vollständigen digitalen Karte als <code>Rundkurs_mit_Mittellinie.mat</code>-Datei.
# Messung einer Roboterbewegung und Anzeige auf der Karte.
# Messung einer Roboterbewegung und Anzeige auf der Karte.
# Test der Anforderungen und Dokumentation
# Test der Anforderungen und Dokumentation
Zeile 73: Zeile 75:


Hardware:
Hardware:
Computer
 
Bluetooth Dongle (zur Topcon Kommunikation)
*Computer
Bluetooth Dongle (zur Alphabot Ansteuerung)
*Bluetooth Dongle (zur Topcon Kommunikation)
Topcon Messstation
*Bluetooth Dongle (zur Alphabot Ansteuerung)
Alphabot mti Batterien inkl. Prismahalterung
*Topcon Messstation
*Alphabot mti Batterien inkl. Prismahalterung


Software:
Software:
Matlab - 2024b
*Matlab - 2024b
PAP - Designer
*Arduino IDE 2.3.4
*PAP - Designer
 
=Planung (Plan)=
Die Planung des Sprints Geregelte autonome Fahrt wird mit Hilfe des Kanban-Boards realisiert. Die Anforderungen werden dazu in eine geeignete Reihenfolge strukturiert und in mehrere Arbeitspakete aufgeteilt.
 
*Planung am Kanban-Board
 
*Positionserfassung mit der Topcon Robotic Total Station
**Inbetriebnahme der Referenzstation
**Schätzung der Roboterpose
**Gegebene Demo zur Messung benutzen
**Test -> Fahrweg in Karte einzeichnen
 
 
*AlphaBot via Bluetooth mit dem PC verbinden mit gegebener Deno BluetoothIO.m
*AlphaBot vom PC aus via Matlab ansteuern
 
 
*Meilenstein: Liveerfassung der Alphabotposition
 
 
*Meilenstein: Liveverarbeitung der übertragenen Daten der Topcon Station zur Regelung des AlphaBot
**Sollwert ist die Mittellinie
**Fahrtrichtung der Istposition ermitteln
**Istwert berechnen
**PD-Regelung zum nächstgelegenen Sollwertpunkt
 
 
*Meilenstein: Geregelte Ansteuerung des AlphaBot über Bluetooth via MATLAB


*Meilenstein: Mittelspur geregelt befahren, diese vermessen und in die Karte übertragen.
**Vermessung der Mittellinie - mit den Daten der IR-Sensoren am Arduino die Mittellinie aufnehmen
**Ablage der vollständigen digitalen Karte als .mat Datei




=Planung=
*Test der Anforderungen
Die Planung des Sprints Geregelte autonome Fahrt wird mit Hilfe des Kanban-Boards realisiert. Die Anforderungen werden dazu in eine geeignete Reihenfolge strukturiert und in mehrere Arbeitspakete aufgeteilt.
*Fehler in den Messwerten bereinigen
*Lösungsweg und Lösung im Wiki dokumentieren
*Vorbereitung für den Sprint 3
**Kamerahalterung für die Pixy2 Kamera planen, designen, drucken und testen


Planung am Kanban-Board
==Ziel-Zustand==
*Datenübertragung der Ist-Position des Prismas am Alphabot mit der Topcon Station über Bluetooth
*Regelabweichung (Distanz Alphabot zur Mittellinie) in Matlab berechnen und über Bluetooth an den Alphabot senden
*Regelabweichung über Bluetooth am Alphabot empfangen und weiterverwenden
*Regelung des Alphabot durch Topcon-Daten als Istwert und der vorgegebenen Mittellinie als Sollwert
*IR-Sensorwertaufnahme der realen Mittellinie (schwarz/weiß Erkennung)
*Abbildung der realen Mittellinie in der Karte
*Halterung für Pixy 2 Kamera entwerfen und drucken


=Umsetzung (Do)=
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
|<strong>Referenzmessung mit Topcon&thinsp;</strong>
|-
|
Positionserfassung mit der Topcon Robotic Total Station
Positionserfassung mit der Topcon Robotic Total Station
  Inbetriebnahme der Referenzstation
  Schätzung der Roboterpose
  Gegebene Demo zur Messung benutzen
  Test -> Fahrweg in Karte einzeichnen


Planung der Software AlphaBot ansteuern:
Benötigte Betriebsmittel:
  AlphaBot via Bluetooth mit dem PC verbinden
 
  AlphaBot vom PC aus via Matlab ansteuern
# Topcon Robotic Total Station - Koffer 1 - Topcon PS Series Power Station - Robotik Total PS-103A Referenzstation
# Topcon Robotic Total Station - Koffer 2 - Topcon RC-5 Remote Controlle - Prisma
# AlphaBot mit Prismahalterung
# Batterien des AlphaBot
# Bluetooth dongle (Verbindung mit der Topcon Station)
 
 
Software + Skripts:
 
# MATLAB<sup>®</sup> 2024b
# Arduino IDE 2.3.4
# trackePrisma.m
# Zeichne_in_Karte.m
# TopCon_Messung_250506_1129.mat (aufgenommene Messdaten)
# Fahrbahn_Autonome_Systeme.mat
 
 
Durchführung:
 
Schritt 1: Montage der Prismahalterung am AlphaBot
 
Schritt 2: Festschrauben des Topcon Prismas am Gewinde der Prismahalterung
 
Schritt 3: Inbetriebnahme der Topcon Messeinheit nach Anleitung: https://wiki.hshl.de/wiki/index.php/Referenzmessung_mit_der_Topcon_Robotic_Total_Station
 
Schritt 4: Topcon Messeinheit auf Gewünschte Position stellen und nach digitaler oder analoger Libelle ausrichten, sodass der Kreis bzw. die Luftblase exakt in der Mitte ist. In unserem Fall wurde die Messeinheit in der Mitte der Schleife              Aufgestellt. Position zum Punkt A - X: -2,68; Y: 4,23 . Position zum Punkt B - X: 2,58 Y: 2,17
 
Schritt 5: Das Prisma, ebenfalls nach Anleitung aus Schritt 3, Tracken
 
Schritt 6: Messdatenaufzeichnung mit D:\SVN\SDE_Praktikum_Trunk\_Semesterordner\SS2025\Sprint_2\m-files\trackePrisma.m
 
Test: Messdaten in aktuelle Karte einfügen mit: 'Zeichne_in_Karte.m'. Dafür wurde die aktuelle Karte 'Fahrbahn_Autonome_Systeme.mat' genutzt. Testmessung: 'TopCon_Messung_250506_1129.mat' testweise in die Karte eingefügt.
[[Datei:Topcon_Position.jpg|thumb|left|450px|Abb. 3: Position Topcon]]
|}
 
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
|<strong>Bluetoothverbindung mit Alphabot &thinsp;</strong>
|-
|
Bluetoothverbindung mit dem Alphabot über Matlab                                                                                                                                                                                             
 
Benötigte Betriebsmittel:
 
# AlphaBot
# Bluetoothmodul HC-05
# Jumperkabel Male/Female 4x
# USB-A auf Micro-USB Kabel
# Bluetooth dongle (Verbindung mit dem Alphabot)
 
 
Software + Skripts:
 
# MATLAB<sup>®</sup> 2024b
# Arduino IDE 2.3.4
# BluetoothIO.m
# Demo_SoftwareSerial.ino
 
 
Durchführung:


Planung der Software zur Vermessung der Mittellinie:


Meilenstein: Liveübertragung der AlphaBot Position
Schritt 1: HC-05 Bluetooth-Modul am Alphabot anschließen
    Test -> Fahrweg in Karte einzeichnen
*mit Jumperkabeln mit dem UART Kontaktblock am schmalen Ende des Alphabots verbinden [[Datei:BT-Modul_HC-05 am Alphabot.jpg|thumb|right|300px|Abb. 4: HC-05 Bluetooth-Modul am Alphabot]]


Meilenstein: Liveverarbeitung der übertragenen Daten der Topcon Station zur Regelung des AlphaBot
{| class="wikitable"
    Sollwert ist die Mittellinie
|+ style="text-align:left;"| Tabelle 2: Kontaktbelegung HC-05 Bluetooth-Modul (siehe Abb. 4)
    Fahrtrichtung der Istposition ermitteln
|-
    Istwert berechnen
! HC-05 !! Alphabot !! Farbe
    PD-Regelung zum nächstgelegenen Sollwertpunkt
|-
| VCC || Arduino 3,3 V (5 V ist am Alphabot falsch beschriftet) || orange
|-
| GND || Arduino GND || gelb
|-
| TXD || Arduino RX<-0, D0 || grün
|-
| RXD || Arduino TX->1, D1 || blau
|}


Meilenstein: Geregelte Ansteuerung des AlphaBot über Bluetooth via MATLAB
Schritt 2: HC-05 Bluetooth-Modul mit dem Computer koppeln
# "Bluetooth und andere Geräte" Einstellungen öffnen
# "[+] Bluetooth- oder anderes Gerät hinzufügen" anklicken
# HC-05 auswählen und mit Passwort: 1234 Verbinden


Ziel/Meilenstein: Mittelspur geregelt befahren, diese vermessen und in die Karte übertragen.
Schritt 3: Demo_SoftwareSerial.ino öffnen und auf den Alphabot hochladen
  Vermessung der Mittellinie - mit den Daten der IR-Sensoren am Arduino die Mittellinie aufnehmen
  Ablage der vollständigen digitalen Karte als .mat Datei


Test der Anforderungen
Schritt 4: Bluetooth.IO öffnen und starten
Fehler in den Messwerten bereinigen
|}
Lösungsweg und Lösung im Wiki dokumentieren


Vorbereitung für den Sprint 3
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
  Kamerahalterung für die Pixy2 Kamera planen, designen, drucken und testen
|<strong>Geregelte Fahrt auf der Mittellinie&thinsp;</strong>
|-
|
Geregelte Fahrt auf der Mittellinie


=Durchführung=
Benötigte Betriebsmittel:


=Kontrolle=
# AlphaBot mit Prismahalterung
# Batterien des AlphaBot
# Bluetoothmodul HC-05
# Jumperkabel Male/Female 4x
# USB-A uf Micro-USB Kabel
# Bluetooth dongle (Verbindung mit dem Alphabot(HC-05) und Topcon Station)
# Topcon Robotic Total Station - Koffer 1 - Topcon PS Series Power Station - Robotik Total PS-103A Referenzstation
# Topcon Robotic Total Station - Koffer 2 - Topcon RC-5 Remote Controlle - Prisma


=Dokumentation=
 
Nachfolgende Studenten müssen alles nachvollziehen können
Software + Skripts:
alle Details aufschreiben -> auf bestehende Artikel verweisen, vollständige Stückliste
 
auf alle Ergebnisse verweisen
# MATLAB<sup>®</sup> 2024b
# Arduino IDE 2.3.4
# trackePrismaSendeAlphaBot.m
# weisselinie_folgerBT.ino
 
 
Durchführung:
 
Schritt 1: "weisselinie_folgerBT.ino" auf den Alphabot hochgeladen
 
Schritt 2: Inbetriebnahme Topcon Station wie in Abschnitt "Referenzmessung mit Topcon" - https://wiki.hshl.de/wiki/index.php/Referenzmessung_mit_der_Topcon_Robotic_Total_Station
 
Schritt 3: "trackePrismaSendeAlphaBot.m" starten
 
Schritt 4: Mittellinie mit IR-Sensoren erkennen und in Karte einzeichnen
|}
 
=Test und Dokumentation (Check)=
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
|<strong>Referenzmessung mit Topcon&thinsp;</strong>
|-
|
Test: Messdaten in aktuelle Karte einfügen mit: 'Zeichne_in_Karte.m'. Dafür wurde die aktuelle Karte 'Fahrbahn_Autonome_Systeme.mat' genutzt.
Testmessung: 'TopCon_Messung_250506_1129.mat' testweise in die Karte eingefügt.
 
Die Messwerte wurden erfolgreich in die Karte eingezeichnet. Die Position der Messwerte entspricht der realen Position der Testfahrt.
 
 
 
[[Datei:Referenzmessung_Topcon.jpg|thumb|left|450px|Abb. 5: Testfahrt in Karte eingezeichnet]]
|}
 
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
|<strong>Bluetoothverbindung mit Alphabot&thinsp;</strong>
|-
|
Test: Mit Matlab soll eine Verbindung über das HC-05 Bluetoothmodul zum Alphabot hergestellt, und so Daten zum Alphabot übertragen werden können.
 
Genutzte Software:
Demo_SoftwareSerialMotor.ino
* Ansteuerung der Alphabotmotoren durch Empfangen von Matlabsignalen über Bluetooth
 
BluetoothIO.m
* Zahlenwerte per Bluetooth an den Alphabot senden
 
Ergebnis: Mit der Demo Bluetooth.IO wurden von Matlab Werte über die Bluetoothverbindung an den Alphabot gesendet. Die Demo_SoftwareSerialMotor.ino hat die Signale ausgewertet und die Motoren dementsprechend angesteuert.
|}
 
{| role="presentation" class="wikitable mw-collapsible mw-collapsed"
|<strong>Geregelte Fahrt auf der Mittellinie&thinsp;</strong>
|-
|
Test: Datenübertragung der Ist-Position des Prismas am Alphabot mit der Topcon Station über Bluetooth
Regelabweichung (Distanz Alphabot zur Mittellinie) in Matlab berechnen und über Bluetooth an den Alphabot senden
Regelabweichung über Bluetooth am Alphabot empfangen und weiterverwenden
Regelung des Alphabot durch Topcon-Daten als Istwert und der vorgegebenen Mittellinie als Sollwert
IR-Sensorwertaufnahme der realen Mittellinie (schwarz/weiß Erkennung)
Abbildung der realen Mittellinie in der Karte
 
Genutzte Software:
trackePrismaSendeAlphabot.m
* Positionserfassung durch die Topcon Messstation, Berechnung der Regelabweichung zur Mittellinie und Bluetoothübertragung an Alphabot
 
weisselinie_folgerBT.ino
* Empfangen der Regelabweichung über Bluetooth und Regelung der Alphabot Motoren. Zusätzliche Erfassung der realen Mittellinienwerte und Übertragung der Werte per Bluetooth zu MATLAB
 
{| class="wikitable"
|+ style="text-align:left;"| Tabelle 4: Systemtest gegen die Anforderungen
|-
! Req. !! Beschreibung !! Priorität !! Zustand !! Link auf das Ergebnis
|-
| 3 || Der AlphaBot muss entweder konstant die Referenzdaten verwenden oder diese als Stützung für die Ausfälle der Linienverfolgung nutzten.|| 1 || Der Alphabot nutzt die Mittellinie als Referenzdaten um die Regelabweichung in Form der Distanz zu berechnen. Eine Konstante Regelung wurde allerdings noch nicht erreicht|| [[https://svn.hshl.de/usvn/project/MTR_SDE_Praktikum/show/trunk/_Semesterordner/SS2025/Sprint_2/m-files | trackePrismaSendeAlphabot.m ]]
|}
|}
 
{| class="wikitable"
|+ style="text-align:left;"| Tabelle 3: Systemtest gegen die Anforderungen
|-
! Req. !! Beschreibung !! Priorität !! Zustand !! Link auf das Ergebnis
|-
| 1 || Ein [[AlphaBot]] muss die Mittellinien der Fahrbahn autonom verfolgen.|| 1 || x || nicht realisiert
|-
| 2 || Als Referenzmessystem kommt die [[Referenzmessung_mit_der_Topcon_Robotic_Total_Station|Topcon Robotic Total Station]] zum Einsatz. || 1 || ✓ ||
|-
| 3 || Der AlphaBot muss entweder konstant die Referenzdaten verwenden oder diese als Stützung für die Ausfälle der Linienverfolgung nutzten. || 1 || x || nicht realisiert
|-
| 4 || Die Referenzwerte müssen mit MATLAB<sup>®</sup> aufgezeichnet werden (x, y, Farbe).|| 1 || x || Messwerte des AMR werden nicht an MATLAB<sup>®</sup> versendet.
|-
| 5 || Fehler in den Messwerten müssen bereinigt werden.|| 1 || x  || nicht realisiert
|-
| 6 || Die zweidimensionale digitalen Karte muss als MATLAB<sup>®</sup>-Datei (<code>.mat</code>) bereitgestellt werden. || 1 || x  || nicht realisiert
|-
| 7 || Das Vorgehen muss am KANBAN-Board geplant werden.  || 1 || x  || unzureichend genutzt
|-
| 8 || Lösungsweg und Lösung muss im Wiki dokumentiert werden.  || 1 || x  || nicht realisiert
|-
| 9 || Nach Erstellen der digitalen Karte muss die Fahrt des AlphaBot in der Karte eingezeichnet werden. || 1 || x || Req. 4, 5, 6 wurden nicht erfüllt.
|-
| 10 || Als Vorbereitung für den Sprint 3 muss eine Kamerahaltung für die Pixy2 geplant, designed, gedruckt und getestet werden. || 1 || x || nicht bearbeitet
|}
 
= Fehlerbehebung (Act) =
 
{| class="wikitable"
|+ style = "text-align: left"|Tabelle 6: Optimierungsansätze für Sprint 3
|-
! Ergebnis !! Optimierung
|-
| Req. 1: Autonome Fahrt|| Planung, Umsetzung und Test in Sprint 3.
|-
| Req. 3: Konzept zur Aufzeichnung der Littellinie || Planung, Umsetzung und Test in Sprint 3.
|-
| Req. 4: Messung der Farbe und Position der Mittellinie  || Planung, Umsetzung und Test in Sprint 3.
|-
| Req. 5: Fehlerbereinigung  || Planung, Umsetzung und Test in Sprint 3.
|-
| Req. 6: digitale Karte  || Planung, Umsetzung und Test in Sprint 3.
|-
| Req. 7: Die Anforderungen konnten nicht in Aufgabenpakete am KANBAN-Board umgesetzt werden.  || Die Studierenden verfolgen die Aufgaben täglich und teilen ggf. große Aufgaben in kleinere AP auf.
|-
| Req. 8: Lösungsweg und Lösung muss im Wiki dokumentiert werden.  || Arbeits(teil)ergebnisse müssen währen der Arbeit dokumentiert werden. Für nachfolgende Teams muss klar dokumentiert werden, wie die Studierenden zu ihren Ergebnissen gekommen sind. Neben dem Weg müssen auch die Ergebnisse dokumentiert werden.
|-
| Req. 9: Fahrt in der neuen Karte || Planung, Umsetzung und Test in Sprint 3.
|-
| Req. 10: Kamerakalterung || Planung, Umsetzung und Test in Sprint 3.
|-
|}
 
= Zusammenfassung=
*Die Planung wurde am Kanban-Board realisiert
*Die Positionserfassung mit der Topcon Robotic Total Station funktioniert - getestet
*Der Alphabot mit HC-05 wurde via Bluetooth mit dem PC verbunden - getestet
*Vom PC konnten Daten über Bluetooth mit Matlab an den Alphabot gesendet werden - getestet
**mit der Demo_SoftwareSerial.ino wurden Daten empfangen und ausgewertet, indem empfangene Daten mit festen Werten verglichen worden sind
*mit der gegebenen Mittellinie als Soll-Wert und der aktuellen Position des Prismas auf dem Alphabot wurde die Distanz zwischen den Punkten als Regelabweichung ermittelt - getestet
**die Distanz wird dann an den Alphabot via Bluetooth übertragen
**die Daten konnten bislang noch nicht zur Stellgrößenberechnung des PD-Reglers weiterverwendet werden
***somit ist noch keine geregelte Fahrt auf der Mittellinie möglich, die reale Mittellinie wurde nicht ermittelt
 
= Projekttracking über KANBAN =
Abb. 6 zeigt das KANBAN-Board am Tag der Meilensteinpräsentation von Sprint 2.
[[Datei:250529 KANBAN Status Sprint 2.jpg|thumb|left|450px|Abb. 6: KANBAN-Board (Stand: 29.05.2025)]]<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br><br>
<br>
<br>
 
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
 
= Anhang =
Arbeitsergebnisse im SVN-Ordner:
https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/SS2025/Sprint_2/
 
 
{| class="wikitable"
|+ style = "text-align: left"|Tabelle 5: Ablauf Meilenstein Sprint 2
|-
! Uhrzeit !! Inhalt
|-
| 8:15 || Begrüßung und Meilensteinpräsentation
|-
| 8:25 || Diskussion der Ergebnisse
|-
| 8:40 || Test der Anforderungen
|-
| 8:45 || Live-Vorführung der Fahrt ink. Vermessung der Mittellinie (Req.4, 9)
|-
| 8:50 || Sichtung der Abgabeunterlagen, Diskussion der Eigenbewertung
|-
| 9:00 || Besprechung der Aufgaben und Vorgehensweise für Sprint 3 (Req. 10)
|}
----
----
→ zurück zum Hauptartikel: [[Anforderungen Praktikum Systementwurf SoSe2025|SDE Praktikum Systementwurf SoSe2025]]<br>
→ zurück zum Hauptartikel: [[Anforderungen Praktikum Systementwurf SoSe2025|SDE Praktikum Systementwurf SoSe2025]]<br>
→ zurück zu den Anforderungen [[Anforderungen_Praktikum_Systementwurf_SoSe2025| Anforderungen SoSe2025]]<br>
→ zurück zum Artikel: [[SDE-Team_2025/26|SDE-Team 2025/26]]
→ zurück zum Artikel: [[SDE-Team_2025/26|SDE-Team 2025/26]]

Aktuelle Version vom 29. Mai 2025, 10:59 Uhr

Abb. 1: Autonome Fahrbahnvermessung im Labor Autonome Systeme
Abb. 2: Ergebnisdarstellung der Außenlinien
Autoren: Jan Steffens & Lukas Berkemeier
Dozent: Prof. Dr.-Ing. Schneider
Modul Mechatronik, Systementwicklung (Wahlpflichtprofil „Systems Design Engineering“), Sommersemester
Modulbezeichnung: MTR-B-2-6.11
Modulverantwortung: Ulrich Schneider
Lehrveranstaltung: Praktikum Systementwurf
Sprint 2: Geregelte autonome Fahrt
Zeit: Dienstag, 08:15 - 10:30 Uhr, Selbstlernzeit: TBD
Ort: Labor L3.3-E01-180 (Autonome Systeme)

Einleitung

Zu Sprint 1 wurde die Fahrbahn vermessen und als digitale Karte gespeichert (vgl. Abb. 1, 2). Die Position des Prismas kann während der Fahrt gemessen und in die Referenzkarte eingezeichnet werden. Aufgabe dieses Sprints ist es auf der Mittelspur gereglt zu fahren, diese zu vermessen und in die Karte zu übertragen.

Tabelle 1: Anforderung an die geregelte autonome Fahrt
Req. Beschreibung Priorität
1 Ein AlphaBot muss die Mittellinien der Fahrbahn autonom verfolgen. 1
2 Als Referenzmessystem kommt die Topcon Robotic Total Station zum Einsatz. 1
3 Der AlphaBot muss entweder konstant die Referenzdaten verwenden oder diese als Stützung für die Ausfälle der Linienverfolgung nutzten. 1
4 Die Referenzwerte müssen mit MATLAB® aufgezeichnet werden (x, y, Farbe). 1
5 Fehler in den Messwerten müssen bereinigt werden. 1
6 Die zweidimensionale digitalen Karte muss als MATLAB®-Datei (.mat) bereitgestellt werden. 1
7 Das Vorgehen muss am KANBAN-Board geplant werden. 1
8 Lösungsweg und Lösung muss im Wiki dokumentiert werden. 1
9 Nach Erstellen der digitalen Karte muss die Fahrt des AlphaBot in der Karte eingezeichnet werden. 1
10 Als Vorbereitung für den Sprint 3 muss eine Kamerahaltung für die Pixy2 geplant, designed, gedruckt und getestet werden. 1

Getting Started

Abb. 3: Rundkurs mit Solllinie (rote Mittellinie)
  1. Planung Gantt-Chart
  2. Besprechung der Planung mit Prof. Schneider, Verabredung von Meilensteinen und der Abschlusspräsentation von Sprint 2
  3. Übernahme der Arbeitspakete auf dem KANBAN-Board
  4. Inbetriebnahme der Referenzstation
  5. Positionsmessung des Fahrzeugs und Schätzung der Roboterpose [x,y,Ψ].
  6. Eintragen der Roboterpose in der digitalen Karte.
  7. Verbinden Sie den AlphaBot via Bluetooth mit dem PC.
  8. Vergleich der Soll-/Istposition (ggf. mit Prädiktion). Bestimmen Sie die Regelabweichung e.
  9. Senden Sie die Regelabweichung e an den AlphaBot.
  10. Regeln Sie den AlphaBot mit Ihrem PD-Regler aus Sprint 1.
  11. Optional: Inbetriebnahme AlphaBot Linienverfolger für durchgezogene Linie und Stützung währen des Ausfalls der Linie.
  12. Senden Sie die Messwerte des Linienverfolgers an den PC.
  13. Messung und Speicherung der Mittelspur (Position, Farbe (s/w))
  14. Bereinigung von Fehlern in der Karte
  15. Ablage der vollständigen digitalen Karte als Rundkurs_mit_Mittellinie.mat-Datei.
  16. Messung einer Roboterbewegung und Anzeige auf der Karte.
  17. Test der Anforderungen und Dokumentation
  18. ggf. Überarbeitung/Verbesserung des Artikels Referenzmessung_mit_der_Topcon_Robotic_Total_Station
  19. Analyse und Bewertung der Ergebnisse in DIESEM Wiki-Artikel

Benötigte Hardware/Software

Hardware:

  • Computer
  • Bluetooth Dongle (zur Topcon Kommunikation)
  • Bluetooth Dongle (zur Alphabot Ansteuerung)
  • Topcon Messstation
  • Alphabot mti Batterien inkl. Prismahalterung

Software:

  • Matlab - 2024b
  • Arduino IDE 2.3.4
  • PAP - Designer

Planung (Plan)

Die Planung des Sprints Geregelte autonome Fahrt wird mit Hilfe des Kanban-Boards realisiert. Die Anforderungen werden dazu in eine geeignete Reihenfolge strukturiert und in mehrere Arbeitspakete aufgeteilt.

  • Planung am Kanban-Board
  • Positionserfassung mit der Topcon Robotic Total Station
    • Inbetriebnahme der Referenzstation
    • Schätzung der Roboterpose
    • Gegebene Demo zur Messung benutzen
    • Test -> Fahrweg in Karte einzeichnen


  • AlphaBot via Bluetooth mit dem PC verbinden mit gegebener Deno BluetoothIO.m
  • AlphaBot vom PC aus via Matlab ansteuern


  • Meilenstein: Liveerfassung der Alphabotposition


  • Meilenstein: Liveverarbeitung der übertragenen Daten der Topcon Station zur Regelung des AlphaBot
    • Sollwert ist die Mittellinie
    • Fahrtrichtung der Istposition ermitteln
    • Istwert berechnen
    • PD-Regelung zum nächstgelegenen Sollwertpunkt


  • Meilenstein: Geregelte Ansteuerung des AlphaBot über Bluetooth via MATLAB
  • Meilenstein: Mittelspur geregelt befahren, diese vermessen und in die Karte übertragen.
    • Vermessung der Mittellinie - mit den Daten der IR-Sensoren am Arduino die Mittellinie aufnehmen
    • Ablage der vollständigen digitalen Karte als .mat Datei


  • Test der Anforderungen
  • Fehler in den Messwerten bereinigen
  • Lösungsweg und Lösung im Wiki dokumentieren
  • Vorbereitung für den Sprint 3
    • Kamerahalterung für die Pixy2 Kamera planen, designen, drucken und testen

Ziel-Zustand

  • Datenübertragung der Ist-Position des Prismas am Alphabot mit der Topcon Station über Bluetooth
  • Regelabweichung (Distanz Alphabot zur Mittellinie) in Matlab berechnen und über Bluetooth an den Alphabot senden
  • Regelabweichung über Bluetooth am Alphabot empfangen und weiterverwenden
  • Regelung des Alphabot durch Topcon-Daten als Istwert und der vorgegebenen Mittellinie als Sollwert
  • IR-Sensorwertaufnahme der realen Mittellinie (schwarz/weiß Erkennung)
  • Abbildung der realen Mittellinie in der Karte
  • Halterung für Pixy 2 Kamera entwerfen und drucken

Umsetzung (Do)

Test und Dokumentation (Check)

Tabelle 3: Systemtest gegen die Anforderungen
Req. Beschreibung Priorität Zustand Link auf das Ergebnis
1 Ein AlphaBot muss die Mittellinien der Fahrbahn autonom verfolgen. 1 x nicht realisiert
2 Als Referenzmessystem kommt die Topcon Robotic Total Station zum Einsatz. 1
3 Der AlphaBot muss entweder konstant die Referenzdaten verwenden oder diese als Stützung für die Ausfälle der Linienverfolgung nutzten. 1 x nicht realisiert
4 Die Referenzwerte müssen mit MATLAB® aufgezeichnet werden (x, y, Farbe). 1 x Messwerte des AMR werden nicht an MATLAB® versendet.
5 Fehler in den Messwerten müssen bereinigt werden. 1 x nicht realisiert
6 Die zweidimensionale digitalen Karte muss als MATLAB®-Datei (.mat) bereitgestellt werden. 1 x nicht realisiert
7 Das Vorgehen muss am KANBAN-Board geplant werden. 1 x unzureichend genutzt
8 Lösungsweg und Lösung muss im Wiki dokumentiert werden. 1 x nicht realisiert
9 Nach Erstellen der digitalen Karte muss die Fahrt des AlphaBot in der Karte eingezeichnet werden. 1 x Req. 4, 5, 6 wurden nicht erfüllt.
10 Als Vorbereitung für den Sprint 3 muss eine Kamerahaltung für die Pixy2 geplant, designed, gedruckt und getestet werden. 1 x nicht bearbeitet

Fehlerbehebung (Act)

Tabelle 6: Optimierungsansätze für Sprint 3
Ergebnis Optimierung
Req. 1: Autonome Fahrt Planung, Umsetzung und Test in Sprint 3.
Req. 3: Konzept zur Aufzeichnung der Littellinie Planung, Umsetzung und Test in Sprint 3.
Req. 4: Messung der Farbe und Position der Mittellinie Planung, Umsetzung und Test in Sprint 3.
Req. 5: Fehlerbereinigung Planung, Umsetzung und Test in Sprint 3.
Req. 6: digitale Karte Planung, Umsetzung und Test in Sprint 3.
Req. 7: Die Anforderungen konnten nicht in Aufgabenpakete am KANBAN-Board umgesetzt werden. Die Studierenden verfolgen die Aufgaben täglich und teilen ggf. große Aufgaben in kleinere AP auf.
Req. 8: Lösungsweg und Lösung muss im Wiki dokumentiert werden. Arbeits(teil)ergebnisse müssen währen der Arbeit dokumentiert werden. Für nachfolgende Teams muss klar dokumentiert werden, wie die Studierenden zu ihren Ergebnissen gekommen sind. Neben dem Weg müssen auch die Ergebnisse dokumentiert werden.
Req. 9: Fahrt in der neuen Karte Planung, Umsetzung und Test in Sprint 3.
Req. 10: Kamerakalterung Planung, Umsetzung und Test in Sprint 3.

Zusammenfassung

  • Die Planung wurde am Kanban-Board realisiert
  • Die Positionserfassung mit der Topcon Robotic Total Station funktioniert - getestet
  • Der Alphabot mit HC-05 wurde via Bluetooth mit dem PC verbunden - getestet
  • Vom PC konnten Daten über Bluetooth mit Matlab an den Alphabot gesendet werden - getestet
    • mit der Demo_SoftwareSerial.ino wurden Daten empfangen und ausgewertet, indem empfangene Daten mit festen Werten verglichen worden sind
  • mit der gegebenen Mittellinie als Soll-Wert und der aktuellen Position des Prismas auf dem Alphabot wurde die Distanz zwischen den Punkten als Regelabweichung ermittelt - getestet
    • die Distanz wird dann an den Alphabot via Bluetooth übertragen
    • die Daten konnten bislang noch nicht zur Stellgrößenberechnung des PD-Reglers weiterverwendet werden
      • somit ist noch keine geregelte Fahrt auf der Mittellinie möglich, die reale Mittellinie wurde nicht ermittelt

Projekttracking über KANBAN

Abb. 6 zeigt das KANBAN-Board am Tag der Meilensteinpräsentation von Sprint 2.

Abb. 6: KANBAN-Board (Stand: 29.05.2025)
























Anhang

Arbeitsergebnisse im SVN-Ordner:

https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/SS2025/Sprint_2/


Tabelle 5: Ablauf Meilenstein Sprint 2
Uhrzeit Inhalt
8:15 Begrüßung und Meilensteinpräsentation
8:25 Diskussion der Ergebnisse
8:40 Test der Anforderungen
8:45 Live-Vorführung der Fahrt ink. Vermessung der Mittellinie (Req.4, 9)
8:50 Sichtung der Abgabeunterlagen, Diskussion der Eigenbewertung
9:00 Besprechung der Aufgaben und Vorgehensweise für Sprint 3 (Req. 10)

→ zurück zum Hauptartikel: SDE Praktikum Systementwurf SoSe2025
→ zurück zu den Anforderungen Anforderungen SoSe2025
→ zurück zum Artikel: SDE-Team 2025/26