《第3章 PLC的基本控制功能及应用.ppt》由会员分享,可在线阅读,更多相关《第3章 PLC的基本控制功能及应用.ppt(56页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、学习内容, 布尔指令及应用, 定时器/计数器指令及应用, 位移位寄存器指令及应用, 程序控制指令及应用,学习目标:,掌握触点线圈指令、置位复位指令、正负跃变指令的格式及应用; 掌握定时器、计数器指令的格式及应用; 掌握位移位寄存器指令的格式及应用; 掌握跳转指令、子程序指令、顺序控制继电器指令的格式及应用。 掌握程序调试的步骤及方法。,3.1 布尔指令及应用,布尔指令即位操作指令,是PLC常用的基本指令,运算结果用二进制数字1和0表示,可以实现基本的位逻辑运算和控制。,3.1.1 触点线圈指令,1触点指令 触点指令代表CPU对存储器的读操作,常开触点和存储器的位状态一致,常闭触点和存储器的位状
2、态相反。,触点指令的格式和功能,说明: 梯形图程序的触点指令有常开和常闭触点两类,类似于继电-接触器控制系统的电器接点,可自由的串并联。 语句表程序的触点指令由操作码和操作数组成。在语句表程序中,控制逻辑的执行通过CPU中的一个逻辑堆栈来实现,这个堆栈有九层深度,每层只有一位宽度。语句表程序的触点指令运算全部都在栈顶进行。 表中操作数bit寻址寄存器I、Q、M、SM、T、C、V、S、L的位值。,2输出线圈指令,说明: 输出线圈指令的操作数bit寻址寄存器I、Q、M、SM、T、C、V、S、L的位值。 输出线圈指令对同一元件(操作数)一般只能使用一次。,例1 触点串联指令编程,例2 触点并联指令编
3、程,3 .逻辑取反指令的格式和功能,说明: 该指令在梯形图中编程时串联在需要取反的逻辑运算结果之后。,例3 取反指令编程,4.堆栈操作指令,采用梯形图程序指令编写程序时,程序由一系列图形组合而成,用户可以方便的根据需要进行编程(绘图)。但在使用语句表程序指令编程时,如遇复杂电路则将不能直接使用触点“与”或触点“或”指令进行描述,为此各种类型的PLC均有专门用于描述复杂电路的语句表指令,他们称为堆栈操作指令。,例4 电路块串联指令编程,图3-4 逻辑块“或”操作编程举例,LD I0.0 A I0.2 LD I0.1 A I0.3 ALD = Q0.0,例5 电路块并联指令编程,图3-5 逻辑块“
4、与”操作编程举例,LD I0.0 ON I0.1 LD I0.2 O I0.3 ALD = Q0.0,a)梯形图 b)语句表,例6 堆栈操作指令编程,图3-9 逻辑堆栈操作指令编程举例,a)梯形图 b)语句表,3.1.2 置位复位指令,1.置位复位指令,说明: Bit指定操作的起始位地址,寻址寄存器I、Q、M、S、SM、V、T、C、L的位值; N指定操作的位数,其范围是0255,可立即数寻址,也可寄存器寻址(IB,QB,MB,SMB,SB,LB,VB,AC,*AC,*VD) 当对同一位地址进行操作的复位、置位指令同时满足执行条件时,写在后面的指令被有效执行。,1.置位复位指令,2.触发器指令,
5、说明: bit指定被操作的寄存器位,其寻址的寄存器是I,Q,M,V,S的位值。,3.指令编程举例,(1)置位复位指令编程 图3-6中的起保停程序可由置位复位指令编写,其对应的梯形图及语句表程序如图3-10所示。,图3-10 置位复位指令实现的起保停程序,起动保持,停止,a)梯形图 b)语句表,图3-6 起保停程序,(2)触发器指令编程,3.指令编程举例,3.1.3 正负跃变指令,1正负跳变指令 当信号从0变1时,将产生一个上升沿(或正跳沿),而从1变0时,则产生一个下降沿(或负跳沿),如图3-12所示。,正负跃变指令格式和功能,该指令在程序中检测其前方逻辑运算状态的改变,将一个长信号变为短信号
6、。,2.正负跃变指令编程举例,图3-13 一个按钮控制两台电动机依次启动的程序,a)梯形图 b)语句表,3.2 定时器/计数器指令及应用,定时器和计数器指令在控制系统中主要用来实现定时操作及计数操作。可用于需要按时间原则控制的场合及根据对某事件计数要求控制的场合。,3.2.1 定时器指令,S7-200系列PLC的软定时器有三种类型,他们分别是接通延时定时器TON、断开延时定时器TOF和保持型接通延时定时器TONR,其定时时间等于分辨率与设定值的乘积。 定时器的分辨率有lms、l0ms和l00ms三种,取决于定时器号码。 定时器的设定值和当前值均为16位的有符号整数(INT),允许的最大值为32
7、767。 定时器的预设值PT可寻址寄存器VW 、IW、QW、MW、SMW、SW、LW、AC、AIW、 T、C、*VD、*AC及常数。,3.2.1 定时器指令,1.接通延时定时器(TON ),说明:接通延时定时器TON用于单一间隔的定时。,指令格式及功能,2.接通延时定时器(TON ),2)指令编程举例,图3-19 TON定时器指令编程举例,a)梯形图程序 b)语句表程序 c)时序图,2.断开延时定时器(TOF),1)指令格式及功能,说明:利用断开延时定时器TOF的工作特点,可实现某一事件(故障)发生后的时间延时。,2.断开延时定时器(TOF),2)指令编程举例,图3-20 TOF定时器指令编程
8、举例,a)梯形图程序 b)语句表程序 c)时序图,3.保持型接通延时定时器(TONR),1)指令格式及功能,说明: (1)TONR定时器的复位只能用复位指令来实现。 (2)利用TONR定时器指令的时间记忆功能,可实现对多次输入接通时间的累加。,3.保持型接通延时定时器(TONR),2)指令编程举例,图3-21 TONR定时器指令编程举例,a)梯形图程序 b)语句表程序 c)时序图,3.2.2 计数器指令,计数器利用输入脉冲上升沿累计脉冲个数。S7-200系列PLC有3类计数器:加计数器CTU、减计数器CTD和加减计数器CTUD。,1.加计数器CTU,1)指令格式及功能,说明: (1)CU为计数
9、器的计数脉冲;R为计数器的复位;PV为计数器的预设值,取值范围在1-32767之间。 (2)计数器的号码CXXX在0-255范围内任选。 (3)计数器也可通过复位指令为其复位。,2)指令编程举例,(1)药片自动数粒装瓶控制,2)指令编程举例,(2)计数器扩展程序,a)梯形图 b)时序图 图3-23 计数器的扩展电路,2.减计数器CTD,1)指令格式及功能,说明: (1)CD为计数器的计数脉冲;LD为计数器的装载端;PV为计数器的预设值,取值范围在1-32767之间。 (2)减计数器的编号及预设值寻址范围同加计数器。,2.减计数器CTD,2)指令编程举例,图3-24 减计数器指令编程举例,a)梯
10、形图 b)语句表,3.加减计数器CTUD,1)指令格式及功能,说明: (1)当计数器的当前值达到最大计数值(32767)后,下一个CU上升沿将使计数器当前值变为最小值(-32768);同样在当前计数值达到最小计数值(-32768)后,下一个CD输入上升沿将使当前计数值变为最大值(32767); (2)加减计数器的编号及预设值寻址范围同加计数器。,3.加减计数器CTUD,2)指令编程举例,3.3 位移位寄存器指令及应用,3.3.1 位移位寄存器指令,说明: (1)S_BIT和N定义一个位移位寄存器。寄存器的长度为N;寄存器的移位方向由N的符号决定,N为正值寄存器左移(由低位向高位移动),N为负值
11、寄存器右移(由高位向低位移动);寄存器的起始位由S_BIT指定,N为正时S_BIT为最低位,N为负时S_BIT为最高位。 (2)DATA和S-BIT寻址I、 Q、 M、 SM、 T、 C、 V、 S、 L的位值;N为字节寻址,可寻址的寄存器为VB、 IB、 QB、 MB、 SB、 SMB、 LB、 AC, 也可立即数寻址。 (3)移位指令影响特殊内部标志位SM1.1(移出移位寄存器的数据进入溢出标志位SM1.1),3.3 位移位寄存器指令及应用,2位移位寄存器指令编程举例,图3-30 移位寄存器编程举例,a)梯形图,b)语句表,c)工作时序图,3.4 程序控制指令及应用,程序控制指令的作用是控
12、制程序的运行方向,如程序的跳转、程序的循环以及按步序进行控制等。在工程实践中常用来解决一些生产流程的选择性分支控制、并行分支控制等。,3.4.1 跳转与跳转标号指令,1.指令格式及功能,说明: (1)跳转标号n的取值范围是0255; (2)跳转指令及跳转标号指令只能用于同一程序段中,不能在主程序段中用跳转指令,而在子程序段中用跳转标号指令。,3.4.1 跳转与跳转标号指令,2.指令编程举例 设I0.3为点动/连动控制选择开关,当I0.3得电时,选择点动控制;当I0.3不得电时,选择连续运行控制。采用跳转指令控制的点动/连动控制程序如图3-35所示。,3.4.2 子程序调用与子程序标号、子程序返
13、回指令,将具有特定功能,并且多次使用的程序段作为子程序。当主程序调用子程序并执行时,子程序执行全部指令直至结束。然后返回到主程序的子程序调用处。子程序用于程序的分段和分块,使其成为较小的、更易于管理的块,只有在需要时才调用,可以更加有效地使用PLC。,3.4.2 子程序调用与子程序标号、子程序返回指令,指令格式及功能(见表3-19),3.4.2 子程序调用与子程序标号、子程序返回指令,说明: 1)子程序调用指令编写在主程序中,子程序返回指令编写在子程序中; 2)子程序标号n的范围是063; 3)子程序可以不带参数调用,也可以带参数调用。带参数调用的子程序必须事先在局部变量表里对参数进行定义,最
14、多可以传递16个参数,参数的变量名最多为23个字符。传递的参数有IN、IN_OUT、OUT三类,IN(输入)是传入子程序的输入参数;IN_OUT(输入/输出)将参数的初始值传给子程序,并将子程序的执行结果返回给同一地址;OUT(输出)是子程序的执行结果,它被返回给调用它的程序。被传递参数的数据类型有BOOL、BYTE、WORD、INT、DWORD、DINT、REAL、STRINGL八种。 4)在现行的编程软件中,无条件子程序返回指令(RET)为自动默认,不需要在子程序结束时输入任何代码。执行完子程序以后,控制程序回到子程序调用前的下一条指令。子程序可嵌套,嵌套深度最多为8层。,3.4.2 子程
15、序调用与子程序标号、子程序返回指令,2.指令编程举例 1)不带参数子程序调用的编程,a)主程序 b)子程序0 c)子程序1,图3-35 不带参数子程序调用指令的编程,3.4.2 子程序调用与子程序标号、子程序返回指令,2)带参数子程序调用的编程,3.4.3 顺序控制继电器指令,在运用PLC进行顺序控制时常采用顺序控制指令,这是一种由顺序功能图设计梯形图的步进型指令。首先用顺序功能图描述程序的设计思想,然后再用指令编写出符合程序设计思想的程序。顺序控制指令可以将顺序功能图转换成梯形图程序,顺序功能图是设计梯形图程序的基础。,1. 顺序功能图简介,一个三步循环步进的顺序功能图如图3-37所示。,2
16、. 顺序控制继电器指令,说明:1)顺序控制继电器位n必须寻址顺序控制继电器S的位。不能 把同一编号的顺序控制继电器位用在不同的程序中,例如,如果在主程序中使用S0.1,则不能在子程序中再使用; 2)在SCR段之间不能使用JMP和LBL指令,即不允许跳入或跳出SCR段。可以使用跳转和标号指令在SCR段内跳转; 3)不能在SCR段中使用FOR、NEXT和END指令。,3.顺序控制继电器指令编程举例,红绿灯循环点亮控制 1)红绿灯循环点亮控制要求 按下起动按钮,红灯点亮1S后熄灭,同时绿灯点亮;绿灯点亮1S后熄灭,再点亮红灯,不断循环直至按下停止按钮 2)绘制顺序功能图 根据控制要求绘制红绿灯循环点
17、亮的顺序功能图。,3.顺序控制继电器指令编程举例,3)编制梯形图程序,本章小结,本章介绍了S7-200系列PLC编程语言基本操作指令的格式、功能及应用。介绍了触点、线圈等一些基本概念。并通过上机实践进一步熟悉这些基本指令的应用。 1触点指令装载、与、或、非指令,可以实现电路的与、或、非运算,线圈指令、置位复位指令用于电路输出,正负跃变指令用于检测电路的上升下降沿,对于复杂的电路,引入了堆栈的概念,用来保存电路运算的中间结果,进行电路块的与、或运算,这些指令是PLC最常用的指令类型。在这一章中对这一部分指令的格式、功能和应用做了详细的介绍。 2S7-200系列PLC有TON、TOF、TONR三种
18、定时器指令,其定时分辨率有1ms、10ms、100ms三种;有CTU、CTD、CTUD三种计数器指令,可对输入脉冲进行加减计数。 3位移位寄存器指令可以实现对于指定长度的移位寄存器进行指定方向的数据移位操作。 4跳转指令JMP、标号指令LBL可以实现程序的跳转,完成分支控制;子程序调用指令CALL、子程序有条件返回指令CRET可以实现主程序对于子程序的操作;对PLC进行顺序控制时可以使用顺序控制指令,顺序功能图由步、转换、转换条件、动作、有向连线等构成,由这些构成元素可以设计顺序功能图,用顺序控制继电器指令可以将顺序功能图转换成梯形图程序。 5上机实践给出了上述基本指令的应用目的,熟练了STEP 7-MicroMIN编程软件的使用。,