Skip to main content

Behavior of MC_MoveSuperImposed and MC_HaltSuperImposed

If MC_MoveSuperImposed or MC_HaltSuperImposed is active and the underlying movement is aborted, then MC_MoveSuperImposed / MC_HaltSuperImposed is also aborted.

If the underlying movement is not aborted, but rather another movement is commanded with the Buffered mode or one of the modes of the blending buffer mode, then the behavior is as follows: MC_MoveSuperimposed / MC_HaltSuperImposed is not aborted when the blending begins or the new movement is active. Instead, MC_MoveSuperimposed / MC_HaltSuperImposed is continued in the background until it is done.

As of CODESYS SoftMotion version 4.17.0.0

When an MC_MoveAbsolute configured with a buffered mode or a blending mode is commanded, the resulting end position is the sum of the position configured at MC_MoveAbsolute and the distance configured at MC_MoveSuperImposed / MC_HaltSuperImposed. It is irrelevant whether or not MC_MoveSuperImposed / MC_HaltSuperImposed is still active. The SuperImposed distance is retained even after the SuperImposed movement has been completed. The SuperImposed distance is reset as soon as an aborting movement is commanded.

Before CODESYS SoftMotion version 4.17.0.0

If an MC_MoveAbsolute assigned with buffered mode or a blending mode is commanded while an MC_MoveSuperImposed / MC_HaltSuperImposed is active, then the resulting end position depends on the status of MC_MoveSuperImposed / MC_HaltSuperImposed at the time when the MC_MoveAbsolute is active. If MC_MoveSuperImposed / MC_HaltSuperImposed is still active at this time, then the resulting end position is the sum for the position of MC_MoveAbsolute and the distance of MC_MoveSuperImposed / MC_HaltSuperImposed. On the other hand, if MC_MoveSuperImposed / MC_HaltSuperImposed is no longer active at this time, then the resulting end position is the position of MC_MoveAbsolute without the distance of MC_MoveSuperImposed / MC_HaltSuperImposed. In a similar way, the resulting velocity of MC_MoveVelocity depends on the status of MC_MoveSuperImposed / MC_HaltSuperImposed when MC_MoveVelocity is active.

The curve below shows an MC_MoveSuperImposed (sup function block) parallel to three absolute movements with blending buffer mode BlendingHigh. The first and second movements are commanded with a velocity of 100 u/s with the ma0 and ma1 function blocks. The ma2 function block commands the third movement with a velocity of 120 u/s. The first target position is 10 u, the second is 25 u, and the third is 40 u. The velocity of the superimposed movement is 20, and the distance is 10. The resulting position is 50 u: the position of the last absolute movement plus the distance of MC_MoveSuperimposed.

_sm_img_buffermode_movesuperimposed_chart.png