05-04-2010 09:55 PM
05-05-2010 08:06 AM
Start by looking a Queued state machine architechtures, they will allow you to throw the data onto a queue for logging while still acuiring at the same rate. If the QSM is not entirely right, some sort of Producer consumer architecture is probably where you need to be heading as it will be more maintainable an scalable.
Look at Variants and Enumerators and Functional Global Variables NOW to see where they can help you.
Once you have a basic architecture in place, it should be easy to update (don't forget to type define your enums) to add new features as and when the project requires.
Cheers
James
05-05-2010 02:25 PM
j.kentfield,
I had a few minutes and made fake VI.
There's lots of graphics and not nuch code.
I just wanted to give you a visual of one possibility.
Also, lots of little how to code segments and comments.
Just some food for thought.
James
05-06-2010 03:46 AM
Nice example, and I would probably have used an event structure too (it may not be required), but logging in that same state as the acqusition can cause problems - thats why I would have gone down the Queued state machine route. See the attached - very much simplified VI I built from the template.
The Enums should be type defined, and using the Variant allows any data type to be thrown onto the Q. If it is not the data type expected when converted back, error 91 will be generated.
James