【悬架笔记三】1/4被动悬架垂向动力学仿真+频域特性分析

1/4被动悬架
代码:

matlab 复制代码
%书第156页、159页
clc
clear
close all
%% 一.悬架参数
ms=320;
mw=50;
Ks=22000;
Cs=1500;
Kw=195000; 
f0=0.07;
%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% 二.垂向振动动力学仿真
%% 二.1.状态方程
A= [0 1 0 -1;...
    -Ks/ms -Cs/ms 0 Cs/ms;...
    0 0 0 -1;
    Ks/mw Cs/mw Kw/mw -Cs/mw]; 
B= [0 0 1 0]';
C=[-Ks/ms -Cs/ms 0 Cs/ms;...
    1 0 0 0;...
    0 0 Kw 0]; 
%% 二.2.道路参数
dt=0.01;%仿真间隔时间
t_end=10;%仿真总时长
t=0:dt:t_end;
u=60;%车速,km/h
u=u/3.6;%车速转化为m/s
Sq=16*10^-6;%路面不平度系数
white_noise=1-2*1* rand(1,length(t)-1); 
for i=1:length(t)-1
    q(1)=0; 
    q(i+1)=dt*(-2*pi* f0* q(i)+2*pi*(sqrt(Sq*u))*white_noise(i))+q(i); 
    dq=diff(q)/dt;
end
%% 二.3.仿真
for i=1:length(t)-1
    x(:,1)=[0;0;0;0];
    [G,H]=c2d(A,B,dt);
    x(:,i+1)=G*x(:,i)+H*dq(i);
    y(:,i)=C*x(:,i);
end
%% 二.4.绘图
t1=dt:dt:t_end;

figure(1)
plot(t,q)
xlabel('时间/s')
ylabel('路面位移/m')

figure(2)
plot(t1,y(1,:))
xlabel('时间/s')
ylabel('车身垂直加速度/(m/s^2)')

figure(3)
plot(t1,y(2,:))
xlabel('时间/s')
ylabel('悬架动挠度/m')

figure(4)
plot(t1,y(3,:))
xlabel('时间/s')
ylabel('轮胎动载苟/N')

%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% 三.频域特性曲线
%% 三.1.传递函数参数设置
b3=Ks * Cs;
b2=Kw * Ks;
b1=0;
b0=0;
a4=ms*mw; 
a3=(ms+mw)*Cs; 
a2=ms*Ks+ms*Kw+mw*Ks;
a1=Cs*Kw;
a0=Kw*Ks;
w=[0,logspace(-2,2,200)];
H1=tf([b3,b2,b1,b0], [a4,a3,a2,a1,a0]);
%% 三.2.频域特性绘图
figure(101)
bode(H1,w)
title('车身加速度波德图')

figure(102)
c2=-mw * Kw;
c1=0;
c0=0;
H2=tf([c2,c1,c0], [a4,a3,a2,a1,a0]);
bode(H2,w)
title('悬架动挠度波德图')

figure(103)
d4=ms * mw * Kw;
d3=(ms+mw) * Cs * Kw;
d2=(ms+mw) * Ks * Kw;
d1=0;
d0=0;
H3=tf([d4, d3, d2, d1,d0], [a4, a3,a2,a1, a0]); 
bode(H3,w)
title('轮胎动载荷波德图')

运行结果:


相关推荐
ljt27249606611 小时前
Compose笔记(二十六)--DatePicker
笔记·android jetpack
早日退休!!!2 小时前
性能优化笔记
笔记·性能优化
love530love2 小时前
【PyCharm必会基础】正确移除解释器及虚拟环境(以 Poetry 为例 )
开发语言·ide·windows·笔记·python·pycharm
普宁彭于晏3 小时前
元素水平垂直居中的方法
前端·css·笔记·css3
m0_637146934 小时前
计算机网络基础总结:TCP/IP 模型、TCP vs UDP、DNS 查询过程
笔记·tcp/ip·计算机网络
Lester_11014 小时前
嵌入式学习笔记 - freeRTOS vTaskPlaceOnEventList()函数解析
笔记·学习
moxiaoran57536 小时前
uni-app学习笔记二十三--交互反馈showToast用法
笔记·学习·uni-app
scdifsn13 小时前
动手学深度学习12.7. 参数服务器-笔记&练习(PyTorch)
pytorch·笔记·深度学习·分布式计算·数据并行·参数服务器
jackson凌15 小时前
【Java学习笔记】SringBuffer类(重点)
java·笔记·学习
huangyuchi.16 小时前
【Linux】LInux下第一个程序:进度条
linux·运维·服务器·笔记·进度条·c/c++