装甲兵工程学院 信息工程系 张 增 刘玉军 董保良
电磁环境频谱监测软件的设计与实现
装甲兵工程学院 信息工程系 张 增 刘玉军 董保良
电磁环境监测系统是对无线电信号进行监测的系统,其主要任务是对特定区域的无线电信号进行搜索、截获、测量、分析、识别、监视以及对辐射源的测向和定位,以获取其技术参数、功能、类型、位置和用途,为无线电监测的组织与实施提供辅助决策工具,为无线电管理提供电磁环境基础数据。
电磁环境频谱监测软件是电磁环境监测系统的重要组成部分,主要是根据电磁环境实时数据或统计数据,为用户提供频率资源的分析、决策和综合应用的技术手段。其体系结构如图1所示。基本功能包括数据库管理、地图应用、用户管理和授权、工作流程配置、文书管理等功能。业务功能包括监测测向、电磁频谱管理、电磁干扰分析和电磁态势显示等功能。
图1 电磁环境频谱监测软件体系结构
电磁环境监测系统主要有数据库管理系统、监测测向系统、电磁频谱管理系统、电磁干扰分析系统和电磁态势显示系统共5个系统组成,各个系统通过相应的软件来实现自身的功能。各个系统的功能如下。
1. 数据库管理系统。功能如下。
(1)用户、角色和权限设置。
(2)数据操作,包括查询、添加、修改、删除、统计分析、地图标绘和输出文档等。
(3)数据备份、恢复、格式转换等。
(4)多类数据覆盖,包括频率、监测量、设备、台站、设备检测等相关数据。
(5)监测测向数据管理和日志管理。
2. 监测测向系统。功能如下。
(1)频率扫描,包括全景扫描、频率扫描、信道扫描。
(2)信号分析,包括信号频谱场强、中心频率、调制模式、XdB带宽、β带宽等基本属性。
(3)录音监听和信息解码。
(4)信号测向。
(5)场强统计和占用度统计。
3. 电磁频谱管理系统。功能如下。
(1)频率划分、规划、分配和指配。
(2)频率预指配结果评估。
(3)优质频率资源选频。
(5)频率保护、管制和协同。
(6)频率资源分析,对频率资源占用情况进行分析。
4. 电磁干扰分析系统。功能如下。
(1)移动台站干扰分析、固定台站干扰分析以及飞行走廊干扰分析。
(2)场站电磁环境分析,利用精确化的仿真模型和预测算法,结合实时频谱监测数据,对关心地域(重要通信枢纽、发射场、试验场等)的电磁环境进行分析,为干扰排查、解除、用频指配和频率协调提供手段。
(3)频谱监测网系分析,主要用于了解辖区或指定区域内监测站(网)部署、监测站(网)的覆盖能力,并在地图上显示监测覆盖区域。
(4)通过分析手段,为监测站(网)的部署和网络优化等工作提供手段。
5. 电磁态势显示系统。功能如下。
(1)辐射源覆盖区态势。
污水专用换热器污水侧供回水温度为11/6℃;热泵蒸发器中介水侧供回水温度为9/5℃;热泵冷凝器用户侧供回水温度45/35℃;污水专用换热器单台制热量800kW;离心式热泵制热量4622kW,电功率830kW,COP为5.56;螺杆式热泵制热量2235kW,电功率675kW,COP为3.31。
(2)区域频谱态势显示。包括二维、三维场强态势。
(3)点位频谱态势显示。包括频谱图、瀑布图、示向度图等。
(4)电磁对抗态势显示。反映指定区域、指定时间双方、多方的电磁对抗变化趋势。
结合电磁环境频谱监测系统的规模和复杂程度以及软件设计的可复用性和易维护性的要求,在面向对象技术的基础上构建整个系统,采用统一建模语言(UML)进行软件分析设计,通过基于底层模型的软件开发过程管理方法进行管理和控制。该系统采用多层相互协作的框架组成,构建各个监测任务功能子模块,以此实现面向对象系统的最大重用方式。在系统中定义统一的接口使得模块之间的通信变得非常容易和简单。框架能重用设计,它提供可重用的抽象算法以及高层设计,并能将大系统分解成为更小的构件,而且能描述构件间的内部接口。这些标准接口在已有的构件基础上通过组装可以实现各种各样的相关系统。开发人员基于可重用框架进行二次开发或者更加具体的开发,具有灵活的扩展性。这样做不仅可以增加软件结构的一致性,建立更加开放的系统,还可以增加代码的重用,大大提高了软件生产效率和质量。
电磁环境频谱监测系统不仅是一个实时系统,而且对时序、功能完成时间有较高的要求,因此,软件开发时必须充分考虑软件的响应特性及操作特性,同时还要对监测数据做后台处理、分析及统计,为操作员提供操作简便、具有多种方式的监测数据显示界面,为其正确判断提供可靠依据。系统整体结构设计如图2所示。
图2 电磁环境频谱监测软件系统整体结构设计
基于对整个区域电磁环境频谱监测功能总体分析及软件框架设计思想,在系统框架中对各功能模块的控制可采取类似于上述模块的处理方法,因此将电磁环境频谱监测系统分为4个大的部分:主框架、通用组件库、扩展应用模块和第三方控件库。
1.主框架。主框架是整个系统的核心,它负责从整体上对系统进行管理,控制系统的运行。它主要包括:任务管理子系统、消息管理子系统、功能管理子系统以及错误处理子系统。
本框架的实现方式是通过对面向电磁环境监测应用的子模块进行统一管理的形式来完成的。这样做的优点是封装了实现的细节,同时提供了接口,便于更改替换模块,同时提供的接口相对稳定。每个功能模块都满足以下要求:每个模块都是功能单一的,各功能之间保持低耦合性,每个模块都被定义了一组稳定的接口。
(1)任务管理子系统。它是主框架与系统其他模块(包括通用组件库和扩展应用模块)的接口,它包含了若干个服务类,每一个服务类都可以认为是对某一个模块的包裹和封装。
(2)消息管理子系统。它是框架与系统输入的中介,它负责把用户界面请求、从网络上传过来的用户指令以及应用系统定制的任务转换成相应的格式,然后转发给任务管理子系统去执行。反之,指令的执行结果也由接口管理子系统转换为可以被网络、用户界面等识别的格式,然后转发。这样就使得在框架内部流动的数据包格式一致,便于统一管理,也简化了管理流程。
(3)功能管理子系统。主要用于对多个模块、服务进行管理,它仅仅负责每个服务的生存期(创建及销毁),而不会涉及模块的功能。
2. 通用组件库。系统中的一些通用部分封装成功能子模块,主要包括数据库模块、网络模块、监测设备驱动等部分。在系统中可以灵活地调用这些模块提供的接口,达到了便于维护、扩展的目的。
3. 扩展应用模块。主框架和通用模块库都是系统中的可重用部分。构建一个完整的应用系统,需要在这两部分的基础上进行扩展,实现监测测向子系统、电磁频谱管理子系统、电磁干扰分析子系统和电磁态势显示子系统等业务功能。具体有频率扫描功能模块、信号分析功能模块、测向功能模块、监测结果存储及查询、回放模块,对于测向功能模块,相对应于其他功能模块如频率扫描、信号分析来说,将实现的细节隐藏,只提供它与框架及界面的接口。这样当需要再加入其他功能时,只需修改某个模块,而接口和整个系统框架将保持相对稳定。
4. 第三方控件库。第三方控件库包括虚拟仪器图形界面库和电子地图管理子系统。每个模块都提供统一的接口,这样便于更改替换,保持接口的相对稳定。
整个系统的设计基于面向对象思想,各个模块封装良好,模块间耦合较小,模块独立性较高,因此对于业务功能模块与框架及相关其他功能块(如网络子系统、数据库子系统等)间的数据、命令传递主要通过接口来完成。系统事件跟踪过程如图3所示。
图3 系统事件跟踪过程
用户启动电磁环境频谱监测系统进入用户界面,通过界面线程发送操作命令,将各种处理请求以事件队列的形式放入线程组中,然后驱动管理器工作。在系统中将不同的功能模块分为多个类型的服务,如网络操作服务、设备操作服务及数据库服务等,调用各个服务以接口的形式来实现。管理器根据不同的事件类型将操作命令发送到底层各驱动(包括硬件设备驱动),将操作命令发送到监测设备(以调用驱动提供的动态库来完成)、数据库驱动将命令发送到数据库部分、网络驱动发送到监测中心等;各底层模块返回相应信息到事件队列中,经应答线程组处理,再次将信息放 入 到消息队列中,由界面线程返回到发送请求操作的用户界面,完成一项监测任务。
底层驱动入口得到监测命令,获取任务类型并按类型分类,准备开始处理具体监测任务。首先创建设备对象,根据上层传递的消息设定测量信息及设备参数,然后启动接收线程,设备返回监测结果到驱动入口。当上层调用该动态库时得到监测数据。若底层接收到关闭或停止命令,同样驱动设备结束该监测任务。
电磁环境频谱监测系统的软件设计以软件体系结构和系统功能为基础,基于软件工程的设计思想,以统一建模语言(UML)进行软件分析设计,采用面向对象技术、Windows消息机制和组件技术,实现了本系统的可重用性、可扩展性和可维护性。