基于AMESim主平台的Simulink/Flowmaster联合仿真技术研究

2017-03-25 03:33周文璋张鑫彬鲜亚平
上海航天 2017年1期
关键词:调用仿真技术二次开发

周文璋,张鑫彬,鲜亚平,陈 勇

(1.电子科技大学能源科学与工程学院,四川成都611731;2.电子科技大学电动汽车动力系统与安全技术研究所,四川成都611731;3.上海伺服系统工程技术研究中心,上海201109;4.上海航天控制技术研究所,上海201109)

基于AMESim主平台的Simulink/Flowmaster联合仿真技术研究

周文璋1,2,张鑫彬3,4,鲜亚平3,4,陈 勇1,2

(1.电子科技大学能源科学与工程学院,四川成都611731;2.电子科技大学电动汽车动力系统与安全技术研究所,四川成都611731;3.上海伺服系统工程技术研究中心,上海201109;4.上海航天控制技术研究所,上海201109)

为更简便地实现AMESim,Simulink,Flowmaster三个软件平台的联合仿真,提出了一种基于AMES-im主平台的Simulink/Flowmaster联合仿真方案,用AMESim平台调用Simulink模块接口以及AMESim/Flowmaster平台提供的二次开发的功能实现AMESim,Simulink,Flowmaster三个软件的联合仿真。先进行AMESim/Simulink平台间通信,通过两者间的软件接口将Simulink模块导出为AMESim可调用模块,实现联合。再进行AMESim/Flowmaster平台间联合,因AMESim/Flowmaster平台间无直接接口,用这两个软件提供的二次开发功能,通过读写数据库实现两者的数据通信,其中与读写数据库通信相关的函数库需提前开发。再次建立三个平台各自的模块,实现三者的联合仿真。案例证明了该联合仿真系统的可行性。该法可用于类似平台间的联合。

联合仿真;AMESim主平台;Simulink平台;Flowmaster平台;接口;二次开发;元件模型

0 引言

航天航空系统领域中的测试是重要的设计与制造性能验证,但很多时候无法满足测试的条件,目前建模和仿真成为科学研究和产品设计中主要技术。随着工业技术和相关学科的快速发展,航天系统机电和网络一体化,系统日趋复杂,对航天系统的设计提出了更高的标准和要求,传统的实物测试和单一软件仿真已不能满足系统研究和设计的需求了。为更好地研究多学科交叉的复杂系统,实现仿真的真实性和精确性,利用各平台的优点,进行联合仿真的技术已越来越普遍。文献[1-3]用Matlab平台高效的编程效率和强大的数学计算功能,以及AMESim平台简便地建立精确的物理模型等优点实现了两个平台的联合仿真;文献[4]将Matlab,Flowmaster流体仿真平台进行联合实现车辆和发动机预热温度的变化预测研究;文献[5]介绍了一些软件平台的联合技术在航空领域的应用。为更简便地实现多平台的联合仿真,多个软件开发公司和研究者在研究相关平台间联合技术。目前在工程和科学研究中经常使用的联合技术有:一是通过各软件间已开发的接口和功能实现联合仿真。如文献[6]用AMESim,Simulink平台间的接口实现电液位置伺服系统动态研究;文献[7-9]通过Matlab/Flowmaster接口技术,实现Simulink平台中调用Fowmaster模块;文献[10]用AMESim,Simulink与Recur-Dyn平台接口技术实现掘进机截割部回转机构建模与联合仿真等。但该方法受软件能力限制,若某软件接口拓展性不强,多个平台间的联合仿真就会受限。如AMESim,Simulink,Flowmaster三个平台联合仿真,但Flowmaster,AMESim平台间无连接接口,因此难以按需求设计联合仿真模式。二是通过系统某种结构规范实现联合,如HLA,DIS体系架构,它们除用于军事领域外,在商业管理、工业生产和公共管理等其它领域也有较广泛的使用。三是利用FMI(Functional Mock-up Interface)实现联合仿真,这主要用于汽车设计和仿真。基于对Simulink,AMESim,Flowmaster平台的大量研究,本文提出了一种基于AMESim主平台的Simulink/Flowmaster联合仿真方案,该方案主要是将提前在Simulink设计好的控制模块和Flowmaster设计好的流体模块通过某种接口及协议与AMESim进行联合。

1 联合仿真技术

1.1 联合仿真框架

本文提出联合仿真方案如图1所示。第一步进行AMESim/Simulink间通信,通过AMESim/Simulink间的软件接口将Simulink模块导出为AMESim可调用模块,实现联合;第二步进行AMESim/Flowmaster间联合,由于AMESim/Flowmaster间无直接接口,本文用这两个软件提供的二次开发功能,通过读写数据库(读写数据库通信相关的函数库需提前开发)实现这两个软件的数据通信;第三步建立三个平台各自的模块,由上述步骤实现三者的联合仿真。

1.2 AMESim/Slimulink联合

1.2.1 联合接口

AMESim,Simulink平台均自带联合仿真接口。该接口类型有两种:一种是将AMESim模块导出成Simulink可调用模块;另一种是将Simulink模块导出为AMESim可调用的模块,如图2所示。该方案以AMESim为主平台,因此采用将Simulink模块导出为AMESim可调用模块的联合仿真方案。

1.2.2 接口实现

在Simulink中新建PID控制模块,在Matlab控制命令中输入sl2amecosim(‘PIDCTRL’,’E:\Work\PID’,‘auto’),生成AMESim子模型。其中:PIDCTRL为模块名,’E:\Work\PID’是生成文件的存储路径,如图3所示。图3中:输入1,输出1是与AMESim通信的接口,是必须有的,并设置仿真方式为固定步长的仿真。

在AMESim中选择Modeling→Category settings→Add category,新建一个元件类型,并利用AMESet自定义一个元件,将上述生成的模型导入元件中,如图4所示。

1.3 AMESim/Flowmaster联合

1.3.1 联合接口

AMESim,Flowmaster平台未提供联合仿真的接口,但各自都有二次开发功能。本文利用这两个软件的二次开发功能,调用编写好的函数库,通过读写数据库进行联合仿真和数据通信。AMESim/Flowmaster联合框架如图5所示。

1.3.2 接口实现

为用AMESim/Flowmaster平台进行联合仿真,开发了用于通信的函数库,在每步处理函数中调用函数库中Communication(int inPorts,int out-Ports,double[]inPorts Data,double*outPorts-Data)函数进行通信。该函数的算法如图6所示。

利用AMESet模块自定义一个实际需要的端口元件,设置端口变量和参数,如图7所示。元件的端口变量和参数设置后,在代码模型中添加代码,编译。就此完成了AMESim通信元件的创建。

在Flowmaster中自定义一个元件,元件模型设计对话框如图8所示。图8中:1为元件模型名称;2为端口设计;3为信号设计;4为参数设计;5为元件模型描述;6为参数的仿真类型;7为代码模板。按实际需要添加通道端口、信号端口和变量参数,再创建代码模板,在图9所示对话框中选择适当的待实现的功能库。Mandatory Interfaces是基础接口,都需选择;Advisable Interfaces接口可根据需要选择性选取,但IInitialiseModel,IReultProvider一般是需要选取的;Specialist Interfaces中选取IcSignalConsumer用于获取信号端的数据。此处,所建的元件是控制类型,故在Controller Interfaces中选取ISpecialistController 1,IFM_Controller Base,IRunTimeChart Support 1。其中:前两个提供自动更新函数和输出端口变量;第三个提供窗口显示的模板,用于显示指定观察的信号,其它接口可根据需要适当选取。

创建代码模板后,在VC或VS上创建一个c#的dll库工程,将上述生成的代码文件及所需的接口库加入工程中,并在图10中添加红色方框的代码,进行编译,最后将工程下生成的dll库放到Flowmaster的安装目录下,完成元件模型的创建。

完成代码模型的创建后,进行元件创建,如图11所示。选择上述创建的元件模型,在为上述的元件模型选择合适的图标,如图12所示。

2 联合仿真实现

根据本文方法设置的AMESim与Simulink,Flowmaster联合接口,可实现以AMESim为主平台的Simulink,Flowmaster联合仿真平台。

该方案的核心是用Simulink平台设计更好的控制算法,用Flowamster平台实现系统的流体模块,通过AMESim平台实现系统主体模块。当研究的问题侧重于系统本身的性能时,可调用预先设计的控制算法和系统流体模型,在AMESim平台上修改系统模型和结构参数对系统性能进行优化。这既充分利用了每个软件平台的优势,又简化了大型复杂系统的设计,使设计人员更专注于系统本身的设计和研究。

某电液伺服系统预先设计的控制策略和流体模型如图13(a)、(b)所示。其中:前者为在Simulink平台中设计的PID控制算法;后者为在Flowmaster平台中实现简化的负载模型。在AMESim中设计的系统的主体模块(伺服系统)如图13(c)所示,可通过修改元件参数优化系统的性能[11]。另外,在图13(c)中增加了一个输入端,由1中constant元件输出数据提供,这样就可在AMESim平台上修改控制模块的多个内部参数和变量。由此,实现了该电液伺服系统的AMESim,Simulink,Flowmaster三个平台的联合仿真。

3 结束语

对航天领域中控制、液压、机械和电气一体化的大型复杂系统,本文提出了基于AMESim主平台的Simulink/Flowmaster联合仿真技术。这种联合仿真技术主要是以AMESim为主平台,通过AMES-im与Simulink的接口实现对Simulink中控制算法模块的调用,以及利用AMESim,Flowmaster平台提供的二次开发功能,通过读写数据文件实现数据通信,完成联合仿真。这种联合仿真技术不仅可用于本文使用的三个软件间的联合仿真,而且能与本文使用的三个软件类似的平台进行联合(可根据需要增加库中功能函数及转换对应语言版本),比如FLUENT等平台。

[1] FU Yong-ling,FAN Dian-liang,QI Hai-tao,et al.The application of co-simulation based on AMESim and Matlab in electro-hydraulic servo system[C]//2011International Conference on Electronic and Mechanical Engineering and Information Technology(EMEIT).Harbin:[s.n.],2011:3547-3550.

[2] FERRERSUAY M,SELFA J,PUJADEVILLAR J.Optimization of the control strategy for EHA-VPVM system[C]//2011International Conference on Electronic and Mechanical Engineering and Information Technology(EMEIT).Harbin:[s.n.],2011:1856-1859.

[3] ZHANG D X,ZENG X h,WANG P Y,et al.Cosimulation with AMESim and MATLAB for differential dynamic coupling of hybrid electric vehicle[C]//Intelligent Vehicles Symposium 2009.Xi’an:IEEE,2009:761-765.

[4] MOFFAT J,FARID M,DAVIES M.The use of cosimulation to predict vehicle and engine warm-up temperature transients[C]//6th Vehicle Thermal Man-agement Systems Conference:[S.l.]:[s.n.],2003:763-775.

[5] 鲁金直.异构仿真系统联合仿真技术研究及在航空领域的应用[D].武汉:华中科技大学,2013.

[6] LI Yi-jun,WU Yong-liang,LI Xin,et el.Simulation and optimization of electro-hydraulic position servo system based on the AMESim/Matlab[C]//2013 Fifth International Conference on Computational and Information Sciences(ICCIS).Shiyang:[s.n.],2013:1792-1795.

[7] 罗玉华.飞机座舱温度控制方法研究[D].南京:南京航空航天大学,2013.

[8] STEINKELLNER S,ANDERSSON H.Modeling and simulation of Saab Gripen’s vehicle systems[C]//Modeling and Simulation Technologies Conference.Chicago:[s.n.],2009:1-15.

[9] REN Guo-zhe,LIU Zhen-xia,ZHU Peng-fei,et al.Simulation platform on flow and heat transfer of aeroengine secondary air system[C]//International Conference on Intelligent Systems Research and Mechatronics Engineering.Zhengzhou:[s.n.],2015:2230-2235.

[10] 赵中奇,闫炳雷,杨文林,等.基于AMESim、Simulink与RecurDyn的掘进机截割部回转机构建模与联合仿真[J].煤矿机械,2012,33(5):48-50.

[11] GUO D,XU X.Application of active disturbance rejection control technology to extraneous force elimination[C]//2014 33rd Chinese Control Conference(CCC).Nanjing:[s.n.],2014:8102-8106.

United Simulation System of Simulink/Flowmaster on AMESim Main Platform

ZHOU Wen-zhang1,2,ZHANG Xin-bin3,4,XIAN Ya-ping3,4,CHEN Yong1,2
(1.School of Energy Science and Engineering,University of Electronic Science and Technology of China,Chengdu 611731,Sichuan,China;2.Institute of Electric Vehicle Driving System and Safety Technology,University of Electronic Science and Technology of China,Chengdu 611731,Sichuan,China;3.Shanghai Servo System Engineering and Technological R&D Center,Shanghai 201109,China;4.Shanghai Institute of Spaceflight Control Technology,Shanghai 201109,China)

To realize simulation more simply using AMESim,Simulink,Flowmaster platforms,a united simulation system of simulink/flowmaster on AMESim main platform was proposed.The united simulation among AMESim,Simulink and Flowmaster platforms was realized by using AMESim call Simulink model interface and AMESim/Flowmaster affording a secondary development function.First,the communication between AEESim and Simulink platforms was established.The Simulink module was used as AMEsim call module through the interface between two platforms.Then the connection of AMESim/Flowmaster was set up.Because there was no direct interface between the two platforms,the data communication of the two platforms was realized by read and write data base through the secondary development function of the two platforms.The function base relative to the communication with the read and write data base shall be developed in advance.Last,respective modules of the three platforms were established to realize the united simulation.An example case showed that the united simulation system was feasible.The strategy can be used in the united simulation among other platforms similar to these three platforms.

united simulation;AMESim main platform;Simulink platform;Flowmaster platform;interface;secondary development;component model

TP311.52

A

10.19328/j.cnki.1006-1630.2017.01.020

1006-1630(2017)01-0121-06

2016-06-06;

2016-07-12

四川省科技支撑项目资助(2013GZ0054,2013GZX0152);上海航天科技创新基金资助(SAST2015080)

周文璋(1993—),男,硕士生,主要研究方向为信息处理和联合仿真技术。

猜你喜欢
调用仿真技术二次开发
AutoCAD 与PDMS 二次开发在三维复杂形体设计建模上的应用
基于虚拟仿真技术的外部绕机检查系统设计研究
民用飞机襟翼交联机构吸能仿真技术研究
例谈对高中数学教材中习题的二次开发
浅谈CAD软件二次开发的方法及工具
虚拟仿真技术支持情景构建
系统虚拟化环境下客户机系统调用信息捕获与分析①
例谈课本习题的“二次开发”
AMESim仿真技术在汽车空调制冷系统中的应用
基于属性数据的系统调用过滤方法