11-10-2010 02:04 PM
Hello All,
I've got a problem in a Test Stand sequence, where I use a LabVIEW VI to read about 20 voltages from analogue input channels from a PXI chassis.
I use the VI in several Multiple Numeric Limit test steps, and occasionally the VI returns all zero's (i.e. 0.00000), causing the step to fail.
If I run the VI stand-alone I always get a genuine result (even if its a reading of 0.001154).
If I run the sequence in Single Pass mode, I don't get a failure.
If I run the sequence in Batch mode, with a different sequence file, which also calls the VI during multiple steps, I get these occasional failures.
Thanks,
Martin
Solved! Go to Solution.
11-11-2010 10:58 AM
Are you using the auto scheduler to prevent executions from trying to read from the device at the same time? Its possible that the threads are attempting to read from the DAQ device at the same time which is returning the invalid data.
11-15-2010 10:11 AM
You might also consider using the lock step type to protect critical sections in your sequence.
-Doug
11-15-2010 11:46 AM
Hi,
Thanks to all for the input, I took a look at the different types of synchronisation step, and decided that a Lock was the best choice for this sequence, as I had one DAQ resource, that I wanted to restrict 1 thread to access at a time.
Seems to have done the trick.
Thanks again
Martin