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

InOut:

Scope

Name

Type

Initial

Comment

Inout

AxisGroup

AXIS_GROUP_REF_SM3

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, ClearMovements has 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 FALSE on 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 CommandAccepted or Done is TRUE.