01-25-2009 04:27 PM
Hello:
I am trying to measure the time between 2 pulses with a USB-6009 card.
I put my signal in the counter terminal. The highest resolution for the time is 1 ms but I would like to have a resolution of 1microsec. Is it possible to do it with this card? Or would we need another card with two counters?
Thank you for your help.
01-26-2009 07:19 AM - edited 01-26-2009 07:20 AM
Hi Ordizia,
Thanks for the post and I hope your well today.
I thought I would offer my advice seeing as you've not had a response over the weekend.
The USB 6009 only has one counter and uses the DAQmx driver. (Assumming your using LabVIEW).
I have two questions,
1) Are these pulses on the same signal, or do you have two inputs - one pulse on each?
2) What do you mean by the highest resolution for the time is 1ms? - have you got example code?
Using LabVIEW:
Assuming these pulses are on one signal. You could setup a DAQmx Counter Input (CI) Count Edges task. Then in the read you could take a timestamp between each iteration of the while loop and when the 'data' (number of edges) changes.
See image above.
The DAQmx counts the number of edges. While this is running - we look for a change in the number of edges counted. If they are the same (between one iteration and the next) then do nothing. But, when the value changes - the 2nd pulse. We take a time stamp and minus the start time (or the previous time of the last pulse).
I have also attached the VI - LabVIEW 8.6.
Please let me know if this is what your after, and if you have more questions I'd be happy to help.
01-26-2009 11:09 AM
Hi Ordizia:
The USB-6009 only can count edges or digital events (page 27 of the user manual http://www.ni.com/pdf/manuals/371303l.pdf) so cannot perform signal measurements like pulse separations via hardware.
If you do any measure via software instead of hardware, you will only have the precision of the OS, which means LabVIEW resolution for software measurements (that is only milliseconds). In addition, the measure will be not reliable, because the OS can add errors of few milliseconds, which are as big as the measure. Software measure is just good for resolutions of tens of microseconds.
To measure edge separations with 1 microsecond resolution you must use hardware measurement with any acquisition board that supports this feature. Examples of low cost devices with this feature are the PCI-6220 and the PCI-6010:
http://sine.ni.com/nips/cds/view/p/lang/en/nid/201612
http://sine.ni.com/nips/cds/view/p/lang/en/nid/14130
National Instrumets AE
02-13-2024 03:30 AM
Hello,
I want a program that can mesure time between two impulsion of two different signal that enter in my 6009. How can I do ?
Thank you.