3. Example of an AC machine with cardanic table
Example
AC machine with workpiece table
Universal Kinematics (ID91) can also be used to map kinematic transformations which are not contained in the kinematics library.
The depicted AC machine with workpiece table shows the linear axes on the tool side and the rotary axes on the workpiece side (as rotators in the tool table). The axes are located in the sequence along the path from the workpiece to the machine origin and from there to
C, A, X, Y, Z
the tool tip. This is the axis sequence in the kinematic chain. However, it must be noted that the orientation vector must be multiplied by -1 for every axis that is located on the workpiece side. This is a possible configuration of the cardanic AC machine:
Configuration of an AC machine with workpiece table:
# Zero orientation of the tool
# Tool points in Z direction
kinematik[91].zero_orientation[0] 0
kinematik[91].zero_orientation[1] 0
kinematik[91].zero_orientation[2] 1
# Zero position of the tool
# Tool rests at point (12000, -3200, 500)
kinematik[91].zero_position[0] 12000
kinematik[91].zero_position[1] -3200
kinematik[91].zero_position[2] 500
# CA programming mode
kinematik[91].programming_mode 17
# Activate RTCP mode
kinematik[91].rtcp 1
# Define X axis (index 0)
kinematik[91].axis[0].type 1
kinematik[91].axis[0].orientation[0] 1
kinematik[91].axis[0].orientation[1] 0
kinematik[91].axis[0].orientation[2] 0
#…
# Define Y axis (index 1)
kinematik[91].axis[1].type 1
kinematik[91].axis[0].orientation[0] 0
kinematik[91].axis[1].orientation[1] 1
kinematik[91].axis[1].orientation[2] 0
#…
# Define Z axis (index 2)
kinematik[91].axis[2].type 1
kinematik[91].axis[0].orientation[0] 0
kinematik[91].axis[2].orientation[1] 0
kinematik[91].axis[2].orientation[2] 1
#…
# define C axis (index 3)
kinematik[91].axis[3].type 2
kinematik[91].axis[0].orientation[0] 0
kinematik[91].axis[3].orientation[1] 0
kinematik[91].axis[3].orientation[2] -1 # inverted
#…
# Define A axis (index 4) cardanic angle 45 degrees
kinematik[91].axis[4].type 2
kinematik[91].axis[4].orientation[0] -1 # inverted
kinematik[91].axis[4].orientation[1] 0
kinematik[91].axis[4].orientation[2] -1 # inverted
#…
# Sequence in kin. chain: CAXYZ
kinematik[91].chain[0] 3 # C axis
kinematik[91].chain[1] 4 # A axis
kinematik[91].chain[2] 0 # X axis
kinematik[91].chain[3] 1 # Y axis
kinematik[91].chain[4] 2 # Z axis