本条目包含MATLAB和Simulink赛车休息室视频“车辆建模,第1部分:Simulink”的附带文件。金宝app
[视频链接://www.tatmou.com/videos/matlab-and-金宝appsimulink-racing-lounge-vehicle-modeling-part-1-simulink-1502466996305.html]
该条目还包含伴随Matlab和Simulink Racing Lounge视频“车辆建模,第2部分:动力总成块集”的模型金宝app
[视频链接://www.tatmou.com/videos/matlab-and-金宝appsimulink-racing-lounge-vehicle-modeling-part-2-powertrain-blockset-1502821383453.html]
Simu金宝applink模型展示了如何使用功率损失方法来表示车辆动力学和特定组件。
* A滑翔机模型显示了如何车辆动力学模型以获取有关对于给定的重量和驱动周期的牵引力要求的高级别信息。
*电池电动车(BEV)模型显示如何使用功率损耗方法来表示各个组件,例如电动机。
*还包括燃烧发动机车辆模型以供其他参考。
动力总成模块模型展示了单个模块如何代表组件操作,例如:电池,电机,发动机,变速器,差速器等。这些车型包括滑翔机、纯电动汽车和内燃机汽车。
MathWorks的学生竞赛小组(2021)。Matlab和Simu金宝applink Racing Lounge:车辆建模GitHub (https://github.com/mathworks/vehicle-modeling/releases/tag/v4.1.1)。检索。
嗨Shubham,
传动系模型中的C0,C1,C2系数用于计算传动系传动装置中的损失。在传动系统子系统中,“ConventionalVehicle/Driveline/ drivelinetorquellosses”子系统中有一个注释,概述如下:
TLOSS = C0 + C1 * T_I_N / 200 + C2 *(S-2000)/ 2000
发动机BMEP用于根据发动机转速限制发动机的最大扭矩,类似地,fmep0, fmep1和C2用于计算“ConventionalVehicle/ engine /CalculateEfficiency”子系统中的发动机效率。LHV是燃料的较低热值,用来确定所使用的燃料质量。
对于任何变量,你可以找到使用Simulink的取景器它的用途。金宝app我们的同事盖伊写了一篇博客有关使用它来寻找变量或其他文本https://blogs.mathworks.com/金宝appsimulink/2016/10/31/new-in-r2016b-the-finder/
嗨,我有一个问题,当我试图给出一个倾斜角。输入应该是角度还是弧度?
我尝试过两次,我收到错误。
在时间7.3573467550443947时,模块“Model/Battery/Integrator1”中状态“1”的“导数”不是有限的。模拟将停止。这个解决方案可能存在奇点。如果没有,尝试减少步长(通过减少固定步长或收紧误差公差)。
我该如何解决这个问题?请让我知道。
问候,
嗨,我在研究传统车辆。slx模型,对于MDL结构中的变量很少有疑问。我不知道这些变量是什么,比如;MDL。Drivelinemodel;C0, C1, C2。MDL.EngineModel;什么是BMEPtbl, fmep0, fmep1, C2, LHV。
请务必告诉我这些变量代表什么。
谢谢。
嗨,怕冷,
谢谢你伸出援手。当前模型不使用任何优化方法。但是,使用Simulink设计金宝app优化您可以找到优化车辆参数:https://www.mathwands.com/下载188bet金宝搏products/sl-design-optimization.
对于您的案例,最好的方法是使用优化模型参数来满足设计要求和满足约束的响应优化应用程序。要了解更多信息,请观看此操作方式:https://www.youtube.com/watch?v=b0jNOXZKuj8&list=PLn8PRpmsu08oBSjfGe8WIMN-2_rwWFSgr&index=12&t=4s
嗨,我正在研究纯电动汽车模型,并试图建立我自己的学校项目。有任何文件可用,以便我可以进一步研究这个模型。:)
我想建立一个纯电动汽车模型,优化电机和电池的参数。请问这个模型使用了什么优化算法?是哪一个?
嗨,我全新的全新而且在Matlab中没有经验,我想设计一辆带有LPV扭矩矢量控制器的车轮电机,我怎么走这个?,谢谢。一堂课中的书籍是欢迎
我需要你帮我设计混合动力汽车
我也有问题,在我使用的2017a版本加载这些文件..有可下载的2017a版本的文件可用吗?
你好,艾哈迈德,
如果您可以创建ECE 15周期数据的变量,您可以使用“信号构建器”块来创建一个驱动周期。
1.删除“输入”模块从BEV Simulink窗口。金宝app
2.单击模型中的任何白色位置,然后键入“信号构建器”单词以创建信号构建器块。
3.连接从“Signal Builder”块到“Driver”子函数块的箭头。
4.双击“信号生成器”模块打开“信号生成器”窗口。
5.单击窗口左上角的“信号”选项卡,单击“新建”,“自定义”,并将ECE 15循环数据的变量放入创建信号2.删除信号1。
6.在BEV Simulink窗口顶部设置“停止时间”,时间必须与您的周期数据相同。金宝app
7.点击“模型”页签,“模型设置”,打开配置参数,取消勾选“输入”框,点击“确定”。
谢谢你!
你好,
我有一个关于循环的问题。
我如何将模型的循环改为循环ECE15?
嗨Khadraoui,
您可以在模型工作区找到MDL。
但这一次,MDL不是像massVeh那样的变量,它是一个结构。
如何检查MDL结构中的内部变量?
1.点击“MODELING”选项卡下面的“Model Explorer”打开Model Explorer窗口,就像我们之前做的那样。
2.在模型资源管理器窗口左侧的“模型层次结构”中单击模型工作区。
3.将“MDL”结构模型工作区,并将其放到基工作区。
*不要去MATLAB Base Workspace。您可以在同一窗口的模型层次结构中找到“基础工作区”。
4.转到MATLAB并在MATLAB中检查“Base Workspace”。您可以在工作区中找到MDL结构,并且可以看到内部变量。
如何更改变量?
更改“MDL.MotorModel”的最简单方法。MaxTrqOut”是您可以简单地忽略MDL结构,并创建一个新的“常量块”与数字。
如果要使用变量而不是数字,则在模型工作区中创建一个新变量。请确保块参数中的“常量值”名称与您在模型工作区中创建的变量相同的名称,并且从下次保存模型后,型号将使用您的新变量。
谢谢你!
嗨Nobu饭岛爱,
谢谢你的帮助。
然而,我有一个问题。我发现许多块有“MDL”,例如:“MDL. motormodel . maxtrqout”
你能向我解释一下这个意思吗?
嗨khadraoui,
感谢你的提问。我们使用“模型工作区”来设置初始值。
您可以自定义“模型工作区”中的初始值,例如质量参数。
1.开放BEV Sim金宝appulink模型
2.单击窗口左上角的“建模”选项卡
3.单击“模型浏览器”正下方的“建模”标签,打开一个新的窗口。
4.在BEV中点击“模型工作区”。你可以在窗口左侧的“模型层次结构”中找到BEV。
5.更改列表中的massVeh值。您可以在这里找到我们的初始值,并定制参数。
谢谢你。
我需要改变的质量参数,但我不能。你能帮助我吗?
如何在滑翔机模型中模拟空闲速度关闭,任何人都可以帮助
我们已经修复了PTB_ConventionalModel中的循环错误问题。SLX模型和更新的文件。如果您遇到任何问题,请告诉我们。
有人知道如何在这个模型中获得能源消耗吗?
嗨,西班牙,
模型中有一个代数循环。请给我们发邮件到racinglounge@mathworks.com,我们会把更新后的文件发给你。
我犯了很多错误,先生,你能帮我一下吗
由于操作子系统而导致的输入数据依赖冲突。关于动作子系统的有效和无效示例,请参见Simulink库中的金宝app子系统示例
循环中涉及“PTB_CONVENTALMODEL / DRIVELINE / SMART传输/离合器”的输入端口(2,3)。
组件:Simulin金宝appk |类别:模型错误
输入端口(1,动作)“PTB_ConventionalModel /传动系统/传输/理想固定齿轮传动/理想固定齿轮传动/锁定”参与循环。
组件:Simulin金宝appk |类别:模型错误
输入端口(1,动作)'PTB_CONVENTALMODEL / DRIVELINE / SMARTSION / LEAL固定齿轮传输/理想固定齿轮传输/解锁'涉及循环。
组件:Simulin金宝appk |类别:模型错误
的输入端口(1,2)“PTB_ConventionalModel /传动系统/传输/理想固定齿轮传动/理想固定齿轮传动/ Merge1”参与循环。
组件:Simulin金宝appk |类别:模型错误
循环中涉及'PTB_CONVENTALMODEL / DRIVELINE / SERSION / SIZOURATION'的输入端口(1)。
组件:Simulin金宝appk |类别:模型错误
'PTB_ConventionalModel/Engine/Unit Conversion1'的输入端口(1)涉及到环路。
组件:Simulin金宝appk |类别:模型错误
“PTB_ConventionalModel/Engine/Mapped SI Engine/Mapped Core Engine/Without Temperature Input/Mapped Core Engine/EngTrq Table”的输入端口(2)涉及在环路中。
组件:Simulin金宝appk |类别:模型错误
循环中涉及“PTB_CONVENTALMODEL / DRIVELINE / DREVER / FOCHARE”的输入端口(1)涉及循环。
组件:Simulin金宝appk |类别:模型错误
“PTB_CONVENTALMODEL / DRIVELINE /传输/传输/逻辑运算符”的输入端口(2)涉及循环。
组件:Simulin金宝appk |类别:模型错误
嗨ricard,
你可以切换不同的驾驶周期。
如果你想创建驾驶周期,“驾驶周期源”将帮助你。
链接:https://jp.mathworks.com/help/autoblks/ref/drivecyclesource.html
我们也有你可以使用的“驾驶周期数据”。
链接:https://jp.mathworks.com/matlabcentral/fileexchange/59683-powertrain-blockset-drive-cycle-data
如果要在此模型中更改驱动器周期,请在模型中找到“DRCYCLES”。
它是驱动周期的导入数据,您可以从中更改数据。
谢谢你!
你好。我想知道如何在不同的驾驶周期之间切换。我只是不知道如何。
这很酷,谢谢。
感谢您分享这些有用的模型。
大家好,
感谢您提供详细但简化版本的动力系统和车辆动力学模块。我的问题是关于引擎转速图表的性质。当图是发动机转速,齿轮#,发动机扭矩v/s时间,发动机转速似乎保持恒定在~4700 RPM通过模拟。根据我的理解,发动机转速应该随发动机负载和踏板位置而变化。发动机转速的上限已经给出了6000转/分。你能解释一下为什么在模拟中会发生这种情况吗?
您好,感谢您详细的视频和模型。您向我们提供的文档中一个完整的BEV模型。我找不到模型变量(.m文件),(例如车辆质量等)
我如何得到动力总成组?我发过邮件要求免费试用,但是没有人回复......这种模式似乎是针对学生的,但组件很难获得!!
你开纯电动汽车用的是什么发动机?你从哪里得到牵引力方程?
晚上好,当我尝试启动模型PTB_ConventionalModel时,我收到错误:输入端口1和2涉及到一个循环。我该怎么解决?
你好,Dinesh Reddy和Srivijayakolki P,
我认为你在错误的目录中。检查文件“滑翔机模型”目录,并将其作为当前目录。您的文件路径应该在Matlab Path Strip上处于Command窗口。
得到一个错误“加载驱动程序滑翔机库失败”,有人能帮助我吗?
我收到错误 - “无法加载驱动程序滑翔机库”,有人可以帮助我吗?
喜克里斯托夫。谢谢你的模型。我想知道如何编辑类似驱动周期,电池属性和更多的参数。寻找早日答复
我知道了,先生,我不在那个目录里。
嘿克里斯托夫先生,
我们应该移动“driver_glider_library”吗?“去别的地方?”
我现在得到错误“加载驱动程序滑翔机库失败”
嗨Christoph,你能告诉我你是如何得出的“f_tror-t_loss)*(g / r_w) - f_b”的方程式的如何用于描述该视频中的传动系列?这个等式来自哪里?
Hi Christoph,有没有可能包括超级电容为您的电动汽车模型?你能提供一些推荐信吗?
大家好,感谢收看本期视频。在BEV Simuli金宝appnk模型中。大部分的电池和电机参数用结构MDL表示。你能告诉我如何访问他们的信息或结构吗?
嗨Dimitrios,
这些是我们在项目中使用的参考资料:
孙宗轩,朱国明汽车推进系统的设计和控制。佛罗里达州博卡拉顿:CRC出版社,2015。打印。
[2]“测力计驱动时间表。”EPA。环境保护局,2017年1月31日。网络。2017年4月。
张博,米灿(2011),“插电式混合动力汽车耗电控制策略与燃料优化”,《汽车工程学报》,第40卷,第4期,2011年5月。
最好,Christoph.
您好克里斯托弗,
我们将在燃烧发动机车辆中用于燃料消耗计算的冰效的数学方程非常有帮助。
是可能的吗?
提前谢谢!
嗨,Jeevinthiran,你做的非常有意义。我在从传动系子系统到发动机子系统的反馈回路中放置了一个单元延迟块,以避免出现代数回路。此外,我需要通过引擎子系统中的radps2rpm块进行注释(使用19b)。最好,Christoph.
您好克里斯托弗,
我尝试使用传统的动力系统模型,但当我运行模型时,我得到了“由于动作子系统的输入数据依赖违反”。我解决这个问题的唯一方法是在引擎转速输出和引擎输入之间放置一个记忆块。但是系统运行速度很慢。有更好的解决办法吗?
由于克里斯托夫汉爵士在以前的答复。我会慢慢从链接了解。
对于这个型号,请问为什么电机功率输出和电机功率输入都是负数?我试图从Sir的模型中计算效率,我得到了负的效率值。
亲爱的anian jia,
是的,你想做的(电机和电池规格,然后输出驱动周期信息)是绝对可行的。
请允许我向你推荐另外两种资源:
1 .这将帮助你建模和参数化电池,这一点我们没有详细介绍://www.tatmou.com/金宝搏官方网站solutions/power-electronics-control/battery-models.html
2 .一些关于如何从车辆/动力系统模型输出和记录驱动数据的材料://www.tatmou.com/videos/student-competition-physical-modeling-training-part-3-introduction-to-vehicle-modeling-107485.html
希望这可以帮助!
最好,Christoph.
嗨克里斯托弗爵士
是否有可能为我们输入电动机和电池的规格,则输出的驱动周期信息,例如速度,距离和行进范围?如果是的话,你可以指导我怎么做,或指任何引用?或者说是解决问题的方法是由你,但在模型的扭转的方式来完成模型完全相同?
嗨Zeeshan,
参考本文:Zhang, B, Mi, C.(2011),“混合模式插电式混合动力汽车的耗电控制策略与燃料优化”,IEEE车辆技术学报,第60卷,第4期,2011年5月。
希望这能对你有所帮助,
最好,Christoph.
您好克里斯托弗,
我们的3kw无刷直流电机正在使用你们的模型,我们想为我们的电机模型计算Kc, kw&ki常数。请问你是怎么推导出Ploss= Kc*Torque^2 + Ki*w + Kw*w^3的方程的?
这将是真正有用的,如果你能引导我们得出这些常数和公式的过程。
谢谢你。
嗨Monal,
你指的是什么型号?
请发送电子邮件到racinglounge@mathworks.com。我们很乐意看一看。
最好,Christoph.
您好,人们可以告诉我什么是W_MAX,以及工作区中的W_REF以及使用它的位置。请帮忙
嗨克里斯托弗爵士,
我想在Simulink中使用感应电机来模拟BEV,您是否可能引导我使用有用的资源。金宝app
嗨,沙,
谢谢你的笔记!我指的是你8月14日(#1)和8月5日(#2)的两个问题。
第一条:我不完全确定你指的是什么确切的模型。你能指给我看吗?
2 .将PID块视为坚持驱动周期的“驱动器”。该区块将总是试图最小化之间的delta,例如汽车速度和所需的速度(从驾驶周期)。金宝appSimulink没有单位和制动以及加速器命令的值可能在[0,1]之间。
嘿,你的电池模型的开路电压保持恒定各地。Should't这一变化为充电状态的函数?
嘿克里斯托夫,
你能不能给我介绍一下视频中提到的模型或幻灯片中用到的方程
你好克里斯先生。我想知道PID输出的单位和性质是什么?在视频的第一部分,以某种方式处理mph误差和PID输出一个牵引力。我不明白这是怎么实现的。其次,PID输出,即模型中的油门和刹车指令,是否可以作为电机的输入?我想使用驱动周期作为油门输入到我的电池/模型。对不起,我对这个软件不太熟悉。
嗨凯文,我刚下载了模型和ran'drident_glider.slx'示例性没有任何问题。确保MATLAB中的当前文件夹是具有模型的文件夹。希望这可以帮助。最好,Christoph.
嗨克里斯托弗先生
我已经下载了模型,但当我打开它们时,Canvas界面显示了下一个错误:
“未能通过“BEV /驱动程序引用的加载库‘Driver_Glider_Library’”
我该如何解决这个问题?
Thankk你
你好威廉,
在此我将连接一个依赖t的电池模型://www.tatmou.com/help/physmod/sps/examples/lithium-ion-temperature-dependent-battery-model.html。
希望这与你有关。
干杯
嗨Parth,
改变驱动周期很简单。只需更换模型附带的驱动循环。(它存储在模型工作区中://www.tatmou.com/help/金宝appsimulink/ug/change-model-workspace-data.html)并用定制的东西替换它。
干杯
它是如何将有可能使电池的温度依赖性?使得电池SOC是在不同温度下的影响?
如何改变驾驶周期?例如NEDC,WTP
亲爱的Saksham,谢谢你的反馈!你当然可以引用这个作为互联网资源。
谢谢你的多功能模型。我想引用这个,你能指导我该怎么做吗?
谢谢你。
嗨,迪,
要回答你的第二个问题,它会更好,如果你能与我们分享电子邮件上racinglounge@mathworks.com。
谢谢,
方向的转变
嗨,迪,
该值被存储在Simulink模型工作区。金宝app
您可以通过Simulink工具栏访问它 - > Vi金宝appew - > Model Explorer。
这个链接提供了更多的背景信息:https://de.mathworks.com/help/金宝appsimulink/ug/change-model-workspace-data.html
如果您仍然无法找到数据,请将电子邮件删除到racinglounge@mathworks.com。我们将通过电子邮件发送屏幕镜头。
谢谢,
方向的转变
Hii Christoph先生
我没有得到,我要补充BEV模式,现有的3D动画或动力火车个组,即在文件交换可用?
Hii Christoph先生
您能告诉我这里使用的电池规格、电机规格和电机类型是什么吗?
嗨的同时,
关于你在3月30日提出的问题的一些想法:
即倾斜角由GradeForce [N]块,其基于massVeh *重力* SIN(inclinationAngle)的力使用。默认情况下,在MATLAB正弦函数需要的角度为弧度。在操作度,然后使用massVeh *重力* SIN(deg2rad(inclinationAngle))
负速度值表示反向运动。如果阻力(比如坡度)在牵引力支配车辆运动之前作用于车辆,就会发生这种情况。
希望这可以帮助,
最好,Christoph.
嗨迪内希TEJ,
你指的是该模型是一个简化的一个。它考虑到动力总成和纵向动态。因此,如横向动力学完全丢失。它不会是在三维动画显示这非常有帮助。
你可能要做的是下面的事情。
1.查看车辆动力学模块集,包括它的例子。例如,在MATLAB命令窗口中执行命令>> vdynblksSceneCameraRayStart。这样你就可以运行3D动画了。
2.从这个FileExchange提交加入车辆的车型特征在#1中创建的模型。
希望这对你开始学习有所帮助。
最好,Christoph.
如何3D动画添加到您的BEV模型?
嗨Christoph先生,
在模型中给出的倾角是0度,当我们将倾角改变为20度时,输出速度从-2.3英里/时开始,而输入是不变的,你能简要描述一下负值在实时中解释什么吗?
Hi Deepa,您当然可以使用PID Tuner (https://www.mathwands.com/discovery/pid-tuning.html.).对于车辆模型,PID块实际上是(非常简化的)车辆的表示。所以你会想要调整它来模仿你真正的车辆。司机也是如此。通过PID块,您可以调整它更积极或放松。最好,Christoph.
谢谢你,克里斯托夫先生。
你能告诉我PID常数是如何选择的,特别是驱动滑翔机(P-7500, I-1, D-0)和BEV系统(P-250, I-1, D-0)。
Hi Deepa,这些是运动损失常数:k_c [s / kg m^2], ki [J], k_w [kg m^2]。一般来说,可以这样说:P_loss = P_in - P_out。在我们的例子中,P_loss是p_in的函数,它近似于一个由这些常数组成的二次方程:P_loss = C_0 + C_1 * p_in + C_2 * p_in ^2。如果你有关于损失的测试数据,我建议你做你自己的回归/曲线拟合来得到常数。如果您没有测试数据,您可以从一个理想的(无损)电机开始,并估计误差的影响。最好,Christoph.
先生,如何选择Kc, Ki, Kw等常数?
你好,Yujie,我想你指的是我们在视频中提到的物理建模教程中的模型。在这里找到://www.tatmou.com/videos/series/student-competition-physical-modeling-training-107490.html。希望这是你在找什么。最好,Christoph.
电池,电机,发动机...模型不能在zip文件中找到。你可以添加他们?非常感谢!
嗨迪帕·阿南德,
驱动周期存储在Simulink模型工作区中。金宝app
您可以通过Simulink工具栏访问它 - > Vi金宝appew - > Model Explorer。
这个链接提供了更多的背景信息:https://de.mathworks.com/help/金宝appsimulink/ug/change-model-workspace-data.html
最好,Christoph.
如何访问驱动器周期存储的参数?
嗨,杰克,
好点子!数据可通过Simulink模型工作区访问。金宝app请参阅参考://www.tatmou.com/help/金宝appsimulink/ug/using-model-workspaces.html.。
希望有帮助。
最好,Christoph.
你好,我很困惑如何访问驱动器周期和其他类似的存储参数。例如,Constant块包含DrCycles.US06。我如何访问和查看存储在US06中的数据?通常我会在Matlab工作空间中查看,但我看不到它。
伴侣,je veux exproiter lemodèledevéhiculeélectriqueàbatterie(bev),mais je n'ai pas compure ims ontmodeliséchaque bloc。EST CE Qu'il Ya Un Ecrit Explicatif de Ce Modele吗?Merci。
cordialement。
贝勒哈吉说。
我没有matlab 2018最新版本。我正在使用matlab2017 b,你能把这个导出到我的版本吗?
谢谢分享这么好的模型。
上在以往的模型(版本3.0)的发动机转速计算一个次要注:
在传动系统内部,它通过将速度[英里/小时]除以车轮半径[米]来计算欧米茄,在除法之前,速度将从英里/小时转换为mps。
嗨Vasudevan。如果要将当前模型转换为旧版本,我们已经在Matlab答案中答案://www.tatmou.com/matlabcentral/answers/94724-how-can-i-open-my-current-金宝appsimulink-models-in-previous-versions-of-simulink
我也鼓励你升级到最新版本。
我下载了模型,但当我打开它们时,Canvas界面显示了下一个错误:
“无法加载库'driver_glider_library'”
有人能帮忙吗?
谢谢
您好,是否有可能在MATLAB的早期版本中发布这些文件?也许r2015a ?谢谢!
如何运行这个模型与matlab 2016版本?它给我一个错误,因为这个模型是用不同的版本创建的。
当我运行模拟时,我得到错误
Warning: Could not evaluate MaskDisplay command of block 'PTB_BatteryElectricVehicle/Battery/ Battery':无法评估区块'PTB_BatteryElectricVehicle/Battery/Datasheet Battery'的MaskDisplay命令:
未定义用于输入char类型参数的autoicon函数。
谁能帮忙吗? ?
谢谢