On-the-fly changeover from velocity to positioning with modulo axis

 

The following application example illustrates how you can change the operating mode on the fly, where one operating mode replaces all others. The original operating mode is deactivated at the same time as the new operating mode is activated. For changeover on the fly within the same cycle, set control signals xActivate and xStart in "Velocity" operating mode to "FALSE" and set control signals xActivate and xStart in "Positioning" operating mode to "TRUE".

Control

Control the axis in the Velocity structure as follows:

  • To activate the operating mode, set xActivate to "TRUE".
  • Define the setpoints for lrVelocity, lrAcceleration, lrDeceleration, and lrJerk.
  • To start the operating mode, set xStart to "TRUE".

Control the axis in the Positioning structure as follows:

  • Define the setpoints for lrPosition, lrVelocity, lrAcceleration, lrDeceleration, and lrJerk in the Positioning structure.
  • Set eModuloMode to "MODULO_CW" in the CONFIG structure.
  • Set ePresetMode to "ACTPOS_MOVING" in the CONFIG structure.

Control the axis for changeover on the fly in the same cycle as follows:

  • Set xActivate and xStart to "FALSE" in the Velocity structure, and set xActivate and xStart to "TRUE" in the Positioning structure.

Interface in the IEC Editor

Note:

Unlike with linear axes, the behavior in this case depends on the modulo mode that has been set (in this example: "MODULO_CW"):

Trace recording

[1]

SEW_GVL.Interface_Axis1.ProfileGeneration.Velocity.In.xActivate

[2]

SEW_GVL.Interface_Axis1.ProfileGeneration.Velocity.In.xStart

[3]

SEW_GVL.Interface_Axis1.ProfileGeneration.Positioning.In.xActivate

[4]

SEW_GVL.Interface_Axis1.ProfileGeneration.Positioning.In.xStart

[5]

SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolation.stSetpointsUserUnits.lrPosition

[6]

SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolation.stSetpointsUserUnits.lrVelocity

[7]

SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolation.stSetpointsUserUnits.lrAcceleration

[8]

SEW_GVL.Interface_Axis1.ProfileGeneration.Velocity.Out.xInVelocity

[9]

SEW_GVL.Interface_Axis1.ProfileGeneration.Positioning.Out.xInPosition

Note:

The movement stops at the specified position (in this case at the zero position), similar to StopAtPosition.