您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 测试系统中开关测量解决方案的比较
这篇应用指南比较了在功能测试和数据采集环境中所使用各种开关/测量解决方案的功能特性、执行速度和软件开发的容易程度。所考察的产品包括在VisualStudio.NET应用开发环境中的Keithley27xx、Racal1256、Agilent34970A和Agilent34980A开关/测量单元,以及Agilent3499A/34401A组合、AgilentE1411B/E1476AVXI组合和NationalInstrumentsPXI-4070/SCXI-1128PXI组合。开关/测量系统特性测试系统中存在各种复杂的测量功能,但系统总要包括两种部件—数字万用表(DMM)和多路继电器开关。其核心功能是开关和测量。可用三种不同方法实现这一核心功能:用电缆互连的分立仪器,如Agilent34401A台式数字万用表,它们连接到Agilent3499A/B/C开关机箱或Racal1256开关机箱。VXI、PXI或PXI混合主机,如AgilentE1411BVXIDMM和E1476AVXI开关卡,NIPXI-4070DMM和SCXI-1128开关卡(后者为混合配置,其控制信号由PXI背板和SCXI背板共享,它们在一个组合机箱中,或通过PXI机箱至独立SCXI机箱的电缆装置)。测试系统中开关/测量解决方案的比较应用指南采用包含DMM和各种开关卡的专用仪器,如Agilent34980A、Agilent34970A和Keithley2701开关/测量单元。每一类解决方案都有各自的所长和所短,我们将对此作深入讨论。这些设备的使用方式可分成两大类:数据采集和功能测试。您所选的解决方案与您的使用方式有极为密切的关系。数据采集和功能测试的差别在这两类测试系统中可使用同样的电压表和开关:数据采集(DAQ),通过获取大量数据表征设备的机械、电气或电子性能,例如航天器重返大气层时要测量数千点的温度。功能测试(EFT),向被测装置(DUT)的电子设备施加激励,监视输出响应是否与预期响应一致,把结果与设置极限比较,例如确定汽车的引擎控制模块是否正常工作。2在这两种环境中,同样硬件所能实现的吞吐率有很大差异。DAQ模式为执行扫描测量对电压表和多路开关一起编程—把开关断开/闭合状态表下载到开关盒,硬件握手线把DMM测量和相应开关设置链接到一起。来自电压表的测量完成触发把状态表往前推进,或让它自由运行。DMM在发送测量完成触发后等待预先编程的延迟时间,也可等待来自开关被称为推进触发的硬件信号,该信号说明开关已进入其编程状态,并正常获取读数。硬件握手使最小化仪器间传输的I/O量成为可能。此外,每次测量不需要再花设置时间;设置信息被下载,然后通过一条初始化命令完成全部操作。因此执行速度也很高。根据要求的测量分辨率和开关速度,可达到1,000读数/秒的量级。在这样的系统中,因为要传输大量数据,所以高速背板能够提高吞吐率。VXI和PXI在这里可大显身手。而FET系统的情况则有所不同。必须施加激励和进行测量,为覆盖DUT上的所有引脚,这一过程要重复多次,因此必须进行重复的激励和测量仪器读数以及重新配置系统(闭合继电器、取读数、断开继电器)。通常要通过轮询保证读数已就绪,这就会增加额外的I/O执行时间。因此执行速度通常为500读数/秒。由于只有较少的读数,选用高速背板并无太大意义,低价的专用开关_测量单元则是更好的选择。卡箱结构市场上所有开关系统都采用卡箱式结构,并提供各种类型的插卡。有些采用开放体系结构,这意味着背板接口备符合相关的工业标准,并可由多家厂商实现,如VXI和PXI。另一类采用特定厂商的内部背板,如NI的SCXI,Racal的1256,Keithley的27XX,以及Agilent的3499家族、34970A和新的34980A。许多厂家这样做的原因是供应商和用户不必提供和需要开放标准所要求的额外能力。而仅为它们的开关卡在机箱中提供刚刚足够的功率、冷却和背板速度。这类体系结构一般也提供带有已实现地址译码器的实验电路板,从而为用户增加自己电路保留了空间。除了多路继电器开关和DMM外,由于它们通常是在一起使用,因此开关/测量系统中一般还实现一些其它功能。即:数字I/O(DIO)数模转换器(DAC),有时能快到可作低频的任意波形发生器使用频率计数器/总和器等温的终端接线盒利用实验电路板可定制插卡,如用于信号调理,通常为应变片测量所要求各种类型的开关卡可作为多路开关、矩阵和通用开关配置。它们是:低带宽(DC-100MHz)-FET继电器(高开关速度,高导通电阻,低电压和电流)-干簧继电器(中开关速度,低导通电阻,中电压和电流;低热电动势)-电枢继电器(低开关速度,低导通电阻,高电压和电流;低热电动势)高带宽(高达18GHz)-射频开关(低速、低导通电阻,低电压和电流)-微波开关(低速、低导通电阻,低电压和电流)3易于编程应用开发环境任何测试系统都需要编程仪器。常用的应用开发环境(ADE)有:图形语言:-AgilentTechnologiesVEEPro-NationalInstrumentsLabVIEW文本语言:-MicrosoftVisualStudio.NET(VB/VC++7.0,C#andmanymore)-NationalInstrumentsLabWindows/CVI-PreviousversionsofMicrosoftlanguages(VB/VC++6.0,etc.)-RockyMountainBasic(“HPBasic”)其中最常用的三种语言是VEEPro、LabVIEW和VisualStudio6.0,VisualStudio.NET的使用在迅速上升。Agilent为VisualStudio.NET环境提供的软件产品是T&MProgrammers’Toolkit,NI是MeasurementStudio,这两种产品都使仪器使用更容易。在本应用指南进行的基准测试中,所有仪器都用AgilentT&MToolkit和NIMeasurementStudio在VisualStudio.NET中编程。驱动程序vs.SCPI独立仪器通常需要在接口,例如GPIB、USB或LAN上发送ASCII命令。这类命令已经实现标准化,并被称为SCPI(可编程仪器的标准命令)。它们可通过直接调用对相应接口讲的底层功能,或通过高级功能调用发送到仪器。软件中包含的这些高级调用被称为驱动程序。您可自己编写驱动程序,也可使用制造商或他人提供的驱动程序。卡箱式系统,例如VXI和PXI更经常地通过数据寄存器,而非ASCII命令控制(VXI有些信息插卡依赖作为VXI规范组成部分的内置字串行协议)。虽然可按上面所述的方法通过编写程序用同样的底层接口功能调用把必要的数据发送到这些寄存器,但通常习惯是使用由制造商提供的驱动程序。也可向某些基于寄存器的仪器发送SCPI命令,安捷伦为它的一些VXI卡提供可下载的SCPI驱动程序(D-SCPI)。这些代码驻存在VXI主机0槽GPIB控制器(E1406A命令模块)的FlashROM中。安捷伦也为它的VXIFireWire接口提供解释SCPI(I-SCPI)。I-SCPI一般比D-SCPI快得多,因为它使用更快的PC命令分析。PXI不提供类似设施;所有PXI卡均为基于寄存器的插卡,因此需要制造商提供的驱动程序。为VXI和PXI仪器提供的驱动程序是经编译的DLL,它可由任何语言使用。也可作为AgilentVEEPro或NILabView的专门驱动程序提供。除了要求驱动程序的PXI外,多数驱动程序不包括所有可能的仪器功能。一般是“贯通”功能,即允许驱动程序中未实现的SCPI命令从驱动程序发送到仪器。在VisualStudio环境中,Microsoft的IntelliSense特性使驱动程序的使用非常容易,因为程序员会从下拉菜单表中选择易于理解的名称,观看功能及其参数说明。在考虑选择是用SCPI还是用驱动程序时,驱动程序的优点有:1.对其他程序员来说,程序应该更易移植和有更高的可读性。虽然SCPI语法广为人知,但要精确确定则需要经常查看仪器编程手册。还应注意驱动程序能为您最终产生SCPI命令,因此在您调试应用时,总需用各种方式掌握它。42.在开发期间通过IntelliSense(VB6和.NET)的内置帮助。3.如果有内置的状态高速缓存,则可改进执行速度(下面将更详细讨论)。4.可能已为您考虑了仪器的独特之处,从而减少需要提供支持的概率。除了上面已提到的PXI外,驱动程序的主要缺点是可能不包括全部功能。此外,如果驱动程序提供不正确的功能,则是极难调试的。使用Agilent测试和测量工具集的I/O监视器将简化这项任务,它可观察实际向仪器发送的SCPI命令。但这也意味着您必须首先掌握SCPI。驱动程序的发布和支持是由仪器制造商,而非独立第三方提供。接口驱动程序在您的程序能够把命令传送到设备之前,必须编写控制硬件接口,如LAN、USB、GPIB、MXI-3和FireWire的驱动程序。管理这些硬件的底层驱动程序作为厂商I/O库的组件提供。NI把它叫做Passport驱动程序,Agilent叫做Tulip驱动程序。因为您并不直接使用它们,因此我们这里不作详细讨论。但您应知道在同样环境中使用NI和Agilent硬件和软件时,它们正在为您工作。NI软件能够访问Agilent接口硬件,同样Agilent软件也能访问NI接口硬件。详细说明见AgilentI/O库在线文档。VISA,VXI即插即用和IVI软件驱动程序是分层组织的。最简单的标准化层为VISA(虚拟仪器软件体系结构,VISA是否是真正驱动程序有不同见解,我们这里不作争辩)。它允许通过viRead和viWrite这类简单C函数调用把SCPI命令发送到仪器,以及通过viPeek和viPoke这类C函数调用把二进制命令发送到寄存器。Agilent和NI是该软件的两家主要提供商。Agilent还提供SICL(标准仪器控制库),把它作为AgilentVISA实现的底层代码使用。通过向“COM友好”环境,如VisualStudio提供它的VISAC函数调用,Agilent也采纳工业标准VISA体系结构。[COM是组件对象模型的缩写,它是Microsoft的封装库标准,使接口更易连通和维护。]包括大多数VXI仪器和所有PXI仪器的基于寄存器的设备都需要驱动程序,除非开发者选择使用前面所述的viPeek和viPoke命令,不过这是非常繁琐的过程。为此建立的VISA顶层称为VXI即插即用。虽然名称中带有VXI,但这一概念早已延伸到非VXI仪器,包括大多数台式可编程仪器。VXI驱动程序是专门用于仪器的,仪器名包含在功能名中。典型C语言例子为:hp34401_read_Q(vi,readings,numReadings);(当安捷伦还是惠普公司的一部分时,就已编写了许多Agilent驱动程序,为保持后向兼容性而未改变驱动程序名。)5由于许多产品有类似的功能性,因此没有必要复制从VXI即插即用标准得到的功能。为此可把各种仪器归入若干门类,如数字万用表、示波器、函数发生器和开关,用于这些门类的驱动程序被命名为IVI(可互换虚拟仪器)。这些驱动程序的定义已由称为IVI基金会的组织作了标准化。有两类IVI:IVI-C,由NI提出。根据所使用的语言(C、LabView等)有不同版本。典型C语言例子为:IviDmm_ReadMultipoint(vi,maxTime,arraySize,readingArray,&actualPoints);IVI-COM,由Agilent提出,由于它有对许多开发程序环境的适应性,因此各种环境(所有MicrosoftCOM环境,包括VEE、LabView、VisualStudio等)不需要不同版本。VisualBasic例子为:myDMM.Measurement.ReadMultiPoint(maxTime,readings)在这两个例子中,可通过使用特定仪器的功能调用,管理特定门类功能未映射到仪器
本文标题:测试系统中开关测量解决方案的比较
链接地址:https://www.777doc.com/doc-3968518 .html