The method is used to calculate the inverse transformation of the configured additional components. The inputs i_stRefPositionTCP and i_stRefOrientationTCP represent the TCP reference position calculated by the trajectory generation.
In case the additional components affect the TCP position and/or orientation, the resulting values must be forwarded to the outputs q_stRefPositionTCP and q_stRefOrientationTCP.
For unaffected components the values from the inputs must be forwarded to their respective outputs.
Only the drive positions for the additional components must be written.
The configured main transformation writes the values for its own drives afterwards.
Example: For a Delta3 Robot that uses a 4th/5th axes module for rotation and tilting, the additional transformation only must write the axes “D” and “E” as the Delta3 transformation is calculated and written to A, B and C.
In case of the rotational and tilting module, the TCP position must be at the flange of the module. So, the additional component transformation must calculate a modified position for the output q_stRefPositionTCP that the main transformation uses these values for the calculation.
The outputs q_etDiag, q_etDiagExt and q_sMsg can be used to trigger an exception on the robot in case there is any exception detected by the user code implemented in this method. An exception can be triggered by setting the output q_etDiag to a value not equal to GD.ET_Diag.Ok. When a value unequal to zero for a not configured TCP component is calculated and transferred to the robot via the outputs q_stRefPositionTCP.lrX / lrY / lrZ or q_stRefOrientation.lrX / lrY / lrZ, the robot returns the diagnostic message ET_Diag.ExecutionAborted / ET_DiagExt.ComponentNotConfigured. When a value unequal to zero for a not configured axis is calculated and transferred to the robot via the output q_alrRefPositionAxis[…], the robot returns the diagnostic message ET_Diag.ExecutionAborted / ET_DiagExt.DriveNotConfigured.
The inverse transformation methods are called in the following sequence:
The additional component transformation is called. Its results are forwarded to the main transformation which is called afterwards.
The full sequence with all options starts with the additional transformation TCP call. Next, the additional component transformation is called, followed by the main transformation. The additional transformation axes method is called last.
Input |
Data type |
Description |
---|---|---|
i_stRefPositionTCP |
Reference position of the TCP |
|
i_stRefOrientationTCP |
Reference orientation of the TCP |
|
i_etOrientationConvention |
Orientation convention |
Output |
Data type |
Description |
---|---|---|
q_etDiag |
General library-independent statement on the diagnostic. A value not equal to ET_Diag.Ok corresponds to a diagnostic message. |
|
q_etDiagExt |
POU-specific output on the diagnostic. q_etDiag = ET_Diag.Ok -> Status message q_etDiag <> ET_Diag.Ok -> Diagnostic message |
|
q_sMsg |
STRING[80] |
Event-triggered message that gives additional information on the diagnostic state. |
q_stRefPositionTCP |
TCP reference position for the configured transformation. |
|
q_stRefOrientationTCP |
TCP reference orientation for the configured transformation. |
|
q_alrRefPositionAxis |
ARRAY [ET_RobotComponent.AxisA .. ET_RobotComponent.AxisAll +Gc_udiMaxNumberOfAxes] OF LREAL |
Reference position for the robot axes. |