回复:请问下廖老师,程序最终都在OB35里调用有什么问题?

宁超

  • 帖子

    1009
  • 精华

    39
  • 被关注

    370

论坛等级:至圣

注册时间:2012-12-11

普通 普通 如何晋级?

发布于 2017-10-31 12:29:48

6楼

展开查看
以下是引用Zane在2017-10-31 08:38:40的发言 >5楼

我认为还是有差别的,与OB1用户程序并列的系统任务有映像区刷新,系统通讯任务,系统诊断,事件任务的处理机制。这些任务与OB1是并列的同步执行的,与OB35并非并列的且同步执行。


而OB35仅仅是事件任务处理机制中的一种情况。


编程并不禁止把所有用户程序都放在定时中断中处理,但OB1的处理时间是有较大的弹性的,而定时中断则没有,对于带变化次数的循环或有多次跳转的程序,其执行时间不好估计,一不小心其峰值运算时间超过定时间隔就麻烦了,不是吗?


这是由西门子的程序扫描机制决定的,S7-300与S7-400有不同,S7-1X00也有不同的;各家PLC也是有不同之处的。


另外,我的观点是扫描周期在短周期内(50ms以内吧)稳定甚至是固定间隔是有好处的,但过长的扫描周期以及变化较大的扫描周期给系统带来的就是不稳定了及不可靠了。

我在看410-5H的CPU一个实际项目的扫描时间的时候 OB1的扫描范围跳动比较大,平均扫描时间大概30ms,但是最短12ms,最大可以超过110ms。

如果坚持把程序都放在OB35,可以做些什么设置或者优化防止最大时间超出中断时间的情况呢 ?不过我感觉

能把程序写到20ms的程序都已经很大很大了。OB35设置为100ms.200ms是绝壁够用的

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1500系列

共有10698条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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