Darstellung der Simulation: Unterschied zwischen den Versionen
Zeile 96: | Zeile 96: | ||
=Fahrt auf der Rundstrecke mit Kreuzung= | =Fahrt auf der Rundstrecke mit Kreuzung= | ||
'''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" | |||
! style="font-weight: bold;" | Parameter | |||
! style="font-weight: bold;" | Einstellung | |||
! style="font-weight: bold;" | Datei zum bearbeiten | |||
|+ style = "text-align: left"|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== | ==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== | ==Simulation des Fahrzeugs== | ||
Durch die Funktion [[Fahrzeugsoftware#fahrzeug.m|''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== | ==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== | ==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== | ==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. | 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. |
Version vom 11. Mai 2021, 23:59 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.
-
Auswahl des Simulinkmodus
-
Simulations Darstellungen
-
Einstellung der Startpositionen
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.
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
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
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 |
---|---|---|
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 |
---|---|---|
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
Fahrt mit Hindernisse
Einparkszenario
Aktuellen Artikel verlinken! oder die Überschriften oben nehmen
→ zurück zum übergeordneten Artikel: Systemarchitektur des Fahrzeugs
→ zurück zum Hauptartikel: Praktikum SDE