第一章一、可编程控制器的产生及定义PLC概述①1969年美国数字设备公司(DEC)研制出世界第一台可编程控制器,并成功地应用在美国通用汽车公司(GM)的生产线上。但当时只能进行逻辑运算,故称为可编程逻辑控制器,简称PLC(programmablelogiccontroller)。②70年代后期,随着微电子技术和计算机技术的迅猛发展,使PLC从开关量的逻辑控制扩展到数字控制及生产过程控制域,真正成为一种电子计算机工业控制装置,故称为可编程控制器,简称PC(programmablecontroller)。但由于PC容易与个人计算机(personalcomputer)相混淆,故人们仍习惯地用PLC作为可编程控制器的缩写。③1985年国际电工委员会(IEC)对PLC的定义如下:可编程控制器是一种进行数字运算的电子系统,是专为在工业环境下的应用而设计的工业控制器,它采用了可以编程序的存储器,用来在其内部存储执行逻辑运算、顺序控制、定时、计数和算术运算等操作的指令,并通过数字或模拟式的输入和输出,控制各种类型机械的生产过程。④PLC是由继电器逻辑控制系统发展而来,所以它在数学处理、顺序控制方面具有一定优势。继电器在控制系统中主要起两种作用:(1)逻辑运算(2)弱电控制强电。⑤PLC是集自动控制技术、计算机技术和通讯技术于一体的一种新型工业控制装置,已跃居工业自动化三大支柱(PLC、ROBOT、CAD/CAM)的首位。二、可编程控制器的分类及特点(一)分类(1)从组成结构形式分①一体化整体式PLC②模块式结构化PLC(2)按I/O点数及内存容量分①超小型PLC②小型PLC③中型PLC④大型PLC⑤超大型PLC(3)按输出形式分①继电器输出为有触点输出方式,适用于低频大功率直流或交流负载1②晶体管输出为无触点输出方式,适用于高频小功率直流负载③晶闸管输出为无触点输出方式,适用于高速大功率交流负载2(二)特点①可靠性高、抗干扰能力强②编程简单、使用方便③设计、安装容易,维护工作量少④功能完善、通用性好,可实现三电一体化PLC将电控(逻辑控制)、电仪(过程控制)和电结(运动控制)这三电集于一体。⑤体积小、能耗低⑥性能价格比高三、可编程控制器的应用①开关量的逻辑控制②位置控制③过程控制④数据处理⑤通信联网⑥CIMS的应用四、PLC控制系统的分类(一)、集中式控制系统集中式控制系统是用一个PLC控制一台或多个被控设备。主要用于输入、输出点数较少,各被控设备所处的位置比较近,且相互间的动作有一定联系的场合。其特点是控制结构简单。3(二)、远程式控制系统远程式控制系统是指控制单元远离控制现场,PLC通过通信电缆与被控设备进行信息传递。该系统一般用于被控设备十分分散,或工作环境比较恶劣的场合。其特点是需要采用远程通信模块,提高了系统的成本和复杂性。(三)分布式控制系统分布式控制系统即采用几台小型PLC分别独立控制某些被控设备,然后再用通信线将几台PLC连接起来,并用上位机进行管理。该系统多用于有多台被控设备的大型控制系统,其各被控设备之间有数据信息传送的场合。其特点是系统灵活性强、控制范围大,但需要增加用于通信的硬件和软件,系统的复杂性也更大。4第二章2.12.1.1PLC的基本组成可编程控制器原理PLC的组成与基本结构PLC主要由中央处理单元、输入接口、输出接口、通信接口等部分组成,其中CPU是PLC的核心,I/O部件是连接现场设备与CPU之间的接口电路,通信接口用于与编程器和上位机连接。对于整体式PLC,所有部件都装在同一机壳内;对于模块式PLC,各功能部件独立封装,称为模块或模板,各模块通过总线连接,安装在机架或导轨上。不同厂商生产的不同系列产品在每个机架上可插放的模块数是不同的,一般为3-10块。可扩展的机架数也不同,一般为2-8个机架。基本机架与扩展机架之间的距离不宜太长,一般不超过10M.。2.1.2PLC各组成部分1、中央处理单元CPUCPU通过输入装置读入外设的状态,由用户程序去处理,并根据处理结果通过输出装置去控制外设。一般的中型可编程控制器多为双微处理器系统,一个是字处理器,它是主处理器,由它处理字节操作指令,控制系统总线,内部计数器,内部定时器,监视扫描时间,统一管理编程接口,同时协调位处理器及输入输出。另一个为位处理器,也称布尔处理器,它是从5处理器,它的主要作用是处理位操作指令和在机器操作系统的管理下实现PLC编程语言向机器语言转换。CPU处理速度是指PLC执行1000条基本指令所花费的时间。2、存储器存储器主要存放系统程序,用户程序及工作数据。PLC所用的存储器基本上由PROM,EPROM,EEPROM及RAM等组成。3、输入/输出部件输入/输出部件又称I/O模块。PLC通过I/O接口可以检测被控对象或被控生产过程的各种参数,以这些现场数据作为PLC对控对象进行控制的信息依据。同时PLC又通过I/O接口将处理结果送给被控设备或工业生产过程,以实现控制。4、编程装置和编程软件PLC是以顺序执行存储器中的程序来完成其控制功能的。5、电源部件62.2(一)PLC的循环扫描PLC的基本工作原理2.2.1PLC的循环扫描工作过程PLC的CPU是采用分时操作的原理,每一时刻执行一个操作,随着时间的延伸一个动作接一个动作顺序地进行,这种分时操作进程称为CPU对程序的扫描。PLC的用户程序由若干条指令组成,指令在存储器中按序号顺序排列。CPU从第一条指令开始,顺序逐条地执行用户程序,直到用户程序结束,然后返回第一条指令开始新的一轮扫描。(二)PLC工作过程1、公共操作公共操作是在每次扫描程序前进行的自检。2、数据I/O操作数据I/O操作也称为I/O状态刷新。它包括两种操作:①采样输入信号,即刷新输入状态表的内容②送出处理结果,即用输出状态表的内容刷新输出电路3、执行用户程序操作4、处理外设请求操作外设的请求命令包括操作人员的介入和硬件设备的中断2.2.2PLC的I/O滞后现象造成I/O响应滞后的原因:①扫描方式②电路惯性输入滤波时间常数和输出继电器触点的机械滞后③与程序设计安排有关72.32.3.1梯形图编程(一)PLC的编程特点PLC的编程语言1、程序的执行顺序两图实现相同的功能。当IS1闭合时,1Y1、1Y2输出。系统上电之后,当1S1闭合时,继电器梯形图中的1Y1、1Y2会同时得电,若不考虑继电器触点的延时,则1Y1、1Y2会同时输出。但在PLC梯形图中,因为PLC的程序是顺序扫描执行的,PLC的指令按从上向下,从左向右的扫描顺序执行,整个PLC的程序不断循环往复。PLC的“继电器”的动作顺序由PLC的扫描顺序和在梯形图中的位置决定,因此,当1S1闭合时,1Y1先输出而1Y2后输出。即继电器采用并行的执行方式,而PLC则采用串行的执行方式。82、继电器自身的延时效应传统的继电器的触点在线圈得电后动作时有一个微小的延时,并且常开和常闭触点的动作之间有一微小的时间差。而PLC中的继电器都为软继电器,不会有延时效应,当然,这里忽略了PLC的扫描时间。3、PLC中的软继电器每个继电器有无数个常开和常闭触点。(二)PLC编程的基本原则(1)每个梯形图网络由多个梯级组成,每个输出元素可构成一个梯级,每个梯级可由多个支路组成。(2)梯形图每一行都是从左母线开始,而且输出线圈接在最右边,输入触点不能放在输出线圈的右边。(3)输出线圈不能直接与左母线连接。(4)多个的输出线圈可以并联输出。(5)在一个程序中各输出处同一编号的输出线圈若使用两次9称为“双线圈输出”。双线圈输出容易引起误动作,禁止使用。(6)PLC梯形图中,外部输入/输出继电器、内部继电器、定时器、计数器等器件的触点可多次重复使用。(7)梯形图中串联或并联的触点的个数没有限制,可无限次的使用。(8)在用梯形图编程时,只有在一个梯级编制完整后才能继续后面的程序编制。(9)梯形图程序运行时其执行顺序是按从左到右,从上到下的原则。(二)编程技巧及原则“上重下轻,左重右轻,避免混联”(1)梯形图应把串联触点较多的电路放在梯形图上方(2)梯形图应把并联触点较多的电路放在梯形图最左边(3)为了输入程序方便操作,可以把一些梯形图的形式作适当变换2.3.2语句表编程PLC的语句:操作码+操作数操作码用来指定要执行的功能,告诉CPU该进行什么操作;操作数内包含为执行该操作所必需的信息,告诉CPU用什么地方的数据来执行此操作。操作数的分配原则:(1)为了让CPU区别不同的编程元素,每个独立的元素应指定一个互不重复的地址(2)所指定的地址必须在该型机器允许的范围之内。102.3.3其它编程语言功能图编程.高级编程语言(C语言.Pascal语言等)编程语言语梯功句形能(STL)(LAD)图熟悉布尔代数逻辑图的编写逻辑控制程序用户(FBD)用户类言编程的用户图习惯电路图的用户应用空间要求上最优编写逻辑控制程序表愿意用类似于机器码语程序在运行时间和存贮SCL(结构控用高级语言。如PASCAL数据处理任务程序制语言)可选或C语言编程的用户软件包S7Graph(顺有技术背景,没有PLC编以顺序过程的描述很方序控制)可选程经验的用户软件包S7HiGraph有技术背景,没有PLC编以异步非顺序过程的描述很方便(状态图形)程经验的用户可选软件包CFC(连续功有技术背景,没有PLC编适用于连续过程的描述能图)可选软程经验的用户件包便11第三章SIMATICS7-300PLC系统特性及硬件构成3.1S7-300PLC系统结构3.1.1S7-300PLC的组成主要组成部分有导轨(RACK)、电源模块(PS)、中央处理单元CPU模块、接口模块(IM)、信号模块(SM)、功能模块(FM)等,通过MPI网的接口直接与编程器PG、操作员面板OP和其它S7PLC相连。3.1.2S7-300的扩展能力CPU314一个机架上最多只能再安装八个信号模块或功能模块,最多可以扩展为四个机架。中央处理单元总是在0机架的2号槽位上,1号槽安装电源模块,3号槽总是安装接口模块,槽号4至11,可自由分配信号模块、功能块。3.1.3S7-300模块地址的确定数字I/O模块每个槽划分为4Byte(等于32个I/O点),模拟I/O模块每个槽划分为16Byte(等于8个模拟量通道),每个模拟量输入或输出通道的地址总是一个字地址。模板机架起始地址数字0量模拟量数字1量模拟量数字2量模拟量数字3量模拟量IM96100104108112116120124640656672688704720736752IM6468727680848892512528544560576592608624IM3236404448525660384400416432448464480496PSCPUIM048121620242825627228830432033635236812345槽号6789101112怎样确定信号模板的地址(一)确定数字量模板的地址一个数字量模板的输入或输出地址由字节地址和位地址组成。字节地址取决于其模板起始地址。例如:如果一块数字量模板插在第4槽里,其地址分配如下:(二)确定模拟量模板的地址模拟量输入或输出通道的地址总是一个字地址。通道地址取决于模板的起始地址。例如:如果第一块模拟量模板插在第4号槽,其地址分配如下:133.2S7-300PLC存储区简介3.2.1S7-300编程方式简介S7-300PLC的编程软件是STEP7。用户程序由组织块(OB)、功能块(FB,FC)、数据块(DB)构成。OB是系统操作程序与用户应用程序在各种条件下的接口界面,用于控制程序的运行。OB1是主程序循环块,在任何情况下,它都是需要的。功能块(FB,FC)实际上是用户子程序,分为带“记忆”的功能块FB和不带“记忆”的功能块FC。前者有一个数据结构与该功能块的参数表完全相同的数据块(DB)附属于该功能块,并随着功能块的调用而打开,随着功能块的结束而关闭。该附属数据块(DB)叫做背景数据块,存在背景数据块中的数据在FB块结束时继续保持,也即被“记忆”。功能块FC没有背景数据块,当FC完成操作后数据不能保持。数据块(DB)是用户定义的用于存放数据的存储区。S7CPU还提供标准系统功能块(SFB,SFC)。3.2.2S7-300PLC的存储区S7-300CPU有三个基本存储区:(1)系统存储区:RAM类型,用于存放操作数据(I/O、位存储、定时器、计数器等)。(2)装载存储区:物理上是CPU模块中的部分RAM,加上内置的EEPROM或选用的可拆卸FEPROM卡,用于存放用户程序。(3)工作存储区:物理上是占用CPU模块中的部分RAM,其存储内容是CPU运行时,所执行的用户程序单元(逻辑块和功能块)的复制件。CPU程序所能访问的存储区为系统存储区的全部、工作存储区14中的数据块DB、暂时局部数据存储区、外设I/O存储区等。程序可访问的存储区及功能名称存储区存储区功能扫描周期开始,操作系统读取过程输入值并录入表中,在处理过输入(I)输入过程映象表程中,程序使用这些值每个CPU周期,输入存储区在输入映象表中所存放的输入状态值,它们是外设输入存储区头128Byte的映象在扫描周期中,程序计算输出值并存放该表中,在扫描周期结束输出(Q)输出过程映象表后,操作系统从表中读取输出值,并传送到过程输出口,过程输出映象表是外设输出存储区的头128Byte的映象位存储区(M)外设输入(PI)外设输出(PQ)I/O:外设输入I/O:外设输出外设存储区允许直接访问现场设备(物理的或外部的输入和输出),外设存储区可以字节,字和双字格式访问,但不可以位方式访问为定时器提供存储区计时时钟访问该存储区中的计定时器(T)定时器时单元,并以减法更新计时值定时器指令可以访问该存储区和计时单元计数器(C)计数器为计数器提供存储区,计数指令访问该存储区存储位存放程序运算的中间结果15在FB、FC可OB运行时设定。在块变量声明表中声明的暂临时本地数据(L)本地数据堆栈(L堆栈)时变量存在该存储区中,提供空间以传送某些类型参数和存放梯形图中间结果。块结束执行时,临时本地存储区再行分配。不同的CPU提供不同数量的临时本地存储区DB块存放程序数据信息,可被数据块(DB)据块所有逻辑块公用(“共享”数据块)或(被FB特定占用“背景”数据块)3.3S7-300PLC中央处理单元CPU模块3.3.1CPU模块概述中央处理单元CPU的主要特性,包括存储器容量、指令执行时间、最大I/O点数、各类编程元件(位存储器、计数器、定时器、可调用块)数量等。S7-300可编程控制器CPU314的技术数据程序存储量每1K语句执行时间计数器定时器通讯接口编程软件位存储器数据块24K0.3ms64个(C0~C63)计数范围:0~999128个(T0~T127)定时范围:10ms~9990sMPISTEP72048个(MB0~MB255)最多127(DB0保留)大小:最大8KB嵌套深度:8层最多4个机架每个机架的信号模块数:最多8个16应用场合对编程范围和操作处理速度有高要求的大型设备3.3.2CPU模块的方式选择开关和状态指示二极管S7-300的CPU有四种工作方式,通过可卸的专用钥匙控制:(1)RUN-P:可编程运行方式。(2)RUN:运行方式。(3)STOP:停机方式。(4)MRES:CPU清零用钥匙开关进行程序的清除在开始一个新的编程工作时,我们需要将中央处理器进行清零处理。它将很容易地通过操作CPU上的钥匙开关来实现。为此我们必须进行以下的操作步骤:1.接通PLC工作电源,并等待至CPU的自检测运行完成2.转动钥匙开关至MRES位置,并保持这个状态,直至STOP发光二极管从闪动转为常亮状态3.钥匙开关转至STOP位置并迅速转回MRES位置,保持这个状态,STOP发光二极管开始快速闪动4.STOP发光二极管的快速闪动,表示CPU已被清零5.松开钥匙开关,这时钥匙会自动返回STOP位置6.可编程控制器已被清零,并可以传输新的控制程序程序的下传只能是钥匙开关在STOP或RUN-P位置进行3.3.3CPU单元的参数设置(1)时钟存储器S7-300有8个时钟存储器,每个频率都不一样。可以在0-255范围内定义任一字节为时钟存储器字节。Aperiodduration/frequencyisassignedtoeachbitoftheclockmemorybyte:Bit7Periodduration(s):2Frequency(Hz):0.50.62511.2522.55101.610.80.50.40.20.1654321017(2)循环中断参数(3)最长循环时间18(4)MPI参数3.3.4CPU的循环时间计算循环时间是一个程序循环所占用的时间,循环时间由过程映像传送时间、操作系统的执行时间和用户程序的执行时间三大部分组成练习:一、填空题:(1)美国数字设备公司于(((3)PLC以(();另一种是()、((6)PLC的基本组成主要由()、(花费的时间。(8)PLC所用的存储器基本上由()、()等组成。)、()、((7)PLC的处理速度是指PLC执行()两类。)工作方式工作的。)。)方面具有一定优势。)、()等部分组成。)条基本指令所)年研制出世界第一台PLC。)和(2)PLC从组成结构形式上可以分为((4)一般由程序控制的数字电子设备产生的故障常有两种,一种是(5)PLC是由()逻辑控制系统发展而来的,它在((9)PLC运行时,内部要进行一系列操作,大致可分为四大类:(19)操作、()操作。)操作、()操作、()、()个信号模),(10)常用的PLC编程语言有()、(块,最多可扩展为(大不超过(为()个。)等。(11)S7-300PLC314CPU一个机架最多可安装()个机架,机架之间的通讯距离最)个,计数器最多)KB。),最大数字量I/O点数(支持的可保持的定时器最多为((12)CPU314支持的OB、FB、FC、DB的容量均不大于((13)确定机架0的6号槽上SM323范围((14)手编器一般采用(电路。DI8/DO8的地址范围()以及5号槽上SM334)。)语言编辑。AI4/AO2的地址(15)高速、大功率的交流负载,应选用()输出的输出接口(16)PLC产品手册中给出的“存储器类型”和“程序容量”是针对()存储器而言。)、()、()、()、()三大类。(18)S7-300CPU所用的存储区基本上由()、()组成。(19)CPU程序所能访问的存储区为(二、画出下面程序正确的梯形图(17)PLC控制系统分()、暂时局部数据存储区、外设I/O存储区等20三、判断题1、输入继电器只能由外部信号驱动,而不能由内部指令来驱动。(2、输出继电器可以由外部输入信号或PLC内部控制指令来驱动。(3、内部继电器既可以供内部编程使用,又可供外部输出。(计数器等)均可提供无数副常开、常闭触点供编程使用。(5、PLC的I/O地址编号可以随意设定。()))))4、PLC内部的“软继电器”(即由PLC内部的存储单元构成的,包括定时器、答案:1、√2、X3、X4、√5、X21第四章PLC的程序的运行编程语言操作系统:操作系统由PLC的生产厂提供,它支持用户程序用户程序:用户程序是用户为完成特定的控制任务而编写的应用程序梯形图编程(LAD)PLC常用的编程语言语句表编程(STL)功能图编程(FBD)注:对于数字量模块不一定要进行硬件组态,而对于模拟量模块一定要进行硬件组态。4.1指令及其结构指令是程序的最小独立单位,用户程序是由若干条顺序排列的指令构成.4.1.1指令的组成1.语句指令语句指令用助记符表示PLC要完成的操作。22指令:操作码+操作数操作码用来指定要执行的功能,告诉CPU该进行什么操作;操作数内包含为执行该操作所必需的信息,告诉CPU用什么地方的数据来执行此操作。例如:操作码0O=例如:操作码NOTSET2.梯形图指令梯形图指令用图形元素表示PLC要完成的操作。在梯形图指令中,其操作码是用图素表示的,该图素形象表明CPU做什么,其操作数的表示方法与语句指令相同。例如:操作数I0.0I0.1Q0.0操作数有些语句指令不带操作数,因为它们的操作对象是唯一的。梯形图指令也可不带操作数。例如:4.1.2操作数1.标识符及标识参数主标识符(操作数存放的存储器的区域):标识符操作数IQ、PI、PQ、M、T、C、L、DB辅助标识符(操作数的位数长度):X、B、W、D标识参数(操作数在该存储区域内的具体位置)注释:I:输入过程映像存储区Q:输出过程映像存储区PI:外部输入PQ:外部输出23M:位存储区T:定时器C:计数器L:本地数据DB:数据块X:位B:字节W:字D:双字注意:①PLC物理存储器是以字节为单位的。②当操作数长度是字或双字时,标识符后给出的标识参数是字或双字内的最低字节单元号。③当使用宽度是字或双字的地址时,应保证没有生成任何重叠的字节分配,以免造成数据读写错误。2.操作数的表示法物理地址(绝对地址)操作数的表示法符号地址(必须先定义后使用,而且符号名必须是唯一的)关于定义符号地址的几点说明:(一)当你在表中输入符号地址时,应注意以下几点:列符号注意在整个符号表中名字必须唯一。当你确认该区域的输入或退出该区域时,不唯一的符号则被标定出来。符号名最长可达24个字符。引号(“”)不允许使用。地址数据类型当你确认该区域的输入或退出该区域时,程序会自动检查该地址输入是否是允许的。当你确认或退出地址时,该区域被自动地赋予一个缺省数据类型。如果你修改这个缺省类型,程序会检查你的数据类型是否与地址相匹配。注释你可以输入注释简单地解释该符号的功能(最多80个字符)。(二)你必须区分局域(块定义)符号和共享符号24共享符号有效性•在整个用户程序中有效•可以被所有的块使用•在所有的块中含义是一样的•在整个用户程序中是唯一的允许使用•字母、数字及特殊字符。的字符调号出在引号内。使用你可以为以下各项定义共享符号:QB,QW,QD)•I/O输入与输出(PI,PQ)•存储位(M,MB,MW,MD)•定时器(T)/计数器(C)•逻辑块(FB,FC,SFB,SFC)•数据块(DB)•用户定义数据类型(UDT)•变量表(VAT)在哪里定符号表义(三)显示共享或局域符号局域符号•只在定义的块有效•相同的符号可在不同的块中用于不同的目的•字母•下划线(_)(注意:的下划线)你可以为以下各项定义局域符号:和输入输出参数)•块的静态数据•块的临时数据•除0X00,0XFF及引号以外的强•数字•如使用特殊字符,则符号须写不允许使用两个连续•I/O信号(I,IB,IW,ID,Q,•块参数(输入,输出块的变量声明表你可以在程序的指令部分区分开共享符号和局域符号。•符号表中定义的符号(共享)显示在引号内。•块变量声明表中的符号(局域)显示时前面加上“#”。提示:使用菜单命令View>Display>SymbolicRepresentation,你可以在所有声明的符号地址和绝对地址之间进行切换。254.1.3寻址方式寻址方式是指令得到操作数的方式。立即寻址:操作数本身直角接包含在指令中直接寻址:指令中直接给出操作数的存储单元地址S7寻址方式存储器间接寻址寄存器间接寻址常数S7状态字中的状态位S7的各种寄存器S7指令的操作对象数据块功能块FB、FC和系统功能块SFB、SFCS7的各存储区中的单元4.1.4数据类型数据类型决定了你以什么方式或格式理解或访问存储区中的数据。基本数据类型:定义不超过32位的数据复式数据类型:定义超过32位或由其它数据类型组成数据类型4.1.5状态字状态字用于表示CPU执行指令时所具有的状态。的数据参数类型:定义传给FB块和FC块的参数如何输入梯形图组件:261、在段中选择一点,你想在该点后面插入一个梯形图组件。2、用下列方法之一,在段中插入所需的组件:•在菜单“Insert”中选择合适的菜单命令,例如,Insert>LADElement>NormallyOpenContact•用功能键F2、F3或F7输入一个常开触点、常闭触点或输出线圈。•选择菜单命令Insert>ProgramElements打开“programElements(编程组件)”对话框并在目录中选择所需的组件。所选的梯形图组件被插入,问号被用来表示地址和参数。如何输入语句表语句:1、通过点击灰色注释框下面的任意区域就可打开正文框(或者若不显示段注释则在段标题的下面)。2、输入指令、按空格键,然后是地址(直接或间接地址)。3、按空格键并输入以双斜线//开始的注释(可选)。4、在完成一条(一行)带注释或不带注释的语句后按RETURN。一行完成后,运行语法检查,这条语句形成并显示,指令中或绝对地址中的任何小写字母都转换为大写。任何查到的语法错误都显示为红色斜体,在存储该逻辑块之前必须修改所有错误。274.2位逻辑指令位逻辑运算指令位逻辑指令定时器指令计数器指令位测试指令4.2.1位逻辑运算指令1.“与”、“或”、“异或”指令(1)语句指令布尔逻辑串内的真值表(根据下列表可以确定第二条布尔位操作后的RLO)助记符A指令与指令前RLO0011AN与非0011O或0011地址状态010101010101RLO结果00010010011128ON或非0011010101010101地址状态010101010101101101101001RLO结果011001100110X异或0011XN异或非0011布尔逻辑串开始的真值表助记符AANOONXXN(2)梯形图逻辑指令①常开接点(动合触点)元素和参数指令与与非或或非异或异或非②常闭接点(动断触点)元素和参数2.输出指令29输出指令把状态字中RLO的值赋给指定的操作数STL指令=<地址>LAD指令<地址>---()<地址>--(#)--功能逻辑串赋值输出中间结果赋值输出例一二分频器二分频器是一种具有一个输入端和一个输出端的功能单元,输出频率为输入频率的一半。如下,输入为I0.0,输出为Q4.0。<位地址>BOOL操作数<位地址>数据类型BOOLI,Q,M,D,LI,Q,M,D,L存储区梯形图程序:语句表程序:30例二风机监控程序某设备有三台风机,当设备处于运行状态时,如果风机至少有两台以上转动,则指示灯常亮;如果仅有一台风机转动,则指示灯以0.5Hz的频率闪烁;如果没有任何风机转动,则指示灯以2Hz的频率闪烁。当设备不运行时,指示灯不亮。梯形图程序:语句表程序:31输入位I0.0,I0.1,I0.2分别表示风机1,2,3。存储位M100.3为2Hz的频率信号,M100.7为0.5Hz的信号。风机转动状态指示灯由Q4.0控制。存储位10.0为1时用于表示至少有两台风机转动,M10.1为1时表示没有风机转动。例三启动和自锁程序程序功能:输入X0闭合时,输出Y0闭合且自锁。只有在X1闭合时,其动断触点打开,Y0断开。其时序图如下。梯形图程序:32语句表程序:练习:请指出以下实现输出Q0.0、Q0.1互锁程序的错误,并改正。例四优先程序优先程序执行时,能在多个输入信号中仅接收最先一个输入信号作出反映,其后的输入信号不接收。此原则常用于抢答器中。33例五下按钮,灯光灭。灯泡控制程序一盏灯泡由一个按钮来控制,已知第一次按下按钮,灯泡亮,第二次按(一)PLC接线图(二)定义符号地址符号地址S0L0M0(三)梯形图程序绝对地址I0.0Q0.0M0.0类据类型BOOLBOOLBOOL说明按钮灯泡标标位34例六(一)气控回路双作用气缸连续往复运动控制按启动按钮双作用气缸连续往复运动,按停止按钮,停止运动。(二)PLC接线(三)定义符号地址35符号地址S0S11S11S21Y11Y2M0(四)梯形图程序绝对地址I0.0I0.1I0.2I0.3Q0.0Q0.1M0.0类据类型BOOLBOOLBOOLBOOLBOOLBOOLBOOL说明启动按钮停止按钮位置传感器位置传感器换向阀电磁线圈换向阀电磁线圈启动线圈练习:编制电动机点动和连续运转控制程序。输入端I0.0I0.1I0.2控制触点停止按钮(常开)点动按钮(常开)连续运转按钮(常开)连续运转启动点动Q0.1保护指示灯控制功能停止输出端Q0.0执行器件KM1实现功能控制电动机电源当保护动作时闪亮36I0.3热继电器触点(常闭)过载保护动作使得电机停止参考程序:(一)定义符号地址(二)LAD程序练习:编制双控灯控制程序,要求开关K1或K2任意一个开关的开和关的操作均可以控制灯L的亮和灭。完成后可再编制三控灯。参考程序程序1:373.置位/复位指令STL指令S<位地址>R<位地址>LAD指令<位地址>---(S)<位地址>--(R)复位输出<位地址>COUNTER功能置位输出操作数<位地址>数据类型BOOL存储区I,Q,M,D,LBOOL,TIMER,I,Q,M,D,L,T,C复位/置位指令根据RLO的值,来决定被寻址位的信号状态是否需要改变。若RLO的值为1,被寻地址位的信号状态被置1或清0;若RLO的值为0,被寻址位的信号保持原状态不变。这一特性又称为静态的置位/复位。相应地,赋值输出被称为动态赋值输出。在LAD中置位/复位指令要放在逻辑串最右端,而不能放在逻辑串中间。4.RS触发器置位复位触发器真值表S00R01Q-03811R0011逻01S010110Q-101复位置位触发器真值表在LAD中,RS触发器可以用在逻辑串最右端,结束一个逻辑串,也可用在辑串中,影响右边的逻辑操作结果。例一控制传送带一个由电气启动的传送带,在传送带的起点有两个按钮开关:用于START的S1和STOP的S2。在传送带的尾部也有两个按钮开关:用于START的S3和STOP的S4。可以从任何一端起动或停止传送带。另外,当传送带上的物件到达末端时,传感器S5使传送带停机。(一)PLC接线(二)定义符号地址符号地址绝对地址类据类型说明39S1S2S3S4S5MOTOR_ON(三)梯形图程序I0.0I0.1I0.2I0.3I0.4Q0.0BOOLBOOLBOOLBOOLBOOLBOOL起点启动按钮起点停机按钮尾部启动按钮尾部停机按钮末端传感器电机思考题:如下的程序有什么不足之处?应如何改正?例二双缸顺序动作控制程序设计程序,使两个气缸顺序动作,其顺序为:A1B1B0A0。(一)气控回路40(二)位移-步骤图11A01B0(三)I型障碍信号分析2345=1(四)PLC接线41(五)定义符号地址(六)梯形图程序425.RLO上升沿、下降沿检测指令LAD指令<位地址>-(P)-<位地址>-(N)-STL指令功能沿检测FN<位地址>RLO下降沿检测操作数<位地址>存储旧RLO的边沿存储位BOOL数据类型BOOL存储区I、Q、M、D、LI、Q、M、D、LFP<位地址>RLO上升43RLO上升沿检测指令识别RLO从0至1(上升沿)的信号变化,并且在操作之后以RLO=1表示这一变化。用边沿存储位比较RLO的现在的信号状态与该地址上周期的信号状态,如果操作之前地址的信号状态是0,并且现在RLO=1,那么操作之后,RLO将为1(脉冲),所有其它的情况为0。在该操作之前,RLO存储于地址中。RLO下降沿检测指令识别RLO从1至0(下降沿)的信号变化,并且在操作之后以RLO=1表示这一变化。用边沿存储位比较RLO的现在的信号状态与该地址上周期的信号状态,如果操作之前地址的信号状态是1,并且现在RLO=0,那么操作之后,RLO将为1(脉冲),所有其它的情况为0。在该操作之前,RLO存储于地址中。如果RLO在相邻的两个扫描周期中相同(全为1或0),那么FP或FN语句把RLO位清0。6.地址上升沿、下降沿检测指令地址上升沿检测指令将<位地址1>的信号状态与存储在<位地址2>中的先前信号状态检查时的信号状态比较。如果有从0至1的变化的话,输出Q为1,否则为0。地址下降沿检测指令将<位地址1>的信号状态与存储在<位地址2>中的先前信号状态检查时的信号状态比较。如果有从1至0的变化的话,输出Q为1,否则为0。在梯形图中,地址跳变沿检测方块和RS触发器方块可被看作一个特殊常开触点。该常开触点的特性:若方块的Q为1,触点闭合;若Q为0,则触点断开。7.对RLO的直接操作指令44LAD指令-|NOT|----------------(SAVE)STL指令NOTSETCLRSAVE功能取反RLO置位RLO复位RLO保存RLO说明在逻辑串中,对当前的RLO取反;取反指令或置位STA把RLO无条件置1并结束逻辑串;使STA置1,ORFC清0把RLO无条件清0并结束逻辑串;清0STA,ORFC把RLO存入状态字的BR位,该指令不影响其它状态位例一检测传送带的方向装备有两个光电传感器(PEB1和PEB2)的传送带,该设计能够检测传送带上物件的运动方向,并通过左右两端的指示灯(LEFT灯和RIGHT灯)显示。(一)PLC接线45(二)定义符号地址(三)梯形图程序例二二分频器二分频器是一种具有一个输入端和一个输出端的功能单元,输出频率为输入频率的一半。如下,输入为I0.0,输出为Q4.0。分析二分频的时序图看到,输入每有一个正跳沿,输出便反转一次。据此,可用跳变沿检测指令实现分频功能。梯形图程序1:46梯形图程序2:例三传送带定位控制一电动机带动一个传送带运动,要求移动传送带向前或向后到达某一确定的位置,其结构示意图如下,为了正确定位该传送带,有时需要按下向后(REV)或向前(FWD)按钮进行手动调整。47梯形图程序:一旦有按钮按下,立即驱动输出,电动机运转一个扫描周期。这也意味着按钮时间长短与电动机驱动的时间没有关系。练习:第一次按按钮指示灯亮,第二次按按钮指示灯闪亮,第三次按下按钮指示灯灭,如此循环,试编写其PLC控制的LAD程序。484.2.2定时器指令定时器可以提供等待时间或监控时间,定时器还可产生一定宽度的脉冲,亦可测量时间。定时器是一种由位和字组成的复合单元,定时器的触点由位表示,其定时时间值存储在字存储器中。脉冲定时器(SP)扩展脉冲定时器(SE)定时器的种类接通延时定时器(SD)保持型接通延时定时器(SS)关断延时定时器(SF)1.定时器组成在CPU的存储器中留出了定时器区域,该区域用于存储定时器的定时时间值。每个定时器为2Byte,称为定时字。在S7-300中,定时器区为512Byte,因此最多允许使用256个定时器。S7中定时时间由时基和定时值两部分组成,定时时间等于时基与定时值的乘积。当定时器运行时,定时值不断减1,直至减到0,减到0表示定时时间到。定时时间到后会引起定时器触点的动作。定时器的第0到第11位存放二进制格式的定时值,第12,13位存放二进制格式的时基。时基与定时范围49时基10ms100ms1s10s时基的二进制代码00011011分辨率0.01s0.1s1s10s定时范围10ms至9s_990ms100ms至1m_39s_900ms1s至16m_39s10s至2h_46m_30s为累加器1装入定时时间值的表示方法:(1)LW#16#wxyz其中,w,x,y,z均为十进制数;w=时基,取值0,1,2,3,分别表示时基为:10ms,100ms,1s,10s;xyz=定时值,取值范围:1到999。(2)LS5T#aH_bbM_ccS_dddMS2.定时器启动与运行PLC中的定时器相当于时间继电器。在使用时间继电器时,要为其设置定时时间,当时间继电器的线圈通电后,时间继电器被启动。若定时时间到,继电器的触点动作。当时间继电器的线圈断电时,也将引起其触点的动作。该触点可以在控制线路中,控制其它继电器。3.定时器启动指令LAD指令Tno.---(SP)时间值Tno.---(SE)时间值Tno.---(SD)时间值Tno.---(SS)时间值Tno.---(SF)SFTno.启动关断延时定时器SSTno.启动保持型接通延时定时器SDTno.启动接通延时定时器SETno.启动扩展脉冲定时器SPTno.启动脉冲定时器STL指令功能50时间值FRTno.允许再启动定时器各种定时器的工作特点:4.定时器的梯形图方块指令参数N0.STVRQBIBCD数据类型TIMERBOOLS5TIMEBOOLBOOLWORDWORD存储区TI,Q,M,D,LI,Q,M,D,LI,Q,M,D,LI,Q,M,D,LI,Q,M,D,LI,Q,M,D,L例一说明定时器标识号,与CPU有关启动输入设定定时间(S5TIME格式)复位输入定时器状态输出剩余时间输出(二进制格式)剩余时间输出(BCD码格式)5.定时器应用举例脉冲发生器用定时器可构成脉冲发生器,这里用了两个定时器产生频率占空比均可设置的脉冲信号。如下图的脉冲发生器的时序图,当输入I0.0为1时,输出Q0.0为1或0交替进行,脉冲信号的周期为3s,脉冲宽度为1s。51梯形图程序:例二频率监测器频率监测器用于监测脉冲信号的频率,若其低于下限,则指示灯亮,“确认”按键能使指示灯复位。为此,使用了一个扩展脉冲定时器,每当频率信号有一个上升沿就启动一次定时器。如果超过了定时时间没有启动定时器,则表明两个脉冲之间的时间间隔太长,即频率太低了。梯形图程序:52例三顺序循环执行程序当X0接通,灯Y0亮;经5s后,灯Y0灭,灯Y1亮;经5s后,灯Y1灭,灯Y2亮,再过5s后,灯Y2灭,灯Y0亮,如此顺序循环,其时序图如下。梯形图程序:53例四再延时16s后M3启动。(一)PLC接线电动机顺序启动控制程序有三台电动机M1、M2、M3,按下启动按钮后M1启动,延时5s后M2启动,(二)定义符号地址(三)梯形图程序54例五分段传送带的电动机按制程序为了节省能源的损耗,可使用PLC来启动和停止分段传送带的驱动电动机,使那些只载有物体的传送带运转,没有载物的传送带停止运行。金属板正在传送带上输送,其位置由相应的传感器检测。传感器安放在两段传送带相邻近的地方,一旦金属板进入传感器的检测范围,PLC便发出相应的输出信号,使后一段传送带的电动机投入工作;当金属板被送出检测范围时,PLC内部定时器立即开始计时,在达到预定的延时时间后,前一段传送带电动机便停止运行。55(一)PLC接线(二)定义符号地址(三)梯形图程序56习题:(1)有4个答题人,出题人提出问题,答题人按动按钮开关抢答,只有最早按动按钮的人有输出。出题人按复位按钮,引出下一个问题,试编写PLC梯形图程序。(2)若传送带上30s内无产品通过,检测器下的检测点则报警,试编写其梯形图程序。57(3)试编写PLC梯形图程序具备下述功能:(a)按钮接通后A灯先亮,过5s后B灯亮;(b)B灯亮5s后,自动关闭;(c)B灯灭5s后,A灯关闭。(4)如下图(a)A,B,C三条传输皮带,分别受M1,M2,M3三个电动机拖动;图(b)是此三条传输皮带运转的时序图。编写一个用PLC控制它们运转的梯形图程序。要求它们按A-B-C顺序启动,而后按C-B-A的顺序停止。58(5)十字路口的交通指挥信号灯布置如下图:59一、控制要求(1)信号灯系统由一个启动开关控制,当启动开关接通时,该信号灯系统开始工作,当启动开关关断时,所有信号灯都熄灭。(2)南北绿灯和东西绿灯不能同时亮。如果同时亮应关闭信号灯系统,并立刻报警。(3)南北红灯亮维持25s。在南北红灯亮的同时东西绿灯也亮,并维持20s。到20s时,东西绿灯闪亮,闪亮3s后熄灭,此时,东西黄灯亮,并维持2s。到2s时,东西黄灯熄灭,东西红灯亮。同时,南北红灯熄灭,南北绿灯亮。(4)东西红灯亮维持30s。南北绿灯亮维持25s,然后闪亮3s后熄灭。同时南北黄灯亮,维持2s后熄灭,这时南北红灯亮,东西绿灯亮。(5)以上南北、东西信号灯周而复始地交替工作状态,指挥着十字路口的交通,其时序如下所示。60二、PLC接线三、定义符号地址61四、梯形图程序62(6)PLC控制的气缸延时控制回路,当气缸的活塞伸出到位停留5s后再返回,退回到位停留3s再伸出,如此往复运动。(一)气控回路(二)PLC接线63(三)定义符号地址符号地址S0S11S11S21Y11Y2M0(四)梯形图程序绝对地址I0.0I0.1I0.2I0.3Q0.0Q0.1M0.0类据类型BOOLBOOLBOOLBOOLBOOLBOOLBOOL说明启动按钮停止按钮位置传感器位置传感器换向阀电磁线圈换向阀电磁线圈启动线圈64(7)试编写以下机械手的PLC控制程序:机械手其动作的顺序如下,要求机械手在抓工件和松开工件时有1s的延时:65(8)多种液体自动混合装置的PLC控制如图所示为三种液体混合装置,SQ1、SQ2、SQ3和SQ4为液面传感器,液面淹没时接通,液体A、B、C与混合液阀由电磁阀YV1、YV2、YV3、YV4控制,M为搅匀电动机,其控制要求如下:1.初始状态装置投入运行时,液体A、B、C阀门关闭,混合液阀门打开20s将容器放空后关闭。2.起动操作按下启动按钮SB1,装置开始按下列给定规律运转:①液体A阀门打开,液体A流入容器。当液面达到SQ3时,SQ3按通,关闭液体A阀门,打开液体B阀门。②当液面达到SQ2时,关闭液体B阀门,打开液体C阀门。③当液面达到SQ1时,关闭液体C阀门,搅匀电动机开始搅拌。④搅匀电动机工作1min后停止搅动,混合液体阀门打开,开始放出66混合液体。⑤当液面下降到SQ4时,SQ4由接通变断开,再过20s后,容器放空,混合液阀门关闭,开始下一周期。3.停止操作按下停止按钮SB2后,要将当前的混合操作处理完毕后,才停止操作(停在初始状态)参考程序:67(9)如下所示是三层楼电梯示意图。电梯的上升、下降由一台电动机控制;正转时电梯上升、反转时电梯下降。各层设一个呼叫开关(SB1、SB2、SB3)、一个呼叫指示灯(H1、H2、H3)、一个到位行程开关(ST1、ST2、ST3)。控制要求:(1)各层的呼叫开关为按钮式开关,SB1、SB2及SB3均为瞬间接通有效(即瞬间接通的即放开仍有效)。(2)电梯箱体上升途中只响应上升呼叫,下降途中只响应下降呼叫,任何反方向呼叫均无效,简称为不可逆响应。具体动作要求,如下表。68(3)各楼层间有效运行时间应小于10S,否则认为有故障、自动令电动机停转。输序号原停层12345678910111213141231231231223任意入呼叫层3332221112、31、33、12、1任意运行方向升升停升停降停降降升降升降任意不停上升到3层停呼叫无效上升到2层停呼叫无效下降到2层停呼叫无效下降到1层停下降到1层停,这期间经过2层时不停先升到2层暂停2S后,再升到3层停下降到1层停上升到3层停先降到2层暂停2S后,再降到1层停楼层间运行时间必须小于10S,否则停输运行出结果上升到3层停,这期间经过2层时6970(10)霓虹灯广告屏控制器的设计用PLC对霓虹灯广告屏实现控制,其具体要求如下:该广告屏中间8个灯管亮灭的时序为第1根亮→第2根亮→第3根亮→…→第8根亮,时间间隔为1s,全亮后,显示10s,再反过来从8→7→…→1顺序熄灭。全灭后,停亮2s,再从第8根灯管开始亮起,顺序点亮7→6→…→1,时间间隔为1s,显示20s,再从→2→…→8顺序熄灭。全熄灭后,停亮2s,再从头开始运行,周而复始。参巧梯形图程序:7172737475