记录器稀有事件

概述

有时必须检测每周仅发生一次或发生频率甚至更低的中断。为了更好地理解这种中断,建议记录在发生中断前应用程序刚好做了什么。

由于应用程序记录器将记录存储在环形缓冲区中并且可以发送多个记录器消息,因此在事件发生后会保留一个较短的时间周期。在这个时间周期之后,环形缓冲区中的记录消息便会被覆盖。

为了防止覆盖环形缓冲区,可以使用功能块 FB_ApplicationLoggerHandler 的方法 DisableLogger 禁用记录。

为了使用这个触发机制,必须在项目中检测相关的事件。这可以通过对项目添加类型为程序且循环验证项目状态的 POU 来实现。程序与所监视的项目并行运行。项目照常将记录器消息发送到应用程序记录器。在这个附加程序中,实现有 FB_ApplicationLoggerHandler 功能块的实例。一旦程序检测到事件,便会调用一次 FB_ApplicationLoggerHandler 功能块的方法 DisableLogger

如果还应另外记录事件发生后的时间周期,则必须使用(例如)TON 功能块延迟方法调用。