In Kinetic Control, we added TCPC. Post processors must use a couple new codes in order to take advantage of TCPC. There are three new codes:

Note: TCPC can only be enabled and disabled while a tool length offset is called up. Enabling or disabling the tool length offset using G43/G49 while TCPC is enabled can result in undefined behavior.

Prior to Kinetic Control, continuous 5-axis machining operations had to be programmed relative to the center of rotation of the machine. Let’s say one of the machining operations begin at A45 B0 and the lead in move is positioned at X2, Y1.5, Z2 when A is 0 and B is 0. To be at the same point on your part when at A45, the physical X, Y and Z axes would need to at X2, Y.3536, Z1.7678. The posted code would generally look something like:

; Without TCPC, G54 offsets should all be set to 0
G53 G0 Z0      ; Retract to safe position
G53 X2.5 Y2.5 ; Position X and Y to safe position
G54
G43 H1
G0 A45 B0 ; Initial orientation
G0 X2 Y.3536  ; Initial X and Y axis move
G1 Z1.7678     ; Plunge to initial Z axis position
; ... Machining operation about center of rotation

Post processors that want to leverage TCPC code would need to be updated to output something similar to the following instead. Note that the G6.2 calls don’t need to do any conversion, since they are now relative to your G54 offset, which is automatically transformed by the rotations of the A and B axes. We still need to properly command the machine's physical axes in a specific order, though, in order to make the lead in move.

; With TCPC, G54 offsets don't have to be 0
G53 G0 Z0      ; Retract to safe position
G53 X2.5 Y2.5 ; Position X and Y to safe position
G54
G43 H1 ; Call up tool length offset, in this case tool 1
G0 A45 B0 ; Initial orientation
G6.2 X2 Y1.5 Z2 I1 J1 K0 P0                ; Initial X and Y axis move
G6.2 X2 Y1.5 Z2 I0 J0 K1 P1 F20.        ; Plunge to initial Z axis position
M428 ; Enable TCPC

; ... Machining operation relative to defined G54 offset

M429 ; Disable TCPC

While TCPC is enabled, A and B axis movements can be commanded as well as X, Y and Z movements.