Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

synchronizing video and analong data acquisition

I am trying to collect both analog and video data using IMAQ PCI-1411 image acquisition card and a PCI-6036E analog data acquisition card while having the analog data updating continuously. I want to save both data types and also view the analog data as the test is being run. We have a vi already set up to collect the synchronized data but I am having trouble adding in the tools necessary to view the data as it is being collected.
0 Kudos
Message 1 of 9
(3,631 Views)
To view the image data you are going to want to use an Image Display located on the Vision palette on the front panel. Wire the output of your IMAQ Grab Acquire to the Image Display.  For your DAQ application you are going to want to use a Waveform graph. Wire the output of the DAQmx write to the graph.  You should look at the example programs that ship with LabVIEW drivers.  Go to Help>>Find Examples and browse according to task.  Then double click the Hardware Input and Output folder.  For the IMAQ example go to the IMAQ folder, then High Level, then Grab. For the DAQmx example, after Hardware Input and Output go to DAQmx folder, then Analog Measurements, then Voltage.  In that folder look at the Cont. Acquire and Graph Voltage - Int Clock.
 
Christopher W.
0 Kudos
Message 2 of 9
(3,601 Views)
Thanks Christopher for your reply. I tried a few things that you suggested and I am still having problems. The way we have it set up is that the data is being acquired continuously so I have immediate feedback on the signal. The program is then stopped and the analog and image data is supposed to be acquired simultaneous with the continuous feedback. However, when i start the actual data acquisition it does not continue with the continuous feed and does not collect all of the data points. I have it running at 30 Hz for 2 sec and I will only get approximately 25 points. We have an indicator showing what iteration of the while loop it goes through for each data point but the loop iterates extremely slow. I have attached my vi if anyone can help me. The second sequence is the continuous feedback and the third sequence is supposed to be the continuous feedback with the data acquisition. This is where the problems are located. Thanks in advance for any help.
0 Kudos
Message 3 of 9
(3,593 Views)
kastud,
 
    It almost sound like the loop you are running has too much calculation in it.  I could not open your VI though, perhaps try attaching it again, and what version of LabVIEW is it in?
 
-Allison S.
 
Applications Engineering
-Allison S.
Calibration Services
Product Support Engineer
0 Kudos
Message 4 of 9
(3,561 Views)
I have attached the file again. Thanks!
0 Kudos
Message 5 of 9
(3,551 Views)
The file is LabVIEW version 7.0.
0 Kudos
Message 6 of 9
(3,550 Views)
kastud,
 
    Thank you for resending your code.  In order for me to be able to understand what might be causing the issue, I will need a simpler version -- this VI is fairly complex.  If you could reduce the program to just the part that is creating the issue (which sounds like the continuous feedback with data acquisition sequence) and repost it that would make finding the issue much faster.
 
-Allison S.
Applications Engineering
-Allison S.
Calibration Services
Product Support Engineer
0 Kudos
Message 7 of 9
(3,541 Views)

Allison-

    Thank you for your help. I have kept in everything that applies to the data acquisition. The second sequence is where continuous acquisition occurs and the third sequence is where I want continuous acquisition to occur simultaneously with the data acquisition that is saved. Please let me know if you have any questions. Thanks!

Katie

0 Kudos
Message 8 of 9
(3,535 Views)
Katie,
 
    Thank you for sending back your code.  I suppose I did not explain myself fully last time.  It is difficult for me to test your software considering that I don't have the same setup and I don't have the same hardware.  The best way to find out what is slowing down a VI is to remove modular pieces of it one at a time and run it and see what speeds it up.  I would test the separate sequence pieces individually and see if one runs particularly slowly.  Let me know how that goes.
 
    Also, something that can make your code simpler is to code it in "modules".  As in, smaller pieces of code that can be placed into sub VI's so that you don't have to scroll your screen, and so that individual pieces are easier to add and remove.  LabVIEW is build to operate this way and it can make programming and debugging so much easier.
 
-Allison S.
Applications Engineering
-Allison S.
Calibration Services
Product Support Engineer
0 Kudos
Message 9 of 9
(3,513 Views)