Change Detection Benchmark for NI 6509

Updated Oct 24, 2018

Reported In

Hardware

  • PCI-6509
  • PXI-6509
  • USB-6509
  • PCIe-6509

Driver

  • NI-DAQmx

Issue Details

Are there any specifications or benchmarks for how far apart two pulses must be to be detected by a software timed DAQ device? For example, if I have 2 pulses come about a millisecond apart, would they both be detected?

Solution

There is no specification for how close two pulses can be apart and still be detected for software timed devices. Software timed hardware reads and writes a data point each time the read and write API call is processed in the PC software. This benchmark will depend on a number of components it the system such as operating system, computer, code architecture, etc. so therefore the software of your system defines the rate of change detection. 

Additional Information

For more information on how change detection works:


Change detection is defined as when there is a transition from high to low (0 to 1) or low to high (1 to 0). When this change occurs, there are two things that happen. The first part is that an interrupt is sent to the software to interpret the change. At the same time this happens the hardware also latched the state of the digital lines in the task are into a hardware buffer. The software interprets the change detection sent by the interrupt by reading the state of the digital lines (what has been latched in the hardware buffer). 

If a second change is detected before the first change can be interpreted by the software, there will be an overflow. An overflow will result in the overflow bit going high and a DAQmx overflow error thrown. Since this overflow bit is only one bit, it can only tell you that at least one change was not detected. 

To access the overflow bit you can use the DAQmx Read property node RelativeTo > Status > Advanced > ChangeDetection > Overflowed



If you would like to test how fast your system can run under your operating conditions you can try using the DAQmx example Digital - Change Detection.vi or Digital - SW - Timed Input.vi  from the LabVIEW shipping examples. 

WAS THIS ARTICLE HELPFUL?

Not Helpful