第十一章 诊断 & 调试功能

24
Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 1 第第 第第 & 第第第第

Upload: jasmine-lancaster

Post on 03-Jan-2016

101 views

Category:

Documents


5 download

DESCRIPTION

第十一章 诊断 & 调试功能. 调试程序. 为缩短调试和执行时间 , Unity Pro 提供以下服务 : 程序动态仿真 在程序元素中插入断点 在单步模式下执行程序,包括 Step into,Step out 和 Step over 调用堆栈获得完整的程序路径 通过使用动态数据表或集成操作屏进行输入和输出. 动态仿真. 布尔和模拟变量直接在 程序编辑器中 ( 绿色 , 红色或黄色 ) 进行 仿真 变量窗口 在当前激活的编辑器窗口中显示变量. 显示框. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 1

第十一章诊断 & 调试功能

Page 2: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 2

调试程序

为缩短调试和执行时间 , Unity Pro 提供以下服务 :

程序动态仿真 在程序元素中插入断点 在单步模式下执行程序,包括 Step into , Step out 和 Step over

调用堆栈获得完整的程序路径 通过使用动态数据表或集成操作屏进行输入和输出

Page 3: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 3

动态仿真

布尔和模拟变量直接在程序编辑器中 ( 绿色 , 红色或黄色 ) 进行仿真

变量窗口在当前激活的编辑器窗口中显示变量

Page 4: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 4

显示框

监视窗口 (1) : 与一个变量关联,显示其数值 . 窗口颜色根据由数值与最小值和最大值比较的结果来决定 ( 黄色 , 蓝色或紫红色 )

工具提示 (2) : 当光标移动到模拟变量上时显示其数值

Page 5: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 5

动态数据表

修改变量数值 修改模拟量的显示格式 ( 二进制 , 十六进制 ,...)

强置布尔变量 把动态数据表与程序选定部分相关联 , 可以使用菜单 Services/

Initialize Animation Table.

Page 6: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 6

断点

停止任务执行,监测代码特性和变量数值

断点不能用于事件任务中

断点可以在所有程序中设定 ( 新断点或观察点的创建会删除以前的断点或观察点 )

插入 / 删除 断点

断点

Page 7: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 7

观察点

观察点可以在程序执行到观察点所在的程序行时监测变量的值,而不是在扫描周期的末尾

观察点不能设置在事件任务中

整个程序中只能设置一个观察点 ( 新观察点的创建就删除了前面的断点或观察点 )

插入 / 删除 观察点

观察点

Page 8: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 8

观察点 ( 续 )

动态数据表可以与观察点相同步 计数器给出刷新次数

仿真表同步

指示观察点同步

Page 9: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 9

单步执行 (LD/ST/IL/FBD)

单步执行是一步一步地执行程序元素 单步模式由预先设定的断点触发 单步模式下可以使用 3 个命令操作 : Step Over, Step Into 和 Step

Out

单步模式停止相应任务

单步执行命令

到达断点

Page 10: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 10

单步命令

Go 执行代码直到断点 ( 一个周期一个周期地 )

Step over 将当前元素当作一个整体执行 Step into 进入当前元素代码 Step out 跳出当前元素代码 Show Current Step 显示当前步

Go Step Over Step Into Step Out Show Current

Step

Page 11: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 11

单步执行 (SFC)

SFC 段的步执行中包括单步执行方式 单步模式首先要设定断点 使用 SFC Animation Panel 工具调试 SFC 段 (

图形 ) 并在单步模式下运行 Step Into 命令不能用 单步模式不能停止任务但能冻结相应的图形 SFC 仿真屏不能用于宏步调试

单步命令

Page 12: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 12

调用堆栈

从当前步显示所调用堆栈 . 在多个 Step Into 命令例子中 , 这个选项可以看到从第一个断点到当前步的整个路径

Call stack

Page 13: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 13

交叉引用

使用交叉引用工具可以知道变量在应用程序中的使用情况

Page 14: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 14

PLC 调试屏幕

查看程序任务的状态,执行与任务相关的命令 调整实时时钟 项目和 PLC 处理器的信息

Page 15: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 15

模块故障报告

通过以下方式报告故障: 在机架的配置屏幕中显示故障 ( 红色方框 ) 在故障模块或通道的相关屏幕中显示故障 ( 红色方框和故障列表 ) 使用特定语言对象 ( 故障位和状态字 )

Page 16: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 16

集成诊断选项

使用 Project Settings 窗口 , 选择 Application / System diagnostics ,以便在诊断观察器中显示错误信息

选择错误信息显示的语言 选择是否显示引起错误的原因 (Application level)

Page 17: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 17

诊断结构

集成诊断检测

记忆到诊断缓冲区

在诊断观测器中查看

Page 18: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 18

系统诊断

系统自动诊断 ( 无须编程 )

所有系统错误由 PLC 识别并保存

由 Unity Pro 软件发布错误信息

系统诊断缺省使用系统位和字的报警信息

Page 19: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 19

用于系统诊断的语言对象

高级诊断特性,由 Unity Pro 软件提供, PLC 的状态了然于心! 公共系统位、系统字,同时适用于 Quantum 和 Premium/Atrium平台 - %s0(冷启 ), %s1(热启 ), %s10(I/O 错 ), %s11( 看门狗溢出 ), %s18(算术运算溢出 ) , %s68(电池故障 ), %s120(DIO总线故障)…… - %sw0(主任务扫描周期 ), %sw17(浮点运算错误原因 ), %sw30(主任务执行时间 ),

%sw54~%sw58( 上次停机的原因和日期 ), %sw90(每个扫描周期处理的 TCP/IP请求的数量 )

%sw125( 最新检测到的错误代码) …… Quantum 平台特有的系统字(从此无需调用功能块!) - %sw60~%sw63(热备命令字、状态字、传输字 ) - %sw180~%sw339(本地机架及远程机架上每个模块的运行状态) - %sw341~%sw404( 第一路 DIO总线每个站每个模块的运行状态) - ……

Premium/Atrium 平台特有的系统字 - %sw128~%sw143( 故障的 fipio连接点 ), - %sw160~%sw167(8 个 Premium 机架上每个模块的运行状态) - ……

Page 20: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 20

过程诊断

过程诊断使用诊断 EFB / DFB 直接集成 SFC 诊断 步时间错误 转换条件错误

Diagnostic EFB (Premium 和 Quantum 平台 ) D_ACT : 扩展的锁定和动作诊断 D_DYN : 扩展的动态诊断 D_GRP : 扩展的信号组监视 D_LOCK : 扩展的锁定诊断,带反射输入 D_PRE : 扩展的对过程需求的监控 D_REA : 扩展的反射诊断

Page 21: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 21

过程诊断 ( 续 )

Diagnostic DFB ( 只用于 Premium 平台 )

ALRM_DIA : 与诊断缓冲区的接口 A2SI_DIA : 监控 AS-i V2 总线 ASI_DIA : 监控 AS-i 总线 EV_DIA : 事件监控 MV_DIA : 运动监控 NEPO_DIA : 运转部分的命令和诊断 TEPO_DIA : 运转部分的命令和诊断

用户诊断 DFB 可以创建自己的具有诊断功能的 DFB

Page 22: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 22

诊断观察器

(1) 错误信息列表 ( 列可以配置 ) 检测到故障的系统位或诊断 DFB 类型 错误信息 与故障相关的变量名 故障出现 /消失的日期和时间 故障确认日期和时间

(2) 选定信息的辅助信息 双击消息行显示故障程序

1

2

Page 23: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 23

实 验

Page 24: 第十一章 诊断 & 调试功能

Unity training course V2.0 - module 3.E : Diagnostic & Debug functions 24

故障案例诊断

%SW58 -- 770%SW124 -- 0%SW125 -- -8528%SW126 -- 4%SW127 -- 250%SW128 -- 3072  %S15 -- 0 %S18 -- 1 %S20 -- 0 %S78 -- 0 %SW17 -- 5