0

我在使用 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 默认模块

4

1 回答 1

0

答案在这里: NI论坛

解决方案:将 Property Loader 放在 PreUUT/PreUUTLoop 中或 PreUUTLoop 之后的新自定义回调中。

于 2015-11-30T20:19:56.200 回答