Autonome Längs- und Querregelung

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen


Einleitung und Ziel

Das Thema Autonome Längs- und Querregelung beinhaltet die Aufgaben

  • Analyse Istgeschwindigkeitssignal,
  • Analyse Gierrate,
  • Regelung längs und
  • Regelung quer.

Das Ziel der Aufgabe ist die Auslegung der Längs- und Querregelung des Fahrzeugs.

Analyse Istgeschwindigkeit

Die Aufzeichnung der Istgeschwindigkeit war zunächst nicht möglich, weil die in ControlDesk eingestellte Sollgeschwindigkeit nicht umgesetzt wurde. Unabhängig davon welcher Wert mit dem Slider vorgegeben wurde, fuhr das Fahrzeug immer rückwärts.<br\> Zur Lösung des Problems wurde die manuelle Gas-Vorgabe analysiert. Der Wert des Sliders wird mit derLook-Up-Table (LUT) Look Up Gaspedal im Block AktRtiPwm-PWM4fach-Modul in die entsprechende PWM-Breite zur Ansteuerung der Motoren umgewandelt.<br\> Das PWM-Eingangssignal AktFernb_PwmBreiteGasfernb_f64 des Fernbedienungsblocks wurde ermittelt, um die Breite der PWM bei neutraler Stellung, bei der maximalen Geschwindigkeit in Vorwärts- und Rückwärts-Fahrt zu identifizieren. <br\>

Diese Werte wurden in die LUT Look Up Gaspedal im Block AktRtiPwm-PWM4fach-Modul eingetragen (siehe Abbildung Function Block Parameters: Look Up Gaspedal).

Function Block Parameters: Look Up Gaspedal

Hierzu wurde der Parameter PAR_LookUpPWMSignalGas_f64 gleich [0.0741 0.09144 0.1292] gesetzt. Der Parameter wird in der Datei param_SEN_offline.m definiert.<br\>

Nach dieser Einstellung kann über ControlDesk die Fahrtrichtung und die Geschwindigkeit vorgegeben werden.<br\>







Darstellung der Messung Istgeschwindigkeit (Rohwert)

Zur Aufzeichnung der Rohwerte der Istgeschwindigkeit wurden in einer Testfahrt verschiedene Fahrmanöver aufgezeichnet. Die Geschwindigkeit wurde mit ControlDesk vorgegeben und das Fahrzeug wurde mit der Fernbedienung gelenkt.<br\>

Die nebenstehende Abbildung zeigt die aufgezeichneten Rohdaten der Istgeschwindigkeit.

Rohsignal der Istgeschwindigkeit

Nach Stillstand zu Beginn der Messfahrt wurde in 2s auf 4m/s beschleunigt und 4s mit konstanter Geschwindigkeit gefahren. Anschließend wurde noch einaml beschleunigt und nach einer 8s dauernden Fahrt mit einer konstanten Geschwindigkeit von 8m/s wurde das Fahrzeug angehalten. Im Anschluss wurde das Fahrzeug wieder beschleunigt und 9s mit der konstanten Geschwindigkeit 8m/s gefahren bis das Fahrzeug wieder gestoppt wurde. Der letzte Zyklus besteht aus einer Beschleunigung, einer 1s langen Fahrt mit 4m/s und anschließender Verringerung der Geschwindigkeit auf 2,5m/s. Nach 5s folgte eine weitere Beschleunigung auf 8m/s und nach einer 12s dauernden Fahrt mit dieser Geschwindigkeit wurde das Fahrzeug gestoppt und die Testfahrt nach 65s beendet.




Erstellung eines PT1-Filters

Die Erstellung eines PT1-Filters war nicht erforderlich, weil der vorhandene PT1-Filter PT_1_Eing_f des Moduls SenVx - Laengsgeschwindigkeit genutzt werden kann. Die Eingänge des Filters sind die ungefilterten Rohdaten der Istgeschwindigkeit (SenVx_vx_unfilt_K_f64) und die Filterfrequenz (PAR_SenGeschw_AnteilFrequenz). Der Ausgang ist die gefilterte Istgeschwindigkeit SenVx_vx_K_f64.

Auswahl einer Filterfrequenz

Zur Bestimmung der Filterfrequenz PAR_SenGeschw_AnteilFrequenz wurde die in Abbildung Testumgebung PT1-Filter Istgeschwindigkeit dargestellte Testumgebung Test_PT1_Laengsgeschw.mdl im Verzeichnis \trunk\Teams\BSF\Analyse Laengsgeschw\Test_PT1_Laengsgeschw erstellt.

Testumgebung PT1-Filter Istgeschwindigkeit

Die Eingänge der Testumgebung sind die während der Testfahrt aufgezeichneten Geschwindigkeitsdaten und die Filterfrequenz. Der Ausgang, die gefilterten Geschwindigkeitsdaten, werden in einem Scope angezeigt und im Workspace gespeichert. Das Einlesen der Geschwindigkeitsdaten wurde mit dem Signal Builder-Block realisiert. Hierzu wurden die aufgezeichneten Daten in einer xls-Datei gespeichert und als Signal dem Signal Builder-Block hinzugefügt. Die Spalte der Zeitdaten muss in der ersten Zeile Time enthalten und in der ersten Zeile der Spalte mit den Geschwindigkeitswerten muss der Name für die Werte in diesem Fall vx stehen.<br\>



Die nebenstehende Abbildung zeigt das Dialogfenster Import File zum Hinzufügen des aufgezeichneten Signals zum Signal Builder.

Dialog Import File

Im folgenden werden die Arbeitsschritte zum Hinzufügen eines aufgezeichneten Signals aufgeführt.

  1. Über die Funktion Import File werden die Daten der xls-Datei dem Signal Builder hinzugefügt.
  2. Über die Schaltfläche Browse wird die zu importierende xls-Datei ausgewählt.
  3. Im Feld Data to Import wird das Signal der xls-Datei ausgewählt.
  4. Im Drop-Down-Menü Placement for Selected Data Replace existing dataset auswählen.
  5. Alle Einstellungen mit einem Klick auf die Schaltfläche Confirm Selection bestätigen.
  6. Ein Klick auf OK lädt die Daten in den Signal Builder.
  7. Speichern und schließen des Signal Builders.

Die Istgeschwindigkeit wurde mit den Frequenzen

  • 0,1Hz,
  • 0,15Hz,
  • 0,2Hz,
  • 0,3Hz,
  • 0,4Hz und
  • 0,5Hz

gefilter.<br\> Die gefilterten Signale wurden im Workspace gespeichert um sie vergleichen zu können. Die Messdaten und das Matlab-Skript zum Plot der Messungen sind im Verzeichnis \trunk\Teams\BSF\Analyse Laengsgeschw abgelegt.

Geschwindigkeitssignal

In der Abbildung Geschwindigkeitssignal werden im oberen Diagramm die ungefilterten Rohdaten dargestellt. Das untere Diagramm zeigt die gefilterten Geschwindigkeiten für die oben aufgelisteten Frequenzen.<br\> Der Vergleich der gefilterten Signale hat ergeben, dass bei einer Filterfrequenz von 0,3Hz eine gute Rauschunterdrückung bei gleichzeitig geringem Delay erzielt wird. Wird eine höhere Frequenz gewählt, verringert sich die Zeitverzögerung, jedoch ist das Rasuchen auf dem gefilterten Signal zu hoch. Geringere Frequenzen weisen eine bessere Rauschunterdrückung auf, haben aber ein zu großes Delay.



Analyse Gierrate

Messung der Istgierrate (Rohwert)

Auswahl einer Filterfrequenz

Regelung längs

Konzept zur Bestimmung der Sollgeschwindigkeit überprüfen

Konzept zur Bestimmung der Sollgeschwindigkeit in Simulink umsetzen

Verbesserungsvorschläge zum Artikel

--Ulrich Schneider (Diskussion) 13:38, 4. Feb. 2014 (CET)

  • Autorenseite und Link zum Autor fehlt