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
.
