SDE Systementwicklung WS25/26: Geregelte autonome Fahrt: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
 
(112 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Datei:SDE Referenzmessung.jpg|thumb|rigth|450px|Abb. 1: Autonome Fahrbahnvermessung im Labor Autonome Systeme]]
[[Datei:SDE Referenzmessung.jpg|thumb|rigth|450px|Abb. 1: Autonome Fahrbahnvermessung im Labor Autonome Systeme]]
[[Datei:Rundkurs mit Mittellinie.jpg|thumb|rigth|450px|Abb. 2: Rundkurs mit Solllinie (rote Mittellinie)]]
[[Datei:TestBerechneRegelabweichung2.jpg|thumb|rigth|450px|Abb. 2: Rundkurs mit Solllinie (rote Mittellinie)]]
{|class="wikitable"
{|class="wikitable"
|-
|-
Zeile 17: Zeile 17:
| '''Sprint 1:''' || Geregelte autonome Fahrt
| '''Sprint 1:''' || Geregelte autonome Fahrt
|-
|-
| '''Zeit:''' || Dienstag, 10:00 - 12:30 Uhr, Selbstlernzeit: '''TBD'''
| '''Zeit:''' || Dienstag, 10:00 - 12:15 Uhr, Selbstlernzeit: '''TBD'''
|-
|-
| '''Ort:''' || Labor L3.3-E01-180 (Autonome Systeme)
| '''Ort:''' || Labor L3.3-E01-180 (Autonome Systeme)
Zeile 25: Zeile 25:


Die Ergebnisse der PDCA-Phase 4 (Fehlerbehebung) ist [[SDE_Systementwurf_SoSe2025:_Geregelte_autonome_Fahrt_-_Sprint_3#Fehlerbehebung_(Act)|hier]] dokumentiert und in Sprint 1 zu berücksichtigen.
Die Ergebnisse der PDCA-Phase 4 (Fehlerbehebung) ist [[SDE_Systementwurf_SoSe2025:_Geregelte_autonome_Fahrt_-_Sprint_3#Fehlerbehebung_(Act)|hier]] dokumentiert und in Sprint 1 zu berücksichtigen.
Verwenden Sie die Eingangsdaten im Ordner:
https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Daten/Rundkurs_L33_E01_210
Im Welt-KOS (W-KOS) hat Punkt A die Position <math>A_W = [1,83;0;0]\,m</math> (vgl. Abb. 2).
{| class="wikitable"
|+ style="text-align:left;"|Tabelle 1: Eingangsdaten
|-
! Datei !! Datentyp !! Beschreibung
|-
| MittelLinie_W.mat || 2x632 double || Positionen der Mittellinie
|-
| LinkeFahrspur_W.mat|| 2x632 double || Positionen der linken Fahrspur
|-
| RechteFahrspur_W.mat || 2x632 double || Positionen der rechten Fahrspur
|}


{| class="wikitable"
{| class="wikitable"
|+ style="text-align:left;"| Tabelle 1: Anforderung an die geregelte autonome Fahrt
|+ style="text-align:left;"| Tabelle 2: Anforderung an die geregelte autonome Fahrt
|-
|-
! Req. !! Beschreibung !! Priorität
! Req. !! Beschreibung !! Priorität
Zeile 47: Zeile 64:
| 8 || Lösungsweg und Lösung muss im Wiki für nachfolgende Studierende verständlich dokumentiert werden.  || 1
| 8 || Lösungsweg und Lösung muss im Wiki für nachfolgende Studierende verständlich dokumentiert werden.  || 1
|-
|-
| 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 rechten Fahrspur in der Karte eingezeichnet werden. || 1
|-
|-
| 10 || Als Vorbereitung des nächsten Sprints muss eine Kamerahaltung für die [[Kamerasensor_Pixy_2.1|Pixy2.1]] für den AlphaBot geplant, designed, gedruckt, getestet und dokumentiert werden. || 1
| 10 || Als Vorbereitung des nächsten Sprints muss eine Kamerahaltung für die [[Kamerasensor_Pixy_2.1|Pixy2.1]] für den AlphaBot geplant, designed, gedruckt, getestet und dokumentiert werden. || 1
Zeile 53: Zeile 70:


{| class="wikitable"
{| class="wikitable"
|+ style="text-align:left;"| Tabelle 2: Arbeitspakete für Sprint 3
|+ style="text-align:left;"| Tabelle 3: Arbeitspakete für Sprint 1
|-
|-
! AP !! Beschreibung !! Priorität !! Zuständigkeit
! AP !! Beschreibung !! Priorität !! Zuständigkeit
|-
|-
| 1.1 || Positionsmessung des AlpaBot <math>[x,y]</math> || 1 || Steffens
| 1.1 || [[SDE WS25: AP 1.1 Positionsmessung des AlpaBot| Positionsmessung des AlpaBot]] <math>[x,y]</math> || 1 || Steffens
|-
|-
| 1.2 || Schätzung der Roboterpose <math>\Psi</math> || 1 || Steffens
| 1.2 || [[SDE WS25: AP 1.2 Schätzung der Roboterpose| Schätzung der Roboterpose]] <math>\Psi</math> || 1 || Steffens
|-
|-
| 1.3 || Berechnung der Ist-Ablage des Prismas zur Sollinie || 1 || Steffens
| 1.3 || [[SDE_WS25:_AP_1.2_Berechnung_der_Ist-Ablage_des_Prismas_zur_Sollinie|Berechnung der Ist-Ablage des Prismas zur Sollinie]]|| 1 || Steffens
|-
|-
| 1.4 || Übertragung der Ist-Ablage via BT MATLAB→Arduino (Senden und Empfang) || 1 || Steffens
| 1.4 || [[SDE_WS25:_AP_1.4_Übertragung_der_Ist-Ablage_via_BT|Übertragung der Ist-Ablage via BT MATLAB→Arduino]] (Senden und Empfang) || 1 || Steffens
|-
|-
| 1.5 || Geregelte Fahrt anhand der Ist-Ablage || 1 || Berkemeier
| 1.5 || [[SDE_WS25: AP 1.5 Geregelte Fahrt anhand der Ist-Ablage | Geregelte Fahrt anhand der Ist-Ablage]] || 1 || Berkemeier
|-
|-
| 1.6 || Messung der Mittellinie (Position x, Position y, Farbe) mit dem [[AlphaBot_Linienverfolgungsssensor|Linienverfolgungssensor]]|| 1 || Berkemeier
| 1.6 || [[SDE_WS25:_AP_1.6_Messung_der_Mittellinie | Messung der Mittellinie]] mit dem [[AlphaBot_Linienverfolgungsssensor|Linienverfolgungssensor]]|| 1 || Berkemeier
|-
|-
| 1.7 || Berechnung der Mittellinienposition (x, y) anhand der Messwerte des [[AlphaBot_Linienverfolgungsssensor|Linienverfolgungssensors]]|| 1 || Berkemeier
| 1.7 || [[SDE_WS25:_AP_1.7_Berechnung_der_Mittellinienposition | Berechnung der Mittellinienposition]] (x, y) anhand der Messwerte des [[AlphaBot_Linienverfolgungsssensor|Linienverfolgungssensors]]|| 1 || Berkemeier
|-
|-
| 1.8 || Übertragung der Messung der Mittellinie (x, y, Farbe) via BT Arduino→MATLAB (Senden und Empfang)|| 1 || Berkemeier
| 1.8 || [[SDE_WS25:_AP_1.8_Übertragung_der_Messung_der_Mittellinie_via_BT_Arduino→MATLAB|Übertragung der Messung der Mittellinie (x, y, Farbe) via BT Arduino→MATLAB]] (Senden und Empfang)|| 1 || Berkemeier
|-
|-
| 1.9 || Einzeichnen der Messwerte in die digitale Karte und Speicherung der Karte als <code>Rundkurs.mat</code> || 1 || Steffens
| 1.9 || Einzeichnen der Messwerte in die digitale Karte und Speicherung der Karte als <code>Rundkurs.mat</code> || 1 || Steffens
Zeile 81: Zeile 98:
| 1.12 || Kamerahaltung für die [[Kamerasensor_Pixy_2.1|Pixy2.1]]  || 1 || Steffens
| 1.12 || Kamerahaltung für die [[Kamerasensor_Pixy_2.1|Pixy2.1]]  || 1 || Steffens
|-
|-
| 1.13 || Inbetriebnahme AlphaBot Linienverfolger für durchgezogene Linie und Stützung währen des Ausfalls der Linie.  || 2 || Berkemeier
| 1.13 || Inbetriebnahme AlphaBot Linienverfolger für durchgezogene Linie und Stützung während des Ausfalls der Linie.  || 2 || Berkemeier
|-
|-
| 1.14 || Überarbeitung/Verbesserung des Artikels [[Referenzmessung_mit_der_Topcon_Robotic_Total_Station]]  || 2 || Berkemeier
| 1.14 || Überarbeitung/Verbesserung des Artikels [[Referenzmessung_mit_der_Topcon_Robotic_Total_Station]]  || 2 || Berkemeier
Zeile 87: Zeile 104:


=Planung (Plan)=
=Planung (Plan)=
[[Datei:KanbanboardSprint3.jpg|thumb|rigth|450px|Abb. 3: Planung am Kanban-Board - Sprint 3]]
==Arbeitspaket 3.1 Positionsmessung des Alphabot und Schätzung der Roboterpose [x,y,Ψ]==
Die aktuelle Position und Ausrichtung des Alphabots soll mit Hilfe der Topcon Station und dem zugehörigen Prismas ermittelt werden.
<br><br>


==Arbeitspaket 3.2 Berechnung der Ist-Ablage des Prismas zur Solllinie==
Um die gesetzten Ziele zu erreichen wurde der Sprint am Kanban-Board in Arbeitspakete unterteilt. Die Arbeitspakete wurden eigenständig geplant.
Es soll die Distanz des Alphabots zur Solllinie ermittelt werden.
<br><br>


==Arbeitspaket 3.3 Übertragung der Ist-Ablage via BT MATLAB → Arduino (Senden und Empfang)==
==Ziel-Zustand==
Die berechnete Distanz des Alphabots zur Solllinie soll von MATLAB über Bluetooth an den Alphabot übermittelt werden.
Die Ziele des Sprint 1 sind es, die reale Mittelinie mithilfe der geregelten Fahrt auf der Mittellinie und den IR-Sensoren am AlphaBot zu erfassen, den AlphaBot dann geregelt in der rechten Fahrspur fahren zu lassen und eine Kamerahaltung für die Pixy2.1 Kamera zu entwerfen.
<br><br>
 
==Arbeitspaket 3.4 Geregelte Fahrt anhand der Ist-Ablage==
Der AlphaBot soll einer Solllinie mit der via Bluetooth empfangenen Ist-Ablage geregelt folgen.
Die Regelung erfolgt über einen PD-Regler.
<br><br>
 
==Arbeitspaket 3.5: Messung der Mittellinie==
Die Position der weißen Mittellinie soll mit den IR-Sensoren am AlphaBot erkannt werden.
<br><br>
 
==Arbeitspaket 3.6: Übertragung der Messung der Mittellinie==
Die Position der Mittellinie soll via Bluetooth vom AlphaBot an Matlab übertragen werden. Zur Übertragung soll die serielle Schnittstelle mit dem HC-05 Bluetoothmodul genutzt werden. Die Berechnung der realen Mittellinienposition soll in Matlab erfolgen.
<br><br>
 
==Arbeitspaket 3.7 Einzeichnen der Messwerte in die digitale Karte und Speicherung der Karte als Rundkurs.mat==
Die gemessenen Punkte der Mittellinie sollen auf einer digitalen Karte eingezeichnet werden.
<br><br>
 
==Arbeitspaket 3.8: Bereinigung von Fehlern in der Karte==
Die Messwerte in der Karte sollen von Fehlern bereinigt werden.
<br><br>
 
==Arbeitspaket 3.9: Geregelte Fahrt in der rechten Fahrspur anhand der Prismamessung und Kartendaten==
Der AlphaBot soll in der rechten Fahrspur des Parcour geregelt fahren. Die Regelung erfolgt dabei durch den Abstand des Prismas auf dem AlphaBot zu den vorhandenen Kartendaten, die bereits als "RechteFahrspur_W.mat" aus dem Sprint 2 vorhanden sind. Des weiteren können die Ergebnisse aus den anderen Arbeitspaketen genutzt um der Fahrspur geregelt, mithilfe der Bluetoothverbindung zu folgen.
<br><br>


==Arbeitspaket 3.10: Kamerahalterung für die Pixy2.1==
Die Fahrt auf der Mittellinie erfolgt dabei auf der Mittellinie, die in unseren erfassten Karte eingezeichnet wurde. Die reale Mittellinie soll dann in die Karte eingetragen werden. Um auf den Linien geregelt zu fahren soll die Ist-Ablage berechnet und genutzt werden.
Es soll eine Kamerahalterung für die Pixy2.1 Kamera entworfen und 3D gedruckt werden.
<br><br>
 
==Abreitspaket 3.11 Inbetriebnahme AlphaBot Linienverfolger für durchgezogene Linie und Stützung währen des Ausfalls der Linie.==
Nicht bearbeitet.
<br><br>
 
==Abreitspaket 3.12 Überarbeitung/Verbesserung des Artikels [[Referenzmessung_mit_der_Topcon_Robotic_Total_Station]]==
Nicht bearbeitet.
<br><br>
 
==Ziel-Zustand==
Die Ziele des Sprint 3 sind es, die reale Mittelinie mithilfe der geregelten Fahrt auf der Mittellinie und den IR-Sensoren am AlphaBot zu erfassen, den AlphaBot dann geregelt in der rechten Fahrspur fahren zu lassen und eine Kamerahaltung für die Pixy2.1 Kamera zu entwerfen.
Die Fahrt auf der Mittellinie erfolgt dabei auf der Mittellinie, die in unseren erfassten Karte eingezeichnet wurde. Die reale Mittellinie soll dann in die Karte eingetragen werden.  
Um auf den Linien geregelt zu fahren soll die Ist-Ablage berechnet und genutzt werden.


=Umsetzung (Do)=
=Umsetzung (Do)=
==Arbeitspaket 3.1 Positionsmessung des Alphabot und Schätzung der Roboterpose [x,y,Ψ]==
Die Topcon Station trackt das zugehörige Prisma, welches auf dem Alphabot montiert ist. Die Position wird über Bluetooth an MATLAB übermittelt. Die Pose bzw. Ausrichtung wird nicht ermittelt und übertragen.
<br><br>
==Arbeitspaket 3.2 Berechnung der Ist-Ablage des Prismas zur Solllinie==
Die Distanz der übermittelten Alphabot Position zur Geraden zwischen zwei aufeinanderfolgenden Punkten auf der Sollinie wird berechnet.
<br><br>
==Arbeitspaket 3.3 Übertragung der Ist-Ablage via BT MATLAB → Arduino (Senden und Empfang)==
Die Distanz in Millimeter der Alphabotposition zur Sollinie wird von MATLAB über Bluetooth zum Arduino übertragen.
<br><br>
==Arbeitspaket 3.4: Geregelte Fahrt anhand der Ist-Ablage==
Die Regelabweichung zur Solllinie aus der Ist-Ablage wird über Bluetooth empfangen. Mit dem PD-Regler aus  den vorherigen Sprints wird der AlphaBot auf die Linie geregelt.
<br><br>
==Arbeitspaket 3.5: Messung der Mittellinie==
Die Position der Mittellinie wird mit den IR-Sensoren des AlphaBot erfasst werden. Dafür werden die IR-Sensoren auf die weiße-Linie kalibriert und mit der funktion "readline()" der Istwert berechnet. Mithilfe des "map()"-Befehls wird der Istwert in die Entfernung des AlphaBot zur Mitte der Mittellinie berechnet.
<br><br>
==Arbeitspaket 3.6: Übertragung der Messung der Mittellinie==
Die im Arbeitspaket 3.5 ermittelte Mittellinie wird ebenfalls mit dem C-Code "weisselinie_folgerLinieErkennen.ino" via Bluetooth an Matlab übertragen. Die Übertragung erfolgt über die serielle Schnittstelle.
<br><br>
==Arbeitspaket 3.7 Einzeichnen der Messwerte in die digitale Karte und Speicherung der Karte als Rundkurs.mat==
Die Messwerte werden noch nicht in die digitale Karte eingetragen.
<br><br>
==Arbeitspaket 3.8: Bereinigung von Fehlern in der Karte==
Es werden noch keine Fehler in der Karte bereinigt.
<br><br>
==Arbeitspaket 3.9: Geregelte Fahrt in der rechten Fahrspur anhand der Prismamessung und Kartendaten==
Um den Alphabot geregelt in der rechten Fahrspur fahren zu lassen kann das Matlab-Skript "trackePrismaSendeAlphaBot.m" so angepasst werden, dass der AlphaBot nicht mehr der eingezeichneten Mittellinie, sondern der Linie der rechten Fahrspur folgt. Dafür können die Daten aus der "RechteFahrspur_W.mat" genutzt werden.
<br><br>
==Arbeitspaket 3.10: Kamerahalterung für die Pixy2.1==
Die Kamerahalterung für die Pixy2.1 wurde in Solidworks entworfen und im 3D Drucker gedruckt. Zusätzlich wurde sie mit Gewindeeinsätzen versehen.
<br><br>
==Abreitspaket 3.11 Inbetriebnahme AlphaBot Linienverfolger für durchgezogene Linie und Stützung währen des Ausfalls der Linie.==
Nicht bearbeitet.
<br><br>


==Abreitspaket 3.12 Überarbeitung/Verbesserung des Artikels [[Referenzmessung_mit_der_Topcon_Robotic_Total_Station]]==
Die Arbeitspakete aus Tabelle 3 wurden wurden bearbeitet und deren Umsetzung in den einzelnen Wiki Artikeln dokumentiert.
Nicht bearbeitet.
<br><br>


=Test und Dokumentation (Check)=
=Test und Dokumentation (Check)=
==Arbeitspaket 3.1 Positionsmessung des Alphabot und Schätzung der Roboterpose [x,y,Ψ]==
Die Positionsmessung des Alphabots durch die Topcon Station wurde mit "trackePrisma.m" getestet.
[[SDE Systementwurf SoSe2025: Testbericht Arbeitspaket 3.1|Testbericht]]
<br><br>
==Arbeitspaket 3.2 Berechnung der Ist-Ablage des Prismas zur Solllinie==
Die Berechnung des Abstands der Alphabot Position zur Sollinie wurde mit "berechneAbstandPunktGerade.m" getestet.
[[SDE Systementwurf SoSe2025: Testbericht berechneEntfernungPunktGerade.m|Testbericht]]
<br><br>
==Arbeitspaket 3.3 Übertragung der Ist-Ablage via BT MATLAB → Arduino (Senden und Empfang)==
Die Übertragung der Distanz zwischen Alphabotposition und der Solllinie wurde mit "testuebertragung_d.m" getestet.
[[SDE Systementwurf SoSe2025: Testbericht Arbeitspaket 3.3|Testbericht]]
<br><br>
==Arbeitspaket 3.4: Geregelte Fahrt anhand der Ist-Ablage==
[[Datei:GeregelteFahrtTest.jpg|thumb|rigth|200px|Abb. 4: Test zur geregelten Fahrt]]
Das Arbeitspaket wurde auf der kleinen Teststrecke auf den Tischen (Abbildung 4) mit der weisseLinie_folgerBT_ohnekal.ino und der trackeSendeReglerTest.m getestet.
Über die Messung mit der TopCon Station wurde die Fahrt auf der y-Achse der Station geregelt.
Ein Test mit der berechneten Ist-Ablage und auf der Mittellinie als Solllinie steht noch aus.


[[SDE Systementwurf SoSe2025: Testbericht Arbeitspaket 3.4|Testbericht]]
Die einzelnen Arbeitspakete und Module wurden eigenständig getestet und dokumentiert.  
<br><br>
 
==Arbeitspaket 3.5: Messung der Mittellinie==
Um das Arbeitspaket zu testen werden die IR-Sensoren des AlphaBot zunächst kalibriert. Danach wird die Ausgegebene Entfernung mit der Tatsächlichen Entfernung zum mittleren IR-Sensor verglichen. Wichtig ist hier darauf zu achten, dass die Sensoren passend kalibriert sind.
 
[[SDE Systementwurf SoSe2025: Testbericht Arbeitspaket 3.5|Testbericht]]
<br><br>
 
==Arbeitspaket 3.6: Übertragung der Messung der Mittellinie==
Um das Arbeitspaket 3.6 zu Testen wurden die berechneten Positionsdaten aus Arbeitspaket 3.5 mit der "weisselinie_folgerLinieErkennen.ino" über die serielle Schnittstelle an Matlab gesendet. Die Daten wurden dann mit der "EmpfangeMittellinieTest.m" empfangen.
Ergebnis: Die gesendeten Daten wurde empfangen und konnten weiterverwendet werden.
 
[[SDE Systementwurf SoSe2025: Testbericht Arbeitspaket 3.6|Testbericht]]
<br><br>
 
==Arbeitspaket 3.7 Einzeichnen der Messwerte in die digitale Karte und Speicherung der Karte als Rundkurs.mat==
Es werden noch keine Messwerte der Mittellinie in eine digitale Karte eingezeichnet.
<br><br>
 
==Arbeitspaket 3.8: Bereinigung von Fehlern in der Karte==
Es werden noch keine Fehler in der Karte bereinigt.
<br><br>
 
==Arbeitspaket 3.9: Geregelte Fahrt in der rechten Fahrspur anhand der Prismamessung und Kartendaten==
Die geregelte Fahrt in der rechten Fahrspur wurde noch nicht getestet.
<br><br>
 
==Arbeitspaket 3.10: Kamerahaltung für die Pixy2.1 ==
* Dokumentieren Sie die Halterung hier: [[Kamerasensor Pixy 2.1]]
<br><br>


== Systemtest gegen die Anforderungen==
== Systemtest gegen die Anforderungen==
{| class="wikitable"
{| class="wikitable"
|+ style="text-align:left;"| Tabelle 3: Systemtest gegen die Anforderungen
|+ style="text-align:left;"| Tabelle 4: Systemtest gegen die Anforderungen
|-
|-
! Req. !! Beschreibung !! Priorität !! Zustand !! Link auf das Ergebnis
! Req. !! Beschreibung !! Testergebnis !! Erfüllt
|-
|-
| 1 || Ein [[AlphaBot]] muss die Mittellinien der Fahrbahn autonom verfolgen.|| 1 || x ||  
| 1 ||style="color:white; background-color:red;"| Ein AlphaBot muss die Mittellinien der Fahrbahn autonom verfolgen.|| [[SDE WS25: BluetoothRegelung.ino#Modultest | Modultest]], [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/WS2025/Sprint_1/m-files/geregelteFahrtMittellinie.m geregelteFahrtMittellinie.m] ||
|-
|-
| 2 || Als Referenzmessystem kommt die [[Referenzmessung_mit_der_Topcon_Robotic_Total_Station|Topcon Robotic Total Station]] zum Einsatz. || 1 || ✓ ||  [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/SS2025/Sprint_3/m-files/trackePrismaSendeAlphaBot_mit_Aenderungen.m <code>trackePrismaSendeAlphaBot_mit_Aenderungen.m</code>]
| 2 || Als Referenzmessystem kommt die [[Referenzmessung_mit_der_Topcon_Robotic_Total_Station|Topcon Robotic Total Station]] zum Einsatz.|| [[SDE WS25: AP 1.1 Positionsmessung des AlpaBot]] || ✓
|-
|-
| 3 || Der AlphaBot muss entweder konstant die Referenzdaten verwenden oder diese als Stützung für die Ausfälle der Linienverfolgung nutzten. || 1 || ✓ || [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/SS2025/Sprint_3/m-files/trackePrismaSendeAlphaBot_mit_Aenderungen.m <code>trackePrismaSendeAlphaBot_mit_Aenderungen.m</code>]
| 3 ||style="color:white; background-color:red;"|  Der AlphaBot muss zur Positionsregelung die Referenzdaten verwenden und als Stützung für die Linienverfolgung nutzten. || ||
|-
|-
| 4 || Die Referenzwerte müssen mit MATLAB<sup>®</sup> aufgezeichnet werden (x, y, Farbe).|| 1 || x ||  
| 4 ||style="color:white; background-color:red;"|  Die Messwerte Pose (x, y, Kurs) und Farbe müssen mit MATLAB<sup>®</sup> aufgezeichnet werden.|| ||
|-
|-
| 5 || Fehler in den Messwerten müssen bereinigt werden.|| 1 || x ||
| 5 ||style="color:white; background-color:red;"|  Fehler in den Messwerten müssen bereinigt werden.|| ||
|-
|-
| 6 || Die zweidimensionale digitalen Karte muss als MATLAB<sup>®</sup>-Datei (<code>.mat</code>) bereitgestellt werden. || 1 || x ||  
| 6 || style="color:white; background-color:red;"| Die zweidimensionale digitalen Karte mit gemessener Mittellinie muss als MATLAB<sup>®</sup>-Datei (<code>.mat</code>) bereitgestellt werden. || ||
|-
|-
| 7 || Das Vorgehen muss am KANBAN-Board geplant werden.  || 1 || ✓ ||
| 7 || Das Vorgehen muss am KANBAN-Board geplant und verfolgt werden.  || [[SDE Systementwicklung WS25/26: Geregelte autonome Fahrt#Zusammenfassung | KANBAN Übersicht]]  || ✓
|-
|-
| 8 || Lösungsweg und Lösung muss im Wiki dokumentiert werden.  || 1 || ✓ ||  
| 8 || style="color:white; background-color:red;"|Lösungsweg und Lösung muss im Wiki für nachfolgende Studierende verständlich dokumentiert werden.  || Ein Teil der Lösungen wurden dokumentiert und in Tabelle 3 verlinkt.||
|-
|-
| 9 || Nach Erstellen der digitalen Karte muss die Fahrt des AlphaBot in der Karte eingezeichnet werden. || 1 || x ||
| 9 ||style="color:white; background-color:red;"|  Nach Erstellen der digitalen Karte muss die Fahrt des AlphaBot in der rechten Fahrspur in der Karte eingezeichnet werden. || ||
|-
|-
| 10 || Als Vorbereitung für den Sprint 3 muss eine Kamerahaltung für die Pixy2 geplant, designed, gedruckt und getestet werden. || 1 || x  || Die Anforderungen an die Halterung wurden nicht erfüllt [[Kamerasensor Pixy 2.1]]
| 10 ||style="color:white; background-color:red;"|  Als Vorbereitung des nächsten Sprints muss eine Kamerahaltung für die Pixy2.1 für den AlphaBot geplant, designed, gedruckt, getestet und dokumentiert werden. || [[Kamerasensor_Pixy_2.1#Halterung für den Alphabot | Kamerahalterung]] || ✕
|}
|}


= Fehlerbehebung (Act) =
'''Status - Sprint 1:'''
==Arbeitspaket 3.1 Positionsmessung des Alphabot und Schätzung der Roboterpose [x,y,Ψ]==
* Regler schwingt auf
Momentan wird die Position des Alphabots bestimmt und übertragen. Die Pose muss noch bestimmt und übertragen werden.
* Analyse notwendig
<br><br>
* Aufzeichnung von Regelparameter über der Zeit
==Arbeitspaket 3.2 Berechnung der Ist-Ablage des Prismas zur Solllinie==
* Vergleich mit Ground-Truth über der Zeit
Es wird die Entfernung des Alphabots zu einer Geraden zwischen zwei aufeinanderfolgenden Punkten auf der Sollinie berechnet.
<br><br>
==Arbeitspaket 3.3 Übertragung der Ist-Ablage via BT MATLAB → Arduino (Senden und Empfang)==
Das Programm, welches die berechnete Distanz zwischen Solllinie und der Alphabotposition per Bluetooth übertägt, ist fertiggestellt, muss allerdings noch final geprüft werden.
<br><br>
 
==Arbeitspaket 3.4: Geregelte Fahrt anhand der Ist-Ablage==
Umfangreichere Tests stehen noch aus. Gegebenenfalls müssen die Parameter für den PD-Regler noch angepasst werden.
<br><br>
 
==Arbeitspaket 3.5: Messung der Mittellinie==
Aktuell wird die Entfernung des Alphabot zu den vorhandenen Mittellinienstreifen mithilfe der IR-Sensoren und dem "map()"-Befehl in Millimetern berechnet. Der reale Abstand ist dabei Abhängig von der passenden Kalibrierung der Sensoren.
Die Speicherung der x- und y-Koordinaten, sowie das Einfärben der realen Mittellinie in die Karte ist noch zu realisieren.
<br><br>
==Arbeitspaket 3.6 Übertragung der Messung der Mittellinie==
Die Datenübertragen zwischen dem AlphaBot und Matlab via Bluetooth funktioniert. Aktuell werden die Entfernung der Alphabotmitte in Millimetern als Integer übertragen.<br><br>
 
==Arbeitspaket 3.7 Einzeichnen der Messwerte in die digitale Karte und Speicherung der Karte als Rundkurs.mat==
Die messwerte der Mittellinie müssen noch in die digitale Karte "Rundkurs.mat" gespeichert werden.
<br><br>
 
==Arbeitspaket 3.8: Bereinigung von Fehlern in der Karte==
 
<br><br>
==Arbeitspaket 3.9: Geregelte Fahrt in der rechten Fahrspur anhand der Prismamessung und Kartendaten==
Da die geregelte Fahrt auf der Mittellinie noch nicht fertiggestellt ist, wurde die Fahrt auf der rechten Fahrspur noch nicht weitergeführt.
<br><br>
 
==Arbeitspaket 3.10: Kamerahalterung für die Pixy2.1==
 
<br><br>
 
==Abreitspaket 3.11 Inbetriebnahme AlphaBot Linienverfolger für durchgezogene Linie und Stützung währen des Ausfalls der Linie.==
Nicht bearbeitet.
<br><br>
 
==Abreitspaket 3.12 Überarbeitung/Verbesserung des Artikels [[Referenzmessung_mit_der_Topcon_Robotic_Total_Station]]==
Nicht bearbeitet.
<br><br>


= Fehlerbehebung (Act) =
= Fehlerbehebung (Act) =


{| class="wikitable"
{| class="wikitable"
|+ style = "text-align: left"|Tabelle 4: Optimierungsansätze für das WS 25/26
|+ style = "text-align: left"|Tabelle 5: Optimierungsansätze des Sprint1
|-
|-
! Ergebnis !! Optimierung
! Ergebnis !! Optimierung
|-
|-
| Req. 1: Autonome Fahrt|| Planung, Umsetzung und Test im WS 25/26
| Req. 1: Geregelte Fahrt || Kalma-Filter für d, Reglerabstimmung
|-
| Req. 3: Konzept zur Aufzeichnung der Littellinie || Effizienter arbeiten (trunk mit Tag für Sprint)
|-
|-
| Req. 3: Konzept zur Aufzeichnung der Littellinie || Planung, Umsetzung und Test im WS 25/26
| Req. 4: Messung der Farbe und Position der Mittellinie  || Gesamtarchitektur zu Beginn erstellen
|-
|-
| Req. 4: Messung der Farbe und Position der Mittellinie || Planung, Umsetzung und Test im WS 25/26
| Req. 5: Fehlerbereinigung || aus den Augen verloren, Wichtigkeit unterschätzt, Übertrag aus Multisensorsysteme
|-
|-
| Req. 5: Fehlerbereinigung || Planung, Umsetzung und Test im WS 25/26
| Req. 6: Digitale Karte || zeitlich nach hinten verschoben
|-
|-
| Req. 6: digitale Karte  || Planung, Umsetzung und Test im WS 25/26
| Req. 7: KANBAN-Board || hat gut geklappt, Gesamtergebnis aus den Augen verloren
|-
|-
| Req. 7: Vorbereitung der AP durch SCH war gut || Freigabe für jedes Weitersetzen eines AP auf dem KANBAN-Board durch SCH als Feedback.
| Req. 8: Lösungsweg und Lösung muss im Wiki dokumentiert werden. || nicht bearbeitete AP wurden nicht dokumentiert
|-
|-
| 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. Die Dokumentation beginnt mit der Planung (z.&thinsp;B. PAP), Umsetzung, Testdokumentation bis hin zur Darstellun und Diskussion der (Test-)Ergebnisse.
| Req. 9: Fahrt in der rechten Fahrspur || zeitlich nach hinten verschoben
|-
|-
| Req. 9: Fahrt in der neuen Karte || Planung, Umsetzung und Test im WS 25/26
| Req. 10: Kamerakalterung || Wichtigkeit unterschätzt, AP aus den Augen verloren, Fahrtrichtung überdenken
|-
|-
| Req. 10: Kamerakalterung || Planung, Umsetzung und Test im WS 25/26
| Nachhaltigkeit || Transfer der Software in den SVN\trunk <code>https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Software/AlphaBot</code>
|-
|-
|}
|}


= Zusammenfassung=
= Zusammenfassung=
Im Sprint 3 wurden die die Aufgaben aus Sprint 2 übernommen und in einzelne Arbeitspakete gegliedert. Nach Abschluss des Sprint 3 stehen folgende Ergebnisse:
*Positionsmessung des Alphabot [x,y]
*Berechnung der Ist-Ablage
*Übertragung der Ist-Ablage via Bluetooth MATLAB→Arduino (Senden und Empfang)
*Messung der Mittellinie
*Übertragung der Messung der Mittellinie via Bluetooth Arduino→MATLAB(Senden und Empfang)


In Tabelle 6 ist der aktuelle Status zum Ende des Sprint 1 zusammengefasst. Wie zu erkennen, wurden nicht alle Arbeitspakete bearbeitet und bzw. oder nicht fertig gestellt. Die bearbeiteten Artikel wurden systematisch geplant, umgesetzt, getestet und dokumentiert. In einem ersten Systemtest wurde die geregelte Fahrt an der Mittellinie realisiert, wie in Abschnitt [[SDE Systementwicklung WS25/26: Geregelte autonome Fahrt#Systemtest gegen die Anforderungen | Systemtest gegen die Anforderungen]] dokumentiert.
Fehlende Bausteine zum Ziel des Sprint1 sind zum einen das Arbeitspaket 1.4 zur Schätzung der Roboterpose und das Arbeitspaket 1.9 zum einzeichnen der Punkte der Mittellinie in die Karte. Dann könnten alle einzelnen Module aus den Arbeitspaketen zu einem kompletten System zusammengefügt werden.


Für die Erfüllung aller Anforderungen müssen noch folgende Punkte ergänzt werden:
{| class="wikitable"
*Schätzung der Roboterpose (Winkel)
|+ style="text-align:left;"| Tabelle 6: Stand der Arbeitspakete am Kanban-Board zum Abschluss des Sprint1
*Berechnung der Mittellinienposition in der Karte mithilfe der gemessenen Daten
|-
*Implementieren aller Funktionen zu einem Programm das alle Funktionen beinhaltet
! ToDo !! Planung !! in Arbeit !! Probleme !! Testen !! Dokumentation !! Erledigt
|-
| || || || ||  || ||[[SDE WS25: AP 1.1 Positionsmessung des AlpaBot| 1.1 Positionsmessung des Alphabot]]
|-
|  || || || || || || [[SDE WS25: AP 1.2 Schätzung der Roboterpose| 1.2 Schätzung der Roboterpose]]
|-
| || || || || || || [[SDE_WS25:_AP_1.2_Berechnung_der_Ist-Ablage_des_Prismas_zur_Sollinie|1.3 Berechnung der Ist-Ablage ]]
|-
| || || || || || || [[SDE_WS25:_AP_1.4_Übertragung_der_Ist-Ablage_via_BT|1.4 Übertragung der Ist-Ablage Matlab→Arduino]]
|-
| || || || || [[SDE_WS25: AP 1.5 Geregelte Fahrt anhand der Ist-Ablage | 1.5 Geregelte Fahrt anhand der Ist-Ablage (Regelabweichung e)]] || ||
|-
| || || || || || || [[SDE_WS25:_AP_1.6_Messung_der_Mittellinie | 1.6 Messung der Mittellinie]]
|-
| || || || || || || [[SDE_WS25:_AP_1.7_Berechnung_der_Mittellinienposition | 1.7 Berechnung der Mittellinienposition]]
|-
| || || || || || || [[SDE_WS25:_AP_1.8_Übertragung_der_Messung_der_Mittellinie_via_BT_Arduino→MATLAB|1.8 Übertragung der Mittellinienposition ]]
|-
| 1.9 Einzeichnen der Mittellinie in Karte || || || || || ||
|-
| 1.10 Bereinigung von Fehlern in der Karte || || || || || ||
|-
| || 1.11 Geregelte Fahrt in der rechten Fahrspur || || || || ||
|-
| || || [[Kamerasensor_Pixy_2.1|1.12 Kamerahalterung für Pixy 2.1]]|| || || || 
|-
| 1.13 Stützen der Regelung durch Linienfolger || || || || || ||
|-
| 1.14 Doku überarbeiten Topcon Station || || || || || ||
|-
|}


= Anhang =
= Anhang =
Arbeitsergebnisse im SVN-Ordner:
Arbeitsergebnisse im SVN-Ordner:
  https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/SS2025/Sprint_3/
  https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/WS2025/Sprint_1/
 


<!--
{| class="wikitable"
{| class="wikitable"
|+ style = "text-align: left"|Tabelle 5: Ablauf Meilenstein Sprint 3
|+ style = "text-align: left"|Tabelle 5: Ablauf Meilenstein Sprint 1
|-
|-
! Uhrzeit !! Inhalt  
! Uhrzeit !! Inhalt  
Zeile 388: Zeile 248:
| 10:30 || Verabschiedung
| 10:30 || Verabschiedung
|}
|}
 
-->


{| class="wikitable"
{| class="wikitable"
|+ style = "text-align: left"|Tabelle 6: Bereitgestellte Demos und Daten
|+ style = "text-align: left"|Tabelle 6: Bereitgestellte Demos und Daten
|-
|-
! # !! Datei !! Bemerkung
! # !! Datei !! Bemerkung !! Testbericht
|-
| 1 || [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Daten/Rundkurs_L33_E01_210/MittelLinie_W.mat <code>MittelLinie_W.mat</code>] || Array mit Mittellinie für AP 1.2
|-
| 2 || [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Daten/Rundkurs_L33_E01_210/RechteFahrspur_W.mat <code>RechteFahrspur_W.mat</code>] || Array mit Sollinie in der Mitte der rechten Fahrspur für AP 1.9
|-
| 3 || [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Daten/Rundkurs_L33_E01_210/LinkeFahrspur_W.mat <code>LinkeFahrspur_W.mat</code>] || Array mit Sollinie in der Mitte der rechten Fahrspur für AP 1.9
|-
| 4 || [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Daten/Rundkurs_L33_E01_210/berechneEntfernungPunktGerade.m <code>berechneEntfernungPunktGerade.m</code>]|| Berechnung der Ist-Ablage des Prismas zur Sollinie (AP 1.2) || [[SDE_Systementwurf_SoSe2025:_Testbericht_berechneEntfernungPunktGerade.m|Testbericht]]
|-
|-
| 1 || [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/SS2025/Sprint_2/m-files/MittelLinie_W.mat <code>MittelLinie_W.mat</code>] || Array mit Mittellinie für AP 3.2
| 5 || [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/SS2025/Sprint_2/c-files/Demo_Char2Float/Demo_Char2Float.ino <code>Demo_Char2Float.ino</code>] || C-Demo für die Umwandlung eines Char in Float
|-
|-
| 2 || [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/SS2025/Sprint_3/m-files/RechteFahrspur_W.mat <code>RechteFahrspur_W.mat</code>] || Array mit Sollinie in der Mitte der rechten Fahrspur für AP 3.9
| 6 || [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/Arduino/ArduinoLibOrdner/ArduinoUnoR3/examples/DemoSendeFloatSerial/DemoSendeFloatSerial.ino <code>DemoSendeFloatSerial.ino</code>] || C-Demo versendet Fließkommazahl via Serial IO.  
|-
|-
| 3 || [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/SS2025/Sprint_3/m-files/berechneEntfernungPunktGerade.m <code>berechneEntfernungPunktGerade.m</code>]|| Berechnung der Ist-Ablage des Prismas zur Sollinie (AP 3.2)
| 7 || [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/Arduino/ArduinoLibOrdner/ArduinoUnoR3/examples/DemoSendeFloatSerial/empfangeBluetoothFloat.m <code>empfangeBluetoothFloat.m</code>] || MATLAB<sup>®</sup>-Demo für den Empfang einer Fließkommazahl via Bluetooth
|-
|-
| 4 || [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/SS2025/Sprint_2/c-files/Demo_Char2Float/Demo_Char2Float.ino <code>Demo_Char2Float.ino</code>] || C-Demo für die Umwandlung eines Char in Float
| 8 || [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/Arduino/ArduinoLibOrdner/ArduinoUnoR3/examples/DemoBluetoothModulHC05/DemoSoftwareSerial/DemoSoftwareSerial.ino <code>DemoSoftwareSerial.ino</code>] || C-Demo für bidirektionale Bluetooth Kommunikation
|-
|-
| 5 || [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/Arduino/ArduinoLibOrdner/ArduinoUnoR3/examples/DemoSendeFloatSerial/DemoSendeFloatSerial.ino <code>DemoSendeFloatSerial.ino</code>] || C-Demo versendet Fließkommazahl via Serial IO.
| 9 || [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/Arduino/ArduinoLibOrdner/ArduinoUnoR3/examples/DemoBluetoothModulHC05/BluetoothIO.<code>BluetoothIO.m </code>] || MATLAB<sup>®</sup>-Demo für bidirektionale Bluetooth Kommunikation
|-
|-
| 6 || [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/Arduino/ArduinoLibOrdner/ArduinoUnoR3/examples/DemoSendeFloatSerial/empfangeBluetoothFloat.m  <code>empfangeBluetoothFloat.m</code>] || MATLAB<sup>®</sup>-Demo für den Empfang einer Fließkommazahl via Bluetooth
| 10 || [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/WS2025/Sprint_1/m-files/testBerechneRegelabweichungSpur.m  <code>testBerechneRegelabweichungSpur.m</code>] || Ein gemessener Punkt wird in der Fahrspur in W-KOS angezeigt und der Abstand d zur Mitellinie berechnet.
|-
|-
| 7 || [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/Arduino/ArduinoLibOrdner/ArduinoUnoR3/examples/DemoBluetoothModulHC05/DemoSoftwareSerial/DemoSoftwareSerial.ino <code>DemoSoftwareSerial.ino</code>] || C-Demo für bidirektionale Bluetooth Kommunikation
| 11 || [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/WS2025/Sprint_1/m-files/KosTrafoTzuWelt.<code>KosTrafoTzuWelt.m</code>] || Koordinatentransformation eines Punktes vom T-KOS in das W-KOS anhand der Referenzpositionen A und B.
|-
|-
| 8 || [https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/Arduino/ArduinoLibOrdner/ArduinoUnoR3/examples/DemoBluetoothModulHC05/BluetoothIO.m <code>BluetoothIO.m </code>] || MATLAB<sup>®</sup>-Demo für bidirektionale Bluetooth Kommunikation
| 12 || [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/WS2025/Sprint_1/Test/TestKosTrafoTzuWelt/testeKosTrafoTzuWelt.m   <code>testeKosTrafoTzuWelt.m</code>] || Test und Visualisierung der KOS-Trafo || [[SDE_Systementwurf_SoSe2025:_Testbericht_testeKosTrafoTzuWelt.m|Testbericht]]
|}
|}



Aktuelle Version vom 18. November 2025, 11:47 Uhr

Abb. 1: Autonome Fahrbahnvermessung im Labor Autonome Systeme
Abb. 2: Rundkurs mit Solllinie (rote Mittellinie)
Autoren: Jan Steffens & Lukas Berkemeier
Dozent: Prof. Dr.-Ing. Schneider
Modul Mechatronik, Systementwicklung (Wahlpflichtprofil „Systems Design Engineering“), Wintersemester
Modulbezeichnung: MTR-B-2-7.09
Modulverantwortung: Ulrich Schneider
Lehrveranstaltung: Praktikum Systementwicklung
Sprint 1: Geregelte autonome Fahrt
Zeit: Dienstag, 10:00 - 12:15 Uhr, Selbstlernzeit: TBD
Ort: Labor L3.3-E01-180 (Autonome Systeme)

Einleitung

Im Praktikum Systementwurf im SoSe25 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 geregelt zu fahren, diese zu vermessen und in die Karte zu übertragen. Zu Sprint 2 wurde die Bluetooth-Kommunikation mit dem AlphaBot realisiert und getestet.

Die Ergebnisse der PDCA-Phase 4 (Fehlerbehebung) ist hier dokumentiert und in Sprint 1 zu berücksichtigen.

Verwenden Sie die Eingangsdaten im Ordner:

https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Daten/Rundkurs_L33_E01_210

Im Welt-KOS (W-KOS) hat Punkt A die Position AW=[1,83;0;0]m (vgl. Abb. 2).

Tabelle 1: Eingangsdaten
Datei Datentyp Beschreibung
MittelLinie_W.mat 2x632 double Positionen der Mittellinie
LinkeFahrspur_W.mat 2x632 double Positionen der linken Fahrspur
RechteFahrspur_W.mat 2x632 double Positionen der rechten Fahrspur
Tabelle 2: 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 zur Positionsregelung die Referenzdaten verwenden und als Stützung für die Linienverfolgung nutzten. 1
4 Die Messwerte Pose (x, y, Kurs) und Farbe müssen mit MATLAB® aufgezeichnet werden. 1
5 Fehler in den Messwerten müssen bereinigt werden. 1
6 Die zweidimensionale digitalen Karte mit gemessener Mittellinie muss als MATLAB®-Datei (.mat) bereitgestellt werden. 1
7 Das Vorgehen muss am KANBAN-Board geplant und verfolgt werden. 1
8 Lösungsweg und Lösung muss im Wiki für nachfolgende Studierende verständlich dokumentiert werden. 1
9 Nach Erstellen der digitalen Karte muss die Fahrt des AlphaBot in der rechten Fahrspur in der Karte eingezeichnet werden. 1
10 Als Vorbereitung des nächsten Sprints muss eine Kamerahaltung für die Pixy2.1 für den AlphaBot geplant, designed, gedruckt, getestet und dokumentiert werden. 1
Tabelle 3: Arbeitspakete für Sprint 1
AP Beschreibung Priorität Zuständigkeit
1.1 Positionsmessung des AlpaBot [x,y] 1 Steffens
1.2 Schätzung der Roboterpose Ψ 1 Steffens
1.3 Berechnung der Ist-Ablage des Prismas zur Sollinie 1 Steffens
1.4 Übertragung der Ist-Ablage via BT MATLAB→Arduino (Senden und Empfang) 1 Steffens
1.5 Geregelte Fahrt anhand der Ist-Ablage 1 Berkemeier
1.6 Messung der Mittellinie mit dem Linienverfolgungssensor 1 Berkemeier
1.7 Berechnung der Mittellinienposition (x, y) anhand der Messwerte des Linienverfolgungssensors 1 Berkemeier
1.8 Übertragung der Messung der Mittellinie (x, y, Farbe) via BT Arduino→MATLAB (Senden und Empfang) 1 Berkemeier
1.9 Einzeichnen der Messwerte in die digitale Karte und Speicherung der Karte als Rundkurs.mat 1 Steffens
1.10 Bereinigung von Fehlern in der Karte 1 Steffens
1.11 Geregelte Fahrt in der rechten Fahrspur anhand der Prismamessung und Kartendaten 1 Berkemeier
1.12 Kamerahaltung für die Pixy2.1 1 Steffens
1.13 Inbetriebnahme AlphaBot Linienverfolger für durchgezogene Linie und Stützung während des Ausfalls der Linie. 2 Berkemeier
1.14 Überarbeitung/Verbesserung des Artikels Referenzmessung_mit_der_Topcon_Robotic_Total_Station 2 Berkemeier

Planung (Plan)

Um die gesetzten Ziele zu erreichen wurde der Sprint am Kanban-Board in Arbeitspakete unterteilt. Die Arbeitspakete wurden eigenständig geplant.

Ziel-Zustand

Die Ziele des Sprint 1 sind es, die reale Mittelinie mithilfe der geregelten Fahrt auf der Mittellinie und den IR-Sensoren am AlphaBot zu erfassen, den AlphaBot dann geregelt in der rechten Fahrspur fahren zu lassen und eine Kamerahaltung für die Pixy2.1 Kamera zu entwerfen.

Die Fahrt auf der Mittellinie erfolgt dabei auf der Mittellinie, die in unseren erfassten Karte eingezeichnet wurde. Die reale Mittellinie soll dann in die Karte eingetragen werden. Um auf den Linien geregelt zu fahren soll die Ist-Ablage berechnet und genutzt werden.

Umsetzung (Do)

Die Arbeitspakete aus Tabelle 3 wurden wurden bearbeitet und deren Umsetzung in den einzelnen Wiki Artikeln dokumentiert.

Test und Dokumentation (Check)

Die einzelnen Arbeitspakete und Module wurden eigenständig getestet und dokumentiert.

Systemtest gegen die Anforderungen

Tabelle 4: Systemtest gegen die Anforderungen
Req. Beschreibung Testergebnis Erfüllt
1 Ein AlphaBot muss die Mittellinien der Fahrbahn autonom verfolgen. Modultest, geregelteFahrtMittellinie.m
2 Als Referenzmessystem kommt die Topcon Robotic Total Station zum Einsatz. SDE WS25: AP 1.1 Positionsmessung des AlpaBot
3 Der AlphaBot muss zur Positionsregelung die Referenzdaten verwenden und als Stützung für die Linienverfolgung nutzten.
4 Die Messwerte Pose (x, y, Kurs) und Farbe müssen mit MATLAB® aufgezeichnet werden.
5 Fehler in den Messwerten müssen bereinigt werden.
6 Die zweidimensionale digitalen Karte mit gemessener Mittellinie muss als MATLAB®-Datei (.mat) bereitgestellt werden.
7 Das Vorgehen muss am KANBAN-Board geplant und verfolgt werden. KANBAN Übersicht
8 Lösungsweg und Lösung muss im Wiki für nachfolgende Studierende verständlich dokumentiert werden. Ein Teil der Lösungen wurden dokumentiert und in Tabelle 3 verlinkt.
9 Nach Erstellen der digitalen Karte muss die Fahrt des AlphaBot in der rechten Fahrspur in der Karte eingezeichnet werden.
10 Als Vorbereitung des nächsten Sprints muss eine Kamerahaltung für die Pixy2.1 für den AlphaBot geplant, designed, gedruckt, getestet und dokumentiert werden. Kamerahalterung

Status - Sprint 1:

  • Regler schwingt auf
  • Analyse notwendig
  • Aufzeichnung von Regelparameter über der Zeit
  • Vergleich mit Ground-Truth über der Zeit

Fehlerbehebung (Act)

Tabelle 5: Optimierungsansätze des Sprint1
Ergebnis Optimierung
Req. 1: Geregelte Fahrt Kalma-Filter für d, Reglerabstimmung
Req. 3: Konzept zur Aufzeichnung der Littellinie Effizienter arbeiten (trunk mit Tag für Sprint)
Req. 4: Messung der Farbe und Position der Mittellinie Gesamtarchitektur zu Beginn erstellen
Req. 5: Fehlerbereinigung aus den Augen verloren, Wichtigkeit unterschätzt, Übertrag aus Multisensorsysteme
Req. 6: Digitale Karte zeitlich nach hinten verschoben
Req. 7: KANBAN-Board hat gut geklappt, Gesamtergebnis aus den Augen verloren
Req. 8: Lösungsweg und Lösung muss im Wiki dokumentiert werden. nicht bearbeitete AP wurden nicht dokumentiert
Req. 9: Fahrt in der rechten Fahrspur zeitlich nach hinten verschoben
Req. 10: Kamerakalterung Wichtigkeit unterschätzt, AP aus den Augen verloren, Fahrtrichtung überdenken
Nachhaltigkeit Transfer der Software in den SVN\trunk https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Software/AlphaBot

Zusammenfassung

In Tabelle 6 ist der aktuelle Status zum Ende des Sprint 1 zusammengefasst. Wie zu erkennen, wurden nicht alle Arbeitspakete bearbeitet und bzw. oder nicht fertig gestellt. Die bearbeiteten Artikel wurden systematisch geplant, umgesetzt, getestet und dokumentiert. In einem ersten Systemtest wurde die geregelte Fahrt an der Mittellinie realisiert, wie in Abschnitt Systemtest gegen die Anforderungen dokumentiert. Fehlende Bausteine zum Ziel des Sprint1 sind zum einen das Arbeitspaket 1.4 zur Schätzung der Roboterpose und das Arbeitspaket 1.9 zum einzeichnen der Punkte der Mittellinie in die Karte. Dann könnten alle einzelnen Module aus den Arbeitspaketen zu einem kompletten System zusammengefügt werden.

Tabelle 6: Stand der Arbeitspakete am Kanban-Board zum Abschluss des Sprint1
ToDo Planung in Arbeit Probleme Testen Dokumentation Erledigt
1.1 Positionsmessung des Alphabot
1.2 Schätzung der Roboterpose
1.3 Berechnung der Ist-Ablage
1.4 Übertragung der Ist-Ablage Matlab→Arduino
1.5 Geregelte Fahrt anhand der Ist-Ablage (Regelabweichung e)
1.6 Messung der Mittellinie
1.7 Berechnung der Mittellinienposition
1.8 Übertragung der Mittellinienposition
1.9 Einzeichnen der Mittellinie in Karte
1.10 Bereinigung von Fehlern in der Karte
1.11 Geregelte Fahrt in der rechten Fahrspur
1.12 Kamerahalterung für Pixy 2.1
1.13 Stützen der Regelung durch Linienfolger
1.14 Doku überarbeiten Topcon Station

Anhang

Arbeitsergebnisse im SVN-Ordner:

https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/_Semesterordner/WS2025/Sprint_1/


Tabelle 6: Bereitgestellte Demos und Daten
# Datei Bemerkung Testbericht
1 MittelLinie_W.mat Array mit Mittellinie für AP 1.2
2 RechteFahrspur_W.mat Array mit Sollinie in der Mitte der rechten Fahrspur für AP 1.9
3 LinkeFahrspur_W.mat Array mit Sollinie in der Mitte der rechten Fahrspur für AP 1.9
4 berechneEntfernungPunktGerade.m Berechnung der Ist-Ablage des Prismas zur Sollinie (AP 1.2) Testbericht
5 Demo_Char2Float.ino C-Demo für die Umwandlung eines Char in Float
6 DemoSendeFloatSerial.ino C-Demo versendet Fließkommazahl via Serial IO.
7 empfangeBluetoothFloat.m MATLAB®-Demo für den Empfang einer Fließkommazahl via Bluetooth
8 DemoSoftwareSerial.ino C-Demo für bidirektionale Bluetooth Kommunikation
9 BluetoothIO.m MATLAB®-Demo für bidirektionale Bluetooth Kommunikation
10 testBerechneRegelabweichungSpur.m Ein gemessener Punkt wird in der Fahrspur in W-KOS angezeigt und der Abstand d zur Mitellinie berechnet.
11 KosTrafoTzuWelt.m Koordinatentransformation eines Punktes vom T-KOS in das W-KOS anhand der Referenzpositionen A und B.
12 testeKosTrafoTzuWelt.m Test und Visualisierung der KOS-Trafo Testbericht



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