编程有错误,CPU亮红灯,由于下载了OB121所以CPU没有STOP,机器可以正常运行,但是客户要求必须消去CPU上的红灯
缓冲区诊断信息如下:
Diagnostic buffer of module CPU 315-2 PN/DP
Order No./ Description Component Version
6ES7 315-2EH14-0AB0 Hardware 6
- - - Firmware V 3.2.10
Boot Loader Firmware expansion A 37.11.12
Rack: 0
Slot: 2
Serial number: S C-EOW551452014
Event 1 of 10: Event ID 16# 2522
Area length error when reading
Instance DB, word access, Access address: 750
Requested OB: Programming error OB (OB121)
Priority class: 1
Internal error, Incoming event
02:18:09.412 PM 06/29/2015
(Coding: 16# 2522 0179 0025 02EE 0000 0000)
如果把OB121从CPU里删掉,CPU会STOP,此时点击缓冲区诊断中的“open block”,会直接打开程序块FC72,(FC72符号名: G7_STD_3 注解: S7GRAPH V5.1 STD FC72,FC72是使用GRAPH编程后,系统自动添加的程序块,带锁的,打开后里面什么都没有),按照经验,这是程序里使用了错误的地址,比如此地址不存在DB块中。我找了好久都没找到到底是哪个地址用错了。
谁能高速无如何查找这个错误?
图片说明:
最佳答案
有可能是你所调用的DB块中没有创建750这个地址,所以打开调用的DB块,拉取地址直到有750这个地址。
提问者对于答案的评价:
还是没找到问题的具体地址,但是通过你们的回答学到了新知识。谢谢!
专家置评
程序访问了不存在的地址,检查程序访问了数据块的DBW750地址,而DB块中这个地址不存在。
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc225559.html