巧用真值表法编写PLC时序控制程序

2015-07-27 07:29王学军陆青玲山西临汾高级技工学校山西临汾041000
山东工业技术 2015年14期
关键词:梯形图灯亮时序

王学军,陆青玲(山西临汾高级技工学校,山西 临汾 041000)

巧用真值表法编写PLC时序控制程序

王学军,陆青玲
(山西临汾高级技工学校,山西临汾041000)

摘要:本文以按一定时间循环控制的小项目为例,介绍了一种试用于中高职学生及广大初中级电工自学者,并且应用较为广泛的PLC时序控制梯形图的真值表编制设计技巧。

关键词:时序控制;真值表;定时器接力棒输出法;定时器连续输出累积计时法

1 前 言

中高职维修电工专业的课程设置中《ΡLC基础与实训》是理论和实践性很强的一门课程,对于基础薄弱的中职学生及一些渴望自学成才的初中级电工而言,非常感兴趣,但是编程却没有好的思路和方法。ΡLC梯形图的设计方法有很多,如经验设计法、继电接触器电路图转化法、逻辑设计法、波形图设计法等等。在ΡLC入门初期,在教师讲授并演示了继电接触器电路图的转化法后,大多数的学生都能够很好地加以应用,但是到了定时器的学习,一些需要按一定时序要求循环工作的项目设计时,学生们一片茫然不知道如何下手。笔者尝试了逻辑设计法、波形图设计法进行讲授,但是逻辑设计法的理论基础是逻辑代数,编程者需要根据控制要求,利用“与”、“或”、“非”3种基本运算关系,写出逻辑表达式,最后化成梯形图。波形图设计法则需要学生根据任务要求,画出触点线圈的动作时序图,然后利用时序图,写出逻辑表达式,最后化成梯形图。这两种方法对大学生而言容易接受,但是在中职课堂里,只有少数资质好的同学可以灵活应用,而大多数同学,还是不得其道。为此,笔者借签了很多经验,总结出一套行之有效的真值表编程方法使很多同学如醍醐灌顶豁然开朗。

2 真值表编程方法与步骤

可编程序控制器(ΡLC)的时序控制程序,是指能够实现ΡLC各输出端信号的状态在时间上按一定的顺序要求进行变化的用户程序。通常,对于时序控制系统,用户通过分析各输出状态发生变化的时刻和相应的条件,依据输出与输入的时序逻辑关系,采用多个定时器,来编制相应的ΡLC时序控制程序。由于程序中使用了较多的定时器,涉及到多个定时器的启动信号、时间设定、触点动作方式等诸多因素,因此这种时序控制程序往往存在着逻辑关系复杂、程序过长、不易读懂、调试麻烦等问题。

真值表法是在波形图法基础上改进而来,以绘制随时序变化的真值表为基础,利用编程规律,实现ΡLC程序设计的一种方法。适用于按时序控制的程序的编写,当系统复杂时,也可将其动作分解,其局部也可采用这种方法。

其主要步骤有:

(1)明确控制任务和要求,作I/O地址分配。

(2)确定启停信号,及所需要的中间记忆元件。

(3)明确准确的时间对应关系,画出真值表时间轴。理清各时间段输出信号状态,做真值表。

(4)根据真值表,编写梯形图。(主要编写梯形图的方法在实例中说明)。

(5)加入必要的联锁,并进行调试。

下面将以一个实际的案例来说明这种编程方法的巧妙之处。

3 真值表编程方法实例

某指示灯控制要求如下(这里主要说明编程方法,因此本控制要求主要是为了说明编程方法,没有实际的意义)。

在启动信号发出后,有指示灯HL1灯亮,HL3按1S频率闪烁,5S后,两灯熄灭,HL2灯亮,3S后HL1灯亮,HL2灯不熄灭,2S后两灯熄灭,HL3灯亮,3S后,HL3灯继续亮同时HL2灯亮,2S后开始指示灯HL1灯亮,HL3按1S频率闪烁……如此循环,直至停止信号来临全部熄灭。

具体步骤与方法如下:

(1)明确I/O地址

输入地址:启动SB1,地址X0。停止SB2,地址X1。

输出地址:指示灯HL1,地址Y1。灯HL2,地址Y2。灯HL3,地址Y3。

(2)真值表的绘制。

1)画真值表:根据控制要求,我们可以认为这种控制分为HL1、HL2灯闪时间段、HL2灯亮时间段、HL2、HL1灯亮时间段、HL3灯亮时间段及HL2、3灯亮五个时间段。因此需要设定五个定时器,分别为T1、T2、T3、T4、T5五个通用形定时器。同时可以看出来本案例中共有3个灯,因此输出地址有3个。由此画出6列4行表格(由于本控制需要循环,在表上特别画出箭头指出,同时在表下标各时间段的动作时长。),表中首列的开始是在启动信号到来后,所以在T1外标注记忆启动信号的中间继电器M0;2)真值表的填写:真值表就是根据控制要求,列出输出元件的变量表。ΡLC控制的执行元件,其状态主要是得电、失电或按一定频率反复工得失电。因此,我们用“1”表示输出元件得电,用“0”表示输出元件失电,用“1*”表示输出元件往复的得电和失电。根据本案例的控制要求,我们将各输出信号的得失电情况写入表中,如图1所示。

图1 按时序控制真值表

(3)程序的编写:为了使程序更加的条理分明,便于初学者掌握和理解,我们将程序分成三大部分:启保停程序部分、时序循环程序部分、输出元件程序部分。1)启保停程序的设计:当启动信号发出后,开始之后的循环工作,直到按下停止按钮时停止输出,因此,第一步是设定一个记忆元件中间继电器M0。即:0LDX01ORM02ANIX1 3OUTM0;2)时序的循环设计:此定时器的工作分为两种设计的方法,即接力棒记时法,定时器连续输出并累积计时法。接力棒记时法,是在每个定时器时间到后,其常开点触发另一个定时器开始记时,定时器的时间设定值即K值的设定为各段工作的实际时间。为了能达到循环记时,在T1线圈的线路中串入T5的常闭。以保证当T5时间到,常闭分断,各定时器计时归零,重新计时。累积计时法,则是在启动开始,所有的定时器开始计时,其K值设定为其从启动到该段的时间和。同样也为了做到循环控制,在总支路上加设T5的常闭。两种方法的编写如图2所示(注两种方法都需要启动计时的信号,因此要串入M0的常开点).4)编写输出元件程序:如何编写输出元件的程序,掌握规律,简单易行。编程窍门找1。方法如下:理清楚表中各输出元件的得电和失电条件,来编写梯形图,如上图中的真值表中对于Y0来说,表中Y1第一个得1的条件是M0得电,T1时间到变为0,因此Y0输出的一条支路中串了T1的常开,T2的常闭,而第二个为1是在T2时间到,T3时间到时则变为零,因此,第二条支路中,串接T2的常开,T3的常闭。最后得出其程序图3中所示。注切不可把所有得1的条件并接,把变0的条件串接。如果在真值表中出现了连续多个1,只需要关注第一个1的得电条件,和最后一个1变0的条件,使得电串常开,使失电串常闭。如真值表中Y2的程序的编写见图3。当出现个别输出出现闪烁或往复得电时,如Y2,则需要先建立一个按要求往复得电的脉冲信号记忆的中间继电器,如果是按10ms、100ms、1S、1min脉冲振荡,也可直接利用特殊的中间继电器M8011~M8014。然后分析Y2,其闪烁的条件是M0,停止闪烁的条件是T1,因此建立一条支路,串入M0的常开,T1的常闭和脉冲信号的常开。而Y2另外得1的条件是T3,失电的条件是T4,因此再输入一条支路,串入T2常开,T4的常闭。如图3中的Y3程序的编写。根据这样的方法不难得出,本小案例中的输出元件的程序为。(4)程序汇总并写入。将三段程序输入并调试。

图2 累计计时法(左)   接力棒计时法(右)

图3

以上是笔者对真值表编程方法的一点汇总,希望能初学者能有帮助,如有考虑不周的地方,望能抛砖引玉。

参考资料:

[1]郑凤翼.图解西门子S7-200系列PLC入门[S].电子工业出版社.

[2]阮友德.电气控制与PLC实训教程[S].人民邮电出版社.

猜你喜欢
梯形图灯亮时序
顾及多种弛豫模型的GNSS坐标时序分析软件GTSA
清明
基于GEE平台与Sentinel-NDVI时序数据江汉平原种植模式提取
纪念八斗塆共存社成立100周年感怀
2019款广汽本田凌派发动机故障灯亮
你不能把整个春天都搬到冬天来
浅析PLC编程
PLC编译功能的实现
S7—200PLC基本编程教学案例
数控机床梯形图故障设置方法研究