300 PLC发生读取区域长度错误#2522,如何用堆栈快速定位错误

有一300 PLC与DCS串口通讯,使用ASCII码协议,DCS侧出现数据BAD,到PLC侧断电通讯又好了,然后一会儿又BAD了,每次都这样,断电后十分钟整就出现串口通讯问题,但是CP341卡正常没报故障,而是CPU报SF故障,用电脑连检查诊断缓冲区,发现报“读取时发生区域长度错误,全局DB,字访问,访问地址734”,若干条,然后想用OPEN BLOCK定位,发现是灰的,想用堆栈来准确定位错误的程序语句所在,请问要怎么分析堆栈的信息,怎么排查?每次总感觉错误的访问地址会变,一会734,一会732,一会686等。谢谢了~

最佳答案

首先要删除OB121,这样发生故障时PLC进入Stop模式,这时候才能通过堆栈或OPEN BLOCK打开并定位到故障点。

提问者对于答案的评价:
谢谢你的提醒,我删除了OB121并cpu进入了stop,然后打开stackFC80, DB14,然后open block光标停处是不是就是错误语句所在?
谁有如何使用块堆栈,中断堆栈,本地堆栈和嵌套堆栈进行错误定位和诊断的说明?给分享下! 本地堆栈和中断堆栈打开的内容如何能看得懂啊?谢谢!

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc284644.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年10月30日 下午10:55
下一篇 2020年10月30日 下午10:55

相关推荐