SDE SoSe26: AP 1.3 Längeregelung: Unterschied zwischen den Versionen
| Zeile 50: | Zeile 50: | ||
= Umsetzung = | = Umsetzung = | ||
Die Umsetzung erfolgte über eine Änderung des Konstantenwertes. Die Motoren wurden jeweils mit einem grundsätzlchen Motorpowerwert von 100 angetrieben. Die ausgegebene Stellgröße wird dann an dem einen Motor abgezogen und an dem anderen addiert, wodurch eine Querregelung realisiert wird. Der grundsätzliche Wert für die Motorpower wird nun mit dem Betrag des Winkel von dem Vektor der Pixy Kamera (siehe Artikel:[[SDE SoSe26: AP 1.1 Spurerkennung mit der Pixy2.1|SDE SoSe26: AP 1.1 Spurerkennung mit der Pixy2.1]]) linear abgezogen und begrenzt. Die | Die Umsetzung erfolgte über eine Änderung des Konstantenwertes. Die Motoren wurden jeweils mit einem grundsätzlchen Motorpowerwert von 100 angetrieben. Die ausgegebene Stellgröße wird dann an dem einen Motor abgezogen und an dem anderen addiert, wodurch eine Querregelung realisiert wird. Der grundsätzliche Wert für die Motorpower wird nun mit dem Betrag des Winkel von dem Vektor der Pixy Kamera (siehe Artikel:[[SDE SoSe26: AP 1.1 Spurerkennung mit der Pixy2.1|SDE SoSe26: AP 1.1 Spurerkennung mit der Pixy2.1]]) linear abgezogen und begrenzt. Die minimal Wert bei der Begrenzung ist hier 0 und der maximal Wert ist bei 20. | ||
<gallery widths="200px" heights="200px" mode="packed"> | <gallery widths="200px" heights="200px" mode="packed"> | ||
Datei:Default MotorPower.png|mini|Abb.2: vorheriger Motoransteuerung | Datei:Default MotorPower.png|mini|Abb.2: vorheriger Motoransteuerung | ||
Version vom 1. Juli 2026, 18:13 Uhr

| Autor: | Jonas von Döllen |
| Modul | Mechatronik, Systementwicklung (Wahlpflichtprofil „Systems Design Engineering“), Sommersemester |
| Lehrveranstaltung: | Praktikum Systementwicklung |
| Sprint: | Bildbasierte Spurführung für autonomes Fahren |
| SVN-URL | https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Software/AlphaBot/
|
Einleitung
Im Zuge des Systementwicklungspraktikums in dem Schwerpunkt System Design Engineering muss ein Fahrzeug durch eine künstlich erzeugte Fahrstrecke autonohm auf der rechten Fahrspur fahren. Genutzt wird in diesem zweiten Teil des Praktikums ein AlphaBot mit einer Pixy2.1 Kamera oben drauf. Hierfür soll nach dem aktuellen Sprint eine Längsregelung implementiert werden. In diesem Artikel wird die Dokumentation dazu aufgeführt.
Planung
Ist Zustand
Bei der vorherigen Gruppe ist das Fahrzeug mit konstanter Geschwindigkeit durch die gesamte Fahrspur gefahren.
Soll Zustand
Das Fahrzeug soll nun vor einer Kurve die Geschwindigkeit je nach Krümmung drosseln und nach der Kurve wieder beschleunigen
Umsetzungsidee
Nach der Implementierung des Arbeitspaketes AP 1.1 Spurerkennung mit der Pixy 2.1 berechnet das Subsystem über die Kamerawerte die Parameter Krümmung und Abstand zurück. Die Krümmung (K) wird dann von einem erwartenden Krümmungswert der geraden Spur(Kger) abgezogen, der Betrag davon wird linear mit einer Gain(a) von der default Motorleistung (Pdef) abgzogen und mit einer Ober und Untergrenze begrenzt. Der herauskommende Wert ist dann die angesteuerte Motorleistung (Pout).
Getestet werden die Werte anschließend durch das Auslesen der Werte in dem Data Inspector aus Simulink und dabei das beobachtete Verhalten des Alphabots durch den Tester.
Anforderungen
| Req. | Beschreibung | Priorität |
|---|---|---|
| 1 | Fahrzeug muss seine Geschwindigkeit vor einer Kurve sichtlich drosseln. (Motorpower 20% reduziert gegenüber der eingestellten Default Motorpower) drosseln | 1 |
| 2 | Fahrzeug muss seine Geschwindigkeit nach einer Kurve beschleunigen. (Motorpower min. 90% der eingestellten Default Motorpower) | 1 |
| 3 | Fahrzeug muss mit gedrosselter Geschwindigkeit die Kurve durchfahren. (Motorpower 20% gegenüber der eingestellten Default Motorpower reduziert) | 1 |
Umsetzung
Die Umsetzung erfolgte über eine Änderung des Konstantenwertes. Die Motoren wurden jeweils mit einem grundsätzlchen Motorpowerwert von 100 angetrieben. Die ausgegebene Stellgröße wird dann an dem einen Motor abgezogen und an dem anderen addiert, wodurch eine Querregelung realisiert wird. Der grundsätzliche Wert für die Motorpower wird nun mit dem Betrag des Winkel von dem Vektor der Pixy Kamera (siehe Artikel:SDE SoSe26: AP 1.1 Spurerkennung mit der Pixy2.1) linear abgezogen und begrenzt. Die minimal Wert bei der Begrenzung ist hier 0 und der maximal Wert ist bei 20.
-
Abb.2: vorheriger Motoransteuerung
-
Abb.3: neue Regelung mit Subsystem integriert
-
Abb. 4: Subsystem von innen
Tests
| Req. | Beschreibung | Testergebnis | Testperson | Datum |
|---|---|---|---|---|
| 1 | Fahrzeug muss seine Geschwindigkeit vor einer Kurve sichtlich (Motorpower 20% reduziert gegenüber der eingestellten Default Motorpower) drosseln | n.i.O. | Jonas von Döllen | 01.07.2026 |
| 2 | Fahrzeug muss seine Geschwindigkeit nach einer Kurve beschleunigen (Motorpower min. 90% der eingestellten Default Motorpower) | i.O. | Jonas von Döllen | 01.07.2026 |
| 3 | Fahrzeug muss mit gedrosselter Geschwindigkeit die Kurve durchfahren (Motorpower 20% gegenüber der eingestellten Default Motorpower reduziert) | n.i.O. | Jonas von Döllen | 01.07.2026 |
Für das Testen wurde der Alphabot einmal gefahren und mit Monitore and Tune ausgelesen. Hierbei wurden diese Ergebnisse erzielt (siehe untere Abbildung).

Für ein bestehen der Ergebnisse müsste das PWM Signal vom Motorantrieb bei gerader Strecke der Mittelwert zwischen 135 und 150 PWM liegen (90% der max Default Motorleistung). Das tut es auch. Bei der Kurvenregelung müsste jedoch der Wert zwischen 70 und 120 PWM liegen. Der Mittelwert des Motorantriebes ist ca. bei 135 PWM. Zwar ist eine Drosselung festzustellen, diese ist jedoch außerhalb der Toleranzen. Bei der Kurvenfahrt sollte die Motorpower 20% reduziert gegenüber der eingestellten Default Motorpowernur sein. Die Kurvenfahrt konnte man anhand der Gierrate um die Z-Achse vom Gierratensensort aus AP 1.2 Messung und Verarbeitung der Gierrate die Kurve gut erkennen.
Bei der Fahrt ist dem Tester auch aufgefallen, dass es eine proportionale Abhängigkeit zwischen dem Winkel und der Regelabweichung kommt (siehe untere Abbildung)

Das bedeutet, wenn das Fahrzeug etwas weiter weg oder zu nach ist, regelt der Alphabot die Motorantriebspower und somit die Geschwindigkeit ebenfalls herunter. Das führt dazu, dass sich der Krümmungswert der gerade Spur (Kger) nicht konstant ist, sondern eine Abhängigkeit zum Abstand hat. Dadurch ist die genaue Drosselung schwierig wenn man den Betrag der Differenz von Kger und K nutzt zur Regelung.
Fehlerbehebung und Verbesserung
Bei dem Auslesen der Daten innerhalb des Data Inspectors des Simulinkmodells während des Fahrens ist eine nicht konstanter Winkel festzustellen (Abschnitt Test). Diese Abhängigkeit wird vermutet, da direkt die Werte von der Kamera ausgelesen werden und es keine Perspektiventransformation vorhanden ist. Diese sollte in dem SDE SoSe26: AP 1.1 Spurerkennung mit der Pixy2.1 vielleicht berücksichtigt werden oder zusätzlich implementiert werden.
In der Zukunft falls man die Abhängigkeit des Winkels vom Abstand trennen kann, ist das Verfahren möglich und sollte nochmals implentiert werden.
→ zurück zum Hauptartikel: Bildbasierte Spurführung für autonomes Fahren
→ zurück zum Artikel: SDE-Team 2026/27

