From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Digital I/O

cancel
Showing results for 
Search instead for 
Did you mean: 

what (m series) card to select?

Hello,

 

I need some reliable help on the selection of suitable DAQ card (M series preferably) for the following task:

We have a fast ADC (13 bit) that has:
13 digital outputs for bit0...bit12 and
data ready (DR) output  (all TTL)


The digital input (TTL) to this ADC is data accepted (DA) that tells ADC when the digital lines have been read and it can put new number on the output.

I would like to use a suitable DAQ card to read those 13 digital lines from ADC when DR makes low-->high transition, i.e. I will use the HW triggered data acquisition. After each digital pattern has been read I need also to send a short TTL pulse back to “data accepted” input line on ADC. ADC has buffer for only 1 sample. The action of sending the short TTL pulse must be also HW triggered with DR low-->high transition.

There will not be more than around 10 000 ADC conversion per second, but sometimes two consecutive ADC conversion might be only 1-2 microseconds away from each other (ADC is converting the pulses from stochastic events).

In addition to this, I also need to count the TTL pulses coming from current-to-digital-integrator, their frequency is max. 10kHz, width  500ns.

There will be no need for any analog input/output.

The program in LabView will act as a MultiChannel Analyzer (MCA) for values coming from ADC. The histogram should be refreshed at least twice per second. The number of counts from the current-to-digital-integrator should also to be displayed with the approximately same rate.

From what I learned so far I need to have the DAQ card that has enough correlated DIOs (I guess at least 13).
Then I guess I also need two counters: one to create single “data accepted” pulse shortly after the “data ready” makes low-->high transition and another one for counting the TTL pulses from the integrator.

I was mostly looking at M series cards (due to pricing) and found that the
PCI-6224, PCI-6229, USB-6229 and PCI-6254 might be suitable due to 32 correlated DIO (port0) but I am not 100% sure those cards are the right selection. I already made one wrong buy (PCI-6221) and I would like to buy the right card now.

Could it be that I miss some ADC conversions if I use USB version instead of PCI?


What DAQ card shall I select then?


with best regards,
 

Bojan

0 Kudos
Message 1 of 5
(3,601 Views)
BZajec wrote:
>
> From what I learned so far I need to have the DAQ card that has enough
> correlated DIOs (I guess at least 13). Then I guess I also need two counters:
> one to create single ?data accepted? pulse shortly after the ?data ready?
> makes low-->high transition and another one for counting the TTL
> pulses from the integrator.
> I was mostly looking at M series cards (due to pricing) and found that the
> PCI-6224, PCI-6229, USB-6229 and PCI-6254 might be suitable due to 32
> correlated DIO (port0) but I am not 100% sure those cards are the right
> selection. I already made one wrong buy (PCI-6221) and I would like to
> buy the right card now.
> Could it be that I miss some ADC conversions if I use USB version instead of PCI?
> What DAQ card shall I select then?
> with best regards, 
> Bojan

Neither of the cards you are looking at is likely to do - they don't
seem
to have a FIFO.
What you are describing is a classic MCA card to which a NIM ADC is
to be connected, I doubt anyone makes that sort of thing nowadays.
You get complete MCAs. Nobody has inquired about such a thing
for quite some time here, at least... Our soulution of the day would
be a nukebus module in one of our systems, the whole thing interfaced
over the net or whatever.

Dimiter

------------------------------------------------------
Dimiter Popoff Transgalactic Instruments

http://www.tgi-sci.com
------------------------------------------------------
http://www.flickr.com/photos/didi_tgi/sets/72157600228621276/

Original message: http://groups.google.com/group/natinst.public.daq.digital.general/msg/a80d78e074e9e947?dmode=source

0 Kudos
Message 2 of 5
(3,594 Views)

Actually all M-Series devices that support correlated DIO have FIFOs - you can check the specs for the cards. I think any of the devices with enough correlated DIO lines will work for your application. The 13 lines acquired on the rising (Low->high transition) is what DAQmx refers to as Correlated DI, where your DR would be the external clock. All M-Series can handle the rates and pulse widths you mentioned. You would need to use a counter or potentially a AI/AO clock from a dummy task to send back the pulse that tells the ADC that the value was read. Another counter would be used for reading.

There wouldn't be a difference in performance between a USB and PCI/PXI card - both would use buffering. The maximum rate for correlated DIO is less on USB, but in all cases if you miss samples you will get an error.

Are you going to be doing any feedback or control based on this?

Cheers,

Andrew S

Multifunction DAQ PSE

0 Kudos
Message 3 of 5
(3,585 Views)
Dear Andrew,
 
Thank you for your reply.  I would then go with PCI-6224, this one doesn't have any analog output. It has two counters (as all m series) and DI sample clock freq. is 0-1Mhz.
 
 
If I understand correctly: I will need one counter to detect the DR low-->high transition that triggers the acquisition on those 13 lines. Then I will need second counter to send back a slightly delayed Data Accepted pulse.
If so, then I need a third counter for counting pulses  coming from current-to-digital-integrator. Do I get this right?
 
 
I have some experiences with m series cards (pci 6221), but I have never done any HW triggering, that's why I am asking such rather basic questions.
 
 
I will not be doing any feedback control, it is just simple data acquisiton: ADC is converting the height of pulses coming from gamma ray detector (stochastic events) and I need to show the spectrum and not to miss out any data. Such acqusition will last for several minutes (5-15 minutes) and will be ended when the sufficient number of pulses coming from current-to-digital-integrator are counted (this end of acquisition can be software triggered because it is not so time sensitive).
 
with best regards,
 
Bojan
 
0 Kudos
Message 4 of 5
(3,566 Views)
Hey Bojan,
 
For this : I will need one counter to detect the DR low-->high transition that triggers the acquisition on those 13 lines.  DIO allows external clocking, just like AI and AO so you will not need an additional counter to detect the DR pulse. I would suggest you try acquiring 8 digital lines with your 6221 to give you an idea of whether it will work or not. I'm not sure what programming environment you are using, but you'll want to look for a shipping example called "Cont Read Dig Chan-Ext Clk" where the physical channel would be your 8 digital lines and your clock source would be whatever PFI line you connect DR to.
 
Counting the pulse would just be a matter of using that same PFI line as a source for a counter task, but sending out a slightly delayed pulse isn't trivial. I would suggest a single retriggerable pulse on the falling edge of DR - would that be enough of a delay?
 
Cheers,
Andrew S 
0 Kudos
Message 5 of 5
(3,544 Views)