(一)PLC的基本结构
PLC发展至今,已经有了多种形式,而且功能也不尽相同。按PLC的I/O点数,一般可将其分为小型PLC、中型PLC和大型PLC。
小型PLC(图2-3)的功能一般以CPU模块自带开关量控制为主,某些型号也带有少量的模拟量端口,本身自有RS-485或RS-232通信接口,可以附加少量(8个以下)功能I/O扩展模块。其总I/O点数一般在256点以下,用户程序存储器容量一般在4~16KB左右。这类PLC的特点是价格低廉、体积小巧,适合于控制单台设备和开发机电一体化产品,如单机运动控制、顺序控制、过程控制等。
中型PLC开始采用全模块化结构,即电源模块、CPU模块、数字量模块、模拟量模块、温度模块、网络模块、特殊功能模块等,其I/O点数一般在256~2048点之间,用户程序存储器容量一般在8~16KB以上。中型PLC不仅具有开关量和模拟量的控制功能,还具有更强的数字计算能力,它的通信功能和模拟量处理功能更强大,适用于更复杂的逻辑控制系统以及连续生产线的过程控制系统场合。
大型PLC的I/O点数在2048点以上,用户程序储存器容量一般在64KB以上。大型PLC具有复杂计算、控制和调节的能力以及强大的网络结构和通信联网能力,还具有冗余能力(包括处理器冗余、电源冗余等)。大型PLC配备多种智能模块和特殊功能模块,适用于设备自动化控制、过程自动化控制和过程监控系统。
无论何种类型的PLC,其基本结构大致相同,如图2-3所示,主要由几个基本模块组成:嵌入式微处理器模块及其存储器、电源、输入/输出(I/O)模块和外部编程设备等。
PLC操作简单。在一个PLC控制系统中,I/O模块同现场设备采用物理连接,这些现场设备可以是数字量或模拟量的输入/输出设备,如限位开关、压力传感器、按钮、电磁阀等。I/O模块是联系CPU同外部信号(输入)和控制设备(输出)之间的桥梁。
I/O模块提供多个接口用于接收各种输入信号或是将指令传递给外部设备。输入模块用来接收从按钮、限位开关、模拟传感器、选择开关、数字拨码开关和压力继电器等来的输入信号;输出模块用来控制电磁阀、指示灯、位置阀、接触器、数字显示装置和报警装置等的输出设备。PLC的电源在整个系统中起着十分重要的作用,它为整个CPU系统的运行提供所需电压,因此,对其要求需运行良好、可靠且波动范围小。
图2-3 PLC控制系统示意图
编程设备用来生成用户程序,并对它进行编辑、检查和修改,最终下载到PLC的存储器内,实现逻辑控制。通常使用个人计算机或手持式编程器作为编程设备。
(二)PLC的工作原理
当PLC投入运行后,其工作过程一般分为三个阶段,即输入采样、用户程序执行和输出刷新三个阶段。完成上述三个阶段称作一个扫描周期。在整个运行期间,PLC的CPU以一定的扫描速度重复执行上述三个阶段,反复不停地分阶段处理各种不同的任务。PLC扫描过程如图2-4所示。
图2-4 PLC扫描过程
1.输入采样阶段
在输入采样阶段,PLC以扫描方式依次地读入所有输入状态和数据,并将它们存入I/O映像区中相应的单元内。输入采样结束后,转入用户程序执行和输出刷新阶段。在这两个阶段中,即使输入状态和数据发生变化,I/O映像区中的相应单元的状态和数据也不会改变。因此,如果输入是脉冲信号,则该脉冲信号的宽度必须大于一个扫描周期,才能保证在任何情况下,该输入均能被读入。
2.用户程序执行阶段
在用户程序执行阶段,PLC总是按由上而下的顺序依次地扫描用户程序(梯形图)。在扫描每一条梯形图时,又总是先扫描梯形图左边的由各触点构成的控制电路,并按先左后右、先上后下的顺序对由触点构成的控制电路进行逻辑运算,然后根据逻辑运算的结果,刷新该逻辑线圈在系统RAM存储区中对应位的状态;或者刷新该输出线圈在I/O映像区中对应位的状态;或者确定是否要执行该梯形图所规定的特殊功能指令。即在用户程序执行过程中,只有输入点在I/O映像区内的状态和数据不会发生变化,而其他输出点和软设备在I/O映像区或系统RAM存储区内的状态和数据都有可能发生变化,而且排在上面的梯形图,其程序执行结果会对排在下面的凡是用到这些线圈或数据的梯形图起作用;相反,排在下面的梯形图,其被刷新的逻辑线圈的状态或数据只能到下一个扫描周期才能对排在其上面的程序起作用。
在程序执行的过程中如果使用立即I/O指令,则可以直接存取I/O点,即使用I/O指令的话,输入过程影像寄存器的值不会被更新,程序直接从I/O模块取值,输出过程影像寄存器会被立即更新,这与立即输入有些区别。(www.xing528.com)
3.输出刷新阶段
当扫描用户程序结束后,PLC就进入输出刷新阶段。在此期间,CPU按照I/O映像区内对应的状态和数据刷新所有的输出锁存电路,再经输出电路驱动相应的外设。这时才是PLC的真正输出。
(三)PLC的编程语言
PLC的编程语言指的是用户与PLC进行信息交换的方法。最常用的三种语言结构是梯形图(Ladder)语言、布尔(Boolean)语言和功能图(Grafcet)。虽然对于不同类型的PLC,它们每一种编程语言的结构相似,但不同的制造商提供的应用方式还是有所区别,只是这些差别较少,并且容易理解。PLC中最常用的语言是梯形图语言。
梯形图语言是一种以图形符号及其在图中的相互关系表示控制关系的编程语言,是从继电器电路图演变过来的。其特点是与电气操作原理图相对应,具有直观性和对应性,而且与原有继电器控制相一致,电气设计人员易于掌握。然而,与继电器控制不同的是,梯形图中的能流不是实际意义的电流,内部的继电器也不是实际存在的继电器,应用时,需要与原有继电器控制的概念区别对待。图2-5所示为某继电器电路图及对应梯形图。
图2-5b中XO对应常开触点SB1,X1对应继电器KM,YO则对应常闭触点SB2。按下按钮SB1,X0变为ON,其常开触点接通,YO的线圈得电并自锁,实现电路保持通电。按下按钮SB2,X1变为ON,其常闭触点断开,使继电器KM线圈失电,整个电路断电。
图2-5 继电器电路图及对应梯形图
梯形图由常开触点、常闭触点、线圈和用方框表示的功能块组成。触点代表逻辑输入条件,如外部的开关、按钮和内部条件等。线圈通常代表逻辑输出结果,用来控制外部的指示灯、交流接触器和内部的输出条件等。功能块用来表示定时器、计数器或者数学运算等附加指令。
使用梯形图语言编写程序时,需将PLC中参与逻辑组合的元件看成和继电器一样,具有常开、常闭触点及线圈,且线圈的得电和失电将导致触点的相应动作;再用母线代替电源线,用能流的概念来代替继电器电路中的电流概念,使用绘制继电器电路图类似的思路绘出梯形图。PLC中的继电器等编程元件并不是真实的物理元件,而只是计算机存储器中一定的位,它的所谓接通不过是相应存储单元置“1”或复“0”而已。
用梯形图编程时,应遵守以下基本规则。
(1)梯形图两侧的垂直公共线称为公共母线。每一逻辑行总是始于左母线,然后是触点的连接,最后终止于线圈或右母线(右母线可以不画出)。左母线与线圈之间一定要有触点,而线圈与右母线之间则不能有任何触点。
(2)一般情况下,在梯形图中同一线圈只能出现一次,而触点则可以无限次引用。只有在某些含有跳转指令或步进指令的梯形图中,才允许双线圈输出。
(3)接点应画在水平线上,不应画在垂直线上,如图2-6a中的接点5与其他接点间的关系不能识别。对此类桥式电路,应按从左到右,从上到下的单向性原则,单独画出所有的电路,如图2-6b所示。
图2-6 正确与错误梯形图对比
(4)有几个串联电路相并联时,应将串联触点多的回路放在上方,如图2-7a所示;在有几个并联电路相串联时,应将并联触点多的回路放在左方,如图2-7b所示。这样所编制的程序简洁明了,语句较少。
图2-7 串、并联电路梯形图
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。