MATRIX VISION - mvBlueCOUGAR-X/-XD Technical Documentation
Creating a debouncing filter at the inputs

In some cases, it is necessary to eliminate noise on trigger lines. This can become necessary when either

  • the edges of a trigger signal are not perfect in terms of slope or
  • if, because of the nature of the trigger signal source, multiple trigger edges are generated within a very short period of time even if there has just been a single trigger event.

The latter one is also called bouncing.

Bouncing is the tendency of any two metal contacts in an electronic device to generate multiple signals as the contacts close or open; now debouncing is any kind of hardware device or software that ensures that only a single signal will be acted upon for a single opening or closing of a contact.

To address problems that can arise from these kinds of trigger signals MATRIX VISION offers debouncing filters at the digital inputs of a device.

The debouncing filters can be found under "Setting -> Base -> Camera -> GenICam -> Digital I/O Control -> LineSelector" (red box in Figure 1) for each digital input:

Figure 1: wxPropView - Configuring Digital Input Debounce Times

Each digital input (LineMode equals Input) that can be selected via the LineSelector property will offer its own property to configure the debouncing time for falling edge trigger signals ("mv Line Debounce Time Falling Edge") and rising edge ("mv Line Debounce Time Rising Edge") trigger signals.

The line debounce time can be configured in micro-seconds with a maximum value of up to 5000 micro-seconds. Internally each time an edge is detected at the corresponding digital input a timer will start (orange * in figure 2 and 3), that is reset whenever the signal applied to the input falls below the threshold again. Only if the signal stays at a constant level for a full period of the defined mvLineDebounceTime the input signal will be considered as a valid trigger signal.

Of course this mechanism delays the image acquisition by the debounce time.
Figure 2: mvLineDebounceTimeRisingEdge Behaviour
Figure 3: mvLineDebounceTimeFallingEdge Behaviour