毫米波系统内场测试仪方案设计

2011-04-26 02:32满宏权王厚军
中国测试 2011年2期
关键词:自动测试板卡线程

满宏权,王厚军,李 力

(电子科技大学自动化工程学院,四川 成都 611731)

0 引 言

在毫米波系统装置运用于战场给现代战争注入了高精尖技术的同时,也使得武器设备的复杂度变得越来越高,而在军事技术竞争越来越激烈的今天,仅仅依靠传统仪器对复杂的武器设备进行测试,越来越不适应现代化作战和测试的要求[1]。因此,设计一种具有高速度、高性能、高可靠、高可用、标准化、模块化的自动化内场测试设备已经迫在眉睫[2]。该文针对毫米波频段电子设备的测试需求,设计了毫米波系统内场测试仪,实现对毫米波系统的各种指标和功能的自动测试,并对系统中故障设备进行快速诊断定位。

1 系统功能和组成

1.1 系统功能

该内测仪测控系统不仅能实现对该毫米波被测设备各种指标和功能的自动测试,并对每项测试进行测试结果分析、测试结果显示、测试数据保存以及历史记录查询。判断被测设备存在故障时,能对被测设备中的故障模块进行快速诊断定位。系统采取基于比对的测试思想,使用模块替换的测试方式,配合开关切换的测试行为实现快速诊断隔离故障模块的功能。

1.2 系统组成

毫米波系统内场测试仪(以下简称内测仪)最核心的部分为Compact PCI(compact periperal component interconnect,CPCI)机箱,机箱内插有零槽控制器模块、电源模块、CPCI功率计模块、CPCI频率计模块、PXI开关模块、CPCI-422多串口收发板卡,除此之外该内测仪系统还包括机柜、接口适配器、射频开关、数字I/O模块、标准参考整机系统、液晶显示器、键盘单元和鼠标单元。内测仪测控系统组成框图如图1所示。

图1 内测仪测控系统组成框图

内测仪测控系统所采用的CompactPCI总线具有高总线带宽、高可靠、高性能、支持热插拔、标准化、模块化等特点,满足高速度、高性能尤其是复杂控制算法并要求可视化操作的应用场合的功能需求[3]。

2 测控系统软件设计

2.1 系统平台及编程语言的选择

在该内测仪系统中,采用3U双槽的CPCI零槽控制器作为其主控制模块。其具有较完整的计算机功能,其上运行嵌入式操作系统WindowsXP Embedded,支持即插即用,且稳定可靠,完全满足内测仪测控系统需求。

该系统选用了高可靠性的WindowsXP Embedded作为底层系统支持,采用LabWindows/CVI6.0作为开发平台[4]。

2.2 测控系统软件结构

该内测仪系统软件设计主要包括人机交互界面设计、测试算法设计、快速诊断算法设计、测试结果保存与处理程序设计。测试算法设计分为指标测试算法设计和功能测试算法设计,其中被测设备指标测试又主要包括发射功率测试、发射频率测试、接收灵敏度测试以及动态范围测试4个部分。功能测试主要包括显控分机测试和接口校时分机测试。

针对每种测试,为了避免测试过程过长,导致整个系统软件冻结,采取多线程的方式设计程序,为每种测试开辟新线程执行整个测试流程。同时在程序设计中制定超时机制,控制测试线程在指定时间内执行;又因为系统测试时具有对硬件模块的独占性质,所以通过人机交互界面作为桥梁来实现流程控制,使各测试线程只与主线程即界面事件线程并发执行[5]。软件结构如图2所示。

图2 软件结构图

2.3 测控系统软件开发中的关键技术

2.3.1 开关切换操作的设计

开关切换操作是内测仪测控系统中不可或缺的关键环节,起到了整个测试环节中的桥梁作用,是整个测控系统实现诊断功能的物理基础。因此,开关切换操作的合理性、科学性直接制约着测控系统的整体性能。

开关切换操作主要存在以下两个问题:

(1)开关切换操作与系统硬件资源联系紧密,硬件物理连接的改动势必导致软件程序的改动,这不利于测试系统的开发、调试和维护。

(2)在进行诊断测试时,每次模块替换所需操作的开关数量较多,若针对每个开关切换编写代码,也会造成程序代码的复杂化。

为了解决上述问题,在开关切换操作的设计中,通过2个表即编码-开关映射表和开关信息表来完成应用层程序与底层物理连接的映射通信。其编码-开关映射表部分截取图片如图3所示。

图3 编码-开关映射表截图

其中最左一列为操作编码,在应用程序中只会出现这个编码,而表单中的每一行则分别对应该操作编码所进行操作的开关板卡逻辑编号及其操作数据。这种方式不仅直观,而且非常灵活,同时也意味着若开关切换操作有变,只需改变对应板卡的操作数据即可。这大大提高了软件的灵活性和可用性,同时也满足系统高可用、模块化的要求。

开关信息表部分截取图片如图4所示,最左一列对应编码-开关映射表中的各开关板卡逻辑编号,中间一列代表开关板卡在CPCI机箱中总线号,右边一列代表开关板卡在CPCI机箱中的槽号。这个表作为编码-开关映射表的补充,保障了开关模块物理位置变更的情况下,无需修改软件代码,只需要修改配置文件即可。

图4 开关信息表截图

2.3.2 测试报告管理程序设计

测试系统在完成测试后,除了应该将测试结果形成测试记录,显示在人机交互界面上,还应具备保存测试结果的功能,以便用户在日后调出历史记录进行查询,此外测试系统还应该具备查询历史记录的功能。由于测试报告的数据结构与Microsoft Excel表单的数据结构相类似,因此采用Microsoft Excel来保存测试报告,并通过LabWindows/CVI提供的关于Excel操作的库函数,完成对数据的保存、查询等操作。另外,利用LabWindows/CVI提供的Table控件实现测试结果在人机交互界面上的显示。

2.3.3 多线程技术与超时机制

在测试过程中,因为指标参数众多,某些指标测试时所需测试时间较长,且每种指标测试时有可能出现测试故障导致测试函数无法返回,致使整个系统软件冻结,不能响应用户的随机操作,甚至有可能造成系统崩溃而出现死机现象。为避免这种现象的产生,系统在开发时充分利用多线程技术,采用针对每个测试过程开辟新线程与主线程并发执行的方式,使系统始终响应用户事件,增加了用户对系统操作的可控性[6]。LabWindows/CVI开发环境提供了较完善的多线程操作库函数。线程结构如图5所示。

为了给测试响应时间设置一个限度,更有效地避免因测试过程中产生故障而导致测试响应时间过长甚至无法返回,在该测试软件中引入超时机制,配合测试线程的使用,保证测试过程的高速性和可靠性。超时机制程序流程图如图6所示。

3 结束语

文中对某毫米波系统内场测试仪的功能、系统组成和软件设计进行了系统的介绍。该内场测试仪不但能对毫米波被测设备各种指标和功能进行自动测试,而且当被测设备存在故障时,能对被测设备中的故障模块进行诊断定位。该测试系统已经成功用于实际应用中,且运行可靠,测试快速、准确,满足标准化、模块化的自动测试要求,具有一定的参考、借鉴价值。

图5 线程结构图

图6 超时机制程序流程图

[1] 余宏明,张志坚.毫米波雷达及其对抗[J].舰船电子工程,2008(2):168-171.

[2] 杨春,杜舒明.美国军用自动测试系统发展趋势[J].国外电子测量技术,2004(6):5-7.

[3]刘鑫,周金莲.CompactPCI总线工控机技术的现状与应用[J].电子技术应用,2002(7):6-7.

[4]张毅刚.虚拟仪器软件开发环境LabWindows/CVI6.0编程指南[M].北京:机械工业出版社,2002.

[5] 骆斌,费翔林.多线程技术的研究与应用[J].计算机研究与发展,2000(4):31-34.

[6]许晓炜,黄建国.基于多线程的通用自动测试系统软件设计[J].科技天地,2008(2):59-60.

[7] 谭浩强.C程序设计[M].北京:清华大学出版社,1999.

[8] 李立功,年夫顺,王厚军,等.现代电子测试技术[M].北京:国防工业出版社,2008.

[9] 李行善.自动测试系统集成技术[M].北京:电子工业出版社,2004.

猜你喜欢
自动测试板卡线程
基于C#线程实验探究
车载控制器CVRE板卡显红故障分析及处理
基于国产化环境的线程池模型研究与实现
线程池调度对服务器性能影响的研究*
JXG-50S型相敏轨道电路接收器自动测试台
关于某型雷达自动测试系统的几点认识和建议
基于组态王软件和泓格PIO-D64 板卡的流水灯控制
一种基于光纤数据传输的多板卡软件程序烧写技术
基于ATE与BIT组合的NAMP自动测试与故障诊断系统设计
一种卫星低频接口自动测试系统