首页 理论教育 使用CPU的模块信息进行诊断-西门子通网络组态编程与故障诊断

使用CPU的模块信息进行诊断-西门子通网络组态编程与故障诊断

时间:2026-01-26 理论教育 姚姚 版权反馈
【摘要】:使用诊断缓冲区可以对系统的错误进行分析,查找停机原因。图6-16 CPU的模块信息对话框诊断事件包括模块故障、过程写错误、CPU中的系统错误、CPU操作模式的切换、用户程序的错误,和用户用系统功能SFC 52定义的诊断事件。堆栈内容将提供哪个块的哪条指令使CPU停机的信息。

1.打开CPU模块信息对话框的方法

可以用下列3种方法打开CPU的模块信息对话框:

1)在SIMATIC管理器中,选中要检查的站,执行菜单命令“PLC”→“诊断/设置”→“模块信息”。

2)选中快速视图中的CPU后,点击“模块信息”按钮(见图6-10)。

3)双击诊断视图机架中CPU所在的行(见图6-13)。

2.诊断缓冲区

“诊断缓冲区”选项卡提供了最重要的故障和事件的诊断信息(见图6-16),显示发生的事件总览和选中的事件的详细信息,可以找到使CPU进入STOP模式的原因。

诊断缓冲区给出了发生的事件一览表,所有的诊断事件和有关的诊断信息都按照它们发生的先后次序存储在诊断缓冲区中。CPU进入STOP模式时,诊断缓冲区的内容仍然保留。使用诊断缓冲区可以对系统的错误进行分析,查找停机原因。甚至可以追溯到很久以前发生的各诊断事件的情况。

图示

图6-16 CPU的模块信息对话框

诊断事件包括模块故障、过程写错误、CPU中的系统错误、CPU操作模式的切换、用户程序的错误,和用户用系统功能SFC 52定义的诊断事件。

断开和接通4号从站的电源,打开模块信息对话框。图6-16的“事件”列表第二行的“分布式I/O:站故障”是4号从站出现故障(电源丢失)的信息,“事件”列表第一行的“分布式I/O:站返回”是故障消失的信息。

选中“事件”列表中某一行的事件,下面灰色背景的“关于事件的详细资料”窗口将显示所选事件的详细信息。图6-17是“站故障”事件的“关于事件的详细资料”的下半部分。

图示

图6-17 关于事件的详细资料

在诊断缓冲区中,编号为1、位于最上面的事件是最近发生的事件。选中因编程错误使CPU进入STOP模式的事件,点击“打开块”按钮,将在程序编辑器中打开与该错误有关的块,显示出错的程序段,光标出现在出错的地方。

选中诊断缓冲区中的某个事件,点击“事件帮助”按钮,将获得有关的帮助信息。

诊断缓冲区是一个环形缓冲区,最大条目数与模块的型号和模块的工作模式有关。

点击“设置”按钮,在出现的对话框中可以设置待读出的条目数,和显示哪些事件等。

3.CPU的模块信息对话框其他选项卡的功能

模块信息中的“常规”选项卡显示所选模块的标识数据,例如型号、版本、订货号、机架和插槽号等。

“存储器”选项卡给出了所选的CPU的工作存储器和装载存储器当前的使用情况,可以检查CPU的装载存储器是否有足够的空间来存储新的块。

“扫描循环时间”选项卡用于显示CPU的最小循环时间、最大循环时间和当前循环时间。(https://www.xing528.com)

“时间系统”选项卡显示当前日期、时间、运行的小时数以及时钟同步的信息。

“性能数据”选项卡给出了模块可以使用的I、Q、M、T、C、OB、SFB和SFC等信息。

“通信”选项卡给出了模块的传输速率、可以建立的连接个数和通信处理占扫描周期的百分比。

模块信息对话框各选项卡的上面显示了附加的信息(见图6-16),例如模块的在线路径、CPU的操作模式和状态(例如出错或OK)。

切换模块信息对话框的选项卡时,从模块中读取数据。但是显示某一选项卡时,其内容不再刷新。点击“更新”按钮,可以在不改变选项卡的情况下从模块读取新的数据。

4.在停机模式下诊断

如果CPU在处理用户程序时自动进入STOP模式,或下载程序后无法将CPU从STOP模式切换到RUN模式,可以在STOP模式建立与CPU的在线连接,打开模块信息对话框,根据诊断缓冲区中的信息判断停机的原因。

在OB1中输入下面两条语句,第一条语句超出了定时器编号的允许范围:

图示

下载后将仿真PLC切换到RUN模式时,PLCSIM的CPU视图对象上的红色SF LED亮,不能进入RUN。

在SIMATIC管理器中执行菜单命令“PLC”→“诊断/设置”→“模块信息”,打开CPU的模块信息对话框,打开“诊断缓冲区”选项卡(见图6-18)。

选中第2条信息“由编程错误引起的STOP模式(OB没有装载……)”,下面的窗口指出停机原因的详细信息:因为没有下载错误OB,程序在OB1中断。选中第3条信息,可以看到发生了定时器编号错误,需要调用OB121。点击对话框中的“打开块”按钮,将会打开出错的块OB1,光标在出错的语句所在的行。

图示

图6-18 诊断缓冲区

返回SIMATIC管理器,生成OB121(可以是一个空的块),下载后重新运行,可以进入RUN模式,但是SF灯仍然亮。

5.停机模式下堆栈的内容

“堆栈”选项卡只能在STOP模式或HOLD(保持)模式下调用,可以显示模块的B堆栈(块堆栈)、I堆栈(中断堆栈)、L堆栈(局部堆栈)以及嵌套深度堆栈。

选中模块信息对话框中的“堆栈”选项卡,通过诊断缓冲区和堆栈中的内容,可以判定用户程序执行过程中引起故障的原因。

例如由于编程错误或停机指令使CPU进入停机状态时,可以用“I堆栈”(中断堆栈)、“L堆栈”(局部堆栈)和“嵌套堆栈”按钮显示停机时这些堆栈中的内容。堆栈内容将提供哪个块的哪条指令使CPU停机的信息。B堆栈(块堆栈)列出了所有停机前已经被调用但是还没有完全处理的块。

中断堆栈包含中断时的数据或状态,例如累加器和寄存器的内容、打开的数据块及其大小、状态字的内容、优先级(嵌套层次)、被中断的块和中断后程序将继续处理的块。

对于每个在B堆栈中列出的块,都可以通过选择某个块并点击“L堆栈”按钮显示相应的局部数据。它包含中断时用户程序正在处理的块的局部数据。

嵌套堆栈是带左括号的逻辑操作“A(”等使用的存储区域。如果中断时没有处理括号操作,该按钮为灰色(不能操作)。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈