基于C++ Builder的精确制导产品测试系统设计

2020-10-20 13:27张溪默
舰船电子对抗 2020年4期
关键词:界面电源设置

谭 杰,张溪默

(中国电子科技集团公司第二十九研究所,四川 成都 610036)

0 引 言

精确制导产品包括精确制导导引头、高精度探测装置、无源侦察定位系统等,主要功能为对既定目标进行测量识别与跟踪,一般以分系统的形式组装于各类精确打击武器系统或侦察系统。随着武器系统对产品性能、可靠性等要求的不断提高,精确制导产品的内部构造越来越精细、复杂。为了满足产品可靠性要求,产品环境试验筛选过程需要在特定时间对多套产品进行测量与监视;为了满足产品指标测试过程全覆盖,测试时需要在空间角、工作频率、伺服转角等多个维度从较细的步进进行测试,测试过程需要不断切换产品空间位置、测试频率等状态[1]。传统手动测试过程中,不断人为切换装配状态、设置信号源,不但工作量大、效率低,还难以确保多次测试过程的状态一致,且测试过程对操作熟练人员的依赖程度高,可生产性低。因此,为了保质保量高效产出,根据精确制导产品特性,开发一套自动测试系统意义巨大[2]。

1 系统设计

通过对产品的测试接口与测试需求调研分析,测试系统拟采用计算机对被测产品和测试仪器进行控制并接收、存储被测产品回报的数据帧。计算机与信号源、电源等仪器之间采用通用接口总线(GPIB)或通用网口进行连接,与被测产品之间采用RS422串口或网口进行通信[3-4]。系统运行时,首先进行仪器初始化,之后根据测试前动作设置进行电源上电、停止保存等操作,然后控制信号源输出既定参数的脉冲或连续波信号并经射频电缆、功分器或辐射天线至被测产品前端,根据测试项需求通过计算机给被测设备下发库加载、目标截获、跟踪等指令并接收、解析、判断以及保存被测产品上报的数据帧,依次完成所有测试项目后自动生成测试报告并切换至下一套产品进行测试,最后,测试完所有产品并根据测试后动作设置进行产品断电、截获跟踪并开始存盘等操作。整个测试过程一键启动后全自动运行。

2 硬件系统实现

测试系统硬件主要由测试计算机、信号发生器、电源、信号传输组件、加电通信电缆以及被测设备组成。计算机为此测试系统的中枢,其需要包含GPIB总线、串口转换器、网口等外围设备;信号发生器使用Agilent、Rohde&Schwarz以及Anritsu等常见品牌,具体型号根据被测产品测试需求进行选择;电源使用Keysight、Itech等常见品牌,具体型号根据被测产品供电电压、功耗进行选择;信号功分组件根据被测产品种类及数量可选择2功分、4功分、8功分以及16功分或它们的组合;加电通信电缆根据被测产品接口关系定制[5-6]。测试系统组成框图如图1所示。

图1 硬件系统组成

硬件系统采用积木式架构搭建,电源数量根据被测产品数量而定。信号发生器、电源等仪器可选用多品牌多种型号,通过GPIB总线或网口与计算机进行连接,实现对信号参数、供电电压、限流的设置及输出开关控制等;被测产品通过RS422串口或网口与计算机进行连接,根据测试需要,计算机对被测产品的通道选择、信号处理机制以及伺服位置等状态进行控制,并接收、处理、保存其上报的工作数据帧,完成测试任务。

测试硬件系统放置于带轮子的机柜中组成一个“可移动精确制导产品测试工位”,可根据需要迅速抵达高低温实验室、高真空实验室、机械振动台、微波暗室等场所,相较于传统的手动测试平台,具备高灵活性、通用性和稳定性等特点。

3 软件开发

对测试系统中信号发生器、电源的控制以及与被测产品的交互等均通过测试软件实现,相较于硬件系统的搭积木式实现,对测试软件单独进行了开发[7-8]。

3.1 软件功能模块设计

考虑到软件的可继承性与通用性,测试软件采用模块化设计,大致由以下几个部分组成:

(1) 仪器控制模块

根据仪器类别,分别开发了用于独立控制电源、信号源等仪器的软件模块,分别实现对同一类多种型号仪器的控制。

(2) 数据交互模块

根据端口连接方式、产品数量及相关配置参数,与被测产品建立通讯连接,解析用户通过UI界面下发的各种指令,回读被测产品上报数据帧,按通讯协议进行解析,并根据需求进行分类缓存或存盘,以满足对被测产品控制、监视和测试过程进行数据统计的需求。此部分为软件多套产品负载能力设计框架的核心模块。

(3) 数据显示模块

提供一个可自由配置显示窗体的主界面,分别设计数据可配置的“曲线显示”和“纯文本滚动”2种数量可自由增减的窗体类,以适应产品多样化数据的可视化监视需求。

(4) 指标测试模块

根据被测产品的最大工作距离、目标参数量化稳定度、功耗、伺服机构工作边界等指标要求,对其进行自动测试并保存测试的过程数据和原始数据,为测试报告的生成和故障排查分析提供数据基础,提供频率、角度、功率等测试维度的范围与步进自由配置的接口,以适应研制生产过程各种测试场景的需求。

(5) 报告生成模块

以指标测试过程生成的数据为输入,进行数据提取、分类、统计、判断,自动生成Word报表并给出测试结论。

(6) 定时模块

它是实现一键定时自动测试的关键部分,用于解决温度循环筛选、高温老练以及常温烤机等需要通宵或长时间操作的测试量大的问题以及保证测试过程的准时和测试状态的一致。此软件模块按测试前动作、测试实体、测试后动作三部分分步设计,可通过人机交互界面按需进行快捷设置或自由配置,可以兼容所有常用或不常用的应用场景。测试实体直接或间接调用“指标测试”和“报告生成”模块,避免了重复开发并保证了测试的一致性。

3.2 开发环境

C++ Builder 是由Borland公司推出的一款高性能可视化集成开发工具。其拥有快速、高效、灵活的编译器优化,逐步连接,CPU透视以及命令行工具等,实现了快速的可视化开发环境和C++语言的完美结合。因此,本文选择C++ Builder 6.0开发环境进行测试系统软件的开发[9]。

对信号源、电源等仪器设备的控制采用Agilent Connection Expert软件接口进行间接连接与控制,提高测试软件的通用性,降低开发周期。

3.3 测试流程设计

软件系统测试流程设计如图2所示。图中虚线框内表示依次完成所有指标项测试。从流程图可以看出,测试启动后整个测试过程全自动运行,测试系统由多层循环嵌套组成,最外层按测试时间轴进行测试次数循环,次外层为多个被测产品串行测试循环,内部为由多层遍历循环组成的多个并列单项指标测试过程[10-11]。

图2 软件系统测试过程流程图

软件测试部分的设计采用了各类配置参数预置的方案,用户可以根据需求最大自由度地进行当次测试的状态定制。并且从图中可以看出,每个单项指标测试内的循环嵌套过程相同,不但可以大大降低软件开发强度,还为参数配置方案提供了对应的技术基础[12-13]。

软件运行的整个过程包含各种状态的判断及完备的运行分支,逻辑关系清晰,层次分明,可以高效实现全部测试功能。

3.4 主要函数说明

(1) 显示、控制类函数

TPlotShowThread ():曲线显示及刷新线程函数,对单个曲线窗体需要显示的数据进行曲线绘制与刷新。

TTextShowThread (): 文本显示及刷新线程函数,对单个文本窗体需要显示的数据进行数字显示及滚动刷新。

SendDPackToMain ():数据包发送函数,执行对被测产品进行库加载、程序更新、校正表上传等数据长度较大的控制命令发送。

SendCMDToMain():命令发送函数,执行对被测产品进行自检、待机、复位以及伺服控制等简单控制命令发送。

(2) 仪器控制类函数

TSigControl::SigInit():信号源初始化函数,完成对测试工位信号源连接,并根据参数进行频率、重频、脉宽等参数预设置。

TPowerControl::PowerInit ():电源初始化函数,完成测试工位电源连接,并进行输出电压、输出限流预设置。

(3) 指标测试类函数

TTestThread::EssTestProcess(): 温度循环测试函数,调用此函数进行灵敏度、信号参数量化稳定度等温度循环试验过程需进行的所有指标测试。

ThreadAuto::Execute(): 定时自动测试线程执行体函数,通过此函数管理、执行用户设定的测试过程中各类动作。

3.5 UI设计

人机交互界面(UI)的主界面如图3所示,主要包含顶部的快捷菜单和中间大部分区域的产品数据显示区。设计思路综合了窗体数量和种类可配置、显示数据可配置、多套产品界面自适应、数据易区分等原则。图中所示即为连接3套产品的主界面状态,每套产品显示窗体背景颜色各异且均偏暗,简洁、清晰、易区分且有益于用户视力保护。

图3 软件主界面

定时测试界面如图4所示,UI设计综合了测试流程特点和操作简单、测试状态可定制的用户需求,通过自动测试设置栏的“循环”、“老炼”快捷设置按钮一键快捷设置或个性化定制好当次测试的时间轴及测试前后动作;通过其它设置栏根据测试硬件环境搭建设定好电源对应关系,然后单击“开始测试”,一键启动全自动定时测试。

图4 定时测试界面

4 试验结果与分析

为了验证测试系统设计的准确性和稳定性,选取某型号2套整机产品进行温度循环过程验证测试。

测试方案如下:结合验证测试需求和被测产品筛选试验大纲要求,总计20个测试时间点对2套产品进行灵敏度、相位量化稳定度、信号适应能力以及功耗等指标全自动测试运行验证。整个验证周期44 h,奇数次测试前动作设置为上电自检,测试后动作设置为跟踪监视;偶数次测试前动作设置为停止跟踪监视,测试后动作设置为待机并断电。按上述要求进行测试轴和测试前后动作设置后,一键开始全自动测试验证。

以相位量化稳定度测试为例进行测试过程验证,此项指标测试时,首先控制信号源设定输出信号频率、功率、重复周期以及脉宽等参数,之后控制被测产品对信号进行截获并对通道相位差进行测量、记录,最后进行稳定度统计并生成测试报告。

对测试过程和测试数据进行分析。整个测试过程中,软件按照设置准时进行了测试,准确执行了测试前后动作,正确生成了测试报告,全程无异常。相位量化稳定度测试数据分析如图5和图6所示,图中每一条曲线表示自动测试过程单次测试的结果(如“低温1”表示第1个温度循环低温状态的测试结果),可以看出多次测试结果数据完整,一致性好,达到了测试目的。与之前的手动测试过程对比,在相同测试量情况下,人员工作强度降低至原来50%以下。总之有效实现了预定的设计目标。

图5 产品1 相位量化稳定度测试结果

图6 产品2 相位量化稳定度测试结果

5 结束语

本文研究了一种由在C++ Builder 6.0编译环境下开发的测试软件和利用现有硬件搭积木式组建的硬件环境组成,应用于精确制导产品的一键式测试系统的方法,并实现了测试系统的“一带多”功能。通过测试验证表明,本系统测试过程的稳定性、准确性非常好,能够大大提高生产效率,降低人为误操作风险。设计简洁、友好的人机交互界面,使新用户能快速融入,且可降低其专业知识和技能水平准入门槛,从而降低人力资源成本。

考虑到软件系统的复用及可移植性,针对不同产品的数据协议、接口类型、测试边界及测试步进等的个性需求,测试软件在这几个方面均做了可配置接口,使其能应用于不同型号的产品,大大缩短了新型号精确制导产品测试系统的开发周期,有效节约了成本。

猜你喜欢
界面电源设置
不同截面类型钢管RPC界面粘结性能对比研究
微重力下两相控温型储液器内气液界面仿真分析
变电站五防系统临时接地桩的设置
ControlUWP 让Windows 10的设置更方便
国企党委前置研究的“四个界面”
Cool Invention炫酷发明
栏目设置一览表
等效电源法的应用
新电源
运用等效电源巧解题