System parameters
The common ASDU address and the user functions of the central station are configured via the system parameters.
In our introduction we configure the following system parameters:
- The common ASDU address is set to 7. (asduAddr);
- The octet length of the cause of transfer is set to 2 (1 octet for COT + 1 octet for source address) (eCOTSize);
- The octet length of the common ASDU address is set to 2 (eAsduAddrSize);
- The octet length of the information object address is set to 3 (eObjAddrSize);
- Logging of debugging messages in the application log is activated (dbgMode). Changes in the device status and error messages of the link layer are logged;
Add the following PLC code to your PLC project:
IF init THEN
init := FALSE;
...
client.sysPara.asduAddr := 7;
client.sysPara.asduFmt.eCOTSize := eIEC870_COT_TwoOctets;(* cause of transfer octet size *)
client.sysPara.asduFmt.eAsduAddrSize := eIEC870_AsduAddr_TwoOctets;(* common ASDU address octet size *)
client.sysPara.asduFmt.eObjAddrSize := eIEC870_ObjAddr_ThreeOctets;(* information object address octet size *)
client.sysPara.dbgMode := IEC870_DEBUGMODE_DEVSTATE OR IEC870_DEBUGMODE_LINKERROR; (* IEC870_DEBUGMODE_ASDU OR IEC870_DEBUGMODE_LINKLAYER *)
...
ELSE
client( pInputs := ADR( inputs ),
cbInputs := SIZEOF( inputs ),
pOutputs := ADR( outputs ),
...
END_IF
The documentation for all system parameters can be found here: ST_IEC870_5_101SystemParams.