Find the equations of Motion

7 次查看(过去 30 天)
Nicholas
Nicholas 2024-5-1
回答: Arnav 2024-9-4
For a base excitation single DOF oscillatory system (mass-spring-damper) (like an Earthquake): Period of pi/2 sec; m = 1 kg; Spring coefficient (k) = 100 N/m; Damping Ratio = 0.15; Damper coefficient (c) = 3 N-s/m; Natural Frequency = 10 rad/s.
I want to find the equations of motion and the response given these properties and I need to use MatLab for simualtion. I'm not completely sure how to go about this with the functions, independent variable (t), and maybe ode45 to make this a consistent equation. The Equation of Motion that's for the system is at the bottom of my script. I'm just a little lost and would appreciate some guidance. If plotted, the graph should look like:
Here's my code so far:
% For the response of a damped system under the harmonic motion of the base
k = 100 % N/m
m = 1 % kg
DR = 0.15 % Damping Ratio
wn = (k/m)^(1/2) % rad/s
w = ???
t = % independent ???
Y = % Big Y is Maximum Amplitude of Base Motion Test Bed (Unknown)
c = DR*2*m*wn %N-s/m
alpha = arctan((-c*w)/k)
A = Y*((k^2)+(c*w)^2)^(1/2)
EOM1 = A*sin(w*t-alpha) % External Force
  1 个评论
nick
nick 2024-5-6
Hi Nicholas,
The external force, EOM1, on the system as shared in the code is function of displacement. Is EOM1 the net external force on the system? Are there any intial conditions on the system?

请先登录,再进行评论。

回答(1 个)

Arnav
Arnav 2024-9-4
As per my understanding of the question, you are dealing with a base-excited damped mass system where the base displacement is provided externally.
Assume the base excitation to be y and assume the displacement of the mass relative to the base is u. Then the system can be modelled as the equation:
where m is the mass, c is the appropriate damping constant and k is the spring constant.
We can formulate and solve this equation as:
system_ode = @(t, z) [z(2); (1/m) * (-c * z(2) - k * z(1) - m * yg_ddot_interp(t))];
t_span = [0, 20]; % Time span for the simulation initial_conditions = [0; 0]; % Initial rel distance and speed
[t, z] = ode45(system_ode, t_span, initial_conditions);
Sample Output:
You can try this out with your own parameters. For more information you might want to have a look at the documentation page of ode45: https://www.mathworks.com/help/matlab/ref/ode45.html?searchHighlight=ode45&s_tid=srchtitle_support_results_1_ode45

类别

Help CenterFile Exchange 中查找有关 Statics and Dynamics 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by