Festo CPX-CEC Series Manual page 52

Modular valve terminal with integrated controller codesys
Table of Contents

Advertisement

CPX-CEC-...
Example of fieldbus master diagnosis via flag:
VAR
CanDriverName : STRING := 'CAN Driver';
CanDiagNode : DiagGetState;
CanDiag
AT%MB328 : GETBUSSTATE;
DiagAvailable : BOOL := FALSE;
END_VAR
(*Diagnose by flag*)
IF((CanDiag.EXTENDEDINFO[4] AND 16#04) = 16#04) THEN
DiagAvailable := TRUE;
END_IF
IF DiagAvailable = TRUE THEN
CanDiagNode.ENABLE := TRUE;
CanDiagNode.DRIVERNAME := ADR(CanDriverName);
CanDiagNode.DEVICENUMBER := pCanOpenMaster[0].wDrvNr;
CanDiagNode.BUSMEMBERID := 4;
CanDiagNode();
END_IF
Example of fieldbus master diagnosis via function block:
VAR
CanDiagNode : DiagGetState;
CanDriverName : STRING := 'CAN Driver';
CanDiagFB:DiagGetBusState;
DiagAvailable : BOOL := FALSE;
END_VAR
(*Diagnose by function block*)
CanDiagFB.DEVICENUMBER := pCanOpenMaster[0].wDrvNr; CanDiagFB.DRIVERNAME :=
ADR(CanDriverName); CanDiagFB.ENABLE := TRUE; CanDiagFB();
IF((CanDiagFB.EXTENDEDINFO[4] AND 16#04) = 16#04) THEN
DiagAvailable := TRUE;
END_IF
IF DiagAvailable = TRUE THEN
CanDiagNode.ENABLE := TRUE;
CanDiagNode.DRIVERNAME := ADR(CanDriverName);
CanDiagNode.DEVICENUMBER := pCanOpenMaster[0].wDrvNr;
CanDiagNode.BUSMEMBERID := 4;
CanDiagNode();
END_IF
50

Advertisement

Table of Contents
loading

This manual is also suitable for:

Cpx-cecCpx-cec-c1Cpx-cec-m1

Table of Contents