Initialisation function UserInitialisations()

FUNCTION UserInitialisations : BOOL

VAR_INPUT

  dummy : BOOL := FALSE; (* not_used *)

END_VAR

VAR

  AxIdx : UDINT;

  ChIdx : UDINT;

END_VAR

(* Register PLC at all axes interfaces *)

FOR AxIdx := 0 TO gNrAx - 1 DO

  (* Set plc_present_w at each axis *)

  gpAx[AxIdx]^.head.plc_present_w := TRUE;

  (* Register at all axis specific control units you want to handle by PLC *)

  (* Register at all control units to enable a drive *)

  gpAx[AxIdx]^.lr_mc_control.torque_permission.enable_w := TRUE;

  gpAx[AxIdx]^.lr_mc_control.release_feedhold.enable_w  := TRUE;

  gpAx[AxIdx]^.lr_mc_control.drive_on.enable_w          := TRUE;

END_FOR;

(* Register PLC at all channel interfaces *)

FOR ChIdx := 0 TO gNrCh - 1 DO

  (* Set plc_present_w at each channel *)

  gpCh[ChIdx]^.head.plc_present_w := TRUE;

  (* Register at all channel specific control units you want to handle by PLC *)

END_FOR;

UserInitialisations := TRUE;