NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

How to map an Teststand Container to an Labview Cluster.

Is it possible to copy the data from an Teststand-container to an Labview-cluster without the need to query one container element by another?
With Teststand3.1 and Labview 7.1, it is possible to map Teststand variables directly to VIs without the need to use the Sequence Context.
But for example in the Batchmodel.seq, if I would transmit the UUT-container from all Locals.ModelData.TestSockets to Labview, I had to build up an new array containing these UUT-containers in Teststand.
It would be easier to query these testsockets in Labview programmatical. I have tried to use the GetValVariant-method and the Variant-to-Data-function but this seems to work only on arrays with simple datatypes.
0 Kudos
Message 1 of 5
(5,547 Views)
Since TestStand 3.0, you can now pass any variable of any type between TestStand and Labview through the VI Connector Pane. No more need to use sequence context or TestData structure. In TestStand 3.1, if you create a new Labview Test Step, then click Specify Module, then click create VI, it will create a vi and it will add an indicator for the result, a report text box, and an error out cluster. If you look at the TestStand Edit Labview VI Call window, you will see the VI's connector pane. Just below that you will see a list of Labview connector pane variables in the left column with corresponding TestStand variables in the right column. Here you will see that the TestStand error container is mapped to the Labview Error Out cluster. It is that easy. For an existing vi, connect your cluster to a connector pane. In TestStand, you must have a container that matches the LV cluster, element for element. Be sure to save the VI and in TestStand be sure to click the Reload Prototype button. In the Edit Labview VI Call window, you will see the LV cluster in the left column. Next to the right column of the same row, click the f(x) button and navigate to the TestStand container that matches the LV cluster. Highlite the container, click OK, and the mapping is done. For the Error cluster, TestStand's Step.Result.Error.Occured maps to LV's Error Out unbundled Status. This is how it is done for any variable type, clusters, arrays, etc.
- tbob

Inventor of the WORM Global
0 Kudos
Message 2 of 5
(5,529 Views)
I know how to use the specify-modul-dialog, but the question is if there is a function in Labview which returns an container as cluster or at least as variant.
My actual Problem is, that I have to modify the BatchProcessmodel of Teststand. Therefor, in some steps I have to manipulate Locals.ModelData.TestSockets[x].UUT . To use the specify-module-dialog, I have to build up an Array of UUT[x] (I doesn't want to pass the whole TestSockets-Array). This is a little bit complicated in Teststand, because I have to create an Local and a looping expression-step just to pass this Array into Labview. Instead, I would like to collect the data in Labview with the use of Sequence Context.
Maybe, I can use the LabviewAdapter-class of the Teststand-API.
0 Kudos
Message 3 of 5
(5,515 Views)
Hi,

Might this help

http://forums.ni.com/ni/board/message?board.id=330&message.id=2560&query.id=3112#M2560

Regards
Ray Farmer
Regards
Ray Farmer
0 Kudos
Message 4 of 5
(5,512 Views)
Sorry try this

TestStand Container to Labview cluster example

Regards
Ray Farmer
Regards
Ray Farmer
0 Kudos
Message 5 of 5
(5,507 Views)