APP下载

基于组件化的多源情报集中显控软件的研究实现∗

2018-03-23嵇亮亮孙海军

舰船电子工程 2018年2期
关键词:态势情报组件

叶 玲 嵇亮亮 孙海军

(中国电子科技集团公司第二十八研究所 南京 210000)

1 引言

预警探测系统作为近年来新晋领域,主要应用传感等技术手段,对相应的目标进行定位和识别[1],肩负着综合多源情报、提供综合保障能力的职责。多源预警探测系统组成结构复杂,接入传感器众多、交互复杂频繁[2],为灵活的适应系统复杂多变的显示交互需求,需要利用单个集中显示终端实现对多部情报源信息的综合接入显示,并提供各传感器的集中远程操控和值班能力。多源情报集中显控软件是值班员与系统直接交互的平台,在整个战场态势监测中起着至关重要的作用[3]。鉴于传统专用开发模式所带来的开发周期长、效率低下、维护困难等问题日益突出,无法满足情报保障系统发展的需要。为了有效地解决传统专用开发模式的缺陷,考虑借鉴组件化设计思想[4],设计一种具有通用性、灵活性、稳定性的集中显控软件框架[5],并从系统业务出发进行共性提取、统一设计,将业务细化为具有标准接口统一载体的组件集,进行组件化的多源情报集中显控软件的设计实现,从而提高开发效率,并最终提高整个系统的互联、互通、互操作能力。

2 多源动态部署设计

2.1 多源传感器与集中显控

多源情报集中显控软件不同于以往一个显示软件对应一个传感器的显示控制方式,一个或多个集中显控台位构成了多源预警探测系统的显示控制部分。每个集中显控台位部署一个集中显控软件,集中显控可以结合台位分配,与前端多个传感器任意搭配,建立一对多、多对多的动态部署能力。部署关系的建立过程采用动态可配的方式实现,通过配置文件决定各集中显控的接入控制能力。如图1所示,为动态部署能力示意图,按照传感器分类,将多个传感器按类接入不同集中显控软件进行管理,实现集中显控对传感器的一对多及多对多的关系。

2.2 集中显控内部多源设计

集中显控软件内部设计时,应当确保在快速有效地接入情报基础上,进行友好的人机交互设计,将获取的目标信息以有效、直观的方式呈现给观察者,并提供便捷精准的命令操作方式。因此以快速全面的提供信息和便捷操控为原则,设计为左右双屏模式,左屏以显示控制多源情报为主,右屏以综合信息及传感器操控为主的人机交互形式。这种设计有助于用户观测系统所有信息的同时,兼顾各传感器的切换。并提供将右屏设计为第二个左屏的能力,实现同时对两部传感器进行显示控制,其切换示意如图2所示。

3 组件化设计技术

组件化技术就是利用某种编程手段,将一些人们所关心的,但又不便于让最终用户去直接操作的细节进行了封装,同时对各种业务逻辑规则进行了实现,而这个封装体常被称为组件[6]。组件的主要特点是:语言无关性、高内聚低耦合、即插即用、能够进行二次封装开发、位置透明等等[7]。

3.1 组件

组件是一种封装手段[8]。是利用某种编程手段,将人们所关注的却又不便于让最终用户直接操作的细节进行了封装,同时对各种业务逻辑规则进行了实现,用于处理用户的内部操作细节。

3.2 组件接口

在组件设计中,接口是最为重要的概念,接口描述了组件对外提供的服务,外界和组件所有的交互都通过接口实现。组件一旦发布,它只能通过预先定义的接口来提供合理的、一致的服务。每个组件都是自主独立的,当一个组件需要提供新的服务时,可以通过增加新的接口来实现,不会影响原接口已存在的客户,而新的客户可以选择新的接口来获得服务[7]。因此优秀的接口设计可以方便的实现组件的包容以及聚合。

3.3 组件化设计模式

组件化设计模式是当前软件设计中普遍采用的一种设计模式,其继承并发展了面向对象的程序设计方法,把对象技术应用于系统设计,对面向对象的程序设计的实现过程作了进一步的抽象。组件化设计模式通过应用组件化技术,用类似搭积木的方式实现程序的组装或者重构,可以缩短开发周期、提高开发效率、增强程序稳定性[9]。

组件化设计模式不同于传统软件设计模式,在设计流程中对功能进行划分,形成独立组件,在单个组件通过测试后进行组件集成,有效提高了软件的可靠性。

3.4 组件实现

在组件实现过程中,应该注重组件的收集,尽量利用或者修改以前编制的在功能上比较类似的组件,节省了开发资源,同时也可以大大提升开发效率,缩短开发时间。

4 多源情报集中显控组件化设计

多源情报集中显控软件作为操作员与系统进行交互的直接平台,在整个战场态势监测中起着至关重要的作用[3]。软件需实现多源目标干预、态势显示、人机交互、雷达操控、对外通讯等多项任务,且应当满足可动态部署的需求,实现台位与前端情报源间多对多的动态组合,结合预警探测系统军事需求及今后的业务多样化发展,多源集中显控软件的组件化设计在现有业务基础上进行共性提取、统一设计,从而具有良好的拓展性和包容性。

4.1 软件层次划分

多源集中显控软件的组件化设计遵循组件化设计基本原则,对软件业务进行分层归纳、共性提取,形成领域特有的组件类型和组件库。通过对软件的功能需求分析,将软件划分为几个独立的层次,各软件层次之间界限明确、接口完整一致、并且向下依赖。软件层次的划分有利于将大而复杂的问题分解为小而易解的问题,软件的层次划分如图3所示。

支撑层:主要立足于构建基础能力,提供网络通信、串口通信、坐标计算、绘图显示、渲染等方面的支撑。该层将各类支撑细节屏蔽,为业务组件层提供数据访问服务和显示渲染服务,使业务组件层专注于组件本身业务逻辑的实现;

数据管理服务层:用于管理各种输入输出数据,含网络、共享内存、文件、内存指针等,同时建立数据分发管理机制,作为支撑层和上层之间的纽带,是集中显控运维的核心;

组件集成框架:用于管理所有组件的加载、卸载以及激活、停用,在此基础上形成软件基本框架。该层可根据显控软件业务需求的变化进行组件的动态重组;

业务层:构成集中显控的应用组合,将业务进行共性提取后,划分为一系列组件,也可以根据用户需要进行组件定制。所有组件由组件集成框架集成,即插即用;

应用层:与多源集中显控实际应用紧密结合,通过业务应用动态组合,形成各传感器单独的值班应用,以及多源综合的显示控制,最终满足多源集中显控需求。

4.2 软件组件设计

组件化多源集中显控软件设计的一个关键技术是组件设计,在对构成显控软件的组件进行设计的过程中,需要抽象组件的属性及方法,形成共性的组件接口,并定义统一的数据交互格式,通过制定专有的统一化组件接口,对组成显控软件的各组件进行约束,最终形成显控软件的统一加载和调度。组件设计主要包括以下几个步骤。

确定组件定义:将构成显控软件的组件的属性及方法解析综合起来,形成基础组件,并依据组件在软件中所处的层次及功能类别,由基础组件派生形成态势显示及应用组件,另外,可以根据系统的不同进行个别组件的调整,组件定义如图4所示。

4.3 多源情报集中显控软件组件实现

显控软件组件的功能需求、数据交互格式确定后,就可以为组件选择合适的实现载体,软件选择动态链接库,有较好的独立性,方便显控框架快速调用。同时,为了方便开发,利用常用的开发工具定制了组件生成向导,为显控软件组件制定了统一模板[10]。

按照显控软件分层思想,显控软件各层组件实现原则如下:

支撑层和数据管理服务层组件:作为基础组件,具有超高的复用性,统称为共性支撑类组件,支撑层的组件一旦按照支撑功能划分实现后,应尽量复用,不应重复开发。此类组件特点是专注实现某个特定显示、计算或通信功能,主要包括基础绘图组件、坐标转换组件、网络通信组件、串口通信组件等。

业务层组件:业务层组件包括窗口显示组件和态势显示组件,该层组件与集中显控软件业务联系紧密,包括目标干预、雷达操控、记录重演以及各类态势显示[11]等,这些显示组件中的显示功能的实现应采用支撑层中的基础绘图组件类实现,数据管理方式则应采用数据管理服务层组件。业务层组件又可以分为功能独立组件和可重用组件。在这些基础组件基础上结合自身的业务进行组件实现。

应用层在对业务层组件进行组合时,根据当前集中显控软件涉及的传感器进行组装,涉及可重用组件时,不同传感器实现同一业务时使用同一可重用组件,通过其不同对象,实现不同传感器的业务能力。

多源情报集中显控软件组件组成示意图如图5所示。如果当前多源包括传感器1及传感器2,在实现对两个传感器进行显示控制的过程中,公用功能独立组件及共性支撑组件,但是对于涉及到的可重用组件,不需要进行单纯的组件数量累加,而是形成基本组件后,声明不同对象构成两个传感器的显示功能能力。

4.4 软件组件集成

多源情报集中显控软件的组件集成框架用于管理所有组件的加载、卸载以及激活、停用等,在此基础上形成软件基本框架。

组件集成框架依据组件管理XML(可扩展标记语言,ExtensibleMarkup Language)文件[12]对所有组件进行管理,主要对组件的基本信息进行配置,包括:名称、各唯一ID值(身份标识码,Identify)、运行状态、交互数据类型等。软件集成框架通过组件唯一标识ID、数据通道唯一标识ID及命令唯一标识ID三种标识的管理,可自动对组件所需数据进行分发管理,从而实现了组件的自动化集成。

4.5 数据交互

采用组件化设计思想对多源情报集中显控软件进行设计后,组件之间数据如何实时、低耦合传递是整个软件运维的关键,为此,引入了数据管理服务机制,如图6所示。图中示例组件为参数设置组件和一个航迹态势显示组件,窗口设置组件与外界的输入输出主要为参数设置命令及反馈信息,航迹态势显示组件的输入输出主要为航迹信息。

5 应用效果

5.1 显示态势组件化

图7给出了单部传感器的显示画面组件化示意图,图中态势显示用于显示当前传感器的一次视频、二次点航迹信息,因此态势显示由视频显示组件、点迹显示组件、航迹显示组件构成,这种方式有助于态势显示灵活增删态势种类,易于分层显示控制;同时,如果单个组件内部发生更改,以航迹显示方式为例,只需修改航迹显示组件内部,而不需要修改整个态势。

5.2 多源情报集中显示软件组件化

图8 给出了多源情报集中显控软件组件化的示意图,图中以传感器1和传感器2的情报综合显示为例,描述整个软件的组件构成。软件可视窗口或视图都是由单个组件或组件集成构成,包括了传感器1和传感器2的态势显示组件集合、表页显示组件、干预组件、人机交互组件以及综合显示组件等;同时绘图支撑组件、计算类组件、数据管理组件等支撑组件作为软件支撑,为其他组件的形成提供基础功能实现。

6 结语

本文主要围绕如何利用组件化设计思想来实现预警探测系统多源情报集中显控软件,从而解决传统开发模式存在的缺陷,以满足不断增长的功能需求,并根据各台位部署特性,实现按需动态重组。采用组件化软件设计方法能够显著增强软件的复用,方便软件功能扩展,提供开发效率。在今后,随着研究的逐渐深入,重点应该集中在人机界面与逻辑实现的彻底分离、跨平台数据分发机制及组件载体的实现等方面。另外,还应该考虑软件工具化,从而实现更精细、更人性化的软件界面或者软件功能定制等。

[1]康安康.预警探测系统中雷达组网优化部署研究[J].电子技术与软件工程,2016(6):32-32.

[2]张波,郝延刚,叶玲等[J].舰船电子工程,2016,36(10):1-4,131.

[3]周芸.基于Zinc的雷达显控软件系统设计[J].舰船电子对抗,2011,34(6):106-109.

[4]杨芙清,王千详.基于复用的软件生产技术[J].中国科学,2001,31(4):365-370.

[5]程莉莉,罗威,肖俊东等.一种基于可重组软件架构的触摸显控台的设计与实现[J].舰船电子工程,2016,36(11):159-162.

[6]童心.基于军事仿真应用的三维引擎组件化构建方法研究[D].北京:北京理工大学,2010.

[7]柏龙.组件化雷达系统建模与仿真软件设计与实现[D].西安:西安电子科技大学,2013.

[8]Will J.Development of an automated matching algorithm to assess the quality of the Open Street Map road net⁃work-A case study in Goteborg,Sweden[D].Lund(Swe⁃den),Lund University,2014.

[9]赵莉,孙喁喁,徐飞.Java组件技术[M].第1版.西安:西安交通大学出版社,2012.

[10]Jeffrey Richter.Windows Via C/C++[M]. 北京:清华大学出版社,2008.

[11]李路遥,杜国红,徐新伟.综合战场态势组件化表达模型研究[J]. 指挥控制与仿真,2016,38(04):13-17.

[12]杨大生.一种基于XML的分层式舰船网络管理模式的设计方法[J]. 舰船电子工程,2015,35(3):88-91.

猜你喜欢

态势情报组件
情报
情报
历史虚无主义的新近演化态势与特征
无人机智能巡检在光伏电站组件诊断中的应用
Kistler全新的Kitimer2.0系统组件:使安全气囊和安全带测试更加可靠和高效
3月光伏组件出口量增长164.6%至7.49GW!单价创新低
一种嵌入式软件组件更新方法的研究与实现
2019年12月与11月相比汽车产销延续了增长态势
汇市延续小幅震荡态势
情报