继电接触器控制系统长期在生产上得到广泛应用,但由于它的机械触点多,接线复杂、可靠性低、功耗高、通用性和灵活性也较差,所以日益满足不了现代化生产过程复杂多变的控制要求。
可编程控制器(PLC)是以中央处理器为核心,综合了计算机和自动控制等先进技术发展起来的一种新型的工业控制器。可编程控制器采用可编程序的存储器,用来在内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,并通过数字式或模拟式的输入和输出,控制各种类型的机械或生产过程。它是专门为工业现场应用设计的,具有可靠性高、功能完善、组合灵活、编程简单及功耗低等许多独特优点。
5-1可编程控制器的结构和工作原理
5-1-1可编程控制器的结构及各部分的作用
PLC的类型繁多,功能和指令系统也不尽相同,但其结构和工作原理则基本相同。一般由主机、输入/输出接口(I/O)、电源、编程器、扩展接口和外部设备接口等几个主要部分构成,如图5-1所示。
如果把PLC看做一个系统,外部的各种开关信号或模拟信号均为输入变量,它们经输入接口寄存到PLC内部的数据存储器中,然后经逻辑运算或数据处理以输出变量的形式送到输出接口,从而控制输出设备。
1-主机
主机部分包括中央处理器(CPU),系统程序存储器和用户程序及数据存储器,CPU是PLC的核心,通常有三种:通用微处理器(如Z80、8086、80286等),单片微处理器芯片(如8131、8096等),它主要用来运行用户程序,监控输入/输出接口状态,做出逻辑判断和数据处理。即取进输入变量,完成用户指令所规定的各种操作,再将结果送到输出端,并响应外部设备(如编程器、打印机等)的请求以进行各种内部诊断等。
PLC的内部存储器有两类:一类是系统程序存储器,用于存放系统管理和监控程序及对用户程序做编译处理的程序,系统程序已由厂家固化,用户不能更改;另一类是用户程序及数据存储器,用于存放用户编制的应用程序及各种暂存数据和中间结果。
I/O接口是PLC与输入/输出设备的连接部件,输入接口接受输入设备(如按钮、行程开关、传感器等)的控制信号。输出接口是将经主机处理过的结果通过输出电路去驱动输出设备(如接触器、电磁阀,指示灯等)。I/O接口电路一般采用光电耦合电路,以减小电磁干扰。输入接口的电源有三种类型:直流12~24V输入接口,交流100~120V或200~240V输入接口,交直(AC/DC)12~24V输入接口。输出接口也有三种形式:一是继电器输出型,二是晶体管输出型,三是双向晶闸管输出型。另外I/O接口还设有扩展接口,用于扩展外部输入/输出端子的数量,它与主机连在一起。
3-编程器
编程器也是PLC的一个重要的外部设备,主要由键盘、显示器,工作方式选择开关和外存储器接插口等部分组成。编程器的作用是用来编写、输入、调试用户程序,也可在线监视PLC的工作情况。如图5-2所示为日本三菱公司的F1-20P-E型编程器的示意图。
5-1-2可编程控制器的工作原理
PLC采用“顺序扫描、不断循环”的方式进行工作。即PLC运行时,CPU根据用户按控制要求编制好的并存于用户存储器中的程序,按指令步序(或地址号)做周期性循环扫描。如果无跳转指令,则从第一条指令开始逐条顺序执行用户程序,直到程序结束,然后重新返回第一条指令,开始下一轮的扫描。在每次扫描过程中,还要完成对输入信号的采样和对输出状态的刷新等工作,周而复始。
PLC的扫描工作过程可分为输入采样、程序执行和输出刷新3个阶段,并进行周期性循环,如图5-3所示。
1-输入采样阶段
PLC在输入采样阶段,首先以扫描方式按顺序将所有暂存在输入锁存器中的输入端子的通、断状态或输入数据进行读取,并将其存入各对应的输入映像寄存器中(输入映像寄存器也称为输入状态寄存器),即刷新输入。随即关闭输入端口,进行程序执行阶段,即使输入映像有变化(有新的输入信号)、输入状态寄存器的内容也不会改变。变化了的输入信号状态只能等到下一个扫描周期的输入采样阶段才被读取。
2-程序执行阶段
PLC在程序执行阶段,按用户程序指令的先后顺序(步序号)扫描执行每条指令,所需的执行条件可从输入映像寄存器和元件映像寄存器中读取(元件映像寄存器也称为输出状态寄存器),经过相应的运算和处理后,其结果再写入元件映像寄存器中。因此,元件映像寄存器中的所有内容随着程序的执行而改变。
3-输出刷新阶段
当所有的指令执行完毕,元件映像寄存器的通、断状态在输出刷新阶段送至输出锁存器中,并通过一定方式(继电器,晶体管或双向晶闸管)输出,驱动相应输出设备工作,这就是PLC的实际输出。
经过这3个阶段,完成一个扫描周期,对小型PLC(I/O点数为256点以下),由于采用集中采样,集中输出的方式,使得在每一个扫描周期中,只对输入状态采样一次,对输出状态刷新一次,在一定程度上降低了系统的响应速度,即存在输入/输出之间的滞后现象。
但却大大提高了系统的抗干扰能力,使系统的可靠性增强。而PLC几毫秒至几十毫秒的响应延时对一般工业系统的控制来讲无关紧要。
5-1-3可编程控制器的主要技术指标
PLC的主要性能通常可用以各种技术指标进行描述。
1-I/O点数该指标是指PLC的外部输入和输出端子数(外部接线端子数)。这是一项重要技术指标,通常小型PLC的I/O点数为256以下,其中小于64点为超小型PLC,中型PLC的I/O点数为256点到2048点之间,大型PLC的I/O点数为2048点以上;其中I/O点数超过8192点为超大型PLC。这种分类界限不是固定不变的,它随PLC的发展而改变。表5-1是F1、F2系列PLC型号规格。
2-用户程序存储容量
该指标是衡量PLC所能存储用户程序多少的。在PLC中,程序指令是按“步”存储的,一“步”占用一个地址单元,一条指令往往不止一“步”。一个地址单元一般占两个字节(即两个8位字节)。如一个内存容量为1000步的PLC,其内存为2KB。
3-扫描速度
该指标指扫描1000步用户程序所需的时间,以ms/千步为单位。有时也可用扫描一步指令的时间μs/步。
5-2可编程控制器的编程元件和基本指令5-2-1可编程控制器的编程元件不同厂家,不同系列的PLC其内部的软继电器的功能和编号也各不相同,因此,用户在编制程序时,必须熟悉所选用PLC的软继电器功能符号和每条指令,下面先介绍编辑元件符号。
在F1系列PLC中,每种软继电器都用一定的字母符号来表示,如X表示输入继电器;Y表示输出继电器;M表示辅助继电器;D表示数据寄存器;T表示定时器;C表示计数器;S表示状态继电器等,并对这些软继器给予一定编号,以便区别,编号采用八进制表示。
1-输入继电器(X)
输入继电器专门用来接收从外部(开关,按钮、传感器)发来的信号,它与输入端子相连,可以提供无数对动合、动断触点供内部编程使用。只能由外部驱动,不能用指令从内部驱动。如F1-40MR型PLC的输入继电器编号为X400~X407,X500~X507,X410~X413,X510~X513,共24个输入点。
2-输出继电器(Y)
输出继电器专门用来将输出信号传送给外部设备,外部信号无法直接驱动输出继电器,它只能在程序内部用指令驱动。F1-40MR的输出继电器编号为Y430~Y437,Y530~Y537,共16个输出点。表5-2为F1系列输入/输出继电器编号。
3-辅助继电器(M)
PLC中有许多辅助继电器,每个辅助继电器都有无数对动合、动断触点,供编程使用。
和输出继电器一样,辅助继电器只能由程序驱动,其作用相当于继电控制中的中间继电器。
辅助继电器的触点不能直接输出驱动外部设备。
辅助继电器分为通用型和继电保持型两种。通用型辅助继电器为M100~M277(共128点),继电保持型辅助继电器为M300~M377(共64点)。
在实际的工作控制中,往往会发生电源突然断电。因此PLC采用锂电池作为备用电源,将继电保持型辅助继电器的状态保持下来,以保护重要数据和运行状态,不会丢失,当电源恢复时,能使控制系统继续电源中断前的控制。
4-特殊辅助继电器(M)
(1)M70:当PLC运行时,M70为ON;停止时M70为OFF。
(2)M71:当PLC开始运行时,M71接通,但接通时间仅为一个扫描周期。可用来对计数器、移位寄存器,状态继存器等进行初始复位。
(3)M72、M73:M72可提供振荡周期为100ms的脉冲;M73可提供振荡周期为10ms的脉冲,可做计数或时钟脉冲。
(4)M76:当锂电池电压下降到规定值时接通,发出指示,提醒操作者更换电池。
(5)M77:禁止全部输出。当M77接通时,全部输出继电器(Y)的输出均自动切断,但其他继电器、定时器,计数器仍继续工作。可作为输出紧急情况下切断全部输出。
5-移位寄存器
移位(数字)寄存器是由辅助继电器组成。F1-40MR中有16个辅助继电器构成一个移位寄存器,构成移位寄存器的第一个辅助继电器的编号,就是这个移位寄存器的编号。当辅助继电器已构成移位寄存器后,不可再做他用。移位寄存器的编号为:
如图5-4所示为16位移位寄存器M300(M300~M317)的等效电路。
移位寄存器有3个输入端:输入数据端(与OUT相连),移位输入端(与SFT相连)和复位输入端(与RST相连)。数据输入端的信号X400的通或断决定了首位辅助继电器M300的状态(通或断),其工作方式如图5-5所示。
当复位输入端的信号X402被接通时,M300~M317全部被断开,即处于复位状态。所以,移位寄存器工作时,复位输入端应断开。
一般当开关闭合或线圈通电时,用“1”表示,而当开关断开或线圈断电时,用“0”表示。
当移位输入信号X401每接通一次(01),移位寄存器内16个辅助继电器的状态(1或0)即向右移一位,如图5-6所示。图中用箭头线表示将前位的状态向后移一位,最后一位M317的状态将溢出而消失。
6-定时器(T)
PLC中的定时器相当于继电控制系统中的时间继电器。它可以提供无数对动合、动断延时触点供编程使用。定时器的延时时间由编程时设定的系数K决定。F1-40MR的定时器元件编号为T450~T457,共16点,定时值K为0-1~999s(3位数字设定,最小设定单位为0-1s)。一般的定时器都是通电延时的,其动作如图5-7所示。该定时器的设定时间为3s;输入继电器X400动合触点闭合,定时器起动(计时开始,每过0-1s对K减0-1,直到3s后K减到0为止)。
定时器输出,其动合触点闭合,动断触点断开,接通输出继电器Y430。若X400一直接通,则定时器维持输出。当X400断开,则定时器复位,它的动合触点断开,动断触点闭合,定时值K恢复到设定值3s。在编程中、线圈一般用符号表示,继电器动合触点一般用符号表示,继电器动断触点一般用符号表示。
当需要断开延时定时器时,可用如图5-7(b)所示电路,该电路定时器设定时间为10s。
当输入继电器X400由接通变为断开时,定时器T450开始计时,计到10s,其动断触点断开,使输出继电器Y430断电。
7-计数器(C)
计数器是用来记录信号开关的开关次数或脉冲个数的。当记录到设定值时,其触点动作。计数器的设定值由编程时设定常数K值决定。
F1系列PLC共有32个计数器,如F1-40MR的计数器编号为C460~C467,C560~C467,共16点。计数值K为1~999。
大多数计数器均有断电保持功能,在电源中断时,当前计数值仍保持着。在不需要保持计数值的场合,可用初始化脉冲M71将其复位。
计数器有两个输入端,一个复位输入端与RST相连,一个计数输入端与OUT相连,如图5-8所示。这是一个无电源中断保持的减法计数器。运行一开始,初始化脉冲M71将计数器C460复位(其动合触点断开,动断触点闭合),计数器当前设定值为(10)。
当复位输入断开,即可开始计数。计时输入X401每接通一次(01),计数值减1,直到计数值减到0时,C460的动合触点闭合(动断触点断开),接通Y430。以后若再来计数脉冲,C460的工作状态仍将继续保持。直到复位输入X400接通使C460复位,其动合触点断开(动断触点闭合),计数器的当前值又恢复到设定值(10)。
5-2-2可编程控制器的基本指令F1系列PLC共有基本指令20条,步进指令2条,功能指令87条。本书仅以F1-40MR为例介绍其基本指令。
1-取指令和输出线圈指令(1)LD——取指令:用于动合触点与左母线连接,每一个以动合触点开始的逻辑行都要使用这一指令。
(2)LDI——取反指令:用于动断触点与左母线连接,每一个以动断触点开始的逻辑行都要使用这一指令。
(3)OUT——驱动线圈输出指令:用于驱动输出线圈。
以上指令的应用如图5-9所示。
2-触点串联指令
(1)AND——动合触点串联指令:用于单个动合触点与前面触点串联。
(2)ANI——动断触点串联指令:用于单个动断触点与前面触点串联。
触点串联的应用如图5-10所示。
3-触点并联指令
(1)OR——动合触点并联指令:用于单个动合触点与前面触点并联。
(2)ORI——动断触点并联指令:用于单个动断触点与前面触点并联。
触点并联的应用如图5-11所示。
4-块指令
(1)ORB——串联电路块的并联指令:用于两个或两个以上触点串联电路之间的并联。
(2)ANB——并联电路块的串联指令:用于两个或两个以上触点并联电路之间的串联。
块指令的应用如图5-12所示。
5-移位、复位指令
(1)SFT——移位指令:用于将移位寄存器中的内容移位。
(2)RST——复位指令:用来清除计数器和移位寄存器中的内容。
移位和复位指令的应用如图5-13所示。
M120~M137是一个16位移位寄存器。OUTM120对移位寄存器的第一位输入,SFTM120使移位寄存器每一位的状态向右移一位,RSTM120使M120~M137复位。
6-保持及结束指令
(1)S——操作保持置位指令:使辅助继电器接通并自锁。
(2)R——操作保持复位指令:使辅助继电器的自锁释放。
(3)END——程序结束指令:用于程序的终了,可缩短工作周期。以F1-40MR为例,它的总程序步有890步,若不写END指令,CPU将从0步一直查询到890步才算完成一个工作周期;如有END指令,则查询到END后,就结束此周期开始下一周期。
在程序调试过程中,为了便于分步调试,可在程序中插入几个END指令,在确认前面的程序动作正确无误之后,再依次删除END指令。
PLC除以上基本指令外,还有一些别的指令,可查阅资料了解。
5-3梯形图和语句表
5-3-1梯形图
尽管PLC的编程语言很多,但目前绝大多数PLC都是以梯形图和语句表作为主要编程语言。梯形图和语句表是相互联系和相互产生的。根据不同的PLC可采用梯形图或语句表编程,在绘制梯形图时,一般应遵循以下规则。