SMC_TrackAxis (FB)

FUNCTION_BLOCK SMC_TrackAxis

This function block tracks a master axis. The slave axis will try to follow the master as closely as possible while repecting the given maximum velocity, acceleration, deceleration, and jerk.

During execution, the axis is in state synchronized_motion. The function block will keep ownership of the axis until it is aborted by another movement. The ownership is kept even if the master is in standstill and the function block is in sync.

InOut:

Scope

Name

Type

Comment

Inout

Master

AXIS_REF_SM3

Slave

AXIS_REF_SM3

Input

bExecute

BOOL

Rising edge: Starts the execution of the function block.

Velocity

LREAL

Maximum velocity in technical units per second [u/s]. Must be positive. This input may change each call. Changes are taken into account continuously, not only on a rising edge of bExecute.

Acceleration

LREAL

Maximum acceleration in [u/s²]. Must be positive. This input may change each call. Changes are taken into account continuously, not only on a rising edge of bExecute.

Deceleration

LREAL

Maximum magnitude of deceleration in [u/s²]. Must be positive. This input may change each call. Changes are taken into account continuously, not only on a rising edge of bExecute.

Jerk

LREAL

Maxmimum magnitude of jerk in [u/s³]. Must be positive if the axis has a jerk limited velocity profile. This input may change each call. Changes are taken into account continuously, not only on a rising edge of bExecute.

Output

bBusy

BOOL

TRUE: Execution of the function block has not been finished.

bCommandAborted

BOOL

TRUE: Command has been aborted by another command.

bError

BOOL

TRUE: Error has occurred within the function block.

iErrorID

SMC_ERROR

Error identification

bInSync

BOOL

Whether the axis is in sync with the given set values.