在STOP模式下,用户程序不被执行。因此,不存在因用户程序引发的诊断缓冲条目。
诊断缓冲区中的条目不包括:
临时性错误
统计信息或跟踪记录
关于数据或服务质量的信息
循环OB启动调用
循环发生的故障事件通常仅在次输入,在此之后,只有当引起错误的原因被识别后才输入。这确保溢出不会覆盖重要的条目。通过在线帮助,用户可以分析诊断缓冲条目,并找到可能的原因以及事件的补救措施。
诊断缓冲区的合理评估
诊断缓冲区的综合分析一般是通过诊断工具-如S7 系统诊断来完成。可以通过诊断缓冲区找到有问题的用户程序,但需要注意,仅凭此来推断控制器对用户程序的响应是不合适的。
错误被模块的操作系统识别并用纯文本显示。历史错误也被记录,因为该错误消息将被自动存储在诊断缓冲区中。
系统诊断的基本功能包括操作系统的所有错误事件以及用户程序的程序顺序中的一些特性,它们存储在诊断缓冲区中,并带有时间,错误编号及附加的相关信息。
此外,用户可以在诊断缓冲区中输入用户自定义的诊断事件(如关于用户程序的信息),或发送用户定义的诊断结果到已连接的站中(监测设备如PG,OP,TD)。
诊断缓冲区
诊断缓冲区能够
更快地识别故障源,因而提高系统的实用性。
评估STOP之前的近事件,并找到引起STOP的原因。
诊断缓冲区是一个带有单个诊断条目的循环缓冲区,这些诊断条目显示在事件发生序列中;个条目显示的是近发生的事件。如果缓冲区已满, 早发生的事件就会被新的条目所覆盖。根据不同的CPU,诊断缓冲区的大小或者固定,或者可以通过HW Config中通过参数进行设置。
下列要点适用于处于 STOP/RUN 工作模式的程序块和数据块:
程序块和数据块保持在主存储器中,而不是从装载存储器中重新加载。
数据块的内容没有任何改动。所有数据块都是保持的。
STOP/RUN 工作模式下的数据、标记、定时器和计数器
在 STOP/RUN 工作模式下,在 HW 组态的保持区域中输入的所有标记、 S7 定时器和 S7 计数器 (图 03) 都会保持。而其它所有标记、S7 定时器和 S7 计数器都会复位。
整机复位时的数据、标记、S7 定时器和 S7 计数器
整机复位时,所有标记、S7 定时器和 S7 计数器都会复位。对于数据块,将从装载存储区 (FLASH 存储卡或内部 FLASH) 中重新加载当前值。
如果在装载存储区 内,这些数据块中没有当前值,则会从装载存储区中加载初始值。