利用PLC定时器和计数器,实现长时间计时的方法
作者通过典型案例分析,探讨了利用定时器、计数器级联的方式实现长时间计时的原理,给出了编程思路和梯形图程序。在很多工程应用中,根据控制功能要求,需要对系统进行24小时监控,在经过某一特定时间或遇到紧急情况后给出提醒或预警。为了减少人为因素造成的影响,我们希望系统能自动进行。PLC中的定时器便具有这个功能。
但是,定时器的计数值在PLC的内部使用二进制,一个16位二进制字除去一个符号位后,能表示的最大整数是32767,它将对应定时器的最大定时时间。以100ms定时器为例,32767对应最大定时时间为32767×0.1=3276.7(s),时间不足1小时。这使得在使用单个定时器编制长时间计时程序受到很大制约。
由于定时器的计时时间有限,利用单个定时器达不到长时间计时的目的,要解决问题需要利用软件编程来实现长时间计时。下面以S7-200 PLC为例,通过案例来探讨利用定时器和计数器扩展的方式进行长时间计时,供使用者参考。
1 定时器、计数器的应用
1.1 定时器基本应用S7-200 PLC有三种类型的定时器,接通延时定时器(TON)、断开延时定时器(TOF)、记忆接通延时定时器(TONR)。以常用的延时接通定时器(TON)为例讨论定时器的基本应用。
图1 定时器基本应用
工作原理:当输入端闭合,即I0.0为“ON”时,定时器T37接通并开始计时,10秒后,定时器T37常开触点接通并保持,输出继电器Q0.0输出。I0.0断开,定时器复位,Q0.0断开。
1.2 计数器基本应用
S7-200 PLC有三种类型的计数器,增计数器(CTU)、减计数器(CTD)、增/减计数器(CTUD)[2]。以常用的增计数器(CTU)为例讨论计数器的基本应用。
图2 计数器的基本应用
工作原理:首先,使I0.1输入端通、断一次,计数器C0复位,即当前值回“0”。然后,每通、断一次I0.0,计数器C0记录1个数,即C0当前值加1,当C0当前值达到10后,计数器C0常开触点接通并保持,输出继电器Q0.0输出,直到I0.1再次闭合,计数器复位,Q0.0断开。
1.3 定时器级联扩展延时
对于分辨率为100ms的延时接通定时器(TON)来讲,其设定值最大为32767,延时时间最长为3276.7秒。当超过该时间,单个定时器则无法完成计时功能。这种情况下,可以利用定时器级联的方式实现延时时间的扩展。
案例1:利用两个定时器级联实现延时1小时
图3 定时器延时1小时
总的延时时间T=T37+T38=1800秒+1800秒=3600秒=1小时。这是单个定时器无法完成的定时时间。
还可以用同样的方法实现三个、四个定时器级联延时。这种扩展方法的计时时间是各个定时器计时时间的总和。
1.4 利用计数器延时
案例2:利用两个计数器实现延时10小时
图4 计数器延时10小时
总的延时时间为:1秒×(6000×6)=36000秒÷3600秒=10小时。
这种扩展延时方法的关键是:(1)在网络1中,首先,利用特殊功能寄存器SM0.5(周期为1秒,占空比为1:1),作为计数器C0的计数输入脉冲,在计数的同时实现计时;第二,将C0的输出作为自身的复位,实现记录6000个脉冲后重新开始。(2)在网络2中,将C0的输出作为C1的输入,实现每记录6000个脉冲触发C1计数1次。
3 案例分析
3.1控制要求
某住宅小区需要24小时昼夜定时报警,早上6:30,电铃每秒响一次,6次后自动停止;9:00-17:00,启动住宅报警系统;晚上18:00打开小区内照明系统;晚上22:00关闭小区内照明系统。
3.2 I/0口分配
表1 I/O 分配表
3.3 接线图
图5 接线图
3.4 梯形图程序
程序说明:
(1) 网络1、网络2 中,I0.0为系统启动开关;I0.1 为快速调整开关; I0.2为系统实验用开关;SM0.1用于上电时系统复位;C0 、C1两个计数器级联,C0形成900秒的计时周期,C1记录96个900秒,共计900×96=86400秒,即24个小时;
(2)网络3用于实现早晨6:30启动电铃,电铃每隔1秒响1次,6次后停止;
(3)网络4用于实现晚上18:00开启小区内照明系统;网络4用于实现晚上22:00关闭小区内照明系统;
(4)网络5用于实现9:00到17:00开启小区内报警系统;
(5)网络7、网络8,形成0.1秒钟震荡信号,用于快速调整系统使用。
图6 梯形图程序
4 结束语
定时器指令和计数器指令是PLC编程的重要指令,掌握好它们的使用方法,使设计格式规范化,可以优化设计程序,对编程水平的提高有十分重要的意义,利用编程实现长时的方法还有很多,案例也不胜枚举,同时,灵活利用定时器和计数器组合进行长时间计时,PLC的编程功能,既可减少硬件设备资源,降低生产成本,又使系统运行灵活可靠。
本文编自《电气技术》,标题为“关于利用PLC定时器和计数器进行长计时功能的探讨”,作者为侯肖霞。
PLC编程基础计数器指令的使用
PLC的计数器指令在PLC的使用过程中,是使用非常广泛的指令。其运行原理和定时器的运行原理类似,对输入信号进行计数,接通一次,统计一次,并对接通的总次数进行计数。计数器的使用方法如下所示:
加计数器的使用方法
从以上的程序可以看到,计数信号X11每给出一个信号时,计数器的当前值就自动加1;当计数器的当前值等于或大于设定值5时,则计数器的常开触点C0就导通,从而使Y0导通输出(计数器当前值小于设置值时,计数器触点不导通;计数器当前值大于等于设置值时,计数器触点导通);当计数器的复位信号X10导通时,通过使用复位指令,使计数器复位到初始状态,包换计数器的当前值复位和计数器的输出触点复位。综合以上可以看到计数器的使用方法为:
设置计数器的计数信号及计数比较值(上图中第二行)设置计数器的输出触点信号动作(上图中第三行)复位计数器(上图中第一行)以上使用的计数器为加计数器,即使用时是对计数信号进行加计数,然而有的时候不仅需要对信号进行加计数还应能够减计数。这在PLC内部亦有对应的指令。如下所示:
加减计数器的使用示例
从以上的时序图可以看到,计数器的模式为加计数还是减计数是通过特殊继电器M8200的状态确定。当M8200为Off时,计数器为加计数模式;当M8200为On时,计数器为减计数模式。
三菱FX系列PLC的计数器的范围
从以上表格计数器的范围可以看到,C0-C199这个范围的计数器仅可用于加计数方式,C200-C234范围计数器可用于加减双向计数。在使用时,应有所区分。
特别说明:以上举例是以三菱FX系列PLC进行计数器使用说明。不同品牌的PLC的计数器范围时有所差异的,使用时应查阅相关手册。
定时器使用实例
示例功能:使用计数器实现时钟显示,分别显示秒、分钟、小时。当运行到24小时后,自动复位从0点重新开始计时。
PLC程序实现如下:
计数器实现时钟计时程序
以上程序实现了时钟时间的计时功能,T0定时器实现一秒钟震荡定时,C0计数T0输出的次数实现计时秒;C1计数C0实现计时分钟;C2计数C1实现计时小时。
(转载请注明来源函控自动化工程师头条号)
相关问答
教你利用三菱PLC编写震荡电路并模拟的方法?
三菱PLC编程软件模拟运行步骤如下:1、首先,我们需要在开始菜单中打开三菱PLC编程软件GXDeveloper:2、然后,需要从工程菜单中创建新工程,并选择使用plc的...
如何理解用西门子PLC编写的震荡电路?
1.震荡电路是指能够产生连续振荡信号的电路。2.使用西门子PLC编写的震荡电路,是指利用西门子PLC(可编程逻辑控制器)来设计和实现震荡电路。PLC是一种专门用...
2022湖南对口招生考试电子电工类专业考试基本要求及考试大纲...
电子电工类专业综合知识考试基本要求及考试大纲一、考试基本要求(一)基本知识和基本技能的考试要求1.掌握电工技术和电子技术专业的基础知识、基...
plc学习的入门梯形图程序都有哪些?
介绍一下入门梯形图,可以作为学习者的参考。入门程序有很多这里挑各别典型梯形图介绍第一起保停梯形图这个可能就是plc梯形图中,最简单的启动-保持-停止。...
西门子PLC300的PID调节怎么编程啊?
现成的块,FB40\FB41基本上不需要编程的直接调用这个块,然后配置下即可当然在线调整参数也比较重要300的PID没有向导的S7-300无向导,直接在周期性中断OB中...
PID怎么控制温度我们要设计一个恒温控制的装置,但是对PID的原...
[回答]没有一种控制算法比PID调节规律更有效、更方便的了.现在一些时髦点的调节器基本源自PID.甚至可以这样说:PID调节器是其它控制调节算法的妈.为什么PI...
脉冲系数怎么调试?
调试脉冲系数可以在不同的情况下进行,以下是按照步骤进行的详细介绍:1.确定系统需求:首先要了解你的系统或设备的具体需求。脉冲系数是用来控制信号的快速上...
PLC模拟滤波的方法你了解吗?
[回答]2、中位值滤波法A、方法:连续采样N次(N取奇数)把N次采样值按大小排列取中间值为本次有效值B、优点:能有效克服因偶然因素引起的波动干扰对温度、液...
PLC模拟滤波的方法你了解吗?
[回答]2、中位值滤波法A、方法:连续采样N次(N取奇数)把N次采样值按大小排列取中间值为本次有效值B、优点:能有效克服因偶然因素引起的波动干扰对温度、液...
西门子PLC中什么叫PID指令啊?
PID指比例积分微分,Proportion比例,Integration积分,Differentiation微分西门子PLC编程软件中有PID向导,程序中的PID程序块可利用s7-Micro/win程...