SDE Systementwurf SoSe2025: Geregelte autonome Fahrt: Unterschied zwischen den Versionen
| (161 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: | [[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 | | '''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 | | 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 | ||
|- | |- | ||
| | | 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 58: | Zeile 59: | ||
# Eintragen der Roboterpose in der digitalen Karte. | # Eintragen der Roboterpose in der digitalen Karte. | ||
# Verbinden Sie den [[AlphaBot: Blootooth Verbindung zu MATLAB|AlphaBot via Bluetooth mit dem PC]]. | # Verbinden Sie den [[AlphaBot: Blootooth Verbindung zu MATLAB|AlphaBot via Bluetooth mit dem PC]]. | ||
# 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. | ||
# | # 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: | *Meilenstein: Geregelte Ansteuerung des AlphaBot über Bluetooth via MATLAB | ||
Meilenstein: | *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 | *Test der Anforderungen | ||
Fehler in den Messwerten bereinigen | *Fehler in den Messwerten bereinigen | ||
Lösungsweg und Lösung im Wiki dokumentieren | *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)= | ||
{| role="presentation" class="wikitable mw-collapsible mw-collapsed" | {| role="presentation" class="wikitable mw-collapsible mw-collapsed" | ||
|<strong>Referenzmessung mit Topcon </strong> | |||
|- | |||
| | |||
Positionserfassung mit der Topcon Robotic Total Station | Positionserfassung mit der Topcon Robotic Total Station | ||
Benötigte Betriebsmittel: | Benötigte Betriebsmittel: | ||
# 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 1: Montage der Prismahalterung am AlphaBot | ||
Schritt 2: Festschrauben des Topcon Prismas am Gewinde der Prismahalterung | 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 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 | |||
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 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 | 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  </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: | |||
Schritt 1: HC-05 Bluetooth-Modul am Alphabot anschließen | |||
*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]] | |||
{| class="wikitable" | |||
|+ style="text-align:left;"| Tabelle 2: Kontaktbelegung HC-05 Bluetooth-Modul (siehe Abb. 4) | |||
|- | |||
! HC-05 !! Alphabot !! Farbe | |||
|- | |||
| 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 | |||
|} | |||
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 | |||
Schritt 3: Demo_SoftwareSerial.ino öffnen und auf den Alphabot hochladen | |||
Schritt 4: Bluetooth.IO öffnen und starten | |||
|} | |||
{| role="presentation" class="wikitable mw-collapsible mw-collapsed" | |||
|<strong>Geregelte Fahrt auf der Mittellinie </strong> | |||
|- | |||
| | |||
Geregelte Fahrt auf der Mittellinie | |||
Benötigte Betriebsmittel: | |||
# 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 | |||
Software + Skripts: | |||
# 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 </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]] | |||
|} | |||
auf | |||
{| role="presentation" class="wikitable mw-collapsible mw-collapsed" | |||
|<strong>Bluetoothverbindung mit Alphabot </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 </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

| 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.
| 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

- Planung Gantt-Chart
- Besprechung der Planung mit Prof. Schneider, Verabredung von Meilensteinen und der Abschlusspräsentation von Sprint 2
- Übernahme der Arbeitspakete auf dem KANBAN-Board
- Inbetriebnahme der Referenzstation
- Positionsmessung des Fahrzeugs und Schätzung der Roboterpose .
- Eintragen der Roboterpose in der digitalen Karte.
- Verbinden Sie den AlphaBot via Bluetooth mit dem PC.
- Vergleich der Soll-/Istposition (ggf. mit Prädiktion). Bestimmen Sie die Regelabweichung e.
- Senden Sie die Regelabweichung e an den AlphaBot.
- 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.
- Senden Sie die Messwerte des Linienverfolgers an den PC.
- Messung und Speicherung der Mittelspur (Position, Farbe (s/w))
- Bereinigung von Fehlern in der Karte
- Ablage der vollständigen digitalen Karte als
Rundkurs_mit_Mittellinie.mat-Datei. - Messung einer Roboterbewegung und Anzeige auf der Karte.
- Test der Anforderungen und Dokumentation
- ggf. Überarbeitung/Verbesserung des Artikels Referenzmessung_mit_der_Topcon_Robotic_Total_Station
- 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)
| Referenzmessung mit Topcon |
|
Positionserfassung mit der Topcon Robotic Total Station Benötigte Betriebsmittel:
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. |
| Geregelte Fahrt auf der Mittellinie |
|
Geregelte Fahrt auf der Mittellinie Benötigte Betriebsmittel:
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)
| Referenzmessung mit Topcon |
|
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.
|
| Bluetoothverbindung mit Alphabot |
|
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
BluetoothIO.m
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. |
| Geregelte Fahrt auf der Mittellinie | ||||||||||
|
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
weisselinie_folgerBT.ino
|
| 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)
| 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.

Anhang
Arbeitsergebnisse im SVN-Ordner:
https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/SS2025/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


