基于组件的鱼雷武器建模与仿真

2011-08-20 08:41康凤举张亚雄郑卉凌
舰船科学技术 2011年8期
关键词:状态机概念模型鱼雷

刘 雄,张 绳,康凤举,张亚雄,郑卉凌

(1.武汉第二船舶设计研究所,湖北 武汉 430064;2.西北工业大学 航海学院,陕西 西安 710072)

0 引言

鱼雷武器仿真系统涉及声学、光学、工程数学、计算机、电子工程、机械等多学科和领域。若用高级仿真语言开发鱼雷武器系统一体化仿真软件包[2]往往需要较长的时间,其侧重点在于仿真试验,建模缺乏规范化和重用性。而且整个系统中的各个子系统之间存在着密不可分的联系,因而当对其中的1个或多个子系统进行扩展或修改时,其他的子系统也必受到影响而需做出较大的变化,这就会使开发、设计和测试工作变得相当繁琐。所以需要寻找新的设计方法,使搭建的系统具有良好的可复用性和扩展性,组件技术为此提供了一个很好的解决方案。

组件技术的出现主要源于程序设计技术,是继OOP(面向对象编程)之后的一项优秀的编程模型[4]。与传统的软件开发不同,在基于组件对象的软件工程中更注重组件的规划、设计与开发,可以使复杂领域内的建模工作变得规范化和具有良好的重用性。

COSIM(协同仿真平台)是典型的面向组件/服务的建模技术[5],支持异地建模、分布仿真,支持不同仿真工具之间的互操作,解决复杂系统的建模与仿真问题。

本文研究了典型的基于组件的建模技术COSIM中的鱼雷武器系统的建模,完成了鱼雷武器系统可重用模块化模型设计,建立了不同层次上可重用的鱼雷武器系统模型,给出了典型仿真实例,所构建的仿真系统已得到应用验证。

1 COSIM环境下系统建模

COSIM主要支持分布、异构模型之间的分布/协同仿真,同时提供一个开放的、可扩展的、基于标准的(WEB、CORBA、HLA/RTI)仿真集成框架和几个可灵活组装的、支持复杂系统建模与仿真运行的COSIM仿真部件[4]。其主要特点在于:集开发环境和运行环境于一体,集成了各类已有的仿真工具,可方便快捷地开发各类模型,系统具有开放性、可扩展性和灵活性。

COSIM将开发环境、资源库和运行环境进行了分离,使平台易于扩展。建模环境基于统一的对象模型接口定义支持复杂系统异构层次化建模方法。通过对复杂系统的分析,建立复杂系统的组成模型,对其不同子模型分别采用其各自领域的当前流行工具来开发,构造出复杂系统的混合异构层次化模型。资源库支持运行支撑平台对数据、模型、文档的存储和查询;支持对标准组件模型的管理和组装,使用户可以轻松的构造复杂仿真系统。运行环境提供仿真运行管理、仿真时间管理和仿真数据管理,是HLA的联邦管理服务的应用。主要用来实现分布交互仿真系统运行过程及状态的监控,包括冻结/解冻、同步、暂停、单步运行、断点运行、仿真速度管理、运行进程管理等。

1.1 鱼雷武器系统高层建模

COSIM下的高层建模指在复杂系统的系统层次上描述系统的行为和结构,或实现系统行为的各子系统的接口、行为及子系统间相互依赖关系的建模技术。平台采用了可视化图形建模技术,从仿真系统的组成结构和动态行为2个方面描述仿真系统。按照建模粒度的大小,将静态结构模型分为3类:元素模型、组件模型和成员模型,动态行为模型主要是指状态机模型。

高层建模把静态结构与动态行为的设计分开,静态结构的建模主要包括元素、组件、成员以及他们相互连接关系。元素是最小的单位,组件是元素的组合,同时也能包含子组件,即支持组件本身的复合。成员由组件和元素组成,并通过COSIM的映射机制与RTI通讯。元素和组件有SOM支持,以增强它们的重用性。

按照鱼雷武器的特点,将鱼雷武器成员划分为若干元素和组件。其一级组件有4个:界面显示模块、接口模块、实体解算模块1和实体解算模块2。界面显示模块主要实时显示鱼雷状态,含三方面的实体曲线显示:水平面曲线显示、垂直面曲线显示和鱼雷姿态角显示,同时显示各实体的位置信息、鱼雷的行为特性、鱼雷的预设定信息,若为线导鱼雷,还实时显示武器发控仿真台发送的线导遥控指令数据。接口模块含2个元素子模块:成员接口模块和数据库接口模块,成员接口模块接收鱼雷载体的配置信息,当实体解算模块接收到武器发控仿真台发来的出管信息后,根据配置信息,从数据库模块中读取相应的性能参数,启动第k个实体解算模块进行解算。因为1个鱼雷联邦成员需要模拟多条鱼雷,所以成员中含多个结构相同的鱼雷实体解算模块。鱼雷实体解算模块中的功能模块的划分充分考虑了模型的重用性和扩展性,含动力系统模块、自导系统模块、弹道解算模块等。其中的弹道解算模块为组件,含入水管制弹道模块、初始弹道模块等,对于后期开发者或维护者来说,如果想用新的模块代替原有的模块,只需要对新模块进行开发和测试即可,而不需去了解其他模块的实现细节,从而大大的提高了效率。

动态行为建模的任务就是定义并描述系统结构元素的动态特性及行为。换句话说,要在时间域描述交互信息的发生过程,描述各结构元素对各交互信息的反应。高层建模采用活动图或状态图加相应的引擎调度机制来反映时间域交互信息的发生过程和对象系统的行为。高层建模中的动态行为建模主要包括状态图建模和活动图建模2个视图。在动态行为建模中,将对象或交互在响应事件过程中所经历的一系列活动定义为状态机。动态行为模型由系统功能子模块来完成,它强调的是子模块之间的协作。在模块工作时,模块外部环境在不断地变化,每个子模块都在运行,不断改变着自己的状态,表现出自己的行为,总体上则构成系统或模块的行为。在仿真运行中,通过状态机对功能子模块进行调度,由“状态”或者“转换”来触发对相应模型行为的调度。

鱼雷成员的状态图含多层结构,状态图中的某一状态可含有子状态,其第一层状态机称为联邦管理状态机,如图1所示。

该状态机中含有4个状态。非联邦状态时鱼雷成员启动,但是尚未加入联邦。联邦状态时鱼雷成员接收到转换事件后加入联邦。待命状态时鱼雷成员加入联邦后,等待其他联邦成员加入联邦。仿真任务状态时收到鱼雷出管指令,鱼雷实体开始解算。在仿真任务子状态机中,鱼雷成员的工作过程为:在1个仿真步长内,HLAPort接收外部成员公布的数据,通过接口模块(IM)处理后发给相应的模块,各内部模块进行独立解算,所有模块解算完毕后,将解算结果传给HLAPort,由HLAPort负责向外公布,同时向运行管理器提出时间推进请求。

图1 联邦管理状态机Fig.1 State machine of federation management

1.2 模型概念推演

基于组件技术的概念模型推演方法,从全生命周期的观点看待概念模型,将概念模型分为面向领域的概念模型和面向设计的概念模型,基于组件技术的概念模型规范主要应用于面向设计的概念模型[4]。COSIM概念推演器应用行为建模技术建立了“基于组件技术的模型规范”。该规范的形式化表达为:

在鱼雷武器系统中,根据高层建模生成各个模块的EED文件。该文件含模块的输入输出端口的描述,并生成反映模块调度逻辑关系的CED文件。使用COSIM的概念推演器可对目标系统进行概念推演,推演时需要引擎视图、引擎控制窗口和系统运行信息窗口三者配合完成,在推演时,系统用不同的颜色来标识验证中的模块。在开发过程中,当实现了1个功能模块后,用该模块替换概念模型中的相应模块,可以实现鱼雷武器系统的概念模型“无缝”的过渡到真实模型,从而减少开发的工作量。

1.3 代码生成

COSIM环境中,封装了1套工具来实现功能模块代码的快速自动生成,如成员自动生成工具、元素自动生成工具等。元素自动生成基于COM组件技术,将元素封装成1个COM组件,提供1个统一的对外接口,根据用户确定组件的端口(Ports)个数和内容、实现元素功能体需要的各类参数和初始化参数自动生成元素的框架,元素框架含元素运行时需要的各支撑类。元素框架自动生成后,用户可根据该元素要实现的功能和算法结构,在相应位置编写实现代码。元素有1个主要的功能函数,该函数也是COM组件对外的接口。

端口用于建立与其他元素、组件等的接口连接关系。功能实现体由元素的功能主函数和1个或多个其他自定义函数实现,用户可以在主函数之外根据需要封装各种类,由于功能主函数是元素对外统一的接口,即所有的元素对外提供服务的API函数名称和参数都是一样的,这样给用户调用带来极大的方便。元素完成的具体功能由用户在VC集成开发环境中指定的位置手工添加元素的功能、行为实现体并完成调试。

端口的数据服务类型有初始化参数、输入参数和输出参数3类,每一类服务类型含数据和事件2种服务方式。元素的端口含有多个端口项,每个端口项对应1种简单的数据类型,在元素之间进行数据传送时,可以将1个端口的端口项对应于另1个元素中的相应端口的端口项,使整个开发过程变的更为直观。如鱼雷实体解算模块1中的红方鱼雷的位置信息端口有如下端口项:时间代码、实体代号、鱼雷型号、横坐标、纵坐标、深度、航速和航向。由于位置信息要实时在界面中显示,所以界面显示模块中也同样含有该端口,且端口项一一对应。在连接2个元素的对应端口时,可以实现同端口项的连接,在界面显示模块中,可以直接取自己端口项对应的变量进行解算,而不需要另做处理。

2 仿真应用实例

当目标系统通过概念推演后,用代码的自动生成工具实现各个模块的功能,然后用真实的模型代替概念模型,可以较快的实现过渡。在鱼雷武器系统中,红方艇在航行过程中发现水面目标,目标决策仿真台决策出攻击方案,用线导+尾流鱼雷攻击目标。在仿真过程中,鱼雷仿真台接收到武器控制仿真台发送的出管指令后,向导演台发送出管的行为特性,同时根据接收到的鱼雷配置信息,在数据库中读取相应的参数。鱼雷出管后,每当仿真推进一步,就接收1次控制台发送的线导指令,同时反馈鱼雷的遥测信息。当接收到尾流开机指令后,启动尾流解算模块进行解算。整个仿真过程的实体航迹如图2所示,最后鱼雷击中目标,该次仿真结束。

图2 实体航迹图Fig.2 Entity tracking map

3 结语

COSIM是典型的面向组件/服务的建模技术,它提供了图形化、模块化的建模功能,模块的功能实现具有统一的对外接口,模块重用方便。本文研究了鱼雷武器系统在该平台下的建模过程——静态建模,动态建模,然后对所建模型进行概念推演,最后用真实模型去代替概念模型,实现了模型的“无缝”过渡。

整个建模过程直观快捷,所建的鱼雷武器系统模型具有易扩展和重用性好的优点。通过仿真应用实例,验证了所建鱼雷武器系统模型的正确性。

[1]康凤举.现代仿真技术与应用[M].北京:国防工业出版社,2006.

[2]李皓,康凤举,潘勇军.水下航行器仿真软件包设计[J].系统仿真学报,2002,14(8):1003 -1005.LI Hao,KANG Feng-ju,PAN Yong-jun.Design of the simulation software for underwater vehicle[J].Journal of System Simulation,2002,14(8):1003 -1005.

[3]徐德民.鱼雷自动控制系统(第二版)[M].西安:西北工业大学出版社,2001.

[4]邱彦强,柴旭东,李伯虎,等.面向复杂产品设计的基于组件的概念模型技术研究[A].全球化制造高级论坛暨21世纪仿真技术研讨会论文集[C],2004.170-175.QIU Yan-qiang,CHAI Xu-dong,LI Bo-hu,et al.Study on complex product design oriented concept model technology based on component technology[A].Proceedings of the SymposiumonGlobalManufacturing&Simulation Technology of the 21stCentury[C],2004.170 -175.

[5]李伯虎,柴旭东,朱文海,等.现代建模与仿真技术发展中的几个焦点[A].全球化制造高级论坛暨21世纪仿真技术研讨会论文集[C],2004.1-8.LI Bo-hu,CHAI Xu-dong,ZHU Wen-hai,et al.Some focusing points in development of modern modeling and simulation technology[A].Proceedings of the Symposium on Global Manufacturing and Simulation Technology of the 21stCentury[C],2004.1 -8.

[6]王江云,王行仁,柴旭东.协同仿真运行管理平台研究与实现[J].系统仿真学报,2002,14(5):584 -587.WANG Jiang-yun,WANG Xing-ren,CHAIXu-dong.Research and implementation of COSIM run-time management platform[J].Journal of System Simulation,2002,14(5):584 -587.

[7]KOBRYN C.Modeling components and frameworks with UML[J].Communication of the ACM,2000,43(10):31-38.

猜你喜欢
状态机概念模型鱼雷
军事岛 鱼雷人
网络服装虚拟体验的概念模型及其量表开发
FPGA状态机综合可靠性探究 ①
鱼雷也疯狂
基于有限状态机的交会对接飞行任务规划方法
基于Spring StateMachine的有限状态机应用研究
基于“认知提升”的体系作战指挥概念模型及装备发展需求
商业模式创新与企业竞争优势间的内在机理分析
某高校团委信息管理系统构建研究
小鱼雷也有大作用