回复:应用探讨——与网络故障诊断有关的OB的应用与编程

Automann

  • 帖子

    6168
  • 精华

    138
  • 被关注

    308

论坛等级:至圣

注册时间:2004-12-23

普通 普通 如何晋级?

发布于 2012-11-05 10:44:41

63楼

quote:以下是引用VOLLMER在2012-11-04 20:50:33的发言:
quote:以下是引用Automann在2012-11-01 19:16:49的发言:
quote:以下是引用VOLLMER在2012-10-31 18:05:49的发言:
quote:以下是引用Automann在2012-10-23 10:51:05的发言:

如果扩展机架、DP主站系统或分布式I/O由于掉电、总线导线断开、I/O系统的故障,或者某些其他原因引起的故障,CPU的操作系统将调用OB86。故障出现和消失时将分别调用一次OB86。


请问automann老师,如何根据cpu消息进一步区分上述故障源?

可以根据OB86的局部变量来判断故障。
选中管理器中的OB86,按F1键,打开OB86的在线帮助,可以看到它的局部变量的意义。在OB86的程序中首先根据OB86_FLT_ID(错误代码)判断是哪一类故障,OB86_MDL_ADDR是与故障类型有关的扩展机架的接口模块、DP主站、IO控制器的逻辑基地址,OB86_Z23包含有关故障的细节的信息。局部变量的第一个字节可判断故障产生或消失。根据这些就可以编写出诊断程序。


谢谢automann老师,谢谢n侠的帮助。
目前作为权宜之计,我已经针对6号站的闪断故障(100ms左右)写了一段延时进入stop状态的程序,目前效果尚好。:
ob86中,判断6号站闪断的进入事件、离开事件,对某内存位进行set reset
在ob1中,用该内存位进行200ms定时,定时时间到,再触发stp块。
从cpu日志可以看出,通过这种滤波,每班次都出现五六次未导致停机的闪断。当然,从根源进行处理的工作正在继续,包括更规范地接地、屏蔽等电势链接以及将dp电缆更换为光纤。

实际系统中,有可能出现几个DP从站同时出现故障,或DP主站系统(网络)出现故障的情况。前一种情况将会先后对每个从站调用OB86。编程时应考虑这些问题。
追求完美
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54616条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。