我在使用 Property Loader 时遇到了一些问题,让我来描述一下。
我有几个子序列的 MainSequence。我必须使用属性加载器根据扫描的数量加载具有测试限制的文件。我将此加载从 PreUUTLoop 移至 MainSequence,因为只有这样我才能访问确定要使用哪个文件的扫描数字。
限制文件包含取决于扫描数量的限制。定义的限制是指 MainSequence 和其他子序列中的步骤。
我注意到的是,属性加载器在放入 MainSequence 时工作正常(在 Setup 或 Main 中没有区别)。但是当我将属性加载器放在单独的子序列中(并将子序列放在 MainSequence 的 Setup 或 Main 中)时,它只加载 MainSequence 中子序列的限制。不加载直接在 MainSequence 中的步骤限制(即数字检查)。
在限制文件中,我有这样的东西:
START_SubSeq1
<step_name> Limit.High Limit.Low
Step1 10 0
END_SubSeq1
START_SubSeq2
<step_name> Limit.High Limit.Low
Step1 20 0
END_SubSeq2
START_MainSequence
<step_name> Limit.High Limit.Low
Step3 40 0
END_MainSequence
MainSequence 看起来像这样:
()Setup
Call SetLimits
()Main
Call Subseq2
Call Subseq1
Step3 Numeric check GELE
()CleanUp
设置限制:
()Setup
()Main
If(scnanedNumber==1)
PropertyLoader(file1)
Else
PropertyLoader(file2)
()CleanUp
子序列1:
()Setup
()Main
Step1 Numeric check GELE
()CleanUp
子序列2:
()Setup
()Main
Step1 Numeric check GELE
()CleanUp
所以 SubSeq1 中的 Step1 设置为在文件中。SubSeq2 中的 Step1 也已设置,但当 Property Loader 在 Subseq 中时未设置 Step3。我尝试在属性加载器中勾选当前执行的使用,但不起作用。我认为这是一些范围问题,但设置了其他子序列中的步骤。只有当我想在子序列中的属性加载器中设置 MainSequence 时才会发生这种情况。
我使用 NI Teststand 2014。并行模型。数字检查步骤是 Teststand 默认模块