NI TestStand

cancel
Showing results for 
Search instead for 
Did you mean: 

Multiple Temperature environments in Test stand

Hi, I have sequences that run at ambient temperature and I call them with a "Batch Model" TS model so I can

assign and Test multiple UUTs.

 

Once Ambient tests are done, I want to carry on the tests by going to say 0 degrees Celsius, but how do I carry the Batch Number and Serial numbers assigned during the Ambient batch process onto the sequences that handle the 0 degrees C and loop based on those until all UUTs are tested?

 

 

Help please.

0 Kudos
Message 1 of 29
(4,931 Views)
Durring run time you can get the serial number by calling RunState.Root.Parameters.ModelData.TestSockets[0].UUT.SerialNumber    where the number in TestSockets is the socket number. If you plan on testing the same UUT in the same socket then I would recomend writing two sequences to test your two cases ambient and zero degrees and calling them from a single sequence file. That way the serial numbers and socket index will persist throughout the test, and the reports will all be organized together.
Richard S -- National Instruments -- (former) Applications Engineer -- Data Acquisition with TestStand
0 Kudos
Message 2 of 29
(4,899 Views)
Hi, my plan is to test 10 UUTs and after the runtime for those ends I want to invoke a seq. that takes the environment to 0 degrees and tests the same 10 UUTs. I dont want to have to reenter serial numbers and Batch number, instead I want Teststand to keep track of that, yet since the runtime has ended for Ambient I dont know how to do that.
0 Kudos
Message 3 of 29
(4,885 Views)
It sounds like you just need two sequence calls in your main sequence and these would be inside a for loop. The two sequences would be the set temperature and the actual test. Pass parameters to set to ambient for the first loop and pass parameters to set to a different temp for the second loop. There's nothing exited until the second loop completes so you have all of your serial number data.
0 Kudos
Message 4 of 29
(4,882 Views)

A for loop up to the count of socket number tested you mean? I need to assign socket serial number sequentially as I loop from one UUT to the next. Right now in the ambient environment the Batch process model takes ccare of that. can you explain a little more?

 

TIA

0 Kudos
Message 5 of 29
(4,879 Views)

A for loop for up to the number of temperatures you want to test at.

 

Forgot to mention one thing. The sequence you have to set the temperature would be set to run only once - not for each each thread in the batch sequence.

0 Kudos
Message 6 of 29
(4,877 Views)
one more question, the batch process threads for all sockets will all execute before the for loop increments to the second temeperature count, or do I have to do something about that? sorry for my ignorance.
0 Kudos
Message 7 of 29
(4,872 Views)

Yes.

 

I don't have TestStand here so I can't post an example. This is pretty basic. You open a new sequence. Select Batch Model. Insert the for loop. In between the for loop start and end, place the sequence to control the temperature. Create an array of temperature settings/parameters for that sequence and set it to index the array based on the for loop's iteration count. Set it to run for just the first thread. Insert the sequence to test your UUT's. 

 

What I'm describing is a top level sequence that pulls together the separate sequences that I imagine you have already created.

0 Kudos
Message 8 of 29
(4,865 Views)

Iam thinking that this approach will not work as the seq. that runs the UUT tests is different from one temp to the other. Also I have to generate a tailor made report after all 10 UUTs have completed testing before I go to the next temp.

 

I was doing that in post UUT process call up for the ambient.

0 Kudos
Message 9 of 29
(4,858 Views)

WDLV wrote:
one more question, the batch process threads for all sockets will all execute before the for loop increments to the second temeperature count, or do I have to do something about that? sorry for my ignorance.
If I got you right, what you need is a synchronization step.
A step that will wait for all threads to meet at the same point before going further on. You will find them in the Insert Step context menu.
Hope this helps,

 

S. Eren BALCI
IMESTEK
0 Kudos
Message 10 of 29
(4,843 Views)