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
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.
Flowchart for the transformations implementation