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 yet- Donewhen MC_GroupHalt is executed, the coordinate systems will remain- InUseeven after MC_GroupHalt is- Done.
- InOut:
- Scope - Name - Type - Initial - Comment - Inout - AxisGroup- Reference to a group of axes - Input - Execute- BOOL- Start the action at rising edge - Deceleration- LREAL- Value of the deceleration [u/s²]. Only used if a continuous-path movement is halted. - Jerk- LREAL- Value of the jerk [u/s³]. Only used if a continuous-path movement is halted. - AccFactor- LREAL- 1 - The maximum deceleration of each axis is multiplied by this factor, which must be in the range ]0, 1]. - JerkFactor- LREAL- 1 - The maximum jerk of each axis is multiplied by this factor, which must be in the range ]0, 1]. - TorqueFactor- LREAL- 1 - 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. - ClearMovements- BOOL- TRUE - 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 - Done- BOOL- Standstill has been reached - Busy- BOOL- The FB is not finished - Active- BOOL- Indicates that the FB has control on the axis - CommandAborted- BOOL- Command is aborted by another command - CommandAccepted- BOOL- The 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 on- Execute. While the output is- FALSE, keep calling the function block without a new rising edge of- Execute. The output is reset to- FALSEon a falling edge of- Execute.- Error- BOOL- Signals that an error has occurred within the function block - ErrorID- SMC_ERROR- Error identification - MovementId- SMC_Movement_Id- The unique identifier of the movement. Valid if - CommandAcceptedor- Doneis- TRUE.
