第5章 可编程序控制器PLC.ppt
可编程序控制器,编程语言和基本指令,可编程控制器应用的编程基础,可编程序控制器应用系统举例,可编程序控制器概述,华南理工大学,,返回,一、什么是PLC,PLC是一种专门用于工业控制的计算机。,早期的PLC是用来替代继电器、接触器控制的。它主要用于顺序控制,只能实现逻辑运算。因此,被称为可编程逻辑控制器(Programmablelogiccontroller,略写PLC,随着电子技术、计算机技术的迅速发展,可编程控制器的功能已远远超出了顺序控制的范围。被称为可编程控制器(Programmablecontroller,略写PC。为区别于PersonalComputerPC,故沿用PLC这个略写。,概述,与继电接触器控制相比,PLC提供了随控制要求而改变的“软接线网络”。,1、当控制对象或生产工艺流程改变时,通过改变程序来改变控制关系,省时省力。,2、控制过程不是依靠继电器硬件机械接点动作来完成,而是通过软件编程实施。故障率低,可靠性高。,3、具有自故障诊断功能,一旦发生故障能很快准确定位。而不必象继电器系统那样定期更换继电器等。,4、体积小,重量轻,抗干扰能力强。,与微机相比,1、独具风格地采用了与继电接触器控制原理相类的梯形图为基础的编程语言。,2、PLC的输入输出口可以与生产设备直接相连。系统的扩展容易,抗干扰能力和可靠性比一般微机高。,二、PLC的基本组成,PLC是以CPU为核心的电子系统,是一种工业控制用的专用计算机。,,PLC,,硬件,软件,CPU(中央处理器),存储器,,程序存储器,数据存储器,接口电路,,输入接口电路,输出接口电路,编程接口电路,其它接口电路,,系统软件,用户程序,三、结构及工作原理,1.PLC结构示意图,是PLC的核心组成部分,与通用计算机一样是PLC的控制运算中心。,2.各组成部分的作用,它主要完成以下几部分工作,1将各种输入信号取入存储器。2编译、执行指令。3把结果送到输出端。4响应各种外部设备的请求。,RAM存储各种暂存数据、中间结果、用户正调试的程序。ROM存放监控程序和用户已调试好的程序。,存储器是存储程序和数据的物理实体,用于存放PLC的系统程序、用户程序、逻辑变量、输入/输出状态映象以及各程序、数据信息。,存储器分为只读存储器(ROM)读写存储器(RAM),输入接口电路把外设状态转为PLC可以接受的电平状态。,输出接口电路把输出存储单元的状态转化为开关的闭合或断开。,编程接口电路和编程器相连。,其它接口电路打印机、E2PROM写入器、图形监控系统等外部设备相连。,是指PLC工作所用的各种程序的集合。它包括系统软件和应用软件两大部分。,1)、系统软件,由生产厂家编制的用来管理、协调PLC的各部分工作,充分发挥PLC的硬件功能,方便用户使用的通用程序。通常固化在ROM中与机器的其他硬件一起提供给用户。,2)、应用软件,用户根据系统控制的需要使用PLC的程序语言编写的。,PLC的软件,3、PLC的工作原理,1)PLC的工作方式采用周期性循环扫描的工作放式。,CPU从第一条指令开始执行,遇到结束符又返回第一条,不断循环。,,输入/输出点数I/O点数。输入输出端子数。小型机几十个,中型机几百个,大型机上千个。重要数据,四、主要技术性能,扫描速度。扫描1000或1步用户程序所需要的时间。单位ms/1000步或s/步,用户程序存储容量。存储用户程序的多少。程序指令按“步”存储,一“步”一个地址单元,一条指令往往不止“一步”,一个地址单元两个字节。,4.指令条数。,编程元件输入输出继电器、辅助继电器、定时器、计数器、寄存器等。,编程元件数量常用“点数”表示。重要数据,PLC的继电器又称“软继电器”,其功能类似继电接触器控制系统的继电器。当存储单元为“1”时,表示相应继电器的线圈接通,其常开触点闭合,常闭触点断开。,5.编程元件的种类和数量。,,PLC编程语言和基本指令,PLC是采用软件编程的方式来实现输入对输出的逻辑控制功能的。,PLC的编程就是将其内部各种对应的编程元件的状态按控制系统的要求进行组合和运算,以实现一定的逻辑控制功能。,编程语言就是在编程中使用到的,描述各编程元件及逻辑关系的符号和语句。,指令表(助记符)语言(STL)梯形图语言(LAD)高级语言,助记符语言类似于微机中的汇编语言。梯形图语言沿袭了传统的控制图。直观明了,易于掌握。,目前各厂家所生产的PLC编程语言是互不兼容的,但按照其表达形式均可分为以下几种,以下介绍以西门子S7-200系列的PLC产品为例。,1、梯形图,特点,1)梯形图按自上而下、从左到右的顺序排列。每一个继电器线圈为一个逻辑行,称为一层阶梯。,2)梯形图中的继电器并不是真实的物理继电器,而是PC内部的编程元件,它实质上是变量存储器中的位触发器,常称之为“软继电器”,相应触发器状态为“1”时,表示该继电器线圈通电,其动合触点闭合,动断触点断开。,2、语句表,NETWORK1LDI0.0OQ0.0ANI0.1Q0.0,程序输入法,1、专用编程器由PLC生产厂家提供。,简易编程器只能用语句表编程,现场使用方便,体积小,价格便宜。,图形编程器可直接输入梯形图程序,也可输入语句表,编程方便,价格贵。,2、计算机软件编程,用计算机编程要有专门的编程软件,用户程序用梯形图或语句表编写均可,再用专门的电缆将程序送入PLC中。,一、西门子S7-200系列PLC的编程元件极其功能,PLC的每一个编程元件对应其内部存储器中的一个或几个存储单元,所有编程元件就构成了PLC的数据存储空间。,西门子S7-200系列PLC的数据空间由数据存储器和数据体两部分组成。数据存储器中的每一位相当于一个“软继电器”;数据体则对应一些复杂功能元件,如定时器、计数器等。,把这些元件按其功能用途分类,用不同的字母表示,整个数据空间就分为若干个存储区,每个存储区对应某类编程元件。,用字母V表示,通常用于存放数据,V0V1023共1K字节,均可读可写。,1K1024210,1、变量存储器,西门子S7-200系列中CPU212型号的常用编程元件有,用字母I表示,2、输入映象寄存器,共8个字节,64位,可读可写,相当于64个继电器元件。其中只有8位I0.0I0.7可外接,直接受现场信号的控制。这8位又叫输入继电器。,当SW1闭合时,对应存储单元为“1”,相当于I0.0的线圈通电,I0.0常开触点闭合,常闭触点打开。,当SW1断开时,对应存储单元为“0”,相当于I0.0的线圈断电,I0.0常开触点打开常闭触点闭合。,其它各位可作为内部存储器(中间继电器)使用。,3、输出映象寄存器,共8个字节,64位,可读可写,相当于64个继电器元件。其中只有6点Q0.0Q0.5可外接负载,每点提供一个真实的常开触点给负载使用。这6个点又称输出继电器。,当Q0.0对应的存储单元为“1”时,相当于Q0.0线圈通电常开触点闭合接触器线圈KM1通电,当Q0.0对应的存储单元为“0”时,相当于Q0.0线圈断电常开触点打开接触器线圈KM1断电,用字母Q表示,PLC在运行时对输入输出均采用集中处理方式。即,程序执行前,集中读入外部输入点的状态,程序执行时,不再理会输入点的状态的变化。,输出点,程序执行时,不断更新输出继电器的状态,但不立即传送到外接输出点,到扫描周期结束时才集中输出。,输入点,4、内部存储器用字母M表示。,共16个字节,128位,可读可写。作中间继电器用。,5、特殊存储器用字母SM表示。,只读区SM0.0-SM29.7由PLC更新,用户可取用它的状态,但不能改变它。,可写可读区SM30.0-SM45.7常用来提供通讯服务、高速计数器、定时中断等功能。,分为只读区和可写可读区,6、定时器,,用字母T表示,T0T63共64个,定时器包括,(1)定时条件控制定时器是否工作(2)定时器预置值指定定时时间(3)定时器当前值记录定时时间(4)定时继电器当当前值大于预置值时,定时时间到,其线圈通电,常开触点闭合,常闭触点打开。,二、梯形图的规则,(1)梯形图按从左到右、从上到下的顺序书写。,(2)梯形图的最左边为起始母线。每一逻辑行必须从起始母线开始,每一逻辑行最右边为继电器线圈、计数器、定时器或指令作为结束。,(3)同一继电器、计数器、定时器的触点可多次反复使用。,(5)程序结束行用“MEND”表示。,代表各种指令和功能定时器、计数器和算术操作等,(4)梯形图中,接点可串可并,但输出只能并不能串。,三、指令表及PLC指令,各个厂家生产的PLC产品的指令系统大同小异。编程方法也类似。,指令表也称语句表。PLC指令同微机的汇编语言相似,采用助记符表达形式。S7-200系列的指令集包括130多条指令。,按指令的功能可分为,基本指令数据传送指令算术运算指令位移指令位操作指令数据变换指令转移控制指令特殊控制指令,1、LD取指令从母线开始一个新逻辑行时,或开始一个逻辑块时,输入的第一条指令。即从母线或分支电路开始,取用常开触点。,基本指令,LDI0.0,LDI立即取指令。,2、LDN取反指令从母线开始一个新逻辑行时,或开始一个逻辑块时,输入的第一条指令。即从母线或分支电路开始,取用常闭触点。,LDNI0.1,LDNI立即取反指令。,,3、A与指令,串联单个常开触点。即用于单个常开触点与其左边电路的串联。,4、AN与反指令,串联单个常闭触点。即用于单个常闭触点与其左边电路的串联。,A、AN均为串联指令,串联触点的个数不受限制,AI立即与指令。,ANI立即与反指令。,5、O或指令,并联单个常开触点。即用于单个常开触点与其前面电路的并联。,LDI0.0,OQ0.0,6、ON或反指令,并联单个常闭触点。即用于单个常闭触点与其前面电路的并联。,LDI0.0,ONM0.0,AI0.1,LDI0.0,ONM0.0,OI立即或指令。,ONI立即或反指令。,7、ALD(andload指令把两个并联电路块串联起来,并联电路块指两个及两个以上触点并联而成的电路块。,注意使用ALD前,应先完成并联电路块的内部连接;并联电路块中各支路的起始触点用LD类指令。,,ALD,8、OLD(orload指令把两个串联电路块并联起来,串联电路块指两个及两个以上触点串联而成的电路块。,注意使用OLD前,应先完成串联电路块的内部连接;串联电路块中各支路的起始触点用LD类指令。,,,OLD,OLD,例ALD、OLD指令的使用,LDI0.0,LDNM0.0OQ0.0,ALD,LDM0.1ANQ0.1,OLD,LDI0.0OI0.1,LDI0.2AI0.3LDNI0.4AI0.5,OLD,OI0.6,ALD,OI0.3,ALD和OLD都是逻辑堆栈指令,它们没有操作数,一定要和LD、A、O类指令结合使用,其操作结果对堆栈会产生影响。,S7-200系列的逻辑堆栈为9位深、1位宽,LD、A、O指令对堆栈都有影响,iv8,LD,A,aiv0*nV,O,aiv0nV,,ALD,aiv0*iv1,OLD,aiv0iv1,9、置位指令S和复位指令R,格式SS-BITN,功能将从S-BIT开始的N个元件置“1”并保持。,格式RS-BITN,功能将从S-BIT开始的N个元件置“0”并保持。,其中,S-BIT可为I、Q、M、SM、T、C、V各存储区的元件,而N常用常数,规定十进制常数前加“K”表示;十六进制常数前加“KH”表示。,,,当I0.0一接通,M0.0就置“1”(接通)并保持接通状态,即使I0.0断开,M0.0也保持接通。,当I0.1一接通,M0.0就复位,即断开,并保持断开状态,即使I0.1断开,M0.0也保持断开。,10、定时器指令TON、TONR,TONTPT其中T范围T32-T63TONRTPT其中T范围T0-T31,梯形图符号,当IN为“1”时,开始定时,定时时间PT定时基准时间。定时时间到,定时器线圈通电,其常开触点闭合,常闭触点断开。,TON与TONR的区别当IN0,TON复位,而TONR则保持当前线圈及触点状态不变,除非用复位指令。,格式,定时器定时是通过计数来进行的,每计一个数的时间称为定时时间基准,则,定时时间计数时间基准,预置值基准,最大计数值是32767(16位正数),1mST32T032.767S,10mST33-T36T1-T4327.67S,100mST37-T63T5-T313276.7S,11、指令输出指令(线圈驱动指令),功能将操作结果送到输出寄存器,如前定时器电路,LDI2.0TONT33300LDT33Q0.0,程序运行到输出指令时,可视为一个梯级的结束。,12、MEND指令,无条件结束指令。在主程序末尾必须使用MEND指令来结束。,梯形图符号,指令格式MEND,例,LDI0.0ANT33,LDM0.0AI0.4ONI0.2AI0.5OLD,LDNQ0.1OCOALD,OQ0.1,Q0.0,AI0.6M1.0,ANI0.7TONT34K1500,,,用以上指令,可以构造出任意的逻辑组合关系,但应注意“上沉下轻”,“左沉右轻”的原则,化简电路,1、并联电路,单个触点放下面,上沉下轻,简短,好,繁,不好,编程中应注意的几个问题,2、串联电路,单个触点放右边,“左沉右轻”,LDNM0.0OQ0.0AI0.0,LDI0.0LDNM0.0OQ0.0ALD,好,不好,3.避免出现无法编程的梯形图,,,可编程序控制器应用的编程基础,1、起动、保持、停止电路,LDI0.0OQ0.0ANI0.1Q0.0MEND,I/O分配I0.0起动I0.1停机Q0.0KM,SB0起动按钮SB1停机按钮KM主触头接主电路,注意在PLC中无论停机按钮或热继电器的触头,一般都习惯用常开触点,以利于编程的统一。,若按继电接触控制系统习惯停机按钮或热继电器的触头用常闭按钮,此时梯形图应改为,∵在未按下SB1时,SB1闭合,即已和PLC的电源接通,此时I0.1通电,其常开触点闭合。按下SB1时,I0.1线圈才断电,I0.1常开触点恢复断开。,还可以有另一种方法,用置位、复位指令来实现,,,2、双向控制电路,用两个输出继电器,控制一个被控对象的两种相反的工作状态。,例如异步电动机正反转电路,(1)继电接触器控制电路,PLC外部接线图,SBF正转起动SBR反转起动SB1停机KMF正转线圈KMR反转线圈,I/O分配I0.0正转起动I0.1反转起动I0.2停机,Q0.0KMFQ0.1KMR,(2)PLC电路,梯形图,语句表,Network1LDI0.0OQ0.0ANI0.2ANI0.1ANQ0.1Q0.0,Network2LDI0.1OQ0.1ANI0.2ANI0.0ANQ0.0Q0.1,MEND,其中I0.0、I0.0的常闭触点起机械互锁作用Q0.0、Q0.1的常闭触点实现电器互锁,在PLC外部还用了KMF、KMR的常闭触点构成互锁,三保险保证KMF、KMR的线圈不会同时通电,3、顺序控制电路,例如两台异步电动机顺序起动,同时停机。,M1、M2为两台异步电动机,按下起动按钮SB2后,M1起动,延时60S后,M2才起动。按停机按钮SB1后,两机同时停止。,(1)继电接触器控制电路,SB1停机SB2起动KM1电机M1KM2电机M2,(2)PLC电路,PLC梯形图,I/O分配SB1I0.0停机SB2I0.1起动KM1Q0.0M1KM1Q0.1M2,语句表,NETWORK1LDI0.1OQ0.0ANI0.0Q0.0ANQ0.1TONT33K6000,NETWORK2LDT33OQ0.1ANI0.0Q0.1MEND,T33为10mS定时器,故预置值PT6000定时时间10mS600060S,,4、设计举例经验设计法,例送料小车控制电路,工作要求STa、Stb分别为左右行限位开关。小车碰到Sta自动停下来装料,10S后装毕自动开始右行。碰到Stb自动停下来卸料,15S后卸毕自动往右行。往复不断。,基本电路采用双向控制电路,I/O分配SBF(左行手动按钮)I0.0KMF(左行线圈)Q0.0SBR(右行手动按钮)I0.1KMR(右行线圈)Q0.1SB1(手动停止按钮)I0.2装料Q0.2STa(左行限位)I0.3卸料Q0.3STb(右行限位)I0.4,左行,右行,装料,卸料,延时10S,延时15S,碰到左限位开关自动停止左行,卸料完毕后自动左行,装料完毕后自动右行,碰到右限位开关自动停止右行,碰到左限位开关开始装料并延时,碰到右限位开关开始卸料并延时,可编程序控制器应用系统举例,一、某机械传动设备自动操作控制设计,工作过程下图是一台由左工作台搬往右工作台的垂直、水平运动的工件取放机械传动设备示意图。上升、下降、左行、右行、夹紧、放松均由相应的电磁阀实现,上、下、左、右有四个限位开关限位。当按下起动按钮SB1时,则设备由原点下降;当下限位开关STa闭合,进行工件夹紧操作;延时1.7s后上升;当上限位开关STb闭合,就开始右行;当右限位开关STc闭合,开始下降;当下限位开关STa又闭合,进行放松工件操作;延时1.5s后又上升;当上限位开关STb又闭合,就开始左行;当左限位开关STd和上限位开关STb同时闭合时,则回到原点,完成一个工作循环。再按起动按钮,则重复以上过程。,机械传动设备示意图,PLC的I/O接线图,起动按钮SB1、限位开关STa、STb、STc、STd分别由I0.0~I0.4接入PLC;Q0.0控制下降,Q0.2、Q0.3、Q0.4分别控制上升、右行、左行动作,夹紧、松开由Q0.1控制,Q0.1通电则执行“夹紧”操作,断电则执行“松开”。PLC的I/O接线如图所示,其中在M0.2步将工件夹紧后,在M0.3~M0.5步应保持,到M0.6步才将工件松开(传送到位),功能表图,梯形图,语句表,