回复:FOR循环里面定时器问题

人生轨迹

  • 帖子

    174
  • 精华

    1
  • 被关注

    9

论坛等级:侠客

注册时间:2010-03-26

普通 普通 如何晋级?

发布于 2012-02-14 09:16:59

11楼

楼主跑了没关系,大家学习交流嘛。
引用自automann:上述现象的解释如下:
1)作为应用指令,FOR指令的调用条件不满足时(I0.0为0状态),循环程序不会被执行(一次也没有执行),其中的定时器指令也没有执行,因此它的当前值和VW102的值保持不变。
不调用不执行,这个容易理解
2)作为普通的定时器,T37在它的线圈指令被执行时进行定时。循环条件满足时,每次扫描要执行100次T37的线圈指令,因此T37的定时速度比普通情况要快100倍。
之前看书看到普通100ms的计时器是在程序执行时更新,这里看到的是每扫描一次定时器线圈就会加1,程序扫面很短的时候,为什么没有出现这种情况?
3)30s后,T37的常开触点闭合,每个扫描周期要执行100次“+I”指令,所以每个扫描周期VW102的值加100。
4)任何情况T37的线圈都不会断电,所以它的当前值不会回零。这个例子提示我们,除了考虑定时器线圈通电工作,一定要考虑定时器复位的条件,否则你的定时器就只能用一次。
之前我试过三菱的CJ命令,当子程序有线圈输出时,在不调用子程序时,线圈会保持调用的前一刻状态,不知熬西门子的是不是这样?
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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