小案例为你解析三菱PLC程序暂停功能的编程方法
2015-02-15陆青玲
陆青玲
(临汾高级技工学校)
PLC自动控制过程中经常会遇到各种不同的停止方式。如停止信号到来停止一切输出等待下次启动从头开始;停止信号来,循环一个周期后停止输出;停止信号到来,停止输出,再启动从暂停处接着执行的即常说的暂停。要求不同,解决方法也不相同,设计不正确,将无法达到控制要求。本文以一个彩灯控制的小案例为你解析暂停控制方式的编程方法。
一、小案例控制要求
有三个指示灯,要求按下启动按钮后,1号灯亮,待2S后,1号灯灭,2号灯亮,再待2S后,2灯灭,3号灯亮,待2S后,3灯灭,1号灯亮,如此循环,如跑马灯一样。当按下暂停按钮,则停止输出,再按下启动按钮时,则从刚才暂停处开始执行。
二、I/O 分配表
三、编程中主要的软元件介绍
1.定时器
FX系列PLC中的定时器可分为通用定时器和积算定时器两种。它们是通过对一定周期的时钟脉冲的累计而实现定时的,时钟脉冲有周期1ms、10ms、100ms三种,当所计数达到设定值时触点动作。设定值可用常数K或数据寄存器D的内容来设置。
积算型定时器具有计数累积的功能。在定时过程中,如果断电或定时器线圈OFF,积算定时器将保持当前的计数值(当前值),通电或定时器线圈ON后继续累积,即其当前值具有保持功能,只在将定时器复位,当前值才变为0。
在FX2N系列PLC内部有1ms积算定时器4点(T246~T249),时间设定值为0.001~32.767 s;100 ms定时器6点(T250~T255),时间设定值为0.1~3276.7 s。
如图1所示,X1的动合触点接通时,则T250用当前值计数器将累积100ms的时钟脉冲。如果该值达到设定值K345时,定时器的输出触点动作。在计算过程中,即使输入X1断开或停电时,当前值保持不变,再启动时,继续计算,其累积计算动作时间为34.5秒。如果复位输入触点X2接通,定时器复位,输出触点复位。
图1 积算定时器
2.中断输出继电器(禁止输出特殊辅助继电器)M8034
PLC内有大量的特殊辅助继电器,它们都有各自的特殊功能。FX2N系列中有256个特殊辅助继电器,可分成触点型和线圈型两大类。
其中M8034为线圈型中断输出继电器,即若使其线圈得电,则将PLC的输出全部禁止,就是不让Y有输出。当M8034复位后,PLC将按停止前的方式运行。
如图2所示的一个小例:
图2 M8034 暂停输出小案例
在此程序中,当启动按钮按下后,指示灯亮,此时如按下暂停信号,M8034线圈得电,中断了Y的输出,灯灭,但暂停结束,这里指再按下暂停按钮,则M8034线圈失电,指示灯则恢复了亮的状态,直到按下停止按钮。
四、三种不同程序设计方法下的暂停控制方法
1.基本指令编写的程序下的暂停方法
基本指令编写的梯形图如图3所示:
图3 基本指令编写下的暂停控制
图4 移位功能指令编写程序下的暂停
2.移位指令编写的程序下的暂停方法
基本指令编写的程序简单易懂,但是当我们需要许多个这样的跑马灯时,功能指令则显得更为简洁,那么在功能指令编写的自动控制的程序中如何来实现暂停功能?图4为你展示了这种编程方法。
对比图3和图4两种不同方式下的程序,我们不难发现,实现暂停方法的秘籍。
(1)见图3步43,图4步10中的梯形图,加入了M8034的启动信号暂停的常开触点并自锁,从而使暂停信号到来后,停止所在的Y输出,串入了M8034的停止信号,启动按钮的常闭,保证下次启动时,从暂停处开始执行。
(2)在非Y输出线圈前这里指定时器串入了M8034的常闭触点,保证暂停信号来时,使积算定时器暂停,M8034线圈失电后即重新启动后,继续计时。
(3)程序中用到的是积算定时器。
3.SFC编写的程序下的暂停方法
图5 SFC 程序下的暂停处理程序
顺序功能图(SFC)是FX系列PLC专门用于编制顺序控制程序的一种编程方法方式,特别适合一些复杂的控制程序,尤其是顺序控制程序。编写过程中,只需要注意分析清楚生产工艺的流程顺序,画出顺序功能图来进行编写。在此案例中同样也可以用SFC来进行编程。那么在此编程中如何实现暂停这一要求的呢?
在图5的a图中,公共程序梯形图中,加入了暂停信号对中间继电器M0的控制,由于是中间继电器,因此,不能对Y输出进行禁止,因此图b的每一步各线圈前要串入M0的常闭触点,以便暂停信号到来后,能使输出线圈断电。
在FX系列PLC中也有特殊的辅助继电器,如FX2N中的M500~M3071,为电池后备/锁存辅助继电器,这种继电器可以记忆电源中断瞬时的状态,重新通电后再现其状态。许多编程者在编写暂停程序之初往往会想到用这种继电器。因此在编写程序时还需要注意控制要求。
[1]张士伟.PLC 步进顺控编程“停止程序”设计[J].科学时代,2012(13).
[2]阮友德.电气控制与PLC 实训教程[M].人民邮电出版社,2008-04.