BSF-Querreglung: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
 
(16 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
'''Autoren:''' [[Benutzer:Daoyin Wang|Daoyin Wang]]  
'''Autoren:''' [[Benutzer:Daoyin Wang|Daoyin Wang]]<br/>
'''Betreuer:''' [[Benutzer:Ulrich_Schneider| Prof. Schneider]]<br/>


== Einleitung ==
== Einleitung ==
Zeile 16: Zeile 17:


* Pflichtenheft zeigen:
* Pflichtenheft zeigen:
[[Datei:Pflichtenheft_Wang.PNG|1200px|thumb| none |Abbildung des Pflichtenheft]]
[[Datei:Pflichtenheft_Wang1.PNG|1200px|thumb| none |Abbildung des Pflichtenheft]]


== Meilensteine ==
== Meilensteine ==
Zeile 109: Zeile 110:
Das obige Bild zeigt meine Optimierung von "Sollvorgabe mit Hindernis". Im Folgenden werden meine Optimierungsideen beschrieben.
Das obige Bild zeigt meine Optimierung von "Sollvorgabe mit Hindernis". Im Folgenden werden meine Optimierungsideen beschrieben.
[[Datei:Hindernisumfahrungskonzept.PNG|600px |thumb| none |Hindernisumfahrungskonzept]]
[[Datei:Hindernisumfahrungskonzept.PNG|600px |thumb| none |Hindernisumfahrungskonzept]]
Punkt O : der ursprüngliche Zustand des Fahrzeugs ( HindernisBit = 0;Offset = 0 )
Punkt A : der Zustandpunkt nach dem Erkennen des Hindernisses nach Links verschieben ( HindernisBit = 1;Offset = 0.2 )
Punkt B : der Zustandpunkt in einen ruhigen Fahrzustand übergehen
Punkt C : der Zustandspunkt zur ursprünglichen Route zurückzukehren( HindernisBit = 0;Offset = 0 )
Punkt D : der Zustandspunkt zur ursprünglichen Route zurückgekehrt sein
Punkt E : der Punkt das Hindernis erkennen
AE : der Erkennungsabstand der Hindernisumfahrung ( AE=Abstand : 0.1-1.2 )
OA : die ursprüngliche Fahrstrecke ( OA=Streckendifferenz )
OC : die Fahrstrecke in der Zustandspunkt C ( OC=Strecke )
ABC : der vor zur ursprünglichen Route zurückkehrte Abstand der Hindernisumfahrung ((ABC=Strecke-Streckendifferenz)>=1.4 )
Der Ansatz zur Hindernisumfahrungskonzept besteht darin, die Querführung des Ziels im Fall eines Hindernisses um eine Spurbreite nach links zu verschieben, dh auf die linke Spur zu wechseln.<br>  
Der Ansatz zur Hindernisumfahrungskonzept besteht darin, die Querführung des Ziels im Fall eines Hindernisses um eine Spurbreite nach links zu verschieben, dh auf die linke Spur zu wechseln.<br>  
Nach den Informationen [https://wiki.hshl.de/wiki/index.php/BSF_-_Bahn-_und_Spurführung#Vorausschauweite Wiichtig-Bereich] können Wir wissen: Die Kamera mit der nachgeschalteten Bildverarbeitung liefert nämlich nur Ergebnisse für dem Bereich zwischen 0,4 m und 1,5 m vor dem Fahrzeug.<br>
Nach den Informationen [https://wiki.hshl.de/wiki/index.php/BSF_-_Bahn-_und_Spurführung#Vorausschauweite Wiichtig-Bereich] können Wir wissen: Die Kamera mit der nachgeschalteten Bildverarbeitung liefert nämlich nur Ergebnisse für dem Bereich zwischen 0,4 m und 1,5 m vor dem Fahrzeug.<br>
Und die ursprüngliche Programmreaktionsentfernung ist zu lang, deshalb habe ich nach vielen Tests den Abstand von 0,1-2,5 auf 0,1-1,2 geändert, um eine genauere und schnellere Systemreaktion zu erzielen.Die Voraussetzung ist natürlich, dass es nicht mit Hindernissen kollidiert.
Und die ursprüngliche Programmreaktionsentfernung ist zu lang, deshalb habe ich nach vielen Tests den Abstand von 0,1-2,5 auf 0,1-1,2 geändert, um eine genauere und schnellere Systemreaktion zu erzielen.Die Voraussetzung ist natürlich, dass es nicht mit Hindernissen kollidiert.
<br><br>
<br>
Punkt O ist der ursprüngliche Zustand des Fahrzeugs.<br>
AE ist die von der Kamera erkannte Entfernung: AE = Abstand(0.1-1.2). <br>
Punkt A ist die Linksverschiebung nach dem Erkennen des Hindernisses: HindernisBit = 1;Offset = 0.2;<br>
BC ist die reibungslose Fahrstrecke, nachdem das Auto nach links verschoben wurde.<br>
Punkt C ist der Auslösepunkt für die Fahrzeug, um zum ursprünglichen Wegpunkt zurückzukehren: HindernisBit = 0;Offset = 0;<br>
OA ist die ursprüngliche Fahrstrecke: OA=Streckendifferenz<br>
ABC ist die zurückgelegte Strecke, bevor das Auto zur ursprünglichen Route zurückkehrt, nachdem es nach links verschoben wurde: ABC=Strecke-Streckendifferenz<br>


Hier ist WiKi-Artikel als Datenreferenz SenVx_sx_K_f64-Link:<br>
Hier ist WiKi-Artikel als Datenreferenz SenVx_sx_K_f64-Link:<br>
Zeile 150: Zeile 155:


===Betriebsergebnis===
===Betriebsergebnis===
Simulinkmodus = 1; % 1: BSF. Das Folgende ist das Operationsergebnis in diesem Zustand.
{| class="mw-datatable"
! style="font-weight: none;" |
! style="font-weight: none;" |
|-
|[[Datei:Bahn_des_Fzgs.PNG|600px |thumb| none |Bahn des Fahrzeugs]]
|[[Datei:Daten05.05.2020.PNG|600px |thumb| none |Daten]]
|-
|}
Simulinkmodus    = 4; % 4: BSF incl. Objekt auf der Fahrbahn.Das Folgende ist das Operationsergebnis in diesem Zustand.
Simulinkmodus    = 4; % 4: BSF incl. Objekt auf der Fahrbahn.Das Folgende ist das Operationsergebnis in diesem Zustand.


Zeile 167: Zeile 161:
! style="font-weight: bold;" | Nach der Optimierung
! style="font-weight: bold;" | Nach der Optimierung
|-
|-
|[[Datei:Hindernisumfahrung_vor_der_Optiemierung.PNG|600px |thumb| none |Hindernisumfahrung_vor_der_Optiemierung]]
|[[Datei:Hindernisumfahrung_vor_der_Optiemierung3.mp4|600px |thumb| none |Hindernisumfahrung_vor_der_Optiemierung]]
|[[Datei:Hindernisumfahrung_nach_der_Optiemierung.PNG|600px |thumb| none |Hindernisumfahrung_nach_der_Optiemierung]]
|[[Datei:Hindernisumfahrung_nach_der_Optiemierung3.mp4|600px |thumb| none |Hindernisumfahrung_nach_der_Optiemierung]]
|-
|-
|}
|}
Zeile 198: Zeile 192:
===Zusammenfassung des MS1===
===Zusammenfassung des MS1===
* Erstellt und aktualisiert den WiKi-Artikel
* Erstellt und aktualisiert den WiKi-Artikel
* überprüft und validiert das Konzept der Querführung
* überprüft und validiert das Konzept der Querführung in der Simulation
* überprüft und optimiert das Layout und die Verkabelung der meisten Programm-BSFQuer_Querfuehrung
* überprüft und optimiert das Layout und die Verkabelung der meisten Programm-BSFQuer_Querfuehrung in der Simulation
* verbessert die Hindernisumfahrung der Querreglung Programm-BSFQuer_Querfuehrung/Sollvorgabe mit Hindernis
* verbessert die Hindernisumfahrung der Querreglung Programm-BSFQuer_Querfuehrung/Sollvorgabe mit Hindernis in der Simulation
* verbessert der Reaktionsabstand zur Hindernisumfahrung und - zur Rückkehr zum Sollbahn
* verbessert der Reaktionsabstand zur Hindernisumfahrung und - zur Rückkehr zum Sollbahn
* lasst das Programm-BSFQuer_Querfuehrung effizienter und prägnanter
* lasst das Programm-BSFQuer_Querfuehrung effizienter und prägnanter
Zeile 206: Zeile 200:


===Ausblick auf MS2===
===Ausblick auf MS2===
* Erstellt und aktualisiert den neue Teil des WiKi-Artikel
* überprüft und validiert den eigenen WiKi-Artikel auf Probleme
* überprüft und optimiert funktionsfähige Querregelung und Querregelungparameter
* bestimmt der realitätsnahe Parameter des Einspurmodells(ESM)


== Literaturverzeichnis ==
== Literaturverzeichnis ==
Zeile 214: Zeile 212:
* [https://svn.hshl.de/svn/MTR_SDE_Praktikum/branches/2020_05_01_BSF_Querregelung/ Branch des Teams BSF Querreglung]
* [https://svn.hshl.de/svn/MTR_SDE_Praktikum/branches/2020_05_01_BSF_Querregelung/ Branch des Teams BSF Querreglung]
* [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Software/CaroloCupFahrzeug/ Trunk des autonomen Fahrzeugs]
* [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Software/CaroloCupFahrzeug/ Trunk des autonomen Fahrzeugs]
* [https://svn.hshl.de/svn/MTR_SDE_Praktikum/trunk/Teams/BSF/BSF-Quer-Daoyin_Wang/BSF-Querreglung_Bilder BSF Querreglung Bilder]
<references />
<references />



Aktuelle Version vom 15. Juni 2020, 13:33 Uhr

Autoren: Daoyin Wang
Betreuer: Prof. Schneider

Einleitung

Es wird ein Fahrzeug entwickelt, welches sich an den Anforderungen und Bedingungen des CaroloCups orientiert. Hierbei handelt es sich um einen Wettbewerb, indem studentische Teams mit autonom fahrenden Modellfahrzeugen Parcoure und Einparksituationen meistern müssen.
Es wird in diesem Artikel die Querreglung vorgestellt. Die Aufgabe der Querreglung besteht darin, den Weg des Autos (tatsächliche Größe) und den Weg des Autos (Zielgröße) zu vergleichen.

Hier ist Link zu Referenzartikel:BSF_Querregelung

Anforderungen

Im Lastenheft werden zur Querreglung folgende Anforderungen gestellt:

  • Anforderungen funktionieren:
Abbildung1 der Anforderung für Querregelung
Abbildung2 der Anforderung für Querregelung
  • Anforderungen zusammenfassen:
Abbildung1 der Anforderung
Abbildung2 der Anforderung
  • Pflichtenheft zeigen:
Abbildung des Pflichtenheft

Meilensteine

  1. Meilenstein: 14.05.2020
  2. Meilenstein: 25.06.2020

BSFQuer_Querfuehrung

Programmübersicht-BSFQuer_Querfuehrung

Die Arbeit dieses Teils besteht hauptsächlich darin, die Datei zu erkennen und gegebenenfalls zu optimieren, um die Einfachheit und Klarheit des Systembetriebs sicherzustellen.

Vor der Optimierung Nach der Optimierung
BSFQuer_Querfuehrung vor der Optimierung
BSFQuer_Querfuehrung nach der Optimierung

Da das Linienlayout ein bisschen chaotisch ist, habe ich es optimiert, die Positionen von HindernisBit und Sollvorgabe_Hindernis in Umschalter_Querführung vertauscht und die Positionen von 1 und 2 in 2_fach vertauscht, wodurch die Überkreuzungen verringert wurden. Und jeder Funktionsbaustein wurde bis zu einem gewissen Grad verkleinert oder vergrößert, um die Schönheit zu verbinden.

Schrittweise Überprüfung des Programms

Regelentfernung/Vorausschauweite

Regelentfernung/Vorausschauweite vor der Optimierung

Die Kamera mit der nachgeschalteten Bildverarbeitung liefert nämlich nur Ergebnisse für dem Bereich zwischen 0,4 m und 1,5 m vor dem Fahrzeug. Am besten arbeitet das Fahrzeug bei derzeitiger Konfiguration mit 0,8. Aus diesem Grund wurde mit der LUT der Wert auf diesen Bereich begrenzt, die Werte unter bzw. über 0,8 werden nur bei sehr geringer bzw. sehr hoher Geschwindigkeit angenommen.

Daher werden die Daten 0,8 in BSFQuer_Vorausschauweite_Factor_f64 behalten und berauchen keine Optimierung mehr.

Hier ist Link zu Wiki-Artikel Vorausschauweite:Vorausschauweite

Praedizierter_Punkt_auf_Istbahn

Vor der Optimierung Nach der Optimierung
Praedizierter_Punkt_auf_Istbahn vor der Optimierung
Praedizierter_Punkt_auf_Istbahn nach der Optimierung
Werteberechnung vor der Optimierung
Werteberechnung nach der Optimierung

Die Bestimmung des prädizierten Punktes des Fahrzeuges auf der Ist-Bahn geschieht unter folgender Annahme: Ist der Lenkwinkel des Fahrzeuges gleich Null, existiert zwischen prädiziertem Ist-Punkt und der aktuellen Ausrichtung des Fahrzeuges keine Querabweichung. Fährt das Fahrzeug nicht exakt geradeaus, befindet es sich auf einer Kreisbahn, die bei stationär statischem Lenkwinkel konstant ist.
Vereinfachen: Annahme, dass ohne Reglereingriff die Ist-Bahn eine Geradeausfahrt ist.Das Layout wurde einfach nach persönlichen Vorlieben ein bisschen geändert, um Überkreuzungen zu reduzieren und die Ästhetik zu verbessern.
Hier ist Link zu Wiki-Artikel Die Bestimmung des prädizierten Punktes:Die Bestimmung des prädizierten Punktes

Sollvorgabe ohne Hindernis

Vor der Optimierung Nach der Optimierung
Sollvorgabe ohne Hindernis vor der Optimierung
Sollvorgabe ohne Hindernis nach der Optimierung

Das Layout von "Sollvorgabe ohne Hindernis" ist etwas chaotisch. Ich habe die Position von "Regelentfernung" geändert und die Eingangsports b und c in "Matlab Function" und die Eingangsports a und b in "Matlab Function1" ausgetauscht. Ich habe auch andere Kabel teilweise modifiziert, um Überkreuzungen zu reduzieren und die Ästhetik zu verbessern.

Sollvorgabe_Ohne_Hindernis_Matlab_Funktion
Sollvorgabe_Ohne_Hindernis_Matlab_Funktion1

Function:
Die Sollbahn wird als ein Polynom zweiten Gerades, einer Parabel, approximiert. Die allgemeine Formel lautet:
Die beiden Funktionsmodule sind ausreichend optimiert und müssen nicht geändert werden.
Hier geht zu Link:BSF-Sollbahnbestimmung

*Sollvorgabe mit Hindernis*

Abstandberechnung

Vereinfachen bei der Modul-Abstandsberechnung von Sollvorgabe mit Hindernis: Annahme, Abstand pytagoraisch, auch Kurven.
Modul-Abstandsberechnung ist ausreichend vereinfacht und braucht keine Änderung erforderlich.
Die anderen Zwei Teilen in der Originaldatei ist zu einfach und muss optimiert und geändert werden.

Vor der Optimierung Nach der Optimierung
Sollvorgabe mit Hindernis vor der Optimierung
Sollvorgabe mit Hindernis nach derOptimierung
Matlab Funktion vor der Optimierung
Matlab Funktion nach derOptimierung

Das obige Bild zeigt meine Optimierung von "Sollvorgabe mit Hindernis". Im Folgenden werden meine Optimierungsideen beschrieben.

Hindernisumfahrungskonzept
Punkt O : der ursprüngliche Zustand des Fahrzeugs ( HindernisBit = 0;Offset = 0 )
Punkt A : der Zustandpunkt nach dem Erkennen des Hindernisses nach Links verschieben ( HindernisBit = 1;Offset = 0.2 )
Punkt B : der Zustandpunkt in einen ruhigen Fahrzustand übergehen
Punkt C : der Zustandspunkt zur ursprünglichen Route zurückzukehren( HindernisBit = 0;Offset = 0 )
Punkt D : der Zustandspunkt zur ursprünglichen Route zurückgekehrt sein
Punkt E : der Punkt das Hindernis erkennen
AE : der Erkennungsabstand der Hindernisumfahrung ( AE=Abstand : 0.1-1.2 )
OA : die ursprüngliche Fahrstrecke ( OA=Streckendifferenz )
OC : die Fahrstrecke in der Zustandspunkt C ( OC=Strecke )
ABC : der vor zur ursprünglichen Route zurückkehrte Abstand der Hindernisumfahrung ((ABC=Strecke-Streckendifferenz)>=1.4 )

Der Ansatz zur Hindernisumfahrungskonzept besteht darin, die Querführung des Ziels im Fall eines Hindernisses um eine Spurbreite nach links zu verschieben, dh auf die linke Spur zu wechseln.
Nach den Informationen Wiichtig-Bereich können Wir wissen: Die Kamera mit der nachgeschalteten Bildverarbeitung liefert nämlich nur Ergebnisse für dem Bereich zwischen 0,4 m und 1,5 m vor dem Fahrzeug.
Und die ursprüngliche Programmreaktionsentfernung ist zu lang, deshalb habe ich nach vielen Tests den Abstand von 0,1-2,5 auf 0,1-1,2 geändert, um eine genauere und schnellere Systemreaktion zu erzielen.Die Voraussetzung ist natürlich, dass es nicht mit Hindernissen kollidiert.

Hier ist WiKi-Artikel als Datenreferenz SenVx_sx_K_f64-Link:
Block Sensoren: die zurückgelegte Strecke, Streckenmessung Hallsensoren

Umschalter_Querfuehrung

Umschalter_Querfuehrung vor der Optimierung

Hindernisumfahrungskonzept:
Die Hindernisumfahrung ist so aufgebaut, dass anhand der Objektliste des LIDARs ein Hindernisbit erzeugt wird, mit dem zwischen der Sollvorgabe ohne Hindernis und der Sollvorgabe mit Hindernis umgeschaltet wird. Im Modell ist ein entsprechender Switch-Block Umschalter_Querführung eingefügt.
An der "Umschalter_Querfuehrung"-Funktion gibt es nichts zu ändern.
Hier geht zu Link:Hindernisumfahrungskonzept

Querregler_PID

Vor der Optimierung Nach der Optimierung
Querregler_PID vor der Optimierung
Querregler_PID nach der Optimierung
Querregler_PID/PT_1_Eing_f vor der Optimierung
Querregler_PID/PT_1_Eing_f nach der Optimierung

An der "Querregler_PID"-Funktion gibt es nichts zu ändern. Das Layout wurde einfach nach persönlichen Vorlieben ein bisschen geändert, um Überkreuzungen zu reduzieren und die Ästhetik zu verbessern.
Hier geht zu Link:Querregler_PID/Reglerentwurf

Betriebsergebnis

Simulinkmodus = 4; % 4: BSF incl. Objekt auf der Fahrbahn.Das Folgende ist das Operationsergebnis in diesem Zustand.

Vor der Optimierung Nach der Optimierung
Hindernisumfahrung_vor_der_Optiemierung
Hindernisumfahrung_nach_der_Optiemierung

Aus der Gesamtsicht ist der Hindernisvermeidungsbereich des Fahrzeugs vor der Verbesserung zu groß, und der Bereich wird nach dem Rest erheblich verringert.

Vor der Optimierung Nach der Optimierung
Hindernisumfahrung_vor_der_Optiemierung_Teil
Hindernisumfahrung_nach_der_Optiemierung_Teil

Wenn wir auf die Istbahn des Fahrzeugs zu ein einzelnes Hindernis achten, können wir feststellen, dass die verbesserte Reaktionsentfernung zur Vermeidung von Hindernissen und die Entfernung zurück zur ursprünglichen Route erheblich verkürzt sind. Die Reaktion wurde prägnanter und klarer.

Vor der Optimierung Nach der Optimierung
Hindernisumfahrung_vor_der_Optiemierung_Besonders
Hindernisumfahrung_nach_der_Optiemierung_Besonders

Wenn wir auf die Istbahn des Fahrzeugs zu den doppelten Hindernissen achten, können wir feststellen, dass das Fahrzeug vor der Verbesserung die beiden Hindernisse direkt als extrem langes Hindernis behandelt. Aber das verbesserte Fahrzeug reagiert immer noch zwischen den beiden Hindernissen.Das Fahrzeug kehrt kurz zur ursprünglichen Route zurück und umgeht dann schnell Hindernisse. Dies spiegelt die Überlegenheit des verbesserten Programms wider.

Zusammenfassung

Zusammenfassung des MS1

  • Erstellt und aktualisiert den WiKi-Artikel
  • überprüft und validiert das Konzept der Querführung in der Simulation
  • überprüft und optimiert das Layout und die Verkabelung der meisten Programm-BSFQuer_Querfuehrung in der Simulation
  • verbessert die Hindernisumfahrung der Querreglung Programm-BSFQuer_Querfuehrung/Sollvorgabe mit Hindernis in der Simulation
  • verbessert der Reaktionsabstand zur Hindernisumfahrung und - zur Rückkehr zum Sollbahn
  • lasst das Programm-BSFQuer_Querfuehrung effizienter und prägnanter
  • Bei dieser Arbeit in MS1 ​​hat Marius_Koehler mir viel geholfen und mein Programm überprüft.

Ausblick auf MS2

  • Erstellt und aktualisiert den neue Teil des WiKi-Artikel
  • überprüft und validiert den eigenen WiKi-Artikel auf Probleme
  • überprüft und optimiert funktionsfähige Querregelung und Querregelungparameter
  • bestimmt der realitätsnahe Parameter des Einspurmodells(ESM)

Literaturverzeichnis

Link zum Quelltext in WiKi

Link zum Quelltext in SVN



→ zurück zum Gruppenartikel: SDE-Team_2020/21
→ zurück zum Hauptartikel: SDE Praktikum Autonomes Fahren