Querreglung Vorarbeiten: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
K (→‎Reglerentwurf: Aktueller Stand der Parameter des Querreglers)
 
Zeile 52: Zeile 52:
Da kein I-Anteil verwendet wird, ist keine Wind-Up-Problematik vorhanden. Es wurde aber analog zur Längsregelung eine Anti-Wind-Up-Strategie implementiert.<br/>
Da kein I-Anteil verwendet wird, ist keine Wind-Up-Problematik vorhanden. Es wurde aber analog zur Längsregelung eine Anti-Wind-Up-Strategie implementiert.<br/>
Das Fahrzeug folgt so der Bahn, solange eindeutige Polynom-Parameter übertragen werden. Sollte die Spur kurzzeitig verloren gehen, wird mithilfe der alten Werte die Fahrt fortgesetzt. Der engste getestete Kurvenradius beträgt 1.8 Meter.
Das Fahrzeug folgt so der Bahn, solange eindeutige Polynom-Parameter übertragen werden. Sollte die Spur kurzzeitig verloren gehen, wird mithilfe der alten Werte die Fahrt fortgesetzt. Der engste getestete Kurvenradius beträgt 1.8 Meter.
'''Stand Juni 2018'''
* P-Anteil: 0,64
* I-Anteil: 0
* D-Anteil: 0,00101
Werte wurden bisher nur in der Simulation überprüft. Als nächster Schritt müssen diese unter realen Bedingungen getestet werden. Bei der Kurveneinfahrt ist mit diesen Regelparametern ein starkes Schwingen des P-Anteils zu erkennen jedoch bleibt das Fahrzeug auf der Soll-Bahn ohne erkennbares zittern. Jedoch sind dieses wie erwähnt nur Testergebnisse aus der Simulationsumgebung.


====Messungen====
====Messungen====

Aktuelle Version vom 8. Juli 2018, 16:34 Uhr

Status Quo

In dem oben beschriebenen Konzept wird zur Bestimmung der Istbahn die Gierrate benötigt. Gemäß der Vorarbeit früherer Teams war das Signal des Gyro-Sensors zeitweise nicht verwendbar. Alternativ wurde daher ein neuer Ansatz zur Bestimmung der Regeldifferenz gewählt. Dabei wird angenommen, dass ohne Stellgrößenberechnung des Reglers das Fahrzeug auf einer Geraden fährt. Dadurch ergibt sich die Vereinfachung dahingehend, dass die prädizierte Istbahn des Fahrzeugs und die aktuelle Ausrichtung identisch sind, also dazwischen keine Querabweichung vorliegt. Als Regeldifferenz ergibt sich somit die Querabweichung der Sollbahn von der aktuellen Ausrichtung des Fahrzeugs. Dieser Ansatz liegt auch jetzt noch vor, obwohl das Gyro-Signal zur Verfügung steht.

Einspurmodell

Für die effektive Nutzung des Offline-Modells in der Simulation ist eine Anpassung des Einspurmodells (ESM) an das Fahrzeug notwendig, damit das Modell der Realität so nah wie möglich kommt. Dazu müssen die einzelnen Parameter des Modells entsprechend bestimmt werden. Die aktuellen Werte sind in den Parameterdateien param_ESM_offline.m und param_CAR.m hinterlegt und werden somit vom Modell verwendet.

Größen des Einspurmodells

Im Folgenden sollen die Parameter des Modells kurz vorgestellt werden.

  • Radstand des Fahrzeugs, wird im ESM mit l bezeichnet
  • Abstand des Schwerpunktes des Fahrzeuges von dem vordersten Punkt lv
  • Abstand des Schwerpunktes des Fahrzeuges von dem hintersten Punkt lh
  • Masse des Fahrzeugs m
  • Massenträgheitsmoment um die Z-Achse des fahrzeugfesten Koordinatensystems J
  • Steifigkeit der Vorderachse cv
  • Steifigkeit der Hinterachse ch

Bestimmung der Parameter

Nun wird für die einzelnen Parameter die Bestimmung der jeweiligen Größen vorgestellt.
Radstand l
Der Radstand lässt sich durch eine Messung mit einem Messschieber bestimmen. Es ist dabei der Abstand vom vorderen zum hinteren Achsenmittelpunkt zu messen. Für das Einspurmodell ist die Gesamtlänge, also inklusive der vorderen und hinteren Überhänge, nicht von Bedeutung.
Abstand des Schwerpunktes des Fahrzeuges von den äußeren Punkten lv und lh
Zur Bestimmung der Abstände wird das Fahrzeug an den beiden Achsen mit zwei Waagen gewogen. Aus dem Verhältnis der bestimmten Maßen lässt sich die Lage des Schwerpunktes in Längsrichtung des Fahrzeugs bestimmen.
Masse des Fahrzeugs m
Die Gesamtmasse ergibt sich aus der Summe der zwei zuvor bestimmten Teilmassen.
Massenträgheitsmoment um die Z-Achse Jz
Das Massenträgheitsmoment um die Z-Achse Jz wird bestimmt unter der Annahme, dass das Fahrzeug geometrisch einem Quader ähnelt.
Steifigkeit der Vorderachse cv und der Hinterachse ch
Für die Bestimmung der Steifigkeiten und die Feinjustierung des Modells wird das Fahrzeug, das die Regelstrecke darstellt, mit einer Sprungantwort für einen Sprung des Lenkwinkels analysiert. Dazu wird die Gierrate des Fahrzeugs während des Sprungsignals gemessen. Das ESM lässt sich anhand dieser Messdaten parametrisieren, indem das Übertragungsverhalten des Fahrzeugs den vom Modell errechneten Daten vergleichend gegenübergestellt wird.
Dazu wurde ein separates Modell Einspurmodell_Solo_BSF erstellt, das in der Abbildung Einspurmodell-Solo_BSF zu sehen ist.

Einspurmodell-Solo_BSF (Originaldatei)

Es wurden mehrere Messungen gemacht, diese sind im Ordner trunk/Teams/BSF/Analyse Gierrate zu finden. Für die zuletzt verwendeten Messungen sind die benötigten Variablen in Unterordnern des Ordners trunk/Teams/BSF/Einspurmodell. Für neuere Messungen, die mit dem Recorder_BSF (vgl. Abb. Layout BSF_Regelung links im Bild) erstellt wurden, wurde die Funktion VariablenLaden.m erstellt.
Das Ergebnis der Analyse ist in der Abbildung Gierrate ESM vs Messung dargestellt. Die Daten stammen aus der Messung bsf_014.mat, mit dem Skript VariablenLaden.m lassen sich die notwendigen Vorbereitungen ausführen. In start.m müssen dazu folgende Parameter eingestellt sein:

  • Schalter_offline = 1; Offline-Modell
  • Simulinkmodus = 1; BSF-Modus

Dann muss nur noch das Modell, vgl. Abb. Einspurmodell-Solo_BSF, ausgeführt und dann der Scope1 geöffnet werden.

Gierrate ESM vs Messung (Skript zum Aufruf des Modells mit Variablen)

Es ist sehr gut ersichtlich, dass ausgenommen des Rauschens, das Einspurmodell und die Messung gut übereinpassen. Die Reglerparametrisierung hat gezeigt, dass seitdem das Verhalten des AMR und die Simulation mit dem ESM nah beieinander liegen.
Die derzeitigen Parameter sind für die Steifigkeit der Vorderachse cv=120*0.35=42 und für die Hinterachse ch=120.

Reglerentwurf

Die Querregelung ist mit einem PID-Regler umgesetzt, der dem Regler der Längsregelung weitgehend entspricht. Die Regelparameter können ebenfalls in der Parameterdatei param_BSF.m über die Parameter PAR_BsfQuer_PAnteil_f64, PAR_BsfQuer_IAnteil_f64 und PAR_BsfQuer_DAnteil_f64 eingestellt werden. Die Parametrisierung im Simulations-Modell konnte nach der Parametrisierung des Einspurmodells erfolgen. Die Stellgröße für den Soll-Lenkwinkel wird durch eine Sättigungsfunktion auf den maximalen Lenkwinkel des Fahrzeugs begrenzt. Die Grenzen können ebenfalls in der Parameterdatei param_BSF.m als Parameter PAR_BsfQuer_max_Lw_f64 und PAR_BsfQuer_min_Lw_f64 festgelegt werden.
Stand Januar 2015

  • P-Anteil: 0,16
  • I-Anteil: 0
  • D-Anteil: 0,00101

Stand Dezember 2016

  • P-Anteil: 0,32
  • I-Anteil: 0
  • D-Anteil: 0,00101

Da kein I-Anteil verwendet wird, ist keine Wind-Up-Problematik vorhanden. Es wurde aber analog zur Längsregelung eine Anti-Wind-Up-Strategie implementiert.
Das Fahrzeug folgt so der Bahn, solange eindeutige Polynom-Parameter übertragen werden. Sollte die Spur kurzzeitig verloren gehen, wird mithilfe der alten Werte die Fahrt fortgesetzt. Der engste getestete Kurvenradius beträgt 1.8 Meter.

Stand Juni 2018

  • P-Anteil: 0,64
  • I-Anteil: 0
  • D-Anteil: 0,00101

Werte wurden bisher nur in der Simulation überprüft. Als nächster Schritt müssen diese unter realen Bedingungen getestet werden. Bei der Kurveneinfahrt ist mit diesen Regelparametern ein starkes Schwingen des P-Anteils zu erkennen jedoch bleibt das Fahrzeug auf der Soll-Bahn ohne erkennbares zittern. Jedoch sind dieses wie erwähnt nur Testergebnisse aus der Simulationsumgebung.

Messungen

Es empfiehlt sich, während der Regler-Parametrisierung bei jeder Fahrt eine Messung aller relevanten Signale aufzunehmen. Dadurch können Signalverläufe und die logische Richtigkeit von Signalen überprüft werden. Dazu wurde in ControlDesk® ein Recorder Recorder_BSF erstellt, vgl. Abbildung Layout BSF_Regelung. Hilfestellungen dazu sind in dem Artikel Messungen mit dSPACE ControlDesk zu finden.
Für die Darstellung der Signale wurde eine Funktion plot_nach_Messung_BSF.m erstellt, mit der in einem Übersichtsplot die wichtigsten Signale angezeigt werden (siehe Abbildung Übersichtsplot Messungen).

Übersichtsplot Messungen (Originaldatei)

In der oberen Fensterleiste wird der Name der Messung mit ausgegeben. An der Ordinaten der Regleranteile werden die Regler-Faktoren mit angezeigt.

ControlDesk®-Layout

Für die Steuerung und Visualisierung des Fahrzeugs bei Parametrisierung der Regler, wurde ein separates Layout in ControlDesk® geschaffen.

Layout BSF_Regelung (Originaldatei)

Hindernisumfahrung

Konzept

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, vgl. Abbildung BSFQuer mit Hindernisumfahrung.

BSFQuer mit Hindernisumfahrung

Der Ansatz ist, die Sollvorgabe für die Querführung bei Hindernissen um eine Spurbreite nach links zu verschieben, also auf die linke Spur auszuweichen. Es wird dabei im Stateflow-Modell S-Kurve ein Offset erzeugt, dass auf die eigentliche Soll-Querablage aufaddiert wird, vgl. Abbildung Sollvorgabe mit Hindernis.

Sollvorgabe mit Hindernis

Der Abstand zum Objekt wird derzeit noch pythagoreisch berechnet, kann in Zukunft aber aus der getriggerten Objektliste aus der Signalaufbereitung verwendet werden. Diese war aber zur Implementierungszeit noch nicht fertig.
Das Stateflow-Modell erzeugt einfach eine statisch definierte S-Kurve. Es wird bei Erreichen eines Abstandes zum Objekt von weniger als zwei Meter das Offset nach links gesetzt. Nach einer gewissen Strecke wird das Offset wieder zurückgesetzt, dann kurzzeitig nach rechts gerichtet und zum Schluss wieder auf null gesetzt. Das Hindernisbit wird während der S-Kurve gesetzt. Das Modell mit den derzeitigen Werten ist in der Abbildung Stateflow-Modell S-Kurve zu sehen.

Stateflow-Modell S-Kurve

Simulation

Nachdem erste Tests mit den damaligen ESM- und Regler-Konfigurationen erfolgreich waren, vgl. Abbildung Test Hindernisumfahrung, wurde der Entwurf in das Modell integriert.

Test Hindernisumfahrung

Der derzeitige Stand ist in der Abbildung Hindernisumfahrung zu sehen.

Hindernisumfahrung (Originaldatei)

Es ist deutlich zu erkennen, dass der Regler noch zu langsam darauf reagiert. Auch die Werte im Stateflow-Modell werden in Zukunft noch angepasst werden müssen.

→ zurück zum Hauptartikel: BSF - Bahn- und Spurführung