MC_GroupHalt (FB)¶
FUNCTION_BLOCK FINAL MC_GroupHalt
This function block commands a controlled motion stop.
It aborts all other motion function blocks, except MC_GroupStop.
The AxisGroup is moved to the state GroupMoving, until
transferred to GroupStandby.
Note
The effective limits for deceleration and jerk are determined by the
inputs Deceleration, Jerk, AccFactor, and JerkFactor.
These limits can be exceeded in order to stay on the commanded path.
Note
In contrast to MC_GroupStop the given dynamic limits are influenced by an override set using MC_GroupSetOverride and 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 AccFactor, and JerkFactor.
SMC_GroupSaveContinueData and MC_GroupContinue can be used to continue on the original path after a halt, if
ClearMovementsis set to FALSE. The first movement after an MC_GroupHalt overwrites the state of the axis group, so SMC_GroupSaveContinueData has to be called before any new movement is commanded.If
ClearMovementsis set to FALSE and there are any movements in a dynamic coordinate system (see MC_TrackConveyorBelt, MC_TrackRotaryTable, MC_SetDynCoordTransform, or SMC_SetDynCoordTransformEx) that are not yetDonewhen MC_GroupHalt is executed, the coordinate systems will remainInUseeven after MC_GroupHalt isDone.
- 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].
TorqueFactorLREAL1
The maximum torque of each axis is multiplied by this factor, which must be in the range ]0, 1]. A dynamic model must have been set using SMC_GroupSetDynamics for this factor to have an effect.
ClearMovementsBOOLTRUE
If set to TRUE, all movements commanded before MC_GroupHalt are cleared after the axis group reaches standstill. In order to be able to continue the previous movements from the halt position using SMC_GroupSaveContinueData and MC_GroupContinue,
ClearMovementshas to be set to FALSE.Output
DoneBOOLStandstill has been reached
BusyBOOLThe FB is not finished
ActiveBOOLIndicates that the FB has control on the axis
CommandAbortedBOOLCommand is aborted by another command
CommandAcceptedBOOLThe command has been accepted by the axis group. If the output becomes
TRUE, the function block instance can be used to command the next movement with a new rising edge onExecute. While the output isFALSE, keep calling the function block without a new rising edge ofExecute. The output is reset toFALSEon a falling edge ofExecute.ErrorBOOLSignals that an error has occurred within the function block
ErrorIDSMC_ERRORError identification
MovementIdSMC_Movement_IdThe unique identifier of the movement. Valid if
CommandAcceptedorDoneisTRUE.