+ All Categories
Home > Documents > 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... ·...

故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... ·...

Date post: 08-Aug-2020
Category:
Upload: others
View: 12 times
Download: 0 times
Share this document with a friend
44
ST-SERV2 故障诊断 1 SITRAIN 自动化和工业解决方案培训 Date: 14.02.2008 File: SERV2_05E.1 SIMATIC ® S7 Siemens AG 2008. 保留所有权利 SITRAIN 自动化和工业解决方案培训 故障诊断 目录 页码 目标………............................................................................................................................................. 3 错误类别…………………....................................................................................................................... 4 STEP 7 – 调试工具,总览....................................................................................................................... 5 系统诊断 概述..................................................................................................................................... 6 显示CPU消息 ……................................................................................................................................ 7 调用“Module Information“工具....................................................................................................................8 模块信息选项卡:“Diagnostic Buffer“............................................................................................................9 解释诊断缓冲区中的错误消息....................................................................................................................10 打开包含错误的块......................................................................................................................................11 使用I堆栈、B堆栈、L堆栈进行诊断..........................................................................................................12 B 堆栈的内容........................................................................................................................................... 13 I 堆栈的内容............................................................................................................................................ 14 L 堆栈的内容......................................................................................................................................... 15 显示硬件诊断............................................................................................................................................16 练习1: 复制故障程序及准备故障排除........................................................................................................17 练习2: STOP 故障诊断..............................................................................................................................18 调用“Monitor/Modify Variables“工具........................................................................................................ 19 监视/修改变量建立触发点............................................................................................................... 20 打开变量表并建立与CPU的连接...............................................................................................................21 使用“Monitor“(块状态)测试(调试)...........................................................................................................22 “Blocks Debug -> Monitor“显示的信息......................................................................................................23 显示参考数据.......................................................................................................................................... 24
Transcript
Page 1: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 1 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.1

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

故障诊断

目录 页码

目标………............................................................................................................................................. 3错误类别…………………....................................................................................................................... 4STEP 7 – 调试工具,总览....................................................................................................................... 5系统诊断 – 概述..................................................................................................................................... 6显示CPU消息 ……................................................................................................................................ 7调用“Module Information“工具....................................................................................................................8模块信息选项卡:“Diagnostic Buffer“............................................................................................................9解释诊断缓冲区中的错误消息....................................................................................................................10打开包含错误的块......................................................................................................................................11使用I堆栈、B堆栈、L堆栈进行诊断..........................................................................................................12B 堆栈的内容........................................................................................................................................... 13I 堆栈的内容............................................................................................................................................ 14L 堆栈的内容......................................................................................................................................... 15显示硬件诊断............................................................................................................................................16练习1: 复制故障程序及准备故障排除........................................................................................................17练习2: STOP 故障诊断..............................................................................................................................18调用“Monitor/Modify Variables“工具........................................................................................................ 19为“监视/修改变量“建立触发点............................................................................................................... 20打开变量表并建立与CPU的连接...............................................................................................................21使用“Monitor“(块状态)测试(调试)块...........................................................................................................22“Blocks Debug -> Monitor“显示的信息......................................................................................................23显示参考数据.......................................................................................................................................... 24

Page 2: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 2 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.2

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

故障诊断

目录 页码

显示程序结构.............................................................................................................................................25显示交叉参考表…………....................................................................................................................... 26过滤交叉参考......................................................................................................................................... 27使用交叉参考进行块修改..........................................................................................................................28跳转到位置........... ................................................................................................................................ 29在参考数据中“查找“.................................................................................................................................. 30I、Q、M、T、C分配表.............................................................................................................................31未使用的符号/无符号的地址......................................................................................................................32块的比较(1)...........................................................................................................................................33块的比较(2)..................................................................…................................................................. 34强制“变量“............................................................................................................................................. 35练习3: 测试电机点动............................................................................................................................. 36练习4: 测试数据显示............................................................................................................................ 37练习5: 返回被拒零件................................................................................................................................38如需了解更多信息.....................................................................................................................................39选择过程和测试操作模式..........................................................................................................................40块监视的触发条件(1)........................................................…................................................................. 41块监视的触发条件(2) ............................................................................................................................ 42使用断点测试程序执行(1)........................................................................................................................ 43使用断点测试程序执行(2).........................................................................................................................44

Page 3: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 3 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.3

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

目标

本章结束时,学员将 ...

... 能够区分发生的错误是“系统检测错误“还是“功能错误“

... 熟悉“显示 CPU 消息“功能

... 能够读取诊断缓冲区,解释并使用它来进行故障排除

... 能够读取并解释 I 堆栈、B 堆栈和 L 堆栈

... 能够读出硬件诊断

... 能够使用“Monitor/Modify Variables”测试功能

... 能够解释 LAD/STL/FBD 编辑器中“Monitor”测试功能的显示内容,

并用它们进行故障诊断

... 能够读取交叉参考数据,解释并使用它们进行故障排除

... 理解“Force”功能

Page 4: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 4 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.4

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

错误类别

系统检测错误

在 PLC 内记录、评估和指示错误

(通常:CPU STOP)· 模块故障

· 信号电缆短路

· 扫描时间过长

· 编程错误(访问不存在的块)

功能性错误

期望的功能根本没有执行或者执行不正确

· 过程错误(传感器/执行器,电缆损坏)

· 逻辑编程错误

(不是在创建和启动过程中检测到的)

监视功能 诊断在系统或机器运行阶段非常重要。通常当问题(干扰)导致系统停机,或者使系统

或机器功能不正常时,就需要进行诊断。

由于停机或功能故障所导致的成本往往很高,必须快速找到干扰的相关原因并排除。

错误类别 根据是否由PLC检测到,发生的错误可以分为两类:

• 一类是由PLC的操作系统检测到的错误,这通常会导致CPU进入停止状态。

• 另一类是功能性错误,即CPU正常处理程序,但是所需要的功能要么根本没

有执行,要么执行不正确。

搜索这类错误非常困难,因为通常很难确定这类错误的原因。

有两种功能性错误。

- 过程故障(例如接线错误)

由直接与过程控制相关的组件的功能故障所引起的故障,例如到

传感器/执行器的电缆,或者传感器/执行器自身出现的问题。

- 逻辑编程错误(例如重复赋值)

用户程序创建和启动期间没有检测出来的软件错误,出现频率极少。

Page 5: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 5 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.5

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

STEP7 – 调试工具, 总览

系统检测错误:

一般情况下:CPU 进入 STOP 状态

(例如访问一个不存在的数据块)

(信号模块的诊断中断)

调试工具:

模块信息

- I 堆栈

- B 堆栈

- L 堆栈

硬件中断

功能性故障:

一般情况下: CPU 处于 RUN 状态

(过程故障,例如断线)

(逻辑编程错误,例如重复赋值)

调试工具:

Enable Peripheral Outputs(修改外设输出)Monitor / Modify VariableMonitor Blocks (块状态)参考数据

- 交叉参考

- I/Q/M/T/C 分配表

- 程序结构

- 无符号的地址

- 未使用的符号

错误

不管错误的原因如何,您都可以使用:• 强制• 设置断点

使用测试功能…

有多种 STEP 7测试功能用于故障排除,这取决于发生的错误类型。

…CPU 进入 STOP 时

对于由系统检测到的错误,诊断缓冲区、I堆栈、B堆栈、L堆栈和硬件诊断等测试功

能都可以给出错误原因和中断位置的详细信息。通过编程错误OB(参见“组织块”一章),可以通过程序评估关于所发生错误的信息,并可以防止CPU切换到STOP状态

。CPU停止后再使用Monitor / Modify Variable 和Monitor Blocks等功能就没多大意义

了,因为在STOP状态下,CPU既不能读取也不能输出过程映像,而且还无法执行程

序。

…CPU 处于 RUN 时反之亦然,通常当CPU处于RUN状态时,使用像I堆栈、B堆栈或者L堆栈等测试功能

就没有多大意义:因为此时程序执行并未中断,系统并没有提供任何关于所发生错误

的信息。模块信息测试功能仅仅提供关于CPU运行模式的常规信息或过去所发生错

误的信息。功能错误可按如下方式诊断:

• 过程故障(例如接线错误)

- 输入端接线测试:Monitor Variable- 输出端接线测试:Enable Peripheral Outputs(仅在 CPU 处于 STOP 时)

• 逻辑编程错误(例如重复赋值)

- (除 Enable Peripheral Outputs 以外的所有列出的测试功能)可用于搜索逻

辑编程错误。

强制 对地址进行强制控制,而不管程序逻辑如何。

断点 以单步执行的方式来执行程序。

这两种测试功能大多数情况下都是在程序设计阶段使用。

Page 6: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 6 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.6

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

系统诊断—概述

CPU I/Q 模块CPU 诊断检查系统错误

程序诊断检查错误诊断中断

错误 OB 诊断缓冲区系统状态列表

CPU消息

可诊断的模板检查错误并产生一个诊断中断

系统诊断 所有与校正PLC组件功能性相关的监视功能都放在“系统诊断”中。

所有S7 CPU 都具有一个智能型的诊断系统。系统诊断进行的诊断数据采集,不需要

任何编程。该功能集成在 CPU 的操作系统中和其它具有诊断能力的模块内,是自动

进行的。

CPU 在诊断缓冲区中存储(临时)发生的错误,从而使维护人员可以快速进行有目

的的错误诊断:即使偶发错误,也能诊断。

系统响应 操作系统在检测到错误或者STOP 事件(例如运行模式从 RUN 变为 STOP )时,

执行下列动作:

• 在诊断缓冲区内输入一条带有日期和时间的消息,描述正在发生的错误的原因和

影响。诊断缓冲区是一个FIFO缓冲区,位于CPU模块内,用于存储错误事件。诊断

缓冲区的大小取决于CPU(例如 CPU 314 = 100条)。

在FIFO缓冲区结构中,最新输入的消息会覆盖最早的诊断缓冲区条目。此外,诊断

缓冲区不会因CPU存储器复位而被删除。

• 更新系统状态列表,该列表给出了有关模块系统状态的信息。

• 调用与此错误相关的错误OB。这样用户可以进行自己的错误处理。

CPU 消息 如果CPU 进入STOP 状态时要将STOP的原因发送到所有相关的显示设备(例如PG或OP),则必须在硬件组态的CPU属性“Diagnostics/Clock”下面激活功能

“Report Cause of STOP”

Page 7: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 7 页

SITRAIN自动化和工业解决方案培训

CPU信息 通过此功能,可以立即在编程设备或HMI设备上显示系统中偶发错误的错误信息。只要

连接的CPU 诊断检测到错误,就会在PG或OP 上弹出一个消息窗口。

还可以用 SFC52,WR_USMSG 来编程输出的用户信息。

模块 在窗口的上方,所有在SIMATIC® Manager 中通过菜单项PLC -> CPU Messages调用

的CPU 都在一个表中列出。该表分为4列:

1. 在第一列中,用图标表示连接是否被外部伙伴中断。

2. 在列“W” 中,激活/取消激活系统诊断和用户诊断信息。

3. 在列“A” 中,激活/取消激活中断信息。 “CPU Messages” 应用程序检查相关

模块是否支持诊断和中断功能。如果不支持,则输出一条消息。

4. 在列“Module” 中,输入模块的名称或S7程序的路径。

进入的消息 可以通过“View” 菜单选择下列选项:

• Place on Top: 只要一接收到信息,“CPU Messages”窗口就立即置顶显示,消息

显示的同时输入到消息归档中。

• Leave in the Background: 信息接受在后台进行。消息显示在窗口中,而窗口在后

台显示。消息归档并按照需要显示。

• Ignore Message: 既不显示消息,也不归档消息。

归档 在该设置中,可以选择归档大小 (40 至 2000 条信息) 或者清空归档。

Options -> Costomize -> Costomize -> CPU Messages

Date: 14.02.2008File: SERV2_05E.7

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

显示CPU消息

Page 8: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 8 页

SITRAIN自动化和工业解决方案培训

总览 “CPU 信息”使您可以进行系统诊断而无需执行任何编程,并且可以快速检测到错误、

定位错误并排除错误。

故障排除需要用到的信息由下面的功能提供:

PLC -> Diagnostic/Setting -> Module Information

可以从 SIMATIC® Manager 或其它工具(例如LAD/FBD/STL 编辑器)访问此功能。

模块信息 “Module Information” 功能直接从所连接的模块中读取最重要的数据。可以在各个选

项卡中找到附加信息:

General:其中包含了模块描述、硬件和固件版本

Diagnostic Buffer:按发生顺序列出发生的所有诊断事件。所有事件以纯文本形

式列出,按照事件发生的顺序显示

Memory:EPROM 装载存储区、RAM装载存储区和工作存储器的大小和使用情况

Scan Cycle Time:显示所选监视时间,最短、最长和当前周期时间

Time System:显示实时时钟和集成的运行时间计时器

Performance Data:显示集成的系统块和可用的组织块,以及地址区(I、Q、M

、T、C、L)

Communication:显示通信接口的性能数据,以及连接概况信息

Stacks:I堆栈、B堆栈和L堆栈内容的相关信息。为此,CPU必须在STOP状态,

或者已到达一个断点。

Date: 14.02.2008File: SERV2_05E.8

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

调用“Module Infomation”工具SIMATIC® Manager LAD/STL/FBD 编辑器

模块信息

Page 9: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 9 页

SITRAIN自动化和工业解决方案培训

Diagnostic Buffer 诊断缓冲区是CPU 内电池备份存储区域中的一个FIFO(先入先出)结构的缓冲区,

诊断缓冲区按事件发生顺序列出了所有诊断事件。诊断缓冲区不能通过存储区复位删

除。

所有事件可以在编程设备上以纯文本方式按照发生顺序进行显示。

Details on Event 选中一个事件时,会在“Details on Event”框中提供下列附加信息,例如:

• Event ID (事件 ID)和 Event no.(事件号)

• 块类型和块号

• 由具体事件决定的附加信息,例如导致事件发生的指令相关STL行地址(本例

中为模块地址80)

Help on Event 点击“ Help on Event”按钮时,打开列表中所选事件的帮助窗口。

( 本例中发生了编程错误,但是CPU 没有编程相关的错误 OB —OB121)

Open Block 点击“Open Block” 按钮时,可以在线(在CPU中)打开发生了出现中断的块(本示

例中为“FC18 ”)。

打开此工具 在SIMATIC Manager 或Program Editor中选择菜单选项

PLC -> Diagnostic/Setting ->Module Information -> Diagnostic Buffer选项卡打开诊

断缓冲区。

Date: 14.02.2008File: SERV2_05E.9

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

模块信息选项卡: “Diagnostic Buffer”

Page 10: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 10 页

SITRAIN自动化和工业解决方案培训

概述 最新的条目显示在列表顶部。时间可以表示哪些错误消息是一起发生的。 (如幻灯片中

的事件号 1 和 2)。

解释错误 在本例中,错误发生之前执行了暖启动 (事件号3 到 5)。重启之后错误发生,导致条目

1和2。事件号1:CPU进入STOP模式,因为没有在控制器中加载相关的错误OB(OB121)。

在“Details”窗口中显示处理级别,例如OB1(循环)以及导致错误发生的块和相关

指令地址(FC18,块地址80)。

事件号2:此处显示错误的实际原因(BCD转换错误)。在“Details”中可以看到在

Accu1中存储了无效的BCD码。同样还给出了错误发生时操作系统调用的错误OB(OB121)。

错误OB 下列错误OB用于执行错误处理:

• OB81:电源故障(后备电池故障)

• OB82:诊断中断(例如断线或模块接地故障)

• OB84:CPU硬件故障(MPI接口处信号电平不正确,仅针对S7-400)

• OB85:程序执行错误(更新过程映像时出错)

• OB86:分布式机架或DP从站故障

• OB87:通信错误(不正确的帧标识号)

• OB121:编程错误(例如BCD转换错误,被调用块不存在)

• OB122:访问错误(装载或传送到不存在的或损坏的I/O)

Date: 14.02.2008File: SERV2_05E.10

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

解释诊断缓冲区中的错误信息

Page 11: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 11 页

SITRAIN自动化和工业解决方案培训

打开块 所谓同步错误,是指由用户程序中的一个错误指令引起的,可以通过点击“打开块”

按钮打开被中断的块。

如果选择STL 语言,则鼠标会直接定位在引起中断的指令前面。在LAD/FBD 中则显

示引起中断的程序段。

在本例中,将从拨轮按钮IW2 读入的值由BCD码转换成整数。发生中断时,因为读

入的不是一个有效的BCD 码,所以无法将累加器1中的值从BCD码转换成整数。对

于这种情况,可以通过读取 I 堆栈找出无效的BCD 码(见后续页)。

结果 错误发生在FC 18 的Network 5 中。

Date: 14.02.2008File: SERV2_05E.11

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

打开包含错误的块

Page 12: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 12 页

SITRAIN自动化和工业解决方案培训

引言 对于同步错误(OB121和OB122),根据发生错误的具体环境用堆栈内容(I 堆栈、B 堆栈、 L 堆栈)来显示错误原因或位置的更多信息可能会有意义。例如,通过这种方

法可以确定在 CPU 进入 STOP 状态时,累加器中存储了哪些数值。

B 堆栈 在用户程序中,块通常会被调用多次。也就是说,导致中断发生的块和指令号的信息

并不会清楚地指示错误是在哪个调用链中发生的。

B 堆栈中包含所有在CPU 变为 STOP 状态时已经开始执行但未完成的块的列表。

I 堆栈 I 堆栈包含了在中断发生时寄存器的内容:

• 累加器和地址寄存器的内容

• 哪些数据块是打开

• 状态字的内容

• 程序执行级别 (例如OB1或OB10)• 被中断的块,指出程序段和指令号

• 下一个要执行的块

L 堆栈 L 堆栈包含了块的临时变量值,但是,您需要一些经验才能评估此数据,因为它是以

“十六进制”而不是“通俗易懂的语言”给出的。

Date: 14.02.2008File: SERV2_05E.12

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

使用 I 堆栈、B堆栈、L堆栈进行诊断

程序结构 包含错误的块

中断点

可以在 I 堆栈中看到,中断发生时累加器、寄存器、状态字等内容

可以在 L 堆栈中看到中断发生时临时变量的值

中断点

B 堆栈给出中断点之前执行的块的列表

Page 13: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 13 页

SITRAIN自动化和工业解决方案培训

堆栈 要显示堆栈信息,CPU必须由于下列原因进入 STOP 模式:

• 程序错误

• 程序要求转为STOP 状态(每个 SFC)• 到达断点

B堆栈 块堆栈(B 堆栈)以图形方式表示调用层级,即在中断点以前被调用块的顺序和嵌套

关系。

B 堆栈还包含了所有中断和错误OB以及打开的DB的列表。

在该表的最下边显示中断的块的程序。

从幻灯片中可以看出,中断发生在块 FC 10 中.多次调用一个参数可分配的块时,有关

程序执行被中断发生在哪个块调用之后的信息也可用于故障排除,因为中断有可能是

由于调用块时传递了错误的实参而引起。

打开块 要在线打开块,可以在 B 堆栈中选中该块,然后点击“Open Block”按钮。然后便

可进行编辑。光标位于引起中断的指令之后的行中;在 LAD 和 FBD 中,则标记出

程序执行被中断的程序段。

Date: 14.02.2008File: SERV2_05E.13

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

B 堆栈的内容

Page 14: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 14 页

SITRAIN自动化和工业解决方案培训

I 堆栈 中断堆栈(I 堆栈)通常指一个执行级别。必须先在 B 堆栈中选中所需的组织块,才

能打开 I 堆栈。

寄存器 中断发生时所有相关寄存器的内容都显示在 I 堆栈画面中:

• 累加器

可以在“Display format”列表中选择用哪种格式显示累加器内容。

• 地址寄存器

可以在“Display format”列表中选择用哪种格式显示地址寄存器内容。

• 状态字

显示状态字的位0 到8。各个位的缩写表示了对应位的含义。

中断点 “Point of Interruption”域给出了以下信息:

• 被中断的块,可以直接打开该块(然后光标直接位于故障指令的前面)。

• OB的优先级,被中断的执行级别。

• 打开的数据块,及其编号和大小。

错误示例 在本例中,可以看到在累加器1中存储了十六进制数0000 11C7,这不是一个有效的

BCD码,因此执行BCD到整数的转换(BTI指令)过程中,发生转换错误。

在切换拨轮按钮时发生错误(机械问题)。解决方法是在执行转换之前,用一个点动

按钮确认输入值。

Date: 14.02.2008File: SERV2_05E.14

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

I 堆栈的内容

Page 15: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 15 页

SITRAIN自动化和工业解决方案培训

L 堆栈 L 堆栈包括中断发生时未完成的块的临时变量当前值。

CPU 切换到 STOP 模式时尚未完成的块在块堆栈(B 堆栈)中列出。L堆栈窗口中显

示的局部数据针对B 堆栈中所选的块。

错误示例 在给出的示例中,临时变量#Setpoint 在 FC 18 块中被声明为整数。相应地,它在L 堆栈中占用两个字节。

在FC 18 块的声明表中,L 堆栈中变量的相关初始地址显示在列“Address”中。变

量#Setpoint 占用L 堆栈中的字节 0 和 1 ,其变量值为CAFEHex= -13570Dec。

应用示例 为了排除故障,在组织块的临时变量(启动信息)中存储了特定的附加信息。对于示

例中假设的错误,您可以通过错误 OB121 找到这些附加信息,这是一个BCD 转换错

误。可以在变量“OB121_SW_FLT” 中找到该信息:系统对每个编程错误输入一个

不同的标识。

Date: 14.02.2008File: SERV2_05E.15

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

L 堆栈的内容

Page 16: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 16 页

SITRAIN自动化和工业解决方案培训

诊断硬件 该功能打开可以在线访问的站,并提供与模块的状态或操作模式相关的信息。在看到

指示相关模块状态或CPU 操作模式的诊断符号时,还可以看到模块的诊断信息。双击

该符号,会弹出一个画面,提供更多信息。

在给出的示例中,模拟量输入模块(插槽7)触发了一个诊断中断。结果,CPU 进入

STOP 模式。已经相应地为两个模块分配了符号。双击 CPU后将看到诊断缓冲区。而

双击模拟量模块,将提供相关的诊断数据。在此示例中,模拟量模块的外部辅助电压

(电源)发生故障。

打开此工具 可以通过如下方式调用此功能:

• 在SIMATIC Manager中,

- 使用 PLC -> Diagnostic/Setting -> Hardware Diagnostics

- 在在线视图中,通过双击站的Hardware 图标

• 在 HWConfig 中,通过 在线打开站

自定义设置 如果在SIMATIC Manager 中选择了 Options -> Customize -> View菜单选项,并激活

(选中)了“Display Quick View when Diagnosing Hardware”复选框,将只显示一

列有故障的模块,而不是整个“Diagnosing Hardware”视图。

Date: 14.02.2008File: SERV2_05E.16

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

显示硬件诊断

双击

Page 17: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 17 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.17

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

练习1:复制故障程序及准备故障排除

任务 调试有故障的 S7 程序。它与当前 S7 程序所具有的功能完全一样。但是,该程序包

含了几个STOP 错误和逻辑错误,在下面的练习中您需要找到并更正这些错误。

操作 复制有故障的程序:(还可参见幻灯片中的操作)

1、创建 S7 程序“My_Program”副本,将其重命名为“Backup_Copy”。

2、从“SERV2_B”项目中,直接复制 S7 程序“Ch05a_Fault” 到自己项目内

SIMATIC 站的 CPU 上。

准备故障排除:

3、在现在分配给 CPU 的 S7 程序“Ch05a_Fault” 中,不存在任何系统数据。

用“HW Config”打开 SIMATIC 站,并通过“Save and Compile” 重新生

成系统数据。

4、在线删除 CPU 中的所有块

SIMATIC Manager -> 选择 CPU 的Blocks 文件夹 -> 切换到 Online 视图 -> 选择

所有块 -> Delete

5、执行 CPU 存储器复位

6、从 S7 程序“Ch05a_Fault” 中下载所有块(包括系统数据)到 CPU,然后执行

暖重启。(由于程序错误,CPU 进入/保持 STOP 状态)

Page 18: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 18 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.18

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

练习2:STOP故障排除

练习2:STOP 故障排除

操作 请注意,每次更正 STOP 错误后必须执行一次 CPU 暖启动。如果暖重启后,CPU 再次进入 STOP 状态,则说明仍然存在其它的STOP错误。

在错误更正时,回答与发生的错误相关的下列问题:

确定第一个 STOP 错误:

中断的块:.........................................................................................错误:................................................................................................更正:(旧指令 -> 新指令)

...........................................................................................................即使此处并不需要进行故障排除:

从 I 堆栈确定中断时通过 DB 寄存器1打开了哪个数据块:

通过DB 寄存器1打开的数据块:........................................................

确定第二个 STOP 错误:

中断的块:.........................................................................................错误:................................................................................................更正:(旧指令 -> 新指令)

...........................................................................................................即使此处并不需要进行故障排除:

从 B 堆栈确定在哪个块中调用的FC20,并传递的错误实参:

调用的块:........................................................................................

确定第三个 STOP 错误:

中断的块:.........................................................................................错误:................................................................................................更正:(旧指令 -> 新指令)

...........................................................................................................即使已经知道了解决方案:

通过 HW Config 打开 SIMATIC 站,检查正确的外设地址应该是什么。

注意事项 除了系统检测到的错误(STOP 错误)以外,程序还包括了逻辑错误(RUN 错误),因此排除 STOP 错误后,仍然不能实现正确的程序功能。在下一个练习中将排除功能性错误。

Page 19: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 19 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.19

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

调用“Monitor/Modify Variables”工具

应用领域 “变量地址表”(Variable Address Table,VAT)用定义的格式来查看(监视)和

更改(修改)CPU 存储区的地址值。从 SIMATIC Manager 或从 LAD/FBD/STL 编辑器中,启动“Monitor/Modify Variables”功能 。

变量表设计 将选择的变量输入变量表(VAT)。除了块的局部、临时变量以外,可以监视或修改

所有变量地址。

可以选择在 View 菜单中显示的变量表的列。各列含义如下:

• Address:变量的绝对地址

• Symbol:变量的符号名

• Symbol comment:所显示变量的注释

• Display format:每次鼠标点击时可以选择的数据格式(例如二进制或十进

制),使用该格式显示变量内容。

• Status value:以所选状态格式显示的变量值

• Modify value:要分配给变量的值

保存变量表 可以使用Table -> Save or Table -> Save as... 来保存变量表。

第一次保存变量表时,会打开 Save as…对话窗口。 Save as…窗口允许用户选择用

来保存变量表的块文件夹。此存储路径不会缺省指向用户当前可能已经打开的项目/程序。

为变量表起一个自己选择的名称。该名称作为符号名插入符号表中。

可以再次使用保存的变量表进行监视和修改,这样就不需要重新插入变量了。

注意事项 检查输入/输出接线时(与用户程序无关),也可以直接从HW Config 工具中调用

Monitor/Modify Variables 工具(VAT)(参见“硬件组态”一章)。

Page 20: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 20 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.20

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

为“监视/修改变量”建立触发点

PII

循环程序执行

PIQ

触发点“Beginning of Scan Cycle”

触发点“循环程序结束”

触发点“Transition to STOP”

设置触发器

监视/修改取决于触发位置

(每次监视/修改时)更新状态/修改值

触发点 中断堆栈(I 堆栈)通常指一个执行级别。必须先在 B 堆栈中选中所需的组织块,才

能打开 I 堆栈。

触发条件 中断发生时所有相关寄存器的内容都显示在 I 堆栈画面中:

• 累加器

可以在“Display format”列表中选择用哪种格式显示累加器内容。

• 地址寄存器

可以在“Display format”列表中选择用哪种格式显示地址寄存器内容。

• 状态字

显示状态字的位0 到8。各个位的缩写表示了对应位的含义。

应用领域 “Point of Interruption”域给出了以下信息:

• 被中断的块,可以直接打开该块(然后光标直接位于故障指令的前面)。

• OB的优先级,被中断的执行级别。

• 打开的数据块,及其编号和大小。

Page 21: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 21 页

SITRAIN自动化和工业解决方案培训

应用领域 为测试的目的可以双击再次打开存放在S7程序的块文件夹中的变量表。变量表中的变量是CPU程序的变量数据。

然而,在你激活“Monitor”和“Modify”功能之前, 与CPU的在线连接必须建立。

使用菜单命令PLC -> Connect To . . . 提供三种连接选择:组态的 CPU、直接连接 CPU和可访问的 CPU。有工具条中的图标连接组态的 CPU或直接连接CPU。

组态的CPU 如果变量表为存放在与硬件站有关的S7程序的块文件夹中的(项目显示连接到CPU),通过MPI地址到该站的连接建立。借助HW Config工具该站也连接到更高级的CPU。

如果变量表为存放在与硬件站无关的S7程序的块文件夹中的(项目显示直接连接到项目根部),通过使用SIMATIC管理器的在线显示中的程序文件夹的对话框,与硬件站无关的S7程序的MPI地址可以建立。

直接连接 CPU 这一菜单命令在变量表和直接连接到PG的CPU之间建立在线连接。 PG可以决定通过MPI电缆连接的PLC 。

可访问的CPU 这一菜单命令在变量表和所选的CPU之间建立在线连接。如果用户程序已经连接到一个CPU ,这一菜单命令可用于改变CPU 。

在对话框中选择要建立在线连接的CPU。 可以在组态的和可访问的CPU之间选择。

Date: 14.02.2008File: SERV2_05E.21

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

打开变量表并与 CPU 建立连接

组态的CPU ( VAT来自

硬件站“站点2”)站点2Station 1直接连接的

CPU站点1

PG

站点3

可访问的 CPU

Page 22: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 22 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.22

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

使用“Monitor”(块状态)测试(调试)块

应用领域 中断堆栈(I 堆栈)通常指一个执行级别。必须先在 B 堆栈中选中所需的组织块,才

能打开 I 堆栈。

监视 中断发生时所有相关寄存器的内容都显示在 I 堆栈画面中:

• 累加器

可以在“Display format”列表中选择用哪种格式显示累加器内容。

• 地址寄存器

可以在“Display format”列表中选择用哪种格式显示地址寄存器内容。

• 状态字

显示状态字的位0 到8。各个位的缩写表示了对应位的含义。

注意事项 “Point of Interruption”域给出了以下信息:

• 被中断的块,可以直接打开该块(然后光标直接位于故障指令的前面)。

• OB的优先级,被中断的执行级别。

• 打开的数据块,及其编号和大小。

Page 23: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 23 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.23

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

“Block Debug -> Monitor”显示的信息

LAD/STL/FBD Editor -> Options -> Customize ...或在运行状态中,右键单击

选择信息 中断堆栈(I 堆栈)通常指一个执行级别。必须先在 B 堆栈中选中所需的组织块,才

能打开 I 堆栈。

可显示的信息 中断发生时所有相关寄存器的内容都显示在 I 堆栈画面中:

• 累加器

可以在“Display format”列表中选择用哪种格式显示累加器内容。

• 地址寄存器

可以在“Display format”列表中选择用哪种格式显示地址寄存器内容。

• 状态字

显示状态字的位0 到8。各个位的缩写表示了对应位的含义。

显示格式 “Point of Interruption”域给出了以下信息:

• 被中断的块,可以直接打开该块(然后光标直接位于故障指令的前面)。

• OB的优先级,被中断的执行级别。

• 打开的数据块,及其编号和大小。

Page 24: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 24 页

SITRAIN自动化和工业解决方案培训

应用领域 对于排除逻辑错误,“Program Status”(程序状态)和 “Reference Data” (参考数据)是两个非常有力的工具。例如,在监视程序状态时发现一个内存位的条件不成立,可以利用参考数据工具来确定该位是在哪里被设置的。对地址的多次赋值是一种常见的错误,也就是该地址在程序的多处被赋值。利用参考数据工具可以很容易地发现这类错误。

参考数据 显示参考数据的方法是:在 SIMATIC Manager中 (离线打开了“Blocks”文件夹),选择菜单功能 Options -> Reference Data -> Display or ->Filter…. .

...生成 参考数据是以过滤后的形式显示的(不论是否在菜单Options中选择了Display或Filter选项)。过滤器定义的范围越窄,参考数据显示得越快。打开显示参考信息的窗口后,弹出了一个提示过滤数据的信息框,此时应该检查当前过滤器的设置。

Date: 14.02.2008File: SERV2_05E.24

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

显示参考数据

Page 25: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 25 页

SITRAIN自动化和工业解决方案培训

程序结构 程序结构(program structure)描述了在S7用户程序中块调用的层次。可单击相应图

标打开。

过滤 根据滤波器中设置的不同,程序路径可以两种格式来显示:Tree structure (树状结构

,见幻灯片)或 Parent/child structure (从属结构)。在这两种格式中都将显示调用

块和被调用块

符号 下列符号只在树状结构中显示:

< maximum : nnn > • 在树状结构的根部给出对局部数据存储器的最大需求量(以字节为单位)。

[ nnn ] • 在每个调用路径的最后一个块上给出了该路径上对局部数据存储器的最大需

求量。

Date: 14.02.2008File: SERV2_05E.25

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

显示程序结构

Page 26: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 26 页

SITRAIN自动化和工业解决方案培训

应用领域 在“Display Reference Data” 窗口中,选择菜单功能 View -> Cross References 或单击相关图表可以打开交叉参考表。

交叉参考表为在用户程序中已用地址的列表:

- inputs(输入)

- outputs(输出)

- bit memories(标志存储器)

- counters(计数器)

- timers(定时器)及其它(见下页)

单个地址的交叉参考 交叉参考表中包含以下各列:

列 内容 / 含义 --------------------------------------------------------------------------------------

• Address(地址) 操作数的绝对地址

• Symbol(符号) 地址的符号名

• Block(块) 使用该地址的块

• Type(访问类型) 只读 (R) 或只写 (W) 访问

• Language(语言) 生成块时的编程语言

• Details(细节) 对该地址访问的指令

结构 在交叉参考表中选中一地址后,可通过菜单功能View -> Cross Reference for Address 打开一个新的窗口,其中只包含被选中地址的交叉参考信息。

Date: 14.02.2008File: SERV2_05E.26

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

显示交叉参考表

Page 27: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 27 页

SITRAIN自动化和工业解决方案培训

过滤交叉参考 在选项框中选择要在表中列出的地址类型。

Filter area(过滤范围)用来选择要显示的地址范围。可以分几段输入。

例如,输入“10-50; 70; 100-130” 意味着地址 70和地址范围10到50以及100 到130的地址将被显示。

在标准设置中,所有访问类型都被显示。也可以选中选项 “Selected”选择访问类

型,例如在选项框中选W,则只显示写访问。

在选项框中可以确定交叉参考表中列的数目及内容。

如果希望下一次打开“Display Reference Data”窗口时, 仍能使用上述设定值,必

须单击“Save as standard”按钮,将当前设置保存为标准设置。

与此相对,单击“Default”按钮可恢复原来的标准设定。

Date: 14.02.2008File: SERV2_05E.27

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

过滤交叉参考

Page 28: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 28 页

SITRAIN自动化和工业解决方案培训

处理 在交叉参考表中的地址上双击,可以打开LAD/FBD/STL 编辑器并显示使用该地址的

块。光标停在访问该地址的程序段上。

注意事项 请注意参考数据是根据离线的块产生的,所以修改过的块总是要保存的。

Date: 14.02.2008File: SERV2_05E.28

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

使用交叉参考进行块修改

双击

Page 29: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 29 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.29

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

跳转到位置

右键单击

功能和应用领域 检测故障时,往往只需确定一个地址在程序的何处被使用过。此时,比交叉参考表更

有效的手段是使用“Go to Location”(定位)功能。在程序编辑器中,可以通过定

位功能显示一个特定地址的交叉参考信息。

处理 在程序编辑器中选择一个地址并单击右键,然后选择菜单功能 Go to Location。在“Go to Location”窗口中,显示出该地址在程序中的所有出现位置。在

“Details”列中,指明该地址是被扫描还是被赋值。在本例中,我们感兴趣的是输

出Q 8.2在程序中被置位和复位的地点。选择了相应的行后,单击“Go To”按钮可

以跳到程序中的该位置上。 选择“Starting Point”按钮,可以回到起点。

访问类型 缺省状态下,对该地址的所有访问都被显示。选择“Selected”按钮,可以只显示写

访问(赋值,置位,复位)。

如果选中“Overlapping access to memory areas”功能,对该地址用字形式的访问

也被显示出来。

Page 30: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 30 页

SITRAIN自动化和工业解决方案培训

查找 显示参考数据时,可以根据一个字符串查找相关的参考数据。下列窗口中都支持该功

能:

• Cross References • Assignment• Unused Symbols• Addresses without Symbols.

注意 该查找功能为纯文本式搜索,所以输入的字符串必须十分准确——要包括每一个逗点

,短划线和空格。

附加设置为:

• 搜索address(地址), symbol(符号), block(块) 或 language(语言)

• 待搜索的字符串为whole word(完整的字)还是字的一部分

• 是否区分大/小写字母

• 搜索范围和方向

Date: 14.02.2008File: SERV2_05E.30

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

在参考数据中“查找”

Page 31: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 31 页

SITRAIN自动化和工业解决方案培训

I/Q/M/T/C 分配表 选择菜单功能View ->Assignment -> Inputs, Outputs and Bit Memory 或单击相关图

标可以打开 I/Q/M 分配表(assignment)。分配表中概括了在过程映像输入区(I)、输出区(Q)和标志存储区(M)的各字节

中位的使用情况。

每一行包含一个字节,并根据使用情况对其中的8个位分别予以标定。还可以看出是

否是以字节、字或双字的形式进行的访问。

I/Q/M分配表中标识符的意义:

• - 地址未被访问,可以自由使用

• o 以位形式的访问

• x 以字节、字或双字形式的访问

选择菜单功能View -> Assignment -> Timers and Counter 或单击相关图标可打开T/C分配表。

分配表中概括了定时器和计数器的使用情况。

每行显示10个定时器或计数器。

过滤 利用“Filter”功能,可以选择要显示的存储区域及地址范围。其用法与交叉参考表

中的滤波器相同。

Date: 14.02.2008File: SERV2_05E.31

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

I、Q、M、T、C 分配表

Page 32: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 32 页

SITRAIN自动化和工业解决方案培训

未使用的符号 选择菜单功能 View -> Unused Symbols 或单击相关图标,将显示一个地址表。它们

是在符号表中定义过但未在用户程序中使用的地址。

无符号的地址 选择菜单功能View -> Addresses without Symbols 或单击相关图标,将显示一个地

址表。它们是曾在用户程序中使用但未在符号表中定义过的地址。

过滤 利用过滤器功能可以选择要显示的未用符号的详细信息。

Date: 14.02.2008File: SERV2_05E.32

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

未使用的符号 / 无符号的地址

Page 33: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 33 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.33

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

块的比较 (1)

见下页

引言 块的比较功能可以用来比较离线和在线的块或者硬盘上的两个用户程序的块。

例如,可以利用该功能来确定在离线编程并下装后,后来在CPU中是否对程序

做过修改及在哪些段上程序不同。

操作步骤 • 用鼠标右键选择S7程序中的块文件夹。

• 选择菜单Compare Blocks。• 选择比较对象是在线/离线程序还是两个离线程序,然后用“OK”按钮确认。

• 在随后的画面中,列出了块的区别。

• 选择有区别的行然后单击“Details”按钮。

• 在“Compare Blocks - Details”窗口中,可以确定块被修改的时间和块的长

度是否被改变。

• 单击“Go To…”按钮后,有区别的块将分别在两个窗口中打开,并显示第

一个不同之处。

注意事项 注意:只能在离线窗口修改程序。

Page 34: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 34 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.34

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

块的比较 (2)

差异 单击“Go To…” 按钮后(见上页),编辑器中将并列打开两个窗口中,并显示有

区别的块中第一个不同之处。

示例 在上例中, M8.5 用于离线块中而M8.6用于在线块中,作为I16.5边沿检测的辅助标

志位。这说明,当离线编辑的块被下装到CPU中后,又对离线或在线的块作过修改

通过读“Compare Blocks - Results”窗口中的时间标签,可以识别出哪一个块是最

后修改的。

Page 35: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 35 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.35

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

“强制”变量

功能和应用领域 中断堆栈(I 堆栈)通常指一个执行级别。必须先在 B 堆栈中选中所需的组织块,才

能打开 I 堆栈。

强制注意事项 中断发生时所有相关寄存器的内容都显示在 I 堆栈画面中:

• 累加器

可以在“Display format”列表中选择用哪种格式显示累加器内容。

• 地址寄存器

可以在“Display format”列表中选择用哪种格式显示地址寄存器内容。

• 状态字

显示状态字的位0 到8。各个位的缩写表示了对应位的含义。

选择“强制”功能 “Point of Interruption”域给出了以下信息:

• 被中断的块,可以直接打开该块(然后光标直接位于故障指令的前面)。

• OB的优先级,被中断的执行级别。

• 打开的数据块,及其编号和大小。

Page 36: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 36 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.36

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

练习3:测试电动机点动

任务 中断堆栈(I 堆栈)通常指一个执行级别。必须先在 B 堆栈中选中所需的组织块,才

能打开 I 堆栈。

功能测试1 中断发生时所有相关寄存器的内容都显示在 I 堆栈画面中:

• 累加器

可以在“Display format”列表中选择用哪种格式显示累加器内容。

• 地址寄存器

可以在“Display format”列表中选择用哪种格式显示地址寄存器内容。

• 状态字

显示状态字的位0 到8。各个位的缩写表示了对应位的含义。

操作 “Point of Interruption”域给出了以下信息:

• 被中断的块,可以直接打开该块(然后光标直接位于故障指令的前面)。

• OB的优先级,被中断的执行级别。

• 打开的数据块,及其编号和大小。

Page 37: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 37 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.37

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

练习4:测试数量显示

任务 中断堆栈(I 堆栈)通常指一个执行级别。必须先在 B 堆栈中选中所需的组织块,才

能打开 I 堆栈。

功能测试2 中断发生时所有相关寄存器的内容都显示在 I 堆栈画面中:

• 累加器

可以在“Display format”列表中选择用哪种格式显示累加器内容。

• 地址寄存器

可以在“Display format”列表中选择用哪种格式显示地址寄存器内容。

• 状态字

显示状态字的位0 到8。各个位的缩写表示了对应位的含义。

操作 “Point of Interruption”域给出了以下信息:

• 被中断的块,可以直接打开该块(然后光标直接位于故障指令的前面)。

• OB的优先级,被中断的执行级别。

• 打开的数据块,及其编号和大小。

Page 38: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 38 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.38

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

练习5:返回被拒零件

AI2AI1

-15V...+15V -15V...+15VAI1

AI2 AO1AO2

V

0 1 2 3

模拟器

重量:0 至 500kg

BCD 显示

重量显示此时 I 0.6 = “1“

被拒零件:重量大于 400kg

或者重量小于100kg

返回Bay 3“BAY3”(I8.7)

灯的闪烁频率为 2 Hz“L_Bay3“(Q8.3)

目前的功能 中断堆栈(I 堆栈)通常指一个执行级别。必须先在 B 堆栈中选中所需的组织块,才

能打开 I 堆栈。

任务 中断发生时所有相关寄存器的内容都显示在 I 堆栈画面中:

• 累加器

可以在“Display format”列表中选择用哪种格式显示累加器内容。

• 地址寄存器

可以在“Display format”列表中选择用哪种格式显示地址寄存器内容。

• 状态字

显示状态字的位0 到8。各个位的缩写表示了对应位的含义。

操作 “Point of Interruption”域给出了以下信息:

• 被中断的块,可以直接打开该块(然后光标直接位于故障指令的前面)。

• OB的优先级,被中断的执行级别。

• 打开的数据块,及其编号和大小。

Page 39: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 39 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.39

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

如需了解更多信息

注意事项 下面页面包含更多信息,可以丰富对主题的了解。

Page 40: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 40 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.40

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

选择过程操作和测试操作模式

测试模式 中断堆栈(I 堆栈)通常指一个执行级别。必须先在 B 堆栈中选中所需的组织块,才

能打开 I 堆栈。

设置 中断发生时所有相关寄存器的内容都显示在 I 堆栈画面中:

• 累加器

可以在“Display format”列表中选择用哪种格式显示累加器内容。

• 地址寄存器

可以在“Display format”列表中选择用哪种格式显示地址寄存器内容。

• 状态字

显示状态字的位0 到8。各个位的缩写表示了对应位的含义。

测试操作 “Point of Interruption”域给出了以下信息:

• 被中断的块,可以直接打开该块(然后光标直接位于故障指令的前面)。

• OB的优先级,被中断的执行级别。

• 打开的数据块,及其编号和大小。

过程操作 在本例中,可以看到在累加器1中存储了十六进制数0000 11C7,这不是一个有效的

BCD码,因此执行BCD到整数的转换(BTI指令)过程中,发生转换错误。

在切换拨轮按钮时发生错误(机械问题)。解决方法是在执行转换之前,用一个点动

按钮确认输入值。

Page 41: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 41 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.41

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

块监视的触发条件(1)

应用领域 中断堆栈(I 堆栈)通常指一个执行级别。必须先在 B 堆栈中选中所需的组织块,才

能打开 I 堆栈。

调用路径 中断发生时所有相关寄存器的内容都显示在 I 堆栈画面中:

• 累加器

可以在“Display format”列表中选择用哪种格式显示累加器内容。

• 地址寄存器

可以在“Display format”列表中选择用哪种格式显示地址寄存器内容。

• 状态字

显示状态字的位0 到8。各个位的缩写表示了对应位的含义。

打开数据块 “Point of Interruption”域给出了以下信息:

• 被中断的块,可以直接打开该块(然后光标直接位于故障指令的前面)。

• OB的优先级,被中断的执行级别。

• 打开的数据块,及其编号和大小。

注意事项 在本例中,可以看到在累加器1中存储了十六进制数0000 11C7,这不是一个有效的

BCD码,因此执行BCD到整数的转换(BTI指令)过程中,发生转换错误。

在切换拨轮按钮时发生错误(机械问题)。解决方法是在执行转换之前,用一个点动

按钮确认输入值。

Page 42: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 42 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.42

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

块监视的触发条件(2)

应用领域 中断堆栈(I 堆栈)通常指一个执行级别。必须先在 B 堆栈中选中所需的组织块,才

能打开 I 堆栈。

操作 中断发生时所有相关寄存器的内容都显示在 I 堆栈画面中:

• 累加器

可以在“Display format”列表中选择用哪种格式显示累加器内容。

• 地址寄存器

可以在“Display format”列表中选择用哪种格式显示地址寄存器内容。

• 状态字

显示状态字的位0 到8。各个位的缩写表示了对应位的含义。

注意事项 “Point of Interruption”域给出了以下信息:

• 被中断的块,可以直接打开该块(然后光标直接位于故障指令的前面)。

• OB的优先级,被中断的执行级别。

• 打开的数据块,及其编号和大小。

Page 43: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 43 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.43

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

使用断点测试程序执行(1)

断点 中断堆栈(I 堆栈)通常指一个执行级别。必须先在 B 堆栈中选中所需的组织块,才

能打开 I 堆栈。

注意事项 中断发生时所有相关寄存器的内容都显示在 I 堆栈画面中:

• 累加器

可以在“Display format”列表中选择用哪种格式显示累加器内容。

• 地址寄存器

可以在“Display format”列表中选择用哪种格式显示地址寄存器内容。

• 状态字

显示状态字的位0 到8。各个位的缩写表示了对应位的含义。

断点功能 “Point of Interruption”域给出了以下信息:

• 被中断的块,可以直接打开该块(然后光标直接位于故障指令的前面)。

• OB的优先级,被中断的执行级别。

• 打开的数据块,及其编号和大小。

注意 在本例中,可以看到在累加器1中存储了十六进制数0000 11C7,这不是一个有效的

BCD码,因此执行BCD到整数的转换(BTI指令)过程中,发生转换错误。

在切换拨轮按钮时发生错误(机械问题)。解决方法是在执行转换之前,用一个点动

按钮确认输入值。

Page 44: 故障诊断 - ftp.gongkong.comftp.gongkong.com/UploadFile/datum/2010-7/... · 反之亦然,通常当cpu处于run状态时,使用像i堆栈、b堆栈或者l堆栈等测试功能

ST-SERV2故障诊断第 44 页

SITRAIN自动化和工业解决方案培训

Date: 14.02.2008File: SERV2_05E.44

SIMATIC® S7Siemens AG 2008. 保留所有权利

SITRAIN自动化和工业解决方案培训

使用断点测试程序执行(2)

断点工具栏

寄存器 中断发生时所有相关寄存器的内容都显示在 I 堆栈画面中:

• 累加器

可以在“Display format”列表中选择用哪种格式显示累加器内容。

• 地址寄存器

可以在“Display format”列表中选择用哪种格式显示地址寄存器内容。

• 状态字

显示状态字的位0 到8。各个位的缩写表示了对应位的含义。

中断点 “Point of Interruption”域给出了以下信息:

• 被中断的块,可以直接打开该块(然后光标直接位于故障指令的前面)。

• OB的优先级,被中断的执行级别。

• 打开的数据块,及其编号和大小。

错误示例 在本例中,可以看到在累加器1中存储了十六进制数0000 11C7,这不是一个有效的

BCD码,因此执行BCD到整数的转换(BTI指令)过程中,发生转换错误。

在切换拨轮按钮时发生错误(机械问题)。解决方法是在执行转换之前,用一个点动

按钮确认输入值。

设置/删除断点断点激活(开关)

显示下一个断点

删除全部断点继续执行 下一语句

执行调用


Recommended