西门子s7-1200的iec格式定时器的用法

作者:老电工时间:2015-10-22 12:04:31

西门子s7-1200的iec格式定时器的用法

西门子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的值才会变化。

本站仅提供信息发布平台,文章仅代表作者个人观点。

猜你喜欢

首页 > plc > 西门子plc