叶礼兵
(深圳职业技术学院,深圳,518055)
众所周知,测量自动化是测量仪器发展的主要方向,随着现代科技的不断发展,测试项目日益增多,测量范围越来越多,对测试的速度、精度越来越高,表现在测试任务工作量大、精度要求高、测试速度快等方面,传统手动操作仪器测试过程中,测试周期长,过程繁琐,人为因素对测试误差的影响较大,并且测量结果通常采用人工记录,数据分析管理缺乏效率与持续性,在一定程度上不利于数据的积累与后续处理。传统人工测量的局限性,注定其不能继续满足实际测量的需要,因此在无线通信测量行业必将被自动测试系统所取代。通常把在最少人工参与的情况下能自动进行测量、数据处理并输出测量结果的系统称为自动测试系统。一般,自动测试系统包括控制器、程控仪器与设备、总线与接口、测试软件、被测对象五个部分。本文基于Visual Basic 语言以及GPIB 接口,设计了一套适用于各种信号测量的自动化测试系统。
本系统由计算机、GPIB 接口卡和GPIB 标准总线仪器通过标准GPIB 专用电缆连接而成。系统由计算机通过SCPI 语言对各种仪器进行统一控制和管理,实现各种设备的自动测试。系统硬件组成中,所有测试涉及仪器全部带有GPIB 接口(GPIB 地址由程序统一分配),仪器与计算机之间通过GPIB 专用电缆连接,仪器之间的射频信号传输则通过专用的信号连接线实现。本系统具有如下显著优点:
1)仪器的远程控制,包括启动和关闭与参数设置等。
2)自动测量,并与测试指标比较自动给出测量结果。
3)系统对仪器进行程控,可通过自校准、多次测量平均等方式提高测量精度。
4)测量过程中对测量数据分时自动存储,数据处理、分析灵活方便。
5)自动生成测量报告。
测试开始时,计算机与仪器通过安装的GPIB 卡进行通信。软件通过SCPI 语言首先对仪器进行初始化设置,初始化完成后,软件再根据测试模板对射频信号发生器进行信号参数设置,然后控制测试仪器进行测量,测量完成后将相应测试结果读回系统,根据预设的行业标准指标对相关数据进行分析与处理,最后给出测试指标的评价结果。
系统软件采用模块化设计,主要分为用户管理模块、查询模块、模板管理模块、测试模块、结果处理模块5个子系统,每个子系统又包含若干个功能模块。其中与测试流程相关的主要包括查询、测试、结果处理、模板管理等模块,查询模块负责测试模板、测试指令以及测试结果的查询;模板管理模块负责测试项目管理、指令模板管理、测试模板添加、测试模板管理、仪器类型管理、仪器型号管理等;测试模块负责项目的整体测试和分项测试工作。系统通过关系数据库实现各个子系统的关联。数据库中与测试流程相关的表单主要包括测试项目、测试模板、指令模板、测试结果4个,它们之间通过唯一的项目编号(ID)进行关联。
以射频信号发生器输出频率示值测试项目为例,说明测试流程的实现过程。该项目ID 为2,测试模板为测试时需进行设置的参数,包括信号发生器不同通道(var1)、频点(var2)、信号电平(var3)等,测试模板为测试过程中涉及的11 条SCPI 语言,如下:
测试时,系统先调入测试模板,测试模板通过项目ID 找到对应的指令模板,指令模板中涉及的各种参数通过数据库与测试模板关联,得到测试项目所对应的完整指令,测试时通过反复调用以下两个函数,实现对仪器设置或测量操作。
A)仪器设置操作
B)仪器测量操作
本系统通过生产实践证明,专业测试人员手工测试需耗时大半天的完整测试项目,采用本文开发的系统,仅需1个小时左右,且测试人员只需按照系统提示信息进行操作,无须掌握专业的仪器操作即可完成。综上所述,本系统对测试人员的专业要求低,还可大幅度提高测试效率,再者,模块化的设计便于修改和维护,易于后续功能开发与扩展。
[1] 听雨轩工作室,AgilentVEE 虚拟仪器工程设计与开发。[M].北京:国防工业出版社,2004.
[2]刘国林,殷贯西等.电子测量[M].北京:机械工业出版社.2003.
[3] Agilent Technologies.Agilent technologies vISA user’s Guide[M].2001.