电气控制与PLC应用:第5章 S7-200 PLC的基本指令及程序设计_第1页
电气控制与PLC应用:第5章 S7-200 PLC的基本指令及程序设计_第2页
电气控制与PLC应用:第5章 S7-200 PLC的基本指令及程序设计_第3页
电气控制与PLC应用:第5章 S7-200 PLC的基本指令及程序设计_第4页
电气控制与PLC应用:第5章 S7-200 PLC的基本指令及程序设计_第5页
已阅读5页,还剩134页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第5章S7-200 PLC的基本指令及程序设计5.1S7-200 PLC的编程语言5.2S7-200 PLC的数据类型与存储区域5.3S7-200 PLC的编程元件5.4寻址方式5.5程序结构和编程规约5.6S7-200 PLC的基本指令5.7典型控制环节的PLC程序设计5.8梯形图编写规则5.1 S7-200 PLC的编程语言1.梯形图(LAD)2. 功能块图(FBD)3. 语句表(STL)S7-200 PLC有两种指令集:IEC 61131-3指令集 SIMATIC指令集IEC61131-3指令集 是国际电工委员会(IEC)制定的PLC国际标准61131-3 Programming Lan

2、guage (编程语言)中推荐的标准语言。支持系统完全数据类型检查只能用梯形图(LAD)和功能块图(FBD)编程语言编程指令执行时间较长SIMATIC指令集特点:大多数指令符合IEC61131-3标准不支持系统完全数据类型检查可以用梯形图(LAD)、功能块图(FBD)和语句表(STL)编程语言编程指令执行时间较短由西门子公司设计1.梯形图(LAD) 梯形图(LAD)与电气控制电路图相呼应。 沿用了继电器、触点、串并联等术语 简化了图形符号 增加了特殊功能的指令 信号流向清楚、简单、直观、易懂。2. 功能块图(FBD) 沿用了半导体逻辑电路的逻辑框图的表达方式3. 语句表(STL)语句表(STL

3、)是用助记符来编程。它类似于计算机的汇编语言。编程简单直观、易懂有条件地相互转换语句表可以编写梯形图和功能块图无法编写的程序。5.2S7-200 PLC的数据类型与存储区域5.2.1位、字节、字、双字和常数进制书写格式举例二进制2#二进制数值2#0101011100010十进制十进制数值2010十六进制16#十六进制数值16#4AE8ASCIIASCII文本file浮点数按照ANSI/IEEE 7541985标准(单精度)格式1252或12521常数的几种表示形式:5.2.2数据类型及范围基本数据类型数据的位数表示范围十进制十六进制布尔型(BOOL)10,1无符号数字节型B(BYTE)8025

4、50FF字型W(WORD)160655350FFFF双字型D(DWORD)320(-1)0 FFFF FFFF有符号数字节型B(BYTE)8-128+127807F整型(INT)16-32768+3276780007FFF双整型(DINT)32-(-1)8000 00007FFF FFFF实数型(REAL)321754951340282315.2.3数据的存储区1.存储区的分类 PLC的存储区分为程序存储区、系统存储区、数据存储区。程序存储区用于存放用户程序,存储器为EEPROM。系统存储区用于存放有关PLC配置结构的参数,如PLC主机及扩展模块的I/O配置和编址、PLC站地址的配置,设置保护

5、口令、停电记忆保持区、软件滤波功能等,存储器为EEPROM。数据存储区是S7-200 CPU提供给用户的编程元件的特定存储区域。2.数据区存储器的编址格式可分为:位地址字节地址字地址双字地址数据区存储器区域:用户程序空间、CPU组太空间、数据区空间数据区空间存储器地址的表示格式:位、字节、字、双字1.位地址格式I0.5I2.0位号字节号位号字节地址区域标识符I0.5 “间隔 ”2字节、字、双字地址格式起始字节地址数据长度区域标识符VB1002.其他地址格式定时器存储器(T)、计数器存储器(C)、累加器(AC)、高速计数器(HC)等,它们是模拟相关的电器元件的。地址格式为:区域标识符和元件号元件

6、号区域标识符T24数据区数据区空间存储器区域 5.3S7-200 PLC的编程元件在PLC内部,这些具有一定功能的编程元件,由电子电路、寄存器和存储器单元等组成,有固定的地址。有时又称做软元件或软继电器 ,其特点是 :1) 软继电器是看不见、摸不着的,没有实际的物理触点。2) 每个软继电器可提供无限多个常开触点和常闭触点,可放在同一程序的任何地方,即其触点可以无限次地使用。3) 体积小、功耗低、寿命长。1.输入映象寄存器(I) CPU在每次扫描周期开始(或结束)时,对各输入端子的状态进行采样,并将采样值存于输入映象寄存器对应的位中,作为程序处理时输入点状态的依据。输入映象寄存器的状态只能由外部

7、输入信号驱动,而不能在内部由程序指令来改变注意:1. 输入继电器(I)输入继电器(I)的地址格式为:位地址:I字节地址.位地址,如I0.1、I3.6。字节、字、双字地址:I数据长度起始字节地址,如IB4、IW6、ID10。2.输出继电器(Q) CPU将输出的结果存放在输出映象寄存器Q中,在扫描周期的结尾,CPU以批处理方式将输出映象寄存器的数值复制到相应的输出端子上。输出模块将输出信号传送给外部负载。输出继电器(Q)地址格式为:位地址:Q字节地址.位地址,如Q0.0、Q1.1;字节、字、双字地址:Q数据长度起始字节地址,如QB5、QW8、QD11。CPU226模块输出映像寄存器的有效地址范围为

8、:Q(0.015.7);QB(015);QW(014);QD(012)。2. 输出继电器(Q)S7-200 CPU输入、输出的操作I/O映像区实际上就是外部输入输出设备状态的映像区,PLC通过I/O映像区的各个位与外部物理设备建立联系。I/O映像区每个位都可以映像输入、输出模块上的对应端子状态。辅助继电器(M)的地址格式为:位地址:M字节地址.位地址,如M0.2、M12.7、M3.5等。字节、字、双字地址:M数据长度起始字节地址,如MB11、MW23、MD26。CPU226模块辅助继电器的有效地址范围为:M(0.031.7);MB(031);MW(030);MD(028)。没有外部的输入/输出

9、端子与之对应,因此不能收外部信号的直接控制,其触点也不能直接驱动外部负载。3. 辅助继电器(M)4. 变量存储器(V)变量存储器用于存放全局变量、存放程序执行过程中控制逻辑操作的中间结果或其它相关的数据。地址格式为:位地址:V字节地址.位地址,如V10.2、V100.5。字节、字、双字地址:V数据长度起始字节地址,如VB20、VW100、VD320。CPU226模块变量存储器的有效地址范围为:V(0.05119.7);VB(05119);VW(05118);VD(05116)。5. 局部变量存储器(L) 局部变量存储器(L)用来存放局部变量。局部变量存储器局部有效。常用于带参数的子程序调用过程

10、中。 其地址格式为:位地址:L字节地址.位地址,如L0.0、L50.4。字节、字、双字:L数据长度起始字节地址,如LB33、LW44、LD55。CPU226模块局部存储器的有效地址范围为:L(0.063.7);LB(063);LW(062);LD(060)。 6. 顺序控制继电器(S)顺序控制继电器(S)用于顺序控制或步进控制。顺序控制继电器(S)使用时可以按位、字节、字、双字访问,其地址格式为:位地址:S字节地址.位地址,如S3.1、S2.5。字节、字、双字地址:S数据长度起始字节地址,如SB4、SW10、SD21。CPU226模块顺序控制继电器存储器的有效地址范围为:S(0.031.7);

11、SB(031);SW(030);SD(028)。 7. 特殊继电器(SM)特殊内部线圈(Special Memory)用户程序与系统程序之间的界面提供特殊的控制功能及系统信息用户通知系统特殊要求包括只读区域,只能用其触点;如SM0.0 可读写区,用于特殊控制功能 ,*SMB30 用于自由通信口设置*SMB34/SMB35 用于定时中断间隔时间设置7. 特殊继电器(SM)SM0.0:CPU在RUN时,SM0.0总为1,即该位始终接通为ON;SM0.1:PLC由STOP转为RUN时,SM0.1 接通一个扫描周期,常用做初始化脉冲;SM0.2:当RAM中保存的数据丢失时,SM0.2 接通一个扫描周期

12、;SM0.3:PLC上电进入RUN方式时,SM0.3 接通一个扫描周期,可在不断电的情况下代替SM0.1的功能;SM0.4:分时钟脉冲,占空比为50%,30s闭合、30s断开,周期为1min的脉冲串;SM0.5:秒时钟脉冲,占空比为50%,0.5s闭合、0.5s断开,周期为1s的脉冲等。8. 定时器(T)定时器(T)是累计时间增量的内部元件。 S7-200 PLC定时器有三种类型:接通延时定时器TON,断开延时定时器TOF,保持型接通延时定时器TONR。定时器的定时时基有三种:1ms、10ms、100ms。使用时需要提前设置时间设定值。与定时器相关的有两个变量:定时器当前值和定时器状态位 。定

13、时器地址表示格式为:T定时器号,如T24、T37、T38等 。 9. 计数器(C)计数器用来累计其计数输入端脉冲电平由低到高的次数,常用来对产品进行计数或进行特定功能的编程。S7-200 PLC有三种类型计数器:增计数、减计数、增减计数。使用时需要提前设定计数设定值 。与计数器相关的有两个变量:计数器当前值和计数器状态位。计数器地址表示格式为:C计数器号,如C3、C22。10. 模拟量输入映像寄存器(AI)模拟量输入模块电路将外部输入的模拟信号转换成1个字长(16位)的数字量,存放在模拟量输入映像寄存器(AI)中,供CPU运算处理。AI中的值为只读值,只能进行读取操作。 AI的地址格式为:AI

14、W起始字节地址,如AIW4。AI的地址必须用偶数字节地址(如AIW0,AIW2)来读取。有效地址的范围为:AIW(062) 11. 模拟量输出映像寄存器(AQ)CPU运算的相关结果存放在模拟量输出映像寄存器(AQ)中,供D/A转换器将1个字长的数字量转换为模拟量,以驱动外部模拟量控制的设备。AQ中的数字量为只写值,用户不能读取模拟量输出值。AQ的地址格式为:AQW起始字节地址,如AQW10。同样,AQ的也必须使用偶数字节地址(如AQW0,AQW2,AQW4)来存放。AQ有效地址范围为:AQW(062)。 12. 累加器(AC)累加器是用来暂时存储计算中间值的存储器,也可用于向子程序传递参数或返

15、回参数。S7-200 CPU提供了4个32位累加器(AC0、AC1、AC2、AC3)。累加器的地址格式为:AC累加器号,如AC0。累加器可进行读、写两种操作,可以按字节、字、双字来存取累加器中的数据。 按字节、字、双字存取累加器中数据的示例13. 高速计数器(HC)高速计数器(High-speed Counter)用来累计比CPU扫描速率更快的高速脉冲信号,计数过程与扫描周期无关。高速计数器的当前值为双字(32位)整数,且为只读值。读取高速计数器当前值应以双字来寻址。高速计数器地址格式为:HC高速计数器号,如HC1、HC2。CPU226模块高速计数器的有效地址范围为:HC(05)。5.3.2编

16、程元件及操作数的寻址范围存取方式元件名称CPU 221CPU 222CPU224、CPU226CPU226XM位存取V0020477005119700102397I、Q00157M、S00317SM001797002997005497T、C0255L00637字节存取VB0204705119010239IB 、QB015MB 、SB031SMB017902990549LB063AC03字存取VW0204605118010238IW、 QW014MW 、SW030SMW017802980548T 、C0255LW062AC03AIW、 AQW0300625.3.2编程元件及操作数的寻址范围双字存

17、取VD0204405116010236ID、 QD012MD、 SD028SMD017602960546LD060AC03HC0,3,4,5055.3.2编程元件及操作数的寻址范围5.4寻址方式1. 立即寻址2. 直接寻址3. 间接寻址1. 立即寻址指令直接给出操作数,操作数紧跟着操作码,在取出指令的同时也就取出了操作数,所以称为立即操作数或立即寻址。立即寻址方式可用来提供常数、设置初始值等。指令中常常使用常数。例如,传送指令“MOVD 256,VD100”的功能就是将十进制常数256传送到VD100单元,这里256就是源操作数,直接跟在操作码后,不用再去寻找源操作数了,所以这个操作数称为立即

18、数,这种寻址方式就是立即寻址方式。2. 直接寻址指令直接给出操作数地址操作数的存储器地址应按规定的格式表示指令中,数据类型应与指令标识符相匹配 例:位寻址: LD I3.4字节寻址: MOVB VB50,VB100字寻址: MOVW VW50, VW100双字寻址: MOVD VD50, VD1003. 间接寻址指令给出了存放操作数地址的存储单元的地址操作数地址的地址称为指针指针用“*”号表示,例*AC1(1)建立指针将存储器某个位置的地址移入另一存储器 或累加器中作为指针“&”符号表示某存储单元的地址必须使用双字传送指令建立指针!(2)使用指针来存取数据对指针处所指定存储器中的值(内容)进行

19、存取把指针处(&VB200) 的值 AC0AC0不能用作间接寻址的指针。(3)修改指针处理连续存取数据时,可以通过改变指针的值来进行修改指针值时,应根据存取数据的长度来进行调整:*字节:指针值加/减1*字:指针值加/减2*双字:指针值加/减4 使用指针间接寻址修改指针VB200VB2005.5程序结构和编程规约5.5.1程序结构5.5.2编程的一般规约用户程序 数据块 参数块 主程序(程序的主体 ) 子程序(可选) 中断程序(可选)网络梯形图(LAD)、功能块图(FBD)允许输入端(EN)、允许输出端(ENO)条件输入、无条件输入1. 网络图5-9电动机起停控制梯形图程序梯形图中,程序被分成称

20、为网络的一些程序段程序不分段,则编译有误2. 梯形图(LAD)梯形图中的左、右垂直线称为左、右母线,通常将右母线省略。在左、右母线之间是由触点、线圈或功能框组合的有序网络。梯形图的输入总是在图形的左边,输出总是在图形的右边。从左母线开始,经过触点和线圈(或功能框),终止于右母线,从而构成一个梯级。在一个梯级中,左、右母线之间是一个完整的“电路”,“能流”只能从左到右流动,不允许“短路”、“开路”,也不允许“能流”反向流动。3. 允许输入端(EN)、允许输出端(ENO) 允许输入端(EN)必须存在“能流”(EN=1),才能执行该功能框的功能 。*如果(EN)存在“能流”,且功能框准确无误地执行了

21、其功能,那么允许输出端(ENO)将把“能流”传到下一个功能框的元件。(即ENO=1,实现级联) *如果执行过程中存在错误,那么“能流”就在出现错误的功能框终止,即ENO=0。4. 条件输入、无条件输入条件输入指令:必须有“能流”通过才能执行的线圈或功能框。它们不允许直接与左母线连接,如SHRB、MOVB、SEG等指令。如果需要无条件执行这些指令,可以在左母线上连接SM0.0(该位始终为1)的常开触点来驱动它们。无条件输入指令:无须“能流”就能执行的线圈或功能框。与“能流”无关的线圈或功能框可以直接与左母线连接,如LBL、NEXT、SCR、SCRE等指令。5.6S7-200 PLC的基本指令5.

22、6.1位逻辑指令5.6.2立即I/O指令5.6.3逻辑堆栈指令5.6.4取反指令和空操作指令5.6.5正/负跳变触点指令5.6.6定时器指令5.6.7计数器指令5.6.8比较指令5.6.9移位寄存器指令5.6.10顺序控制继电器指令5.6.1位逻辑指令1. 标准触点指令2.输出指令3. 置位和复位指令1. 标准触点指令梯形图(LAD)常开和常闭触点指令用触点表示;与某触点对应的存储器地址的位(bit)值为1时,表示该触点的常开触点是接通的 ,为1 ;同时常闭触点为0,表示该常闭触点是断开的2.输出指令输出指令又称为线圈驱动指令,表示对继电器输出线圈编程。在梯形图(LAD)中,用“( )”表示线

23、圈。当执行输出指令时,“能流”到,则线圈被“激励”,输出映像寄存器或其他存储器的相应位为“1”,反之为“0”。3. 置位和复位指令置位或复位的元件数N的常数范围为1255。N也可为VB、IB、QB、MB等,一般情况下均使用常数。当用复位指令对定时器位(T)或计数器位(C)复位时,定时器或计数器被复位,同时定时器或计数器的当前值将被清零。由于PLC采用循环扫描工作方式,程序中写在后面的指令有优先权。能流到,就执行置位(或复位)指令执行置位指令时,把从指令操作数指定的地址开始的N个点都被置位且保持,置位后即使能流断,仍保持置位执行复位指令时,把从指令操作数指定的地址开始的N个点都被复位且保持,复位

24、后即使能流断,仍保持复位5.6.2立即I/O指令为了加快输入输出响应速度采用直接处理方式包括:1. 立即触点指令2. 立即输出指令3. 立即置位和立即复位指令1. 立即触点指令直接读取物理输入点的值输入映象寄存器内容不更新指令操作数仅限于物理输入点的值2. 立即输出指令直接把结果传送到物理输出点,以驱动实际输出不等待程序执行阶段结束后,转入输出刷新阶段时才把结果传送到物理输出点,将结果也写入输出映象寄存器。3. 立即置位和立即复位指令当执行立即置位(SI)或立即复位(RI)指令时,从指令操作数指定的位地址开始的N个连续的物理输出点将被立即置位或立即复位且保持。即使能流断,仍保持置位/复位)。N

25、的常数范围为1128。该指令只能用于输出继电器。执行该指令时,新值被同时写到物理输出点和相应的输出映像寄存器。必须指出立即I/O指令是直接访问物理输入/输出点的,比一般指令访问输入/输出映象寄存器占用CPU时间要长。不能盲目地使用立即指令,否则,会加长扫描周期时间,反而对系统造成不利影响,应利弊权衡。 5.6.4取反指令和空操作指令取反(NOT)指令 改变能流的状态;能流到达取非触点时,能流就停止;能流未到达取非触点时,能流就通过;对堆栈的栈顶作取反操作,改变栈顶值。2. 空操作(NOP)指令空操作(NOP)指令主要是为了方便对程序的检查和修改,预先在程序中设置了一些NOP指令,在修改和增加其

26、他指令时,可使程序地址的更改量减小。NOP指令对程序的执行和运算结果没有影响。其指令格式为:NOP N,操作数N是一个0255之间的常数。5.6.5正/负跳变触点指令指令名称LADSTL功能正跳变触点指令EU在上升沿产生一个宽度为一个扫描周期的脉冲负跳变触点指令ED在下降沿产生一个宽度为一个扫描周期的脉冲检测上升沿(由off到on),让能流通过一个扫描周期的时间;检测下升沿(由on到off),让能流通过一个扫描周期的时间;正/负跳变触点指令编程举例:画出图中Q0.0的波形正/负跳变触点指令编程举例:5.6.6定时器指令对PLC内部的时钟脉冲进行计数1. 接通延时定时器(TON)2. 有记忆接通

27、延时定时器(TONR)3. 断开延时定时器(TOF)4. 应用定时器指令的注意事项类型接通延时定时器有记忆接通延时定时器断开延时定时器LADSTLTON T*, PTTONR T*, PTTOF T*, PT定时器指令的表示形式 定时器及定时器指令输入接点设定值:132767定时器分辨率(时基)有三种:1ms、10ms、100ms。定时器的分辨率由定时器号决定 。定时器的实际设定时间T=设定值PT分辨率 TON:接通延时定时器 TOF:断开延时定时器 TONR:有记忆接通延时定时器类型INPTT37TONI0.0定时器号(0255)当前值:该16位有符号整数存储由计时器计算的时间量。定时器位:

28、按照当前值和设定值的比较结果置位或复位。可以通过使用定时器地址(T +定时器号码)存取这些变量。定时器位或当前值的存取取决于使用的指令:位操作数指令存取计时器位,字操作数指令存取当前值。定时器编号表示两种变量IN1. 接通延时定时器(TON) 当输入端(IN)接通或“能流”通过时,定时器位为OFF,定时器当前值从0开始计时,当定时器的当前值等于或大于设定值时,该定时器位被置位为ON,当前值仍继续计数,一直计到最大值32767。输入端(IN)一旦断开,定时器立即复位,定时器位为OFF,当前值为0。 2. 有记忆接通延时定时器(TONR)当输入端(IN)接通或“能流”通过时,定时器当前值从上次的保

29、持值开始再往上累计时间,继续计时,当累计当前值等于或大于设定值时,该定时器的位被置位为ON。当前值可继续计数,一直计数到最大值32767。当输入端(IN)断开时,定时器当前值保持不变,定时器位不变。当输入端(IN)再次接通,定时器当前值从原保持值开始再往上累计时间,继续计时。可以用定时器(TONR)累计多次输入信号的接通时间。 TONR使用举例 3. 断开延时定时器(TOF)上电初期或首次扫描时,定时器位为OFF,当前值为0。当输入端(IN)接通(为ON)时,定时器位立即为“1”,并把当前值设为0。 4. 应用定时器指令的注意事项1)不能把一个定时器号同时用作TOF和TON。2)在第一个扫描周

30、期,所有的定时器位被清零。3)对于断开延时定时器(TOF),需在输入端有一个负跳变(由ON到OFF)的输入信号启动计时。4)不同分辨率的定时器,它们当前值的刷新周期是不同的,具体情况如下:1ms分辨率定时器。1ms分辨率定时器启动后,定时器对1ms的时间间隔(即时基信号)进行计时。定时器的当前值每隔1ms刷新一次,在一个扫描周期中可能要刷新多次,而不和扫描周期同步。10ms分辨率定时器。10ms分辨率定时器启动后,定时器对10ms的时间间隔进行计时。程序执行时,在每个扫描周期的开始对定时器的位和当前值刷新,定时器的位和当前值在整个扫描周期内保持不变。100ms分辨率定时器。100ms分辨率定时

31、器启动后,定时器对100ms的时间间隔进行计时。只有在执行定时器指令时,定时器的位和当前值才被刷新。为使定时器正确的定时,100ms定时器只能用于每个扫描周期内同一定时器指令必须执行一次且仅执行一次的场合。4. 应用定时器指令的注意事项T当前值的刷新 1ms分辩率定时器每隔1ms刷新一次在一个扫描周期中要刷新多次,而不和扫描周期同步。 ON一个扫描周期 不会接通 错误正确10ms分辩率定时器在每次扫描周期的开始对10ms定时器刷新在一个扫描周期内定时器当前值保持不变不会接通 正确错误100ms分辩率定时器,在定时器指令执行时刷新.自复位式定时器100ms30=3sT39在子程序和中断程序中不宜

32、用100ms的定时器。 100ms定时器只能用于每个扫描周期内同一定时器指令执行一次,且仅执行一次的场合。主程序中不能重复使用同一个100ms的定时器号。100ms分辩率定时器使用注意事项指出梯形图中的错误M0.7I0.4Q0.5T37典型简单电路编程延时接通/延时断开电路5.6.7计数器指令1. 增计数器(CTU)2. 减计数器(CTD)3. 增/减计数器(CTUD)计数器指令的表示形式类型增计数器减计数器增/减计数器LADSTLCTU C*, PVCTD C*,PVCTUD C*,PV 计数器是对对外部的或由程序产生的计数脉冲进行计数,是累计其计数输入端的计数脉冲电平由低到高的次数。而定时

33、器是对PLC内部的时钟脉冲进行计数.计数器编号范围:C0-C255计数器编号表示两个变量:1.当前值: 计数器累计计数的当前值,存放在计数器的16(bit)当前值寄存器中。2.计数器位: 当计数器的当前值等于或大于设定值时,计数器位置为“1”。计数范围: (32768 32767) 1. 增计数器(CTU)当计数脉冲输入端(CU)有一个上升沿(由OFF到ON)信号时,增计数器被起动,计数器当前值从0开始加1,计数器作递增计数,累计其计数输入端的计数脉冲由OFF到ON的次数,直至最大值32767时停止计数。当计数器当前值等于或大于设定值(PV)时,该计数器的位被置位(ON)。当复位输入端(R)有

34、效或对计数器执行复位指令时,计数器被复位,计数器位为OFF,当前值被清零。 增计数器(CTU)举例2. 减计数器(CTD)减计数器(CTD)首次扫描时,计数器的位为0,当前值为设定值PV。当计数输入端(CD)有一个计数脉冲的上升沿(由OFF到ON)信号时,计数器从设定值开始作递减计数,直至计数器当前值等于0时,停止计数,同时计数器位被置位。减计数器指令在复位输入端(LD)接通时,使计数器复位并把设定值装入当前值寄存器中。减计数器指令的使用举例3. 增/减计数器(CTUD)增/减计数器(CTUD)有两个计数脉冲输入端和一个复位输入端(R)。两个计数脉冲输入端为:增计数脉冲输入端(CU)和减计数脉

35、冲输入端(CD)。当CU端有一个计数脉冲的上升沿(由OFF到ON)信号时,计数器当前值加1;当CD端有一个计数脉冲的上升沿(由OFF到ON)信号时,计数器的当前值减1。当计数器当前值等于或大于设定值(PV)时,该计数器位被置位。当复位输入端(R)有效或用复位指令(R)对计数器执行复位操作时,计数器被复位,即计数器位为OFF,且当前值清零。 增/减计数器指令的使用举例典型简单电路编程产品数量检测:产品通过检测器PH机械手电机KM1KM2传送带电机PLC的输入:I0.0 传送带起动按钮I0.1传送带停机按钮I0.2 产品通过检测器PHPLC的输出:Q0.0传送带电机KM1Q0.1机械手KM2要求:

36、每3个产品通过检测器,机械手动作1次, 机械手动作后,延时5秒,将机械手电磁铁切断,即KM2失电典型简单电路编程产品数量检测: 起、停传送带电机每检测到一个产品,I0.2产生一个正脉冲,使C20计一个数 C20每计3个数,机械手动作一次机械手动作时间为5秒后,5秒后,将机械手电磁铁切断,同时将C20复位。C20复位后,T37也复位5.6.8比较指令比较指令是将两个数值或字符串按指定条件进行比较,条件成立时,触点就闭合。所以比较指令实际上也是一种位指令。类型:字节比较、整数比较、双字整数比较、实数比较和字符串比较。数值比较指令的运算符有:=、=、和等6种,字符串比较指令有=和两种。对比较指令可进

37、行LD、A和O编程。比较触点指令的举例 实现占空比可调的脉冲发生器5.6.9移位寄存器指令当移位寄存器指令允许输入端(EN)有效时,该指令把数据输入端(DATA)的数值(位值)移入移位寄存器,并进行移位。S-BIT指定移位寄存器最低位的地址。变量N指定移位寄存器的长度和移位方向。当N为正数表示正向移位,N为负数表示反向移位。SHRB指令移出的位放在溢出位(SM1.1)。 I0.2正向(反向)移位时,输入数据从移位寄存器的最低(最高)有效位移入,从最高(最低)有效位移出。BYTE型数据类型N64DATA和S_BIT为Bool型数据类型。移出的数据送入溢出存储器位(SM1.1)移位寄存器最高有效位

38、地址的计算计算:由最低有效位(S-BIT)和长度(N)计算最高有效位(MSB.b)的地址计算公式: MSB.b=S-BIT的字节号+(|N|-1+S-BIT的位号)8.被8除所得余数举例:如果S-BIT是V22.5,N是8,那么: MSB.b=V22+(8-1+5)8=V22+128= V22+1(余数为4)=V23.4字节号位号停止按钮SB1:I0.1启动按钮SB2:I0.2接触器KM1:Q0.0接触器KM2:Q0.1接触器KM3:Q0.2 接触器KM4:Q0.3四台电机的顺序启动,启动的顺序为M1M2M3M4,顺序启动的时间间隔为2分钟,启动毕,进入正常运行。移位寄存器的应用实例 程序:5

39、.6.10顺序控制继电器指令1. 装载顺序控制继电器指令2. 顺序控制继电器转换指令3. 顺序控制继电器结束指令4. SCR指令的编程举例1. 装载顺序控制继电器指令装载顺序控制继电器(Load Sequential Control Relay,LSCR)指令用来表示一个顺序控制继电器(SCR)程序段(或一个步)的开始。其操作数是顺序控制继电器的S位,表示形式和范围为S0.0S31.7。每个S位都表示顺序功能图中的一种状态。当SCR程序段的S位置位(如S0.1为1)时,允许该SCR程序段工作。在梯形图中,LSCR指令用功能框形式编程,直接连接到左母线上。2. 顺序控制继电器转换指令顺序控制继电

40、器转换(Sequential Control Relay Transition,SCRT)指令执行SCR程序段的转换。当“能流”通过SCRT指令时,一方面使当前激活的SCR程序段的S位复位,使该SCR程序段停止工作;另一方面使下一个将要执行的SCR程序段S位置位,以便下一个SCR程序段工作。在梯形图中,SCRT指令以线圈形式编程。3. 顺序控制继电器结束指令1) 每一个SCR程序段中均包含三个要素。2) SCR指令的操作数只能是S位(如S0.2、S1.5等),但S位也具有一般继电器的功能,不仅可用在SCR指令中,还可用于LD、LDN、A、AN、O、ON、=、S、R等指令中,作为操作数。3) S

41、CRE与下一个LSCR之间的指令逻辑不影响下一个SCR程序段的执行。4) 同一地址的S位不可用于不同的程序分区。5) 在一个SCR程序段内,不允许使用JMP、LBL、FOR、NEXT、END指令。6) 使用SCR指令时,状态位S的地址编号一般按顺序编排,但也可不按顺序编排。4. SCR指令的编程举例种类名称地址输入信号起动按钮SB1I 0.1输出信号红灯Q 0.0绿灯Q 0.1黄灯Q 0.2根据舞台灯光效果的要求,控制红、绿、黄三色灯。控制要求:红灯先亮,2s后绿灯亮,再过3s后黄灯亮。待红、绿、黄灯全亮3min后,全部熄灭,试用SCR指令设计其控制程序。5.7典型控制环节的PLC程序设计5.

42、7.1单向运转电动机起动、停止控制程序5.7.2单按钮起动、停止控制程序5.7.3具有点动调整功能的电动机起、停控制程序5.7.4电动机的正、反转控制程序5.7.5大功率电动机的星-三角减压起动控制程序5.7.6闪烁控制程序5.7.7瞬时接通/延时断开程序5.7.8定时器、计数器的扩展5.7.9高精度时钟程序5.7.10多台电动机顺序起动、停止控制程序(多种方法编程)5.7.1单向运转电动机起动、停止控制程序用置、复位指令实现启、停控制程序及时序图 5.7.2单按钮起动、停止控制程序5.7.3具有点动调整功能的电动机起动、停止控制程序I/O接线图及梯形图5.7.4电动机的正、反转控制程序输入信

43、号输出信号 停止按钮SB1I 0.0正转接触器KM1Q 0.1正向起动按钮SB2I 0.1反转接触器KM2Q 0.2反向起动按钮SB3I 0.2电动机的正、反转控制程序5.7.5大功率电动机的星-三角减压起动控制程序输入信号输出信号停止按钮SB1I0.0KM1Q 0.1起动按钮SB2I0.1KM2Q 0.2KM3Q 0.3电动机星-三角减压起动控制梯形图程序5.7.6闪烁控制程序闪烁控制梯形图及信号时序图5.7.7瞬时接通/延时断开程序瞬时接通/延时断开程序及信号时序图5.7.8定时器、计数器的扩展1. 定时器串联扩展共延时T=(30000+30000)0.1s=6000s 2. 定时器、计数器串联扩展计时范围扩大计时范围也可采用定时器和计数器串联的方法,程序如右。从电源接通到输出线圈Q2.0有输出,共延时T=3000.0s20000=6107s。若还要增大计时范围,可增加串联的计数器数目。3. 计数器串联扩展计数范围S7-200 CPU226模块的最大计数值为32767,若需要更大的计数范围可将多个计数器串联使用。下图,若增计数器C51的输入信号I0.3是一个光电脉冲(如用来计工件数),从第

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论