PLC编程中构造定时器的几种方法.docx

上传人:b****5 文档编号:4164558 上传时间:2022-11-28 格式:DOCX 页数:14 大小:482.22KB
下载 相关 举报
PLC编程中构造定时器的几种方法.docx_第1页
第1页 / 共14页
PLC编程中构造定时器的几种方法.docx_第2页
第2页 / 共14页
PLC编程中构造定时器的几种方法.docx_第3页
第3页 / 共14页
PLC编程中构造定时器的几种方法.docx_第4页
第4页 / 共14页
PLC编程中构造定时器的几种方法.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

PLC编程中构造定时器的几种方法.docx

《PLC编程中构造定时器的几种方法.docx》由会员分享,可在线阅读,更多相关《PLC编程中构造定时器的几种方法.docx(14页珍藏版)》请在冰豆网上搜索。

PLC编程中构造定时器的几种方法.docx

PLC编程中构造定时器的几种方法

PLC

编程中构造定时器的几种方法

汪东

(高速线材厂

本文对定时功能在PLC中的

作用作了

简单阐

述,并

主要

对计时

器定

时、扫

描周

期累加编程定时、周期中断编程定时等三

种实现

方法和各

自的特

点进行

了具体

论述。

关键词

PLC定时

计时器

扫描周期

周期中断

1前言

中,

会出现不够用的情况;即使够用,也会因为占用过

在现代工业现场控制中,PLC作为控制系统的重要组成部分,起着不可替代的作用。

现代PLC的功能不仅局限于简单的逻辑运算,

而且具备了定时、计数、数值计

算、中断处理、网络配置等多种强大的功能,

使之应用于工业现场时更能发挥其作用。

作为PLC重要功能之一

的定时,

在PLC程序中,

可以进行时序构造、等待响应、

人为制造中断、产生时间脉冲等多种应用,

是PLC编程

中不可或缺的重要手段。

在PLC编程中构造定时器常

用的方法是使用PLC内部的计时器资源,

另外还可以利

用其扫描周期和周期性的中断来构造定时器,

下面将以

上三种方法进行介绍。

2

计时器定时

这种方式是应用最普遍也是最便捷的方式,

广泛

地应用于PLC

程序之中。

各种

厂家及型号的PLC,

在其软件内部都提供有限的计时器资源。

当条件满足时,计时器启动,根据计时器的类型及所定时间的长度执行。

以SIEMENS公司的S7-400系列PLC为

例,

其提供的计时器

TIMER资源类型有:

S

ODT(导通延时

、S

ODTS(导通同步延时

、SOFFDTS(关断

同步延时

、S

PULSE(脉冲延时

、SPEXT

(扩展脉冲

延时

五种。

各种计时器都有自己

不同的通断特性,例如S

ODT(导通延时

的通断特性如图1所示。

这五种计时器资源可以单独使用,

也可以任意组合,满足各种工程需要。

这种计时器方式最大的特点是

方法简单、易于操作,但其也有一定的局限性,主要表现在占用过多的系统资源,并且各种PLC

对计时器个数有一定限制,以S7-400系列PLC来说,

允许系

统使用的计时器为512个。

所以在一些大型的项目

多资源而使扫描周期变长,

对于精度要求比较高的系统,

会有一定影响。

图1S7-400系列PLC内部导通延时计时器导通及关断条件3

扫描周期累加编程定时

众所周知,PLC执行程序的工作方式就是扫描,

而CPU

对所有程序的一个遍历所经过的时间就是一

个扫描周期。

对于PLC来说,每

个扫描周期会因为程序长度、程序中信号和中断的不同而不同。

虽然这

样,

但扫描周期毕竟还是和CPU内部时钟保持一定

的统一性,

是内部时钟外在的一种时间反应。

现代工

业越来越智能化的今天,

扫描周期不再只是一项内部

指标,更多的PLC已经将其作为一项基本的参数,提供给用户使用。

所以我们可以建立一种构造定时的思路:

将扫描周期累加起来,如果达到我们需要定时的长度,

就产生中断,执行我们需要的步骤。

还是以S7-400系列PLC

为例,在软件

编制过

程中,OB1(ProgramCycleOrganizationBlock是一个

基本的程序模块,

它是CPU

扫描的主程序,其它程序

被它调用。

OB1有一个模块内的变量表,

变量表中有

一个临时变量

(temp为:

OB1PREVCYCLE,它里面

所放的数据为前一次扫描周期的毫秒(

ms

数,是整型

(Integer数据。

因为是临时变量,

所以每个扫描周

期内存放的数据都在变化。

因为OB1的变量表中没有静态变量类型,所以不能直接在OB1中直接进行累加,我们可以借助一个具有静态变量的FB(Func-

tion

Block程序模块来编制累加程序,在OB1中调用

FB,

并通过接口将OBPREVCYCLE做为IN

参数输入给FB,

其OB1程序执行如图2。

图2OBI块执行扫描及参数输出

在FB中,

如果以100m

s为一

个单位,从

接口中

图3FB程序流程图及I/O

参数

读取OB1提

供的前一

个扫描

周期的

数值参

数OB1

PREVCYCLE,

将其赋值给FB自身的

IN参数,并进行累加,再通过一些中间量的转换、计算,输出

100ms为一个单位的单位个数做

为OUT

接口,供其

在使用中,用户可以直接调用的参数。

FC的I/O接口参数如表FC块,填

入相应1所示

(如果用户

它程序使用。

其程序流程图及I/O

参数如图3所示。

需要使用OFF延时,

或者PULSE延时,用户可以根据

要求自行编制相应程序,

这里只给出ON

延时示例

为了方便其它程序更多地调用此项功能,以及实现多种延

时方

式(如ON延

时、OFF

延时、PULSE

可以再做一些FC(

Function。

选择ON

延时为

表1FC的I/O接口参数

例,

用户使能

后,将FB输出接口中

的参数值保存起

来做为初值,

在后续的扫描过程中,将当前值与初值

相减计算出差值,

最后将用户设置的定时数与差值进

行比较,满足

件即

行用

令。

以100msec为定时单位,其程序流程图如图4所示。

性质inininout

参数Enabled

Tier-Set

Tie-CountOut-Tier

类型Boolean

Integer

Integer

Boolean

定时计时器启动信号时间设

置(设

间=T-Set100msec

FB提供时间单位值

计时器完成输出

这一种实现定时功能的方式,

没有直接的功能可

以用,

需要用户自行编程实现。

虽然较上一种方式复

杂,但对于一个大的工程来说,理论上可以无限次的

调用,并且由于程序并不复杂,不会占用系统过多资源,使系统的扫描更加迅速。

以利用其时间的周期性来制造定时功能。

同样,以S7-400系列PLC为例,

系统为用户提供

了从OB30到

OB38等9种时间周期中断,

这些周期中断

OB块不受扫描周期的约束和影响,

只按照各自的周期时间属性和优先级,每一个周期扫描并执行一遍其内部

的程序,

其各自的中断间隔时间和优先级见表2。

表2周期中断OB块的中断周期及优先级

OB序号

OB30OB31OB32OB33OB34OB35OB36OB37OB38

中断间隔时间

5s2s1s500ms

200ms

100ms

50ms

20ms

10ms

断优先级

789101112131415

为了方便编程,

用户可以取10ms、100ms、1s为时

间单位,

使用OB38、OB35、OB32。

这种定时的构造方

法的主要思想是,

构造一个FB块在OB块中调用,

用时间周期中断OB块的周期执行性,

每一个周期进

行一次累加,累加值做为接口提供给构造ON

延时、OFF延时或者PULSE延时的FC块使用。

OB块的执

行过程如图5所示。

图4FC块

(ON延时

程序流程图及输入参数

4周期中断累加定时

中断是指CPU

在执行扫描程序时,满足了某种

条件或发生了某种事件,而暂停扫描的顺序,执行该条件或事件的相

关程序的一个过程。

在PLC中,中

断的类型多种多样,

有用户为程序执行设置的中断,

有CPU为响应外部输入输出设备产生的中断,有系统运行到达某一时刻点产生的中断,也有系统周期性的中断等等。

对于PLC中时间周期性的中断,就可

图5OB32、OB35、OB38同时

调用FB并输出接口参数

图6周期中断方式FB块流程算,并通过自己的背景数据块输出Counter1s、Counter100ms、Counter10ms等参数,供FC块使用。

FB块分别在OB32、OB35、OB38中调用,接受它们提供的参数。

FB块的流程图如图6所示。

还有另一种方法是FB只在OB38中调用,根据10ms、100ms、1s存在十进制倍数的关系,在FB中添加编程,对Counter10ms进行除以10后取整或除以100取整,得到Counter100ms和Counter1s。

FC块的构造同上种方法基本一样,接受了三个

累加值之后,根据用户需要编程实现选择使用哪一种

时间等级,其后步骤与上种方法相同,这里不再复述,

也不给出流程图了。

这种实现定时功能的方法具有上一种方法的全

部优点,并且较上一种方法更容易实现,编程更为简单,不用累加后取整。

但并不是所有的PLC都提供

周期中断供用户使用,这跟各厂家产品有关,一般情

况下只有一些工程上使用的具有复杂控制功能的PLC会提供,而一些小型PLC供用户使用的资源相

对较少,不提供此项功能,因此这种方法使用上有一

定的局限性。

5总结

以上介绍了在PLC中实现定时功能的三种方法,用户可以根据实际情况,具体、灵活地选择应用。

以上的流程图中也只给出了主要编程思路的框架,用

户可以根据自己的需要添加程序。

PLC中实现定时

周期中断FB块的主要编程思想是:

通过与OB

的方法很多,用户可以根据产品所提供的功能,多角块的参数接口读取OBNumber参数做为Flag,并

对度分析看待问题,使其资源得到充分的利用。

Flag做相应的判断(Flag=32?

orFlag=35?

orFlag

=38?

如果条件满足,则在相应的条件下做累加运

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1