Output Description

Error

Data type: BOOL

Signals that an error has occurred within the Function Block.

ErrorID

Data type: WORD

Error identification PLCopen.

isCONFIGURATION

Data type: WORD

Active configuration.

nextCONFIGURATION

Data type: WORD

Configuration which will be reached by the next direct movement, if more than one solution for forward transformation is possible and isConfiguration differs from setConfiguration.

isActivePCS

Data type: BOOL

PCS (Product Coordinate System) is activated, group movements are executed related to PCS instead MCS and tracking (e.g. Conveyor tracking) is possible.

Structure of Actions within a Transformation

../_images/b241d079e2fc6c670a3313900005b4a6

The functionality is realized in different actions. All actions named “ACTION_GENEREC_xxx” don´t need to be changed for different transformations. The actions “ACTION_APP_xxx” need to be changed according to the transformation needed.A constant is needed to define the number of ACS axes. This has to be modified according to the transformation.

VAR CONSTANT
  (**NUMBER*)
\  N_ACS_AXES:WORD:=3;
END

The minimal and maximal positions are not mandatory. It depends on the transformation if these are necessary or if additional limits have to be considered.

Responsibilities of different actions

  • ACTION_APP_INDEX calculates the index and address for the used TRANSFORMATION-Block. The name of the actual block has to be used
    • TransformationIndex:=INDEXOF(Transformation_1_1).
    • Use the name of your own transformation block here.
  • ACTION_APP_CONF_GET_ACT: Take the actual positions of ACS axes and determine the mechanical configuration actually used, write the result to isCONFIGURATION.
  • ACTION_APP_FORWARD: Hold the forward transformation and calculates the actual position by using the actual positions from ACS axes and creating X_FORWARD, Y_FORWARD and Z_FORWARD.
  • ACTION_APP_INVERSE: Holds the inverse transformation and calculates the positions POS1, POS2 and POS3 from the input in X_FORWARD, Y_FORWARD and Z_FORWARD. POS1, POS2 and POS3 are used as reference positions to the ACS axes or as destination positions to the ACS axes in case of a direct movement.
  • ACTION_GENERIC_ACTUAL: Not to be modified. Uses X_FORWARD, Y_FORWARD and Z_FORWARD and calculates the actual positions ACT_X_POSITION, ACT_Y_POSITION and ACT_Z_POSITION by involving the dynamic transformation, if activated. These position values are calculated in [u]. They have to be used at position input for the MCS axes, instead of an actual position directly received from the drive.
  • ACTION_GENERIC_CONF_CHANGE: Not to be modified.
  • ACTION_GENERIC_CONF_USE_ACT: Not to be modified
  • ACTION_GENERIC_FWD_DEST: Not to be modified.
  • ACTION_GENERIC_STATE: Not to be modified.
../_images/92145153c3eb05cd0a33139001571241

Flowchart for the transformations implementation