Skip to main content

Dynamic Adaptation with MC_SetOverride

The dynamics (velocity, acceleration, and jerk) of the active and future movements can be adapted by using MC_SetOverride. An adaptation of the dynamics always means a reduction as compared to the originally commanded movement (factors greater than 1 are not permitted). This allows machine operators to temporarily stop a movement (VelFactor = 0) or execute it with reduced dynamic values, for example to check new movement sequences.

The adaptation of the dynamics with MC_SetOverride and the resulting adaptation of the trajectory take effect directly in the same cycle. The requirement for this is that MC_SetOverride is called before the active movement function block.

For more information, see also the example Velocity Override for SoftMotion Axes.

Supported function blocks

Function Block

Support: MC_SetOverride

Comment

MC_Stop

--

MC_Stop is an emergency stop which should always be executed as quickly as possible. Therefore, the dynamic factors of MC_SetOverride do not have any effect on the movement.

MC_Halt

The velocity factor has no effect.

MC_MoveAbsolute

MC_MoveRelative

MC_MoveAdditive

MC_MoveSuperimposed

MC_MoveVelocity

SMC_MoveContinuousAbsolute

SMC_MoveContinuousRelative

MC_Jog

SMC_Inch

SMC_Homing

SMC_ControlAxisByPos

SMC_ControlAxisByPosVel

SMC_ControlAxisByVel

O

The dynamic factors have an effect only if the bAvoidGaps function is activated and a jump has been detected. The factors of MC_SetOverride take into account both the stop and the subsequent absolute movement to close the gap.

MC_Home

--

The homing is executed independently by the drive so that the dynamic factors of MC_SetOverride have no effect.

MC_PositionProfile

MC_VelocityProfile

MC_AccelerationProfile

--

We recommend using MC_CamIn instead of these function blocks.

MC_CamIn

O

The dynamic factors no longer have an effect as soon as the movement is synchronized (MC_CamIn.InSync = TRUE).

MC_CamOut

--

MC_CamOut does not have adjustable dynamic limits and should maintain the current velocity. The dynamic factors of MC_SetOverride therefore do not have an effect.

MC_GearIn

O

The dynamic factors no longer have an effect as soon as the movement is synchronized (MC_GearIn.InGear = TRUE). During ramping, only the acceleration and jerk factors are considered. Changes to the velocity factor (especially VelFactor=0) are ignored.

MC_GearInPos

--

In contrast to MC_GearIn, it does not have a configurable ramping movement. Therefore, the dynamic factors of MC_SetOverride do not have an effect.

SMC_FollowPosition

SMC_FollowVelocity

SMC_FollowPositionVelocity

SMC_FollowSetValues

--

These function blocks write the set values of the axis (for example, fSetPosition). These values should not be modified. Therefore, the dynamic factors of MC_SetOverride do not have an effect.

MC_Phasing

O

The dynamic factors no longer have an effect as soon as the movement is synchronized (MC_Phasing.Done = TRUE). During ramping, only the acceleration and jerk factors are considered. Changes to the velocity factor (especially VelFactor=0) are ignored.

SMC_BacklashCompensation

--

The dynamic factors do not have an effect on synchronized movements. Therefore, this function block ignores the dynamic factors of MC_SetOverride.

Exceeding the target position or target velocity by changing the dynamic factors

Important

If the acceleration factor and/or the jerk factor is reduced during an active movement, then the target position or target velocity may be temporarily exceeded. This can lead to damage to the machine.

With SMC_MoveContinuousAbsolute and SMC_MoveContinuousRelative, a change of the velocity factor can also lead to the limits being exceeded or to a reversal. More details can be found in the documentation of the two function blocks.

Effect of the velocity profile on the use of MC_SetOverride

It is generally recommended to use MC_SetOverride together with a trapezoidal or quadratic velocity profile of the axes. Quadratic-smoothed and sin² velocity profiles do not respond well to restarting or interrupting the movement in certain cases (see Interruption of Movements). Because a change to the override is equivalent to a restart of the movement with changed limits, it is also possible for the commanded limits to be exceeded when using these velocity profiles in combination with MC_SetOverride.

Effect of MC_SetOverride on coordinated movements with an axis group

Coordinated movements with an axis group (for example, MC_MoveLinearAbsolute) consider the overrides set with MC_SetOverride for each axis during movement planning. Conversely, MC_GroupSetOverride overwrites the overrides of each axis of the axis group.