直播课堂
HOME
直播课堂
正文内容
plc编程加时间继电器 趣味学习三菱PLC之定时器和计数器
发布时间 : 2024-10-06
作者 : 小编
访问数量 : 23
扫码分享至微信

趣味学习三菱PLC之定时器和计数器

小时候总想着,自己要是可以控制时间就好了,给时间按下暂停键,然后把班里的那个死对头打一顿哈哈哈哈哈嗝,做梦呢。虽然我不可以控制时间,但是我可以通过定时器控制PLC的程序执行呀,这也是从另一方面实现我控制时间的的梦想了,激动!

PLC中,定时器和计数器是两个非常主要的编程元件,是PLC程序编制不可或缺的环节。我在之前的文章中简单地扯了一下这两个元件,而现在就是揭秘时刻了,让我们一起来看看它们的庐山真面目吧!

一、定时器

说到定时器,其实我们生活中就有很多它的应用,例如洗衣机的定时选择,烤箱的定时旋钮、空调的定时遥控、定时炸弹(这个还是算了)等。当然,还有电工朋友们比较熟悉的时间继电器也算是一种定时器。而PLC的定时器是一种编程元件,其实它就相当于继电控制系统中的时间继电器。为了便于学习PLC的定时器,我们先来了解一下时间继电器。

在继电控制电路中,如果要用到时间控制,就必须要用到时间继电器,其实我对时间继电器不熟悉,因为我对继电控制电路的接触本来就不多,但是我说过,我是专门去学习了接触器的,时间继电器和接触器有点类似,只不过接触器不能进行时间控制罢了。

要驱动接触器的常开、常闭触点动作,就必须给接触器的线圈通电,同样的,在控制电路中,要使时间继电器的各种触点动作,也是需要驱动条件的,即线圈得电。这让我想起了我平时在家打游戏的时候,如果是其他人叫我吃饭,那我肯定是专注游戏,纹丝不动的,但如果是老妈的狮子吼,还管什么游戏,小命要紧,这里的老妈狮子吼就是驱动条件,而我去吃饭就是触点动作,可以说非常形象了。

根据变化的不同,时间继电器有三种类型触点:瞬时动作、通电延时、断电延时。结合时间继电器常开触点动作时序图,我们可以更为直观的看出其触点的动作过程,特别是"通电延时"和"断电延时"。

通电延时,也就是线圈得电,但触点延时动作,线圈失电,触点马上动作。这就像是我们上课,上课铃响,大家磨磨蹭蹭的挪向教室,但下课铃声一响,大家就跟长跑运动员一样瞬时就不见人影了。断电延时,也就是线圈得电,触点马上动作,线圈失电,触点延时动作。这也像是上课,如果说通电延时是上数学课,那断电延时就是上体育课,上课铃响,大家奔向操场放飞自我,但下课铃响,大家像是七老八十一样慢慢挪回教室。这时的上课铃和下课铃就像线圈的得电与失电,而学生的上课和下课就是触点动作。

在PLC中,定时器作用其实和时间继电器相差无几,都是用于对时间的控制,特别是延时控制,且都需要驱动条件,但PLC的定时器只能进行瞬时动作和通电延时的控制,要实现断电延时,就得通过程序编制。我在前面的文章说过,定时器是字(16位)元件,所以可以对时钟脉冲计数并保存数值,也因为它是16位元件,所以定时的时长是有范围的。

三菱FX2N PLC的定时器分为通用型定时器和积算型定时器。通用型定时器又称非积算定型时器或常规定时器,积算型定时器又称断电保持型定时器。接下来,我们一起看看它们两者有什么不同吧。

1、通用型定时器T0~T245

通用型定时器根据计数时钟脉冲不同分为100ms定时器和10ms定时器。

从上图我们也可以看出,定时器的时钟脉冲是由它们的编号区分的,其中T0~T199为时钟脉冲100ms的定时器,共200个;T200~T245为时钟脉冲10ms的定时器,共46个。例如选用T20这个定时器,那就表示选用了时钟脉冲为100ms的定时器,K20表示十进制数的20,所以T20 K20就表示定时器的定时时间为20个脉冲,即20×100=2s。

因为PLC的定时器类似于继电控制电路的时间继电器,所以,在梯形图中,我们把定时器作为线圈处理,如上图所示,定时器的驱动元件为X1触点,当X1触点闭合,定时器T20(线圈)得电,经过定时时间2s后,定时器的常开触点闭合。

定时器的脉冲数除了可以用十进制数表示外,还可以用数据寄存器D的内容来表示。D就像是一个口袋,里面装着一个数(16位的二进制数),这个数就是计数器的脉冲个数,例如T20 D0,D0里存的数是H10,转换为十进制就是16,这时计数器T20的定时时间就为16×100=1.6s。

这里要注意的是,当通用计数器的驱动信号断开,此时不管计数器的计时时间是否达到设定值,计数器都会复位,计时清零,直到再次被驱动,才开始重新计时。这也是通用型定时器和断电保持型定时器的区别。

2、积算型定时器(断电保持型定时器)T246~T255

顾名思义,断电保持型定时器是指在定时过程中,当驱动信号断开,定时器虽然不能继续计时,但能保持当前计时值,等驱动信号再次恢复,定时器有在原来的计时基础上继续计时,直到累积时间达到设定值,对应触点开始动作。换句话说,就是断电保持型定时器不会自动复位,所以我们想要它复位时,只能用RST指令进行强制复位。

积算型定时器按时钟脉冲不同也可以分为两种。显然这个的数量比通用型的少很多,可能是它比较少用吧。

积算型定时器的工作原理图如上图所示,定时器T250的定时时间为60×100ms=6s,当驱动条件成立,也就是X1接通,定时器T250的线圈得电,开始计时,计到2s时X1断开,虽然定时器的线圈失电,但它的计时依然保持在2s;直到X1再次接通,定时器在2s的基础上继续计时,计到6s后,定时器的常开触点闭合。又因为定时器不会自动复位,所以,就是X1断开,定时器的线圈失电,但它的计时保持在6s,常开触点一直闭合,直到X2触点闭合,RST指令强制复位定时器,定时器的常开触点才会断开。

总的来说就是,通用型定时器只需一个信号就可以控制线圈和触点的通断。而积算型定时器必须要两个信号加上RST指令才能控制其线圈和触点的通断,真麻烦,怪不得比较少用。

定时器在梯形图中非常常用,所以在课程中,李老师举了好几个典型的实例,为了节省大家的阅读时间(并不是为了偷懒哦),我就抽其中一个例子吧。

每一个定时器的定时时间是有限制的,那么,如果我们需要的定时时间超过定时器的最长定时时间,怎么办呢?简单,一个不够,两个来凑。如下图所示,一个定时器最多可以累计32767个时钟脉冲,为了好看,我们就取3万个吧,然后把几个定时器进行接力。这时候,从X0闭合到线圈Y0得电,此间的定时时长就为30000×3×100ms=150min,也就是两个半小时,这也太久了吧。

定时器的各种玩法,我在这就不一一解说啦,大家感兴趣的,可以去看看李老师的课程,或者自己编程试试,反正是用软件编程,也玩不坏。看清了定时器的真面目,我们继续来"探索"计数器吧。

二、计数器

说到计数器,我本来想在淘宝上找一些计数器的图片,然后发现,刷出来的是算盘哈哈,所以,算盘也算是一种计数器吧,我们日常生活中,需要用到计数器的实例好像不多,但在PLC中,计数器的使用也是非常频繁的。

三菱FX2N PLC的内部计数器分为普通计数器和高速计数器两类,课程只介绍了普通型的,所以我也只学了普通型,至于高速型的,可能以后在其他课程再学习了。

在继电控制电路中,计数器作为一种仪表在电路中使用。其基本功能是对输入开关量信号进行计数。类似的,PLC中的计数器也是对内部编程元件(X、Y、M、S、T、C)的信号进行计数,当然,这些信号从接通到断开的时长应长过PLC内部的扫描周期。

就普通计数器而言,PLC内部信号计数器也有两类:16位加计数器和32加/减位计数器。现在,我们就来一一欣赏它们。

1、16位加计数器

16位加计数器又叫16位增量计数器,类似于定时器,也分为通用型和断电保持型,共200个。至于到底是通用型还是断电保持型,和定时器一样,也是通过计数器的编号来区分。而且计数器在梯形图中也是作为线圈处理,总而言之,计数器和定时器的工作原理差不多,区别只不过是在于:定时器计一般的是时钟脉冲信号的个数,而计数器计的是编程元件通断信号(触点脉冲信号)的个数。

如上图所示,C0计数器的设定值是K10,也就是说触点X11通断10次,计数器的触点才会动作。类似于定时器,当PLC断电,通用计数器会自动复位,但和定时器不同的是,定时器的驱动信号断开,定时器也会复位,当计数器前的触点断开,如上图的X11,计时器会进行计数,而不是复位。

其实,16位加计数器和定时器的差别真的不大,所以,这里也不再赘述啦。

2、32位加/减计数器

32位加/减计数器又称双向计数器,它可以从0开始增1计数到设定值,也可以由设定值开始减1到0。和16位的一样,32位加/减计数器也有通用型和断电保持型两类,不过个数比较少,可能也是因为它比较少用吧。

和定时器一样,计数器的设定值除了可以用十进制数K来表示外,也可以用数据寄存器D的内容来表示,不过这里要注意的是,16位加计数器的设定值用一个D就可以寄存,而32位加/减计数器就需要两个相邻的D才行,如D0、D1,且D1为高位,D0为低位。因为D也是16位的,要寄存32位的数,也只能用两个D。

既然32位加/减计数器可以双向计数,那怎样设定它的方向呢?这就要借用特殊辅助继电器M8×××了。怎么借用?别急,我们马上看看到底是什么回事。

如上图所示,该梯形图中用了计数器C200,所以特殊辅助继电器就是M8200。也就是说,特殊辅助继电器的编号要与计数器的编号一一对应,M8后面的编号要和C后面的编号相同。例如你用的计数器是C220,那么对应的特殊辅助继电器就是M8220,依次类推。

当M8200断开(为OFF)时,C200作加法计数,当M8200接通(为ON)时,C200作减法计数。类似于开车,M8200就像是倒车挡,一旦挂倒挡,踩了油门,车子就后退,退出倒车挡,车子就恢复为前进。

另外,32位加/减计数器还有不同于16位加计数器的一点是:在16位计数器中,当计数值达到设定值后,触点动作,就算此后信号脉冲依然在增加,计数器的计数值仍然保持在设定值不变,触点状态也保持不变;而在32位加/减计数器中,当计数值达到设定值后,触点动作,如果此后继续有信号脉冲输入,计数器也会继续计数,但触点状态保持不变。

那32位加/减计数器什么时候触点状态才会再次变化呢?简单,我们还是以上图为例,信号脉冲持续输入,当计数器C200作加法计数达到设定值3后,其常开触点闭合,计数器继续计数3+1+1=5,常开触点保持闭合,此时接通M8200改变计数器的计数方向,计数器开始从5-1-1=3,计数器再次回到设定值3,其常开触点动作从而断开,计数器继续做减1计数,直到达到计数器的阈值或M8200断开。

关于计数器的编程实例,李老师在课程中也列举了几个例子,可能是我脑子比较笨,我觉得这些例都好难理解啊,所以我还要多看几遍,在这里我就不班门弄斧了,以免被一些大神取笑。

那么,这次的分享就到这里,各位读者,下次再会,告辞。

选自《三菱FX PLC编程与应用入门》第五章第17~19课时

技成培训原创,作者:杨思慧,未经授权禁止转载。

利用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用电脑软件编程时间继电器和计数器肿么编-ZOL问答

WR(WorkRegister)代表辅助继电器,PLC程序中用作中间继电器使用,因书写方法区别于I:10.00,500.00等等,可以便于程序的管理与可读性的提高,一看到这个W寄存器就...

plc时间继电器编程注意事项?

plc定时器的使用注意事项:定时器的精度与程序的安排有关,如果定时器的触点在线圈之前,精度将会降低。平均误差约为1.5倍扫描周期。最小定时误差为输入滤波器时...

时间继电器在plc上怎么编写?

关于这个问题,时间继电器可以通过PLC的定时器模块来实现。具体步骤如下:1.打开PLC编程软件,并选择需要编写时间继电器的程序。2.在程序中添加一个定时器模...

西门子PLC梯形图,如何加时间继电器?

西门子PLC的时间继电器其实就是定时器,它没有大家想的那么高深,说的直白点就是一个闹钟,它不过就比我们手机上使用的闹钟功能多一点,应用稍微麻烦一点罢了。...

PLC内部时间继电器和计数器设定值外部输入方法-ZOL问答

微信客户服务电话95188人工时间?2.4万浏览3回答求推荐一款笔记本。工科研究生用,便于随身携带。平时做科研,处理数据,查阅文献。不玩网游和单机,至多玩棋...

PLc定时继电器定时设置方法?

要设置PLC定时继电器的定时方法,首先需要进入PLC编程软件。在软件中,选择相应的定时器功能块,并设置定时器的参数,如定时时间、触发条件等。根据具体的PLC型...

西门子plc怎么写入时间继电器?

具体操作方法如下:1.首先打开SiemensStep7编程软件,并创建一个新的S7-300或S7-1500项目。2.右键单击用户程序区,在上下文菜单中选择“添加新块”选...P...

信捷plc时间继电器怎么编程?

要编程信捷PLC时间继电器,首先需要打开PLC编程软件,选择对应的时间继电器模块,设置触发时间和触发条件,并将时间继电器的输出信号与需要控制的设备进行连接。...

施耐德plc时间继电器的编程方法?

你好!施耐德plc时间继电器的编程方法如下:1.明确PLC时间继电器编程是一种基于时间控制的编程方式,能够实现对设备的时间控制功能。2.PLC时间继电器编程需要遵...

plc时间继电器指令?

在三菱PLC中,可以使用"TIMER"指令来实现时间延迟操作。使用此指令可以在PLC程序中创建一个时间继电器。下面是TIMER指令的语法:TIMER(TimingData,...

 党的十八届三中全会公报  蔡三蛇 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部