Dynamic Signal Acquisition

cancel
Showing results for 
Search instead for 
Did you mean: 

Getting synchronized data from PXI-4472

Hi,

I need to acquire data from N microphones (N> 32), and I'm using a number of PXI-4472 in a PXI-1000 chassis. I followed closely the PXI 4472 Synchronize and Stream to Disk example, which seemed to suit my needs well. The VI seemed to work fine, however, to make sure that the data from the different cards is actually synchronized, I changed the AI read to output waveform data (vs. scaled data), and I changed the AI Write to File VI to the Write LVM Express VI. On analyzing the output file, I discovered that actually, the timestamp of the data from the slave cards is out of synch with that from the master card. For eg., if I'm acquiring 512 samples at a sample frequency of 10000Hz, with a buffer of 10000 samples, the timestamp of the data from the channels on the master 4472 is from 0 to 0.05110, however that for the channels on the slaves starts from 0.011 (110 samples after). This lag is a function of the block size (e.g timestamp for slave starts at 0.0068 for 1024 samples and 0.0294 for 2048 samples).

Can anyone give an explanation for this?

Many thanks,
Ben
0 Kudos
Message 1 of 2
(6,138 Views)
Hi Ben,

I have found this knowledge base article which discusses the same problem that you are seeing. It states that the boards are synchronised, and the discrepancy is due to the way the DAQmx driver calculates the initial time in software. The knowledge base also gives links to more detailed explanation of how this time is calculated

http://digital.ni.com/public.nsf/websearch/9A64B0D7A08C4E4A86256FEE007FD82D?OpenDocument

I hope this helps, let me know if you have further questions.

Regards

Hannah
Applications Engineer
National Instruments
0 Kudos
Message 2 of 2
(6,122 Views)