Cruise是一个集成化的仿真平台,提供了丰富的仿真工具和功能模块,可以方便地进行多领域的联合仿真。Cruise联合仿真interface可以帮助用户在Cruise平台上轻松集成不同领域的仿真模型,实现系统层面的综合仿真分析。用户可以通过Cruise interface直观地配置和管理各个仿真模块,实现系统整体行为的仿真和分析。
目前网上的大多数联合仿真教程都是通过MAtlab dll模块进行的,对于Cruise interface模块的学习内容较少,鄙人将为大家分享Cruise interface模块与siulink进行联合仿真的学习过程,内容如有不恰之处欢迎留言讨论,群策群力。
一.前期准备
对于模型的建立,模块数据的输入,能量流的连接等等这里不做阐述。下面直奔主题:
- 将Cruise中的路径库加载到Matlab中(安装AVL CRUISE Library库),
打开Cruise的安装路径,如下图所示,找到并且在Matlab中运行该文件即可,然后在Simulink中就可以找到Cruise的S-Function模块。
(如果安装 Install.m文件后,Simulink模块库中没有找到AVL CRUISE Library,本人找到三种方法:1、刷新一下Simulink模块库;2、如下图所示进入dll安装路径Src\mdl文件夹,找到如下Simulink模型,如果该模型名称不为AVLCruiseLibrary(版本不兼容问题),则将名称改为AVLCruiseLibrary然后再重复1操作,3.实在不行则需重装Cruise )
2.Cruise interface模块的接口
与MAtlab dll模块有些不同,Cruise interface模块Inport、Outport接口比较反人类:S-Function的输出为Cruise interface的Inport,S-Function的输入为Cruise interface的Outport。
二.仿真设置
1.搭建好控制策略之后,双击Cruise的S—Function模块,进行如下相关的设置:
(1)Cruise求解器设置
在Cruise安装路径下,找到如下求解器文件夹,根据电脑配置(x86)及matlab版(64位or 32位)本选择合适的求解器(本人Matlab2021b)
进入文件夹,cruise_m.dll为我们的目标求解器。注意,在Simulink中设置时,路径输入要完整,并且前后的单引号不可忽略,下同。
(2)目标文件设置(.prj文件)
在Cruise中,右击我们的目标文件,找到Windows Explorer,进入下拉找到我们的.prj文件,如图:
(3)计算任务设置
采用Cruise interface一次只能进行一次工况任务,如下所示,Current Folder为Cruise中的任务层,Current Task为工况层。
(4)Simulink求解设置
如图进入求解器,设置仿真时间、求解器类型和求解步长(步长设置过大将会引起仿真结果失真)。
在Simulink中搭建好控制策略,并完成上述设置后,就可以运行我们的仿真了。这里附上联防结果: