回复:怎么才能做到在调用FB块时定时器才计时,停止调用块时暂停计时啊?

kkss

西门子1847工业学习平台

  • 帖子

    45
  • 精华

    0
  • 被关注

    1

论坛等级:侠客

注册时间:2018-03-11

黄金 黄金 如何晋级?

发布于 2019-11-08 13:40:10

3楼

*****************************************************************************************

当由于 TP、TON、TOF 或 TONR

指令的输入上出现沿跳变而启动定时器时,连续运行的内部 CPU

定时器的值将被复制到为该定时器指令分配的 DB 结构的 START 成员中。

该起始值在定时器继续运行期间将保持不变,随后将在每次更新定时器时使用。

每次启动定时器时,都会从内部 CPU 定时器将一个新的起始值加载到定时器结构中。

更新定时器时,将从内部 CPU 定时器的当前值中减去上述起始值以确定经过的时间。

再将经过的时间与预设值进行比较以确定定时器 Q 位的状态。 然后在为该定时器分配的

DB 结构中,更新 ELAPSED 和 Q 成员。

注意,经过的时间将停留在预设值上(达到预设值后定时器便不会继续累加经过的时间)


当且仅当满足以下条件时才会执行定时器更新:

● 已执行定时器指令(TP、TON、TOF 或 TONR)

● 某个指令直接引用 DB 中定时器结构的“ELAPSED”成员

● 某个指令直接引用 DB 中定时器结构的“Q”成员


● 扫描期间可以不执行定时器更新。

可以在函数中启动定时器,然后在一个或多个扫描周期内不再调用该函数。

如果没有执行引用定时器结构中 ELAPSED 或 Q

成员的其它指令,则不会更新定时器。

直到再次执行定时器指令或执行将定时器结构的 ELAPSED 或 Q

用作参数的其它指令时,才会再次更新定时器。

*****************************************************************************************

M0.0没有复位

没有再次启动定时器,START值不会更新吧?

 手册里的

评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有15228条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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