回复:S7-1200间断报 OB30事件缓冲区溢出

'Razor

西门子1847工业学习平台

  • 帖子

    3246
  • 精华

    42
  • 被关注

    224

论坛等级:至圣

注册时间:2008-03-31

钻石 钻石 如何晋级?

发布于 2025-04-16 10:46:34

1楼

OB30的循环时间设置太短,

1、如果小于OB30中程序的执行时间,每次调用OB30时中断未完成,又有新的OB30中断被触发,CPU会检测到时间错误(如OB80时间错误中断),导致系统进入停机状态(STOP模式);

2、另外,如果OB30频繁执行而且耗时较长,又会频繁打断OB1的运行,导致主程序整体扫描周期延长,影响系统实时性,极端情况下,主程序可能因为资源被抢占而无法完成正常逻辑处理;

3、如果循环中断间隔过短而且未设置合理的相移,多个循环中断OB之间可能会因为优先级冲突导致任务大量堆积,进一步加剧时间错误;

4、即使没有下载OB80错误处理块,CPU也会在诊断缓冲区中记录时间错误事件,导致维护人员误判故障原因;


对策:

1、优化OB30程序,尽量简短,确保OB30内的程序执行时间远小于循环间隔时间;

2、合理设置循环时间,避免一味追求OB30的高频调用;

3、启用相移时间;

4、添加错误处理OB,如OB80和OB121;


少即是多
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15223条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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