首页 文学文摘 时政新闻 科技科普 经济法律 健康生活 管理财经 教育教学 文化艺术 社科历史

可靠性试验自动测试系统的设计

作者:张国龙,梁玉英,巴 宁 来源:现代电子技术


  摘 要:介绍基于GPIB技术的可靠性试验自动测试系统的设计,详细阐述了该系统的硬件组成和软件编程。该自动测试系统不仅具有很高的测试效率和测试精度,而且操作简单,具有良好的扩展性,适用于通用雷达装备板级可靠性试验的评估与验证。经过长时间的试验测试以及获得的大量数据表明,该可靠性试验测试系统运行稳定可靠,数据采集、存储、分析方便,满足通用雷达可靠性试验的测试要求。
  关键词:可靠性试验; GPIB; 自动测试系统; 雷达
  中图分类号:TP23 文献标识码:A
  文章编号:1004-373X(2010)11-0007-03
  
  Design of Automatic Test System for Reliability Testing
  ZHANG Guo-long, LIANG Yu-ying,BA Ning
  (Department of Optics and Electrics Engineering, Ordnance Engineering College, Shijiazhuang 050003, China)
  Abstract: The design of GPIB-based automatic test system for reliability testing is presented. The hardware composition and software programming of the system are elaborated. The automatic test system not only has high test efficiency and test accuracy, but also has good scalability, is easy to operate and suitable for general radar equipment board-level reliability test evaluation and verification. The long term testing and the obtained mass data show that the reliability test system has the follow characteristics: stable and reliable operation, convenient data acquisition, storage and analysis. The system can meet the requirements of the common radar reliability testing.
  Keywords: reliability testing; GPIB; automatic test system; radar
  
  0 引 言
  随着电子装备的复杂程度越来越高,高技术条件下现代战争所具有的复杂的战场环境和超快节奏对装备的可靠性的要求也愈来愈高,可靠性试验技术的先进程度直接影响着可靠性的研究,目前国内研究可靠性试验的科研单位大多采用传统的台式仪器单台手工测量、试验及后期的数据处理存在很多缺点。基于GPIB的自动测试系统是计算机技术和自动技术相结合的产物,目前仍广泛应用于众多领域,将其应用于可靠性试验领域已是必然的趋势。
  本文提到的可靠性试验自动测试系统,是针对在不同应力条件下进行的可靠性试验可能存在的各种实际情况,自行开发的一套电子装备可靠性试验自动测试系统。通过GPIB接口把计算机与Agilent34970A多通道数据采集/开关单元相连,通过Visual C++6.0开发的软件对Agilent34970A进行控制,可自动进行可靠性试验的数据采集、存储及数据处理。
  1 可靠性试验测试系统需求分析
  可靠性试验自动测试系统是在传统的试验测试方法基础之上,采用目前比较先进的自动测试技术[1]的设计理念,从硬件和软件两个方面入手,实现以硬件为支撑,软件控制硬件的可靠性试验自动测试系统,不仅提高了试验的效率,也节约试验的成本。
  本系统主要是针对通用雷达装备的加速寿命试验等多应力条件下可靠性试验的测试要求而设计,需要根据可靠性试验技术指标及设计参数确定试验方案,然后选择环境试验控制设备及测试设备,筛选受试设备,由于加速寿命试验和环境试验要求受试设备在强应力环境下进行试验,因此所选用的元器件或样板电路必须按规定的技术条件能够通过高低温,湿热,振动等多项试验。国内外研发的环境试验控制设备比较先进,能够施加温度、振动、湿度等超高应力环境[2],并且可靠性试验方案及理论的研究也比较广泛,然而针对可靠性试验的测试系统的研究较少,因此设计可靠性试验自动测试系统具有一定的实用价值和理论意义。系统设计是根据可靠性试验的技术指标要求,选择合适的测试仪器、接口以及施加电应力的激励源等硬件设备,基于GPIB接口技术[3]来设计自动测试系统。
  以某型雷达的信号发生板为研究对象,进行加速寿命试验[4]。测试技术指标要求如下:
  (1) 对于该信号板,需要提供3路外加电源,分别为+48 V和±12 V直流电源。
  (2) 所选电路板主要功能是产生20 kHz的正弦信号,其频率、周期以及幅度作为监测的特征量。要求测试系统能够对以上特征参数自动提取。
  (3) 可靠性试验周期长,为防止采样时间过短时电路板的突变等突发情况对数据的采集处理影响过大,将采样间隔确定为24 h。
  2 可靠性试验自动测试系统的设计
  2.1 系统硬件构成
  该系统硬件部分主要由计算机、测试仪器模块、激励源模块、USB-GPIB控制器、GPIB电缆组成,如图1所示。其中主控计算机是作为连接GPIB接口的测试仪器及实现软件控制硬件的平台;测试仪器模块采用Agilent公司的34970A数据采集仪器[5],该仪器功能强大,是一种高性能、低价位的数据采集和开关主机;USB-GPIB控制器是一个USB-GPIB接口的转换控制器。激励源模块主要是给试验对象提供电应力的直流线性电源。
  图1 可靠性试验系统硬件组成
  2.2 系统软件的开发
  本测试系统的核心部分是软件开发方面,软件采用Visual C++ 6.0作为开发工具,系统的软件设计以数据的采集、传输、处理、存储为核心,以简明、友好的用户操作界面为人机交互接口。软件部分由6个模块组成,其中,数据的采集、传输由GPIB通信控制模块和UDP通信模块来完成;数据处理由数据处理模块来完成。各模块关系如图2所示。
  图2 系统软件模块
  软件结构:根据层次化的软件设计思想,该综合测试系统的软件结构由上自下分为三层:人机交互层、测试功能层和硬件驱动层。
  硬件驱动层 硬件设备的驱动设计包括硬件接口、仪器驱动程序等与资源相关的所有软件驱动,主要完成软件平台与硬件之间接口驱动。主要包括以下几种功能模块:硬件初始化功能模块、硬件操作功能模块、关闭硬件功能模块和硬件设置、校准功能模块。
  测试功能层 测试功能层实现激励信号输出、测试数据处理和Excel表格填表功能。
  人机交互层 人机交互层为系统的顶层控制部分,通过用户界面接受用户的操作信息,再来调度测试功能层完成相应的测试项目。
  
  2.3 系统关键技术的实现
  2.3.1 仪器底层控制
  本系统的开发是应用了HPVISA仪器I/O控制软件。仪器I/O控制软件[6]是处理计算机与仪器间通过物理连接进行通信的问题,也就是处理计算机与仪器间传送命令与数据的问题而使用的。
  VISA[7]就是用于仪器编程的标准I/O函数库及其相关规范的总称,一般称这个I/O函数库为VISA库。VISA库驻留于计算机系统中,使计算机与仪器之间的软件层连接,用以实现对仪器的程控。作为仪器I/O函数库,软件中对VISA函数的调用与传统的I/O软件编程基本相同,主要通过对设备I/O端口函数、读写操作控制函数、事件处理函数的调用来实现。
  VC++6.0程序在调用VISA库函数时,必须在头文件中加入“#include visa.h”和“#include visatype.h”两条语句,然后可在具体软件中对各VISA库函数进行调用。
  下面以设置测试仪器34970A为例来说明怎样通过发命令形式对仪器进行控制的。
   viSession videfaultRM,vi34970A;
  viOpenDefaultRM(&videfaultRM);
  vi0pen(videfaultRM,″GP1B::3::1NSTR″,V1_NULL,V1_NULL,&vi34970A);//设置电源逻辑地址为3
  viPrntf(vi34970A,″:OUTPOFF\\n″); //关闭电源输出
  viPrntf(vi34970A,″VOLT220\\n″); //设置电压
  viPrntf(vi34970A,″:FREQ50\\n″); //设置频率
  viPrntf(vi34970A,″:OUTPON\\n″); //打开电源输出
  floatfValueV,fValueHz;
  viQueryf(vi34970A,″:MEAS:V0LT:AC\\n″,″of″,&fValueV);//回读电压
  viQueryf(vi34970A,″:MEAS:FREQ\\n″,″%f″,&fValueHz);//回读频率
  …
  viClose(vi34970A);
  viClose(videfaultRM);
  2.3.2 仪器类的设计
  利用面向对象技术实现仪器操作的模块化,对于自动测试软件的通用性及功能模块的重复利用性的提高具有现实意义。在自动测试系统中,各种仪器在连接、数据传输等方面都存在着共同点,因此从功能需求中挖掘出各个仪器的共同点,实现对仪器操作的模块化,减少代码的重复性,做到操作风格的统一,便于系统的扩展和维护,是设计仪器类[8]的主要目标。计算机对各种不同的仪器进行操作,实现自动测试,基本的流程如图3所示。
  图3 仪器控制基本流程
  根据以上分析,针对不同仪器在测试系统中的共同点,在进行仪器抽象类的设计时,定义并实现了针对各仪器通用功能模块的函数和记录通用信息的变量。
  2.3.3 数据库的设计[9]
  本系统软件平台的数据库使用Access 2000系统开发,测量结果实现入库的程序编制流程步骤如下:
  (1) 建立数据库表,并设置ODBC连接:
  首先,在Access 2000中建立SignalTest数据库,然后选取“设置”→“控制面板”→“数据源(ODBC)”→“用户DSN”选项,选中所建立的signal表,使这个数据表与ODBC系统关联起来,这样可以通过在VC程序中设立相应的类指向ODBC系统,实现对数据表的访问操作。
  (2) 在VC程序中对相应的类进行定义,建立起指向signal数据表的指针:首先,在VC中建立一个CRecordset类CDATASET,使其指向ODBC系统中刚刚定义的signal表,这样signal表中的每个字段都与CDATASET类关联起来;接着,在VC的Doc类中定义了一个CDATASET类的具体对象m_dataset,并在全局变量中定义一个指向CDATASET类的指针(CDATASET*)m_pset。
  (3) 通过控制指针的位置指向,将准备入库的各信号特征参数值写入signal数据表:m_pset指针始终是
  指向signal表中的某一行记录的,可随时通过定位它
  的指向记录行来控制对各字段的操作。
  2.3.4 线程控制
  系统使用多线程控制技术[10]。线程是操作系统分配处理器时间的基本单元,并且该进程中可以有多个线程同时执行代码。每个线程都维护异常处理程序、调度优先级和一组系统用于在调度该线程前保存线程上下文的结构。线程上下文使线程在线程的宿主进程地址空间中无缝地继续执行所需的所有信息,包括线程的CPU寄存器组和堆栈。系统在多线程测量同时使用主窗体中的部分相同控件。这部分控件需要进行资源托管和控件申明,以避免在多线程状态下出现多线程冲突。
  3 结 语
  根据GPIB接口总线技术组建的计算机辅助测试系统可以实现自动测量、实时数据处理等功能;结合Visual C++编程技术构建满足系统要求的仪器类,灵活的实现可靠性试验自动测试的要求。本文所设计的可靠性试验自动测试系统经过系统的软硬件设计和实际调试,该系统已经投入使用,运行稳定可靠、数据采集、存储、分析方便,满足通用雷达装备板级可靠性试验的测试要求。
  
  参考文献
  [1]杜里,张其善.电子装备自动测试系统发展综述[J].计算机测量与控制,2009,17(6):1019-1021.
  [2]中国人民解放军总装备部军事训练教材编辑工作委员会.可靠性试验技术[M].北京:国防工业出版社,2003.
  [3]杨会民,田秋成,邢建功,等.基于GPIB接口的自动测试系统[J].微计算机信息,2005,21(1):93-94.
  [4]贾占强.通用雷达装备板级可靠性评估与试验研究[D].石家庄:军械工程学院,2008.
  [5]Agilent.示波器、分析仪、仪表[EB/OL].\.http://www.home.agilent.comagilen.
  [6]黄璐璐,李志华,李训铭,等.VC++6.0环境下GPIB虚拟仪器的设计[J].微计算机信息,2004,20(5):75-77.
  [7]顾志强.基于GPIB的自动测试系统的研究与实现[D].南京:南京理工大学,2007.
  [8]卢成武,种兰祥,张晓博.基于GPIB接口的数字存储示波器功能扩展[J].微计算机信息,2005,21(5):157-158.
  [9]王维玉.Visual C++6.0高级编程技术精粹[M].北京:科学出版社,2008.
  [10]曹瑞基,汪心妍.基于GPIB总线结构的数字多用表自动控制系统[J].中国测试技术,2005(5):81-82.