论文部分内容阅读
随着船舶工业的不断发展,电力推进以其诸多的优越性已成为船舶推进方式的重要发展方向,船舶电力推进系统的仿真已经日益成为各国研究的对象。迄今为止,绝大多数仿真软件都只能独立使用,不能实现互操作和重用,因此每开发一种仿真软件就会耗费很大的人力物力和时间,而且不利于维护。高层体系结构(High Level Architecture,HLA)是新一代分布式交互仿真(DIS)体系结构,为分布式仿真系统提供了一个通用的技术框架,其显著特点是可以提供各种仿真应用都可以用的、相对独立的服务程序,因此可以在利用网络进行大型联合仿真时,将仿真应用之间的通信、仿真功能以及仿真进程控制三者相分离,隐蔽其各自的细节,从而可以使开发者进行相对独立地开发,对各自领域的最新技术实现最大程度的利用,其根本目的是提高不同类型仿真应用的互操作性和仿真资源的可重用性。本文将高层体系结构技术应用于船舶电力推进系统的仿真中,将各项仿真任务分布到不同网络节点计算机上,实现了基于HLA的船舶电力推进系统的分布式仿真。本文在归纳总结船舶电力推进系统的基本原理和数学模型的基础上,经过对模型的简化,结合应用仿真软件Simulink搭建了船舶电力推进系统仿真模型,然后将船舶电力推进系统按分布式仿真分割成三个联邦成员仿真模型,分别为原动机及其调速系统仿真模型、由发电机及其励磁系统和推进电机组成的仿真模型、螺旋桨仿真模型。通过讨论及对比几种将Simulink模型改造成HLA联邦成员方法的优缺点后,决定采取用由MARLAB自带的模型实时代码生成工具RTW将上述三个联邦成员的Simulink模型转为C++代码,然后经过对Simulink模型和HLA时间运行框架比较以后,对生成的Simulink模型代码进行分析及局部修改使之符合HLA规则,对模型代码的修改分为两方面:一方面是对原模型的运行时间框架的修改,实现方法是构造一个仿真管理类SimulinkManager类,把main()函数去掉,将其内容拆分成模型初始化(MdlStart()),模型步长推进(MdlOutput(), MdlUpdate(), MdlDerivatives()循环),模型终止(MdlTerminate())三部分,并将这三部分功能分别封装到SimulinkManager类的几个成员函数中,另一方面是对原模型代码中与外界通信部分的修改,实现方法是构造若干个仿真模型类,将仿真模型类的某个属性与模型的某个输入或输出对应地相连接。通过这两方面的修改,即可以将Simulink模型改造成可基于HLA进行分布式仿真的联邦成员,最终实现船舶电力推进系统的分布式交互仿真。最后,将开发的联邦成员在pRTI1516软件平台上进行仿真,对原动机的输出功率、发电机的转速、推进电机的转速以及螺旋桨的阻力扭矩进行仿真实验并得出和分析了仿真结果。充分地体现了 HLA技术在船舶电力推进系统仿真中的可行性。