相控阵测控系统中的阵列监控软件设计

2022-04-29 00:44潘恒康孟景涛刘文魁王京超李小龙
计算机与网络 2022年21期
关键词:软件设计相控阵

潘恒康 孟景涛 刘文魁 王京超 李小龙

摘要:近年来,随着我国航天测控事业的迅猛发展,传统基于抛物面天线的测控技术无法满足当前多目标测控的需求。基于相控阵的测控系统,采用阵列天线和数字多波束形成技术,可以同时形成多个波束,完成对多个目标的测控任务。相比于传统基于抛物面的测控系统,相控阵测控系统的天线阵面结构更加复杂、设备数量巨大,对于各个阵列设备的组织管理是测控系统中需要重点解决的问题。为了实现对阵列设备的组织管理功能,以保障测控任务的正常执行,提出了在相控阵测控系统中增加一种阵列监控软件。阵列监控软件整体采用构件化的软件架构,具备开发便捷、维护方便、可继承性高的优点。工程实践证明,该软件切实为相控阵测控系统执行测控任务提供了有力支持。

关键词:相控阵;航天测控;软件设计;阵列监控

中图分类号:TP319文献标志码:A文章编号:1008-1739(2022)21-50-5

0引言

相控阵测控系统通过数字波束形成技术,实现波束精确指向的功能。相控阵测控系统区别于传统基于抛物面天线的测控系统,为获取足够大的天线增益和作用距离,其信号通道规模巨大,直径数米的阵列天线通常具有几万个阵列设备[1]。传统测控系统中,对于天线控制的伺服控制軟件[2]已无法在相控阵测控系统中得到应用。相控阵测控系统的天线阵列设备运行状态对于执行测控任务影响巨大,因此,对于阵列设备的组织管理功能在相控阵测控系统中愈发重要。

为了实现对于阵列设备的组织管理功能,提出了相控阵测控系统中阵列监控软件的设计。阵列监控软件采用基于构件化的软件架构,一方面可以降低各个软件功能模块之间的耦合度,减小阵列设备的组织结构、设备类型变化对软件开发带来的影响,大大提高软件开发效率;另一方面,软件程序存在单体结构中,各个模块之间通过共享内存、消息队列等方式进行数据交互,其数据传输高效,适合于处理相控阵阵列设备种类多、数量大的应用场景[3]。

阵列监控软件需要通过网络、CAN总线等与多种阵列设备进行数据交互,因此,在开发过程中,需要花费大量人力和时间去进行接口与通信的设计、编码、调试和测试[4]。为减少接口变动以及通信方式对软件开发的影响,阵列监控软件采用一种基于可扩展标记语言(Extensible Markup Language,XML)的接口配置及代码生成方法。此外,本着统一化的设计思想,减少通信方式对软件通信构件的影响,采用CANet设备,将网络数据转换成CAN总线数据发送给阵列设备。基于CANet的通信管理设计,实现了对大量阵列设备的通信管理功能。

1需求分析

需求分析是要明确软件产品需要做什么,并对软件产品提出完整、准确、清晰、具体的要求[5]。需求分析主要包括:功能性需求,即提供产品必须执行的动作;非功能性需求,即软件产品为满足用户业务需求而必须具有且除功能需求以外的特性,譬如性能效率、安全性、可靠性、互操作性和健壮性等;设计约束,即对软件产品的一些约束说明。

随着相控阵测控系统的发展,测控目标数量越来越多。而阵列设备的种类、数量和功能等带来的变化都对当前的测控软件系统提出了新的挑战。阵列监控软件的提出,是为了满足新的发展需要,因此在软件设计阶段,需要充分分析软件需求,为后续软件产品设计、实现以及应用打下坚实基础,从而提高相控阵测控系统的整体软件水平。

1.1基本功能需求分析

对于阵列设备状态的显示及设备管理功能是阵列监控软件的主要功能。阵列设备包括:收组件、收处理模块、发组件、发处理模块、功放、1PPS、同步串口、数字电源、功放电源、收波束形成机箱以及发波束形成机箱等,其显示内容包括阵列设备参数和状态等;管理功能包括参数下发、控制命令和程序烧写等。

针对测控业务需求,阵列监控软件还需要具备任务信息处理、测试信息处理、测试流程管理、环路配置及监视等功能。

另外,阵列监控软件还需要具备参数配置、日志记录、数据记录、软件运行状态显示、双机备份和通信处理等通用化的功能。

相控阵测控系统中,由于阵面形状,阵列设备的类型、数量等都会根据不同的需求发生改变,所以在设计阵列监控软件时,需要将软件功能模块大致进行划分,其中不变功能无需更改,可适应各种类型的需求变化,变化功能需根据不同需求的变化进行修改。软件功能模块划分如图1所示。

1.2性能需求分析

相控阵测控系统中,阵列设备数量庞大,往往具有上万个不同类型的阵列设备,阵列监控软件需要在1~2 s实时查询各种类型的全部设备状态,并根据设备状态,及时给出反馈信息。因此,由于数据量巨大,软件内部各模块之间的数据交互实时性要求高,软件设计过程中需要充分考虑模块之间的通信效率以及软件与设备之间的通信效率。

1.3可靠性需求

阵列监控软件作为测控软件系统的一部分,通常在测控系统中,分配一个操作席位进行操作。由于操作席位上的操作人员通常任务繁重,需要同时观察、操作多个测控软件,为了方便操作人员对阵列监控软件的使用,阵列监控软件在设计过程中,需要注意以下几点:

①软件界面上显示设备状态应简洁直观,对于异常情况提示应明显易懂;

②程序配置简单、部署方便,以减轻操作人员的部署工作,降低因程序部署导致的故障风险;

③软件设计应便于排错、便于恢复状态,如定时进行数据备份,可以快速从故障中恢复。

2软件架构设计

软件架构的设计取决于业务驱动因素、部署环境、预算、时间表、开发人员技能集以及许多其他因素[6]。根据上述需求分析,阵列监控软件的架构设计主要从模块复用程度、数据通信效率以及部署应用复杂程度等方面考虑。目前主要的架构模式可选方案包括分层软件架构、构件化软件架构和分布式软件架构等。结合阵列监控软件的应用需求背景,针对不同的软件架构,其各自的特点对比如表1所示。

对比分层软件架构和构件化软件架构,分层软件架构在模块复用程度上较低,无法很好地满足后续程序设计过程中不断变化的需求。

近些年来,分布式软件架构在航天测控软件上应用日益增多[7],但是在本应用场景下,其数据通信效率较低、软件部署较为复杂,不太适用于当前的测控任务需求。因此,阵列监控软件基于面向对象思想,采用构件化的架构模式,开发便捷、模块复用性好、数据传输效率高、部署容易,可以大大增加软件开发的稳定性及高效性。

阵列监控软件架构如图2所示。

陣列监控软件开发过程中,分机处理、人机交互相关的内容均会随实际阵列设备情况进行修改,而其他软件功能均具有较强的复用能力。因此,采用构件化的架构模式,通过重用已有的构件对象模型,可以像搭积木一样快速构造应用程序,可以有效缩短开发周期,并且可以在重用已有开发成果的基础上得到高质量的软件产品。

3关键构件说明

(1)分机处理构件

分机处理构件是一组构件的集合,包括收组件构件、收处理模块构件、发组件构件、发处理模块构件、功放构件、1PPS构件、同步串口构件、数字电源构件、功放电源构件、收波束形成机箱构件以及发波束形成机箱构件等,其主要实现与阵列设备上各个分机的数据交互,即发送状态查询、参数控制和控制命令等指令,接收各个分机上报的状态、响应等信息,同时完成对参数的异常判断,将当前设备状态通过消息队列的形式,传递给相关的用户界面构件。

由于该部分构件需要与阵列设备上各分机进行数据交互,因此,在设计上需要充分考虑分机种类变化、分机接口变化所带来的修改、联试上的工作量。

(2)通信处理构件

通信处理构件作为阵列监控软件的基础功能构件,需要实现网络通信相关功能,主要完成通信链路创建、通信协议支持、数据接收、数据发送和通信异常处理等功能。

通信处理构件具有较强的通用性和复用性,构件的开发过程应当实施更为严格的工程规范,其构件在改动上需更加谨慎。

(3)设备程序烧写构件

阵列设备部署后,在初期调试阶段,不可避免地需要升级设备程序,采用人工升级的方式耗费大量的时间和人力,采用远程更新的方式,可以有效地实现自主升级,提高联试和开发效率[8]。

为实现远程更新,由设备程序烧写构件读取不同设备的硬件程序,然后通过网络下发给不同的设备,主要流程如图3所示。

4软件关键技术

4.1基于XML的设备接口配置及代码生成

阵列监控软件需要监控的阵列设备具有种类多、数量大的特点。若采用一般的软件开发方法,在开发过程中,需要花费大量的人力和时间去进行接口与通信的设计、编码、调试和测试,而且接口发生改变时,维护和修改成本耗费大量的时间。为实现接口设计的通用性,将阵列设备的接口通信数据进行规范化描述,采用XML配置文件的形式,并通过代码自动生成各阵列设备的管理类进行处理[4]。

XML技术提供了一种可用于进行数据交换的标准通用标记语言,与其他数据交换技术相比,采用XML作为设备接口的配置文件主要优点为:

①具有良好的格式、较强的可理解性和易用性;

②具有验证机制,可用来判断编译标记是否符合语法;

③选择性更新,即通过XML的标签结构,小范围更新,保证接口的可扩展性。

基于XML的设备接口配置,其通用接口描述如图4所示。

根据配置好的XML格式的接口文件,生成对应的数据结构类代码,生成的数据结构如图5所示。

4.2基于CANet的设备管理

CANet是一种完成CAN协议和网络协议转换的设备。阵列监控软件利用CANet,可以实现软件架构中通信处理模块的复用,从而完成对于不同通信架构设备的管理功能。

由于CANet支持CAN协议转换成多种不同网络协议(UDP点播、UDP组播和TCP)的方式,阵列监控软件可以实现对于独立、部分以及全部阵列设备的通信功能。阵列设备通信结构如图6所示。

对于设备的组织管理,可以利用点播或组播的方式,向陣列设备发送控制命令和查询命令。同时,为实现阵列监控软件的多站点部署,阵列设备上报的响应结果、设备状态等信息均被CANet转为组播的网络协议完成上报。

阵列设备中,每个设备均有一个ID编号,用于CAN总线的网络节点寻址。CAN总线是一种多主控制系统,当多个设备节点发起数据传输时,依据报文ID优先级进行仲裁。报文ID包含目的设备ID,因此在设备ID设计时,规定数据下行具有较高的优先级,即下层设备ID优先级较高,下层各种设备之间优先级可根据需求设置。不同的设备具有唯一独立的ID号,设备ID与CAN总线报文ID关联,是报文ID的一部分。

对阵列设备的管理,其核心是设备ID的管理工作,阵列监控软件的设备ID管理类图如图7所示。

5结束语

本文研究并实现了相控阵测控系统中的阵列监控软件设计。基于构件化的架构设计,具有耦合度低、复用性高的优点。单体化的软件架构,数据通信效率高,适用于大规模阵列设备的通信,并且其部署简单,方便用户操作及异常处理。此外,由于设备数量多,基于XML的设备接口配置及代码生成技术和基于CANet的设备管理技术大大提高了软件开发和联试的效率。实践证明,该软件的设计具有开发效率高、稳定性高以及部署便捷等优点,满足相控阵测控系统的需求。

参考文献

[1]李旭,肇格.相控阵测控系统时频及标校信号一体化光传输设计[J].电讯技术,2021,61(8):945-949.

[2]杨柳,张成.天线跟踪系统伺服控制的软件设计[J].航天制造技术,2015(4):65-67.

[3]饶冬,孙甲琦,贾林巧,等.基于Linux的航天地面站测控软件架构设计[J].遥测遥控,2015,36(4):31-36.

[4]孙婧,刘莹,孟景涛,等.基于XML的软件通用程序框架[J].无线电工程,2015,45(6):25-27.

[5]常云丽,邬欣明,郑威.军用软件需求分析研究[J].火力与指挥控制,2013,38(1):126-128.

[6] RICHARDS M, FORD N. Fundamentals of Software Architecture: An Engineering Approach[M]. Sebastopol: OReilly Media, 2020.

[7]徐冰霖,李战怀.面向服务的航天测控软件架构设计[J].飞行器测控学报,2012,31(6):47-51.

[8]高群福,孙维新.一种相控阵系统远程升级方法[J].无线电通信技术,2017,43(6):77-80.

猜你喜欢
软件设计相控阵
相控阵超声技术在PE管电熔焊接检测的应用
相控阵超声波检测技术认证
一种相控阵雷达的通讯处理器设计
相控阵雷达研究现状与发展趋势
ETC相控阵天线与普通天线应用对比分析
CAN总线通信技术在电梯监控系统中的应用
基于单片机SPCE061A的字幕机点阵式字母电子显示屏的设计制作
基于STC单片机的厨房智能安全管控系统的设计
基于STM8S903K3的序列打螺丝夹具的软件设计
一种VHDL语言代码重用的方法