Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

PCI 6255 and scan rate

Hello all

 

My queries are related with PCI 6255 and I am using NIDAQmx 8  with Microsoft Visual C++ 6.0.

 

Suppose I am using all 80 channels (Single ended) of PCI 6255 device and I set (sample) rate = 3200 (which is sample rate of individual channel. am I right?), (acquisition mode Finite) N = 2048 samples/channel. With these settings my scan rate will be (3200*80 = 256k) 256 k samples/s and max inter channel delay(sampling skew) b/w two adjacent channels will be ( (1/256k)/80) second and max delay b/w channel # 1 and channel # 80 will be (1/256k) second .

 

Kindly tell me am I right in my calculations??

 

My second question is about how PCI 6255 get samples. For above case one way PCI 6255 can acquire 2048 samples/channel is that it collects 80 samples at scan rate of 256 k samples/s, first sample from each channel, then again 80 samples with second sample from each channel until it gets 2048 samples from each channel.

 

Kindly tell me again am I right in my thinking??

 

Is it possible that PCI 6255 get 2048 samples from first channel at max scan rate(750 k samples/s for PCI 6255), then get 2048 samples from second channel at max scan rate and so on till up to 80th channel? And if it is possible, how I will configure these settings using C API’s?

 

                                                                                           Thanks in advance

 

 

 

 

 

 

0 Kudos
Message 1 of 2
(2,941 Views)

Hi,

Your first calculation for the sampling rate of 3200 is correct. These are some resources will help you clarify any other doubts: Difference between the Sample Clock (Scan Clock) and the Convert Clock (Channel Clock) and How is the Convert (Channel) Clock Rate Determined in NI-DAQmx and Traditional NI-DAQ?

Your second question you are also correct it will acquire 80 samples of each channel until it reaches 2048 sample per channel, but in the same order you said, 80 samples 2048 times.

To be able to gather 2048 samples from each channel at the maximum rate and the move to the other channel until 80th channels are read. You will need to set your acquisition code inside a for loop, where the channel name is changed during those 80iterations. With this approach you can actually 1.25MS/s for one channel. Although there will be a software delay between the 2048 of each channel and this time is not going to be deterministic since is control by your OS.

The reason for this is that we only have three type of scanning interval scanning, simultaneous scanning (not supported by your card), and round robin.  Your scanning is not and option for our drivers but you can coded it using a simple for loop like I said before.

Another suggestion would be to always test your acquisition in Measurment and Automation Explorer by right clicking the card and creating a task.

I hope it helps

Jaime Hoffiz
National Instruments
Product Expert
0 Kudos
Message 2 of 2
(2,915 Views)