I am attempting to set up a model for a suspension on a mass of 100kg with k=17kN/M and a damping ratio of 0.5. The system is modelled as a simple spring damper system.

2 views (last 30 days)
The model below is attempting to model a base excited spring damper system. I feel like the issue is that the initial sinusoidal model is time dependent whilst it should be dependent on position, however I don't know how to resolve this.
clear
clc
t=0:0.1:15; %time peroid
Y0= input('wave amplitude ') ; %Wave amplitude
l= input('length of wave ') ; %length of the wave
u=input('speed of boat'); %Boat Velocity
w=u/l; %frequency of wave
y=Y0*sin(w*t); %wave height model
Dr=0.5; %Required Damping Ratio
k=17000; %Spring Constant of suspension
m=100;
wn=(k/m)^0.5;
wd=wn*(1-Dr^2)^0.5;
if (wd<6)
error('Suspension excessively soft') %test for suspension softness
end
r=w/wn; %Frequency ratio
b=2*Dr*(k*m)^(0.5); %Damping coefficient
i=(1-r^2)^2+(2*Dr*r)^2;
X0=(r^2)*Y0/(i^0.5); %Maximum amplitude of displacement
T=atan((2*Dr*r)/(1-r^2)); %Phase Lag
x=X0*sin(w*t-T); %Displacement of sprung mass
x1=X0*w*cos(w*t-T);
x2=-X0*w^2*sin(w*t-T);
plot(t,x);
X1mean=mad(x1);
Xmax=max(x);
X1max=max(x1);
This code outputs values, however they aren't what I would expect to see. I am looking to get the amplitude of excitement as well as a velocity profile.

Answers (0)

Categories

Find more on Programming in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!