Mathematik Labor Projekt Viertelfahrzeug 1 Lernziele Die Studierenden lernen • Grafikbefehle anzuwenden • Schaubilder von Funktionen und parametrisierten Kurven zu erstellen • Funktionen zu programmieren • Kontrollstrukturen zu programmieren • Globale Variablen zu verwenden • Numerische Näherungslösungen mit dem Euler-Verfahren zu berechnen 2 Aufgabenstellung Das Schwingungsverhalten eines Feder-Dämpfer-Systems soll simuliert werden. 3 Vorgehensweise Die Vorgehensweise kann in den folgenden Schritten erfolgen: 1. Funktion für Fahrbahnprofil 2. Funktion für Viertelfahrzeug 3. Funktion für Differenzialgleichung 4. Skript für Simulation Prof. Dr. Jürgen Koch 1 25. November 2015 Mathematik Labor Projekt Viertelfahrzeug 3.1 Funktion für Fahrbahnprofil Das Fahrbahnprofil soll mithilfe einer Funktion realisiert werden. Der Wert der Funktion f (x) gibt die Höhe des Fahrbahnprofils an der Stelle x an. Wie abgebildet startet die Fahrbahn mit der Höhe f (0) = 0. Zwischen x = 2 und x = 3 verliert die Fahrbahn linear an Höhe und wird auf den Wert f (3) = −0.5 abgesenkt. Insgesamt soll eine Fahrt von x = 0 bis zu x = 10 simuliert werden. Für die Simulation werden später nicht nur die Funktionswerte f (x), sondern auch die Werte der Ableitung der Funktion f 0 (x) benötigt. Deshalb soll eine Funktion mit einem Eingabeargument x und zwei Ausgabeargumenten f und fp implementiert werden: 2 3 4 5 6 7 8 9 f u n c t i o n [ f , fp ] = quarter_car_road ( x ) // // i n p u t : // x . . . v e c t o r w i t h x v a l u e s // // o u t p u t : // f . . . vector with f ( x ) values // f p . . . v e c t o r w i t h f ’ ( x ) v a l u e s scilab/quarter_car_road.sci Die Funktion soll als Eingabeargument nicht nur einen einzelnen x-Wert sondern auch einen Vektor mit vielen x-Werten verarbeiten können. Die Ausgabe besteht dann aus zwei Vektoren f und fp, die zu jedem x-Wert die entsprechenden Funktionswerte und die Werte der Ableitung enthalten. Testen Sie die Funktion durch: −−> x = l i n s p a c e ( 0 , 1 0 ) ; −−> [ f , f p ] = q u a r t e r _ c a r _ r o a d ( x ) ; 3.2 Funktion für Viertelfahrzeug Die Abbildung zeigt das Modell des Viertelfahrzeugs an der Position x = 0 und f (0) = 0. Im Gleichgewichtszustand befindet sich der Mittelpunkt der Masse im Abstand von y0 = 2 über der Fahrbahn. Mit der Funktion 2 3 4 5 6 7 f u n c t i o n quarter_car_draw ( x , f , y ) // // i n p u t : // x . . . x p o s i t i o n // f . . . y p o s i t i o n o f w h e e l // y . . . y p o s i t i o n o f mass scilab/quarter_car_draw.sci soll das Modell an einer beliebigen Position (x|f ) dargestellt werden. Das dritte Argument y gibt dabei die y-Position der Masse an. Prof. Dr. Jürgen Koch 2 25. November 2015 Mathematik Labor Projekt Viertelfahrzeug 3.3 Funktion für Differenzialgleichung Die vertikale Auslenkung y(t) der Masse m in Abhängigkeit der Zeit t kann mit Hilfe eines vereinfachten Modells durch die Differenzialgleichung mÿ(t) + cD (ẏ(t) − f˙(t)) + cF (y(t) − y0 − f (t)) = 0 berechnet werden. Dabei bezeichnet cD die Dämpfungskonstante, cF die Federkonstante, y0 die Auslenkung im Gleichgewichtszustand und die Funktion f (t) die Höhe der Fahrbahn in Abhängigkeit von der Zeit t. Die Bewegungsgleichung ergibt sich aus einem Gleichgewicht von drei Kräften. Die Federkraft cF (y(t) − y0 − f (t)) ist proportional zur Auslenkung, wobei der Gleichgewichtslage y0 zu berücksichtigen ist. Die Dämpferkraft cD (ẏ(t) − f˙(t)). wirkt proportional zur Geschwindigkeit. Die Trägheitskraft mÿ(t) ist das Produkt aus Masse und Beschleunigung. Formulieren Sie die gewöhnliche Differentialgleichung zweiter Ordnung durch Einführung der Zustandsgrößen z1 (t) und z2 (t) als Differentialgleichungssystem erster Ordnung mit zwei Gleichungen. Erstellen Sie eine Funktion 2 3 4 5 6 7 8 9 f u n c t i o n zp = q u a r t e r _ c a r _ o d e ( t , z ) // // i n p u t : // t . . . t i m e // z = [ z ( 1 ) ; z ( 2 ) ] . . . state vector // // o u t p u t : // zp = [ zp ( 1 ) ; zp ( 2 ) ] . . . state vector derivation scilab/quarter_car_ode.sci die bei der Eingabe einer Zeit t und eines Zustandvektors [z1 ; z2 ] die Ableitung des Zustandvektors [ż1 ; ż2 ] mithilfe der Differenzialgleichung berechnet. 3.4 Skript für Simulation Erstellen Sie ein Skript quarter_car.sce, das die Bewegung des Viertelfahrzegs mit der konstanten Geschwindigkeit v = 4 mit dem Euler-Verfahren z neu = z alt + h · f (talt , z alt ) und einer geeigneten Schrittweite h simuliert. Wählen Sie für die Konstanten die Werte cD = 400 Ns/m, cF = 10 000 N/m, m = 100 kg. Erstellen Sie ein Schaubild der vertikalen Auslenkung der Masse y(x) in Abhängigkeit von der zurückgelegten Strecke x. Prof. Dr. Jürgen Koch 3 25. November 2015 Mathematik Labor Projekt Viertelfahrzeug 4 Scilab-Befehle clear plot figure xfpoly clf global mtlb_axis drawlater mtlb_grid drawnow linspace 5 Zusatzaufgabe Das Lösen der Zusatzaufgabe erfordert fundierte Kenntnisse im Umgang mit Scilab. Die Zusatzaufgabe ist nur für diejenigen gedacht, die aus eigenem Interesse tiefer in die Materie einsteigen wollen! Erstellen Sie eine Animation, die die Fahrt simuliert. Prof. Dr. Jürgen Koch 4 25. November 2015