诊断 — 阈值
除了诊断值外, CODESYS Safe Control Core 提供一些警告,这些警告是在超过特定阈值时发出的。
超过阈值可能会导致系统错误,这既是后果,也是情况进一步恶化。
警告是通过以下方式发出的 CODESYS 记录器。
CODESYS Safe Control Core 超过阈值时提供以下警告:
应用程序的执行时间
当应用程序时间超过循环时间的百分比阈值时,将发出警告。百分比偏差(默认值:80%)可以更改为中的设置 CODESYSSafeControl.cfg 文件。
[CmpSIL3SL] ;; Application execution threshold ApplicationExecutionThreshold=80
以下警告由发出 CODESYS 记录器:
Threshold exceeded: Application execution time exceeded configured threshold! Threshold (<configured threshold> percent of application cycle time): <maximum allowed threshold> µs, Execution time: <execution time of the application> µs
应用程序的抖动
应用程序执行的抖动由以下公式计算 CODESYS Safe Control Core。如果与上次执行相比超过了 5% 的阈值,则会发出以下警告 CODESYS 记录器。
Threshold exceeded: Application jitter exceeded threshold! Threshold (5 percent of application cycle time): <maximum allowed jitter>, Jitter: <jitter of the application> µs
时间提供器中远程时间戳和本地时间戳的偏差
这个 CODESYS Safe Control 检查自上次收到时间提供程序包以来时间提供程序和本地所经过的两个时间间隔之间的差异。
如果超过了 5%,那么 CODESYS Safe Control 引发异常错误。为了尽早对传输 Time Provider 包时出现的问题做出反应,会发出以下警告 CODESYS 一旦超过阈值4%,就会立即记录日志:
Threshold exceeded: Time Provider interval deviation exceeded threshold! Deviation: <deviation> µs, Tolerance: <maximum allowed threshold> µs
执行沟通任务
执行通信任务是为了接收和处理服务并保证 CODESYS 之间的通信 CODESYS IDE 和 CODESYS Control。
如果此任务在应用程序周期的多个时间内未执行,则会发出以下警告 CODESYS 记录器:
Threshold exceeded: Communication task not executed in configured threshold! Threshold (Multiple of application cycle time): <maximum allowed threshold> µs, Deviation: <deviation> µs
执行外部计时器任务
外部计时器任务接收来自时间提供商的软件包,并做好准备,以便在时间提供程序中进行进一步处理 CODESYS Safe Control。
如果在应用程序的整个周期内未执行此任务,则会发出以下警告 CODESYS 记录器:
Threshold exceeded: External Timer task not executed for complete application cycle! Threshold : <maximum allowed threshold> µs, Deviation: <deviation> µs