12-10-2015 07:06 AM
Hello,
i am using the NI Batchmodel for three DUTs. The current DUT-number can be read out from RunState.TestSockets.MyIndex.
May batch has three duts. What is the NI-way to use different switchings (NI-SwitchExec) for each dut?
Testplan is for example
Configure DMM
Set Switch
Measure
Clear Switch.
The Switching is of course different for each DUT.
Do i really have do add a if-statement around each switching (=endless work) or is there a easy way that i currently dont see?
if (RunState.TestSockets.MyIndex == 0)
Set Switch for DUT1
else if (RunState.TestSockets.MyIndex == 1)
Set Switch for DUT2
else if (RunState.TestSockets.MyIndex == 2)
Set Switch for DUT3
else
end
Thanks for tips
best regards
OO
Solved! Go to Solution.
12-10-2015 07:20 AM
12-10-2015 07:33 AM
Hi Dennis,
this is also a good idea. I only have three DUTs. You mean i put the three switchings in an array and then use the array in the "Routes to connect"-expression -> SwitchArray001[MyIndex].
The only problem is then that i have somewhere (FileGlobals) >100 arrays with switch-positions what makes the testplan not very readable.
Instead of the if/then/else i can also use three nonadapter-actions with preconditons for each DUT. Then it can be direct seen what is switched.
12-10-2015 09:22 AM
12-10-2015 09:33 AM
I wouldn't use either of the precondition or If stuff.... It's too much work and I'm lazy.
I would simply use the built in step switching:
http://zone.ni.com/reference/en-XX/help/370404G-01/nise/teststand/
Name your routegroups in Switch Executive to match your socket numbers.
For instance in Route(s) to Connect: box you can have the following expression:
"SigGenToUUT" + Str(RunState.TestSocket.MyIndex)
And have a route that goes from the signal generator to the UUT named SigGenToUUT0. It would be for the UUT in socket 0.
Just a thought!
12-10-2015 09:47 AM
12-11-2015 12:53 AM
12-11-2015 08:42 AM