Darstellung der Simulation: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
Zeile 98: Zeile 98:
'''Autoren:''' [[Benutzer:Junjie Lyu|Junjie Lyu]], [[Benutzer:Jonas Hokamp| Jonas Hokamp]]
'''Autoren:''' [[Benutzer:Junjie Lyu|Junjie Lyu]], [[Benutzer:Jonas Hokamp| Jonas Hokamp]]


[[Datei:Rundkurs_mit_Kreuzung.png|400px|thumb|center|Der Rundkurs mit Kreuzung in der Simulation]]
==Parameter zur Darstellung==
==Parameter zur Darstellung==
{| class="mw-datatable"
{| class="mw-datatable"
Zeile 167: Zeile 166:
===Fahrt ohne Hindernisse===
===Fahrt ohne Hindernisse===


 
[[Datei:Rundkurs_mit_Kreuzung.png|400px|thumb|center|Der Rundkurs mit Kreuzung ohne Hindernisse in der Simulation]]




Zeile 176: Zeile 175:


===Fahrt mit Hindernisse===
===Fahrt mit Hindernisse===
[[Datei:Fahrt_mit_Hindernisse.png|400px|thumb|center|Der Rundkurs mit Kreuzung mit Hindernisse in der Simulation]]


=Einparkszenario=
=Einparkszenario=

Version vom 11. Mai 2021, 23:15 Uhr

Autor: SDE Team 2021/2022

Betreuer: Ulrich Schneider

Simulink Block Darstellung

Autoren: Hendrik Steffen, Sven Posner

Parameter zur Darstellung

Über die Parameter-Schalter PAR_Darstellung_Schalter_EIN_bit und PAR_Darstellung_Fahrspur_Schalter_EIN_bit kann die Ansicht als Draufsicht und die Fahrspuransicht ein- und ausgeschaltet werden. Über die Variable Simulinkmodus wird zwischen den verschiedenen Simulinkmodi von Bahnplanung und Spurführung und Autonomes einparken unterschieden.

Die Parameter werden in der Datei start.m eingestellt. Die Darstellung lässt sich beschleunigen, in dem man den Zähler beschleunigt.

Interpreted Matlab Function

Eine Interpreted MATLAB-function wendet den Eingang auf eine bestimmte MATLAB-Funktion an. Dabei muss der der Ein- und Ausgang der Funktion mit den Ein- und Ausgangsdimensionen des Blocks übereinstimmen. So kann man Matlab Funktionen in Simulink nutzen. Alternativen zu diesem Block sind z.B. der Matlab Function Block, der erst zur Laufzeit compiliert wird und daher flexibler in der Handhabung ist. Bei einer reinen Desktop Anwendung spielt dies jedoch keine Rolle.

Funktionsblock Interpreted Matlab fcn

funktion_simulink_simultan_draufsicht(u)

In dieser Funktion wird die Draufsicht auf das Fahrzeug erstellt, dass später in dem Plot zur Simulation dargestellt wird. Dazu werden die x und y Koordinaten, aus dem Einspurmodell, sowie die Gierrate verwendet. Um das Fahrzeug selbst als Rechteck darzustellen, wird eine weitere Funktion „Fahrzeug“ aufgerufen.

funktion_simulink_simultan_Fahrspur(u)

Wohingegen die zuvor genannte Funktion zur Visualisierung des Autos und dessen Spur da ist, wird in dieser Matlab Function die Fahrbahn gezeichnet, dabei wird die ganze Fahrbahn, mit den gestrichelten Linien, und in blau die mitte der rechten Fahrspur dargestellt.





Softwarearchitektur Darstellungsblock

Darstellung der Softwarearchitektur

Die Darstellung Draufsicht greift auf die Module Kinematikmodell und Einspurmodell über den Datenbus zu. Beide Darstellungsblöcke, Draufsicht und Fahrspur sind teil des Darstellungsblocks und greifen auf den Zähler zu. Für die Darstellung der Fahrspur wird auf die Sensordaten der Signalaufbereitung zugegriffen.

Fahrt auf der Rundstrecke

Autoren: Noah Greis, Alexander Schirrmeister

Der Rundkurs in der Simulation

Parameter zur Darstellung

Die Darstellung wird durch einige vor einstellbare Parameter beeinflusst. Welche dies sind und wo diese eingestellt werden können, ist in folgender Tabelle dargestellt.

Parameter Funktion Datei zum bearbeiten
Parameter zur Darstellung
PAR_Darstellung_Schalter_EIN_bit Schalter für die Darstellung der Draufsicht start.m
PAR_Darstellung_Fahrspur_Schalter_EIN_bit Schalter für die Darstellung der Fahrspur start.m
Simulinkmodus Simulinkmodus wählen (Fahren/Parken) start.m
PAR_Esm_x0_I_f64 Startposition x Wert start.m
PAR_Esm_y0_I_f64 Startposition y Wert start.m
PAR_Esm_psi0_I_f64 Startausrichtung start.m
RundkursOhneKreuzung.mat Streckenprofil start.m

Simulation der Strecke

Durch die Streckenauswahl wird in der Parameterdatei PAR_SEN_Offlin, die Datei mit den Werten geladen, in diesem Fall RundkursOhneKreuzung.mat. Diese Werte werden als PAR_SenKam_BahnZ_f64 gespeichert und stehen dann zur Weiterverarbeitung zur Verfügung. Die Darstellung läuft dann über den Darstellungsblock und die darin integrierten Funktionen, wie im Abschnitt Simulink Block Darstellung erklärt.

Simulation des Fahrzeugs

Das Fahrzeug wird mit einer eigenen Funktion Fahrzeug.m dargestellt.

Darstellung der Bahnkurve

Die Funktion funktion_simulink_simultan_draufsicht.m erstellt die Bahnkurve. Dabei werden die jeweiligen plots nichts überschrieben, sondern reihen sich aneinander zur Bahnkurve.

Sollwerteinstellung Regler

Der Sollwert der Regelung wird mithilfe der Kamera bzw. je nach Fahrmanöver auch durch den Lidar generiert.

Fahrt auf der Rundstrecke mit Kreuzung

Autoren: Junjie Lyu, Jonas Hokamp

Parameter zur Darstellung

Parameter Einstellung Datei zum bearbeiten
Parameter zur Darstellung
PAR_Darstellung_Schalter_EIN_bit Schalter für die Darstellung der Draufsicht start.m
PAR_Darstellung_Fahrspur_Schalter_EIN_bit Schalter für die Darstellung der Fahrspur start.m
Simulinkmodus BSF/AEP start.m
PAR_Esm_x0_I_f64 Startposition x Wert start.m
PAR_Esm_y0_I_f64 Startposition y Wert start.m
PAR_Esm_psi0_I_f64 Startausrichtung start.m
x- und y-Werte der Strecke und der Stopplinien Streckenverlauf RundkursMitKreuzung.mat Stopplinie.mat
PAR_Modi_Schalter_Fahrbahn_int Wahl der Strecke start.m
Basisschrittweite T Schrittweite ändern start.m
PAR_CAR_Fahrzeuglaenge_f64 PAR_CAR_Fahrzeugbreite_f64 Länge und Breite beeinflusst die Fahrzeuf-Darstellung param_CAR.m

Simulation der Strecke

Ist der Parameter PAR_Modi_Schalter_Fahrbahn_int = 1, wird aus dem Ordner Parameter die Datei RundkursMitKreuzung.mat geladen, welche die x- und y-Werte der Strecke enthält. Zusätzlich wird Stopplinien.mat geladen, um auch die Kreuzungslinien einzuzeichnen. Es wird zudem eine Startposition (x,y), sowie eine Startausrichtung übergeben. Dazu werden noch die Fahrbahnränder und die Mittellinie, sowie eine vorgegebene Bahn eingezeichnet.

Simulation des Fahrzeugs

Durch die Funktion Fahrzeug.m , welche als Parameter die Daten aus dem Einspurmodell, sowie den Zähler enthält. Aus den Fahrzeugparametern (Länge,Breite), sowie den Daten aus dem Einspurmodell werden dann die Fahrzeugkanten sowie der Richtungsvektor berechnet.Im ersten Schritt, also bei zähler=1 wird das Fahrzeug und Richtungsvektor erzeugt, in allen weiteren Schritten nur verschoben.

Simulation andere Verkehrsteilnehmer

Wählt man den Simulinkmodus 4 (BSF inklusive Objekte) werden andere Verkehrsteilnehmer als lilanes Rechteck dargestellt. Dabei können durch Ändern des Parameters PAR_Modi_Schalter_Luecke_int die Größe und Position der Hindernisse variieren.

Darstellung der Bahnkurve

In den Plot der gesamten Strecke wird die aktuelle Position des Fahrzeugs eingezeichnet. Die eingezeichneten Positionen bleiben über der gesamten Simulationszeit erhalten,sodass sich mit der Zeit die gefahrene Bahn abzeichnet.

Sollwerteinstellung Regler

Die Sollwerteinstellung des Reglers ist allgemein davon abhängig, ob die Fahrt auf einer Strecke mit Hindernissen, oder ohne erfolgt. Bei einer Einstellung von Simulinkmodus=1 würde man eine Strecke ohne Hindernisse simulieren, in allen anderen Auswahlmöglichkeiten mit Hindernissen.

Fahrt ohne Hindernisse

Der Rundkurs mit Kreuzung ohne Hindernisse in der Simulation




Fahrt mit Hindernisse

Der Rundkurs mit Kreuzung mit Hindernisse in der Simulation

Einparkszenario

Aktuellen Artikel verlinken! oder die Überschriften oben nehmen


→ zurück zum übergeordneten Artikel: Systemarchitektur des Fahrzeugs

→ zurück zum Hauptartikel: Praktikum SDE