The best way to implement this is using a background VI for
DAQ+storage. Load this VI from your main VI with Open VI Reference and
start the VI with the Invoke node Run VI. Use a named queue to send
data from your UI VI to the background VI. Use a strict typedef for
the data to transfer over the queue. This way the background VI will
get the configuration information. Use another named queue or a named
notifier to send the aquired data from the background VI to the UI VI.
Notifiers have the advantage that more than one reader can receive the
data but if he is to slow he will loose data. Queues don't loose data
but you can have only one reader. If screen3 is a subVI of screen2 it
can also create a named queue with the same name as in screen2 and
read the data. If screen3 is closed screen2 will read the data but the
data read by screen3 will be missing. If you don't want this you have
to load screen3 and run it with Run VI and screen2 has to forward the
data to screen3 over another named queue.
Look for <a
href="http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101&RPAGEID=135&HOID=506500000008000000B2BD0000&USEARCHCONTEXT_CATEGORY_0=_49_%24_6_&USEARCHCONTEXT_CATEGORY_S=0&UCATEGORY_0=_49_%24_6_&UCATEGORY_S=0";>Bens</a>
example of who to run UI VIs independently. You only need to add the
fourth VI for the DAQ+storage and the queue to communicate between the
VIs and of course the code and controls to do the things you want.

Waldemar

Reply via email to