关键词:测试系统 VXI总线 兵器测试
随着军事装备的发展,其功能越来越强大,设备越来越复杂,对测试系统的要求也越来越高。测试项目和范围的不断扩大,对测试速度和准确度的要求进一步提高,对测试系统的可靠性、通用性、开发时间等也提出了更高的要求。
VXI(VMEbus Extensions For Instrumentation)总线技术是当今计算机测控技术发展的主流,也是自动检测设备(ATE)标准化技术的核心。VXI总线是一种真正的世界范围内完全开放的总线标准,它具有标准开放、结构紧凑、数据吞吐能力强、模块化等特点。以VXI技术为核心组建通和装备的测试系统不当前装备测试的首要选择。
1 测试系统硬件的组建
VXI总线测试系统是一种计算机控制的测试系统,一般由主计算机、VXI总线主机箱和VXI总线模块组成。依据主计算机与系统的连接方式不同,系统可分为内嵌式和外挂式两种。所谓内嵌式就是将一台标准计算机集成在0槽模块中,应用时只需接上键盘、显示器、鼠标等设便可实现VXI控制。它具个有最小的物理尺寸,并与背板总线直接连接,可直接采用字串协议与VXI消息基设备进行通信,充分发挥了VXI总线的性能,但不能跟踪PC机技术的发展,通常用于数据传输速率高和对测试系统空间尺寸要求高的场合。而外挂式,主计算机采用GPIB(IEEE488)或者MXI总线,通过安装于计算机内部的GPIB或MXI接口卡,完成对VXI总线、GPIB总线中VME总线等仪器的控制。这种方式的优势在于能够随着能爱畜计算机的发展而不断更新控制平台,还可以与GPIB、VME总线仪器方便地构成混合测试系统。
目前国内许多单位拥有大量的GPIB及VME总线仪器,而在某些领域内,面向被测对象还需用一些专用设备。所以考虑到经费的限制,只要条件(如体积、速度等)允许,就应当充利用这些现有资源;同时有些测试领域(如微波)的VXI产品开发种尚不够多,还存在系统开发的因循渐进问题,所以一般情况下,我们应选择VXI总线混合式测试系统。系统组建可按图1所示的流程进行。
其中,测试需求分析和测试方法研究应在系统集成人员的协助下,由熟悉被测对象的专业人员来完成。这两项研究的结果,直接影响到整个系统的简繁程度和设计的合理性、先进性。应当在满足测试要求的前提下,尽量选择性能价格比好的产品。例如,在采集很窄的脉冲时,如果信号是可重复的,就没有必要对采集模块的采样速率做出很高的要求,使用采集速度不太高的数字示波器在多周期里对其进行随机采样,就可以得到所需要的波形和各种参数。后面各项应由测试人员、专业人员配合系统集成人员共同完成。
除必不可少的专用设备外,所选设备应尽量通用化、标准化。主机箱和0槽模块以及通用仪器模块应以知名公司的成熟产品为主,这样可以保证质量,性能价格比适中。对于主机箱,一般情况下应选择普通主机箱;在对电磁兼容要求高的测试场合,应考虑选择微波主机箱;车载、舰载等场合应当考虑选择加固机箱。其它模块可以在优先考虑适用、成熟而对信誉良好的VXI产品的前提下,根据实际情况,尽量利用原有的仪器资源。在将GPIB仪器更换为VXI模件时,应选易后难、循序渐进。当系统测试有特殊要求时,为了降低价格、提高性能,也可自行设计模块。
2 测试系统软件平台的选择
测试软件是为有效地运用硬件系统资源、实现各种测控功能而提供的程序系统及有关资料的集合。测试软件分为系统软件和应用软件。
系统软件是指为充分发挥或扩充硬件交通而配置的软件。VXI系统软件按其层可分为与仪器打交道的底层软件、中间层的仪器驱动软件以及最高层的“软面板”软件;除此之外,属消息基模块的仪器还有相应的驻机软件。这些软件通常是由厂家提供的。由于VXI总线规范只规定了机械和总线的规范,没有对软件和语言作出规定,为了提高仪器驱动程序质量和兼容性,世界上主要的仪器生产厂家成立了VXIplug&play联盟,规定了VXI软件规范,即VPP规范,增加了系统的开放性和多个厂家的互换性。现在厂家提供的驱动器一般都是符合VPP规范的。
应用软件是指用户为解决采集、测试和控制等具体问题而编制的软件。用户在开发应用软件时,软件平台的合理选择对于包括VXI产品在内通用设备的应用开发具有重要的影响。除了Windows下通用的编程环境外,目前比较流行的开发平台有以下三种:
(1)NI公司的LabWindows/CVI,它提供ANSI C编程环境,支持有图形用户接口的开发应用工作,支持VPP仪器驱动器。图形用户接口专门用于仪器控制器的设计,支持仪器驱动吕的交互式控制、软件的操作执行等,用它开发符合VPP规范的仪器驱动器比较方便。
(2)NI公司的LabView,它虽然不使用C语言,但有使用仪器驱动器DLL的能力,支持VPP仪器驱动器。它支持图形用户接口的开发,是一种图形化编程语言。
(3)HP公司的HP VEE,它提供的仪器控制方式比较多,如使用SCPI命令的Direct I/O方式和使用VPP仪器驱动器等;对于HP公司的仪器,还可以使用它提供的面板驱动器(Panel Driver)。编程时它和LabView相似,使用图形化的编程工具,测试人员只需调出所使用仪器的图标,输入相关的条件和参数,并按测试流程将仪器连接起来就可完成编程工作。
此外,美国的Tektronix、ManTech和Racal公司都已研制出基于图形的软件开发平台。具体使用哪种软件平台,用户可根据自己的需要和对软件的熟悉程序来决定。如果采用的是混合式测试系统,应用于较简单的测试任务、对测试速度要求不高时,可根据产品的厂家选用其中一种,采用相应的图形编程,或者形和传统编程语言混合编程;当测试任务较为复杂、对测试速度要求较高时,则可选用语言编程,如LabWindows/CVI,或者选择一种通用的WINDOWS平台,如采用Visual Basic或Visual C++等语言编程开发。
3 专用模块的开发
VXI总线模块设计主要包括寄存器基模块设计和消息基模块设计。对于一些功能简单而通信速度高的模块,可设计成寄存器基器件;对一些复杂的具有本地智能的模块,应设计成消息基器件。无论是消息基还是寄存器基,VXI总线模块的电路都由总线接口电路和功能电路两部分组成。其中,功能电路部分需要根据本模块要完成的测试测量功能来进行具体的电路设计。由于当今电子仪器种类繁多,各类仪器采用的测试测量方法各不相同,并且同一种电子测试测量功能也可以采用不同的方法实现,因此,一般仪器的功能电路最好由对该仪器有一定经验的工程师设计完成。VXI接口电路设计的依据是两个国际标准IEEE 1014和IEEE 1155,即VME计算机总线标准和VXI总线仪器标准,因而VXI总线接口仪器电路具有很强的共性。下面主要对接口电路的设计作出说明。
对于寄存器基的模块,它只支持VXI总线寄存器配置,不支持VXI总线的通信协议。所以VXI寄存器基模块接口的主要功能是监视总线上由主模块启动数据传输总线的DTB周期,并且在DTB周期指向它们时作出响应。当模块需要中断服务中,它还应当有中断模块。
消息基器件不仅具有通讯能力和本地智能,而且还具有DTB主模块能力。与寄存器基模块相比,它不仅有上述的VXI总线从者接口,而且还具有本地智能,以支持由CPU模块通过器件配置寄存器的通讯寄存器实现字串行通讯协议。
设计VXI总线的接口电路时,器件的配置可以用双端口RAM实现,也可以使用可编程逻辑阵列(PLA)技术或现场可编程门阵列(FPGA)技术。如果用户不想自行设计接口电路,可采用一些仪器公司的专用接口芯片,如Interface公司的IT9010和IT9010M。前者是寄存器基接口芯片,后者是消息基接口芯片。
在完成硬件的制作以后,应当为模块编写符合VPP规范的驱动器。目前比较流行的开发仪器驱动器软件是LabWindows/CVI。CVI为用户开发仪器驱动器提供了Create IVI Instrument Driver工具。用户在开发仪器驱器时,一般可以采用两种方法:一是在Create INI Instrument Driver工具中选择Create New Driver,这个工具根据用户选择的仪器接口类型和仪器的种类,自动生成IVI规范所要示诉所有模板函数框架的代码,用户根据自己开发模块的实际情况填充代码,也可以在此基础上增加其它函数。另一种方法就是根据已有的具有类似仪器功能的仪器驱动器进行改造,在Create IVI Instru ment Driver工具中选择 Create Driver Based on Existing Driver,然后输入已存在的驱动器,CVI会自动对此驱动器代码的仪器前缀等进行修改,用户在此基础上再修改驱动器代码,实现对自己开发仪器的控制。当然,用户也可以在Windows通用软件平台上开发仪器驱动器,如Visual C++。一般情况下,它们比使用CVI软件开要困难一些。
VPP规定厂家为用户提供仪器驱动器的同时,必须提供仪器的软面板。仪器的软面板是不依赖于任何开发环境的可执行程序。它取代了传统的台式仪器的前面板,在计算机屏幕上显示用于控制仪器的各种按键、旋钮和仪器输出信息等。软面板有两个作用,一是帮助用户检测系统的通讯接口和仪器是不确配置和正常工作;二是帮助用户熟悉仪