Hi, I've got a few of these different methods working in practice, however, I would appreciate the viewpoints of some experienced labview users to decide which is best for my application - I'd be thankful for any help you can offer me.
The application I'm building at the moment is a simple state-machine based tester. It carries out six tests, then at the end decides whether the DUT passes or fails. I'd like to have "pass" and "fail" LEDs on the front panel for each test. ie. 12 LEDs. However, since six devices will be being tested in parallel, there'll be 72 LEDs total on the front panel.
So, the basic hierarchy structure of my program is as follows:
UserInterface.vi (with the front panel LEDs)
- FullTest.vi (carries out test on DUT#1, then passes "Pass" or "Fail" LED info to UserInterface.vi)
- FullTest.vi (carries out test on DUT#2, then passes "Pass" or "Fail" LED info to UserInterface.vi)
- FullTest.vi (carries out test on DUT#3, then passes "Pass" or "Fail" LED info to UserInterface.vi)
- FullTest.vi (carries out test on DUT#4, then passes "Pass" or "Fail" LED info to UserInterface.vi)
- FullTest.vi (carries out test on DUT#5, then passes "Pass" or "Fail" LED info to UserInterface.vi)
- FullTest.vi (carries out test on DUT#6, then passes "Pass" or "Fail" LED info to UserInterface.vi)
I'd like to know how best to pass this "Pass"/"Fail" information upwards.
I've tried global variables, but end up with 72 of them. The other issue is, I don't want to create six versions of FullTest.vi, with each one referring to a different set of global variables.
I've tried passing references to arrays (I was thinking in terms of C pointers), but I've done some more reading on the forum and this sounds like a bad idea due to duplication of the arrays.
I could pass the array itself into FullTest.vi, and do a "Replace Array Subset", but this won't actually immediate change the LEDs on the front panel, will it?
Thanks for your patience.