有一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