MC_Halt (FB)

FUNCTION_BLOCK MC_Halt

This function block commands a controlled motion stop.

../../../../../../_images/plcopen.png

The axis is moved to the state “DiscreteMotion”, until the velocity is zero. With the Done output set, the state is transferred to “STANDSTILL”.

Note

MC_Halt can be aborted by another command.

  • MC_Halt is used to stop the axis under normal operation conditions. In non-buffered mode it is possible to set another motion command during deceleration of the axis, which will abort the MC_Halt and will be executed immediately.

  • If this command is active the next command can be issued. E.g. a driverless vehicle detects an obstacle and needs to stop. MC_Halt is issued. Before the standstill is reached the obstacle is removed and the motion can be continued by setting another motion command, so the vehicle does not stop.

Example

Behavior of MC_Halt in combination with MC_MoveVelocity

  1. A rotating axis is ramped down with Function Block MC_Halt.

  2. Another motion command overrides the MC_Halt command. MC_Halt allows this, in contrast to MC_Stop. The axis can accelerate again without reaching standstill.

../../../../../../_images/MC_Halt_Ex.png
InOut:

Scope

Name

Type

Comment

Input

Execute

BOOL

Starts the function block at rising edge

Deceleration

LREAL

[u/s°°2] Value of the deceleration (decreasing energy of the motor). Range: >0. If value = 0, Deceleration will be equal to parameter paraMaxDecelerationAppl.If value > 0 and <= 1,Deceleration will be limited to 1.

Jerk

LREAL

[u/s°°3] Value of the jerk. Range: >=-1.

Use jerk= 0 to disable jerk interpolation. This will result in a constant deceleration during the stop.
Use jerk=-1 for automatic jerk calculation. This will create a triangle-shaped deceleration

BufferMode

MC_BufferMode

Not supported, default mcABORTING used

Output

Done

BOOL

Shows the status of the function block. Done = TRUE if the execution is finished

Busy

BOOL

The function block is not finished

Active

BOOL

Indicates that the function block has control on the axis

CommandAborted

BOOL

Command is aborted by another command from other PLCopen function block

Error

BOOL

Signals that error has occurred within function block

ErrorID

ERROR_ID

Error identification. For error details refer to Enumeration ERROR_ID

Inout

Axis

Axis_Ref

Reference to axis