当前位置: 首页 > news >正文

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

1/4被动悬架
在这里插入图片描述代码:

%书第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)-1q(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)-1x(:,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('轮胎动载荷波德图')

运行结果:
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/370510.html

相关文章:

  • 【C++】——继承(详解)
  • openGauss学习笔记-299 openGauss AI特性-AI4DB数据库自治运维-DBMind的AI子功能-SQLdiag慢SQL发现
  • Git 分支管理规范化[Git Flow ]分支管理策略
  • 一键Mock工具(Http协议接口调试工具)
  • Golang的context
  • Android 各个版本名称和特性总结(持续更新)
  • 9.0 Android中的网络技术
  • linux查看端口是否被占用 / 包含某个字符的文件/当前正在运行的进程/根据端口号查找进程
  • 解锁 JavaScript ES6:函数与对象的高级扩展功能
  • 算法金 | 10 大必知的自动化机器学习库(Python)
  • 微信小游戏开发难度大吗?开发流程有哪些?
  • Qt程序打包成单个exe文件
  • 【机器学习】GANs网络在图像和视频技术中的应用前景
  • MFC 使用sapi文字转换为语音
  • (Git)多人协作1
  • MySQL-分组函数
  • 【C语言】联合(共用体)
  • 【博客715】如何从victorimametrics集群中下线vmstorage节点
  • Redis缓存技术详解与实战
  • 业务架构的位置及关系
  • CMS与AI的融合:构建万能表单小程序系统
  • 机器学习常见知识点 2:决策树
  • 海洋CMS admin_notify.php 远程代码执行漏洞复现(CVE-2024-30565)
  • Spring、Spring MVC、MyBatis和Spring Boot对比
  • 【Linux高级IO】select、poll、epoll
  • Etcd Raft架构设计和源码剖析2:数据流
  • 深入理解Qt多线程编程(QThreadPool)
  • Prisma数据库ORM框架学习
  • Flutter-使用MethodChannel 实现与iOS交互
  • 【星海随笔】云解决方案学习日志篇(一) ELK,kibana,Logstash安装