Teststand应用实例3.docx
《Teststand应用实例3.docx》由会员分享,可在线阅读,更多相关《Teststand应用实例3.docx(21页珍藏版)》请在冰豆网上搜索。
![Teststand应用实例3.docx](https://file1.bdocx.com/fileroot1/2023-7/24/d57e4e60-0adf-4a01-b187-d4d0f0c82a68/d57e4e60-0adf-4a01-b187-d4d0f0c82a681.gif)
Teststand应用实例3
练习三:
顺序测试并行测试自动协调并行测试
目的:
在实际应用中,为了进步测试效率,节省测试时间,往往需要同时进展多个DUT的并行测试,在Teststand环境中,只需要轻松配置,即可实现并行测试及自动协调并行测试。
图1完好练习
硬件平台:
任意波形发生器PXI-5421,
示波器PXI-5122,
矩阵开关模块PXI-2532,接线盒TB-2641,接线盒SCB-264X,
数字万用表PXI-4071,
1KOhm电阻两个〔电阻A,电阻B〕。
硬件连接:
1.连接TB-2641接线盒与SCB-264X接线盒:
一端连接在TB-2641接线盒的J3排线端,
一端连接在SCB-264X接线盒LowerJ3排线端。
2.在SCB-264X上安装电阻:
将电阻A两端分别连接在SCB-264X接线盒的和;
将电阻B两端分别连接在SCB-264X接线盒的和。
3.在SCB-264X上连接PXI-4071:
将PXI-4071的正极〔红色〕连接在SCB-264X接线盒的;
将PXI-4071的负极〔黑色〕连接在SCB-264X接线盒的。
4.直连信号发生器和示波器。
将PXI-5421Arb的CH0直接连接到PXI-5122Digitizer的CH1上。
图2系统架构
顺序测试
操作步骤:
1.启动Teststand,翻开练习二所保存的文件,选择File>>saveas将另存为Ex3sequentia。
2.按照下面步骤确认Teststand中的执行形式为顺序执行。
a.在菜单栏中选择Configure»StationOptions。
b.选择Model标签,在StationModel中选择。
c.保存设置。
3.修改resistortest配置,使其可以自动切换测试不同DUT。
a.选中resistortest
b.在StepSettings中,选择Properties选项卡。
c.选择Switching,在Router(s)toConnect中填入:
"RouteGroup"+Str(RunState.TestSockets.MyIndex),如下列图所示。
d.在ConnectionLifetime下拉框中选择Step项,如下列图所示。
图3配置resisitortest的switch设置
4.插入一个Pass/FailTest,并重命名为frequencytest。
如下列图所示。
图4插入Pass/FailTest测试序列
5.选择为该项测试指定的VI模块。
a.在StepSettings标签下选择Module。
b.点击
按键,从SupportFiles文件夹途径中选择。
弹出对话框,点击确定。
c.VI加载后,窗口的右侧有该VI的图标,并同时显示出输出端子TestPassed?
,点击表达式对话框按键。
图5为Pass/FailTest指定测试VI
d.在弹出的表达式对话框中选择选项,点击Insert按键确定。
图6使用函数表达式对话框
6.在Sequences面板中鼠标右键单击,选择InsertSequence新建一个序列,命名为resistortestseq,如下列图所示。
图7新建一个测试序列
7.将主序列中的resistortest拖到resistortestseq序列中,并在该序列中参加延时单元wait。
a.如下列图所示进展拖动。
按住鼠标左键将resistortest拖到Sequences面板中的resistortestseq上〔保持鼠标按住不放〕,待左侧序列面板自动切换到resistortestseq序列时,再将resistortest拖回到该序列的main部分,最后释放鼠标按键。
图8将主序列中的测试步骤拖到新序列中
b.在resistortest步骤下方右键单击,选择InsertStep>>Synchronization>>Wait,如下列图所示。
图9给序列添加延时单元Wait
c.配置Wait。
在WaitSettings中选择TimeInterval,在SpecifytheAmountoftimetowait(inseconds)中写入数字5,表示等待5秒,如下列图所示。
图10配置Wait
8.在resistortestseq新序列中参加For循环。
a.在Main上右键单击,按照下列图添加For循环。
图11给序列中参加For循环
b.将resistortest与Wait拖入到For与End之间,如下列图。
图12序列界面
9.配置For循环次数。
为了做到这一点,需要创立一个部分变量。
a.在序列中选中For,在StepSettings中选择ForLoop选项卡,点击ExpressionBrowserdialog按键,如下列图所示。
图13配置ForLoop设置
b.弹出ExpressionBrowser对话框,在Locals中选择InsertNumber创立一个数据变量。
图14使用表达式对话框
c.将刚创立的Local重命名为Loops,点击Insert,最后点击check键确认无误。
图15创立变量
d.在NumberofLoops中输入2,配置好后的ForLoop设置如下列图所示。
图16设置循环次数
10.将resistortestseq序列作为子序列插入到MainSequence中。
a.如下列图所示,先在Sequence面板中切换到MainSequence,然后在frequencytest下方插入一个sequencecall,并重命名为resistortest。
图17插入sequencecall
b.在Stepsettings中选中UseCurrentFile,Sequence中选择resistortestseq。
图18配置sequencecall
11.执行整个序列文件。
选择Execute»SinglePass,观察到FrequencyLimitTest和resistortest依次执行。
12.观察测试报告,以及代码执行时间。
13.保存该测试序列。
并行测试
操作步骤:
1.翻开上面实验所保存的Ex3sequential.seq,选择File>>saveas将其另存为Ex3parallel.seq
2.在主序列的Setup部分,创立两个Lock步骤,用来防止并行测试硬件资源冲突。
a.在MainSequence中的Setup部分右键新建一个Lock,如下列图所示。
图19新建Lock
b.配置Lock,在在LockSettings中Operation选择“Create〞,LockNameExpression填写“Arb〞,“Digitizer〞,如下列图所示。
图20配置Lock
c.重复上面的步骤,新建另一个“DMM〞的Lock,配置好后的序列如下列图所示。
图21创立两个Lock后的序列
3.在Main部分参加Lock,保护硬件资源。
a.在frequencytest步骤前面右键新建一个Lock,方法同步骤。
b.配置Lock。
在LockSettings中Operation选择“Lock〞,LockNameExpression选择“Arb〞,“Digitizer〞。
c.在frequencytest步骤后面新建一个Lock,重命名为Unlock,在LockSettings中Operation选择“EarlyUnlock〞,LockNameExpression选择“Arb〞,〞Digitizer〞.
d.重复上面的步骤a到c,为resistortest添加“DMM〞的Lock和Unlock,配置好后的序列如下列图所示。
图22完全配置好的序列
4.配置TestStand中的运行形式〔processmodel〕为BatchModel。
a.选择菜单栏Configure»StationOptions,选择Model选项卡。
b.在StationModel下拉菜单中选择如下列图所示。
图23配置运行形式
5.进一步配置BatchModel.
a.选择Configure»ModelOptions.
b.在NumberofTestSockets中填写2,如下列图所示。
图24配置BatchModel
6.执行该序列文件。
选择Execute»SinglePass,观察到两个测试序列并行执行。
7.观察测试报告,以及代码执行时间。
8.保存该测试序列。
自动协调并行测试
操作步骤:
1.翻开上面实验所保存的Ex3sequential.vi,选择File>>saveas将其另存为Ex3Autoscheduled.seq。
2.创立一个AutoSchedule。
a.在MainSequence序列的Main部分,右键单击创立一个AutoSchedule,如下列图所示。
图25创立一个AutoSchedule
b.选中UseAutoScheduledResource,配置AutoScheduledResourceSettings,在ResourceLockAlternatives中填写“Arb〞,“Digitizer〞如下列图所示。
图26配置AutoScheduledResource
c.将frequencytest拖入到UseAutoScheduledResource和End之间,如下列图。
图27拖动frequencytest
d.在AutoSchedule中右键创立另一个UseAutoScheduledResource,如下列图。
图28创立另一个UseAutoScheduledResource
e.配置AutoScheduledResourceSettings,在ResourceLockAlternatives中填写“DMM〞。
f.将resistortest拖入到新建的UseAutoScheduledResource之中。
g.配置完成后,序列应如下列图所示。
图29配置完成后的序列
3.配置TestStand中的运行形式〔processmodel〕为BatchModel.
a.在菜单栏中选择Configure»StationOptions,选择Model选项卡。
b.在StationModel下拉菜单中选择如下列图所示。
图30配置运行形式
4.进一步配置BatchModel.
a.选择Configure»ModelOptions.
b.在NumberofTestSockets中填写2,如下列图所示。
图31配置BatchModel
5.执行该序列文件。
选择Execute»SinglePass,观察到两个测试序列并行执行。
6.观察测试报告,以及代码执行时间。
7.保存该测试序列。