MC_MoveAbsolute (FB)

FUNCTION_BLOCK MC_MoveAbsolute

This function block causes the axis to be moved to an absolute position and uses the values for Velocity, Deceleration, Acceleration and Jerk. If no further actions are pending, the execution ends with velocity 0. (See: standstill)

Example
Use of MC_MoveAbsolute
The following illustration shows two possibilities for combining two instances (First and Second) of the type MC_MoveAbsolute. In the left-hand part of the diagram the Second instance is called after the First instance.
If First has reached the specified position of 6000 and the input Velocity is 0, then the Done output will cause the Second instance to move the axis to the position 10000. In the right-hand part of the diagram, the execution is started by Second while First is still operating.
The motion caused by First is interrupted and aborted by the Test signal which is transmitted during the constant velocity phase of First. Second steers directly to position 10000, even though position 6000 has not yet been reached.
../../../_images/MoveAbsoluteExample.png
InOut:

Scope

Name

Type

Initial

Comment

Inout

Axis

AXIS_REF_SM3

Input

Execute

BOOL

TRUE: Starts execution.

Position

LREAL

Target position of the motion in technical units [u], can be negative or positive.

Velocity

LREAL

Maximum velocity in techincal units per second [u/s].

  • Is always positive.

  • Is not necessarily reached.

Acceleration

LREAL

Acceleration in [u/s²].

  • Is always positive.

  • Increasing motor energy

Deceleration

LREAL

Deceleration in [u/s²].

  • Is always positive.

  • Decreasing motor energy

Jerk

LREAL

Maximum magnitude of jerk in [u/s³]

Direction

MC_Direction

shortest

The direction is used for modulo axes to determine the modulo-period in which the target position is reached. For finite axes, the input is ignored.

BufferMode

MC_BUFFER_MODE

Defines the chronological sequence of the FB relative to the previous block. If the function block is Busy, then only BufferMode=Aborting is allowed.

Output

Done

BOOL

TRUE: End position has been reached.

Busy

BOOL

TRUE: Function block is in operation.

If no further actions are pending, the execution ends with velocity 0.

Active

BOOL

Indicates that the FB has control on the axis

CommandAborted

BOOL

TRUE: The execution is interrupted by an other function block.

Error

BOOL

TRUE: Error has occurred.

ErrorID

SMC_ERROR

Error identification