BSF - Bahn- und Spurführung

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen

→ zurück zum Hauptartikel: Praktikum SDE

Einleitung und Ziel

Im Rahmen des SDE-Praktikums beinhaltet ein Arbeitsbereich die Bahnplanung und die Spurführung. Die Tätigkeit unterteilt sich in die Bereiche Bahnplanung und Autonome Längs- und Querregelung. Im Sommersemester 2016 und im Wintersemester 2016/2017 wurde der Themenbereich von Marcus Irmer und Robin Kirsch bearbeitet. Die Dokumentation beruht auf der Vorarbeit von Daniel Block und Torben Petersen.

Das Thema Autonome Längs- und Querregelung beinhaltet folgende Aufgaben:

  • Analyse Istgeschwindigkeitssignal
  • Analyse Gierrate
  • Regelung längs
  • Regelung quer

Zur Querregelung ist neben der eigentlichen Reglerauslegung das Querführungskonzept und die Parametrisierung des Einspurmodells (ESM) erforderlich.
Das Ziel der Aufgabe ist die Auslegung der Längs- und Querregelung des Fahrzeugs.

Analyse Istgeschwindigkeit

Bei der Istgeschwindigkeit wurde auf den Ergebnissen der vorangegangenen Semester zurückgegriffen. Siehe Dazu: Analyse Istgeschwindigkeit

Analyse Gierrate

Bei der Istgeschwindigkeit wurde auf den Ergebnissen der vorangegangenen Semester zurückgegriffen. Siehe Dazu: Analyse Gierrate

Längsregelung

Die Längsregelung des Fahrzeugs erfordert eine exakte Bestimmung der Sollgeschwindigkeit. Aus diesem Grund wird in den folgenden zwei Abschnitten das Konzept zur Bestimmung der Sollgeschwindigkeit betrachtet. Die Längsregelung soll im Groben so funktionieren, dass in Kurven die Längsgeschwindigkeit reduziert wird.


Konzept zur Bestimmung der Sollgeschwindigkeit

SenKam - Kamera (offline)

<br\>Die Sollgeschwindigkeit des Fahrzeugs wird aus dem Krümmungsradius der Fahrbahn bestimmt, um die Geschwindigkeit in Abhängigkeit der Kurve anzupassen. Die im Online-Modus von der Kamera erfasste Fahrbahn wird mit einer Parabel im Fahrzeug-Koordinatensystem modelliert. Diese ist bestimmt über die drei Koeffizienten a, b und c. Nach der allgemeinen Parabelgleichung ax²+bx+c beschreibt a die Krümmung der Kurve und wird im Block SenKam - Kamera in den Kameraparameter a geschrieben und als Signal SenKam_SpurA_f64 ausgegeben.<br\>

Im Offline-Modus wird der Kameraparameter a aus der Position und der Richtung des im Einspurmodell simulierten Fahrzeugs berechnet. Die Parameter ESM_x_I_f64 und ESM_y_I_f64 beschreiben die Position des Fahrzeugs. Die Richtung des Fahrzeugs steht im Parameter ESM_psi_f64. Der SenKam - Kamera-Block des Offline-Modells wird in der Abbildung SenKam - Kamera (offline) dargestellt.


BSFVx - Bestimmung Sollgeschwindigkeit


Die Sollgeschwindigkeit wird im Online-Modell und im Offline-Modell im rechts dargestellten Block BSFVx - Bestimmung Sollgeschwindigkeit unter BSF - Bahnplanung und Spurfuehrung bestimmt. Die Eingänge des Blocks sind die Kameraparameter SenKam_SpurA_f64 und SenKam_SpurB_f64. Beide können zu Diagnosezwecken in einem Scope angezeigt werden. SenKam_SpurA_f64 ist der Eingang der Look-Up-Table Bestimmung Soll Geschwindigkeit aus Lenkwinkel, in der die Sollgeschwindigkeit bestimmt wird. Die Parameter PAR_Famo_VxSollBSF_f64 und PAR_BSF_KameraAParameterVorgabe_f64 der LUT werden in der Datei param_BSF.m definiert. PAR_Famo_VxSollBSF_f64 enthält den Wert 5*[0.1 0.5 0.1] und PAR_BSF_KameraAParameterVorgabe_f64 den Wert [-0.5 0 0.5]. Daraus folgt, dass die maximale Geschwindigkeit bei keiner Krümmung 2,5m/s beträgt und die minimale Geschwindigkeit von 0,5m/s bei einem Krümmungsradius von 0,5 oder -0,5 vorgegeben wird. Das Ausgangssignal BsfVx_VxSoll_unfilt_f64 der LUT wird mit dem nachgeschalteten PT1-Filter PT_1_Eing_f geglättet. Die geglättete Sollgeschwindigkeit wird über den Ausgang BsfVx_VxSoll_f64 ausgegeben.<br\>



Testumgebung Bestimmung der Sollgeschwindigkeit (Originaldatei)


Zur Überprüfung des beschriebenen Konzepts wurde eine Testumgebung für den Block BSFVx - Bestimmung Sollgeschwindigkeit erstellt. Diese ist in der nebenstehenden Abbildung dargestellt. Der Krümmungsradius wird mit einem Signal Builder simuliert. Die Parameter der LUT und die Filterfrequenz PAR_BsfVx_Filter_VxSoll_f64 von 0,5Hz wurden aus der Datei param_BSF.m übernommen. Die Sollgeschwindigkeit und der simulierte Krümmungsradius werden zur Diagnose im Workspace gespeichert und mit einem Scope angezeigt. Der Krümmungsradius wird in der Datei Spurparam_A.mat und die Sollgeschwindigkeit unter BsfVx_VxSoll_f64.mat gespeichert.


Ergebnis der Überprüfung des Sollgeschwindigkeitskonzepts (Modell)



Das Diagramm in der Abbildung Ergebnis der Überprüfung des Sollgeschwindigkeitskonzepts zeigt das Ergebnis der Überprüfung. Das obere Diagramm zeigt den simulierten Krümmungsradius und im unteren Diagramm ist die Sollgeschwindigkeit dargestellt.

Zu Beginn des Tests wird eine Rechtskurve mit einer maximalen Krümmung von -0,5 eine Sekunde lang simuliert. Drei Sekunden später wird eine ebenfalls eine Sekunde dauernde Linkskurve mit einem Krümmungsradius von 0,5 simuliert. Im unteren Diagramm ist für beide Krümmungen zu sehen, wie die Sollgeschwindigkeit bei den maximalen Krümmungen auf die minimale Geschwindigkeit 0,5m/s verringert wird. Hier ist der Grund für den PT1-Filter zu sehen. Wenn der Filter nicht verwendet würde, wäre der Verlauf der Sollgeschwindigkeit nicht geglättet, sondern sprunghaft wie der Verlauf des Krümmungsradius. Im weiteren Verlauf der Simulation werden eine schwächere Rechtskurve und eine Linkskurve simuliert. Die Sollgeschwindigkeit wird bei diesen beiden Kurven verringert. Wenn keine Kurve durchfahren wird (Krümmungsradius = 0) nimmt die Sollgeschwindigkeit den maximale Wert von 2,5 m/s an.



Dieses Simulationsergebnis konnte mit einer Offline-Simulation im BSF-Modus bestätigt werden. Im Anschluss an die Offline-Simulation wurden die in der Abbildung Ergebnis der Offline-Simulation dargestellten Diagramme zur Analyse der Simulation ausgegeben.

Ergebnis der Offline-Simulation (Originaldatei)

Das obere Diagramm zeigt die gefahrene Strecke auf dem Oval in Rot. In der Mitte wird der Krümmungsradius der Fahrbahn dargestellt. Zuerst wird die erste Linkskurve mit einer Krümmung von 0,05 durchfahren. Während der zweiten Linkskurve beträgt die Krümmung ebenfalls 0,05. Auf den Geraden ist der Krümmungsradius wieder 0.<br\> Im unteren Diagramm ist die Sollgeschwindigkeit über der Zeit aufgetragen. Dieses zeigt, dass während der Kurven die Sollgeschwindigkeit auf 2,3m/s verringert wird und auf den Geraden die maximale Sollgeschwindigkeit von 2,5m/s vorgegeben wird.<br\> Die Überprüfung im offline-Modus hat ergeben, dass das vorhandene Konzept zur Bestimmung der Sollgeschwindigkeit verwendet werden kann. Die Anwendung im Online-Modell bestätigt dieses.



Konzept zur Bestimmung der Sollgeschwindigkeit in Simulink umsetzen

Das aktuell in Simulink umgesetzte Konzept kann laut den Ergebnissen der Überprüfung verwendet werden.<br\>

Reglerentwurf

Zum besseren Verständnis wurde zusätzlich ein allgemeiner Regelkreis für die Längsführung des Fahrzeuges aufgestellt.

allgemeiner Regelkreis Längsregler

Die Parameter V_Soll und V_IST sind die gewünschte Sollgeschwindigkeit und die tatsächliche Geschwindigkeit des Fahrzeuges. In den Regelkreis eingehende Störgrößen beschreiben Problematiken wie Schlupf und verschiedene Haftreibungen der Räder oder Probleme bei der Übersetzung.
Eine detailierte Beschreibung des Regelkreises wird folgend anhand des Simulink-Modells verdeutlicht.

Für den Längsregler wurde ein separates Simulink-Modell angelegt, damit der Regler besser veranschaulicht werden kann. Der Regler besitzt einen P-, I- und D-Anteil.

Testumgebung Längsregler (Originaldatei)

Für die Untersuchung der Regler-Parameter wurde ein Einheitssprung verwendet. Es wurden dabei folgende Feststellungen gemacht.

  • Der P-Anteil ist für die Größe des "Einheitssprungs" verantwortlich. Mit größerem P-Anteil stellt sich außerdem ein zunehmendes Überschwingen ein.
  • Mit dem I-Anteil werden die Stellgröße und der P-Anteil geglättet, jedoch ist für eine glatte Stellgröße ein sehr hoher I-Anteil erforderlich (größer als 150).
  • Durch den D-Anteil kann der negative Ausschlag zu Beginn verringert werden. Mit größerem D-Anteil nimmt die Schwingung der Stellgröße zu.

Die Auswirkungen der Parameter wurden in einer Testreihe untersucht. Die Plots sind im Ordner trunk/Teams/BSF/Bilder Doku/Reglerentwurf zu finden.
Wenn nur ein D-Anteil vorhanden ist, ist die Stellgröße nicht konstant. Im Test wurden für den D-Anteil die Werte [5 15 50] verwendet und der Wert 15 gewählt, weil die Totzeit am geringsten ist. Für größere Werte nimmt sie nicht weiter ab. Im Test des I-Anteils wurde mit verschiedenen Werten experimentiert, eine konstante Stellgröße wurde erst ab einem Wert von 170 erreicht. Bei kleineren Werten konnte im Plot der Stellgröße noch eine Schwingung wahrgenommen werden. Sobald der D-Anteil hinzukommt, geht die konstante Stellgröße verloren, jedoch wird der negative Ausschlag verringert. Allerdings kann auch mit einem sehr hohen I-Anteil von 500 die Stellgröße nicht geglättet werden.

Siehe Dazu: Auslegung der Reglerparameter

Querregelung

Für die Querregelung wird verglichen, welche Bahn das Auto fahren würde (Istgröße) und welche Bahn das Auto fahren soll (Sollgröße). Zuerst wird die Bestimmung der Sollgröße beschrieben.

Querführungskonzept

Die Querführung des Fahrzeuges wird in zwei Bereiche unterteilt. Der erste Aspekt beinhaltet die Bahnplanung, die im Folgenden in ihrer theoretischen Grundlage und der Umsetzung in Simulink dargestellt wird. Die Querregelung wird im Anschluss beschrieben.

Layout BSF_Regelung (Originaldatei)

Als Grundlage für das Querführungskonzept dient die Sollbahn, die durch das Team OSE - Objekt- und Spurerkennung aufgrund der Analyse der zu fahrenden Strecke mit Hilfe eines Polynoms zweiten Gerades, das durch die Parameter a, b und c eindeutig beschrieben ist, zur Verfügung gestellt wird. (Wichtig: trunk/Anforderungsmanagement/Lastenheft/Schnittstellendokumentation.docx beachten)
Da in dieser Anwendung aufgrund der Geometrie des Fahrzeugs ein Vergleich der Soll- und Ist-Bahn nicht sinnvoll ist, muss ein Punkt auf der Bahn in der Vorausschauweite x prädiziert werden, an dem sich das Fahrzeug bei idealem Lenkwinkel und der aktuellen Geschwindigkeit befinden würde. Der ideale Lenkwinkel kann aber nicht bestimmt werden. Aus diesem Grund muss eine Abschätzung der Querabweichung von der einfachen Geradeausfahrt getroffen werden. Dabei wird der derzeitige Lenkwinkel als Referenz verwendet. Die Regeldifferenz des Querreglers bildet sich somit aus dem Punkt auf der Sollbahn und der prädizierten Positionsabschätzung.

Vorausschauweite

Die Vorausschauweite x wird abhängig von der aktuellen Geschwindigkeit des Fahrzeugs berechnet. Dazu wird eine LUT verwendet, ihre Parameter sind in der Parameterdatei param_BSF.m hinterlegt. Es sind die Werte PAR_BSFQuer_LookupVorausschauweite_Vx_f64 mit aktuell [0 0.2 0.30 0.8 3] und PAR_BSFQuer_LookupVorausschauweite_X_f64 mit aktuell [0.4 0.4 0.8 0.8 1.5]. Wichtig: 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. Es besteht aber noch die Möglichkeit auf einen manuellen Wert umzustellen, dies kann in ControlDesk® auf dem Layout BSF_Regelung gemacht werden, vgl. Abbildung Layout BSF_Regelung.

Sollbahnbestimmung

Im Folgenden soll die Bestimmung des Punktes auf der Sollbahn beschrieben werden. Die Bahn wird als ein Polynom zweiten Gerades, einer Parabel, approximiert. Die allgemeine Formel lautet:

Die Abbildung Schema der Sollbahn zeigt die Sollkurve im Fahrzeug-Koordinatensystem. Auch die Lage des Sollpunktes auf der Kurve ist dort qualitativ zu sehen.

Schema der Sollbahn
Quelle: trunk/Dokumentation/Dokumentation_LaTex/Carolo_Doku_2012.pdf

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.
Der Radius dieser Kreisbahn lässt sich aus der stationären Gierrate und der Geschwindigkeit wie folgt bestimmen:

Die Abbildung Schema der Istbahn zeigt die prädizierte Istbahn im Fahrzeug-Koordinatensystem und den Zusammenhang zwischen Querabweichung y und Vorausschauweite x.

Schema der Istbahn
Quelle: trunk/Dokumentation/Dokumentation_LaTex/Carolo_Doku_2012.pdf


Zur Bestimmung der Querabweichung y wird der in der Skizze erkenntliche Zusammenhang zwischen dem Kreisradius r und der Vorausschauweite x verwendet. Dazu muss jedoch zuvor sichergestellt werden, dass die Vorausschauweite kleiner als der Betrag des erechneten Radius ist. Mit dem Satz des Phythagoras kann dann a wie folgt bestimmt werden:


Die Querabweichung y kann aus r und a bestimmt werden, sofern r positiv ist (Linkskurve):


Falls r negativ ist (Rechtskurve), berechnet sich y wie folgt:


Da die Vorausschauweite x unabhängig vom derzeitigen Kurvenradius r bestimmt wird, kann der Ausdruck unter der Wurzel in (3) negativ sein. Weil diese Berechnung unzulässig wäre, wird vorbeugend das Ergebnis der Vorausschauweitenberechnung mit einer Sättigungsfunktion begrenzt, die maximal 80 % des aktuellen Kurvenradius annimmt. Dieser Wert (80 % = 0.8) kann über den Parameter PAR_BSFQuer_VorausschauBegrenzung_f64 eingestellt werden.
Die Querabweichung der Sollbahn und die Querabweichung der Istbahn, jeweils bezogen auf die aktuelle Ausrichtung des Fahrzeuges, ergeben die Regeldifferenz für den Querregler. Aufgrund der Differenz zwischen Sollbahn und Istbahn bringt dieses Konzept eine bleibende Regelabweichung in der Kurve mit sich. Diese ist nur dann Null, wenn das Fahrzeug sich in der Geradeausfahrt befindet.


Siehe dazu: Querreglung Vorarbeiten

Reglerentwurf

Wie auch bei der Längsführung wurde für die Querregelung zur Übersicht ein allgemeiner Regelkreis aufgestellt.

allgemeiner Regelkreis Querregler

Die Parameter LW_Soll und LW_Ist beschreiben den gewünschten Lenkwinkel und den momentan erfassten Lenkwinkel. In den Regelkreis eingehende Störgrößen sind Probleme bei der Übertragung des Stellmotors für den Lenkwinkel. Eine detaillierte Beschreibung zu dem bisherigen Stand des aggierenden Reglers ist unter Querreglung Vorarbeiten zu finden.

Ausblick

Sommer 2017

  • Feinjustierung der Parameter der Längsregelung am Fahrzeug
  • Nach der Parametrisierung des Einspurmodells Querregler im Simulations-Modell auslegen
  • Wenn Auslegung Querregler in Simulation erfolgreich, dann Feinjustierung am Fahrzeug
  • Messung der Gierrate mit neuem Gierraten-Sensor
  • Auslegung des ESM durch Justierung der Größen J, cv und ch
  • Implementierung des Konzepts für Hindernisumfahrung in der Online-Simulation



Winter 2017

  • Reglerparameter für Querregelung anpassen, sodass Regler schneller reagiert (enge Kurven, Hindernisse), dann Fahrgeschwindigkeit erhöhen
  • Vorausschauweite lässt sich evtl. noch verbessern
  • evtl. Sonderregelung für Querreglung bei erkannter Stopplinie: für eine feste Streckenlänge geradeaus fahren; dadurch lassen sich die Lücken auf der Kreuzung einfach kompensieren; Absprache mit Kamera-Team/Bildverarbeitung notwendig
  • Implementierung des Konzepts zum Anhalten an Stopplinien
  • in Hindernisumfahrung eigene Signalaufbereitung entfernen, Objektliste aus Signalaufbereitung verwenden, vgl. Vorarbeit
  • Hindernisumfahrung in Simulation anpassen, dann auf AMR testen
  • Kalman-Filter für Streckenverlauf, vgl. Vorarbeit; Absprache mit Kamera-Team/Bildverarbeitung notwendig

Einzelnachweise


Autor: Nils Brunnert
Überarbeitet: Daniel Block und Torben Petersen im Sommersemester 2014 und Wintersemester 2014/2015
Überarbeitet: Marcus Irmer und Robin Kirsch im Sommersemester 2016 und Wintersemester 2016/2017


→ zurück zum Hauptartikel: Praktikum SDE