CarSimSimulink联合仿真Word文件下载.docx
《CarSimSimulink联合仿真Word文件下载.docx》由会员分享,可在线阅读,更多相关《CarSimSimulink联合仿真Word文件下载.docx(22页珍藏版)》请在冰豆网上搜索。
●可实现用户自定义变量的仿真结果输出;
●可实现与simulink的相互调用;
●多种仿真工况的批运行功能;
2CarSim与Simulink联合仿真
2.1Simulink接口
1)变量由Simulink导入CarSim(导入变量)
可由Simulink导入到CarSim中的变量可达160多个,主要分为以下几部分:
⏹控制输入
⏹
轮胎/路面输入
⏹轮胎的力和力矩
⏹弹簧及阻尼力
⏹转向系统的角度
⏹传动系的力矩
⏹制动力矩及制动压力
⏹风的输入
⏹任意的力和力矩图2.1CarSim导入变量分类
我们可以在Simulink中定义变量,也可以在其他软件中定义并导入Simulink模型中,导入的变量将叠加到CarSim内部相应的变量中。
2)变量由CarSim导入Simulink(导出变量)
导出变量可以应用于用户自定义的Simulink模型,CarSim的导出变量多达560之多,如车辆的位置、姿态、运动变量等。
图2.2CarSim导出变量分类
图2.3为CarSim软件所提供的一个CarSim与Simulink联合仿真的例子
图2.3简单驾驶员模型
2.2CarSim与Simulink联合仿真
以CarSim中所提供的与Simulink联合仿真的一个例子为例(稍有修改),来介绍CarSim与Simulink联合仿真的整个过程。
例:
车型
B-class,Hatchback:
NoABS
初始车速
65km/h
节气门开度
档位控制
闭环四档模式
制动
2s后紧急制动
方向盘转角
0deg
路面
对开路面
仿真时间
10s
仿真步长
0.001s
说明:
选用同一车型的两辆汽车,同样的仿真工况,但其中一辆加入在Simulink中建立的ABS控制器,相当于一辆汽车带有ABS,而另一辆汽车没有带ABS,方便对比。
(1)双击桌面上CarSim的图标
,运行CarSim,这里选用是的CarSim8.0版本;
(2)出现‘选择数据库’对话框,如图2.4所示,选择好数据库文件夹后点击‘Continuewiththeselecteddatabase’,若想要不再出现此对话框,可以将左下角‘Don'
tshowthiswindowthenexttimeyoustart’选中;
图2.4选择数据库
(3)然后将会出现如图2.5所示的对话框(‘许可设置’),选择‘Select’,即可打开CarSim的主界面,如图2.6所示;
图2.5许可设置
图2.6CarSim主界面
由图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.11120km/h双移线仿真工况
图2.12120km/h双移线仿真工况的主界面
2)新建仿真工况,点击
,在图2.13中的文本框中依次输入‘ABSExample’和‘SplitMu’,点击‘Set’完成新建。
图2.13新建仿真工况
3)根据例子中的要求设置仿真工况:
●初始车速为65km/h;
●节气门开度为0;
●2s后紧急制动;
●档位控制选用闭环四档模式;
●方向盘转角为0deg;
●路面选择对开路面;
完成设置后,如图2.14所示。
图2.14仿真工况设置
4)设置仿真时间:
同样在设置仿真工况的主界面里,在如图2.15所示的文本框内输入‘10’。
图2.15仿真时间设置
5)选择前面新建的仿真工况:
点击
,返回CarSim的主界面,选择前面新建的‘SplitMu’工况,如图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所示的下三角,选择‘[LinktoNewDataset]’。
图2.20LinktoNewDataset
3)此时将弹出一个如图2.21所示的对话框,在文本框中依次输入‘Example’和‘ABS’,点击
完成新建,如图2.22。
图2.21新建一个与Simulink联合的Dataset
图2.22选择建立的‘ABS’dataset
4)点击
,如图2.24所示,
注意到:
①浏览工作路径:
在这里选择D:
\ProgramFiles\CarsimData;
②SimulinkModel的路径:
在D:
\ProgramFiles\CarsimData\Extensions\Simulink目录下新建一个空白的SimulinkModel,命名为ABS.mdl。
浏览ABS.mdl,如图2.23所示
图2.23选择路径
图2.24Simulink{Example}ABS的主界面
5)定义CarSim的导入变量:
点击如图2.25(a)所示的下三角,选择‘I/OChannels:
Import’,然后按图2.25(b)、(c)新建导入变量;
(a)
(b)
(c)
图2.25新建ABSinput
,显示如图2.26,这里需要浏览找到Readmefileforoutput,这里为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的导入变量相同,首先新建名为ABSoutput的一个dataset。
,弹出如图2.27所示的界面,这里需要浏览找到Readmefileforoutput,这里为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.28MATLABCommandWindow及ABS.mdl
8)在MATLABCommandWindow中键入simulink,回车,打开SimulinkLibraryBrowser,注意现在的SimulinkLibraryBrowser比单独运算MATLAB/Simulink时多了一个‘CarSimS-Function’,如图2.29所示,将
拖拽到ABS.mdl里,显示为
,注意此模块恰好有一个输入接口和一个输出接口,分别对应着CarSim的导入变量和导出变量
。
图2.29含有CarSimS-Function模块的SimulinkLibraryBrowser
9)在ABS.mdl中加入ABS控制策略,CarSim的导出量经过Simulink计算,决策出各个轮缸的压力,然后导入到CarSims模块里,如图2.30所示
图2.30CarSim与Simulink联合仿真的ABS控制模型
10)返回CarSim主界面,点击
,运行结束后,再点击
,弹出ABS.mdl,如图2.30,点击模型的
,即可运行整个模型。
说明:
若对CarSim软件里的参数(车辆参数、仿真工况等)进了修改,则要再点击
,运行结束后,然后点击
,来重新读入修改后的参数,最后点击模型的
,运行整个模型;
若只在Simulink模型里作相应的修改,不影响CarSim中的参数,直接点击
即可。
图2.31加入ABS控制后,车速与各轮速的关系曲线
11)观察加入ABS控制后的车辆行驶,点击
,查看动画,如图2.32,同样也可点击
绘制曲线。
图2.32带有ABS控制的仿真动画
(10)在前述操作的基础上,为了更好的显示ABS控制效果,采用同样车型,同样的仿真工况,而其中一辆加入了ABS控制,另一辆不带ABS。
1)在CarSim主界面下,点击
,新建一个dataset如图2.33所示,点‘Set’完成操作。
图2.33新建NoABSControldataset
2)取消与Simulink联合仿真的选择,如图2.34,选择‘[Nolinkedlibrary]’。
图2.34取消与Simulink联合仿真
3)选择CarSim主界面右下方的
,选择前面所建立的dataset,如图2.35,完成操作后,点击该处的,弹出ABS的CarSim的主界
图2.35选择dataset
4)完成上面3)操作后,点击该处的
,弹出ABS的CarSim的主界面,同样按上面3)操作方法,选择在1)所建的‘NoABSControl’。
在主界面右上角,选中
,并设置为红色;
5)点击主界面上的
,运行模型,结束后,点击
,查看仿真动画,如图2.36所示,其中红色车辆为不带ABS控制的车辆。
图2.36有无ABS控制的对比