06-02-2015 01:18 PM
Equipment: NI USB-6229 (250 kS/sec Analog In., 16 bit DAC, 32 bit Counters and internal clocks <= 80 Mhz)
LabView 14
Problem:
I have an experimental application where I need to count voltage spikes (integer #) caused by electrons hitting a sensor. These spikes can be as frequent as 500,000 Counts/sec. The spikes are not going to be the same voltage everytime, but they will be visible above the noise so I need to allow the user to select a Threshold Voltage that triggers a real count rather than noise spikes.
Attempts:
To count such a high frequency, I deduce that I need to use a Counter Input to read fast enough, HOWEVER, I wasn't able to find a way to set a threshold voltage for a Counter Input because I believe they expect a TTL signal anyways, which I won't have. To set the threshold, I realize that Analog Input reads can be triggered at a selected level which is great but the Analog Input Sampling Rate is only 250kS/sec which won't catch every count in my project.
I have a program that uses the Count Edges channel and it is accurate within 3% of the expected # of counts. I was just testing it with a function generator and the program doesn't count unless the signal's voltage is above 2-3 V which won't work for my application. I will post what I have. Does anybody know of a way to trigger off only at selected Voltage levels using counters, or know of a way to filter through the noise to get real spikes?
Thanks!
Solved! Go to Solution.
06-02-2015 01:40 PM
You will either need a device with an analog input sampling rate greater than 1 MHz or you will need an external comparator. With the external comparator you could use an analog output to set the threshold, although the user would not be able to see the signal or threshold, only the resulting counts.
Lynn
06-02-2015 02:24 PM
Thanks for the reply johnsold. I didn't think to use a comparator but that is good to know that I have that option. I was and still am hoping for some kind of trick to do this programmatically. One other idea that I was playing with is offsetting two or three different Reads on the same signal to read the signal at different times. If this is a possibility, it may be able to double or triple my sample rate to 500k or 750kS / sec. Anyone else have any ideas on this solution?
06-02-2015 02:53 PM
That does not work. All the channels share the same A/D converter so using two channels results in each being sampled at 125 kHz.
Lynn
06-05-2015 10:11 AM
Thanks again for the suggestion. Using a comparator will be my solution. I already tried using one at radioshack but it's slew rate was too slow for the signal frequencies I am trying to count. No problem though, this seems like my best option.
06-05-2015 02:27 PM
You should choose a comparator with a push-pull output stage (not pull-up resistor) and output voltage levels compatible with your counter. Unfortunately it appears that NI does not specify maximum rise times for counter inputs. I would try to stay below a few tens of nanoseconds or faster to be sure that everything is compaible.
Lynn