Diagnostic interrupt from substitute

Event 5 of 98:  Event ID 16# 3842
Module OK
Module type: Distributed I/0s
Input address:  8167
User information available 
Diagnostic interrupt from substitute
Alarm in rack 0
Requested OB: Diagnostic interrupt OB (OB82)
Priority class: 25
External error, Outgoing event
11:12:39.446 AM  03/07/2013

现场一个项目采用西门子400型冗余PLC,profibus DP冗余通讯,采用IM153-2从站模块
以上是CPU缓存里监测的信息。这个事件是什么意思?下面是我的理解,各位看看对不对
“Module OK”显示模块正常,
“Input address:  8167”是其中一个外部DP从站的诊断地址,我从硬件配置里看到了
“Diagnostic interrupt from substitute”显示子程序调用诊断中断
“Alarm in rack 0”机架0报警,是不是指这个外部DP从站的机架故障?
“External error, Outgoing event”是不是外部错误,CPU向外部模块写错误?
其实只要我把程序(软件和硬件配置)重新下载一遍,就会消除该错误,只不过过几小时又会出现。但究竟是什么原因呢?有什么办法可以看到更详细的错误信息?必须要调用

SFC13吗?我不想修改程序。

最佳答案

你说的基本都对,External error区别于内部故障,基本上是找不到硬件,可能的原因是子站掉网或掉电,应该结合5/98相邻的诊断信息共同确认,例如开关量输出,或者模拟量输出,单独分析没有意义,多传上些信息;
Alarm in rack 0应该是报警在冗余主站0,而不是冗余主站1。
又看了你发的1/98:请把时间相近的诊断信息统一考虑,就能找到问题所在,祝你成功!

提问者对于答案的评价:
http://www.ad.siemens.com.cn/service/answer/tobe_solution.aspx?Q_ID=93369&cid=1029
http://www.ad.siemens.com.cn/service/answer/tobe_solution.aspx?Q_ID=93413&cid=1029
http://www.ad.siemens.com.cn/service/answer/tobe_solution.aspx?Q_ID=93414&cid=1027
这三个帖子的原因都相同,我在这做统一说明。原因是PLC运行时,CPU能找到这个原因所在的从站,但往一些地址写数据时发生地址不存在或者不同的情况,这些地址位于DB块中。这些地址由PLC在冷启动时调用OB100或OB102来初始化。
我一般下载的方式是,将CPU调到stop,下载后调到run,这样PLC就不会调用OB100或OB102,就不会对从站DP块初始化,CPU写的时候就出现不一致的情况了。
感谢大家的关注,我解决的办法是,将CPU掉电,然后上电,再下载,这样就会冷启动调用OB块了

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2018年12月5日 下午2:50
下一篇 2018年12月5日 下午2:50

相关推荐