(完整word版)CarSim、Simulink联合仿真
- 格式:doc
- 大小:2.48 MB
- 文档页数:18
CarSim与Simulink联合仿真1 软件介绍在MATLAB中,Simulink是用来建模、仿真和分析动态多维系统的交互工具。
可以使用Simulink提供的标准模型库或者自行创建模型库,描述、模拟、评价和精化系统行为,同时,Simulink和MATLAB之间的联系十分便捷,可以使用一个灵活的操作系和应用广泛的分析和设计工具。
最后,除了可以使用Simulink建模和仿真之外,还可以通过其他软件联合来完成更多的分析任务,如CarSim、ADAMS、AMEsim等许多软件。
CarSim是专门针对车辆动力学的仿真软件,CarSim模型在计算机上运行的速度比实时快3-6倍,可以仿真车辆对驾驶员,路面及空气动力学输入的响应,主要用来预测和仿真汽车整车的操纵稳定性、制动性、平顺性、动力性和经济性,同时被广泛地应用于现代汽车控制系统的开发。
CarSim可以方便灵活的定义试验环境和试验过程,详细的定义整车各系统的特性参数和特性文件。
CarSim软件的主要功能如下:●适用于以下车型的建模仿真:轿车、轻型货车、轻型多用途运输车及SUV;●可分析车辆的动力性、燃油经济性、操纵稳定性、制动性及平顺性;●可以通过软件如MA TLAB,Excel等进行绘图和分析;●可以图形曲线及三维动画形式观察仿真的结果;●包括图形化数据管理界面,车辆模型求解器,绘图工具,三维动画回放工具,功率谱分析模块;●程序稳定可靠;●软件可以实时的速度运行,支持硬件在环,CarSim软件可以扩展为CarSim RT,CarSim RT 是实时车辆模型,提供与一些硬件实时系统的接口,可联合进行HIL仿真;●先进的事件处理技术,实现复杂工况的仿真;●友好的图形用户界面,可快速方便实现建模仿真;●提供多种车型的建模数据库;●可实现用户自定义变量的仿真结果输出;●可实现与simulink的相互调用;●多种仿真工况的批运行功能;2 CarSim与Simulink联合仿真2.1 Simulink接口1) 变量由Simulink导入CarSim(导入变量)可由Simulink导入到CarSim中的变量可达160多个,主要分为以下几部分:⏹控制输入⏹轮胎/路面输入⏹轮胎的力和力矩⏹弹簧及阻尼力⏹转向系统的角度⏹传动系的力矩⏹制动力矩及制动压力⏹风的输入⏹任意的力和力矩图2.1 CarSim导入变量分类我们可以在Simulink中定义变量,也可以在其他软件中定义并导入Simulink模型中,导入的变量将叠加到CarSim内部相应的变量中。
simulink/modelsim联合仿真XX学生的师傅2016年5月13日Simulink/Modelsim 联合仿真操作步骤本人使用的matlab版本为:matlab R2014a ; modelsim版本为:Modelsim SE-64 10.1c。
以下内容是参考自matlab帮助文档,结合自己第一次联合仿真的经验得出,如有不到之处,不能帮助解决问题还请原谅。
第一次使用markdown,如阅读体验不好,你咬我啊以下正文1.新建目录2.在matlab中配置cosimulation block1.在matlab中运行cosimWizard。
2.按要求配置。
3.在simulink或matlab中搭建仿真模型4.从matlab或simulink中启动modelsim两种方法:•在matlab中运行vism或vism('socketsimulink'),4449 ,其中4449为端口号,根据实际情况确定。
之后需在modelsim中加载verilog文件,并输入vsimulink work.uq_pmsm ,其中uq_pmsm为实体名,根据实际情况替换。
•双击simulink中的Launch HDL Simulator块启动modelsim。
以下两种情况: - 方法一启动实体仿真、方法二modelsim加载实体完成后,若一直显示loading。
- 直接在simulink中运行仿真时出现错误,提示change port。
可进入任务管理器结束lmutil.exe进程。
黑科技,不确保有效。
5.在simulink中启动仿真,此时modelsim会同步进行仿真。
CarSim与Simulink联合仿真1 软件介绍在MATLAB中,Simulink是用来建模、仿真和分析动态多维系统的交互工具。
可以使用Simulink提供的标准模型库或者自行创建模型库,描述、模拟、评价和精化系统行为,同时,Simulink和MATLAB之间的联系十分便捷,可以使用一个灵活的操作系和应用广泛的分析和设计工具。
最后,除了可以使用Simulink建模和仿真之外,还可以通过其他软件联合来完成更多的分析任务,如CarSim、ADAMS、AMEsim等许多软件。
CarSim是专门针对车辆动力学的仿真软件,CarSim模型在计算机上运行的速度比实时快3-6倍,可以仿真车辆对驾驶员,路面及空气动力学输入的响应,主要用来预测和仿真汽车整车的操纵稳定性、制动性、平顺性、动力性和经济性,同时被广泛地应用于现代汽车控制系统的开发。
CarSim可以方便灵活的定义试验环境和试验过程,详细的定义整车各系统的特性参数和特性文件。
CarSim软件的主要功能如下:●适用于以下车型的建模仿真:轿车、轻型货车、轻型多用途运输车及SUV;●可分析车辆的动力性、燃油经济性、操纵稳定性、制动性及平顺性;●可以通过软件如MATLAB,Excel等进行绘图和分析;●可以图形曲线及三维动画形式观察仿真的结果;●包括图形化数据管理界面,车辆模型求解器,绘图工具,三维动画回放工具,功率谱分析模块;●程序稳定可靠;●软件可以实时的速度运行,支持硬件在环,CarSim软件可以扩展为CarSim RT,CarSim RT 是实时车辆模型,提供与一些硬件实时系统的接口,可联合进行HIL仿真;●先进的事件处理技术,实现复杂工况的仿真;●友好的图形用户界面,可快速方便实现建模仿真;●提供多种车型的建模数据库;●可实现用户自定义变量的仿真结果输出;●可实现与simulink的相互调用;●多种仿真工况的批运行功能;2 CarSim与Simulink联合仿真2.1 Simulink接口1) 变量由Simulink导入CarSim(导入变量)可由Simulink导入到CarSim中的变量可达160多个,主要分为以下几部分:⏹控制输入⏹轮胎/路面输入⏹轮胎的力和力矩⏹弹簧及阻尼力⏹转向系统的角度⏹传动系的力矩⏹制动力矩及制动压力⏹风的输入⏹任意的力和力矩图2.1 CarSim导入变量分类我们可以在Simulink中定义变量,也可以在其他软件中定义并导入Simulink模型中,导入的变量将叠加到 CarSim内部相应的变量中。
基于CarsimSimulink联合仿真的分布式驱动电动汽车建模一、本文概述随着电动汽车技术的快速发展,分布式驱动电动汽车(Distributed Drive Electric Vehicles, DDEV)因其高效能源利用、优越操控性能以及灵活的驱动方式,正逐渐成为新能源汽车领域的研究热点。
为了更深入地理解和研究DDEV的动态特性与控制策略,建立精确的车辆模型是关键。
本文旨在探讨基于Carsim与Simulink 联合仿真的分布式驱动电动汽车建模方法,以期在车辆动力学建模、控制策略优化和系统集成等方面提供有效的技术支撑。
本文首先介绍分布式驱动电动汽车的基本结构和特点,阐述其相较于传统车辆的优势。
随后,详细介绍Carsim和Simulink两款软件在车辆建模和仿真分析方面的功能和特点,以及它们联合仿真的优势。
接着,将重点介绍如何利用Carsim建立DDEV的车辆动力学模型,包括车辆动力学方程、轮胎模型、驱动系统模型等。
将探讨如何利用Simulink构建DDEV的控制策略模型,包括驱动控制、制动控制、稳定性控制等。
在建立了DDEV的车辆动力学模型和控制策略模型后,本文将详细阐述如何将这两个模型进行联合仿真,并分析仿真结果。
通过对比分析不同控制策略下的车辆性能表现,验证所建模型的准确性和有效性。
本文还将讨论分布式驱动电动汽车建模面临的挑战和未来的研究方向,为相关领域的研究者提供参考和借鉴。
二、Carsim软件介绍Carsim是一款由密歇根大学开发的高级车辆动力学仿真软件,广泛应用于车辆控制、车辆动力学、主动和被动安全、电动和混合动力车辆以及先进的驾驶员辅助系统等领域的研究和开发。
该软件以模块化的方式集成了车辆各个子系统的动力学模型,包括发动机、传动系统、制动系统、转向系统、悬挂系统、轮胎以及车身等。
Carsim的核心优势在于其强大的物理引擎和精确的仿真能力。
通过精确的算法和详尽的车辆参数数据库,Carsim能够模拟出车辆在各种道路条件和驾驶操作下的动态行为,如加速、制动、转向、侧滑等。
分享】car与simulink联合仿真大总结一直困扰我的ac ar与simulink联合仿真今天终于做通了,以发此贴给大家一些建议。
我做的这个例子很简单,主要目的是将acar和simulink调通。
使用的软件平台:adams2005r2,matlab7.01 步骤如下:1,打开c ar的例子mdi_demo_vehic le_it,在tools/plugin manger中调出contr ols安装如下图片设置c ontrol:[本帖最后由duanxc314 于2006-5-20 15:18 编辑]附件2006-5-20 15:18zz1.JPG(54.45 KB)引用报告回复duanxc314 版主UID 45987 精华 1 积分 50 帖子 612 贡献积分 173 阅读权限 100 注册 2004-4-21 来自 武汉 状态 离线#2 大 中 小使用道具发表于 2006-5-20 15:09 资料 个人空间 短消息 加为好友2,对整车进行仿真,安装如下的图片进行设置,注意mode of simul ation 选择为files_onl y. 3,在matlab 中用编辑器打开Controls_Plant_1.m修改ADAMS_prefix = ' Controls_Plant_1' ;为AD AMS_prefix = 'AA_iso_lane_c hange'4,打开AA_iso_lane_change.m 文件,将AD AMS_outputs 修改为'testrig.steering_wheel_angle'; 5,将ADAMS_init = 'file/command=Controls_Plant_1_c ontrols.acf' ;改为AD AMS_init = 'file/command=AA_iso_lane_change_c ontrols.acf' ; 6,打开matlab ,在光标后输入Controls_Plant_1,出现 %%% INFO : ADAMS plant actuators names : 1 testrig.steering_wheel_torque%%% INFO : ADAMS plant sensors names : 1 testrig.steering_wheel_angle再输入adams_sys 弹出一个adams_sub 的plant7,新建一个simulink model ,将adams_sub 放入这个控制系统中系统中,plant 的输入是转向力矩(再这里是个正弦函数副值为150),输出是转向角度。
CarMaker入门第六课-CarMaker用于Simulink联合仿真进行算法开发方法本节课将介绍如何基于CarMaker用于Simulink联合仿真开发算法与验证用到的模块。
CarMaker入门课程传送门【CarMaker入门第五课-CarMaker for Simulink模块】CarSim入门课程传送门【CarSim仿真快速入门(十三)—驾驶员模型(2)】CarSim从入门到精通视频传送门【CarSim从入门到精通视频】本节将对CarMaker的Simulink实现进行简短而深入的介绍。
要求具备基本的Matlab和Simulink知识。
7.1 CarMaker Simulink架构概述双击CarMaker块:图 7.1 Simulink中CarMaker的总体架构这就是CarMaker在Simulink中的总体架构。
CarMaker的Simulink表示方式主要包括驾驶员/驾驶操纵、车辆控制和车辆模型。
其余部分(IPGRoad等)包含在Simulink的CarMaker库中。
双击DrivMan块:图 7.2 Simulink中的DrivMan块可以认识到两个细节。
- 左边的绿色块是一个S函数。
这意味着全部功能都被掩盖在这一级后面。
- S函数的输出是一个多路信号,包含了S函数接口的所有信息。
返回并双击 "车辆 "块:图 7.3 Simulink中的车辆模块在这里,可以找到更详细的分割。
Simulink块表示每次都以S函数结束。
7.2 示例7.2.1 内容- 计算一个新的变量。
- 将该变量链接到CarMaker的用户可访问量。
- 使用IPGControl观察变化。
7.2.2 创建新的Simulink模型打开Simulink模型"Generic.mdl"。
将其保存为"My_Model.mdl"。
打开Generic.mdl模型,然后从这个模型中打开My_Model.mdl 模型。
CarSim与simulink联合仿真1.新建simulink模型,并保存(因为CarSim不能新建simulink)2.打开CarSim,Models选择:simulink3.选择Link to New Dataset4.命名,Create and Link5.选择观察视角(根据自己需要)6.进入上述所创建的模型,设置参数7.选择输入8.选择输入变量(1) 按键(Refresh),可以重新录入Active Import Variables (2) 按键(View Spreadsheet),方便查找输入参数9.此例选择三个参数(1)Open loop throttle control同理:(2)Steering wheel angle(3)Brake pedal force(Mode一般选择Replace)保存以上设置10.选择输出11.设置输出参数此例选择4个输出参数(1)Longitudinal speed(2)Angular rate(3)Angular acceleration(4)Engine crankshaft angular speed保存设置12.选择simulink Model(第一步保存的路径)13.后退出,Send to Simulink(注:若出错,在运行中输入CMD,进入dos模式,输入matlab /regserver(只装一个matlab 版本),或进入需要的matlab路径,输入matlab /regserver(存在多个matlab版本),重联matlab 引擎)14.打开Library Browser15.拖入CarSim S-Function模块16.simulink建模17.点击Start Simulation18.在Simulink里观察运行结果在CarSim里模拟(Animate)查看数据(Plot)Copyright © 2011 Vehicle Controls and Intelligence Lab, Jilin UniversityAll rights reserved11。
CarSim与Simulink联合仿真1 软件介绍在MATLAB中,Simulink是用来建模、仿真和分析动态多维系统的交互工具。
可以使用Simulink提供的标准模型库或者自行创建模型库,描述、模拟、评价和精化系统行为,同时,Simulink和MATLAB之间的联系十分便捷,可以使用一个灵活的操作系和应用广泛的分析和设计工具。
最后,除了可以使用Simulink建模和仿真之外,还可以通过其他软件联合来完成更多的分析任务,如CarSim、ADAMS、AMEsim等许多软件。
CarSim是专门针对车辆动力学的仿真软件,CarSim模型在计算机上运行的速度比实时快3-6倍,可以仿真车辆对驾驶员,路面及空气动力学输入的响应,主要用来预测和仿真汽车整车的操纵稳定性、制动性、平顺性、动力性和经济性,同时被广泛地应用于现代汽车控制系统的开发。
CarSim可以方便灵活的定义试验环境和试验过程,详细的定义整车各系统的特性参数和特性文件。
CarSim软件的主要功能如下:●适用于以下车型的建模仿真:轿车、轻型货车、轻型多用途运输车及SUV;●可分析车辆的动力性、燃油经济性、操纵稳定性、制动性及平顺性;●可以通过软件如MA TLAB,Excel等进行绘图和分析;●可以图形曲线及三维动画形式观察仿真的结果;●包括图形化数据管理界面,车辆模型求解器,绘图工具,三维动画回放工具,功率谱分析模块;●程序稳定可靠;●软件可以实时的速度运行,支持硬件在环,CarSim软件可以扩展为CarSim RT,CarSim RT 是实时车辆模型,提供与一些硬件实时系统的接口,可联合进行HIL仿真;●先进的事件处理技术,实现复杂工况的仿真;●友好的图形用户界面,可快速方便实现建模仿真;●提供多种车型的建模数据库;●可实现用户自定义变量的仿真结果输出;●可实现与simulink的相互调用;●多种仿真工况的批运行功能;2 CarSim与Simulink联合仿真2.1 Simulink接口1) 变量由Simulink导入CarSim(导入变量)可由Simulink导入到CarSim中的变量可达160多个,主要分为以下几部分:⏹控制输入⏹轮胎/路面输入⏹轮胎的力和力矩⏹弹簧及阻尼力⏹转向系统的角度⏹传动系的力矩⏹制动力矩及制动压力⏹风的输入⏹任意的力和力矩图2.1 CarSim导入变量分类我们可以在Simulink中定义变量,也可以在其他软件中定义并导入Simulink模型中,导入的变量将叠加到CarSim内部相应的变量中。
2)变量由CarSim导入Simulink(导出变量)导出变量可以应用于用户自定义的Simulink模型,CarSim的导出变量多达560之多,如车辆的位置、姿态、运动变量等。
图2.2 CarSim导出变量分类图2.3为CarSim软件所提供的一个CarSim与Simulink联合仿真的例子图2.3 简单驾驶员模型2.2 CarSim与Simulink联合仿真以CarSim中所提供的与Simulink联合仿真的一个例子为例(稍有修改),来介绍CarSim 与Simulink联合仿真的整个过程。
例:车型B-class,Hatchback:No ABS初始车速65km/h节气门开度0档位控制闭环四档模式制动2s后紧急制动方向盘转角0deg路面对开路面仿真时间10s仿真步长0.001s说明:选用同一车型的两辆汽车,同样的仿真工况,但其中一辆加入在Simulink中建立的ABS控制器,相当于一辆汽车带有ABS,而另一辆汽车没有带ABS,方便对比。
(1) 双击桌面上CarSim的图标,运行CarSim,这里选用是的CarSim8.0版本;(2) 出现‘选择数据库’对话框,如图2.4所示,选择好数据库文件夹后点击‘Continue with the selected database’,若想要不再出现此对话框,可以将左下角‘Don't show this window the next time you start’选中;图2.4 选择数据库(3) 然后将会出现如图2.5所示的对话框(‘许可设置’),选择‘Select’,即可打开CarSim 的主界面,如图2.6所示;图2.5 许可设置图2.6 CarSim主界面由图2.6可以看到在CarSim主界面中,主要有三大部分:车辆参数及仿真工况的设置、数学模型求解、后处理。
用户可以修改车辆参数,根据需要来设置仿真工况,图2.6中所示为双移线仿真工况。
在后处理部分,可以显示模型的仿真动画及绘制仿真曲线,如图2.7。
图2.7 仿真动画与曲线(4) 点击,来新建一组dataset,如图2.8,在两个文本框中分别输入'Example'和'ABS',然后点击'set',以完成新建。
图2.8 新建dataset(5) 选择'datasets'下拉菜单,看有何不同,如图2.9。
图2.9 第(4)步中所建的dataset(6) 点击图2.10(a)中的下三角,选择相应的车型,如图2.10(b)。
(a) (b)图2.10 选择车型(7)新建一个所要求的仿真工况:1)点击图2.11中所示的工况,如图2.12所示。
图2.11 120km/h双移线仿真工况图2.12 120km/h双移线仿真工况的主界面2) 新建仿真工况,点击,在图2.13中的文本框中依次输入‘ABS Example’和‘Split Mu’,点击‘Set’完成新建。
图2.13 新建仿真工况3) 根据例子中的要求设置仿真工况:●初始车速为65km/h;●节气门开度为0;●2s后紧急制动;●档位控制选用闭环四档模式;●方向盘转角为0deg;●路面选择对开路面;完成设置后,如图2.14所示。
图2.14 仿真工况设置4) 设置仿真时间:同样在设置仿真工况的主界面里,在如图2.15所示的文本框内输入‘10’。
图2.15 仿真时间设置5) 选择前面新建的仿真工况:点击,返回CarSim的主界面,选择前面新建的‘Split Mu’工况,如图2.16。
图2.16 选择仿真工况6) 设置仿真步长:在CarSim主界面下,点击下拉菜单‘Tools’,选择‘Preferences’,出现如图2.17的界面,在图中红色圆角矩形框内,将仿真步长设为‘0.001s’。
图2.17 设置仿真步长(8)点击运行数学模型,计算结束后,点击,观看仿真动画,看一下无ABS车辆在对开路面上紧急制动的效果,如图2.18所示,也可以点击来绘制曲线。
图2.18 仿真动画显示(9) 建立CarSim与Simulink联合仿真的模型:1) 点击如图2.19所示的下三角,选择‘Models:Simulink’。
图2.19 选择Simulink接口2)点击如图2.20所示的下三角,选择‘[Link to New Dataset]’。
图2.20 Link to New Dataset3) 此时将弹出一个如图2.21所示的对话框,在文本框中依次输入‘Example’和‘ABS’,点击完成新建,如图2.22。
图2.21 新建一个与Simulink联合的Dataset图2.22 选择建立的‘ABS’dataset4)点击,如图2.24所示,注意到:①浏览工作路径:在这里选择D:\Program Files\CarsimData;②Simulink Model的路径:在D:\Program Files\CarsimData\Extensions\Simulink 目录下新建一个空白的Simulink Model,命名为ABS.mdl。
点击浏览ABS.mdl,如图2.23所示图2.23 选择路径图2.24 Simulink {Example}ABS的主界面5) 定义CarSim的导入变量:点击如图2.25(a)所示的下三角,选择‘I/O Channels:Import’,然后按图2.25(b)、(c)新建导入变量;(a)(b)(c)图2.25 新建ABS input点击,显示如图2.26,这里需要浏览找到Readme file for output,这里为Programs\solvers\ReadMe\i_i_imports_tab.txt。
定义CarSim 导入变量为4个车轮的轮缸压力,顺序依次为:IMP_PBK_L1(左前轮缸压力[MPa])、IMP_PBK_R1(右前轮缸压力[MPa])、IMP_PBK_L2(左后轮缸压力[MPa])、IMP_PBK_R2(右后轮缸压力[MPa]),记下导入顺序。
图2.26 定义CarSim导入变量6)定义CarSim的导出变量:步骤同5) 定义CarSim的导入变量相同,首先新建名为ABS output的一个dataset。
点击,弹出如图2.27所示的界面,这里需要浏览找到Readme file for output,这里为Programs\solvers\ReadMe\i_i_outputs_tab.txt。
定义CarSim的导出变量依次为:Vx_L1(左前轮速[km/h])、Vx_R1(右前轮速[km/h])、Vx_L2(左后轮速[km/h])、Vx_R2(左前轮速[km/h])、Vx_SM(汽车质心处的速度[km/h])、Pbk_Con(主缸压力的控制输入[MPa]),记下导出顺序。
图2.27 定义CarSim导出变量7) 点击,返回CarSim主界面,然后点击图2.27所示的,此时Matlab及前面所新建的空白的模型ABS.mdl将被打开,如图2.28。
图2.27 数学模型求解器图2.28 MA TLAB Command Window及ABS.mdl8)在MA TLAB Command Window中键入simulink,回车,打开Simulink Library Browser,注意现在的Simulink Library Browser比单独运算MATLAB/Simulink时多了一个‘CarSim S-Function’,如图2.29所示,将拖拽到ABS.mdl里,显示为,注意此模块恰好有一个输入接口和一个输出接口,分别对应着CarSim的导入变量和导出变量。
图2.29 含有CarSim S-Function模块的Simulink Library Browser9) 在ABS.mdl中加入ABS控制策略,CarSim的导出量经过Simulink计算,决策出各个轮缸的压力,然后导入到CarSims模块里,如图2.30所示图2.30 CarSim与Simulink联合仿真的ABS控制模型10) 返回CarSim主界面,点击,运行结束后,再点击,弹出ABS.mdl,如图2.30,点击模型的,即可运行整个模型。