易道—IEC定时器使用指南

已锁定

Jimmy&H

  • 帖子

    144
  • 精华

    0
  • 被关注

    8

论坛等级:侠士

注册时间:2011-09-06

黄金 黄金 如何晋级?

易道—IEC定时器使用指南

6054

7

2018-11-17 14:37:25

IEC定时器和计数器,对比S5定时器和计数器有一些优势:

     --具有更大的计数、定时范围

     --IEC定时器比S5定时器性能更佳,计时更准确。

     --IEC定时器/计数器不占用CPU系统资源,只占用工作存储区,所以,只要你的存储够大,可以使用无数IEC定  时    器、计数器。

 

     有这么多的优势那肯定是必须要用的,只是如何用好才是关键,毕竟实践才是检验好用的标准。

在实际使用中也是发现一些问题:

     每次调用一次IEC定时器或计数器都会默认生产一个数据块,使用多了就会发现在系统块中会有一大堆的定时器或计数器的DB块


虽然这样也没啥,但是看着不舒服(有强迫症)。

 

这就要用到多重背景了,首先要了解什么是多重背景,官方的定义:当函数块 (FB) 调用一个高级函数块时,无需为被调用的块创建单独的背景数据块。被调用的函数块也可将实例数据保存在调用函数块的背景数据块中。这种块调用又称之为多重实例。

使用多重实例具有以下优势:

    适用于复杂块的完美结构

    背景数据块的数量较少

    快速编程本地子程序


看到说明有木有豁然开朗,说做就做
 


直接建一个TimeDB块,然后把需要用的定时器都往这里放,同时命名好。这样是不是很方便快捷。

 

或者是这样:

 


直接建一个定时器的数组,需要多少个就设置多少个。这样就是有个问题:不能给每个定时器命名了。(速度超快,我都这么干,下面会讲到原因)

 

写完程序开始调试,小编发现这么修改定时器的时间之后定时器不运行了,或者还在继续运行之前设置的时间(1000ms写成1000s),这可不好玩。吓得小编赶紧把程序停止,重新下载在运行,随后赶紧查说明去。

对照一下官方的例子:


看了半天也没发现什么,就是并没有给Q和ET赋值,难道是这原因?

果然,在吧Q给输出到一个变量后居然神奇的可以了,可以了,可以了,重要的事情说三遍。好吧果然是自己粗心大意了,在对照官方的说明:


果然是官方话,看不太懂。。。。。。。

果然还是TO YOUNG

写得很清楚,如果输出为互连,则不更改ET中 的当前值。。。

这个问题算是解决了。

以后写定时器记得给个输出,不要偷懒值给IN和PT

 

接着调试,问题右来了:图1


 

图2

 


各位发现问题了么有,从定时器使用处可以查到哪里使用了定时器.Q的使用点和自身所在的位置,但是,但是通过定时器.Q却不能反向找到在哪使用了定时器。

这就头大了,需要修改时找不到位置,只能通过DB块处找到定时器,在用交叉引用才能找到,这可麻烦了。

 

想了好几天都没想明白,突然想到之前的问题,定时器要带输出在更改定时器时间时才会更新,问题点会不会在这。

 

前面我提到过我喜欢直接把定时器定义在数据块的数组中,这是有原因的。在使用中既然不能反向查找到定时器的位置,还不如不给定时器命名(使用数组自带的名字),直接在Q输出的通过建立一个BOOL变量,命名这个变量就好,使用时也直接调用这个变量。


so,搞定问题,用得也很顺手。

 

拓展一下:

定时的数据格式是:IEC_TIMER      占用个16个字节

计数器的数据格式是:IEC_COUNTER     占用个6个字节

 

定时器的输入(PT)格式:Time、DWord、DInt(值都是以ms为单位的,使用触摸屏设置定时器值时就知道了)

 

写完也是一直冒冷汗,果然还是TO YOUNG ,好好学习,天天向上。

 

写在最后,之前看到万泉河大神说过:好的程序的标准是:不使用M中间量,不使用Timer。

我个人觉得这是一个习惯问题(前提你得使用的是西门子的新plc)。小编自己早期使用三菱的,后面几乎都是S7-1200或者ET200SP,还真几乎不使用M,只要是麻烦。同时查找也麻烦,不知道在哪里使用了,或者说不知道在哪个程序中使用的。小编一般习惯在每个程序中去新建边,这样在那个程序写就使用哪个数据块,好管理。Timer也是如此,并不是说不要用定时器了,把定时器用多重背景数据块建在各自程序块中方便查找,集中管理。

        看过万大神后面的文章,这样做的确是很方便移植调用程序,这可是非常赞同的。

易道—IEC定时器使用指南 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1200系列

共有13026条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

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