From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.



如何在TestStand中终止带有循环的Code Module?



主要软件: TestStand
主要软件版本: 2012
主要软件修正版本: N/A
次要软件: N/A

问题:

我需要在TestStand中调用一个LabVIEW的VI,VI本身是有while循环的,但是循环没有设置停止条件。我如何在调用VI之后不影响sequence后续Step的运行,并且在TestStand中的预定位置终止VI?



解答:
由于需要这个LabVIEW的VI和其他的Step并行运行, 所以我们需要一个新的execution。我们可以增加一个subsequence,并在这个subsequence中调用此VI,以供后续使用。
新execution的开启和终止工作,我们可以通过TestStand API实现。

1.  创建一个新的变量Locals.NewExecution,类型为Object Reference

2.  创建新的execution。我们需要添加一个ActiceX/COM的Action step,并配置如下:

3.  可以看到,我是在Engine类中调用了NewExecution的方法,并且将返回的Execution的Object Reference赋值给Locals.NewExecution。  

 

4,    终止指定execution。同样,也需要添加一个ActiveX/COM的Action step。使用Execution类的Terminate方法,终止Locals.NewExecution中存储的execution。

 



相关链接:

附件:
Example.7z

代码所使用的软件版本:TestStand 2012, LabVIEW 2012


报告日期: 02/05/2013
最近更新: 02/28/2013
文档编号: 664318ZK