MC_MoveVelocity_SML (FB)

FUNCTION_BLOCK FINAL MC_MoveVelocity_SML

Commands a never ending controlled motion with a specified velocity.

Note

  • To stop the motion, the motion has to be interrupted by another motion command.

  • The output InVelocity is reset when the block is aborted by another block.

The following figure shows two examples of the combination of two instances of MC_MoveVelocity_SML:

  1. The left part of the timing diagram illustrates the case if the second FB is started after the first one has reached the commanded velocity.

  2. The right part of the timing diagram illustrates the case if the second FB is started before the first FB has reached the commanded velocity.

../_images/MC_MoveVelocity_Example.png
InOut:

Scope

Name

Type

Comment

Inout

Axis

Axis_REF_SML

Reference to the axis

Input

Execute

BOOL

Rising Edge: The motion is started

Velocity

LREAL

Value of the commanded velocity (may be negative) (not necessarily reached) [u/s]

Acceleration

LREAL

Value of the acceleration (always positive) (increasing energy of the motor) [u/s²]

Deceleration

LREAL

Value of the deceleration (always positive) (decreasing energy of the motor) [u/s²]

Output

InVelocity

BOOL

Commanded velocity reached

Busy

BOOL

The motion is not finished and new output values are to be expected

CommandAborted

BOOL

The motion was interrupted by a motion command acting on the same axis

Error

BOOL

Signals that an error has occured

ErrorID

SML_ERROR

Error number