High-Speed Digitizers

cancel
Showing results for 
Search instead for 
Did you mean: 

absolute speed limits

I am using a NI 5112 High speed Digitizer and need to accuire multiple records of only one sample for each channel per record.  I also need to stream it to the computer.  What is the fastest that I can do this at?
0 Kudos
Message 1 of 5
(6,891 Views)
utahn,

The bottleneck here will be the trigger rearm time (minimum trigger holdoff) of your 5112, which is 100 microseconds.  Check this discussion forum, this KnowledgeBase and the 5112 specs for more information on the issue.

Other considerations for this application are the maximim time you need to run it, and if you need to have access to the data during operation.  For a multi-record acquisition, you can fill up the on-board memory of your digitizer with records without software intervention.  If, however, you need to access the data as the program is running, you will have to fetch the data from software, which will slow the time it takes to rearm, as it will then be software dependent.  Unfortunately, there is no way to keep the task running and fetch records from memory.

Another option is to use the "Fetch Forever" example which continously acquires samples (not records) at a specified rate for as long as you need.  If your application can tolerate a fixed sample rate as opposed to triggered records, then this will maximize your speed.

Let me know if you have more questions and best of luck on your application!

Regards,
Travis W
0 Kudos
Message 2 of 5
(6,864 Views)
If, however, you need to access the data as the program is running, you will have to fetch the data from software, which will slow the time it takes to rearm, as it will then be software dependent.  Unfortunately, there is no way to keep the task running and fetch records from memory.

This is not correct. You CAN fetch records from memory while the acquisition is running.  The multi-record acquisition is hardware timed, and fetching data from the board while it is running will NOT affect the rearm time.  The speed at which you are are able to fetch data, though, is software dependent.

Creating one-sample records is an extremely inefficient way to use a high-speed digitizer like the 5112.  The device and driver are not optimized for single-point reads.  So although the minimum time between records (rearm time) will not be affected if you fetch data during the acquisition, you may not be able to fetch all the records before the on-board memory fills up.  You'll have to experiment with your specific application, but if you can keep up, you will be able to acquire and fetch records indefinitely.

Message Edited by psisterhen on 05-16-2006 08:58 AM

0 Kudos
Message 3 of 5
(6,854 Views)
Thanks for catching that, psisterhen.  Best of luck on the application, utahn.
0 Kudos
Message 4 of 5
(6,840 Views)
Oops... I said you could fetch records indefinitely.  I misspoke.

If you set the Allow More Records than Memory attribute true, you can configure more records than will actually fit on the board.  This on-board memory will act like a circular buffer, and you are fine as long as you fetch records out before they get overwritten.

The total number of records for one acquisition is finite, but a very large number.  Tens of thousands for the 5112, I believe, but you should check the documentation.

Patrick
0 Kudos
Message 5 of 5
(6,817 Views)