回复:关于IEC定时器的疑惑

周杰伦

西门子1847工业学习平台

  • 帖子

    2033
  • 精华

    16
  • 被关注

    143

论坛等级:至圣

注册时间:2011-04-19

白金 白金 如何晋级?

发布于 2017-05-22 13:32:41

4楼

展开查看
以下是引用shine在2017-05-22 10:06:51的发言 >3楼

我们来分析下上面得程序,由于定时器得异步刷新机制,把定时器定时时间到得可能发生时间用2个分割点分成3个区域,一个是NETWORK1的.Q常闭点前,一个是NETWORK3的.Q常开点前。我们按3个不同的情况分别讨论


区域1:由于定时时间已经到了,那么的结果就为0了,TON的EN为0,则执行完随后的TON指令之后,.Q就为0了


区域2:执行完network1的时候定时器时间还没到,那么TON的EN为1,定时器继续计时,在network3之前定时时间到,那么.Q为1,则MW30=MW30+1。

区域3:和正常的定时时间未到的情况一样,然后下一个扫描周期就是区域1的状态了。

楼主的第一个测试程序可以认为是区域2的时间为0。所以之后的置位指令不会被执行。

中间的NEWWORK2就是为了人为加大区域2的区间。当MW0为0时,MW30为0不变(如果运行足够长的时间,可能会增加),当逐渐加大MW0的值,MW30增加的几率逐渐增大,然后几乎每隔1s都会增加



能否认为是CPU的执行时间和TON定时器内部的定时扫描有了冲突?

工控毁我青春!
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15376条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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