Skip to main content

CODESYS Safe Control – Diagnosis

Diagnosis values

CODESYS Safe Control Core provides the diagnosis values described here for the safe controller. These are intended to help find the cause of an error when setting up the execution environment, creating the application, and also in case of operational errors.

Diagnosis values are collected for the following areas:

IEC application task

  • IEC execution time [µ­s]

    The execution time of the safety application in the application task. Reading the inputs and writing the outputs is included.

  • IEC task jitter [µs]

    Jitter of the application task

Time provider

  • TP remote interval [µs]

    Time interval since the last received Time Provider package; calculated based on the timestamps in the packages.

  • TP sample interval [µs]

    Time interval since the last received Time Provider package; calculated using the local timestamps determined upon receipt of the package.

  • TP remote/sample diff [µs]

    Difference between the two time intervals which have elapsed on the Time Provider system and the local system since the last Time Provider package was received.

Configuration

The statistics of the diagnosis values are printed cyclically to the CODESYS logger. The default interval is configured to 60 seconds and can be changed via the following setting in the CODESYSSafeControl.cfg file:

[CmpSIL3SL]
;; Diagnosis statistic time in seconds
DiagnosisTime=60

After each output of the values, the min/max/avg statistics of the individual diagnosis values are reset.

The log backends, buffer sizes, and log format can be configured in the settings of the CODESYS component log. This also allows diagnosis logging to be completely disabled:

[CmpLog]
Logger.1.Name=SafeDiagLog
Logger.1.Enable=0