一种基于Simulink的联合仿真方法及系统技术方案

技术编号:30308111 阅读:21 留言:0更新日期:2021-10-09 22:46
本申请涉及计算机处理技术,具体涉及一种基于Simulink的联合仿真方法。包括:步骤S1、自Matlab的工作空间内抽取Matlab进行第一设定步长计算的仿真结果,写入存储在数据交换文件夹中的第一数据文件内;步骤S2、按第二设定步长的间隔时间持续从数据交换文件夹中获取第二数据文件,并将所述第二数据文件存储在所述Matlab的工作空间内,其中,第二数据文件存储了其它软件对第一数据文件进行计算的计算结果;步骤S3、判断在Matlab的工作空间中的第二数据文件是否发生变化,若发生变化,则返回步骤S1,抽取Matlab进行下一步计算的仿真结果,否则返回步骤S2。本申请实现了Simulink与其他软件的联合仿真数据交互和联合仿真过程中的时序控制。时序控制。时序控制。

【技术实现步骤摘要】
一种基于Simulink的联合仿真方法及系统


[0001]本申请涉及计算机处理技术,具体涉及一种基于Simulink的联合仿真方法及系统。

技术介绍

[0002]Matlab是一个主要面对科学计算、可视化及交互式程序设计的高科技计算环境,Simulink是Matlab的重要组成部分,将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一起,广泛应用于控制设计、信号处理、图像处理、金融建模设计与分析等领域。
[0003]随着现代工程复杂度的提高,多物理域联合仿真的需求也日益增加。联合仿真框架中,Simulink凭借其强大的功能,承担着重要的建模仿真任务,但涉及到流体力学、多体动力学、噪声、液压、电气、热环境等领域,还需要专用的软件用于建模仿真分析。目前Simulink已经开发了和成熟的商用软件如Amesim、Saber等的联合仿真接口,但仍有大量的专用软件如用于舰载机钩索动态仿真软件、飞机易损性分析软件等,Simulink并未开发与这些软件的联合仿真接口。

技术实现思路

[0004]为了解决上述问题,本申请提供了一种基于Simulink的联合仿真方法及系统,是一种涉及Simulink与其他软件联合仿真的技术,主要解决数据提取、数据交互逻辑与仿真时序控制等问题。运用本方法可实现Simulink软件与其他软件的联合仿真。
[0005]本申请第一方面提供了一种基于Simulink的联合仿真方法,主要包括:
[0006]步骤S1、自Matlab的工作空间内抽取Matlab进行第一设定步长计算的仿真结果,写入存储在数据交换文件夹中的第一数据文件内;
[0007]步骤S2、按第二设定步长的间隔时间持续从数据交换文件夹中获取第二数据文件,并将所述第二数据文件存储在所述Matlab的工作空间内,其中,所述第二数据文件存储了其它软件对所述第一数据文件进行计算的计算结果,所述其它软件是指对所述第一数据文件具有处理需求的软件;
[0008]步骤S3、判断在所述Matlab的工作空间中的第二数据文件是否发生变化,若发生变化,则返回步骤S1,抽取Matlab进行下一步计算的仿真结果,否则返回步骤S2。
[0009]优选的是,步骤S1进一步包括:
[0010]步骤S11、控制Matlab的Simulink模块启动,以及控制所述Simulink进行第一设定步长的一次计算;
[0011]步骤S12、控制Simulink将其计算结果存储在Matlab的工作空间内;
[0012]步骤S13、自所述Matlab的工作空间内抽取待使用的参数写入所述第一数据文件。
[0013]优选的是,所述第一设定步长为仿真步长。
[0014]优选的是,所述第二设定步长大于所述第一设定步长。
[0015]本申请第二方面提供了一种基于Simulink的联合仿真系统,主要包括:
[0016]第一数据文件获取模块,用于自Matlab的工作空间内抽取Matlab进行第一设定步长计算的仿真结果,写入存储在数据交换文件夹中的第一数据文件内;
[0017]第二数据文件获取模块,用于按第二设定步长的间隔时间持续从数据交换文件夹中获取第二数据文件,并将所述第二数据文件存储在所述Matlab的工作空间内,其中,所述第二数据文件存储了其它软件对所述第一数据文件进行计算的计算结果,所述其它软件是指对所述第一数据文件具有处理需求的软件;
[0018]更新模块,用于判断在所述Matlab的工作空间中的第二数据文件是否发生变化,若发生变化,则通过所述第一数据文件获取模块抽取Matlab进行下一步计算的仿真结果,否则通过第二数据文件获取模块持续获取第二数据文件。
[0019]优选的是,所述第一数据文件获取模块包括:
[0020]Matlab仿真控制单元,用于控制Matlab的Simulink模块启动,以及控制所述Simulink进行第一设定步长的一次计算;
[0021]存储单元,用于控制Simulink将其计算结果存储在Matlab的工作空间内;
[0022]参数抽取单元,用于自所述Matlab的工作空间内抽取待使用的参数写入所述第一数据文件。
[0023]优选的是,所述第一设定步长为仿真步长。
[0024]优选的是,所述第二设定步长大于所述第一设定步长。
[0025]本申请提出的Simulink与其他软件联合仿真方法的优点是无需对Matlab/Simulink软件本身进行二次开发,而是在软件已有的功能上提出一个通用的联合仿真技术,实现Simulink与其他软件的联合仿真数据交互和联合仿真过程中的时序控制。
附图说明
[0026]图1是本申请基于Simulink的联合仿真方法的一优选实施例的流程图。
具体实施方式
[0027]为使本申请实施的目的、技术方案和优点更加清楚,下面将结合本申请实施方式中的附图,对本申请实施方式中的技术方案进行更加详细的描述。在附图中,自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。所描述的实施方式是本申请一部分实施方式,而不是全部的实施方式。下面通过参考附图描述的实施方式是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。基于本申请中的实施方式,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施方式,都属于本申请保护的范围。下面结合附图对本申请的实施方式进行详细说明。
[0028]如图1所示,本申请第一方面提供了一种基于Simulink的联合仿真方法,主要包括:
[0029]步骤S1、自Matlab的工作空间内抽取Matlab进行第一设定步长计算的仿真结果,写入存储在数据交换文件夹中的第一数据文件内;
[0030]步骤S2、按第二设定步长的间隔时间持续从数据交换文件夹中获取第二数据文件,并将所述第二数据文件存储在所述Matlab的工作空间内,其中,所述第二数据文件存储
了其它软件对所述第一数据文件进行计算的计算结果,所述其它软件是指对所述第一数据文件具有处理需求的软件;
[0031]步骤S3、判断在所述Matlab的工作空间中的第二数据文件是否发生变化,若发生变化,则返回步骤S1,抽取Matlab进行下一步计算的仿真结果,否则返回步骤S2。
[0032]在一些可选实施方式中,步骤S1进一步包括:
[0033]步骤S11、控制Matlab的Simulink模块启动,以及控制所述Simulink进行第一设定步长的一次计算;
[0034]步骤S12、控制Simulink将其计算结果存储在Matlab的工作空间内;
[0035]步骤S13、自所述Matlab的工作空间内抽取待使用的参数写入所述第一数据文件。
[0036]如图1所示,本申请以Matlab中的m文件作为总控平台,进行联合仿真数据交互、联合仿真时序控制和Simulink启动/暂停。本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Simulink的联合仿真方法,其特征在于,包括:步骤S1、自Matlab的工作空间内抽取Matlab进行第一设定步长计算的仿真结果,写入存储在数据交换文件夹中的第一数据文件内;步骤S2、按第二设定步长的间隔时间持续从数据交换文件夹中获取第二数据文件,并将所述第二数据文件存储在所述Matlab的工作空间内,其中,所述第二数据文件存储了其它软件对所述第一数据文件进行计算的计算结果,所述其它软件是指对所述第一数据文件具有处理需求的软件;步骤S3、判断在所述Matlab的工作空间中的第二数据文件是否发生变化,若发生变化,则返回步骤S1,抽取Matlab进行下一步计算的仿真结果,否则返回步骤S2。2.如权利要求1所述的基于Simulink的联合仿真方法,其特征在于,步骤S1进一步包括:步骤S11、控制Matlab的Simulink模块启动,以及控制所述Simulink进行第一设定步长的一次计算;步骤S12、控制Simulink将其计算结果存储在Matlab的工作空间内;步骤S13、自所述Matlab的工作空间内抽取待使用的参数写入所述第一数据文件。3.如权利要求1所述的基于Simulink的联合仿真方法,其特征在于,所述第一设定步长为仿真步长。4.如权利要求1所述的基于Simulink的联合仿真方法,其特征在于,所述第二设定步长大于所述第一设定步长。5.一种基于Simulink的联合仿真系统,其特征在于,包括:第一数据文...

【专利技术属性】
技术研发人员:李震牟丹陈天悦张大为刘蒙
申请(专利权)人:中国航空工业集团公司沈阳飞机设计研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1