# Hybrid implementation from PLC and NC program

The configuration parameters are transferred in the NC code by #TRACK CS ON [ID=0 …] Whereas the PLC only defines the correction and passed it on.

## Programing Example

Slave

…

N200 X1305.92 Y0

N210 #TRACK CS ON [ID=0 OPTION=1 FILTER=0 WAIT KIN_BASE X=-1305.92]
N230 G92 X1305.92
N240 Z90

; robot on rotary axis positioned by jumps
; to prevent

; rotary table (X1) is rotated independently of robot
N250 X0 Y0 X1[INDP_ASYN POS=-90 G01 F500 G90]
N260 Z80
N270 X-60
N280 X60
N290 X0
N300 Y-60
N310 Y60
N320 Z90
…
N480 #WAIT INDP ALL

; robot to rotary table centre point by jumps
; to prevent

N490 G01 X0 Y0
N500 #TRACK CS OFF [FILTER=0 WAIT]

…

## Programing Example

PLC

PROGRAM DynCsPLC_Activate

VAR

pDynCs : POINTER TO MC_CONTROL_DYN_CS_UNIT;

END_VAR

(*Enable DynCS*)

pDynCs := ADR(gpCh[0]^.channel_mc_control.dyn_cs);

pDynCs[0]^.enable_w := TRUE;

IF pDynCs^.state_r.actual_state = UDINT#2 AND pDynCs^.command_semaphor_rw = FALSE

THEN

pDynCs^.command_w.rotation[2]:=
-pAx[6]^.lr_state.current_position_acs_r;

pDynCs^.command_semaphor_rw := TRUE;

END_IF;