11-14-2012 03:32 PM
Hi,
I would like to ask for advice.
I have attached my example VI. I started from an example shipped with LabView 2012 (-Voltage -Continuous input).
My measurement need to do the following: I have a PCI-MIO-16E card to measure some voltage with 200 kHz rate. Beside, I need to monitor another voltage value in my experiment, where I use an USB-6009 device. For this monitoring, I do not need high rate, about 10Hz is enough. When the monitored voltage reaches a pre-defined value, I need to stop the high rate DAQ and the simultaneous writing it into binary file (we will need some post processing using ANSI-C code, therefore the little-endian format). I do not need a strict sync between the two measurement: about 0.1 sec precision is ok to stop the high speed DAQ and file writing.
Could you advice my code, if I need to improve something? I did not tested it yet (not in my lab now).
thanks very much!
11-14-2012 03:48 PM
I almost forgot the most important question: between iterations of the while loop is it sure that I get all of the data from the PCI card? I mean, there are no gaps between the sampled 20k number blocks?
11-19-2012 04:24 AM
Hello Blokk,
have you tested your VI in the lab now?
I will try to watch your VI this afternoon.
Best regards,
Tobi
11-19-2012 04:37 AM
Hi,
Actually I just forgot about this post 🙂
I have found a working solution: I use two parallel while loops, the top one is the fast, with internal timing, the lower one is a slow, with software timing (10 msec actually). I monitor the mentioned voltage signal with the lower while loop, and in the case of reaching limit, I call a functional global variable. This FGV works as a switch, I can stop the fast loop with this. The top loop calls this FGV in every iteration, and checks wheather it needs to stop.
So far everything is working, and I write data in a binary file with the top loop.
A final question, maybe you know the answare:
in the case of the USB-6009, when I collect data on two AI channels, I understand that, it is multiplexed. Is it possible to use two different AD range for these two channels? If I create the two virtual channels (DAQmx palette) using one VI, I can only specify one range. What happens if I create these channels separately, with different ranges, and after that I call them multiplexed? If this possible, how can I do it?
thanks!
11-19-2012 08:01 AM
ok, I got the answare here: