回复:计时器到底是怎么工作的?

Zane

版主 西门子1847工业学习平台

  • 帖子

    21670
  • 精华

    409
  • 被关注

    1521

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

发布于 2010-09-29 18:19:45

28楼

AN T 1

L S5T#5S

SD T 1

------------------------------------------
L MD100
T MD10
M_01: L MD10
L L#1
-D
T MD10
L L#0
>D
JC M_01
------------------------------------------

A T 1

S M 0.0

始终对用概率论来解释这个问题觉得不合适,在确定的程序环境下,我认为其响应就是确定的,而不是随机的。

采用上述程序,分别在OB1与OB35中执行,修改MD100中的值可以改变两段横线中程序执行的时间,即延时时间。程序中M0.0能够被置位,取决于,T1在触发前的最后一个OB周期的剩余时间与OB的配合,配合得好的情况下,在一段时间内也可每次都捕捉到,极端情况就是T1的延时比两段横线间程序的延时要短。
由于OB1的周期是极其不稳定的,所以很多时候T1的触发时刻是无法与两段横线间的延时配合的,表现出无规律性。而OB35则是稳定的周期,那么上述程序的响应也是稳定的(虽然,可能无法扫描到每次T1的触发,固定的几个间隔总是可以触发的),这取决于中断周期的设置,与两段横线间延时的设置的配合,其表现完全不是随机的一个概率问题。

如果在2个时间片中,则又是另外一回事了,比如在OB35中启动T1,在OB1中扫描T1。

我们对定时器的研究只要懂得:

定时器是异步执行的
定时器的状态值由1->0 是必须在SD Tx指令之后的
定时器的状态值由0->1 是可以在扫描周期的任意一点的

就足以

当然,最后的结论还是不要采取这种程序结构来编程,只要多用一个标志位就可以解决问题。
Zane 注册自动化系统工程师 Always save before download
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54815条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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