兴趣联盟 - 测试测量
-
从传统意义上讲,测试工程师将进行测试编程,并将其输入计算机或其他控制器。这类程序可能包括测试执行程序以及函数程序与其他子程序。执行程序通过以适当的顺序来调用不同的函数或子程序,从而控制测试流程。函数和子程序通过向测试系统中的仪器发送命令等对其进行配置并启动测试。它们对数据进行处理和评估,并对待测器件做出通过/失效决策,对数据进行存档。通常,对于每个测试的待测器件来说,控制器都将为各仪器发送命令序列,并不断对得到的数据进行评估。控制器[1]与仪器之间的所有这些通信都可能大大降低测试速度。2600系列测试脚本处理器[2]允许将大部分控制程序下载至数据源表的易失性或非易失性内存。下载至TSP的程序称作脚本。
脚本可能是一个执行多项测试的较长程序。
依照良好的编程规范,可以编写出创建和调用函数的脚本,就像计算机中的控制程序一样。一旦函数建立,就可以通过脚本以及测试脚本处理器中的其他函数中进行调用,或者通过主机控制器中的测试执行程序进行调用。由于参数可以传递至函数,这就提供了一种非常简单的方法,可以轻松的将被测件测试相关参数,如输入信号电平或限值等,从控制器传递至数字源表内部的测试程序中。
在吉时利公司网站(www.keithley.com)可以下载记录详尽的测试DAC脚本示例。这个脚本是全功能的,可以与图3所示的两个2602数字源表一起使用。为了使读者领会新的脚本语言,我们从DAC测试脚本中选取以下代码片段。注意,双点划线(--)表示注释。
让我们看两个典型命令:
node[1].smua.source.func = node[1].smua.OUTPUT _ DCVOLTS
node[1].smua.source.levelv = 0
脚本语言运行使用别名,这可能使代码更可读,并改进代码执行速度。我们为DAC测试示例定义了以下别名:
MASTER = node[1] --Alias indicating control is via Node 1
SLAVE = node[2] --Node 2 is controlled by MASTER via TSP-Link
IOUT1 = MASTER.smua --Alias for SMU measuring current output #1
--IOUT1 is equivalent to node[1].smua
IOUT2 = MASTER.smub --Alias for SMU measuring current output #2
--IOUT2 is equivalent to node[1].smub
DIO = MASTER.digio --Alias for Digital I/O of 2602 #1
--DIO is equivalent to node[1].digio
VPLUS = SLAVE.smua --Alias for SMU supplying V+ and measuring current draw
--VPLUS is equivalent to node[2].smua
VREF = SLAVE.smub --Alias for SMU supplying reference voltage (Vref)
--VREF is equivalent to node[2].smub
在整个示例中都使用了别名。利用定义的别名,示例命令可以重写为:
IOUT1.source.func = IOUT1.OUTPUT_DCVOLTS
IOUT1.source.levelv = 0
通常,脚本语言[3]不需要明确声明变量。根据对其的赋值,它们被声明和定义为 “on the fly”。但表格(也就是数组)除外, 它们必须定义数据类型。所有变量都是全局的,除非明确声明为本地的。在代码片段出现以下“常数”:
Vref = 10 --Use +10VDC reference voltage
IoutMax = 0.002 --Max expected current output
Nplc = 0.001 --Integration time for SMU A-to-D converters (in terms of power line cycles)
Nbits = 8 --Number of DAC control bits (digital inputs)
Ncodes = 2^Nbits --Number of possible control codes
MaxCode = Ncodes - 1 --Decimal equivalent of full-scale code (255 for 8-bit DAC)
Lsb = Vref / MaxCode --Nominal value of least significant bit
在开始实际测试序列之前,一般要对仪器进行某些初始设置。在我们的示例中,初始设置包括设置源函数及范围、测量函数及范围、电压检测模式等等。所有这4个源-测量单元[4]的配置都是类似的。对于节点1的SMU A,某些设置命令如下:
MASTER.reset() --Reset all Node 1 logical instruments to default settings
上一篇: “数字生活”新前景 下一篇: 如何创建、下载和运行脚本