基于TDL的测试系统可视化对象模型构建技术
2023-06-02胡国星高帅华
胡国星,高帅华
(中国飞行试验研究院,西安 710089)
0 引言
我国拥有丰富的武器装备试验场资源,主要分属空军、海军、陆军三军种以及兵器、航空、航天等行业,各试验场地理位置分隔,由西部新疆到东部沿海地理跨度很大,在大型地面设施上存在重复建设问题,并且各个试验场根据各自的试验目的建设,互相之间相对独立,使得大量昂贵的武器装备试验场资源利用率不高。
随着航空武器装备试验测试需求越来越高,试验场内的独立测试系统,具备不同测试类型或者接口的传感器、网络系统、硬件和软件。未来的试验与训练中需要集成多个试验场的测试资源来进行联合试验测试,单一的试验场地由于空间范围的局限、试验测试资源的局限,难以满足新型装备的全面实战考核,需要通过跨区域多试验场地联合试验来实现在更大空间范围、更全面试验参数、接近实战的场景下进行新型装备的全面考核。因此,需要对分布在不同试验场内的测试资源进行统一部署、规划和调用。目前,由于测试系统分布在各试验场内,设备状态、接口、通讯协议存在差异,因此需要建立一种统一的联合试验测试技术体系架构,通过中间件对各试验场内的测试资源进行统一调配,实现不同场地的资源共享、数据共享和联合动态调度,提升现有试飞资源的使用效率。
随着数字化建模技术的发展,虚拟测试技术越来越多的被应用在更前沿的试验科目中,其能够降低前期试验测试的技术风险,并节约开发成本,提升试验测试方案的成熟度,缩短试验周期。
对象建模是联合试验体系构建的基本技术,在联合试验体系中,需要建立各种测试系统交换信息的计算机智能理解的“公共语言”,实现试验体系内、系统间的语义互操作。同时,在联合试验体系中,各种试验平台、试验专用装备、试验数据信息、试验设施等试验资源要素,需要用对象模型抽象出来,并用实例对象的参数化模型表示出来,便于试验体系运行控制与资源调度。
本文针对多区域联合测试的需求,对试飞测试系统内的测试资源进行分析,采用组件化建模技术对其接口、通讯、功能进行数字化建模,提供面向测试系统的各种功能部件的组件化建模、模型组装、组件调度等功能,增强模型的重用性、可移植性、可组合性,方便对象实体模型能够按照其功能部件进行拆分、组合、替换和重用,提高建模效率,为联合试验测试技术体系架构的构建和验证奠定理论基础。
1 试验资源设备对象模型组件构建
1.1 测试系统对象模型组件的构建过程
所有的试验信息系统、试验应用系统、试验专用装备和试验设施等均成为试验系统对象,必须有一个试验系统对象模型(TSOM)来包含对所有试验系统对象的定义,试验系统对象模型可以在所有系统资源应用中差生和利用。试验系统对象模型是由那些对象的定义所组成的,不管这些对象起源于何处,都是在一个特定逻辑范围执行,以满足特定用户对特定范围任务的即时要求。试验系统对象模型在试验体系及试验系统内,是所有资源应用成员或子系统共享的普通对象模型。试验系统对象模型采用IDL及XML方式进行描述,存储于资源仓库中。
在武器装备试验鉴定领域,试验规则和测控规则,以及试验资源、试验设施和测控同行行为是一类重要的试验资源,构成了一族于作战模拟相对应、相耦合和相交互的模型体系。模型功能是模拟参试装备、配试装备的行为过程和交互过程,模拟试验系统工作流程,以及试验过程中作战装备于参试装备的交互。在仿真模拟过程中,产生各种仿真实体的状态数据、探测数据、事件数据、目标属性变化、任务情况以及通信状态、毁伤裁决等其他数据。
试验对象是用于作战及辅助作战的武器装备实体,实体可视为由平台、通信、武器、运动、探测、行为等功能组件组成。探测组件担负作战实体的探测任务,包括各种卫星载荷,如雷达、可见光、红外等类型。运动组件完成作战实体的空间移动,包括卫星轨道运行、空中飞机运动、地面车辆运动、水面舰船运动、水下鱼类航行等。武器组件完成实体间的交战,包括各类软毁伤和硬毁伤。通信组件担负不同作战实体间的通信,主要传输不同实体探测的目标信息和作战命令。行为组件包括运动行为、指挥行为以及各种行动动作(含爆炸)等,这是一个相当庞大的群体类别。实体模型根据计划指定的目标、实体探测的目标和指令分配的目标,形成该实体的本地目标列表,根据接收到的作战命令和计划命令组成作战实体需要执行的命令列表,并能够按照不同的作战势态进行战术决策。行为模型根据战场势态、命令列表按照一定的规则指挥下属作战和控制自身的作战行为,这些作战行为可以改变作战实体的状态,产生新的作战命令或取消、延迟作战命令等。由此可见,通信、目标和命令处理过程表示了实体在信息域的主要活动;探测、机动和武器交战过程表示了实体在物力域的主要活动;作战行为决策表示了认知域的活动过程。
联合试验测试系统按照作战方式和流程进行试验测试,从而决定了测试试验仿真的过程必须符合作战模拟测试过程。按照测试规模,作战模拟可分为格斗模拟、战斗模拟、战术模拟、战役模拟、战争模拟几个层次和级别,根据研究目的的不同和作战想定的不同要求,可选择不同的模拟规模。格斗模型是一种微观模拟,主要模拟双方基本作战单元之间一对一的交战活动,所用的模型粒度较细,模型主要描述影响武器装备作战能力的主要战技特性和战术特性,对于评估作战单元及武器装备的系统效能和作战效能比较有利。战役和战争模拟活动主要用于支持作战理论、装备体系论证、战争后勤保障、战争影响和战争宣传等方面的研究,是国防高端决策的辅助支持。战斗模拟是中型粒度模型的作战模拟,主要描述双方多个作战单元之间(一对多或多对一)或者作战编队之间(多对多)进行交战活动。在地面战斗中,有分队模型(最单元是连、营级)、师团模型;在空战和海战中,有空、海编队模型。由于战斗规模的加大,战斗模型不再突出详细描述武器装备的技术特性(除非特别关注),但战术特性和战术运用特性的描述还是比较突出的,是受到特别关注。所以,战斗模拟实际上是提供了一种红蓝装备体系对抗的环境条件,及模拟战场环境条件并包含了复杂电磁环境条件,比较适合对装备体系互联互通互操作能力、体系集成度、体系效能及作战效能进行评估。同时也可以考查和评估,在体系对抗或复杂电磁环境条件下,被试单个武器装备系统对体系的贡献度及效能贡献度。
交互的模型体系形成模型族,模型族是试验体系仿真必须解决的突出问题。为此,可运用成熟的作战仿真系统,在此基础上适应性改造与增加仿真对象模型模板,解决作战仿真系统中武器装备模型不能与测控系统进行信息交互的问题。因为利用了成熟模型模板,可以让从事作战试验研究的人员,用更多的精力和时间来关注装备作战试验问题,而用较少的精力来关注于研究作战规则问题,以及作战规则的建模问题。系统按照实体、指挥机构、各类分系统(武器、通信、传感器、干扰、数据融合等)、交互表和计划表等进行分类建模,并按照系级、平台/系统级、单个装备级和组件/部件级等4级,进行装配组合形成所需要的仿真试验对象。联合试验模型树如图1所示。
图1 联合试验对象模型树
联合试验对象模型树的生成手段是组件化建模技术。组件化建模技术能够提供面向对象的各种功能部件的组件化建模、模型组装、组件调度等功能,可增强模型的重用性、可移植性、可组合型,方便对象实体模型能够按照其功能部件进行拆分、组合、替换和重用,提高建模效率。在仿真系统中,功能组件、实体模型、对象实例的关系如图2所示。
图2 功能组件、实体模型、对象实例的关系
测试系统对象模型组件的构建过程大体可以分为以下3个部分:
1)建立试验资源设备的对象模型。首先确定试验资源设备的构成部分,提取组件的抽象属性和操作方法,由编写对象模型描述文件TDL、IDL或XML,该文件经过文件解析器,进行文件的编译、目标程序语言的映射等过程,生成可视化规划平台可识别的、匹配的面向对象编程语言表示的对象类,形成对象代码层次的抽象程序代码,再经过进行相关功能代码的填充,建立可供可视化规划平台识别的功能类代码,封装成为功能类,与设备进行交互。整个过程如图3所示。
图3 试验组件设计流程
2)对象模型代码业务逻辑接口填充。试验资源设备组件结合与试验组件有关的业务逻辑,实现对组件对象的填充。再对象模型通过TDL、IDL或XML文件生成可视化规划平台可识别、匹配的对象模型类,经过功能代码的填充,可与设备进行交互。但要实现对远程设备的调用,需结合试验资源设备的相关业务逻辑进行针对性开发。对设备进行操作的功能方法体和接口需要进行必要的实现,或通过编写公共接口,并继承来实现公共方法的交互。最终实现对特定设备的操作方法的组合、填充与适配,实现试验资源组件的有效封装。
3)试验资源设备对象模型组件运用阶段。试验场试验资源设备对象模型组件依托可视化试验场规划平台,对映射在可视化试验场规划平台上的图形元素进行操作,对试验试验场进行设计与运行。这个过程需要根据试验场的实际情况情况选取所需要的可视化图形元素组件,同时根据每个组件对外提供的接口以及功能描述文档,设置试验资源设备组件运行必要的参数,连接各个组件,从而设计与规划出整个试验场的试验场景。此时无需关心可视化图形元素、试验资源设备组件、试验资源设备的内部的功能结构与通信机制,这个过程极大地简化了应用建模的复杂度,同时也有效实现了可视化试验场规划平台中各个组件的互操作性、可重用性和可组合性。
1.2 基于TDL的可视化对象模型建模技术
本文以MagicDraw为核心框架开发基于TDL的可视化建模方法,实现测试系统的可视化建模、不同类型的测试系统模型文件转化、编译、组件集成、代码自动生成等功能,其软件总体框架如图4所示。
图4 可视化建模工具的总体框架
本文通过UML建模工具进行测试系统组件化对象模型的构建,实现模型构建的可视化及UML类图和TDL代码的相互转化。其构建的对象模型,经过TDL编译器编译生成测试系统对象模型框架文件和接口框架文件。通过在模型文件中添加相关逻辑进行相应的集成与测试,实现对象模型与物理对象间的紧密连接。
创建对象模型的思路主要是利用元模型的语法规则,在可视化工具MagicDrawEclipse Modeing Framework(EMF)平台中,创建可视化UML设计图,再通过转换方法或TDL生成器,将UML类图转换为TDL文件。
MagicDraw UML通过特定语言对UML类进行功能扩展,实现相关功能的可视化表述。在Eclipse中调用MagicDraw的API库,可以实现相关功能插件的自动化创建与部署,提升模型开发效率。基于元模型MagicDraw建模工具,使其支持TDL的语法,实现建模语言UML到TDL、TDL到编程语言之间进行转换;最后需要开发MagicDraw中的代码生成插件,结合FreeMarker模板实现到程序语言代码的自动生成特定的代码。
通过MagicDraw工具开发TDL文件生成器,再通过词法分析等过程,可生成试验资源组件框架平台文件,为后续仿真平台验证使用。流程如图5所示。
图5 MagicDraw生成对象模型流程
MagicDraw可视化建模工具的实现方法和构建对象模型的主要流程如图6所示。
图6 流程图
通过配置MagicDraw中的基本类型定义、项目工程模板和类图工具等设置,实现TDL语法的支持。通过MagicDraw的插件机制对UML类图与TDL语法进行映射,定义MagicDraw插件,实现代码控制、代码生成以及代码输出等功能,最终将UML类图生成TDL文件。对于TDL代码转换成UML类图,需要对TDL进行解析,获取TDL语法基本元素,与MagicDraw中的OpenAPI画图组件对应,动态绘制UML类图。
1.3 试验资源设备对象模型组件构建设计与实现
经过对TDL文件的编译后,生成的是表示对象的相应的程序“桩代码”,仅有程序的基本结构,需要进一步填充具体逻辑业务代码,之后通过与试验场景规划平台无关的动态调用技术,生成可调用链接文件,提供给试验靶场规划平台调用,实现对测试资源的部署流程。
本文利用Eclipse框架与面向对象程序语言,根据对象模型的定义和类结构,填充对象模型的面向对象代码文件,进行对象模型的组件化封装。
试验领域中各种测试系统资源以资源模型方式接入到体系结构中。测试系统对象模型包括组件模型和系统对象模型两部分。资源封装构件就是在资源结构模型框架下,用于描述、接入、操控资源的软件工具,包含对象模型建模工具和组件模型开发工具。资源结构模型如图7所示。
图7 资源结构模型
1)资源封装基本过程:
资源封装过程分为对象模型开发和组件模型开发两部分。其中,对象模型以CORBA组件模型存在,并最终在VC编译器下生成对象模型DLL文件。
2)资源远程操作原理:
试验人员在试验规划时,试验人员的操作指令与组件对象之间通过中间件进行通讯,通过中间件实现模型与物理对象间的互操作。在联合试验虚拟测试系统中可通过对象代理实现仿真系统中的访问功能,操作过程如图8所示。
图8 操作过程
本文采用JAVA反射技术加载对象模型和构建可视化对象模型,在程序运行过程中调用任意类属性和方法,遍历利用工具类加载的对象模型组件class文件及图标,同时利用SWT框架的ToolBar组件,将class文件及图标与ToolBar组件结合起来,实现对象模型组件的可视化显示。
2 测试系统对象模型构架
在飞行试验中,包含多个测试系统,包括机载测试系统、地面光电影像测量系统、高速影像测试系统等,飞行试验地面光电影像测量系统在飞行试验测试中占有非常重要的地位。本文以飞行试验地面光电影像测量系统为例进行试验测试。
2.1 测试系统功能分析
飞行试验地面光电影像测量系统主要承担测试、监控指挥,数据实时传输处理、实时存储管理,数据融合与设备引导,数据分析和结果分析等任务。其功能模块图如图9所示。
图9 飞行试验地面光电影像测量系统
影像数据测量系统能够记录飞机在起飞、飞行、降落时的视频数据。
雷达数据采集系统能够通过雷达采集飞机起飞前,起飞过程,飞行,降落过程和降落后的雷达数据,并进行数据保存等。
环境信息采集系统能够实时测量飞机周围环境信息,对于异常信息做出预警,并保存测量到的数据传回指挥中心。
飞行器状态监测系统能够通过与北斗卫星的配合,测量飞机的航迹,包括飞机的经纬度信息、高度信息。还能够采集飞机的飞行姿态,包括飞机的迎角、倾角和方向。采集这些数据能够帮助飞行员和地面控制人员检测飞机飞行状态并及时做出调整。
2.2 飞行试验地面光电影响测量系统对象模型构建
地面光电影像测试系统的组成和功能进行分析,飞行试验地面光电影像测量系统主要由高速相机、光电经纬仪、雷达、GPS组成,系统所应具有的功能包括:
1)记录和显示飞机飞行时的航迹,主要包括其在空间中的坐标X、Y、Z,以及飞机的经纬度;
2)获取飞机的飞行状态,主要包括飞机的迎角、倾角、速度;
3)能够对雷达、经纬仪、GPS等设备进行调用,使其能够对相应的飞行器进行捕捉和测量;
4)能够提供统一的时间和空间标准,使设备和飞行器时间和空间信息同步,能够分发IRIGB码;
5)能够调用和组织高速摄像机系统对起飞、降落时的飞机进行视频信息记录;
6)能够显示当前飞机所处空间的环境信息,包括温度、湿度、气压等;
根据系统的设备组成和功能属性,测试系统的对象模型主要由高速相机、光电经纬仪、雷达、GPS等组成,对各设备进行对象模型建模,其设备模型结构如图10所示。
图10 对象模型
基于测试系统的组成和功能在MagicDraw中定义测试系统的UML类型,根据类型定义绘制其UML图。
通过MagicDraw插件开发机制,以UML图的类型定义到TDL语言的转换方法,生成TDL代码。
进行功能逻辑代码填充,再经过编译转化为.class文件,放入靶场规划平台组件库文件夹中,命名为“TestSystem1”,通过拖到可部署到虚拟逻辑靶场中进行相关操作。
3 测试系统对象模型调用及测试
对象模型组件可视化构建完成后,需要将可视化模型组件与设备进行交互试验,测试测试系统对象模型的调用,功能测试以及相互间的通讯延时测试。
为验证对象模型的部署、通讯及功能,构建了测试系统原理仿真样机和试验场运行控制平台,测试系统原理仿真样机主要模拟测试系统各设备的功能,运行控制平台来实现各设备、系统的部署以及控制功能,如图11所示。
图11 仿真原理样机及运行控制平台
通过运行控制平台打开可视化靶场规划软件,在可视化靶场规划软件左侧出现测试系统的图标,并可以拖动到可视化靶场规划软件上,进行操作,并通过软件对测试系统内的参数进行修改。结果如图12所示。
从图中可以看出,能够在试验场内进行测试系统的部署,同时也能够进行相应的功能性操作,对测试系统内的对象进行修改时,其相对应的对象模型中相应的参数也会进行响应。
同时为了验证测试系统对象模型是否具备互联互通的能力,对对象模型间的通信进行了试验测试。主要通过时延测量软件对各模型间的通讯进行监测,时延测量系统构架如图13所示。
图13 时延测量过程图
对测试系统内的各设备间的延时进行测量,以经纬仪多区域联合仿真样机、GPS系统仿真样机为例,其延迟测试结果如图14所示。其通讯延迟小于150 ms,系统构建的对象模型之间通讯效果良好,具备互联互通的功能,能够真实的模拟物理测试系统之间的通讯功能。
图14 GPS、经纬仪仿真样机时延测量监测
4 结束语
本文通过对组件化对象模型构建技术的研究,对多区域联合试验中的测试系统进行了对象模型构建,实现了组件化的对象模型构建,并对对象模型进行了可视化,实现了联合试验中对测试系统对象模型的可视化动态调用,为后续多区域联合测试系统构架的设计提供了技术基础。