Seminaraufgabe SoSe 2021: Einspurmodell Gruppe B: Unterschied zwischen den Versionen

Aus HSHL Mechatronik
Zur Navigation springen Zur Suche springen
 
(139 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 7: Zeile 7:


Dieser Artikel dokumentiert die Ausarbeitung der Gruppe B im Modul Systems Design Engineering im Sommersemester 2021. Die Aufgabe beinhaltet die Entwicklung des linearen Einspurmodells nach dem  
Dieser Artikel dokumentiert die Ausarbeitung der Gruppe B im Modul Systems Design Engineering im Sommersemester 2021. Die Aufgabe beinhaltet die Entwicklung des linearen Einspurmodells nach dem  
V-Modell als Tool zur Komplexitätsbeherrschung. Hierfür wurden die Inhalte des Skriptes [[Datei:Skript Fahrwerkmanagent ProfGöbel.pdf | Fahrwerkmanagement]] in Submodule und zugehörige Komponenten aufgeteilt
V-Modell als Werkzeug zur Komplexitätsbeherrschung. Hierfür wurden die Inhalte des Skriptes [[:Datei:Skript Fahrwerkmanagent ProfGöbel.pdf|Fahrwerkmanagement]] in Submodule und zugehörige Komponenten aufgeteilt
und in einem MATLAB 2020a Simulink Modell umgesetzt.
und in einem MATLAB 2020a Simulink Modell umgesetzt.


== Vorgehensweise nach V-Modell ==
== Vorgehensweise nach V-Modell ==


Wie bereits erläutert wurde die Entwicklung nach dem V-Modell durchgeführt. Dies beinhaltet die in der folgenden Abbildung dargestellten Schritte.
Wie bereits erläutert wurde die Entwicklung nach dem V-Modell durchgeführt. Dies beinhaltet die folgenden Schritte, welche an dieser Stelle noch einmal kurz aufgelistet sind.
Um diese Schritte noch einmal aufzuführen, werden sie an dieser Stelle kurz aufgelistet.


# Anforderungsdefinition
# Anforderungsdefinition
Zeile 26: Zeile 24:
# Abnahmetest
# Abnahmetest


Die Schritte 6 - 9 werden in dem vorliegenden Artikel nicht behandelt, weil sie die Testung der Ausarbeitungen von Gruppe J sowie den Abnahmetest des entwickelten Modells durch Prof. Göbel, betreffen. Somit wird lediglich die Entwicklung des linearen Einspurmodells behandelt.
Die Schritte 6 - 9 werden in dem vorliegenden Artikel nicht behandelt, weil sie die Testung der Ausarbeitungen von Gruppe J sowie den Abnahmetest des entwickelten Modells durch Prof. Göbel, betreffen. Somit wird lediglich die Entwicklung des Simulinkmodells behandelt.


== Anforderungen ==
== Anforderungen ==


Zunächst werden alle Anforderungen zu denen sich Gruppe B im Rahmen dieser Seminararbeit verpflichtet in einem Lastenheft festgehalten. Hierfür wurde das Lastenheft mit der folgenden Struktur versehen.  
Zunächst wurden alle Anforderungen zu denen sich Gruppe B im Rahmen dieser Seminararbeit verpflichtet hat, in einem Lastenheft festgehalten. Hierfür wurde das Lastenheft mit der folgenden Struktur versehen.  


# Formale Anforderungen
# Formale Anforderungen
Zeile 43: Zeile 41:


Das gesamte Lastenheft kann im [https://svn.hshl.de/svn/BSE_SystemsDesignEng/trunk/Projekte/ESM_SS2021/Gruppen/Gruppe%20B/ SVN] eingesehen werden. In Tabelle 1 wird ein Auszug aus dem Lastenheft dargestellt. Die Abkürzungen in der Spalte Typ stehen für Inhalt (= I) und Anforderung (= A).
Das gesamte Lastenheft kann im [https://svn.hshl.de/svn/BSE_SystemsDesignEng/trunk/Projekte/ESM_SS2021/Gruppen/Gruppe%20B/ SVN] eingesehen werden. In Tabelle 1 wird ein Auszug aus dem Lastenheft dargestellt. Die Abkürzungen in der Spalte Typ stehen für Inhalt (= I) und Anforderung (= A).


{| class="mw-datatable"
{| class="mw-datatable"
Zeile 49: Zeile 48:
! style="font-weight: bold;" | Kapitel
! style="font-weight: bold;" | Kapitel
! style="font-weight: bold;" | Inhalt
! style="font-weight: bold;" | Inhalt
|+ style = "text-align: left"|Tabelle 1: Formale Anforderungen aus dem Lastenheft
|+ style = "text-align: left"|''Tabelle 1: Formale Anforderungen aus dem Lastenheft''
|-
|-
| 001
| 001
Zeile 84: Zeile 83:
== Technischer Systementwurf ==
== Technischer Systementwurf ==


Im folgenden Kapitel wird der gesamte Entwurf des Systems erläutert. An dieser Stelle wird der funktionale aus dem V-Modell übergangen, da er keinen Teil der Seminaraufgabe dargestellt hat. Grundlegend ist das Simulink Modell so aufgebaut, dass es drei Submodule besitzt, welche wiederum weitere Komponenten beinhalten. Innerhalb der Komponenten ist die eigentliche Funktionalität hinterlegt.
Im folgenden Kapitel wird der gesamte Entwurf des Systems erläutert. An dieser Stelle wird der funktionale Systementwurf aus dem V-Modell übergangen, da er keinen Teil der Seminaraufgabe dargestellt hat. Grundlegend ist das Simulink Modell so aufgebaut, dass es drei Submodule besitzt, welche wiederum weitere Komponenten beinhalten. Innerhalb der Komponenten ist die eigentliche Funktionalität hinterlegt.
Diese Struktur wurde für die Bearbeitung der Seminaraufgabe vorgegeben und wurde ebenfalls unter den Anforderungen im Lastenheft festgehalten. Ein Abbildung die diese Struktur beinhaltet lässt sich in Abbildung  
Diese Struktur wurde für die Bearbeitung der Seminaraufgabe vorgegeben und wurde ebenfalls unter den Anforderungen im Lastenheft festgehalten. Die oberste Ebene dieser Struktur lässt sich in Abbildung 1 erkennen.
 
[[Datei:Technischer Systementwurf Submodule Gruppe B.PNG|left]]
<br clear=all>
''Abb. 1: Submodule des Simulinkmodells''
 
 
Das Submodul Mannöversteuerung besitzt nur eine Komponente, nämlich die Mannöverauswahl. Unter dem Submodul Modell hingegen befinden sich die Komponenten Reifen, Karosserie, Gierdynamik und Schwimmwinkel. Als Letztes besitzt das Submodul Auswertung keine Komponenten. Weitergehend kann erkannt werden, dass die Submodule untereinander Verbindungen besitzen. Somit werden die Parameter aus Tabelle 2 zwischen den Submodulen übergeben.
 
 
{| class="mw-datatable"
! style="font-weight: bold;" | Parameter
! style="font-weight: bold;" | Beschreibung
! style="font-weight: bold;" | Einheit
|+ style = "text-align: left"|''Tabelle 2: Übergebene Parameter der Submodule''
|- |height = "80px"|
| <math> \delta_v </math>
| Lenkwinkel Vorderachse
| <math> rad </math>
|-
| <math> \delta_h </math>
| Lenkwinkel Hinterachse
| <math> rad </math>
|-
| <math> _Kv_{Cx} </math>
| Fahrzeuglängsgeschwindigkeit im Fahrzeugschwerpunkt C
| <math> \frac{m}{s} </math>
|-
| <math> _Ka_{Cy} </math>
| Fahrzeugquerbeschleunigung im Fahrzeugschwerpunkt C
| <math> \frac{m}{s^2} </math>
|-
| <math> _Ka_{Cx} </math>
| Fahrzeufglängsbeschleunigung im Fahrzeugschwerpunkt C
| <math> \frac{m}{s^2} </math>
|-
| <math> _KF_{Cy} </math>
| Fahrzeugquerkraft im Fahrzeugschwerpunkt C
| <math> N </math>
|-
| <math> _KF_{Cx} </math>
| Fahrzeuglängskraft im Fahrzeugschwerpunkt C
| <math> N </math>
|-
| <math> \beta </math>
| Schwimmwinkel
| <math> rad </math>
|-
| <math> \beta_v </math>
| Schwimmwinkelanteil Vorderachse
| <math> rad </math>
|-
| <math> \beta_h </math>
| Schwimmwinkelanteil Hinterachse
| <math> rad </math>
|-
| <math> _R\alpha_v </math>
| Schräglaufwinkel Vorderachse
| <math> rad </math>
|-
| <math> _R\alpha_h </math>
| Schräglaufwinkel Hinterachse
| <math> rad </math>
|-
| <math> _K\dot{\psi} </math>
| Gierwinkelrate (Gierwinkelgeschwindigkeit)
| <math> \frac{rad}{s} </math>
|}
 
 
Weitergehend wurden die Inhalte der Submodule einmal dargestellt. Hierbei handelt es sich um die Ebene auf denen die Komponenten erkennbar sind. Zuerst wurde der Inhalt des Submoduls Mannöversteuerung dargestellt.


Platzhalter
[[Datei:Technischer Systementwurf Mannoeverauswahl Gruppe B.PNG|left|mini|''Abb. 2: Submodul Mannöversteuerung'']]
<br clear=all>


erkennen.
Als nächstes ist in Abbildung 3 das Submodul Modell dargestellt.  


[[Datei:Technischer Systementwurf Submodule Gruppe B.PNG|left|mini|Abb. 1: Technischer Systemplan]]
[[Datei:Technischer Systementwurf Modell Gruppe B Legende.png|left|mini|''Abb. 3: Submodul Modell'']]
<br clear=all>
<br clear=all>
Es lässt sich direkt erkennen, dass das Submodul Modell die eigentliche Funktionalität des linearen Einspurmodells besitzt und dementsprechend wesentlich komplexer als die anderen Submodule ist. Abschließend wurde noch das Submodul Auswertung in Abbildung 4 dargestellt.
[[Datei:Technischer Systementwurf Auswertung Gruppe B.PNG|left|mini|''Abb. 4: Submodul Auswertung'']]
<br clear=all>
In dieser Abbildung lässt sich sehr gut erkennen, dass es sich nur um den technischen Systementwurf handelt, weil noch keine Funktionalität vorhanden ist. Es sind lediglich die Eingänge sowie ein Scope Block zur Darstellung hinterlegt.


== Komponentenspezifikation ==
== Komponentenspezifikation ==


Die Komponentenspezifikation definiert die Aufgabe, das Verhalten, den inneren Aufbau und die Schnittstellen der Komponenten.
Die Komponentenspezifikation definiert die Aufgabe, das Verhalten, den inneren Aufbau und die Schnittstellen der Komponenten.
Die Module "Manöverauswahl" und "Auswertung" werden nicht weiter in Komponenten separiert. In beiden Modulen werden keine komplexen Formeln angewendet. Das Modul "Modell" wird, wie im technischen Systemplan beschrieben, in vier Komponenten unterteilt. Deren Funktionsweise soll im Folgenden mithilfe mathematischer Zusammenhänge erläutert werden. Bei der Herleitung wurden die in <ref> Göbel, M.: ''Fahrwerkmanagement Skript'', Ostfalia Hochschule für angewandte Wissenschaften, Version 1.7, 10.06.2020</ref> beschriebenen Formeln verwendet.
In den Submodulen Mannöversteuerung und Auswertung werden keine mathematischen Formeln verwendet.
Das Submodul Modell wird, wie im technischen Systemplan beschrieben, in vier Komponenten unterteilt. Deren Funktionsweise soll im Folgenden mithilfe mathematischer Zusammenhänge erläutert werden. Bei der Herleitung wurden die in <ref>Göbel, M.: ''Fahrwerkmanagement Skript'', Ostfalia Hochschule für angewandte Wissenschaften, Version 1.7, 10.06.2020</ref> beschriebenen Formeln verwendet, somit entstammen alle folgenden Herleitungen dieser Literatur.


=== Schwimmwinkel ===
=== Schwimmwinkel ===
Die Formel der Winkelgeschwindigkeit des Schwimmwinkels wird aus dem vereinfachten Schwerpunktsatz abgeleitet. Dabei ist <math>_KF_{Cy}</math> die im Schwerpunkt der Hinterachse angreifende Kraft, m die Fahrzeugmasse und <math>_K\dot{\psi}</math> die Gierwinkelgeschwindigkeit.
Die Formel der Winkelgeschwindigkeit des Schwimmwinkels wird aus dem vereinfachten Schwerpunktsatz abgeleitet. Dabei ist <math>_KF_{Cy}</math> die im Schwerpunkt der Hinterachse angreifende Kraft, <math>m</math> die Fahrzeugmasse und <math>_K\dot{\psi}</math> die Gierwinkelgeschwindigkeit.
   
   
<math>_K\dot{\beta} = \frac{_KF_{Cy}}{m \cdot _Kv_{Cx}} - _K\dot{\psi} </math>
<math>\dot{\beta} = \frac{_KF_{Cy}}{m \cdot _Kv_{Cx}} - _K\dot{\psi} </math>


Auf den Hintergrund der Vereinfachung des Schwerpunktsatzes wird im Rahmen der entsprechenden Komponente näher eingegangen.
Durch Integration von <math>\dot{\beta}</math> ergibt sich der Schwimmwinkel des Fahrzeugs <math>\beta</math>. Der Schwimmwinkel der Vorder- und Hinterachse <math>\beta_v</math> und <math>\beta_h</math> kann jeweils aus dem Schwimmwinkel des Fahrzeugs <math>\beta</math>, dem Schwerpunktabstand zur Vorder- bzw. Hinterachse <math>l_v</math> bzw. <math>l_h</math>, der Gierwinkelgeschwindigkeit <math>_K\dot{\psi}</math> und der Fahrzeuglängsgeschwindigkeit <math>_Kv_{Cx}</math> berechnet werden.
 
Durch Integration von <math>_K\dot{\beta}</math> ergibt sich der Schwimmwinkel des Fahrzeugs <math>_K\beta</math>. Der Schwimmwinkel der Vorder- und Hinterachse <math>\beta_v</math> und <math>\beta_h</math> kann jeweils aus dem Schwimmwinkel des Fahrzeugs <math>_K\beta</math>, dem Schwerpunktabstand zur Vorder- bzw. Hinterachse <math>l_v</math> bzw. <math>l_h</math>, der Gierwinkelgeschwindigkeit <math>_K\dot{\psi}</math> und der Fahrzeuglängsgeschwindigkeit <math>_Kv_{Cx}</math> berechnet werden.


<math>\beta_v = \beta + \frac{l_v \cdot _K\dot{\psi}}{_Kv_{Cx}} </math>
<math>\beta_v = \beta + \frac{l_v \cdot _K\dot{\psi}}{_Kv_{Cx}} </math>
Zeile 112: Zeile 188:
<math>\beta_h = \beta - \frac{l_h \cdot _K\dot{\psi}}{_Kv_{Cx}} </math>
<math>\beta_h = \beta - \frac{l_h \cdot _K\dot{\psi}}{_Kv_{Cx}} </math>


=== Räder ===
=== Reifen ===


Der Achs-Schräglaufwinkel ist der Winkel zwischen der Reifenlängsachse und dem Geschwindigkeitsvektor des Radmittelpunkts. Daher ergeben sich die Achs-Schräglaufwinkel der Vorder- und Hinterachse <math>\alpha_v</math> und <math>\alpha_h</math> aus der Differenz des jeweiligen Lenk- und Schwimmwinkels.
Der Achs-Schräglaufwinkel ist der Winkel zwischen der Reifenlängsachse und dem Geschwindigkeitsvektor des Radmittelpunkts. Daher ergeben sich die Achs-Schräglaufwinkel der Vorder- und Hinterachse <math>\alpha_v</math> und <math>\alpha_h</math> aus der Differenz des jeweiligen Lenk- und Schwimmwinkels.
Zeile 121: Zeile 197:




Basierend auf den Achs-Schräglaufwinkeln lassen sich zusammen mit der jeweiligen Achssteifigkeit <math>c_v</math> und <math>c_h</math> die Querkräfte an den Rädern bzw. Achsen berechnen.
Basierend auf den Achs-Schräglaufwinkeln lassen sich zusammen mit der jeweiligen Achsseitensteifigkeit <math>c_v</math> und <math>c_h</math>, die Querkräfte an den Rädern bzw. Achsen berechnen.


<math>_RF_{yv} = c_v \cdot \alpha_v</math>
<math>_RF_{yv} = c_v \cdot \alpha_v</math>


<math>_RF_{yh} = c_h \cdot \alpha_h</math>
<math>_RF_{yh} = c_h \cdot \alpha_h</math>


=== Karosserie ===
=== Karosserie ===


Bei dem linearen Einspurmodell wird von kleinen Winkeln ausgegangen. Daher werden die folgenden Linearisierungen angenommen:
Nach dem Skript wird beim linearen Einspurmodell von kleinen Winkeln ausgegangen und damit ergeben sich damit folgende Formeln für die Kräfte in x- und y-Richtung.


<math>sin(\alpha) \approx \alpha</math>
<math>_KF_{xv} \approx \delta_v \cdot _RF_{yv}</math>


<math>cos(\alpha) \approx 1</math>
<math>_KF_{xh} \approx \delta_h \cdot _RF_{yh}</math>




Unter Berücksichtigung dieser Annahmen lassen sich die Quer- und Längskräfte in den Fahrzeugkoordinaten wie folgt bestimmen:
<math>_KF_{yv} \approx _RF_{yv}</math>


<math>_KF_{xv} = sin(\delta_v) \cdot _RF_{yv} \approx \delta_v \cdot _RF_{yv}</math>
<math>_KF_{yh} \approx _RF_{yh}</math>


<math>_KF_{xh} = sin(\delta_h) \cdot _RF_{yh} \approx \delta_h \cdot _RF_{yh}</math>


 
Aus den Kräften in x- und y-Richtung werden jeweils die Kräftesummen <math>_KF_{Cx}</math> und <math>_KF_{Cy}</math> gebildet. Durch Einsetzen des vorherigen Zusammenhanges können die folgenden Formeln gebildet werden.
<math>_KF_{yv} = cos(\delta_v) \cdot _RF_{yv} \approx _RF_{yv}</math>
 
<math>_KF_{yh} = cos(\delta_h) \cdot _RF_{yh} \approx _RF_{yh}</math>
 
 
Aus den Kräften in x- und y-Richtung werden jeweils die Kräftesummen <math>_KF_{Cx}</math> und <math>_KF_{Cy}</math> gebildet. Durch einsetzen der vorher beschriebenen Formeln ergibt sich damit:


<math>_KF_{Cx} = \delta_v \cdot _RF_{yv} + \delta_h \cdot _RF_{yh}</math>
<math>_KF_{Cx} = \delta_v \cdot _RF_{yv} + \delta_h \cdot _RF_{yh}</math>
Zeile 155: Zeile 223:
<math>_KF_{Cy} = _RF_{yv} + _RF_{yh}</math>
<math>_KF_{Cy} = _RF_{yv} + _RF_{yh}</math>


Durch das Dividieren der jeweiligen Kräfte (in x- und y-Richtung) mit der Masse des Fahrzeugs ergeben sich die Fahrzeuglängsbeschleunigungen in x- und y-Richtung.
 
Durch das Dividieren der jeweiligen Kräfte mit der Masse des Fahrzeugs ergeben sich die Fahrzeugbeschleunigungen in Quer- und Längsrichtung des Fahrzeugs (y- und x-Richtung).


<math>_Ka_{Cy} = \frac{_KF_{Cy}}{m}</math>
<math>_Ka_{Cy} = \frac{_KF_{Cy}}{m}</math>
Zeile 161: Zeile 230:
<math>_Ka_{Cx} = \frac{_KF_{Cx}}{m}</math>
<math>_Ka_{Cx} = \frac{_KF_{Cx}}{m}</math>


Der Schwerpunkt Abstand der Hinterachse <math>l_h</math> ergibt sich aus der Differenz von dem Radstand  <math>l</math> minus dem Schwerpunkt Abstand zur Vorderachse <math>l_v</math>.
Der Schwerpunktabstand der Hinterachse <math>l_h</math> ergibt sich aus der Differenz von dem Radstand  <math>l</math> und dem Schwerpunktabstand zur Vorderachse <math>l_v</math>.


<math>l_h = l - l_v </math>
<math>l_h = l - l_v </math>


Mithilfe des Drallsatzes lässt sich die Gierwinkelbeschleunigung <math>_K\ddot{\psi}</math> berechnen. Dabei wird die Differenz der Produkte aus dem Schwerpunktabstand zur Vorder- bzw. Hinterachse <math>l_v</math> bzw. <math>l_h</math> und den jeweiligen Querkräften durch die Massenträgheit <math>J_{zz}</math> geteilt.
Mithilfe des Drallsatzes lässt sich die Gierwinkelbeschleunigung <math>_K\ddot{\psi}</math> berechnen. Dabei wird die Differenz der Produkte aus dem Schwerpunktabstand zur Vorder- bzw. Hinterachse <math>l_v</math> bzw. <math>l_h</math> und den jeweiligen Querkräften durch die Massenträgheit <math>J_{zz}</math> geteilt.
Zeile 173: Zeile 243:
Durch Integration der Gierwinkelbeschleunigung <math>_K\ddot{\psi}</math> ergibt sich die Gierwinkelgeschwindigkeit <math>_K\dot{\psi}</math>.
Durch Integration der Gierwinkelbeschleunigung <math>_K\ddot{\psi}</math> ergibt sich die Gierwinkelgeschwindigkeit <math>_K\dot{\psi}</math>.


== Programmierung ==  
<math>_K\dot{\psi} = \int{_K\ddot{\psi}}\,dt</math>
 
== Programmierung ==
 
Die Programmierung beinhaltetet zwei unterschiedliche Komponenten. Die Simulation erfolgt über das Simulink Modell und die Parameter werden mithilfe eines MATLAB Skriptes übergeben.
 
=== Parameterskript ===
 
Das Parameterskript übergibt zunächst alle im Modell benötigten Parameter. Dies lässt sich in der folgenden Abbildung erkennen.
 
[[Datei: Parameterskript uebergabe Parameter Gruppe B.png|left|]]
<br clear=all>
''Abb. 5: Übergebene Parameter aus dem Skript''
 
 
Als nächstes werden vier Fahrmannöver definiert, welchen eine spezifische Mannöver ID zugewiesen wird (1 - 4). Hinter diesen IDs sind die folgenden Fahrmannöver hinterlegt.
# Impulsartiges Einlenken (Lenkwinkelsprung)
# Slalomfahrt
# Keine Lenkbewegung
# Gleichmäßiges Einlenken
 
Zudem wird zwischen Links- und Rechtskurve unterschieden.
 
Weitergehend werden Benutzerabfragen eingebaut, welche die Interaktion mit dem Skript bestimmen.
Die Eingaben werden nur übernommen, wenn es sich um Eingaben innerhalb des Definitionsbereiches handelt. Bei den Fahrmannövern ist dieser Definitionsbereich, wie oben erkennbar ist, 1 - 4. Der Benutzer kann eine freie Eingabe tätigen. Wird nun eine 5 oder eine andere Zahl oder Buchstabe außerhalb des Definitionsraumes eingegeben, bekommt der Nutzer eine Fehlermeldung und die Ausführung des Skriptes wird abgebrochen.
Die gleiche Vorgehensweise wurde für die Auswahl einer Links- oder Rechtskurve implementiert.
 
Nachdem die Einstellungen getroffen wurden, führt das Skript das Simulinkmodell mit den getroffenen Einstellungen und übergebenen Parametern aus. Die Ergebnisse der Simulation werden von dem Modell in den MATLAB Workspace zurückgegeben.
 
Abschließend wird noch eine dritte Eingabe vom Benutzer gefordert. Diese ermöglich eine zusätzliche Darstellung der Simulationsergebnisse außerhalb des Simulinkmodells in einer figure.
Der gesamte MATLAB-Code des Parameterskripts kann im [https://svn.hshl.de/svn/BSE_SystemsDesignEng/trunk/Projekte/ESM_SS2021/Gruppen/Gruppe%20B/05_Entwicklung/ SVN] eingesehen werden.
 
=== Simulink Modell ===
 
Im Folgenden wird die Umsetzung der im Kapitel Komponentenspezifikation beschriebenen Gleichungen erläutert. Außerdem wird ebenfalls auf die Simulationsmöglichkeiten der unterschiedlichen Fahrmannöver eingegangen, die bereits im Parameterskript abgefragt werden. Um die Funktionsweise des Simulinkmodells verstehen zu können, werden dementsprechend die Komponenten mit ihren Signalflüssen und unterschiedlichen Bausteinen abgebildet.
 
[[Datei:Komponente Mannoeverauswahl Gruppe B.PNG|mini|left|''Abb. 6: Komponente Mannöverauswahl'']]
<br clear=all>
 
In Abbildung 6 lässt sich erkennen, dass die Komponente Mannöverauswahl eine Switch Abfrage für die Variable Mannöver ID beinhaltet. Aufgrund dieser ID werden dann die unterschiedlichen Lenkwinkel Verläufe simuliert.
Außerdem wird der Lenkwinkel hinten <math> \delta_h </math> gebildet und zwar mit einem relativen Anteil von dem Lenkwinkel vorne <math>\delta_v</math>. Im Nachgang wurde dieser relative Anteil gleich 0 % gesetzt, da kein Lenkwinkel an der Hinterachse existiert.
 
Die nächste Komponente ist der Reifen, welche die Umsetzung der Gleichung für die Achs-Schräglaufwinkel <math>\alpha_v</math> und <math>\alpha_h</math> beinhaltet. Außerdem werden den Reifen und somit Achsen, wirkenden Querkräfte <math>_RF_{yv}</math> und <math>_RF_{yh}</math> berechnet. Für die Umsetzung wurden einfache Additions- und Multiplikationsblöcke verwendet.
 
[[Datei:Komponente Reifen Gruppe B.PNG|mini|left|''Abb. 7: Komponente Reifen'']]
<br clear=all>
 
Weitergehend beinhaltet die Komponente Karosserie die Berechnungen für die Fahrzeugquer- und längskraft <math>_KF_{Cy}</math> und <math>_KF_{Cx}</math> sowie die Fahrzeugquer- und längsbeschleunigung <math>_Ka_{Cy} </math> und <math>_Ka_{Cx} </math> im Fahrzeugschwerpunkt C. Außerdem wird noch die Gierwinkelbeschleunigung <math>_K\ddot{\psi}</math> berechnet.
 
[[Datei:Komponente Karosserie Gruppe B.PNG|mini|left|''Abb. 8: Komponente Karosserie'']]
<br clear=all>
 
Die Komponente Gierdynamik hingegen beinhaltet nur eine einzige Berechnung, nämlich die Integration mit der Gierwinkelbeschleunigung <math>_K\ddot{\psi}</math> zur Gierwinkelrate, bzw. Gierwinkelgeschwindigkeit <math>_K\dot{\psi}</math>.
 
[[Datei:Komponente Gierdynamik Gruppe B.PNG|mini|left|''Abb. 9: Komponente Gierdynamik'']]
<br clear=all>
 
Als letzte Komponente wurde die Komponente Schwimmwinkel verwendet. Diese berechnet den Schwimmwinkel <math>\beta</math> mit seinen Anteilen für die Vorder- und Hinterachse <math>\beta_v</math> und <math>\beta_h</math>.
 
[[Datei:Komponente Schwimmwinkel Gruppe B.PNG|mini|left|''Abb. 10: Komponente Schwimmwinkel'']]
<br clear=all>
 
Abschließend soll auch noch die hinterlegte Funktionalität in dem Submodul Auswertung gezeigt werden. Da innerhalb dieses Submoduls keine Komponenten verwendet wurden, befinden sich die Bausteine direkt auf der ersten Ebene im Submodul.
 
[[Datei:Submodul Auswertung Gruppe B.PNG|mini|left|''Abb. 11: Submodul Auswertung'']]
<br clear=all>
 
Alle zusammengehörigen Signale werden in einem Scope Block in demselben Diagramm ausgegeben und außerdem an den MATLAB Workspace zurückgegeben. Somit können die Simulationsergebnisse auch außerhalb des Simulinkmodells verwendet werden.


== Ergebnisse ==
== Ergebnisse ==
Die Ergebnisse der Simulation können über das Parameterskript aufgerufen und angezeigt werden.
Im weiteren Verlauf werden zwei Ergebnisse beispielhaft dargestellt.
Das Skript ist im [https://svn.hshl.de/svn/BSE_SystemsDesignEng/trunk/Projekte/ESM_SS2021/Gruppen/Gruppe%20B/05_Entwicklung/ SVN] abgelegt und kann mit den verschiedenen Einstellungsmöglichkeiten getestet werden.
Durch die Auswahl des ersten Fahrmannövers (Lenkwinkelsprung) mit einer Linkskurve werden die in Abbildung 12 dargestellten Ergebnisse ausgegeben.
[[Datei:Lenkwnkelsprung Linkskurve Ergebnis Gruppe B.jpg|left|mini|''Abb. 12: Simulationsergebnisse Fahrmannöver Lenkwinkelsprung'']]
<br clear=all>
Die Auswahl des zweiten Fahrmannövers erfordert keine Auswahl der Kurve, da eine Slalomfahrt simuliert wird. Das Ergebnis wird in der folgenden Abbildung dargestellt.
[[Datei:Slalomfahrt Erbenis Gruppe B.jpg|left|mini|''Abb. 13: Simulationsergebnisse Fahrmannöver Slalomfahrt'']]
<br clear=all>


== Zusammenfassung ==
== Zusammenfassung ==
Im Rahmen der semesterbegleitenden Seminararbeit des Moduls Systems Design Engineering wurde ein lineares Einspurmodell entwickelt und umgesetzt. Dabei wurde die Software MATLAB 2020a Simulink zur Simulation verwendet. Die Vorgehensweise bei der Entwicklung des Modells entsprach dem V-Modell.
Das entwickelte Modell kann vier verschiedene Fahrmannöver simulieren.
# Impulsartiges Einlenken (Lenkwinkelsprung)
# Slalomfahrt
# Keine Lenkbewegung
# Gleichmäßiges Einlenken
Der Benutzer kann dabei über das ParamterSkript mit dem Modell interagieren und selbständig, das gewünschte Fahrverhalten, inklusive der gewünschten Richtung (Links- oder Rechtskurve), auswählen. Ungültige Eingaben führen zu einem Abbruch der Ausführung.
Weiterhin kann entschieden werden, ob das Ergebnis zusätzlich in MATLAB angezeigt werden soll oder ob die Simulationsergebnisse nur im Simulinkmodell im Submodul Auswertung zu finden sind.


== Dokumentation ==
== Dokumentation ==
Zeile 183: Zeile 346:
[https://svn.hshl.de/svn/BSE_SystemsDesignEng/trunk/Projekte/ESM_SS2021/Gruppen/Gruppe%20B/ Link zu der Ausarbeitung in SVN]
[https://svn.hshl.de/svn/BSE_SystemsDesignEng/trunk/Projekte/ESM_SS2021/Gruppen/Gruppe%20B/ Link zu der Ausarbeitung in SVN]


== Literaturverzeichnis ==
<references/>




----
----
→ zurück zum Hauptartikel: [["Systems Design Engineering" - Seminaraufgabe SoSe 2021: Einspurmodell“]]
→ zurück zum Hauptartikel: [["Systems Design Engineering" - Seminaraufgabe SoSe 2021: Einspurmodell“]]

Aktuelle Version vom 12. Juli 2021, 20:29 Uhr


Autoren: Björn Schlottke und Dennis Schleicher


Einleitung

Dieser Artikel dokumentiert die Ausarbeitung der Gruppe B im Modul Systems Design Engineering im Sommersemester 2021. Die Aufgabe beinhaltet die Entwicklung des linearen Einspurmodells nach dem V-Modell als Werkzeug zur Komplexitätsbeherrschung. Hierfür wurden die Inhalte des Skriptes Fahrwerkmanagement in Submodule und zugehörige Komponenten aufgeteilt und in einem MATLAB 2020a Simulink Modell umgesetzt.

Vorgehensweise nach V-Modell

Wie bereits erläutert wurde die Entwicklung nach dem V-Modell durchgeführt. Dies beinhaltet die folgenden Schritte, welche an dieser Stelle noch einmal kurz aufgelistet sind.

  1. Anforderungsdefinition
  2. Funktionaler Systementwurf
  3. Technischer Systementwurf
  4. Komponentenspezifikation
  5. Programmierung
  6. Komponententest
  7. Integrationstest
  8. Systemtest
  9. Abnahmetest

Die Schritte 6 - 9 werden in dem vorliegenden Artikel nicht behandelt, weil sie die Testung der Ausarbeitungen von Gruppe J sowie den Abnahmetest des entwickelten Modells durch Prof. Göbel, betreffen. Somit wird lediglich die Entwicklung des Simulinkmodells behandelt.

Anforderungen

Zunächst wurden alle Anforderungen zu denen sich Gruppe B im Rahmen dieser Seminararbeit verpflichtet hat, in einem Lastenheft festgehalten. Hierfür wurde das Lastenheft mit der folgenden Struktur versehen.

  1. Formale Anforderungen
    1. Nachhaltigkeit des Programmcodes
    2. Abgaben des letzten Meilensteins im HSHL Wiki
  2. Termine und Fristen
  3. Aufbau
    1. Teilmodul Mannöversteuerung
    2. Teilmodul Modell
    3. Teilmodul Auswertung
  4. Modellgrundlagen

Das gesamte Lastenheft kann im SVN eingesehen werden. In Tabelle 1 wird ein Auszug aus dem Lastenheft dargestellt. Die Abkürzungen in der Spalte Typ stehen für Inhalt (= I) und Anforderung (= A).


ID Typ Kapitel Inhalt
Tabelle 1: Formale Anforderungen aus dem Lastenheft
001 I 1 Formale Anforderungen
002 A Es muss die Software MATLAB 2020a benutzt werden.
003 A Die Vorgehensweise muss dem V-Modell nach Vorlage von Prof. Göbel entsprechen.
004 A Es muss ein lineares Einspurmodell in MATLAB Simulink erstellt werden.
005 A Für die Erstellung des Modells müssen die Parameter extrahiert und in MATLAB angelegt werden.
006 A Die Parameter müssen nachträglich anpassbar sein.

Technischer Systementwurf

Im folgenden Kapitel wird der gesamte Entwurf des Systems erläutert. An dieser Stelle wird der funktionale Systementwurf aus dem V-Modell übergangen, da er keinen Teil der Seminaraufgabe dargestellt hat. Grundlegend ist das Simulink Modell so aufgebaut, dass es drei Submodule besitzt, welche wiederum weitere Komponenten beinhalten. Innerhalb der Komponenten ist die eigentliche Funktionalität hinterlegt. Diese Struktur wurde für die Bearbeitung der Seminaraufgabe vorgegeben und wurde ebenfalls unter den Anforderungen im Lastenheft festgehalten. Die oberste Ebene dieser Struktur lässt sich in Abbildung 1 erkennen.


Abb. 1: Submodule des Simulinkmodells


Das Submodul Mannöversteuerung besitzt nur eine Komponente, nämlich die Mannöverauswahl. Unter dem Submodul Modell hingegen befinden sich die Komponenten Reifen, Karosserie, Gierdynamik und Schwimmwinkel. Als Letztes besitzt das Submodul Auswertung keine Komponenten. Weitergehend kann erkannt werden, dass die Submodule untereinander Verbindungen besitzen. Somit werden die Parameter aus Tabelle 2 zwischen den Submodulen übergeben.


Parameter Beschreibung Einheit
Tabelle 2: Übergebene Parameter der Submodule
Lenkwinkel Vorderachse
Lenkwinkel Hinterachse
Fahrzeuglängsgeschwindigkeit im Fahrzeugschwerpunkt C
Fahrzeugquerbeschleunigung im Fahrzeugschwerpunkt C
Fahrzeufglängsbeschleunigung im Fahrzeugschwerpunkt C
Fahrzeugquerkraft im Fahrzeugschwerpunkt C
Fahrzeuglängskraft im Fahrzeugschwerpunkt C
Schwimmwinkel
Schwimmwinkelanteil Vorderachse
Schwimmwinkelanteil Hinterachse
Schräglaufwinkel Vorderachse
Schräglaufwinkel Hinterachse
Gierwinkelrate (Gierwinkelgeschwindigkeit)


Weitergehend wurden die Inhalte der Submodule einmal dargestellt. Hierbei handelt es sich um die Ebene auf denen die Komponenten erkennbar sind. Zuerst wurde der Inhalt des Submoduls Mannöversteuerung dargestellt.

Abb. 2: Submodul Mannöversteuerung


Als nächstes ist in Abbildung 3 das Submodul Modell dargestellt.

Abb. 3: Submodul Modell


Es lässt sich direkt erkennen, dass das Submodul Modell die eigentliche Funktionalität des linearen Einspurmodells besitzt und dementsprechend wesentlich komplexer als die anderen Submodule ist. Abschließend wurde noch das Submodul Auswertung in Abbildung 4 dargestellt.

Abb. 4: Submodul Auswertung


In dieser Abbildung lässt sich sehr gut erkennen, dass es sich nur um den technischen Systementwurf handelt, weil noch keine Funktionalität vorhanden ist. Es sind lediglich die Eingänge sowie ein Scope Block zur Darstellung hinterlegt.

Komponentenspezifikation

Die Komponentenspezifikation definiert die Aufgabe, das Verhalten, den inneren Aufbau und die Schnittstellen der Komponenten. In den Submodulen Mannöversteuerung und Auswertung werden keine mathematischen Formeln verwendet. Das Submodul Modell wird, wie im technischen Systemplan beschrieben, in vier Komponenten unterteilt. Deren Funktionsweise soll im Folgenden mithilfe mathematischer Zusammenhänge erläutert werden. Bei der Herleitung wurden die in [1] beschriebenen Formeln verwendet, somit entstammen alle folgenden Herleitungen dieser Literatur.

Schwimmwinkel

Die Formel der Winkelgeschwindigkeit des Schwimmwinkels wird aus dem vereinfachten Schwerpunktsatz abgeleitet. Dabei ist die im Schwerpunkt der Hinterachse angreifende Kraft, die Fahrzeugmasse und die Gierwinkelgeschwindigkeit.

Durch Integration von ergibt sich der Schwimmwinkel des Fahrzeugs . Der Schwimmwinkel der Vorder- und Hinterachse und kann jeweils aus dem Schwimmwinkel des Fahrzeugs , dem Schwerpunktabstand zur Vorder- bzw. Hinterachse bzw. , der Gierwinkelgeschwindigkeit und der Fahrzeuglängsgeschwindigkeit berechnet werden.

Reifen

Der Achs-Schräglaufwinkel ist der Winkel zwischen der Reifenlängsachse und dem Geschwindigkeitsvektor des Radmittelpunkts. Daher ergeben sich die Achs-Schräglaufwinkel der Vorder- und Hinterachse und aus der Differenz des jeweiligen Lenk- und Schwimmwinkels.


Basierend auf den Achs-Schräglaufwinkeln lassen sich zusammen mit der jeweiligen Achsseitensteifigkeit und , die Querkräfte an den Rädern bzw. Achsen berechnen.

Karosserie

Nach dem Skript wird beim linearen Einspurmodell von kleinen Winkeln ausgegangen und damit ergeben sich damit folgende Formeln für die Kräfte in x- und y-Richtung.



Aus den Kräften in x- und y-Richtung werden jeweils die Kräftesummen und gebildet. Durch Einsetzen des vorherigen Zusammenhanges können die folgenden Formeln gebildet werden.


Durch das Dividieren der jeweiligen Kräfte mit der Masse des Fahrzeugs ergeben sich die Fahrzeugbeschleunigungen in Quer- und Längsrichtung des Fahrzeugs (y- und x-Richtung).

Der Schwerpunktabstand der Hinterachse ergibt sich aus der Differenz von dem Radstand und dem Schwerpunktabstand zur Vorderachse .


Mithilfe des Drallsatzes lässt sich die Gierwinkelbeschleunigung berechnen. Dabei wird die Differenz der Produkte aus dem Schwerpunktabstand zur Vorder- bzw. Hinterachse bzw. und den jeweiligen Querkräften durch die Massenträgheit geteilt.

Gierwinkel

Durch Integration der Gierwinkelbeschleunigung ergibt sich die Gierwinkelgeschwindigkeit .

Programmierung

Die Programmierung beinhaltetet zwei unterschiedliche Komponenten. Die Simulation erfolgt über das Simulink Modell und die Parameter werden mithilfe eines MATLAB Skriptes übergeben.

Parameterskript

Das Parameterskript übergibt zunächst alle im Modell benötigten Parameter. Dies lässt sich in der folgenden Abbildung erkennen.


Abb. 5: Übergebene Parameter aus dem Skript


Als nächstes werden vier Fahrmannöver definiert, welchen eine spezifische Mannöver ID zugewiesen wird (1 - 4). Hinter diesen IDs sind die folgenden Fahrmannöver hinterlegt.

  1. Impulsartiges Einlenken (Lenkwinkelsprung)
  2. Slalomfahrt
  3. Keine Lenkbewegung
  4. Gleichmäßiges Einlenken

Zudem wird zwischen Links- und Rechtskurve unterschieden.

Weitergehend werden Benutzerabfragen eingebaut, welche die Interaktion mit dem Skript bestimmen. Die Eingaben werden nur übernommen, wenn es sich um Eingaben innerhalb des Definitionsbereiches handelt. Bei den Fahrmannövern ist dieser Definitionsbereich, wie oben erkennbar ist, 1 - 4. Der Benutzer kann eine freie Eingabe tätigen. Wird nun eine 5 oder eine andere Zahl oder Buchstabe außerhalb des Definitionsraumes eingegeben, bekommt der Nutzer eine Fehlermeldung und die Ausführung des Skriptes wird abgebrochen. Die gleiche Vorgehensweise wurde für die Auswahl einer Links- oder Rechtskurve implementiert.

Nachdem die Einstellungen getroffen wurden, führt das Skript das Simulinkmodell mit den getroffenen Einstellungen und übergebenen Parametern aus. Die Ergebnisse der Simulation werden von dem Modell in den MATLAB Workspace zurückgegeben.

Abschließend wird noch eine dritte Eingabe vom Benutzer gefordert. Diese ermöglich eine zusätzliche Darstellung der Simulationsergebnisse außerhalb des Simulinkmodells in einer figure. Der gesamte MATLAB-Code des Parameterskripts kann im SVN eingesehen werden.

Simulink Modell

Im Folgenden wird die Umsetzung der im Kapitel Komponentenspezifikation beschriebenen Gleichungen erläutert. Außerdem wird ebenfalls auf die Simulationsmöglichkeiten der unterschiedlichen Fahrmannöver eingegangen, die bereits im Parameterskript abgefragt werden. Um die Funktionsweise des Simulinkmodells verstehen zu können, werden dementsprechend die Komponenten mit ihren Signalflüssen und unterschiedlichen Bausteinen abgebildet.

Abb. 6: Komponente Mannöverauswahl


In Abbildung 6 lässt sich erkennen, dass die Komponente Mannöverauswahl eine Switch Abfrage für die Variable Mannöver ID beinhaltet. Aufgrund dieser ID werden dann die unterschiedlichen Lenkwinkel Verläufe simuliert. Außerdem wird der Lenkwinkel hinten gebildet und zwar mit einem relativen Anteil von dem Lenkwinkel vorne . Im Nachgang wurde dieser relative Anteil gleich 0 % gesetzt, da kein Lenkwinkel an der Hinterachse existiert.

Die nächste Komponente ist der Reifen, welche die Umsetzung der Gleichung für die Achs-Schräglaufwinkel und beinhaltet. Außerdem werden den Reifen und somit Achsen, wirkenden Querkräfte und berechnet. Für die Umsetzung wurden einfache Additions- und Multiplikationsblöcke verwendet.

Abb. 7: Komponente Reifen


Weitergehend beinhaltet die Komponente Karosserie die Berechnungen für die Fahrzeugquer- und längskraft und sowie die Fahrzeugquer- und längsbeschleunigung und im Fahrzeugschwerpunkt C. Außerdem wird noch die Gierwinkelbeschleunigung berechnet.

Abb. 8: Komponente Karosserie


Die Komponente Gierdynamik hingegen beinhaltet nur eine einzige Berechnung, nämlich die Integration mit der Gierwinkelbeschleunigung zur Gierwinkelrate, bzw. Gierwinkelgeschwindigkeit .

Abb. 9: Komponente Gierdynamik


Als letzte Komponente wurde die Komponente Schwimmwinkel verwendet. Diese berechnet den Schwimmwinkel mit seinen Anteilen für die Vorder- und Hinterachse und .

Abb. 10: Komponente Schwimmwinkel


Abschließend soll auch noch die hinterlegte Funktionalität in dem Submodul Auswertung gezeigt werden. Da innerhalb dieses Submoduls keine Komponenten verwendet wurden, befinden sich die Bausteine direkt auf der ersten Ebene im Submodul.

Abb. 11: Submodul Auswertung


Alle zusammengehörigen Signale werden in einem Scope Block in demselben Diagramm ausgegeben und außerdem an den MATLAB Workspace zurückgegeben. Somit können die Simulationsergebnisse auch außerhalb des Simulinkmodells verwendet werden.

Ergebnisse

Die Ergebnisse der Simulation können über das Parameterskript aufgerufen und angezeigt werden. Im weiteren Verlauf werden zwei Ergebnisse beispielhaft dargestellt. Das Skript ist im SVN abgelegt und kann mit den verschiedenen Einstellungsmöglichkeiten getestet werden.

Durch die Auswahl des ersten Fahrmannövers (Lenkwinkelsprung) mit einer Linkskurve werden die in Abbildung 12 dargestellten Ergebnisse ausgegeben.

Abb. 12: Simulationsergebnisse Fahrmannöver Lenkwinkelsprung


Die Auswahl des zweiten Fahrmannövers erfordert keine Auswahl der Kurve, da eine Slalomfahrt simuliert wird. Das Ergebnis wird in der folgenden Abbildung dargestellt.

Abb. 13: Simulationsergebnisse Fahrmannöver Slalomfahrt


Zusammenfassung

Im Rahmen der semesterbegleitenden Seminararbeit des Moduls Systems Design Engineering wurde ein lineares Einspurmodell entwickelt und umgesetzt. Dabei wurde die Software MATLAB 2020a Simulink zur Simulation verwendet. Die Vorgehensweise bei der Entwicklung des Modells entsprach dem V-Modell.

Das entwickelte Modell kann vier verschiedene Fahrmannöver simulieren.

  1. Impulsartiges Einlenken (Lenkwinkelsprung)
  2. Slalomfahrt
  3. Keine Lenkbewegung
  4. Gleichmäßiges Einlenken

Der Benutzer kann dabei über das ParamterSkript mit dem Modell interagieren und selbständig, das gewünschte Fahrverhalten, inklusive der gewünschten Richtung (Links- oder Rechtskurve), auswählen. Ungültige Eingaben führen zu einem Abbruch der Ausführung. Weiterhin kann entschieden werden, ob das Ergebnis zusätzlich in MATLAB angezeigt werden soll oder ob die Simulationsergebnisse nur im Simulinkmodell im Submodul Auswertung zu finden sind.

Dokumentation

Link zu der Ausarbeitung in SVN


Literaturverzeichnis

  1. Göbel, M.: Fahrwerkmanagement Skript, Ostfalia Hochschule für angewandte Wissenschaften, Version 1.7, 10.06.2020



→ zurück zum Hauptartikel: "Systems Design Engineering" - Seminaraufgabe SoSe 2021: Einspurmodell“