NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

How to use TestStand to launch parallel Labview executions and exchange data between these executions

My problem is to launch from TestStand a first VI in background task and in parallel launch from TestStand other VIs to modify shared variables consumed by the first VI.
The Labview VI are written and are working inside the Labview interface.
0 Kudos
Message 1 of 7
(4,396 Views)

I'd create named queues in both VI to pass data.  If you are concerned about having named queue perhaps you could create a queue in one VI and store its reference in a global resource for the other VI to access.

Alternatively you could use TCP.

Regards

Steve

 

There are 10 types of people in the world that understand binary, those that do and those that don't.
Message 2 of 7
(4,378 Views)
Do you start VIs with TestStand or not ?
I succeeded to exchange data between two VIs using shared variables (with Labview 8.0) but my problem is to start these VIs in TestStand application.
I try to start a TestStand thread for each VI but it doesn't work.
0 Kudos
Message 3 of 7
(4,373 Views)
Sorry misunderstood, yes you can run VI's from TestStand.
 
The simplest way to run your VIs from TestStand just create a Test Step with the Module Adapter set to LabView.  It is down to the VI to define how it looks and runs once called.  You may need to modify VI properties if you want to see the Front Panel etc. 
 
A nicer way to call VIs from TestStand is to create an application launcher/disposer.  Your launcher/disposer VI gets passed the pathname of the VI to run.  It then calls the VI to run, using an Invoke Node, as a deamon and either returns or maintains the VI Reference, when it comes time to halt your VI call your Launcher/disposer again to tidy everything off. You can expand your launcher/dispose to do additonal operations, such as Get and Set the value of front panel controls (actually pretty much anything once you have the VI Reference)
 
Regards
 
Steve
There are 10 types of people in the world that understand binary, those that do and those that don't.
Message 4 of 7
(4,369 Views)

Thanks for your help.

I try your suggestions but I always meet the same problem. I do not succeeded to call a VI from TestStand on background task (TestStand is the main application in my system). The TestStand sequence is stopped in the TestStep which is calling VI.  I'd like to continue to the next TestStep during the VI execution. I want that the both execution (labview VI and TestStand Sequence) are running simultaneously and that TestStand sequence make the synchronisation.

Regards,

Sylviane.

0 Kudos
Message 5 of 7
(4,335 Views)

Hi,

Here is an example which will launch a VI and allow the execution to continue.

I have used a Sequence which has been setup to execute in a new execution. This sequence is allowed to execute the VI. The Main Sequence will then carry on to the next step, in this  case it sit at a Wait Statement. which is waitiing for the Sequence to complete. This will happen when you press the Stop button on the VI.

Hope this help.

Regards

Ray Farmer

Message Edited by Ray Farmer on 08-28-2006 06:51 PM

Regards
Ray Farmer
0 Kudos
Message 6 of 7
(4,325 Views)
Thanks for your help.
I have made the same code except that the sequence call that is in charged of launching VI, I have started it in a New thread instead of a New Execution. That was my problem.
 
Regards,
 
Sylviane.
 
0 Kudos
Message 7 of 7
(4,309 Views)