图片缩略图

动画的四分之一车汽车悬架

version 1.0.0.1 (90.7 KB) by 詹姆斯·埃里森
一个标准的线性四分之一车模型被模拟,然后动画。
4.6
15评级

55下载

更新2019年3月14日

视图版本历史

查看许可协议

该模型是为研究生工程课程的教学建模、仿真和优化而开发的。该仿真对于演示针对不同应用程序(例如,最大处理能力,最大舒适度等)进行优化的不同仿真设计特别有用。该模型基于本文的电动汽车案例研究:

http://deepblue.lib.umich.edu/handle/2027.42/58449

这个代码被用于制作这个相应的视频,用于教学:

https://youtu.be/okiScBW7exQ

注:此提交不包括youtube视频中突出显示的多目标优化代码。

引用作为

詹姆斯·艾利森(2021)。动画的四分之一车汽车悬架(//www.tatmou.com/matlabcentral/fileexchange/35478-animation-of-a-quarter-car-automotive-suspension), MATLAB中央文件交换。检索

意见及评分(39

Divyanshu耆那教徒的

Lucas Kffuri da Rocha

Allison先生
我有两个疑问
z1和z2向量的单位是什么?在代码中写为cm,但我想确定它

你知道我怎样才能得到簧下质量的加速度吗?

谢谢你!

CHINTADA钱德拉塞卡

亲爱的先生
当我运行这个代码时,我得到一些错误。错误显示为“未定义函数或变量'road_x'。”

CHINTADA钱德拉塞卡

先生
我能得到四分之一卡车模型的Matlab代码吗?我应该用在我的项目上。请尽快回复

詹姆斯·埃里森

我在一些课程中使用这个例子作为作业,所以我没有公开代码的优化部分。如果你想看一个简单的多目标优化的例子,我推荐:

//www.tatmou.com/matlabcentral/fileexchange/64787-demonstration-of-two-multi-objective-optimization-strategies

关于悬架设计优化的更详细处理,请参考:

//www.tatmou.com/matlabcentral/fileexchange/40504-co-design-of-an-active-automotive-suspension-using-dt

以下HCS设计优化示例中的代码可能有助于学习如何使用fmincon进行设计优化问题:

//www.tatmou.com/matlabcentral/fileexchange/64651-design-optimization-of-a-helical-compression-spring?s_tid=prof_contriblnk

SANDEEP库马尔

先生,
谢谢你的回复。
我还有一个疑问。
从哪里我可以得到优化文件(opt_qcar.m)显示在你的视频
谢谢

詹姆斯·埃里森

我检查了来自MLC FX的zip文件,它确实包含有数据的mat文件。我怀疑当你试图下载或打开这个mat文件时,某些东西正在过滤掉它。

我也会更新YouTube链接。

SANDEEP库马尔

先生,
你好,先生,James Allison先生,
我也面临着同样的问题,在这个项目中似乎缺少了一些东西,
错误使用负载
无法读取文件IRI_737b:没有这样的文件或目录。

Untitled5错误(第43行)
加载IRI_737b %道路轮廓数据

先生,请您详细地帮我一下。

迈克•杜克

换新鲜的

阿卡什Pimpalkar

同业拆借Kicsid

我有和ben和BS CE一样的问题。错误码为:
???错误:文件:plotsusp。m行:42列:3
表达式或语句不正确——可能不平衡(,{,或[。

错误在==> sim_qcar在79
plotsusp ([z0(我),z1 (i) * zmf, z2 (i) * zmf, t (i)], road_x, road_z, x (i), umf);

有办法解决这个问题吗?

谢谢你!

卢卡斯阿尔梅达

z1和z2矢量(悬挂行程)的单位是什么?根据代码,单位是厘米。

詹姆斯·埃里森

Sankar:只要单位、空间分辨率和变量名相同,你可以用生成的.mat文件替换道路轮廓数据。

詹姆斯·埃里森

卢卡斯:如果我没记错的话,单位是米。该轮廓是使用滤波噪声生成的,如第8.3.3节所述:http://systemdesign.illinois.edu/publications/All08b.pdf

卢卡斯Cavalcante

路面剖面的单位是什么?你是用什么方法得到的剖面图?谢谢你!

BS CE

艾利森先生,我在运行视频....中的函数时发现如下

???错误:文件:plotsusp。m行:42列:3
表达式或语句不正确——可能不平衡(,{,或[。

错误在==> sim_qcar在79
plotsusp ([z0(我),z1 (i) * zmf, z2 (i) * zmf, t (i)], road_x, road_z, x (i), umf);

Sankar Narayanan

嗨. .有没有办法改变道路轮廓数据…

亨利这款

詹姆斯·埃里森

Amritam:

首先,我想让你看看下面的期刊论文:
http://systemdesign.illinois.edu/publications/All14b.pdf

然后是我的论文:
http://systemdesign.illinois.edu/publications/All08b.pdf
(电动汽车设计章节)

两者都讨论了这些指标。如果我没记错的话,我的论文至少引用了一个参考文献,将我在这些模型中使用的简单指标与更复杂的指标(例如,基于频率的约束)进行了比较。参考文献然后得出结论,加速度度规的简单积分是非常准确的,即使它不是很复杂。应该有其他的引用同时涉及拨浪鼓空间和处理。

关于多目标优化,我建议写一篇综述文章:

http://link.springer.com/article/10.1007%2Fs00158-003-0368-6

AMRITAM DAS

嗨,Prof.James埃里森。您提到过无法上传优化代码。但你能不能至少提供一份文件或幻灯片来解释定义最大操纵能力,最大舒适度和设计多目标优化问题背后的理论。我正在写一篇类似的论文。我相信它会有很大的帮助。

詹姆斯·埃里森

谢谢Patrick为MATLAB的更新版本指出了一个修正。

帕特里克明亮

在R2015b上工作,如果你改变'refresh'到'drawnow'

詹姆斯·埃里森

我没有在最新版本的MATLAB上测试过这段代码。这个动画在R2011b上运行得很好,但是也许这个动画在MATLAB的最新版本中不再起作用。

哈利

我只能看到情节和悬挂的图片。我看不到运动视觉

长虹王

詹姆斯·埃里森

IRI_737b是一个包含在这个提交中的.mat文件。您需要确保它在您的路径上才能运行此代码。

NAVEEN库马尔

你好,先生,James Allison先生,
这个项目似乎缺少了什么,
错误使用负载
无法读取文件IRI_737b:没有这样的文件或目录。

Untitled5错误(第43行)
加载IRI_737b %道路轮廓数据

先生,你能帮我吗?

你好,詹姆斯·艾利森先生

这部分的节目似乎缺少了一些东西,[~,....

[~, istart] = min (abs (xstart-road_x));
Xend = curr_x + fw;
[~, iend] = min (abs (xend-road_x));
xpstart = xstart-curr_x;

你能帮忙吗?因为我不能运行它…它给出了这个错误

???错误:文件:plotsusp。m行:42列:3
表达式或语句不正确——可能不平衡(,{,或[。

詹姆斯·埃里森

感谢您对优化代码的关注。我决定不分发它,因为我在我教的优化课上使用它。你可能会对这篇文章感兴趣:

//www.tatmou.com/matlabcentral/fileexchange/40504

它包含优化代码,但是是一个更复杂的示例。

回答你的另一个问题,f1是qcar(模拟)和fmincon之间的接口函数。

詹姆斯·埃里森

感谢您对优化代码. ...的*兴趣

萨曼abdanan

嗨,詹姆斯
能否添加(opt_qcar)或者发送给我(saman.abdanan@gmail.com)我在youtube上看了你的模拟优化。你能解释一下你的m文件第17行中f1是什么吗?

詹姆斯·埃里森

Alexandru:也许在你的路径上有另一个函数“ss”,它取代了内置的ss函数:

//www.tatmou.com/help/control/ref/ss.html

您可以使用'which'命令来查明这是否是问题所在。

另一种可能性是ss是控制系统工具箱的一部分。如果你没有那个工具箱,ss就不能工作。

Alexandru

你好,

我对你的app很感兴趣,但是我在运行的时候遇到了问题。我得到这个错误:
未定义函数'ss'用于输入类型'double'的参数。

sim_qcar错误(第48行)
qcar = ss (Aqcar Bqcar、Cqcar Dqcar);

我错过了什么?
谢谢你!
亚历克斯

詹姆斯·埃里森

Umf是一个倍增因子,允许快速探索不同粗糙程度的道路轮廓。它应该设置为1,以便输出对应于.mat文件中的道路轮廓。

好赶上路易。是的,在第62行,dt应该改为dt2。

路易

非常有用的模型,我有两个评论:
1.我认为umf应该设置为1(或删除)
2.在第62行,对dt的除法应该改成对dt2的除法

这两个细节使得脚本输出的结果不准确;否则脚本会给出一致的结果。

很好的演示

Mayur

詹姆斯,

谢谢这个模型。我正在努力理解umf = 3是什么,以及为什么你要使用它。你能解释一下吗?

谢谢,
Mayur

Olexander Zhytenko

很好! !

MATLAB版本兼容性
创建R2011b
与任何版本兼容
平台的兼容性
窗户 macOS Linux

社区寻宝

在MATLAB中心找到宝藏,并发现社区可以如何帮助您!

开始狩猎!