MC_GroupStop (FB)¶
FUNCTION_BLOCK FINAL MC_GroupStop
This function block commands a controlled motion stop and
transfers the axis group to the state GroupStopping.
It aborts any other motion command.
While the axis group is in state GroupStopping, no other FB can
perform any motion on the same axis group. After the axis group
has reached standstill, the Done output is set to TRUE immediately.
The axis group remains in the state GroupStopping as long as
Execute is still TRUE or the axes are not yet in standstill.
As soon as Done is set and Execute is FALSE, the axis group
goes to state GroupStandBy. The command can only be aborted by
MC_Power.
Bemerkung
The effective limits for deceleration and jerk are determined by the
inputs Deceleration, Jerk, AccFactor, and JerkFactor.
For cp and path invariant ptp movements, in order to avoid leaving
the path while stopping, the effective limits of the stopped movement
are taken into account, too. This means that the effective limits of
the stopped movement are used if they are higher than the effective
limits calculated from the inputs of this function block.
Bemerkung
In contrast to MC_GroupHalt the given dynamic limits are neither influenced by an override set using MC_GroupSetOverride nor by ancillary limits set using SMC_GroupSetAncillaryPathLimits and SMC_GroupSetAncillaryAxisLimits respectively.
For halting point-to-point movements: the velocity/acc-/deceleration/jerk of each axis are properties of each axis and not specified within this function block. See also inputs
AccFactorandJerkFactor.The FB SMC_GroupSaveContinueData can be used to save the current position, state and all the commanded movements in order to continue from the position where MC_GroupStop was commanded. Make sure to call SMC_GroupSaveContinueData in the same cycle and before MC_GroupStop.
- InOut:
Scope
Name
Type
Initial
Comment
Inout
AxisGroupReference to a group of axes
Input
ExecuteBOOLStart the action at rising edge
DecelerationLREALValue of the deceleration [u/s²]. Only used if a continuous-path movement is halted.
JerkLREALValue of the jerk [u/s³]. Only used if a continuous-path movement is halted.
AccFactorLREAL1
The maximum deceleration of each axis is multiplied by this factor, which must be in the range ]0, 1].
JerkFactorLREAL1
The maximum jerk of each axis is multiplied by this factor, which must be in the range ]0, 1].
Output
DoneBOOLStandstill has been reached
BusyBOOLThe FB is not finished
ActiveBOOLIndicates that the FB has control on the axis
CommandAbortedBOOLCommand is aborted by disabling MC-Power of one or more of the axes in the group. The state changes to
GroupDisabledCommandAcceptedBOOLCommand has been accepted by the axis group
ErrorBOOLSignals that an error has occurred within the function block
ErrorIDSMC_ERRORError identification
MovementIdSMC_Movement_IdThe unique identifier of the movement. Valid if
CommandAcceptedorDoneisTRUE.