史上最全的四分之一、半车再到全车7自由度常规悬架建模与仿真之一

一、悬架建模的简化过程

汽车是一个复杂的振动系统,针对不同的需求进行不同的简化。在对悬架振动分析中,把汽车车身看做一个刚体,把驾驶员座椅和驾驶员拿掉;车身以下至车轮之间的橡胶垫,连接杆,弹簧等具有弹性和阻尼的元件,只保留弹簧和减振器;在车轮部分,由于车轮刚度跟车轮阻尼不是一个数量级的,所以忽略轮胎阻尼。这样下来,在我们平顺性分析中,汽车第一步就简化成了如下图所示:

在这个模型中,四个轮和车身各自有上下垂跳的自由度,车身还具有俯仰(绕y轴转动),侧倾(绕x轴转动)两个方向的旋转自由度,总共是5+2=7个自由度,也就是7自由度模型。

再进一步,假设左右轮的相关性很高,即左右轮输入基本一致,就可以忽略左右两边的相对运动,如下图所示:

在这个模型中,假设车辆总质量不变,车身前后俯仰的转动惯量Iy不变,系统简化成了只有前后轴和车身的跳动,车身俯仰,共4个自由度的模型。

在半车模型中,质量分为mf,mr和mc三个部分,即前轴质量,后轴质量和质心质量,每个部分分多少,与悬挂质量分配系数有关系。当悬挂质量分配系数为1时(大部分车接近于1),则中间的质量mc为0,此时,就可以把前后轴认为是各自独立运动的,这样又可以再进一步简化了,这便是我们最最常见的四分之一车悬架模型,它只有车轮和车身垂跳的自由度,叫二自由度模型。

下面,整合之前文章,我们更系统的梳理一下常规(没加控制)二、四、七自由度模型的建模与仿真。

二、 四分之一悬架建模与仿真

1、建立运动微分方程

 z0是路面输入,z1和z2分别是车轮,车身位移,mw和mb分别为车轮,车身质量,Kt和Ks分别为轮胎和弹簧刚度,Cs为减振器阻尼。

根据牛顿第二定律,对于车轮:

m_{w}\ddot{z}_{1}=K_{t}(z_{0}-z_{1})-K_{s}(z_{1}-z_{2})-C_{s}(\dot{z}_{1}-\dot{z}_{2})

根据牛顿第二定律,对于车身: 

m_{b}\ddot{z}_{2}=K_{s}(z_{1}-z_{2})+C_{s}(\dot{z}_{1}-\dot{z}_{2})  

 车辆配置参数如下:

mb=317.5; % 簧载质量 kg
mw=45.4; % 非簧载质量 kg
Ks=22000; % 悬架弹簧刚度 N/m
Kt=192000; % 轮胎刚度 N/m
Cs=[800,1200,1500,1800,2100]; % 减振器阻尼系数,设置4组,可以对比kN.s/m

2、建立simulink仿真模型

3、仿真分析 

四分之一车模型被各种应用在半主动悬架算法的分析上,研究不同阻尼配置下车身,悬架行程,车轮动载对路面输入的响应,及它们三自身的频率分布很有意义,能够指导算法开发。

 从上图可以看出,对于车身共振点,阻尼越大越好;对于车轮共振点,更改阻尼也无济于事;在车身与车轮共振点之间及车轮共振点之后,则是越小阻尼滤振效果越好,常规减振器单一阻尼无法兼顾,这也就是研究cdc半主动悬架的目标所在。

 悬架行程。对比可发现,在车轮共振点附近,施加大阻尼可以提高性能。

 轮胎动载,可以发现趋势与车身的相反。动载与车轮附着相关,车身垂向加速度与舒适性相关,这也体现另一个矛盾,驾驶性能与舒适性之间的矛盾。

另外传递曲线,教科书上普遍做法是由微分方程得到传递函数,再直接绘制传递函数的传递曲线,这样的曲线很光滑,写论文好看。

从更真实的角度出发,我们这里从系统仿真的结果来估算传递曲线。matlab中tfestimate函数可以帮我我们实现这个功能。

 三、二分之一悬架建模与仿真

1、建立运动微分方程

 推导过程可参考喻凡的汽车系统动力学

 车辆参数如下:

2、建立仿真模型

同样是随机路面输入,通过模型仿真得到结果。

 3、仿真分析 

 与前轴和后轴垂向加速度相比,车的质心垂向加速度出现多个波谷和波峰,这是由于路面输入与轴距关系引起的,叫轴距滤波。

悬架行程。

 

 俯仰角,只有一个共振点。

四、全车悬架建模与仿真

1、建立微分方程

参考喻凡 车辆系统动力学

2、建立仿真模型

 

3、仿真分析

随机路面上轴距滤波效果非常明显。

 与半车相比,俯仰角频率多了小共振峰,主要与左右路面差异有关系。

 侧倾角。

五、关于模型与脚本

还是在某宝店铺<极简车辆控制>,运行m脚本一键出图,有需要的同学欢迎下单。

后台咨询的朋友很多,没有一一回复的还请见谅。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/562229.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【已解决】电脑设置notepad++默认打开txt

1、以管理员的方式打开notepad 步骤&#xff1a;打开设置 -> 首选项 -> 文件关联 2、 设置Notepad默认打开 按照以下步骤将Notepad设置为默认打开.txt文件&#xff1a; 右键单击任何一个.txt文件。选择“属性”。在“常规”选项卡中&#xff0c;找到“打开方式”&#…

5.Eureka原理分析

消费者如何获取服务提供者具体信息&#xff1f; 1.服务提供者启动时向Eureka注册自己的信息。 2.Eureka保存这些信息。 3.消费者根据服务名称向Eureka拉取提供者信息。 如果有多个服务的提供者&#xff0c;消费者该如何选择&#xff1f; 1.服务消费者利用负载均衡算法&…

css-Echarts图表初始显示异常非完全显示

1.echarts图表初始加载异常 2.问题原因 初次加载时&#xff0c;由于外层使用%比 echarts dom元素没有完全加载完成&#xff0c;canvas绘画继承本身宽高&#xff0c;造成Echarts图表初始显示异常非完全显示。 3.使用echarts图表可参考以下代码&#xff08;实现一定的自适应&am…

ccfcsp201312-2 ISBN号码

注意&#xff1a;50分 -- u10&#xff0c;最后一位为X 代码&#xff1a; #include <bits/stdc.h> using namespace std; string s; int a[12]; int main() {cin >> s;a[1] s[0] - 0;a[2] s[2] - 0;a[3] s[3] - 0;a[4] s[4] - 0;a[5] s[6] - 0;a[6] s[7] - …

英特尔直面AMD强势出击,新Xeon CPU 3D堆叠 288核

英特尔的新Xeon CPU直面AMD&#xff1a;3D堆叠 288核&#xff01; 英特尔加速其“四年五个节点”战略&#xff0c;计划在 2025 年推出搭载 3D 堆叠技术的 Clearwater Forest Xeon 数据中心 CPU。采用新的封装技术&#xff0c;该芯片将采用 tile-based CPU 设计&#xff0c;旨在…

Jackson 2.x 系列【29】Spring Boot 集成之 Redis 序列化/反序列化

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 本系列Jackson 版本 2.17.0 本系列Spring Boot 版本 3.2.4 源码地址&#xff1a;https://gitee.com/pearl-organization/study-jaskson-demo 文章目录 1. 前言2. RedisTemplate3. RedisSerializer3.1 J…

Window中Jenkins部署asp/net core web主要配置

代码如下 D: cd D:\tempjenkins\src\ --git工作目录 dotnet restore -s "https://nuget.cdn.azure.cn/v3/index.json" --nuget dotnet build dotnet publish -c release -o %publishPath% --发布路径

LeetCode - 面试题 08.06. 汉诺塔问题

目录 题目链接 解题思路 解题代码 题目链接 LeetCode - 面试题 08.06. 汉诺塔问题 解题思路 假设 n 1,只有一个盘子&#xff0c;很简单&#xff0c;直接把它从 A 中拿出来&#xff0c;移到 C 上&#xff1b; 如果 n 2 呢&#xff1f;这时候我们就要借助 B 了&#xff0c;因…

【BUG】Hexo|GET _MG_0001.JPG 404 (Not Found),hexo博客搭建过程图片路径正确却找不到图片

我的问题 我查了好多资料&#xff0c;结果原因是图片名称开头是_则该文件会被忽略。。。我注意到网上并没有提到这个问题&#xff0c;遂补了一下这篇博客并且汇总了我找到的所有解决办法。 具体检查方式&#xff1a; hexo生成一下静态资源&#xff1a; hexo g会发现这张图片…

Linux安装Docker完整教程及配置阿里云镜像源

官网文档地址 安装方法 1、查看服务器内核版本 Docker要求CentOS系统的内核版本高于3.10 uname -r #通过 uname -r 命令查看你当前的内核版本2、首先卸载已安装的Docker&#xff08;如果有&#xff09; 2.1 确保yum包更新到最新 yum update2.2 清除原有的docker&#xff0c…

【Linux开发 第七篇】权限

权限 Linux组权限修改权限 Linux组 在linux中的每个用户必须属于一个组&#xff0c;不能独立于组外 文件/目录 所有者 一般为文件的创建者&#xff0c;谁创建了该文件&#xff0c;就自然的成为了该文件的所有者 这一列即为文件的所有者 修改文件的所有者&#xff1a; chown…

从C到JAVA之学习JAVA的第一周笔记

文章目录 java语言概述JDK与JRE编写执行过程第一份java代码解读编写编译运行其他 注释三种注释方法 java API文档关键字标识符数据类型基本数据类型自动类型提升规则引用数据类型 string概述String与基本数据类型的变量间的运算 运算符键盘录入运行控制语句数组定义与静态初始化…

深度学习500问——Chapter08:目标检测(2)

文章目录 8.2.4 R-FCN 8.2.5 FPN 8.2.6 Mask R-CNN 8.2.4 R-FCN R-FCN 有哪些创新点 R-FCN仍然属于two-stage目标检测算法&#xff1a;RPN R-FCN Fully convolutional位置敏感得分图&#xff08;position-sentive score maps&#xff09; our region-based detector is ful…

【嵌入式】嵌入式开发中常见的面试题(持续更新中)

&#x1f9d1; 作者简介&#xff1a;阿里巴巴嵌入式技术专家&#xff0c;深耕嵌入式人工智能领域&#xff0c;具备多年的嵌入式硬件产品研发管理经验。 &#x1f4d2; 博客介绍&#xff1a;分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向的学习指导…

Spring Boot中接收各种各样的参数

一、接收json参数&#xff0c;封装为Map 1.1、核心代码 /*** 接收json参数&#xff0c;封装为Map* param servletRequest* return* throws Exception*/ PostMapping("/getParam") public R getParam(HttpServletRequest servletRequest) throws Exception {Map<…

Linux 认识与学习Bash——2

1 read 从键盘读取变量的值 read 后面不带变量&#xff0c;那么默认会给REPLY变量赋值 #!/bin/bash echo -n "请输入你的名字&#xff1a;" read name echo "欢迎您 $name" echo "----------------"echo -n "请输入你的名字2&#xff1a;&q…

VR全景:为户外游玩体验插上科技翅膀

随着VR全景技术的愈发成熟&#xff0c;无数人感到惊艳&#xff0c;也让各行各业看到了一片光明的发展前景。尤其是越来越多的文旅景区开始引入VR全景技术&#xff0c;相较于以往的静态风景图&#xff0c;显然现在的VR全景结合了动态图像和声音更加吸引人。 VR全景技术正在逐步改…

肿瘤相关成纤维细胞分型及单细胞深入研究(文献)

目录 ①六种癌症类型共有的CAF亚型&#xff08;pan-CAFs&#xff09; 1&#xff0c;六种泛CAF亚型的鉴定和分子表征 2&#xff0c;Pan-CAF亚型特异性转录因子和基因调控网络 3&#xff0c;预后分析 4&#xff0c;Pan-CAF亚型与肿瘤中特定分子功能的关联 ②泛癌单细胞转录…

【论文精读】Bag of Tricks for Image Classification with Convolutional Neural Networks

这篇文章比较早了&#xff0c;2018年的 摘要 最近在图像分类研究方面取得的大部分进展可以归功于训练程序的改进&#xff0c;如数据增强和优化方法的改变。然而&#xff0c;在文献中&#xff0c;大多数改进要么作为实现细节简要提到&#xff0c;要么只在源代码中可见。在本文中…

kafka实验部署

一、前期准备 二、kafka实验 在zookeeper后继续进行操作 2.1 为ndoe1、node2、node3作出部署 2.1.1 解压kafka压缩包&#xff08;node1举例&#xff09; 2.1.2 操作 将解压后的kafka移动到kafka&#xff0c;进入到kafka下的config中&#xff0c;复制文件 2.1.2.1 编辑server.pr…