S7-1200的定时器的特点精华  

[ 2011/7/20 6:31:00 | Author: 廖老师 ]
 S7-1200的IEC格式的定时器属于功能块。在插入定时器指令时,要求创建一个16字节的IEC_Timer数据类型的DB结构(即背景数据块),来保存有关的数据。在功能块中,可以事先创建一个IEC_Timer数据类型的静态变量(多重背景),然后将它指定给定时器指令。
   CPU没有给任何特定的定时器指令分配专门的资源。每个定时器使用DB结构和一个连续运行的内部CPU定时器(我的理解是一个硬件定时器)来执行定时。 
   在定时器指令的输入IN的上升沿启动定时器时,连续运行的内部CPU定时器的值将被复制到为该定时器指令分配的DB结构的元素START(起始值)中。
   该起始值在定时器继续运行期间将保持不变,以后将在每次更新定时器时使用。以下条件时将会执行定时器更新:
   1)执行定时器指令(TP、TON、TOF 或 TONR);
   2)定时器结构的元素ELAPSED(经过的时间)或位输出Q作为其它指令的参数,该指令被执行。
   更新定时器时,将从内部CPU定时器的当前值中减去上述起始值,得到经过的时间ELAPSED。再将ELAPSED与预设值PT进行比较,以确定定时器的位输出Q的状态。然后更新该定时器的DB结构的元素ELAPSED和Q。达到预设值PT后,定时器不会继续累加经过的时间ELAPSED。
   STEP 7 Basic的V11版与V10.5版相比,增加了类似于S7-300/400的定时器线圈指令。
   从上述的定时器内部的定时机制可知,在使用定时器时,其定时精度与CPU的扫描周期有很大的关系。在CPU两次更新定时器之间,定时器的输入、输出参数保持不变。
   为了验证上述结论,在FB1中调用定时器指令TP,在OB1中用I0.1作为调用条件,调用FB1。用监视表格监视定时器的输出Q和经过的时间ET,用输入IN的上升沿启动定时器后,如果I0.1为0状态,没有调用FB1和执行定时器指令,定时器的输出Q和经过的时间ET保持不变。只有在调用FB1,执行定时器指令时,ET的值才会变化。

回复:S7-1200的定时器的特点

[ 2013/10/29 8:48:52 | Author: liaochangchu ]
引用 ddaial99 的评论我现在使用S7-1200的项目都是使用SCL编程,关于FC中调用定时器一直有一个困惑想请教一下廖老师: SCL编程时,当FC中调用定时器时,只能使用单重背景数据……

用FB代替FC,就可以用多重背景了。使用100ms的时钟脉冲来定时,需要注意计数的地址不能用全局变量,用FB的静态变量才能保证块的可移植性。

回复:S7-1200的定时器的特点

[ 2013/10/23 11:16:58 | Author: ddaial99 ]

我现在使用S7-1200的项目都是使用SCL编程,关于FC中调用定时器一直有一个困惑想请教一下廖老师:

SCL编程时,当FC中调用定时器时,只能使用单重背景数据块,这样每创建一个定时器时都要创建一个背景数据,比较繁琐,而用LAD编程时,则可以使用预先在全局数据块中定义的定时器结构。

我现在准备用编程指令来替代定时器,即先定义好0.1s的上升沿脉冲指令(M0.0的上升沿脉冲指令),然后在需要使用定时器的地方对此0.1s上升沿进行计数,到达后输出信号。

回复:S7-1200的定时器的特点

[ 2011/7/20 8:56:49 | Author: pikylin ]

学习了...

 

中华工控网 | 联系我们 | 工控论坛首页 | 工控博客首页 | 博客注册 | 博客登陆

工控博客管理联系邮箱:工控博客服务邮箱

中华工控网 © Copyright 2013. All rights reserved.