Seminaraufgabe SoSe 2021: Einspurmodell Gruppe B
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 Tool zur Komplexitätsbeherrschung. Hierfür wurden die Inhalte des Skriptes Datei:Skript Fahrwerkmanagent ProfGöbel.pdf 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 in die folgenden Schritte, welche an dieser Stelle noch einmal kurz aufgelistet sind.
- Anforderungsdefinition
- Funktionaler Systementwurf
- Technischer Systementwurf
- Komponentenspezifikation
- Programmierung
- Komponententest
- Integrationstest
- Systemtest
- 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.
- Formale Anforderungen
- Nachhaltigkeit des Programmcodes
- Abgaben des letzten Meilensteins im HSHL Wiki
- Termine und Fristen
- Aufbau
- Teilmodul Mannöversteuerung
- Teilmodul Modell
- Teilmodul Auswertung
- 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 |
---|---|---|---|
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 |
---|---|---|
Lenkwinkel vorne | ||
Lenkwinkel hinten | ||
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 vorne | ||
Schwimmwinkelanteil hinten | ||
Schräglaufwinkel vorne | ||
Schräglaufwinkel hinten | ||
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.
Als nächstes ist in Abbildung 3 das Submodul Modell dargestellt.
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.
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 Modulen "Mannöversteuerung" und "Auswertung" werden keine Mathematischen Formeln verwendet (bei der "Mannöversteuerung" erfolgt eine Zuweisung des hinteren Lenkwinkels über eine Multiplikation mit 0, diese ist aber trivial). 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, m 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.
Räder
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 Achssteifigkeit 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 können die folgenden Formeln gebildet werden.
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.
Der Schwerpunkt Abstand der Hinterachse ergibt sich aus der Differenz von dem Radstand minus dem Schwerpunkt Abstand 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 vom Parameterskript aus MATLAB ü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
Es werden vier Fahrmannöver definiert, welchen die Mannöver ID 1-4 zugewiesen wird. Diese sind:
- 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/Buchstabe außerhalb des Definitionsraumes eingeben, 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.
Außerdem wird eine dritte Eingabe vom Benutzer gefordert, welche Abfragt ob er eine Darstellung des Simulationsergebnisses wünscht oder nicht. Der gesamte MATLAB-Code des Parameter Modells 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 abgebildet und anschließend erläutert.
In der Abbildung lässt sich dementsprechend erkennen, dass die Komponente 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 realtive 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 Achsschrä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.
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.
Die Komponente Gierdynamik hingegen beinhaltet nur eine einzige Berechnung, nämlich die Integration mit der Gierwinkelbeschleunigung zur Gierwinkelrate, bzw. Gierwinkelgeschwindigkeit .
Als letzte Komponente wurde die Komponente Schwimmwinkel verwendet. Diese berechnet den Schwimmwinkel mit seinen Anteilen für die Vorder- und Hinterachse und .
Abschließend soll auch noch die hinterlegte Funktionalität in dem Submodul Auswertung gezeigt werden. Da innerhalb dieses Submoduls keine Komponenten verwendet wurden, befindet sich die Bausteine direkt auf der ersten Ebene im Submodul.
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 gestartet.
Durch die Auswahl des ersten Fahrmannövers (Lenkwinkelsprung) mit einer Linkskurve wird folgende Grafik ausgegeben.
Die Auswahl des zweiten Fahrmannövers erfordert keine Auswahl der Kurve da es eine Slalomfahrt simuliert. Das Ergebnis wird in der folgenden Abbildung dargestellt.
Zusammenfassung
Im Rahmen der Smesterbegleitenden Seminararbeit des Faches "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 darstellen:
- 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 ist.
Dokumentation
Link zu der Ausarbeitung in SVN
Literaturverzeichnis
- ↑ 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“