mvIMPACT Acquire SDK C++

Category that contains the quadrature Encoder Control features. More...

#include <mvIMPACT_acquire_GenICam.h>

Public Member Functions

 EncoderControl (mvIMPACT::acquire::Device *pDev, const std::string &settingName="Base")
 Constructs a new mvIMPACT::acquire::GenICam::EncoderControl object.
 

Public Attributes

PropertyI64 encoderDivider
 An integer property. Sets how many Encoder increments/decrements are needed to generate an Encoder output pulse signal.
 
PropertyI64 encoderMode
 An enumerated integer property. Selects if the count of encoder uses FourPhase mode with jitter filtering or the HighResolution mode without jitter filtering.
 
PropertyI64 encoderOutputMode
 An enumerated integer property. Selects the conditions for the Encoder interface to generate a valid Encoder output signal.
 
Method encoderReset
 A method object. Does a software reset of the selected Encoder and starts it.
 
PropertyI64 encoderResetActivation
 An enumerated integer property. Selects the Activation mode of the Encoder Reset Source signal.
 
PropertyI64 encoderResetSource
 An enumerated integer property. Selects the signals that will be the source to reset the Encoder.
 
PropertyF encoderResolution
 A floating point property. Defines the resolution of one encoder step.
 
PropertyI64 encoderSelector
 An enumerated integer property. Selects which Encoder to configure.
 
PropertyI64 encoderSourceA
 An enumerated integer property. Selects the signal which will be the source of the A input of the Encoder.
 
PropertyI64 encoderSourceB
 An enumerated integer property. Selects the signal which will be the source of the B input of the Encoder.
 
PropertyI64 encoderStatus
 An enumerated integer property. Returns the motion status of the encoder.
 
PropertyF encoderTimeout
 A floating point property. Sets the maximum time interval between encoder counter increments before the status turns to static.
 
PropertyI64 encoderValue
 An integer property. Reads or writes the current value of the position counter of the selected Encoder.
 
PropertyI64 encoderValueAtReset
 An integer property. Reads the value of the of the position counter of the selected Encoder when it was reset by a signal or by an explicit EncoderReset command.
 

Detailed Description

Category that contains the quadrature Encoder Control features.

A category that contains the quadrature Encoder Control features.

Constructor & Destructor Documentation

◆ EncoderControl()

EncoderControl ( mvIMPACT::acquire::Device pDev,
const std::string &  settingName = "Base" 
)
inlineexplicit

Constructs a new mvIMPACT::acquire::GenICam::EncoderControl object.

Parameters
[in]pDevA pointer to a mvIMPACT::acquire::Device object obtained from a mvIMPACT::acquire::DeviceManager object.
[in]settingNameThe name of the driver internal setting to access with this instance. A list of valid setting names can be obtained by a call to mvIMPACT::acquire::FunctionInterface::getAvailableSettings, new settings can be created with the function mvIMPACT::acquire::FunctionInterface::createSetting

Member Data Documentation

◆ encoderDivider

PropertyI64 encoderDivider

An integer property. Sets how many Encoder increments/decrements are needed to generate an Encoder output pulse signal.

Sets how many Encoder increments/decrements are needed to generate an Encoder output pulse signal.

◆ encoderMode

PropertyI64 encoderMode

An enumerated integer property. Selects if the count of encoder uses FourPhase mode with jitter filtering or the HighResolution mode without jitter filtering.

Selects if the count of encoder uses FourPhase mode with jitter filtering or the HighResolution mode without jitter filtering.

The following string values might be valid for this feature:

  • FourPhase (Display string: 'Four Phase'): The counter increments or decrements 1 for every full quadrature cycle with jitter filtering.
  • HighResolution (Display string: 'High Resolution'): The counter increments or decrements every quadrature phase for high resolution counting, but without jitter filtering.
Note
Depending on the device some of these values might not be supported and especially when working with third party devices there might be custom values which are not listed here. To get a complete and reliable list of supported values at runtime an application should therefore call mvIMPACT::acquire::EnumPropertyI::getTranslationDictStrings() or one of the other functions dealing with translation dictionaries for enumerated properties.

◆ encoderOutputMode

PropertyI64 encoderOutputMode

An enumerated integer property. Selects the conditions for the Encoder interface to generate a valid Encoder output signal.

Selects the conditions for the Encoder interface to generate a valid Encoder output signal.

The following string values might be valid for this feature:

  • Off (Display string: 'Off'): No output pulse are generated.
  • PositionUp (Display string: 'Position Up'): Output pulses are generated at all new positions in the positive direction. If the encoder reverses no output pulse are generated until it has again passed the position where the reversal started.
  • PositionDown (Display string: 'Position Down'): Output pulses are generated at all new positions in the negative direction. If the encoder reverses no output pulse are generated until it has again passed the position where the reversal started.
  • DirectionUp (Display string: 'Direction Up'): Output pulses are generated at all position increments in the positive direction while ignoring negative direction motion.
  • DirectionDown (Display string: 'Direction Down'): Output pulses are generated at all position increments in the negative direction while ignoring positive direction motion.
  • Motion (Display string: 'Motion'): Output pulses are generated at all motion increments in both directions.
Note
Depending on the device some of these values might not be supported and especially when working with third party devices there might be custom values which are not listed here. To get a complete and reliable list of supported values at runtime an application should therefore call mvIMPACT::acquire::EnumPropertyI::getTranslationDictStrings() or one of the other functions dealing with translation dictionaries for enumerated properties.

The following figure explains the different encoderOutputModes

encoderOutputModes

◆ encoderReset

Method encoderReset

A method object. Does a software reset of the selected Encoder and starts it.

Does a software reset of the selected Encoder and starts it. The Encoder starts counting events immediately after the reset. EncoderReset can be used to reset the Encoder independently from the EncoderResetSource.

◆ encoderResetActivation

PropertyI64 encoderResetActivation

An enumerated integer property. Selects the Activation mode of the Encoder Reset Source signal.

Selects the Activation mode of the Encoder Reset Source signal.

The following string values might be valid for this feature:

  • RisingEdge (Display string: 'Rising Edge'): Resets the Encoder on the Rising Edge of the signal.
  • FallingEdge (Display string: 'Falling Edge'): Resets the Encoder on the Falling Edge of the signal.
  • AnyEdge (Display string: 'Any Edge'): Resets the Encoder on the Falling or rising Edge of the selected signal.
  • LevelHigh (Display string: 'Level High'): Resets the Encoder as long as the selected signal level is High.
  • LevelLow (Display string: 'Level Low'): Resets the Encoder as long as the selected signal level is Low.
Note
Depending on the device some of these values might not be supported and especially when working with third party devices there might be custom values which are not listed here. To get a complete and reliable list of supported values at runtime an application should therefore call mvIMPACT::acquire::EnumPropertyI::getTranslationDictStrings() or one of the other functions dealing with translation dictionaries for enumerated properties.

◆ encoderResetSource

PropertyI64 encoderResetSource

An enumerated integer property. Selects the signals that will be the source to reset the Encoder.

Selects the signals that will be the source to reset the Encoder.

The following string values might be valid for this feature:

  • Off (Display string: 'Off'): Disable the Encoder Reset trigger.
  • AcquisitionTrigger (Display string: 'Acquisition Trigger'): Resets with the reception of the Acquisition Trigger.
  • AcquisitionTriggerMissed (Display string: 'Acquisition Trigger Missed'): Resets with the reception of a missed Acquisition Trigger.
  • AcquisitionStart (Display string: 'Acquisition Start'): Resets with the reception of the Acquisition Start.
  • AcquisitionEnd (Display string: 'Acquisition End'): Resets with the reception of the Acquisition End.
  • FrameTrigger (Display string: 'Frame Trigger'): Resets with the reception of the Frame Start Trigger.
  • FrameTriggerMissed (Display string: 'Frame Trigger Missed'): Resets with the reception of a missed Frame Trigger.
  • FrameStart (Display string: 'Frame Start'): Resets with the reception of the Frame Start.
  • FrameEnd (Display string: 'Frame End'): Resets with the reception of the Frame End.
  • ExposureStart (Display string: 'Exposure Start'): Resets with the reception of the Exposure Start.
  • ExposureEnd (Display string: 'Exposure End'): Resets with the reception of the Exposure End.
  • Line0 (Display string: 'Line 0'): Resets by the chosen I/O Line.
  • Line1 (Display string: 'Line 1'): Resets by the chosen I/O Line.
  • Line2 (Display string: 'Line 2'): Resets by the chosen I/O Line.
  • Line#3# (Display string: 'Line #3#'): Resets by the chosen I/O Line.
  • UserOutput0 (Display string: 'User Output 0'): Resets by the chosen User Output bit.
  • UserOutput1 (Display string: 'User Output 1'): Resets by the chosen User Output bit.
  • UserOutput2 (Display string: 'User Output 2'): Resets by the chosen User Output bit.
  • UserOutput#3# (Display string: 'User Output #3#'): Resets by the chosen User Output bit.
  • Counter0Start (Display string: 'Counter 0 Start'): Resets with the reception of the Counter Start.
  • Counter1Start (Display string: 'Counter 1 Start'): Resets with the reception of the Counter Start.
  • Counter2Start (Display string: 'Counter 2 Start'): Resets with the reception of the Counter Start.
  • Counter#3#Start (Display string: 'Counter #3# Start'): Resets with the reception of the Counter Start.
  • Counter0End (Display string: 'Counter 0 End'): Resets with the reception of the Counter End.
  • Counter1End (Display string: 'Counter 1 End'): Resets with the reception of the Counter End.
  • Counter2End (Display string: 'Counter 2 End'): Resets with the reception of the Counter End.
  • Counter#3#End (Display string: 'Counter #3# End'): Resets with the reception of the Counter End.
  • Timer0Start (Display string: 'Timer 0 Start'): Resets with the reception of the Timer Start.
  • Timer1Start (Display string: 'Timer 1 Start'): Resets with the reception of the Timer Start.
  • Timer2Start (Display string: 'Timer 2 Start'): Resets with the reception of the Timer Start.
  • Timer#3#Start (Display string: 'Timer #3# Start'): Resets with the reception of the Timer Start.
  • Timer0End (Display string: 'Timer 0 End'): Resets with the reception of the Timer End.
  • Timer1End (Display string: 'Timer 1 End'): Resets with the reception of the Timer End.
  • Timer2End (Display string: 'Timer 2 End'): Resets with the reception of the Timer End.
  • Timer#3#End (Display string: 'Timer #3# End'): Resets with the reception of the Timer End.
  • LogicBlock0 (Display string: 'Logic Block 0'): Reset by the choosen Logic Block signal.
  • LogicBlock1 (Display string: 'Logic Block 1'): Reset by the choosen Logic Block signal.
  • LogicBlock2 (Display string: 'Logic Block 2'): Reset by the choosen Logic Block signal.
  • LogicBlock#3# (Display string: 'Logic Block #3#'): Reset by the choosen Logic Block signal.
  • SoftwareSignal0 (Display string: 'Software Signal 0'): Resets on the reception of the Software Signal.
  • SoftwareSignal1 (Display string: 'Software Signal 1'): Resets on the reception of the Software Signal.
  • SoftwareSignal2 (Display string: 'Software Signal 2'): Resets on the reception of the Software Signal.
  • SoftwareSignal#3# (Display string: 'Software Signal #3#'): Resets on the reception of the Software Signal.
  • Action0 (Display string: 'Action 0'): Resets on assertions of the chosen action signal (Broadcasted signal on the transport layer).
  • Action1 (Display string: 'Action 1'): Resets on assertions of the chosen action signal (Broadcasted signal on the transport layer).
  • Action2 (Display string: 'Action 2'): Resets on assertions of the chosen action signal (Broadcasted signal on the transport layer).
  • Action#3# (Display string: 'Action #3#'): Resets on assertions of the chosen action signal (Broadcasted signal on the transport layer).
  • LinkTrigger0 (Display string: 'Link Trigger 0'): Resets on the reception of the chosen Link Trigger (received from the transport layer).
  • LinkTrigger1 (Display string: 'Link Trigger 1'): Resets on the reception of the chosen Link Trigger (received from the transport layer).
  • LinkTrigger2 (Display string: 'Link Trigger 2'): Resets on the reception of the chosen Link Trigger (received from the transport layer).
  • LinkTrigger#3# (Display string: 'Link Trigger #3#'): Resets on the reception of the chosen Link Trigger (received from the transport layer).
Note
Depending on the device some of these values might not be supported and especially when working with third party devices there might be custom values which are not listed here. To get a complete and reliable list of supported values at runtime an application should therefore call mvIMPACT::acquire::EnumPropertyI::getTranslationDictStrings() or one of the other functions dealing with translation dictionaries for enumerated properties.

◆ encoderResolution

PropertyF encoderResolution

A floating point property. Defines the resolution of one encoder step.

Defines the resolution of one encoder step.

◆ encoderSelector

PropertyI64 encoderSelector

An enumerated integer property. Selects which Encoder to configure.

Selects which Encoder to configure.

The following string values might be valid for this feature:

  • Encoder0 (Display string: 'Encoder 0'): Selects Encoder 0.
  • Encoder1 (Display string: 'Encoder 1'): Selects Encoder 1.
  • Encoder2 (Display string: 'Encoder 2'): Selects Encoder 2.
  • Encoder#3# (Display string: 'Encoder #3#'): Selects Encoder #3#.
Note
Depending on the device some of these values might not be supported and especially when working with third party devices there might be custom values which are not listed here. To get a complete and reliable list of supported values at runtime an application should therefore call mvIMPACT::acquire::EnumPropertyI::getTranslationDictStrings() or one of the other functions dealing with translation dictionaries for enumerated properties.

◆ encoderSourceA

PropertyI64 encoderSourceA

An enumerated integer property. Selects the signal which will be the source of the A input of the Encoder.

Selects the signal which will be the source of the A input of the Encoder.

The following string values might be valid for this feature:

  • Off (Display string: 'Off'): Counter is stopped.
  • Line0 (Display string: 'Line 0'): Encoder Forward input is taken from the chosen I/O Line.
  • Line1 (Display string: 'Line 1'): Encoder Forward input is taken from the chosen I/O Line.
  • Line2 (Display string: 'Line 2'): Encoder Forward input is taken from the chosen I/O Line.
  • Line#3# (Display string: 'Line #3#'): Encoder Forward input is taken from the chosen I/O Line.
Note
Depending on the device some of these values might not be supported and especially when working with third party devices there might be custom values which are not listed here. To get a complete and reliable list of supported values at runtime an application should therefore call mvIMPACT::acquire::EnumPropertyI::getTranslationDictStrings() or one of the other functions dealing with translation dictionaries for enumerated properties.

◆ encoderSourceB

PropertyI64 encoderSourceB

An enumerated integer property. Selects the signal which will be the source of the B input of the Encoder.

Selects the signal which will be the source of the B input of the Encoder.

The following string values might be valid for this feature:

  • Off (Display string: 'Off'): Counter is stopped.
  • Line0 (Display string: 'Line 0'): Encoder Reverse input is taken from the chosen I/O Line.
  • Line1 (Display string: 'Line 1'): Encoder Reverse input is taken from the chosen I/O Line.
  • Line2 (Display string: 'Line 2'): Encoder Reverse input is taken from the chosen I/O Line.
  • Line#3# (Display string: 'Line #3#'): Encoder Reverse input is taken from the chosen I/O Line.
Note
Depending on the device some of these values might not be supported and especially when working with third party devices there might be custom values which are not listed here. To get a complete and reliable list of supported values at runtime an application should therefore call mvIMPACT::acquire::EnumPropertyI::getTranslationDictStrings() or one of the other functions dealing with translation dictionaries for enumerated properties.

◆ encoderStatus

PropertyI64 encoderStatus

An enumerated integer property. Returns the motion status of the encoder.

Returns the motion status of the encoder.

The following string values might be valid for this feature:

  • EncoderUp (Display string: 'Encoder Up'): The encoder counter last incremented.
  • EncoderDown (Display string: 'Encoder Down'): The encoder counter last decremented.
  • EncoderIdle (Display string: 'Encoder Idle'): The encoder is not active.
  • EncoderStatic (Display string: 'Encoder Static'): No motion within the EncoderTimeout time.
Note
Depending on the device some of these values might not be supported and especially when working with third party devices there might be custom values which are not listed here. To get a complete and reliable list of supported values at runtime an application should therefore call mvIMPACT::acquire::EnumPropertyI::getTranslationDictStrings() or one of the other functions dealing with translation dictionaries for enumerated properties.

◆ encoderTimeout

PropertyF encoderTimeout

A floating point property. Sets the maximum time interval between encoder counter increments before the status turns to static.

Sets the maximum time interval between encoder counter increments before the status turns to static.

◆ encoderValue

PropertyI64 encoderValue

An integer property. Reads or writes the current value of the position counter of the selected Encoder.

Reads or writes the current value of the position counter of the selected Encoder.

◆ encoderValueAtReset

PropertyI64 encoderValueAtReset

An integer property. Reads the value of the of the position counter of the selected Encoder when it was reset by a signal or by an explicit EncoderReset command.

Reads the value of the of the position counter of the selected Encoder when it was reset by a signal or by an explicit EncoderReset command.