Matlab - Zweimassenschwinger

Hallo zusammen,

ich möchte derzeit einen Zweimassenschwinger in Matlab lösen. Hierfür funktioniert auch die Grundfunktion und die Ausgabe der Stepfunktion.

Jedoch möchte ich jetzt eine Anregung in Form einer Unebenheit in der Straße an die Übertragungsfunktion legen. Jetzt habe ich jedoch keine Funktion gefunden mit der dies Möglich ist aber es funktioniert definitiv ich weis nur gerade leider nicht wie...
Meine Weganregung wäre die Funktion: -60*(2*t-1)^2+60 im Bereich t von 0 bis 1 Sekunde. (Dies soll eine Hinderniss im Straßenverlauf darstellen.)

Ich würde dieses Ergebniss nämlich gerne den Weg mit einer FEM Analyse vergleichen. Ansich ist ja die Stepfunktion auch eine Aussage über den Weg das man ja sagen könnte, dass bei max. 1,6 Amplitude der maximale Weg 1,6 mal Höher sein wird als die Anregung oder?

Anbei befindet sich der Code und eine kleine Systemskizze


Code:
 mA = 350; % kg - Aufbaumasse Fahrzeug
 kA = 2500; % Ns/m - Daempfungskonstante Stossdaempfer
 cA = 34000; % N/m - Federkonstante Federn
 mR = 30; % kg - ungefederte Masse
 kR = 0; % Ns/m - Daempfungskonstante Reifen
 cR = 120000; % N/m - Federkonstante Reifen
 
 % Termberechnung
 T1 = mA*kR;
 T2 = kA*kR + mA*cR;
 T3 = cA*kR + kA*cR;
 T4 = cA*cR;
 T5 = mA*mR;
 T6 = mA*kA + mA*kR + kA*mR;
 T7 = mA*cR + cA*mR + mA*cA + kA*kR;
 T8 = cA*kR + kA*cR;
 T9 = cA*cR;
 T10 = kA*kR;
 
 % Laplace Variable s definieren
 s = tf([1 0],1)
 
 % Übertragungsfunktionen definieren
 % Straße - Rad
 GSR = tf((T1*s^3 + T2*s^2 + T3*s + T4) / (T5*s^4 + T6*s^3 + T7*s^2 + T8*s + T9));
 
 % Straße - Aufbau
 GSA = tf((T10*s^2 + T3*s + T9) / (T5*s^4 + T6*s^3 + T7*s^2 + T8*s + T9));
 
 fA = sqrt(cA/mA)/(2*3.1416)
 fR = sqrt((cR+cA)/mR)/(2*3.1416)
 

 % Zeitvektor für die Sprungantwort
 t=[0:0.01:4];
 
 % Anregung = -60*(2*t-1)^2+60
 
 % Simulation: Sprungantwort ('step'), Impulsantwort ('impulse')
 zRad=step(GSR,[0:0.001:6])
 zAuf=step(GSA,[0:0.001:6])
 % zAufb=csim('Anregung',t,GSA);
 
 % Plotten
 figure(3)
 step(GSA,[0:0.001:6])
 
 figure(4)
 step(GSR,[0:0.001:6])
 

Anhänge

  • Screenshot 2022-05-02 215016.png
    Screenshot 2022-05-02 215016.png
    13,6 KB · Aufrufe: 2
Was ist denn in deinem Beispiel der Unterschied zwischen einer Unebenheit und einem Hindernis auf der Fahrbahn?
 
Mittlerweile weis ich welche Funktion verwendet werden kann. Jedoch schaffe ich es nicht das Signal welches in Ansys verwendet wird als Eingangssignal zu verwenden. Anbei der neue Code mit Fehlermeldung:

"Error using DynamicSystem/lsim (line 97)
When simulating the response to a specific input signal, the input data U must be a matrix with as many rows as samples in the time vector T, and as many columns as input
channels."

Code:
mA = 350; % kg - Aufbaumasse Fahrzeug
kA = 2500; % Ns/m - Daempfungskonstante Stossdaempfer
cA = 34000; % N/m - Federkonstante Federn
mR = 30; % kg - ungefederte Masse
kR = 0; % Ns/m - Daempfungskonstante Reifen
cR = 120000; % N/m - Federkonstante Reifen

% Termberechnung
T1 = mA*kR;
T2 = kA*kR + mA*cR;
T3 = cA*kR + kA*cR;
T4 = cA*cR;
T5 = mA*mR;
T6 = mA*kA + mA*kR + kA*mR;
T7 = mA*cR + cA*mR + mA*cA + kA*kR;
T8 = cA*kR + kA*cR;
T9 = cA*cR;
T10 = kA*kR;

% Laplace Variable s definieren
s = tf([1 0],1)

% Übertragungsfunktionen definieren
% Straße - Rad
GSR = tf((T1*s^3 + T2*s^2 + T3*s + T4) / (T5*s^4 + T6*s^3 + T7*s^2 + T8*s + T9));

% Straße - Aufbau
GSA = tf((T10*s^2 + T3*s + T9) / (T5*s^4 + T6*s^3 + T7*s^2 + T8*s + T9));

fA = sqrt(cA/mA)/(2*3.1416)
fR = sqrt((cR+cA)/mR)/(2*3.1416)


%u = -60*(2*t-1)^2 + 60



figure(1)
fplot(@(x) 60*sin(3*x),[0,1])

t = [0:0.01:1];
u = 60*sin(3*t)




% Simulation: Sprungantwort ('step'), Impulsantwort ('impulse')
zRad=step(GSR,[0:0.001:6])
zAuf=step(GSA,[0:0.001:6])
% zAufb=csim('Anregung',t,GSA);

% Plotten
figure(3)
step(GSA,[0:0.001:6])

figure(5)
lsim(GSA, u,[0:0.001:1])
 

Jobs

Jobmail abonieren - keine Jobs mehr verpassen:

Top