Balluff - BVS CA-BN Technical Documentation
GenICam™ and advanced features

Introduction

In ImpactControlCenter, you can see them in "Setting → Base → Camera → GenICam":

Figure 1: ImpactControlCenter - GenICam™ controls (depends on device and FW version)

As you can see, there are some controls with and without the prefix "mv".

All those features are "camera based / device based" features which can also be accessed using the camera with other GenICam compliant third-party software.

Note
Do not mix up the camera based / device based features with the features available in "Setting → Base → Image Processing". Theses features are driver based features which are processed by the software and therefore need CPU load.

Device Control

The "Device Control" contains the features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
DeviceType deviceType Returns the device type.
DeviceScanType deviceScanType Scan type of the sensor of the device.
DeviceVendorName deviceVendorName Name of the manufacturer of the device.
DeviceModelName deviceModelName Name of the device model.
DeviceManufacturerInfo deviceManufacturerInfo Manufacturer information about the device.
DeviceVersion deviceVersion Version of the device.
DeviceFirmwareVersion deviceFirmwareVersion Firmware version of the device.
DeviceSerialNumber deviceSerialNumber Serial number of the device.
DeviceUserID deviceUserID User-programmable device identifier.
DeviceTLVersionMajor deviceTLVersionMajor Major version of the transport layer of the device.
DeviceTLVersionMinor deviceTLVersionMinor Minor version of the transport layer of the device.
DeviceLinkSpeed deviceLinkSpeed Indicates the speed of transmission negotiated on the specified Link.
DeviceTemperature deviceTemperature Device temperature.
etc.    

related to the device and its sensor.

This control provides a bandwidth control feature . You have to select DeviceLinkThroughputLimit. Here you can set the maximum bandwidth in KBps.

Balluff offers also some information properties about the

  • FPGA
    • mvDeviceFPGAVersion
  • and the image sensor
    • mvDeviceSensorColorMode

Image Format Control

The "Image Format Control" contains features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
SensorWidth sensorWidth Effective width of the sensor in pixels.
SensorHeight sensorHeight Effective height of the sensor in pixels.
SensorName sensorName Name of the sensor.
Width width Width of the image provided by the device (in pixels).
Height height Height of the image provided by the device (in pixels).
BinningHorizontal, BinningVertical binningHorizontal, binningVertical Number of horizontal/vertical photo-sensitive cells to combine together.
DecimationHorizontal, DecimationVertical decimationHorizontal, decimationVertical Sub-sampling of the image. This reduces the resolution (width) of the image by the specified decimation factor.
etc.    

related to the format of the transmitted image.

Additionally, Balluff offers numerous additional features like:

Acquisition Control

The "Acquisition Control" contains features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
AcquisitionMode acquisitionMode

Sets the acquisition mode of the device. The different modes configures a device to send

  • exactly one image ("SingleFrame"),
  • exactly the set number of frames ("MultiFrame") or
  • images constantly until an application explicitly stops the acquisition again ("Continuous").

and can be used for asynchronously grabbing and sending image(s). It works with internal and external hardware trigger where the edge is selectable. The external trigger uses ImageRequestTimeout (ms) to time out.

  • The chapter "How To See The First Image" in the "Impact Acquire SDK GUI Applications" manual shows how to acquire images with ImpactControlCenter.
  • The use case Acquiring a number of images shows how to acquire a number of images; also triggered externally.
AcquisitionStart acquisitionStart Starts the acquisition of the device.
AcquisitionStop acquisitionStop Stops the acquisition of the device at the end of the current Frame.
AcquisitionAbort acquisitionAbort Aborts the acquisition immediately.
AcquisitionFrameRate acquisitionFrameRate

Controls the acquisition rate (in Hertz) at which the frames are captured.

Some cameras support a special internal trigger mode that allows more exact frame rates. This feature keeps the frame rate constant to an accuracy of +/-0.005 fps at 200 fps. This is achieved using frames with a length difference of up to 1 us. Please check in the sensor summary if this feature exists for the requested sensor.

TriggerSelector triggerSelector Selects the type of trigger to configure.
A possible option is mvTimestampReset. The use case about mvTimestampReset is available.
TriggerOverlap[TriggerSelector] triggerOverlap

Specifies the type trigger overlap permitted with the previous frame. TriggerOverlap is only intended for external trigger (which is usually non-overlapped: i.e. exposure and readout are sequentially). This leads to minimal latency / jitter between trigger and exposure.
However, the camera accepts a new trigger (the exposure time earlier) before the end of the transmission of the current image.

 Maximum frame rate in triggered mode = frame rate of continuous mode 

This however leads to higher latency / jitter between trigger and exposure.

A trigger will be not latched if it occurs before this moment (trigger is accurate in time).

See also
Principles of overlapped and pipelined trigger.
ExposureMode exposureMode Sets the operation mode of the exposure (or shutter).
ExposureTime exposureTime Sets the exposure time (in microseconds) when ExposureMode is Timed and ExposureAuto is Off.
ExposureAuto exposureAuto Sets the automatic exposure mode when ExposureMode is Timed.
etc.    

related to the image acquisition, including the triggering mode.

Additionally, Balluff offers numerous additional features like:

  • mvShutterMode
    which selects the shutter mode of the CMOS sensors like rolling shutter or global shutter.
  • mvDefectivePixelEnable
    which activates the sensor's defective pixel correction.
    See also
    https://www.balluff.com/de-en/whitepapers/color-correction-of
  • mvExposureAutoAverageGrey
    common desired average grey value (in percent) used for Auto Gain Control (AGC) and Auto Exposure Control (AEC).
  • mvExposureAutoAOIMode
    common AutoControl AOI used for Auto Gain Control (AGC), Auto Exposure Control (AEC) and Auto White Balance (AWB).
Since
FW Revision 2.40.2546.0

Common properties for AutoExposureControl, AutoGainControl , and AutoWhiteBalance are available via mv Auto Feature Control.

For "Exposure Auto Mode", in ImpactControlCenter just select in "Exposure Auto" "Continuous". Afterwards, you have the possibility to set lower and upper limit, average gray combined with AOI setting:

Figure 2: Acquire Control → Exposure Auto

Counter And Timer Control

The "Counter And Timer Control" is a powerful feature which Balluff/MATRIX VISION customers already know under the name Hardware Real-Time Controller (HRTC). Balluff/MATRIX VISION cameras provide:

  • 4 counters for counting events or external signals (compare number of triggers vs. number of frames; overtrigger) and
  • 2 timers.

Counter and Timers can be used, for example,

This achieves complete HRTC functionality which supports following applications:

  • frame rate by timer
  • exposure time by timer
  • pulse width at input

The "Counter And Timer Control" contains features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
CounterSelector counterSelector Selects which counter to configure.
CounterEventSource[CounterSelector] counterEventSource Selects the events that will be the source to increment the counter.
CounterEventActivation[CounterSelector] counterEventActivation Selects the activation mode event source signal.
etc.    
TimerSelector timerSelector Selects which timer to configure.
TimerDuration[TimerSelector] timerDuration Sets the duration (in microseconds) of the timer pulse.
TimerDelay[TimerSelector] timerDelay Sets the duration (in microseconds) of the delay.
etc.    

related to the usage of programmable counters and timers.

Because there are many ways to use this feature, the list of use cases is long and not finished yet:

Analog Control

The "Analog Control" contains features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
GainSelector gainSelector Selects which gain is controlled by the various gain features.
Gain[GainSelector] gain Controls the selected gain as an absolute physical value [in dB].
GainAuto[GainSelector] gainAuto Sets the automatic gain control (AGC) mode.
GainAutoBalance gainAutoBalance Sets the mode for automatic gain balancing between the sensor color channels or taps.
BlackLevelSelector blackLevelSelector Selects which black level is controlled by the various BlackLevel features.
BlackLevel[BlackLevelSelector] blackLevel Controls the selected BlackLevel as an absolute physical value.
BalanceWhiteAuto balanceWhiteAuto Controls the mode for automatic white balancing between the color channels.
Gamma gamma Controls the gamma correction of pixel intensity.
etc.    

related to the video signal conditioning in the analog domain.

Additionally, Balluff offers:

  • mvBalanceWhiteAuto functions and
  • mvGainAuto functions.

In ImpactControlCenter just select in "Gain Auto" (AGC) "Continuous". Afterwards, you have the possibility to set minimum and maximum limit combined with AOI setting:

Figure 3: Analog Control → Gain Auto
See also
Optimizing the color/luminance fidelity of the camera

Color Transformation Control

The "Color Transformation Control" contains features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
ColorTransformationSelector colorTransformationEnable Activates the selected color transformation module.
ColorTransformationSelector colorTransformationSelector Selects which color transformation module is controlled by the various color transformation features.
ColorTransformationValue colorTransformationValue Represents the value of the selected Gain factor or Offset inside the transformation matrix.
ColorTransformationValueSelector colorTransformationValueSelector Selects the gain factor or Offset of the Transformation matrix to access in the selected color transformation module.

related to the control of the color transformation.

This control offers an enhanced color processing for optimum color fidelity using a color correction matrix (CCM) and enables

  • 9 coefficients values (Gain 00 .. Gain 22) and
  • 3 offset values (Offset 0 .. Offset 2)

to be entered for RGBIN → RGBOUT transformation. This can be used to optimize specific colors or specific color temperatures.

Figure 4: Color correction sample

Coefficients will be made available for sensor models and special requirements on demand.

See also
Optimizing the color/luminance fidelity of the camera

Event Control

The "Event Control" contains features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
EventSelector eventSelector Selects which Event to signal to the host application.
EventNotification[EventSelector] eventNotification Activate or deactivate the notification to the host application of the occurrence of the selected Event.
EventFrameTriggerData eventFrameTriggerData Category that contains all the data features related to the FrameTrigger event.
EventFrameTrigger eventFrameTrigger Returns the unique identifier of the FrameTrigger type of event.
EventFrameTriggerTimestamp eventFrameTriggerTimestamp Returns the timestamp of the AcquisitionTrigger event.
EventFrameTriggerFrameID eventFrameTriggerFrameID Returns the unique identifier of the frame (or image) that generated the FrameTrigger event.
EventExposureEndData eventExposureEndData Category that contains all the data features related to the ExposureEnd event.
EventExposureEnd eventExposureEnd Returns the unique identifier of the ExposureEnd type of event.
EventExposureEndTimestamp eventExposureEndTimestamp Returns the timestamp of the ExposureEnd Event.
EventExposureEndFrameID eventExposureEndFrameID Returns the unique identifier of the frame (or image) that generated the ExposureEnd event.
EventErrorData eventErrorData Category that contains all the data features related to the error event.
EventError eventError Returns the unique identifier of the error type of event.
EventErrorTimestamp eventErrorTimestamp Returns the timestamp of the error event.
EventErrorFrameID eventErrorFrameID If applicable, returns the unique identifier of the frame (or image) that generated the error event.
EventErrorCode eventErrorCode Returns an error code for the error(s) that happened.
etc.    

related to the generation of Event notifications by the device.

The use case Working with Event Control shows how this control can be used.

Chunk Data Control

The "Chunk Data Control" contains features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
ChunkModeActive chunkModeActive Activates the inclusion of chunk data in the payload of the image.
ChunkSelector chunkSelector Selects which chunk to enable or control.
ChunkEnable[ChunkSelector] chunkEnable Enables the inclusion of the selected chunk data in the payload of the image.
ChunkImage chunkImage Returns the entire image data included in the payload.
ChunkOffsetX ChunkOffsetX Returns the offset x of the image included in the payload.
ChunkOffsetY chunkOffsetY Returns the offset y of the image included in the payload.
ChunkWidth chunkWidth Returns the width of the image included in the payload.
ChunkHeight chunkHeight Returns the height of the image included in the payload.
ChunkPixelFormat chunkPixelFormat Returns the pixel format of the image included in the payload.
ChunkTimestamp chunkTimestamp Returns the timestamp of the image included in the payload at the time of the FrameStart internal event.
etc.    

related to the Chunk Data Control.

A description can be found in the image acquisition section of the Impact Acquire API manuals.

File Access Control

The "File Access Control" contains features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
FileSelector fileSelector Selects the target file in the device.
FileOperationSelector[FileSelector] fileOperationSelector Selects the target operation for the selected file in the device.
FileOperationExecute[FileSelector][FileOperationSelector] fileOperationExecute Executes the operation selected by FileOperationSelector on the selected file.
FileOpenMode[FileSelector] fileOpenMode Selects the access mode in which a file is opened in the device.
FileAccessBuffer fileAccessBuffer Defines the intermediate access buffer that allows the exchange.
etc.    

related to the File Access Control that provides all the services necessary for generic file access of a device.

The use case Working with the UserFile section (Flash memory) shows how this control can be used.

Digital I/O Control

The "Digital I/O Control" contains features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
LineSelector lineSelector Selects the physical line (or pin) of the external device connector to configure.
LineMode[LineSelector] lineMode Controls if the physical Line is used to Input or Output a signal.
UserOutputSelector userOutputSelector Selects which bit of the user output register will be set by UserOutputValue.
UserOutputValue[UserOutputSelector] userOutputValue Sets the value of the bit selected by UserOutputSelector.
etc.    

related to the control of the general input and output pins of the device.

Additionally, Balluff offers:

  • mvLineDebounceTimeRisingEdge and
  • mvLineDebounceTimeFallingEdge functionality.

A description of these functions can be found in the use case Creating a debouncing filter at the inputs.

How you can test the digital inputs and outputs is described in "Testing The Digital Inputs" in the "Impact Acquire SDK GUI Applications" manual. The use case Creating synchronized acquisitions is a further example which shows you how to work with digital inputs and outputs.

Transport Layer Control

The "Transport Layer Control" contains features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
PayloadSize payloadSize

Provides the number of bytes transferred for each image or chunk on the stream channel.

etc.    

related to the Transport Layer Control.

User Set Control

The "User Set Control" contains features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
UserSetSelector userSetSelector Selects the feature user set to load, save or configure.
UserSetLoad[UserSetSelector] userSetLoad Loads the user set specified by UserSetSelector to the device and makes it active.
UserSetSave[UserSetSelector] userSetSave Endianess of the device registers.
UserSetDefault userSetDefault Selects the feature user set to load and make active when the device is reset.

related to the User Set Control to save and load the user device settings.

The camera allows the storage of up to four configuration sets in the camera. This feature is similar to storing settings in the registry but this way in the camera. It is possible to store

  • exposure,
  • gain,
  • AOI,
  • frame rate,
  • etc.

permanently. You can select, which user set comes up after hard reset.

Use case related to the "User Set Control" is:

Another way to create user data is described here: Creating user data entries

mv Logic Gate Control

The "mv Logic Gate Control" contains features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
  mvLogicGateANDSelector Selects the AND gate to configure.
  mvLogicGateANDSource1 Selects the first input signal of the AND gate selected by mvLogicGateANDSelector.
  mvLogicGateANDSource2 Selects the second input signal of the AND gate selected by mvLogicGateANDSelector.
  mvLogicGateORSelector Selects the OR gate to configure.
  mvLogicGateORSource1 Selects the first input signal of the OR gate selected by mvLogicGateORSelector.
  mvLogicGateORSource2 Selects the second input signal of the OR gate selected by mvLogicGateORSelector.
  mvLogicGateORSource3 Selects the third input signal of the OR gate selected by mvLogicGateORSelector.
  mvLogicGateORSource4 Selects the fourth input signal of the OR gate selected by mvLogicGateORSelector.

related to control the devices Logic Gate Control parameters. It performs a logical operation on one or more logic inputs and produces a single logic output.

The use case Creating different exposure times for consecutive images shows how you can create different exposure times with timers, counters and the logic gate functionality.

See also
Triggering of an indefinite sequence with precise starting time

mv Serial Interface Control

The "mv Serial Interface Control" contains features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
  mvSerialInterfaceMode States the interface mode of the serial interface.
  mvSerialInterfaceEnable Controls whether the serial interface is enabled or not.
  mvSerialInterfaceBaudRate Serial interface clock frequency.
  mvSerialInterfaceASCIIBuffer Buffer for exchanging ASCII data over serial interface.
  mvSerialInterfaceWrite Command to write data from the serial interface.
  mvSerialInterfaceRead Command to read data from the serial interface.
etc.    

related to control the devices Serial Interface Control parameters. It enables the camera to be controlled via serial interface.

The use case Working With The Serial Interface (mv Serial Interface Control) shows how you can work with the serial interface control.

See also
Working With The Serial Interface (mv Serial Interface Control)

mv Auto Feature Control

The "mv Auto Feature Control" contains features like

Feature name (acc. to SFNC) Property name (acc. to Impact Acquire) Description
  mvAutoFeatureAOIMode Common AutoControl AOI used for Auto Gain Control(AGC), Auto Exposure Control(AEC) and Auto White Balancing.
  mvAutoFeatureSensitivity The controllers sensitivity of brightness deviations. This parameter influences the gain as well as the exposure controller.
  mvAutoFeatureCharacteristic Selects the prioritization between Auto Exposure Control(AEC) and Auto Gain Control(AGC) controller.
  mvAutoFeatureBrightnessTolerance The error input hysteresis width of the controller. If the brightness error exceeds the half of the value in positive or negative direction, the controller restarts to control the brightness.

related to the automatic control of exposure, gain, and white balance.

With this control you can influence the characteristic of the controller depending on certain light situations. AEC/AGC can be controlled with the new additional properties mvAutoFeatureSensitivity, mvAutoFeatureCharacteristic and mvAutoFeatureBrightnessTolerance.