MC_TrackRotaryTable

This FB can be used to synchronize a kinematic system with a rotary table. This makes it possible to pick up or place workpieces synchronized from a moving rotary table. For this purpose, the FB calculates a dynamic Product Coordinate System (PCS) after the call. If a motion-guiding FB (e.g. MC_MoveLinearAbsolute ) is called in the same coordinate system, the FB synchronizes the movement with the moving PCS.

Note!

The AXIS_REF RotaryTable at the input of the function block must be configured so that a full rotation of the rotary table is displayed as 360Units = 360°.

Note!

Synchronization with a rotary table is only possible with Cartesian movement commands (e.g. MC_MoveLinearAbsolute, MC_MoveCircularAbsolute, ...). Single-axis commands or MC_MoveDirect movements cannot be combined with tracking..

 

 

 

MC_TrackRotaryTable

 

 

 

AXES_GROUP_KIN

-

AxesGroup

Done

-

BOOL

AXES_REF

-

RotaryTable

Busy

-

BOOL

BOOL

-

Execute

Active

-

BOOL

BOOL

-

Abort

CommandAborted

-

BOOL

ARRAY[1..12] OF LREAL

-

RotaryTableOrigin

Error

-

BOOL

ARRAY[1..12] OF LREAL

-

InitialObjectPosition

ErrorID

-

L_IE1P_Error

L_MC4P_CoordSystem

-

CoordSystem

InSync

-

BOOL

L_MC4P_CoordType

-

CoordType

DynPCSSet

-

BOOL

LREAL

-

ClutchDistance

LREAL

-

ClutchTime

LREAL

-

ClutchTimeAbort

BOOL

-

SetDynPCS

 

 

 

 

 

 

 

 

Input

Name

Data type

Information/possible settings

AxesGroup

AXES_GROUP_KIN

Axis group reference

RotaryTable

AXIS_REF

Axis reference

Execute

BOOL

FALSE ä TRUE

Start processing:

Monitor the movement of the rotary table cyclically and wait for the start of a movement in the CoordSystem coordinate system

Abort

BOOL

FALSE ä TRUE

The current processing is canceled and the axle group is disengaged. To disengage, the time specified at input ClutchTimeAbort input is used for disengagement.

RotaryTableOrigin

ARRAY [1..6] OF LREAL

Position and alignment of the Rotary Table coordinate system from the perspective of the WCS.

InitialObjectPosition

ARRAY [1..6] OF LREAL

Position and orientation of the dynamic PCS at the time Execute = FALSE ä TRUE

  • The position must be specified in the coordinate system of the Rotary Table in cylindrical coordinates. (see example: Position of the three coordinate systems in relation to each other )

CoordSystem

L_MC4P_CoordSystem

Select the PCS coordinate system to be used:

  • PCS_1 ... PCS_16: Product Coordinate System (1 ... 16)

CoordType

L_MC4P_CoordType

Type of PCS to be generated:

  • Cartesian: Cartesian coordinates

  • Cylindric: Cylindrical coordinates

ClutchDistance

LREAL

Coupling and decoupling distance in [units]

  • Distance covered by the master until the clutch is fully engaged and disengaged.

ClutchTime

LREAL

Coupling and decoupling time in [s]

Time until engagement and disengagement is complete.

ClutchTimeAbort

LREAL

Decoupling time in [s]

  • Decoupling time when tracking is aborted via the input Abort .

Note:

If no value is entered, i.e ClutchTimeAbort = 0, the value from ClutchTime is adopted.

SetDynPCS

BOOL

FALSE ä TRUE

Opposite to the Execute delayed setting of the PCS.

See section Delayed setting of the PCS

Outputs

Name

Data type

Value/meaning

Done

BOOL

TRUE

Processing successfully completed.

Busy

BOOL

TRUE

Execution in progress.

  • The dynamic PCS is calculated cyclically.

  • The FB is ready to synchronise a movement instructed by MC_Move... .

Active

BOOL

TRUE

The FB is currently being executed and superimposes a movement instructed by MC_Move... .

CommandAborted

BOOL

TRUE

The command was interrupted by another FB or the Abort input.

Error

BOOL

TRUE

An error has occurred. For details see ErrorID .

ErrorID

L_IE1P_Error

If Error = TRUE: Error number for the error that has occurred.

InSync

BOOL

TRUE

Kinematics move synchronously with the conveyor belt.

DynPCSSet

BOOL

TRUE

Dynamic PCS is set and can be used.