组态说明:
当CPU在其运行周期内识别到同步或异步错误(例如:DP从站或者PROFINET I/O设备的诊断报警,站故障等),将会调用相 应的组织块(OB),用户因此可以对该事件作出响应。n
下表列出了出现同步或异步错误时,必须下载到CPU中的OB块,从而CPU能调用它们,确保CPU不进入“停止”状态。n
OB 块号. | 说明 | 调用条件 | 错误分类 | 事件进入进调用 | 事件离开时调用 |
82 | 诊断报警 | 具有诊断功能的模块,使能了诊断报警,当检测到错误或错误消失时 (如:输入模板的短路故障). |
异步错误 | 是 | 是 |
83 | 插/拔 报警1) | 中央机架或扩展设备上的模块移走和插回时 (如:移走一个输入模板) | 异步错误 | 是 | 是 |
85 | 程序循环错误 | - 出现尚未加载到CPU中的报警OB块的调用事件 - 访问系统功能块 SFB 的背景数据块时出现错误 - 更新过程印象区时出现错误(模板不存在或失效) |
异步错误 | 组态指定 | 组态指定 |
86 | 模块机架错误 | DP 主站系统中的 DP 从站或 PROFINET IO 系统中的 IO 设备出现故障 | 异步错误 | 是 | 是 |
121 | 程序错误 | 发生程序错误时 (如:调用的块没有下载) | 同步错误 | 是 | 否 |
122 | IO 访问错误 | 访问不存在的信号模板 | 同步错误 | 是 | 否 |
1) 对于 S7-300 CPU (除了: CPU 318-2), 插入移除 PROFIBUS DP 从站上的模块并不会产生插/拔 报警 。取决于所用的 DP 从站,整个DP从站失效将导致调用 OB86 "Subrack failure子机架错误" , 执行标准诊断,从而调用 OB82 "Diagnostics alarm诊断报警" 。
在 S7-300 CPU中,插/拔报警仅当插/拔发生在PROFINET IO(如移走 IO 设备)上时发生。 n
如果这些组织块没有装载到CPU,则CPU将因无法调用这些块而进入“停止”状态。
警告:
当使用故障OB时,应当编程进行故障处理或者至少应当在出错时产生一条提示信息,以便安全和正确地操作设备。需要注意的是,此时CPU可能不再进入到“ STOP”状态,因此这些危险状态可能会被忽视。关于编程处理出错的OB的详细消息,可参阅STEP 7在线帮助,或者参考手册“System Software for S7-300/400 System and Standard Functions”——ID号1214574。
注意事项:
CPU的诊断缓冲区保留着CPU曾经调用过的组织块的信息。
更多详情请按照下列关键字参阅STEP 7的在线帮助:
- "Diagnostics > Measures in the program for error handling"
- "Calling reference data (LAD/FBD/STL, blocks ...) > Language description, block help, system attributes > Help on OBs"
- "Error OBs"
- "Settings for reporting system errors"
以下ID介绍了在CPU的S7程序中 需要调用哪个组织块来进行错误处理: 11499205。
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc334474.html