User Documentation
Table Of Contents
- Table of contents
- 1 Introduction
- 2 Safety instructions
- 3 System overview
- 4 Operating behavior
- 5 Software installation
- 6 Configuration
- 7 Program development
- 8 Licensing
- 9 Device Administration (DevAdmin)
- 10 Software units
- 11 OPC UA Server
- 12 Node-RED
- 13 LongtermDiagnosticMonitor
- 14 Data recorder
- 15 Diagnostics
- 16 Maintenance
- 17 Technical data
- 18 Directives and standards
- 19 Appendix: Tutorial - creating an IEC project
- 20 Appendix: Addressing in the Ethernet (basics)
- 21 Appendix: Tutorial FoE
- 22 Appendix: Tutorial - call C function from IEC
- Index

Appendix: Tutorial FoE
System manual
2696790000/02/04.2020
123
KSys_TraceUOS(ADR(msState));
miState:= 11;
END_IF
11: //Download file
dir:= IoEcat_FileDirection.download;
slavedir:= '';
masterdir:= CONCAT(msFileDir,msFileName);
state := K_IoApi.IoApi_EcatFileTransfer(devHdl:= mDevHandle,
direction:= dir,
slaveFileName:= slavedir,
masterFileName:= masterdir,
password:= pass,
errorCode:= err);
IF state = IoApi_State.IoEcatFoEResultSuccess AND err = 0 THEN
miState:= 20;
msState:= 'File downloaded succesful';
KSys_TraceUOS(ADR(msState));
ELSIF err <> 0 THEN
msState:= 'Error downloading File';
KSys_TraceUOS(ADR(msState));
miState:= 0;
END_IF
20: //Leave Bootstrap
state:= IoApi_EcatLeaveBootstrap(devHdl:= mDevHandle);
IoApi_EcatGetState(devHdl:= mDevHandle,pState:= SlaveState);
IF SlaveState = IoEcat_State.Operational THEN
msState:= 'Leaving Bootstrap succesful';
KSys_TraceUOS(ADR(msState));
miState:= 21;
END_IF
21: //Wait for error or device
IF UR20_FBC_EC.HasError THEN
miState:= 22;
END_IF
22: //Device OK
IoApi_EcatGetState(devHdl:= mDevHandle,pState:= SlaveState);
IF SlaveState = IoEcat_State.Operational AND NOT UR20_FBC_EC.HasError THEN
msState:= 'FW Update succesful';
KSys_TraceUOS(ADR(msState));
miState:= 0;
END_IF
ELSE
msState:= 'Wrong State';
KSys_TraceUOS(ADR(msState));
END_CASE