Counter/Timer

cancel
Showing results for 
Search instead for 
Did you mean: 

Why does the component works counter acquired data event not fire if the input signal levels are low?

We are using Delphi5/Win98/NIDAQ7.0 code with a PCI-6601 to generate the gate pulse for the counter which is on a PCI-6711 card, is set for continuous buffered event counting, synchronous counting=true and buffer size=NMeasurements (typically ~ 2000 pts). We have checked that the gate pulses from the 6601 are being received by the counter which only seems to fire its acquired data event if the input count rate on the source line is sufficiently large.
0 Kudos
Message 1 of 4
(3,394 Views)
Hi Rob,

From what I understand, if the source signal on the counter of your PCI-6711 is too slow, then you won't get acquired data events from your gate signal. I tested out my CWCounter component works control (Measurement Studio 6.0) and it seemed to work fine on my E Series card. I used a PCI-6602 to generate a 1Hz pulse train on the gate and a 5Hz pulse train on the source and I set my acquired data event to fire after 20 measurements. The only difference I notice is that you have synchronous counting enabled and my E Series card doesn't have that ability. Try disabling the synchronous counting to see if that is causing the trouble.

Are you able to get it working with a faster source (internal timebase of card)? Are you specifying the gate and so
urce of your counter to be the default PFI pins? It could be that your buffer size is too large. If you have a 5Hz source and you want to acquire a 2000 points, that will take roughly 400 seconds (assuming your gate is also 5Hz) but it is probably slower than your source. Anyway, hope that helps a bit. Have a good day.

Ron
0 Kudos
Message 2 of 4
(3,394 Views)
Hi Ron,

Thanks for your quick response to our question.

In the past we have tried running with the synchronous counting both enabled and disabled and have seen no difference. It is currently set to enabled because of a discussion found in the KnowledgeBase section of the NI website relating to synchronous counting that suggested that for low signal levels errors can be avoided by enabling this mode.

Typically the counter is much happier with faster source signals (ie the code runs as expected and the acquired data event is fired). With our particular application the source signal can range anywhere from 0-1kHz over a buffer of 2000 pts collected using a gate signal of usually 1-10KHz (ie data collected over 200ms-2s time period with points at 0.1-1m
s time intervals).

The counter gate and source have been tried on numerous PFI pins with the same problem occurring in each case. At present they are not on there defaults since that seems to cause conflicts with the triggering of the Analog Output channels on the card (thats another whole can or worms right there).

Thanks again for your help in this matter.
0 Kudos
Message 3 of 4
(3,394 Views)
Hi Rob,

I believe it has to do with your source and gate choices. The NI-TIO counters, which are the counters on the 6601 card, count each time they receive a rising edge on the source input (or falling depending on configuration). There is one exception. If the gate signal is low, the source signals are ignored and the counter doesn't count. If the gate signal is high, the counter will count all source signals. This uses an active high gate (could be configured active low as well).

What this has to do with you is if your source signal has a low rate, it is more likely that your faster gate signal is causing the counter to ignore the source and not count. Typically, the faster of the two signals is used as the source.

Theoreticall
y, it is possible that your source signal is never counted if it happens to produce a rising edge when the gate is low. That is why the source signal should be at least twice as fast as the gate.

Anyway, I'm not sure if I misinterpreted your post or not. Let me know if I did. Have a good day.

Ron
0 Kudos
Message 4 of 4
(3,394 Views)