Seminaraufgabe SoSe 2021: Einspurmodell Gruppe K: Unterschied zwischen den Versionen
(53 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 12: | Zeile 12: | ||
== Vorgehensweise nach dem V-Modell == | == Vorgehensweise nach dem V-Modell == | ||
[[Datei:Systems_Design_Engineering_-_Seminaraufgabe_mit_V-Vordergrund.jpg|500px|center|Ablaufplan der Seminaraufgabe nach V-Modell]] | |||
=== Anforderungsdefinition === | === Anforderungsdefinition === | ||
Als erste Aufgabe des V-Modells steht die Anforderungsdefinition. In diesem Abschnitt wird möglichst genau und verpflichtend festgehalten, wie das Projekt gestaltet und durchgeführt werden soll. Zudem wir genaustens definiert welches Ergebnis erzielt werden soll. Aus all diesen Verpflichtungen wird das Lastenheft abgeleitet. | Als erste Aufgabe des V-Modells steht die Anforderungsdefinition. In diesem Abschnitt wird möglichst genau und verpflichtend festgehalten, wie das Projekt gestaltet und durchgeführt werden soll. Zudem wir genaustens definiert welches Ergebnis erzielt werden soll. Aus all diesen Verpflichtungen wird das Lastenheft abgeleitet. | ||
In unserem Fall ist der erste Punkt die Arbeitsaufgabe. Hier wird definiert was getan werden soll, welche Rahmenbedingungen dabei herrschen, wo wir verschiedene Informationen herbekommen und wo das Arbeitsergebnis hochgeladen wird. | In unserem Fall ist der erste Punkt die Arbeitsaufgabe. Hier wird definiert was getan werden soll, welche Rahmenbedingungen dabei herrschen, wo wir verschiedene Informationen herbekommen und wo das Arbeitsergebnis hochgeladen wird. | ||
Zeile 31: | Zeile 38: | ||
In diesem Punkt werden die Anforderungen auf die Funktionen des Einspurmodells abgebildet. Dieser Punkt wurde uns von Prof. Dr. Göbel abgenommen, weshalb der Absatz nicht so ausführlich erklärt ist. | In diesem Punkt werden die Anforderungen auf die Funktionen des Einspurmodells abgebildet. Dieser Punkt wurde uns von Prof. Dr. Göbel abgenommen, weshalb der Absatz nicht so ausführlich erklärt ist. | ||
=== | === Technischer Systementwurf === | ||
Beim technischen Systementwurfe wird ein grobes Gerüst nach den Anforderungen in der Software erstellt. Hier geht es noch nicht um die genauen Ausführungen der Funktionen und deren Berechnung, sondern mehr um die Module und Submodule die das Gerüst bilden. | Beim technischen Systementwurfe wird ein grobes Gerüst nach den Anforderungen in der Software erstellt. Hier geht es noch nicht um die genauen Ausführungen der Funktionen und deren Berechnung, sondern mehr um die Module und Submodule die das Gerüst bilden. | ||
Dabei wird unterteilt welche Funktion in welchem Modul ausgeführt werden soll und wie die Module zueinander in Beziehung stehen. | Dabei wird unterteilt welche Funktion in welchem Modul ausgeführt werden soll und wie die Module zueinander in Beziehung stehen. | ||
=== | === Komponentenspezifikation === | ||
In der Komponentenspezifikation wird für jedes Modul (Komponente) genau definiert welche Eingänge und Ausgänge diese hat und welche Aufgabe damit erledigt werden soll. Zudem werden die Funktionen aller Module und Submodule genannt und auch deren Berechnung. | In der Komponentenspezifikation wird für jedes Modul (Komponente) genau definiert welche Eingänge und Ausgänge diese hat und welche Aufgabe damit erledigt werden soll. Zudem werden die Funktionen aller Module und Submodule genannt und auch deren Berechnung. | ||
=== | === Programmierung/Modellierung === | ||
Bei der Programmierung und Modellierung werden die Arbeitsergebnisse der Komponentenspezifikation und des technischen Systementwurfs zusammengeführt. | Bei der Programmierung und Modellierung werden die Arbeitsergebnisse der Komponentenspezifikation und des technischen Systementwurfs zusammengeführt. | ||
Zeile 47: | Zeile 54: | ||
Das Modell erhält die Werte für alle Parameter aus einem MATLAB Skript, der bei Ausführung die Daten in das Simulink Modell übernimmt und dieses öffnet. | Das Modell erhält die Werte für alle Parameter aus einem MATLAB Skript, der bei Ausführung die Daten in das Simulink Modell übernimmt und dieses öffnet. | ||
=== | === Komponententest === | ||
Da höchstwahrscheinlich an manchen stellen Fehler auftreten, ist es wichtig das Modell zu testen. Als erste Stufe werden alle Komponenten einzeln getestet. | Da höchstwahrscheinlich an manchen stellen Fehler auftreten, ist es wichtig das Modell zu testen. Als erste Stufe werden alle Komponenten einzeln getestet. | ||
Zeile 56: | Zeile 63: | ||
Um alles so transparent und nachvollziehbar wie möglich zu halten, werden diese Tests auch zusätzlich zu dem Dokument in dem die Fehler festgehalten werden abgespeichert und der getesteten Gruppe zur Verfügung gestellt. | Um alles so transparent und nachvollziehbar wie möglich zu halten, werden diese Tests auch zusätzlich zu dem Dokument in dem die Fehler festgehalten werden abgespeichert und der getesteten Gruppe zur Verfügung gestellt. | ||
=== | === Integrationstest === | ||
Der Integrationstest geht einen Schritt weiter als der Komponententest. Hier wird davon ausgegangen, dass die Submodule berichtigt wurden und das übergeordnete Modul wird getestet. | Der Integrationstest geht einen Schritt weiter als der Komponententest. Hier wird davon ausgegangen, dass die Submodule berichtigt wurden und das übergeordnete Modul wird getestet. | ||
Zeile 63: | Zeile 70: | ||
Auch beim Integrationstest werden die einzelnen Module wieder ausgeschnitten und mit konstanten gefüllt. Dabei wird das Ergebnis beobachtet und abgespeichert und Fehler genau dokumentiert. | Auch beim Integrationstest werden die einzelnen Module wieder ausgeschnitten und mit konstanten gefüllt. Dabei wird das Ergebnis beobachtet und abgespeichert und Fehler genau dokumentiert. | ||
=== | === Systemtest === | ||
Der Systemtest ist der letzte Test, der von einer anderen Gruppe durchgeführt wird. | Der Systemtest ist der letzte Test, der von einer anderen Gruppe durchgeführt wird. | ||
Zeile 71: | Zeile 78: | ||
Es ist wichtig hierbei möglichst alles zu testen. Das heißt es sollten nicht nur die Parameter geändert werden, sondern auch die Manöver. | Es ist wichtig hierbei möglichst alles zu testen. Das heißt es sollten nicht nur die Parameter geändert werden, sondern auch die Manöver. | ||
=== | === Abnahmetest === | ||
Der Abnahmetest wird von Prof. Dr. Göbel vorgenommen. | Der Abnahmetest wird von Prof. Dr. Göbel vorgenommen. | ||
Zeile 85: | Zeile 92: | ||
Im Technischen Punkt wurde beschlossen, dass das Modell in 3 Modulen untergliedert wird, Manöversteuerung, Modell und Auswertung. Dabei wird in der Manöversteuerung die Manöverauswahl so wie die Eingangsgrößen bestimmt. Im Modell wird die Fahr berechnet. Die Komponenten der Module beinhalten Reifen, Karosserie, Gierdynamik und die Berechnung des vorderen und hinteren Schwimmwinkels. Dabei ist zu beachten dass die Komponenten nicht weiter unterteilt werden dürfen. Die Auswertung erfolgt über aus Diagrammen die, die Werte über die Zeit ausgeben und übereinander vertikal visualisiert werden. | Im Technischen Punkt wurde beschlossen, dass das Modell in 3 Modulen untergliedert wird, Manöversteuerung, Modell und Auswertung. Dabei wird in der Manöversteuerung die Manöverauswahl so wie die Eingangsgrößen bestimmt. Im Modell wird die Fahr berechnet. Die Komponenten der Module beinhalten Reifen, Karosserie, Gierdynamik und die Berechnung des vorderen und hinteren Schwimmwinkels. Dabei ist zu beachten dass die Komponenten nicht weiter unterteilt werden dürfen. Die Auswertung erfolgt über aus Diagrammen die, die Werte über die Zeit ausgeben und übereinander vertikal visualisiert werden. | ||
Im weiteren Verlauf wurden die Parameter festgelegt. Die Masse muss in [kg] und das Massenträgheitsmoment in [kgm^2] angegeben werden. Die gefahrene Länge und der Schwerpunktabstand zur Vorderachse muss in [m] angegeben werden. | |||
Bei der Nutzung der Software/Werkzeuge wurde festgelegt, das Matlab/Simulink 2020a genutzt werden muss, wobei Simulink für die Berechnung des linearen Einspurmodell benutz werden muss, die Schrittweite muss allerdings 0,01 [s] betragen. Die Initialisierung der Modellparameter muss über Matlab erfolgen. Es muss das eulersche Lösungsverfahren bei der Simulation genutzt werden. | |||
Für die Dokumentation sind folgende Anforderungen getroffen worden. Es muss ein Wiki Artikel über das gesamte Projekt verfasst werden, das Dokument "Namenskonvention" ist bei der Programmierung zu berücksichtigen. Es muss nachvollziehbar programmiert werden und eine deutliche Strukturierung des Programm Codes muss vorhanden sein. | |||
Zum letzten Punkt der Abgabe und Termine sind folgende Termine zu beachten: | |||
Das Lastenheft muss bis zum 26.04.2021 vollständig im SVN hochgeladen sein. | |||
Der Technische Systemplan muss bis zum 03.05.2021 vollständig im SVN hochgeladen sein. | |||
Die Komponentenspezifikation muss bis zum 10.05.2021 vollständig im SVN hochgeladen sein. | |||
Die Matlab Parameterdatei und das Simulinkmodell muss bis zum 26.05.2021 vollständig im SVN hochgeladen sein. | |||
Der Komponententestbericht muss bis zum 07.06.2021 vollständig im SVN hochgeladen sein. | |||
Der Integrationstest (Modultest) muss bis zum 18.06.2021 vollständig im SVN hochgeladen sein. | |||
Der Systemtest muss bis zum 28.06.2021 vollständig im SVN hochgeladen sein. | |||
Das lauffähige Modell muss bis zum 12.07.2021 vollständig im SVN hochgeladen sein. | |||
Der Wiki-Artikel muss bis zum 12.07.2021 vollständig im SVN hochgeladen sein. | |||
== Technischer Systementwurf == | == Technischer Systementwurf == | ||
<br/> | |||
[[Datei:Module_GruppeK_07_2021.PNG|700px|thumb|center|Übersicht der übergeordneten Module de linearen Einspurmodells]] | |||
<br/> | |||
Wie bereits erwähnt geht es beim technischen Systementwurf darum, wie das Modell aufgebaut ist. | |||
Im ersten Modul befindet sich die Manöversteuerung. Diese gibt die Geschwindigkeit und das Manöver vor. Diese beiden Ausgänge werden im nächsten Modul, dem Modell, als Eingänge genutzt. | |||
<br/> | |||
[[Datei:Modul_Manoeversteuerung_GruppeK_07_2021.PNG|600px|thumb|center|Einblick in das Modul "Manoeversteuerung"]] | |||
<br/> | |||
Neben den Ausgängen der Manöversteuerung befinden sich im Modul "Modell" die vorgegebenen Parameter durch das MATLAB Skript. Das Model unterteilt sich in Schwimmwinkel, Reifen, Karosserie und Gierdynamik. | |||
Wie der Name schon sagt wird im Schwimmwinkel der Schwimmwinkel des Modells errechnet. Im Submodul Reifen wird mithilfe der Lenkwinkel die seitliche Belastung auf die Reifen errechnet. Dadurch können die Querkräfte auf die Karosserie errechnet werden. Zudem wird die seitliche Belastung für die Gierdynamik genutzt, die uns die Modellgierrate ausgibt. | |||
Die Ausgänge der Gierdynamik und der Karosserie werden als Eingänge für die Auswertung genutzt. | |||
<br/> | |||
[[Datei:Submodule_Modell_GruppeK_07_2021.PNG|700px|thumb|center|Einblick in das Modul "Modell"]] | |||
<br/> | |||
Die Auswertung stellt die vorher ermittelten Werte als Diagramme dar, die über die Zeit aufgetragen sind. Diese werden untereinander dargestellt um diese vergleichen zu können. | |||
<br/> | |||
[[Datei:Modul_Auswertung_GruppeK_07_2021.PNG|300px|thumb|center|Einblick in das Modul "Auswertung"]] | |||
== Komponentenspezifikation == | == Komponentenspezifikation == | ||
Im Modul Manöversteuerung sind die Ausgänge die beiden Lenkwinkel und die Fahrzeuglängsgeschwindigkeit im Körpersystem. | |||
Die Aufgaben in dem Modul sind zum einen die Einstellung der Lenksgeschwindigkeit und der Lenkwinkel, dabei wird der Lenkwinkel über den Fahrzeuglenkwinkel nach vorne und hinten aufgeteilt. Die Manöversteuerung stellt das gewählte Manöver ein. Dazu berechnet das Modul den Lenkwinkel vorne und hinten, sowie die Fahrzeuglängsgeschwindigkeit des Autos. | |||
<br/> | |||
Im Modul Modell sind die Eingänge: Fahrzeuglängsgeschwindigkeit Lenkwinkel an der Vorderachse, Lenkwinkel an der Hinterachse, Massenträgheit, Schwerpunktabstand zur Vorderachse, Radstand, Achssteiffigkeit vorne, Achssteiffigkeit hinten und die Masse Fahrzeug. | |||
Die Ausgänge sind: Querkraft Achse vorne, Querkraft Achse hinten, Achsschräglaufwinkel vorne, Achsschräglaufwinkel hinten, Achsschwimmwinkel vorne, Achsschwimmwinkel hinten, Modellgierrate, Modellquerbeschleunigung. Die Aufgaben des Modul sind die Berechnung des Einspurmodells mithilfe vorgegebener Parameter. Es werden mithilfe der Lenkwinkel und der Fahrzeuglängsgeschwindigkeit | |||
die Querkräfte berechnet, woraus sich die Modellquerbeschleunigung und die Modellgierrate bilden. Die benötigten Formeln wurden aus dem Skript: Göbel_Skript_Fahrwerkmanagement_FHOstfalia.pdf entnommen. Die benötigten Parameter zur Berechnung werden durch | |||
ein Matlab Skript eingelesen. | |||
Im Modul Modell hat 4 Submodule das erste ist der Schwimmwinkel. Die Eingänge im Schwimmwinkel sind Schwerpunkt, Modellgierrate, Fahrzeuglängsgeschwindigkeit im Körpersystem, Radstand. | |||
Die Ausgänge sind Achsschwimmwinkel vorne, Achsschwimmwinkel hinten. in dem Submodul wird der Schwimmwinkels mithilfe der Längsgeschwindigkeit, der Modellgierrate, dem Schwerpunkt und dem Radstand berechnet. | |||
Im zweiten Submodul Reifen sind die Eingänge: Lenkwinkel vorne, Lenkwinkel hinten, Achsschwimmwinkel, Achsseitensteifigkeit vorne, Achsseitensteifigkeit hinten. Zu den Ausgängen zählen: Achsschräglaufwinkel vorne, Achsschräglaufwinkel hinten, Querkräfte an der Vorderachse, Querkräfte an der Hinterachse. Die Aufgaben in Reifen sind zum einen die Berechnung des Einspurmodells mithilfe vorgegebener Parameter. Die Berechnung der Lenkung mithilfe des Schräglaufwinkels | |||
und die Berechnung der seitlichen Belastung anhand der Querkräfte. | |||
Im vorletzten Submodul Karosserie sind die Eingänge: Achsenquerkräfte vorne, Achsenquerkräfte hinten und die Masse. Der Ausgang ist die Modellquerbeschleunigung. | |||
Die Aufgabe ist die Berechnung der Modellquerbeschleunigung der Karosserie mithilfe der Querkräfte und des Schwerpunktsatzes. | |||
Im letzten Submodul die Gierrate, sind die Eingänge: Massenträgheit, Schwerpunkt, Achsenquerkräfte vorne,Achsenquerkräfte hinten | |||
und Radstand. Der Ausgang ist die Modellgierrate und die Aufgabe ist Berechnung der Gierrate mithilfe der Querkräfte, der Massenträgheit, des Schwerpunkts und des Radstandes. | |||
<br/> | |||
Das letzte Modul Auswertung hat folgende Eingänge:Modellgierrate, Modellquerbeschleunigung, Kräfte im Schwerpunkt in x Richtung, Kräfte im Schwerpunkt in y Richtung, Schwimmwinkel und der Ausgang ist die Auswertung über die Zeit. Die Aufgabe ist, das Aufzeigen der Modellgierrate, Modellquerbeschleunigung, Schräglaufwinkel und Schwimmwinkel in 4 | |||
von übereinander dargestellten Diagrammen. | |||
== Umsetzung == | == Umsetzung == | ||
Begonnen mit dem Skript welches genutzt wird um die Parameter in das Simulink Modell zu laden, wird als erstes Matlab initialisiert um alle vorherigen Eingaben und Fenster zu schließen. | |||
Als nächsten werden die Parameter wie Masse, Lenkwinkel, Geschwindigkeit, etc. eingestellt. Im Anschluss öffnet Matlab automatisch das Simulink Modell mit den Parametern. | |||
<br/> | |||
[[Datei:Matlab_Skript_GruppeK_07_2021.PNG|500px|thumb|center|MATLAB Skript]] | |||
<br/> | |||
Das erste Modul innerhalb des Simulink Modells ist die Manoeversteuerung. Durch die Vorgabe des Lenkwinkels, des Manöver und der Geschwindigkeit durch das Matlab Skript kann der vordere und hintere Lenkwinkel, sowie die Geschwindigkeit an das Modul "Modell" weitergegeben werden. | |||
<br/> | |||
[[Datei:Umsetzung_Manoever_GruppeK_07_2021.PNG|300px|thumb|center|Modul "Manoeversteuerung"]] | |||
<br/> | |||
Die Ausgänge der Manoeversteuerung führen in das Modell. Hier werden die weiteren Parameter vorgegeben wie beispielsweise der Radstand, die Achsensteifigkeit, etc. | |||
<br/> | |||
[[Datei:Umsetzung_Submodule_GruppeK_07_2021.PNG|500px|thumb|center|Submodule des Moduls "Modell"]] | |||
<br/> | |||
Im Modell Schwimmwinkel wird mithilfe der Masse, der Geschwindigkeit, der Querkraft und der Modellgierrate der gesamte Schwimmwinkel berrechnet. Durch den Schwerpunktabstand der Hinter- und Vorderachse kann der hintere und vordere Schwimmwinkel berechnet werden. | |||
<br/> | |||
[[Datei:Umsetzung_Schwimmwinkel_GruppeK_07_2021.PNG|300px|thumb|center|Submodul "Schwimmwinkel"]] | |||
<br/> | |||
Das nächste Submodul sind die Reifen. Hier wird der vordere und hintere Lenkwinkel als auch Schwimmwinkel genutzt um den Schräglaufwinkel zu berechnen. Dieser wird benötigt um die Querkräfte an den Rädern zu ermitteln, indem der Schräglaufwinkel mit der Achssteifigkeit multipliziert wird. | |||
<br/> | |||
[[Datei:Umsetzung_Reifen_GruppeK_07_2021.PNG|300px|thumb|center|Submodul "Reifen"]] | |||
<br/> | |||
Die Querkräfte an den Reifen werden genutzt um die Querkräfte an der Karosserie in x- und y-Richtung zu errechnen. Durch den Schwerpunktsatz kann zusätzlich die angreifende Kraft auf den Schwerpunkt errechnet werden. Dessen Ergebnisse werden genutzt um den Drallsatz aufzustellen, der im Submodul Gierdynamik behandelt wird. | |||
<br/> | |||
[[Datei:Umsetzung_Karosserie_GruppeK_07_2021.PNG|300px|thumb|center|Submodul "Karosserie"]] | |||
<br/> | |||
In dem Submodul Gierdynamik wird nun mit den Kräften auf den Schwerpunkt der Drallsatz aufgestellt und die Modellgierrate errechnet. Dafür wird noch zusätzlich der Schwerpunktabstand zur Vorderachse und der Radstand benötigt. Das Ergebnis wird wiederrum durch die Massenträgheit dividiert und man erhält die Modellgierrate. | |||
<br/> | |||
[[Datei:Umsetzung_Gierdynamik_GruppeK_07_2021.PNG|300px|thumb|center|Submodul "Gierdynamik"]] | |||
<br/> | |||
In der Auswertung werden nun alle interessanten Ausgänge aufgenommen und untereinander über die zeit aufgetragen. Dabei werden die Kräfte auf den Schwerpunkt zusammen betrachtet, sowie die Querkräfte auf die Karosserie. Weitere wichtige Werte sind die Modellgierrate und der Schwimmwinkel. Um sie leicht vergleichbar zu machen werden alle Werte untereinander mit der gleichen Skalierung aufgetragen. | |||
<br/> | |||
[[Datei:Umsetzung_Auswertung_GruppeK_07_2021.PNG|300px|thumb|center|Modul "Auswertung"]] | |||
<br/> | |||
Als letzten Schritt wurden alle Submodule und Module zusammengefasst. Diese ergeben gemeinsam unser erarbeitetes lineares Einspurmodell. | |||
<br/> | |||
[[Datei:Umsetzung_Module_GruppeK_07_2021.PNG|500px|thumb|center|Das lineare Einspurmodell]] | |||
<br/> | |||
== Ergebnis == | == Ergebnis == | ||
In der Abbildung erkennt man das erste Manöver, welches eine Sinusförmige Lenkbewegung aufweist. | |||
<br/> | |||
[[Datei:Manöver_1_GruppeK_07_2021.png|500px|thumb|center|Ergebnis "Manöver 1"]] | |||
<br/> | |||
In der zweiten Abbildung ist das Manöver für das abbiegen zu sehen. Hier wird dargestellt wie das Fahrzeug um eine Kurve fährt. | |||
<br/> | |||
[[Datei:Manöver_2_GruppeK_07_2021.png|500px|thumb|center|Ergebnis "Manöver 2"]] | |||
<br/> | |||
In der 3 Abbildung ist das Manöver für eine gleichmäßige Lenkbewegung abgebildet, indem ein konstanter Lenkwinkel vorgegeben wird. | |||
<br/> | |||
[[Datei:Manöver_3_GruppeK_07_2021.png|500px|thumb|center|Ergebnis "Manöver 3"]] | |||
<br/> | |||
== Zusammenfassung == | |||
Während des Semesters war die Seminararbeit ein lineares Einspurmodell mit Hilfe des V-Modells zu Entwickeln. | |||
Das V-Modell untergliedert sich in 9 Punkte. | |||
Im ersten Punkt Anforderung wurde verpflichtend festgehalten, wie das Projekt gestaltet und durchgeführt werden soll. | |||
Im nächsten Punkt Funktionaler Systementwurf wurde die Anforderungen auf die Funktionen des Einspurmodells abgebildet. | |||
Bei dem dritten Punkt Technischer Systementwurf wurde ein grobes Gerüst nach den Anforderungen in der Software erstellt. | |||
Bei der Komponentenspezifikation wurden die Ein- und Ausgänge der einzelnen Module bestimmt. | |||
Im weiteren Verlauf wurden im fünften Punkt Programmierung/Modellierung die Arbeitsergebnisse der Komponentenspezifikation und des technischen Systementwurfs zusammengeführt. Im Punkt Komponententest wurden alle Komponente einzeln getestet. Beim Integrationstest wurden die Module getestet. Im folgenden Systemtest wurden alle Module zusammen als Modell getestet. Im Abnahmetest sollen bis zum 12.07.2021 die noch vorhanden Fehler verbessert werden. | |||
Im Punkt Anforderungen wurden abgeklärt welche Anforderung im Lastenheft stehen. Der Funktionale Systementwurf wurde von Prof. Dr. Göbel bereitgestellt. Bei dem Technischen Systementwurf wurde nochmal das Gerüst aufgezeigt und erläutert. Die Komponentenspezifikation zeigte die Aufgaben der Modul und Submodule auf. Die Umsetzung verdeutlichte, wie das fertige lineare Einspurmodell aufgebaut ist. Zum Abschluss sehen wir die Ergebnisse für jedes Manöver. | |||
== Arbeitsergebnisse == | == Arbeitsergebnisse == | ||
Die vollständigen Unterlagen | Die vollständigen Unterlagen, Ergebisse und Zwischenergebnisse zur Durchführung des Projekts befinden sich unter folgendem Link im [https://svn.hshl.de/svn/BSE_SystemsDesignEng/trunk/Projekte/ESM_SS2021/Gruppen SVN]. Der Gruppenname lautet Gruppe K. In diesem Ordner befinden sich alle Dateien, die erstellt wurden. | ||
== Literaturverzeichnis == | == Literaturverzeichnis == |
Aktuelle Version vom 8. Juli 2021, 14:35 Uhr
Autoren: Viktor Mirosch, Osman Mughal
Einleitung
Im Studiengang "Business and Systems Engineering" gibt es die Lehrveranstaltung "System Design Engineering" von Prof. Göbel. In System Design Engineering werden die Studierenden an die Anwendung und Entwickelung nach dem V-Modell, durch eine Seminararbeit herangeführt. In diesem Artikel wird die Ausarbeitung der Gruppe K dargestellt. Die Seminaraufgabe besteht darin ein lineares Einspurmodell mit Hilfe des V-Modells zu Entwickeln. Bei der Umsetzung und Darstellung wird das Programm MATLAB - SIMULINK 2020a verwendet. Für die Durchführung relevanten Parameter und Formeln sind dem Skript "Fahrwerksmanagement" entnommen.
Vorgehensweise nach dem V-Modell
Anforderungsdefinition
Als erste Aufgabe des V-Modells steht die Anforderungsdefinition. In diesem Abschnitt wird möglichst genau und verpflichtend festgehalten, wie das Projekt gestaltet und durchgeführt werden soll. Zudem wir genaustens definiert welches Ergebnis erzielt werden soll. Aus all diesen Verpflichtungen wird das Lastenheft abgeleitet.
In unserem Fall ist der erste Punkt die Arbeitsaufgabe. Hier wird definiert was getan werden soll, welche Rahmenbedingungen dabei herrschen, wo wir verschiedene Informationen herbekommen und wo das Arbeitsergebnis hochgeladen wird.
Weiter geht es mit der Definition aller Eingänge und Ausgänge. Es ist zu nennen welche Werte Ein- und Ausgegeben werden sollen und in welcher Einheit. Ein ähnlicher Punkt bei dem genauso vorgegangen wird ist der Punkt Parameter. Hier werden - wie der Name schon sagt - die Parameter für das Modell vorgegeben.
Im Punkt Technisch sind alle Anforderungen zusammengefasst die zur Erstellung des Einspurmodells berücksichtigt werden müssen. Dazu wird definiert welche Module das Modell enthalten muss und wie das Ergebnis dargestellt werden soll.
Im Punkt Software und Werkzeuge werden die Programme und die Rahmenbedingungen für diese festgelegt.
Die letzten beiden Punkte beinhalten die Anforderungen an die Dokumentation und die verbindlichen Fristen in Form von Abgaben der Zwischenstände im SVN.
Funktionaler Systementwurf
In diesem Punkt werden die Anforderungen auf die Funktionen des Einspurmodells abgebildet. Dieser Punkt wurde uns von Prof. Dr. Göbel abgenommen, weshalb der Absatz nicht so ausführlich erklärt ist.
Technischer Systementwurf
Beim technischen Systementwurfe wird ein grobes Gerüst nach den Anforderungen in der Software erstellt. Hier geht es noch nicht um die genauen Ausführungen der Funktionen und deren Berechnung, sondern mehr um die Module und Submodule die das Gerüst bilden. Dabei wird unterteilt welche Funktion in welchem Modul ausgeführt werden soll und wie die Module zueinander in Beziehung stehen.
Komponentenspezifikation
In der Komponentenspezifikation wird für jedes Modul (Komponente) genau definiert welche Eingänge und Ausgänge diese hat und welche Aufgabe damit erledigt werden soll. Zudem werden die Funktionen aller Module und Submodule genannt und auch deren Berechnung.
Programmierung/Modellierung
Bei der Programmierung und Modellierung werden die Arbeitsergebnisse der Komponentenspezifikation und des technischen Systementwurfs zusammengeführt. Das leere Gerüst aus dem technischen Systementwurf kann nun mit Eingängen und Parametern gefüllt werden. Außerdem können nun alle Module und Submodule mit Funktionen und Berechnungen gefüllt werden.
Das Modell erhält die Werte für alle Parameter aus einem MATLAB Skript, der bei Ausführung die Daten in das Simulink Modell übernimmt und dieses öffnet.
Komponententest
Da höchstwahrscheinlich an manchen stellen Fehler auftreten, ist es wichtig das Modell zu testen. Als erste Stufe werden alle Komponenten einzeln getestet.
Wichtig hierbei ist es den Test von jemand anderem durchführen zu lassen, da man oftmals für eigene Fehler "blind" ist.
Um den Test durchzuführen wird jedes Submodul aus dem Simulink Modell entnommen und in eine neue Simulink Datei eingefügt. Anschließen werden die Eingänge in Form von konstanten Werten hinzugefügt und das Ergebnis beobachtet. Sollten die Ergebnisse von den eigenen Berechnungen abweichen wird dieser Fehler genaustens dokumentiert. Um alles so transparent und nachvollziehbar wie möglich zu halten, werden diese Tests auch zusätzlich zu dem Dokument in dem die Fehler festgehalten werden abgespeichert und der getesteten Gruppe zur Verfügung gestellt.
Integrationstest
Der Integrationstest geht einen Schritt weiter als der Komponententest. Hier wird davon ausgegangen, dass die Submodule berichtigt wurden und das übergeordnete Modul wird getestet. Wie zuvor wird diese Aufgabe von einer anderen Gruppe übernommen um auszuschließen, dass eigene Fehler übersehen werden.
Auch beim Integrationstest werden die einzelnen Module wieder ausgeschnitten und mit konstanten gefüllt. Dabei wird das Ergebnis beobachtet und abgespeichert und Fehler genau dokumentiert.
Systemtest
Der Systemtest ist der letzte Test, der von einer anderen Gruppe durchgeführt wird. Hierbei werden als letzter Schritt alle Module zusammen als Modell getestet. Dafür werden die Eingänge entweder mit konstanten ersetz oder man ändert die Parameter im MATLAB Skript und schaut sich das Ergebnis an.
Weicht das erwartete Ergebnis vom erhaltenen Ergebnis ab wird dies dokumentiert und am besten mit Bildern festgehalten und der Gruppe zur Verfügung gestellt. Es ist wichtig hierbei möglichst alles zu testen. Das heißt es sollten nicht nur die Parameter geändert werden, sondern auch die Manöver.
Abnahmetest
Der Abnahmetest wird von Prof. Dr. Göbel vorgenommen. An diesem Punkt sollte das Simulink Modell und das MATLAB Skript soweit verbessert worden sein, dass keine Fehler auftreten. Dabei helfen die zuvor durchgeführten Test. Zusätzlich muss noch jede Anforderung des Lastenhefts erfüllt sein.
Anforderungen
In der Arbeitsaufgabe wurde beschlossen, dass das Projekt nach dem V-Modell erstellt werden muss und das die Simulation des Fahrverhaltens durch das linear Einspurmodell erfolgen soll. Des weiteren muss die Betrachtung bei konstanter Geschwindigkeit erfolgen. Die Infos und Vorlagen sind dem SVN Ordner zu entnehmen, sowie die fristgerechte Abgabe im SVN ist zu beachten.
Bei den Eingängen wurden zwei Punkte verpflichtet. Der Fahrlenkwinkel muss in [°] angegeben werden und die Fahrzeuglängsgeschwindigkeit in [m/s].
Im Ausgang werden die Schräglaufwinkel, der Schwimmwinkel und die Modelgierrate in [°] angegeben. Die Querkräfte müssen jeweils für die X und Y Richtung in [N] angegeben werden. Für die Querbeschleunigung wurden 2 Anforderung definiert. Die Einheit in X und Y Richtung wird in [m/s^2] angegeben und muss zwischen 0 und 4 liegen.
Im Technischen Punkt wurde beschlossen, dass das Modell in 3 Modulen untergliedert wird, Manöversteuerung, Modell und Auswertung. Dabei wird in der Manöversteuerung die Manöverauswahl so wie die Eingangsgrößen bestimmt. Im Modell wird die Fahr berechnet. Die Komponenten der Module beinhalten Reifen, Karosserie, Gierdynamik und die Berechnung des vorderen und hinteren Schwimmwinkels. Dabei ist zu beachten dass die Komponenten nicht weiter unterteilt werden dürfen. Die Auswertung erfolgt über aus Diagrammen die, die Werte über die Zeit ausgeben und übereinander vertikal visualisiert werden.
Im weiteren Verlauf wurden die Parameter festgelegt. Die Masse muss in [kg] und das Massenträgheitsmoment in [kgm^2] angegeben werden. Die gefahrene Länge und der Schwerpunktabstand zur Vorderachse muss in [m] angegeben werden.
Bei der Nutzung der Software/Werkzeuge wurde festgelegt, das Matlab/Simulink 2020a genutzt werden muss, wobei Simulink für die Berechnung des linearen Einspurmodell benutz werden muss, die Schrittweite muss allerdings 0,01 [s] betragen. Die Initialisierung der Modellparameter muss über Matlab erfolgen. Es muss das eulersche Lösungsverfahren bei der Simulation genutzt werden.
Für die Dokumentation sind folgende Anforderungen getroffen worden. Es muss ein Wiki Artikel über das gesamte Projekt verfasst werden, das Dokument "Namenskonvention" ist bei der Programmierung zu berücksichtigen. Es muss nachvollziehbar programmiert werden und eine deutliche Strukturierung des Programm Codes muss vorhanden sein.
Zum letzten Punkt der Abgabe und Termine sind folgende Termine zu beachten: Das Lastenheft muss bis zum 26.04.2021 vollständig im SVN hochgeladen sein. Der Technische Systemplan muss bis zum 03.05.2021 vollständig im SVN hochgeladen sein. Die Komponentenspezifikation muss bis zum 10.05.2021 vollständig im SVN hochgeladen sein. Die Matlab Parameterdatei und das Simulinkmodell muss bis zum 26.05.2021 vollständig im SVN hochgeladen sein. Der Komponententestbericht muss bis zum 07.06.2021 vollständig im SVN hochgeladen sein. Der Integrationstest (Modultest) muss bis zum 18.06.2021 vollständig im SVN hochgeladen sein. Der Systemtest muss bis zum 28.06.2021 vollständig im SVN hochgeladen sein. Das lauffähige Modell muss bis zum 12.07.2021 vollständig im SVN hochgeladen sein. Der Wiki-Artikel muss bis zum 12.07.2021 vollständig im SVN hochgeladen sein.
Technischer Systementwurf
Wie bereits erwähnt geht es beim technischen Systementwurf darum, wie das Modell aufgebaut ist.
Im ersten Modul befindet sich die Manöversteuerung. Diese gibt die Geschwindigkeit und das Manöver vor. Diese beiden Ausgänge werden im nächsten Modul, dem Modell, als Eingänge genutzt.
Neben den Ausgängen der Manöversteuerung befinden sich im Modul "Modell" die vorgegebenen Parameter durch das MATLAB Skript. Das Model unterteilt sich in Schwimmwinkel, Reifen, Karosserie und Gierdynamik. Wie der Name schon sagt wird im Schwimmwinkel der Schwimmwinkel des Modells errechnet. Im Submodul Reifen wird mithilfe der Lenkwinkel die seitliche Belastung auf die Reifen errechnet. Dadurch können die Querkräfte auf die Karosserie errechnet werden. Zudem wird die seitliche Belastung für die Gierdynamik genutzt, die uns die Modellgierrate ausgibt. Die Ausgänge der Gierdynamik und der Karosserie werden als Eingänge für die Auswertung genutzt.
Die Auswertung stellt die vorher ermittelten Werte als Diagramme dar, die über die Zeit aufgetragen sind. Diese werden untereinander dargestellt um diese vergleichen zu können.
Komponentenspezifikation
Im Modul Manöversteuerung sind die Ausgänge die beiden Lenkwinkel und die Fahrzeuglängsgeschwindigkeit im Körpersystem.
Die Aufgaben in dem Modul sind zum einen die Einstellung der Lenksgeschwindigkeit und der Lenkwinkel, dabei wird der Lenkwinkel über den Fahrzeuglenkwinkel nach vorne und hinten aufgeteilt. Die Manöversteuerung stellt das gewählte Manöver ein. Dazu berechnet das Modul den Lenkwinkel vorne und hinten, sowie die Fahrzeuglängsgeschwindigkeit des Autos.
Im Modul Modell sind die Eingänge: Fahrzeuglängsgeschwindigkeit Lenkwinkel an der Vorderachse, Lenkwinkel an der Hinterachse, Massenträgheit, Schwerpunktabstand zur Vorderachse, Radstand, Achssteiffigkeit vorne, Achssteiffigkeit hinten und die Masse Fahrzeug.
Die Ausgänge sind: Querkraft Achse vorne, Querkraft Achse hinten, Achsschräglaufwinkel vorne, Achsschräglaufwinkel hinten, Achsschwimmwinkel vorne, Achsschwimmwinkel hinten, Modellgierrate, Modellquerbeschleunigung. Die Aufgaben des Modul sind die Berechnung des Einspurmodells mithilfe vorgegebener Parameter. Es werden mithilfe der Lenkwinkel und der Fahrzeuglängsgeschwindigkeit
die Querkräfte berechnet, woraus sich die Modellquerbeschleunigung und die Modellgierrate bilden. Die benötigten Formeln wurden aus dem Skript: Göbel_Skript_Fahrwerkmanagement_FHOstfalia.pdf entnommen. Die benötigten Parameter zur Berechnung werden durch
ein Matlab Skript eingelesen.
Im Modul Modell hat 4 Submodule das erste ist der Schwimmwinkel. Die Eingänge im Schwimmwinkel sind Schwerpunkt, Modellgierrate, Fahrzeuglängsgeschwindigkeit im Körpersystem, Radstand.
Die Ausgänge sind Achsschwimmwinkel vorne, Achsschwimmwinkel hinten. in dem Submodul wird der Schwimmwinkels mithilfe der Längsgeschwindigkeit, der Modellgierrate, dem Schwerpunkt und dem Radstand berechnet. Im zweiten Submodul Reifen sind die Eingänge: Lenkwinkel vorne, Lenkwinkel hinten, Achsschwimmwinkel, Achsseitensteifigkeit vorne, Achsseitensteifigkeit hinten. Zu den Ausgängen zählen: Achsschräglaufwinkel vorne, Achsschräglaufwinkel hinten, Querkräfte an der Vorderachse, Querkräfte an der Hinterachse. Die Aufgaben in Reifen sind zum einen die Berechnung des Einspurmodells mithilfe vorgegebener Parameter. Die Berechnung der Lenkung mithilfe des Schräglaufwinkels und die Berechnung der seitlichen Belastung anhand der Querkräfte.
Im vorletzten Submodul Karosserie sind die Eingänge: Achsenquerkräfte vorne, Achsenquerkräfte hinten und die Masse. Der Ausgang ist die Modellquerbeschleunigung.
Die Aufgabe ist die Berechnung der Modellquerbeschleunigung der Karosserie mithilfe der Querkräfte und des Schwerpunktsatzes.
Im letzten Submodul die Gierrate, sind die Eingänge: Massenträgheit, Schwerpunkt, Achsenquerkräfte vorne,Achsenquerkräfte hinten
und Radstand. Der Ausgang ist die Modellgierrate und die Aufgabe ist Berechnung der Gierrate mithilfe der Querkräfte, der Massenträgheit, des Schwerpunkts und des Radstandes.
Das letzte Modul Auswertung hat folgende Eingänge:Modellgierrate, Modellquerbeschleunigung, Kräfte im Schwerpunkt in x Richtung, Kräfte im Schwerpunkt in y Richtung, Schwimmwinkel und der Ausgang ist die Auswertung über die Zeit. Die Aufgabe ist, das Aufzeigen der Modellgierrate, Modellquerbeschleunigung, Schräglaufwinkel und Schwimmwinkel in 4
von übereinander dargestellten Diagrammen.
Umsetzung
Begonnen mit dem Skript welches genutzt wird um die Parameter in das Simulink Modell zu laden, wird als erstes Matlab initialisiert um alle vorherigen Eingaben und Fenster zu schließen. Als nächsten werden die Parameter wie Masse, Lenkwinkel, Geschwindigkeit, etc. eingestellt. Im Anschluss öffnet Matlab automatisch das Simulink Modell mit den Parametern.
Das erste Modul innerhalb des Simulink Modells ist die Manoeversteuerung. Durch die Vorgabe des Lenkwinkels, des Manöver und der Geschwindigkeit durch das Matlab Skript kann der vordere und hintere Lenkwinkel, sowie die Geschwindigkeit an das Modul "Modell" weitergegeben werden.
Die Ausgänge der Manoeversteuerung führen in das Modell. Hier werden die weiteren Parameter vorgegeben wie beispielsweise der Radstand, die Achsensteifigkeit, etc.
Im Modell Schwimmwinkel wird mithilfe der Masse, der Geschwindigkeit, der Querkraft und der Modellgierrate der gesamte Schwimmwinkel berrechnet. Durch den Schwerpunktabstand der Hinter- und Vorderachse kann der hintere und vordere Schwimmwinkel berechnet werden.
Das nächste Submodul sind die Reifen. Hier wird der vordere und hintere Lenkwinkel als auch Schwimmwinkel genutzt um den Schräglaufwinkel zu berechnen. Dieser wird benötigt um die Querkräfte an den Rädern zu ermitteln, indem der Schräglaufwinkel mit der Achssteifigkeit multipliziert wird.
Die Querkräfte an den Reifen werden genutzt um die Querkräfte an der Karosserie in x- und y-Richtung zu errechnen. Durch den Schwerpunktsatz kann zusätzlich die angreifende Kraft auf den Schwerpunkt errechnet werden. Dessen Ergebnisse werden genutzt um den Drallsatz aufzustellen, der im Submodul Gierdynamik behandelt wird.
In dem Submodul Gierdynamik wird nun mit den Kräften auf den Schwerpunkt der Drallsatz aufgestellt und die Modellgierrate errechnet. Dafür wird noch zusätzlich der Schwerpunktabstand zur Vorderachse und der Radstand benötigt. Das Ergebnis wird wiederrum durch die Massenträgheit dividiert und man erhält die Modellgierrate.
In der Auswertung werden nun alle interessanten Ausgänge aufgenommen und untereinander über die zeit aufgetragen. Dabei werden die Kräfte auf den Schwerpunkt zusammen betrachtet, sowie die Querkräfte auf die Karosserie. Weitere wichtige Werte sind die Modellgierrate und der Schwimmwinkel. Um sie leicht vergleichbar zu machen werden alle Werte untereinander mit der gleichen Skalierung aufgetragen.
Als letzten Schritt wurden alle Submodule und Module zusammengefasst. Diese ergeben gemeinsam unser erarbeitetes lineares Einspurmodell.
Ergebnis
In der Abbildung erkennt man das erste Manöver, welches eine Sinusförmige Lenkbewegung aufweist.
In der zweiten Abbildung ist das Manöver für das abbiegen zu sehen. Hier wird dargestellt wie das Fahrzeug um eine Kurve fährt.
In der 3 Abbildung ist das Manöver für eine gleichmäßige Lenkbewegung abgebildet, indem ein konstanter Lenkwinkel vorgegeben wird.
Zusammenfassung
Während des Semesters war die Seminararbeit ein lineares Einspurmodell mit Hilfe des V-Modells zu Entwickeln. Das V-Modell untergliedert sich in 9 Punkte. Im ersten Punkt Anforderung wurde verpflichtend festgehalten, wie das Projekt gestaltet und durchgeführt werden soll. Im nächsten Punkt Funktionaler Systementwurf wurde die Anforderungen auf die Funktionen des Einspurmodells abgebildet. Bei dem dritten Punkt Technischer Systementwurf wurde ein grobes Gerüst nach den Anforderungen in der Software erstellt. Bei der Komponentenspezifikation wurden die Ein- und Ausgänge der einzelnen Module bestimmt. Im weiteren Verlauf wurden im fünften Punkt Programmierung/Modellierung die Arbeitsergebnisse der Komponentenspezifikation und des technischen Systementwurfs zusammengeführt. Im Punkt Komponententest wurden alle Komponente einzeln getestet. Beim Integrationstest wurden die Module getestet. Im folgenden Systemtest wurden alle Module zusammen als Modell getestet. Im Abnahmetest sollen bis zum 12.07.2021 die noch vorhanden Fehler verbessert werden.
Im Punkt Anforderungen wurden abgeklärt welche Anforderung im Lastenheft stehen. Der Funktionale Systementwurf wurde von Prof. Dr. Göbel bereitgestellt. Bei dem Technischen Systementwurf wurde nochmal das Gerüst aufgezeigt und erläutert. Die Komponentenspezifikation zeigte die Aufgaben der Modul und Submodule auf. Die Umsetzung verdeutlichte, wie das fertige lineare Einspurmodell aufgebaut ist. Zum Abschluss sehen wir die Ergebnisse für jedes Manöver.
Arbeitsergebnisse
Die vollständigen Unterlagen, Ergebisse und Zwischenergebnisse zur Durchführung des Projekts befinden sich unter folgendem Link im SVN. Der Gruppenname lautet Gruppe K. In diesem Ordner befinden sich alle Dateien, die erstellt wurden.
Literaturverzeichnis
→ zurück zum Hauptartikel: "Systems Design Engineering" - Seminaraufgabe SoSe 2021: Einspurmodell“