回复:产品技术介绍——Step7 OB组织块介绍和使用技巧

Automann

  • 帖子

    6168
  • 精华

    138
  • 被关注

    308

论坛等级:至圣

注册时间:2004-12-23

普通 普通 如何晋级?

发布于 2011-04-29 08:02:28

28楼

下面是与网络通信故障有关的中断组织块:
1.诊断中断组织块OB82
具有诊断功能并启用了诊断中断的模块检测到错误,以及错误消失时,产生诊断中断,CPU的操作系统自动调用诊断中断组织块OB82。
2.优先级错误中断组织块OB85
由于通信或组态的原因,模块不存在或有故障,刷新过程映像表时I/O访问出错,CPU将会调用OB85。S7-300和S7-400默认的设置分别是发生I/O访问错误时不调用OB85和每个扫描循环周期都要调用一次OB85。另一种可选的设置是错误刚发生和刚消失时分别调用一次OB85。
3.机架故障或分布式I/O的站故障中断(OB86)
如果扩展机架、DP主站系统或分布式I/O出现故障,CPU将在故障出现和消失时分别调用一次OB86。
4.I/O访问错误中断(OB122)
CPU如果用PI/PQ区的地址访问有故障的I/O模块、不存在的或有故障的DP从站,CPU将在每个扫描循环周期调用一次OB122。
出现硬件和网络故障时,如果没有生成和下载对应的组织块,CPU将切换到STOP状态。如果采用默认的设置,S7-300应生成和下载OB82、OB86和OB122;S7-400还应增加OB85。
即使没有在这些OB中编写任何程序,出现上述故障时,CPU也不会进入STOP模式。但是可能不易察觉到故障的出现和发生的频度,反而会给系统的安全带来威胁。
可以在上述OB中,用下面的程序记录故障出现的次数,并用人机界面显示。应设置一个将故障计数值清零的按钮。
L MW 10
+ 1
T MW 10
可以用下面的程序调用SFC 20,将OB86的局部变量保存到某个数据块的数组中。
CALL "BLKMOV"
SRCBLK :=P#L 0.0 BYTE 20
RET_VAL :=MW54
DSTBLK :=DB86.ARY
OB86的在线帮助给出了局部数据意义的详细解释。DBB0的16#39、16#38分别表示故障出现和消失。DBB1为#C3~C5时分别表示DP网络故障、DP从站故障和DP从站内部的故障。
在DP从站故障时,DBW10中的高、低字节分别是DP网络的编号和从站的站地址。DBD12和DBD16是调用OB的日期和时间。
可以编写程序来分析局部数据,并用人机界面显示分析的结果。例如在某个DP从站出现故障时将画面上对应的指示灯点亮,在故障消失时将对应的指示灯关掉。
可以用类似的方法编写OB82中的程序。但是OB82的局部数据并不包含与诊断故障有关的全部信息,例如并不包含AO模块输出电路开路和短路的故障信息。

追求完美
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54617条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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