




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2022年2月20日星期日4时49分20秒第7章 S7-200系列PLC的基本指令1第7章 S7-200系列PLC的基本指令7.1 逻辑指令逻辑指令7.2 程序控制指令程序控制指令7.3 基本指令应用举例基本指令应用举例本章重点本章重点1掌握各类功能指令及运用功能指令编程的方法。掌握各类功能指令及运用功能指令编程的方法。 2要求能够针对具体的控制对象运用功能指令编程。要求能够针对具体的控制对象运用功能指令编程。本章难点本章难点1移位循环类指令的应用;移位循环类指令的应用;2数据处理类指令的应用;数据处理类指令的应用;3高速处理类指令的理解及应用;高速处理类指令的理解及应用;4外部设备通信处理类
2、指令的理解;外部设备通信处理类指令的理解;7.1 逻辑指令逻辑指令SIMATIC S7-200系列系列PLC共有共有27条逻辑指令条逻辑指令 7.1.1 7.1.1 逻辑取及线圈驱动指令逻辑取及线圈驱动指令 LD(Load):):LDN(Load Not):):(Out):):取指令,由常开触点逻辑运算开始取指令,由常开触点逻辑运算开始取反指令,由常闭触点逻辑运算开始。取反指令,由常闭触点逻辑运算开始。线圈驱动指令。线圈驱动指令。LD、LDN应用应用LDN I0.1= M0.0= M0.1LD I0.0= Q0.0LDLD、LDNLDN、指令使用说明:、指令使用说明: LD LD、LDNLDN
3、指令用于与输入公共线(输入母线)相连指令用于与输入公共线(输入母线)相连的触点,在分支电路块的开始处也要使用的触点,在分支电路块的开始处也要使用LDLD、LDNLDN指令,与指令,与后面的后面的OLDOLD、ALDALD指令配合完成块电路的编程。指令配合完成块电路的编程。 指令用于输出继电器、辅助继电器、定时器及计指令用于输出继电器、辅助继电器、定时器及计数器等,但不能用于输入继电器。数器等,但不能用于输入继电器。 并联的指令可以连续使用任意次。并联的指令可以连续使用任意次。 在同一程序中不要使用双线圈输出,即同一个元器在同一程序中不要使用双线圈输出,即同一个元器件在同一程序中只使用一次件在同
4、一程序中只使用一次= =指令。指令。 LD LD、LDNLDN的操作数:的操作数:I I,Q Q,M M,SMSM,T T、C C、V V和和S S。指令的操作数为:指令的操作数为:Q Q,M M,SMSM,V V,S S、T T和和C C也作为输出线圈,也作为输出线圈,但在但在S7-200PLCS7-200PLC中输出时不以使用中输出时不以使用指令形式出现(见定时指令形式出现(见定时器和计数器指令)操作数:器和计数器指令)操作数:Q Q,M M,SMSM,T T,C C,V V和和S S。 7.1.2 触点串联指令触点串联指令A(And):):AN(And Not):):与指令,用于单个常开
5、触点串联连接。与指令,用于单个常开触点串联连接。与反指令。用于单个常闭触点串联连接。与反指令。用于单个常闭触点串联连接。 A、AN指令的使用指令的使用 ( )( )( )I0.0M0.0Q0.0Q0.0I0.1M0.2T5Q0.1AANALD I0.0= Q0.0LD Q0.0= M0.2A T5= Q0.1A M0.0AN I0.1 A、AN是单个触点串联连接指令,可连续使用。但在是单个触点串联连接指令,可连续使用。但在用梯形图编程时会受到打印宽度和屏幕显示的限制,用梯形图编程时会受到打印宽度和屏幕显示的限制,S7-200PLC的编程软件中规定的串联触点使用上限为的编程软件中规定的串联触点使
6、用上限为11个。个。 若要串联多个触点组合回路时,须采用后面说明的若要串联多个触点组合回路时,须采用后面说明的ALD指令。指令。 若按正确次序编程,可以反复使用指令。若按正确次序编程,可以反复使用指令。 A、AN的操作数:的操作数:I,Q,M,SM,T,C,V和和S。 A、AN指令使用说明:指令使用说明:7.1.3 触点并联指令触点并联指令O(Or)ON(Or Not):或指令。用于单个常开触点并联连接。:或指令。用于单个常开触点并联连接。:或反指令。用于单个常闭触点并联连接。:或反指令。用于单个常闭触点并联连接。O、ON指令的使用指令的使用 ( )M0.1M0.0Q0.0M0.2I 0.1I
7、0.0LD M0.0O M0.1O M0.2A I0.0O I0.1= Q0.0O O、ONON指令使用说明:指令使用说明: O O、ONON指令可作为一个接点的并联连接指令,紧接在指令可作为一个接点的并联连接指令,紧接在LDLD、LDNLDN指令之后用,即对其前面指令之后用,即对其前面LDLD、LDNLDN指令所规定的触点再指令所规定的触点再并联一个触点,可以连续使用。并联一个触点,可以连续使用。 若要将两个以上触点的串联回路和其他回路并联时,若要将两个以上触点的串联回路和其他回路并联时,须采用后面说明的须采用后面说明的OLDOLD指令。指令。 O O、ONON的操作数:的操作数:I I,Q
8、 Q,M M,SMSM,T T,C C,V V和和S S。 7.1.4 串联电路块的并联指令串联电路块的并联指令:用于串联电路块的并联连接。用于串联电路块的并联连接。 OLD(Or Load)OLD指令的使用指令的使用( )I0.0M0.0I0.1M0.1I0.2M0.2Q0.0OLDOLDLD I0.0A M0.0LD I0.1 AN M0.1OLDLDN I0.2AN M0.2OLD= Q0.0OLD指令使用说明:指令使用说明: 几个串联支路并联连接时,其支路的起点以几个串联支路并联连接时,其支路的起点以LD、LDN开开始,支路终点用始,支路终点用OLD指令。指令。 如需将多个支路并联,从
9、第二条支路开始,在每一支路如需将多个支路并联,从第二条支路开始,在每一支路后面加后面加OLD指令。用这种方法编程,对并联支路的个数没有指令。用这种方法编程,对并联支路的个数没有限制。限制。 OLD指令无操作数。指令无操作数。7.1.5 并联电路块的串联指令并联电路块的串联指令ALD(And Load) :用于并联电路块的串联连接用于并联电路块的串联连接ALD指令的使用指令的使用 LD I0.0O I0.1LD M0.0A M0.1LDN M0.2A M0.3OLDALD= Q0.0ALD指令使用说明:指令使用说明: 分支电路(并联电路块)与前面电路串联连接时,使分支电路(并联电路块)与前面电路
10、串联连接时,使用用ALD指令。分支的起始点用指令。分支的起始点用LD、LDN指令,并联电路块指令,并联电路块结束后,使用结束后,使用ALD指令与前面电路串联。指令与前面电路串联。 如果有多个并联电路块串联,顺次以如果有多个并联电路块串联,顺次以ALD指令与前面指令与前面支路连接,支路数量没有限制。支路连接,支路数量没有限制。 ALD指令无操作数。指令无操作数。7.1.6 置位与复位指令置位与复位指令STLLAD功功 能能置位指令置位指令S bit,NS-bit(S)N从从S-bit开始的开始的N个元件置个元件置1并保并保持持复位指令复位指令R bit,NS-bit(R)N从从S-bit开始的开
11、始的N个元件清个元件清0并保并保持持S/R指令使用指令使用 ( S )( R )Q0.0Q0.0I0.0I0.11 11 1LD I0.0( S )( R )Q0.0Q0.0I0.0I0.11 11 1S Q0.0,1LD I0.1R Q0.0,1I0.0 为为1,执行下条语句执行下条语句I0.1 为为1,执行下条语句执行下条语句S/R指令使用说明:指令使用说明: 对同一元件可以多次使用对同一元件可以多次使用S/R指令(与指令不同指令(与指令不同)。 对计数器和定时器复位,计数器和定时器的当前值将被清对计数器和定时器复位,计数器和定时器的当前值将被清零。零。 N的取值范围为的取值范围为1255
12、,N可为:可为:VB,IB,QB,MB,SMB,SB,LB,AC,常数,常数,*VD,*AC,*LD。一般情况下。一般情况下使用常数。使用常数。 S/R指令的操作数为:指令的操作数为:I,Q,M,SM,T,C,V,S和和L。立即指令立即指令:对输入输出点进行快速直接存取。对输入输出点进行快速直接存取。作用:作用:提高提高PLC对输入输出过程的响应速度,不受对输入输出过程的响应速度,不受PLC循循 环扫描工作方式的影响。环扫描工作方式的影响。特点:特点:当用立即指令读取输入点的状态时,对当用立即指令读取输入点的状态时,对 I 进行操作,相应进行操作,相应的输入映像寄存器中的值并未更新。的输入映像
13、寄存器中的值并未更新。当用立即指令访问输出点时,对当用立即指令访问输出点时,对Q进行操作,新值同时写进行操作,新值同时写到到PLC的物理输出点和相应的输出映像寄存器。的物理输出点和相应的输出映像寄存器。 7.1.7 立即指令立即指令指令名称指令名称STLSTLLADLAD使用说明使用说明立即取立即取LDI bitLDI bitbitbit只能为只能为I I立即取反立即取反LDNI bitLDNI bit立即或立即或OI bitOI bit立即或反立即或反ONI bitONI bit立即与立即与AI bitAI bit立即与反立即与反ANI bitANI bit立即输出立即输出=I bit=I
14、bitbitbit只能为只能为Q Q立即置位立即置位SI bit, NSI bit, N1.只能为只能为Q QN N的范围:的范围:11281128N N的操作数同的操作数同S/RS/R指令指令立即复位立即复位RI bit, NRI bit, NI/Ibitbit( )Ibit( )S Ib i tN( )R Ib i tN立即指令使用说明立即指令使用说明 立即指令使用 ( )( )( )( )II0.0I0.0I0.0Q0.1Q0.2Q0.3ISI1LD I0.0= Q0.0=I Q0.1SI Q0.2, 1LDI I0.1= Q0.3输入采样输出刷新输入采样输入采样输入采样输入采样输出刷新
15、输出刷新输出刷新输出刷新扫描周期 n扫描周期 n+1扫描周期 n+2扫描周期 n+3Q0.0映像寄存器Q0.1映像寄存器Q0.2映像寄存器Q0.3映像寄存器Q0.0物理触点Q0.1物理触点Q0.2物理触点Q0.3物理触点I 0.07.1.8 边沿脉冲指令边沿脉冲指令指令名称指令名称STLSTLLADLAD功功 能能操作元件操作元件上升沿脉冲上升沿脉冲EUEUPP( )上升沿微分输出上升沿微分输出无无下降沿脉冲下降沿脉冲EDEDPP( )下降沿微分输出下降沿微分输出无无EU/EDEU/ED指令的使用指令的使用 ( )( )( )( )I0.0M0.0I0.1M0.1Q0.0Q0.0M0.0M0.
16、1PNSR11LD I0.0EU= M0.0LD M0.0S Q0.0, 1LD I0.1ED= M0.1LD M0.1R 以下依次类推以下依次类推7.1.9逻辑堆栈操作指令逻辑堆栈操作指令S7-200S7-200系列系列PLCPLC中有一个中有一个9 9层堆栈,用于层堆栈,用于处理所有逻辑操作,称为处理所有逻辑操作,称为逻辑堆栈逻辑堆栈。特点:特点:“先进后出先进后出”。 ALD ALD(And LoadAnd Load)指令)指令ALDALD指令把逻辑堆栈第一、第二级的值指令把逻辑堆栈第一、第二级的值作作“与与”操作,结果置于栈顶。操作,结果置于栈顶。ALDALD执执行后堆栈减少一级。行后
17、堆栈减少一级。:与块指令。:与块指令。 OLD OLD指令把逻辑堆栈第一、第二级的指令把逻辑堆栈第一、第二级的值作值作“或或”操作,结果置于栈顶。操作,结果置于栈顶。OLDOLD执执行后堆栈减少一级。行后堆栈减少一级。或块指令或块指令 OLD OLD(Or LoadOr Load)指令:)指令: 在梯形图的分支结构中,在梯形图的分支结构中,LPSLPS指令指令用于生成一条新的母线,其左侧为原用于生成一条新的母线,其左侧为原来的主逻辑块,右侧为新的从逻辑块,来的主逻辑块,右侧为新的从逻辑块,可直接编程。可直接编程。LPSLPS指令的作用是把栈顶指令的作用是把栈顶值复制后压入堆栈,栈底值压出丢失。
18、值复制后压入堆栈,栈底值压出丢失。 LPS LPS指令(指令(Logic PushLogic Push):):逻辑入栈指令(分支电路开始指令)逻辑入栈指令(分支电路开始指令)进栈数据 栈底丢失 LRD指令的作用是把逻辑堆栈第二级的值指令的作用是把逻辑堆栈第二级的值复制到栈顶,堆栈没有压入和弹出。复制到栈顶,堆栈没有压入和弹出。 LRD(Logic Read)指令:)指令:逻辑读栈指令逻辑读栈指令 LPP(Logic Pop)指令:)指令:逻辑出栈指令(分支电路结束指令)逻辑出栈指令(分支电路结束指令)LPP指令的作用是把堆栈弹出一级,原指令的作用是把堆栈弹出一级,原第二级的值变为新的栈顶值。第
19、二级的值变为新的栈顶值。 LDS LDS(Load StackLoad Stack)指令:)指令:LDS指令的作用是复制堆栈中指令的作用是复制堆栈中的第的第n个值到栈顶,而栈底丢失。个值到栈顶,而栈底丢失。其指令格式为:其指令格式为: LDS n n为为08中的整数中的整数装入堆栈指令装入堆栈指令例如:例如:LDS 3 3数据丢失使用注意事项:使用注意事项: 由于受由于受9 9层堆栈空间的限制,层堆栈空间的限制,LPSLPS、LPPLPP指令连续使用时指令连续使用时应少于应少于9 9次。次。 LPS LPS、LPPLPP指令必须成对使用,它们之间可以使用指令必须成对使用,它们之间可以使用LRD
20、LRD指指令。令。 指令无操作数。指令无操作数。LPSLPS、LRDLRD和和LPPLPP指令应用指令应用( )( )( )( )I0.0M0.0M0.1M0.2M0.3M0.4M0.5M1.0M1.1M1.2Q0.0Q0.1Q0.2Q0.3LPPA M1.0= Q0.2LD M1.1ON M1.2ALD= Q0.3LD I0.0LPSLD M0.0O M0.1ALD= Q0.0LRDLD M0.2A M0.3LDN M0.4A M0.5OLDALD= Q0.17.1.10 定时器指令定时器指令S7-200系列系列PLC为用户提供了三种类型的定时器:为用户提供了三种类型的定时器:通电延时定时器
21、通电延时定时器TON(On Delay Timer)断电延时定时器断电延时定时器TOF(Off Delay Timer)保持型通电延时定时器保持型通电延时定时器TONR(Retentive On Delay Timer) 定时器的当前值、设定值均用定时器的当前值、设定值均用16位有符号整数来表示,最位有符号整数来表示,最大计数值为大计数值为32767。 1定时器编号定时器编号定时器编号用定时器的名称和常数(定时器编号用定时器的名称和常数(0255)编号)编号 2 2分辨率与定时时间的计算分辨率与定时时间的计算S7-200PLC定时器有三种分辨率:定时器有三种分辨率:定时器定时时间定时器定时时间
22、T的计算:的计算:T=PT S式中:式中:T为实际定时时间为实际定时时间,例:例:TON指令使用指令使用T33(10ms定时器),设定值为定时器),设定值为100,则实际定时时间为:则实际定时时间为:T=100 10=1000ms定时器、计数器的设定值的数据类型均为整型(定时器、计数器的设定值的数据类型均为整型(INT),除),除了常数外,还可以用了常数外,还可以用VW、IW等作它们的设定值。等作它们的设定值。1ms10ms 100msPT为定时设定值,为定时设定值, S为分辨率。为分辨率。3 3定时器指令使用说明定时器指令使用说明名名 称称格格 式式通电延时定时器通电延时定时器断电延时定时器
23、断电延时定时器 保持型通电延时定时器保持型通电延时定时器LADLADSTLSTLTON TTON T,PTPTTOF TTOF T,PTPTTONR TTONR T,PTPTINTONPT?INTOFPT?INTONRPT?上电或首次扫描时,定时器位为上电或首次扫描时,定时器位为OFF,当前值为,当前值为0。输入端(输入端(IN)接通时,定时器位为)接通时,定时器位为OFF,当前值从,当前值从0开始计开始计时,当前值达到时,当前值达到PT(Preset Time,预置时间)端的设定值时,预置时间)端的设定值时,定时器位变为定时器位变为ON,梯形图中对应定时器的常开触点闭合,常,梯形图中对应定时
24、器的常开触点闭合,常闭触点断开,当前值仍连续计数到闭触点断开,当前值仍连续计数到32767。输入端断开,定时器自动复位,当前值被清零,定时器位为输入端断开,定时器自动复位,当前值被清零,定时器位为OFF。 4 4通电延时定时器通电延时定时器 :通电后单一时间:通电后单一时间E间隔的定时间隔的定时5 5断电延时定时器断电延时定时器上电或首次扫描时,定时器位为上电或首次扫描时,定时器位为OFF,当前值为,当前值为0。输入端(输入端(IN)接通时,定时器位变为)接通时,定时器位变为ON,当前值为,当前值为0。当。当输入端由接通到断开时,定时器开始定时,当前值达到输入端由接通到断开时,定时器开始定时,
25、当前值达到PT(Preset Time,预置时间)端的设定值时,定时器位变为,预置时间)端的设定值时,定时器位变为OFF,当前值等于设定值,停止计时,直到输入电路接通。,当前值等于设定值,停止计时,直到输入电路接通。梯形图中对应定时器的常开触点闭合,常闭触点断开,当前梯形图中对应定时器的常开触点闭合,常闭触点断开,当前值仍连续计数到值仍连续计数到32767。输入端断开,定时器自动复位,当前值被清零,常开触点输入端断开,定时器自动复位,当前值被清零,常开触点断开。断开。:断电后单一时间间隔的定时:断电后单一时间间隔的定时6 6保持型通电延时定时器保持型通电延时定时器上电或首次扫描时,定时器位为上
26、电或首次扫描时,定时器位为OFF,当前值保持在掉电前,当前值保持在掉电前的值。的值。输入端(输入端(IN)接通时,当前值从上次的保持值开始继续计时,)接通时,当前值从上次的保持值开始继续计时,当累计当前值达到设定值时,定时器位变为当累计当前值达到设定值时,定时器位变为ON,当前值可继,当前值可继续计数到续计数到32767。 TONR指令只能用复位指令指令只能用复位指令R对其进行复位。对其进行复位。:多个时间间隔的累计定时:多个时间间隔的累计定时7 7定时器的刷新方法定时器的刷新方法S7-200系列系列PLC的定时器三种定时器的刷新方式是不同的。的定时器三种定时器的刷新方式是不同的。(1)1ms
27、定时器定时器 由系统每隔由系统每隔1ms刷新一次,与扫描周期及程序处理无关,刷新一次,与扫描周期及程序处理无关,即采用中断刷新方式。因而,当扫描周期较长时,在一个周期即采用中断刷新方式。因而,当扫描周期较长时,在一个周期内可能被多次刷新,其当前值在一个扫描周期内不一定保持一内可能被多次刷新,其当前值在一个扫描周期内不一定保持一致。致。(2)10ms 由系统在每个扫描周期开始时自动刷新。由于是每个扫描由系统在每个扫描周期开始时自动刷新。由于是每个扫描周期只刷新一次,故在每次程序处理期间,其当前值为常数。周期只刷新一次,故在每次程序处理期间,其当前值为常数。(3)100ms 在该定时器指令执行时被
28、刷新。如果该定时器线圈被激在该定时器指令执行时被刷新。如果该定时器线圈被激励,该定时器指令并不是每个扫描周期都执行,或在一个扫励,该定时器指令并不是每个扫描周期都执行,或在一个扫描周期中多次被执行,都会造成计时失准。描周期中多次被执行,都会造成计时失准。100ms定时器仅用在定时器指令在每个扫描周期执行一次的定时器仅用在定时器指令在每个扫描周期执行一次的程序中。程序中。TONTON、TOFTOF和和TONRTONR指令应用举例指令应用举例其中其中T33T33为为TONTON、T34T34为为TOFTOF、T1T1为为TONR TONR INTONPTT334INTOFPTT343INTONRP
29、TT110I0.0I0.0T33当 前 值T33位T34位T1位T34当 前 值T1当 前 值443310LD I0.0TON T33, 4TOF T34, 3TONR T1, 107.1.11 计数器计数器S7-200系列系列PLC为用户提供了三种类型的计数器:为用户提供了三种类型的计数器:增计数器增计数器CTU(Count Up)减计数器减计数器CTD(Count Down)增减计数器增减计数器CTUD(Count Up/ Down) 计数器的当前值、设定值均用计数器的当前值、设定值均用16位有符号整数来表示,最位有符号整数来表示,最大计数值为大计数值为32767 1计数器编号计数器编号计
30、数器编号用计数器的名称和常数(计数器编号用计数器的名称和常数(0255)编号,)编号,即即C,如:,如:C20。2计数器指令使用说明计数器指令使用说明CUCTUPV?RCDCTDPV?LDCDCTUDPV?RCU名名 称称 格格 式式增计数器增计数器减计数器减计数器增减计数器增减计数器LADLADSTLSTLCTU CCTU C,PVPVCTD CCTD C,PVPV CTUD CCTUD C,PVPV(1)增计数器)增计数器 增计数器指令(增计数器指令(CTU)在每一个)在每一个CU输入的上升沿(从输入的上升沿(从OFF到到ON),从当前计数值开始递增计数。当复位输入(),从当前计数值开始递
31、增计数。当复位输入(R)置位或者执行复位指令时,计数器复位。计数器在达到最大计置位或者执行复位指令时,计数器复位。计数器在达到最大计数值(数值(32767)时,停止计数。)时,停止计数。(2)减计数器)减计数器 减计数器指令(减计数器指令(CTD)输入端有上升沿时,减计数器每次)输入端有上升沿时,减计数器每次从计数器的当前值减计数。当装载输入端接通时,计数器复位从计数器的当前值减计数。当装载输入端接通时,计数器复位并把预设值装入当前值。当计数器达到并把预设值装入当前值。当计数器达到0时,计数器位接通。时,计数器位接通。(3)增减计数器()增减计数器(CTUD) 在每个在每个CU输入的上升沿,从
32、当前计数值开始递增计输入的上升沿,从当前计数值开始递增计数。在每个数。在每个CD输入的上升沿递减计数。输入的上升沿递减计数。 当复位输入(当复位输入(R)置位或执行复位指令时,计数器复)置位或执行复位指令时,计数器复位。在达到计数器最大值位。在达到计数器最大值32767后,下一个后,下一个CU输入上升沿输入上升沿将使计数值变为最小值(将使计数值变为最小值(-32768)。)。 同样在达到最小计数值(同样在达到最小计数值(-32768)后,下一个)后,下一个CD输输入上升沿将使计数值变为最大值(入上升沿将使计数值变为最大值(32767)。)。 前值大于等于预置值时,该计数器位被置位(前值大于等于
33、预置值时,该计数器位被置位(ON),否),否则,计数器位被复位(则,计数器位被复位(OFF)。)。指令说明:指令说明: 当用复位指令复位计数器时,计数器位被复位,并且当当用复位指令复位计数器时,计数器位被复位,并且当前值清零。参照计数器的当前值和计数器位使用计数器号。前值清零。参照计数器的当前值和计数器位使用计数器号。 值得注意的是,由于每个计数器只有一个当前值,请不值得注意的是,由于每个计数器只有一个当前值,请不要把一个计数器号分配给几个类型的计数器(增计数器、要把一个计数器号分配给几个类型的计数器(增计数器、减计数器和增减计数器和增/ /减计数器都使用同一个当前值)。减计数器都使用同一个当
34、前值)。CTU/CTUD指令使用要点:指令使用要点: 在在STL形式中,形式中,CU、CD和和R的顺序不能错。的顺序不能错。 CU、CD和和R信号可为复杂逻辑关系。信号可为复杂逻辑关系。 减计数器应用减计数器应用 I3.0 PVCTDC50LDI2.03CDLD I3.0LD I1.0CTD C50,3012332减I3.0I1.0装入当前 C48位 C48增减计数器应用增减计数器应用 I4.0CU PVCTUDC48RCDI3.04I2.0LD I4.0LD I3.0LD I2.0CTUD C48,47.1.12 7.1.12 比较指令比较指令比较指令是将两个操作数按指定的条件作比较,条件成
35、立时,比较指令是将两个操作数按指定的条件作比较,条件成立时,触点就闭合。触点就闭合。 n1n2n1n2nn1n2nSTLSTLLADLAD功功 能能LDLD n1 n1,n2n2比较触点接起始总线比较触点接起始总线LD nLD nA A n1 n1,n2n2比较触点的比较触点的“与与”LD nLD nO O n1 n1,n2n2比较触点的比较触点的“或或”“”表示操作数表示操作数n1n1,n2n2所需满足的条件:所需满足的条件: 等于比较,如等于比较,如LDLDn1n1,n2n2,即,即n1n1n2n2时触点闭合。时触点闭合。 大于等于比较,如大于等于比较,如 ,即,即n1n1n2n2时触点闭
36、合。时触点闭合。 小于等于比较,如小于等于比较,如 ,即,即n1n1AWMW2MW2,VW12VW12。D Double WordD Double Word,双字的比较,如,双字的比较,如ODODVD24VD24,MDMD。R RealR Real,实数的比较(实数应存放在双字中,仅限于,实数的比较(实数应存放在双字中,仅限于CPU214CPU214以上)以上) 7.1.13 NOT及及NOP指令指令STLSTLLADLAD功功 能能操作元件操作元件NOTNOTNOPNOPNOTNOT(NOPNOP)逻辑结果取反逻辑结果取反空操作空操作无无无无取反指令取反指令NOT,空操作指令空操作指令NOP
37、 7.2 程序控制指令程序控制指令7.2.1 跳转及标号指令跳转及标号指令JMP( )LBLJMP nLBL nnnSTLLAD跳转指令,当输入端有效时,使程跳转指令,当输入端有效时,使程序的执行跳转到指定的标号。执行序的执行跳转到指定的标号。执行跳转后,逻辑堆栈顶总为跳转后,逻辑堆栈顶总为1。指定跳转的目标标号。操作数指定跳转的目标标号。操作数n:0255。 跳转指令及标号的例子跳转指令及标号的例子 ( )JMPSM0.2LBL44.LDN SM0.2JMP 4.LBL 4必须强调:必须强调:跳转指令及标号必须同跳转指令及标号必须同在主程序内,或在同一子程序、同在主程序内,或在同一子程序、同
38、一中断服务程内,不可由主程序跳一中断服务程内,不可由主程序跳转到中断服务程序或子程序中,也转到中断服务程序或子程序中,也不可由中断服务程序或子程序跳转不可由中断服务程序或子程序跳转到主程序中。到主程序中。7.2.2 结束及暂停指令结束及暂停指令1 1结束指令(结束指令(ENDEND和和MENDMEND)( )( )ENDENDENDSTLLADMENDEND:条件结束指令条件结束指令MEND:无条件结束指令无条件结束指令执行条件成立(左侧逻辑值为执行条件成立(左侧逻辑值为1)时结束主程序,返回主程序起点。时结束主程序,返回主程序起点。结束主程序,返回主程序起点。结束主程序,返回主程序起点。指令
39、说明指令说明: (1)用户程序必须以无条件结束指令结束主程序。用户程序必须以无条件结束指令结束主程序。 (2)条件结束指令用在无条件结束指令前结束主程序。条件结束指令用在无条件结束指令前结束主程序。 MEND为无条件结束指令,在编程结束时一定要写上该指为无条件结束指令,在编程结束时一定要写上该指令,否则会出错。在调试程序时,在程序的适当位置插入令,否则会出错。在调试程序时,在程序的适当位置插入MEND指令可以实现程序的分段调试。指令可以实现程序的分段调试。 (3)STEP7-Micro/WIN32没有无条件结束指令,但它会自没有无条件结束指令,但它会自动加一无条件结束指令到每一个主程序的结尾。
40、动加一无条件结束指令到每一个主程序的结尾。0.0.( )LD I0.0END2停止指令(停止指令(STOP)( )S T O PS T LL A DS T O P (1)停止指令()停止指令(STOP)有效时,可以使主机)有效时,可以使主机CPU的工作方式由的工作方式由RUN切切换到换到STOP,从而立即中止用户程序的执行。,从而立即中止用户程序的执行。STOP指令在梯形图中以线圈指令在梯形图中以线圈形式编程。形式编程。 (2)STOP指令可以用在主程序、子程序和中断服务程序中。如果在中指令可以用在主程序、子程序和中断服务程序中。如果在中断程序中执行断程序中执行STOP指令,则中断处理立即中止
41、,并忽略所有挂起的中断。指令,则中断处理立即中止,并忽略所有挂起的中断。继续扫描程序的剩余部分,在本次扫描周期结束后,完成将主机从继续扫描程序的剩余部分,在本次扫描周期结束后,完成将主机从RUN到到STOP的切换。的切换。 (3)STOP:停止指令,执行条件成立(左侧逻辑值为:停止指令,执行条件成立(左侧逻辑值为1)时停止执行)时停止执行用户程序,令用户程序,令CPU状态由状态由RUN转到转到STOP。 操作数:无。操作数:无。 (4)STOP指令和指令和END指令通常在程序中用来对突发紧急事件进行处理,指令通常在程序中用来对突发紧急事件进行处理,以避免实际生产中的重大损失。以避免实际生产中的
42、重大损失。指令说明:指令说明:7.2.3 看门狗指令看门狗指令WDR称为看门狗复位指令,也称为警戒时钟刷新指令。它可以称为看门狗复位指令,也称为警戒时钟刷新指令。它可以把警戒时钟刷新,即延长扫描周期。把警戒时钟刷新,即延长扫描周期。WDR指令在梯形图中以线圈形式编程,无操作数。指令在梯形图中以线圈形式编程,无操作数。 .( ).LD M5.6WDR警戒时钟刷新指令(警戒时钟刷新指令(WDR)说明:)说明: 若在若在FOR、NEXT循环中写入循环中写入WDR指令,则可能使一次指令,则可能使一次扫描的时间拖得很长扫描的时间拖得很长 而在一次扫描结束之前,下面的处理是被禁止的:而在一次扫描结束之前,
43、下面的处理是被禁止的: 通信(自由口通信除外)。通信(自由口通信除外)。 I/O刷新(直接刷新(直接I/O除外)。除外)。 强制刷新。强制刷新。 特殊标志位刷新(特殊标志位刷新(SM0,SM5SM29均不可刷新)。均不可刷新)。 运行时间诊断。运行时间诊断。 扫描时间超过扫描时间超过25s时,使时,使10ms、100ms定时器不能正确计定时器不能正确计时。时。 不处理中断程序中的不处理中断程序中的STOP指令。指令。注意:注意:如果希望扫描周期超过如果希望扫描周期超过300ms,或希望中断时间超过,或希望中断时间超过300ms,则最好用,则最好用WDR指令来重新触发看门狗定时器。指令来重新触发
44、看门狗定时器。7.2.4 FOR、NEXT循环指令循环指令 FOR FOR指令和指令和NEXTNEXT指令必须成对使用,指令必须成对使用,FORFOR标记循环的开始,标记循环的开始,NEXTNEXT标记循环的结束。标记循环的结束。FORFOR标记在标记在FORFOR和和NEXTNEXT标记之间执行指令,标记之间执行指令,必须给必须给FORFOR指令指定当前循环计数(指令指定当前循环计数(INDXINDX)、初值()、初值(INITINIT)和终)和终值(值(FINALFINAL)。)。 NEXTNEXT指令标记循环的结束,并且置栈顶值为指令标记循环的结束,并且置栈顶值为1 1。 例如例如: :
45、给定初值(给定初值(INITINIT)为)为1 1,终值(,终值(FINALFINAL)为)为1010,那么,那么随着当前计数值(随着当前计数值(INDXINDX)从)从1 1增加到增加到1010,FORFOR与与NEXTNEXT之间的指令之间的指令被执行被执行1010次次。 7.2.5 子程序子程序1子程序建立指令(子程序建立指令(SBR) 2子程序调用和条件返回指令子程序调用和条件返回指令子程序调用指令子程序条件返回指令SBR-0EN(RET)LADSTLCALL SBR_0CRET(1)子程序调用指令()子程序调用指令(CALL)子程序的调用可以带参数。子程序的调用可以带参数。它在梯形图
46、中以指令盒的形式编它在梯形图中以指令盒的形式编程。程。(2)子程序条件返回指令()子程序条件返回指令(CRET)梯形图中以线圈的形式编程,指令不带参数,梯形图中以线圈的形式编程,指令不带参数, 子程序调用子程序调用/返回指令的应用返回指令的应用 LD SM0.1CALL 10.14.3.RET( )LD M14.3CRET子程序调用、返回指令说明:子程序调用、返回指令说明: 1 1、STEP7-Micro/WIN32STEP7-Micro/WIN32没有子程序无条件返回指令,但它没有子程序无条件返回指令,但它会自动加一无条件返回指令到每一个子程序的结尾。会自动加一无条件返回指令到每一个子程序的
47、结尾。 2 2、子程序可以嵌套,嵌套层数可达、子程序可以嵌套,嵌套层数可达8 8层。不禁止自调用。层。不禁止自调用。 3 3、当一个子程序被调用时,整个逻辑堆栈另存别处,然后、当一个子程序被调用时,整个逻辑堆栈另存别处,然后栈顶置栈顶置1 1,其余栈位置,其余栈位置0 0,程序执行转到被调用的子程序。,程序执行转到被调用的子程序。 子程序执行完毕,逻辑堆栈恢复原调用点的值,程序执行子程序执行完毕,逻辑堆栈恢复原调用点的值,程序执行返回到主调用程序。因为调用子程序后,栈顶总为返回到主调用程序。因为调用子程序后,栈顶总为1 1,所以跟随,所以跟随SBRSBR指令后的输出线圈或功能框可直接接到梯形图
48、左边母线上,指令后的输出线圈或功能框可直接接到梯形图左边母线上,在指令表中,跟在在指令表中,跟在SBRSBR后的后的LoadLoad指令可省略。指令可省略。 4 4、累加器值可在主、子程序间自由传递,调用子程序时无、累加器值可在主、子程序间自由传递,调用子程序时无需对累加器作存储及重装操作。需对累加器作存储及重装操作。7.2.6 与与ENO指令指令1 1、ENOENO是是LADLAD中指令盒的布尔量输出。中指令盒的布尔量输出。 如果指令盒的输入有能流,而且执行没有错误,如果指令盒的输入有能流,而且执行没有错误,ENOENO输出就输出就把能流传到下一个指令盒。把能流传到下一个指令盒。 ENOEN
49、O可以作为允许位表示指令成功执行。可以作为允许位表示指令成功执行。 借助堆栈,借助堆栈,ENOENO位用来影响其后指令执行的能流。位用来影响其后指令执行的能流。 STLSTL指令没有指令没有ENEN输入。对于要执行的指令栈顶必须是输入。对于要执行的指令栈顶必须是1 1。 在在STLSTL中没有中没有ENOENO输出,但是,带有输出,但是,带有ENOENO的的LADLAD指令对应的指令对应的STLSTL指令置一个特殊的指令置一个特殊的ENOENO位。该位用位。该位用“与与”ENOENO(AENOAENO)指令)指令访问。访问。AENOAENO可以用来产生和指令盒的可以用来产生和指令盒的ENOEN
50、O位同样的效果。位同样的效果。2 2、指令格式:、指令格式:AENOAENO AENO AENO指令无操作数,且只在指令无操作数,且只在STLSTL中使用,它将栈顶值和中使用,它将栈顶值和ENOENO位的逻辑与运算,运算结果保存到栈顶。位的逻辑与运算,运算结果保存到栈顶。 AENO指令的应用指令的应用 LD I0.0+I VW200,VW204AENOATCH INT_0,107.3 基本指令应用举例基本指令应用举例7.3.1 7.3.1 延时电路延时电路1 1延时脉冲产生电路延时脉冲产生电路 控制要求:输入信号控制要求:输入信号I0.0满足(满足(ON)后,停一段时间后产)后,停一段时间后产
51、生一个脉冲。该电路常用于获取启动或开关信号生一个脉冲。该电路常用于获取启动或开关信号。( )( )( )INTONPT+400T34I0.0PM0.0M0.0Q0.0M0.1M0.1T34Q0.0过程工作:过程工作: 利用脉冲指令在利用脉冲指令在I0.0I0.0的上升沿产生的上升沿产生一个计时启动脉冲,接下来就是自锁回一个计时启动脉冲,接下来就是自锁回路。路。 因为定时器没有瞬动触点,所以必因为定时器没有瞬动触点,所以必须用一个中间继电器须用一个中间继电器M0.1M0.1组成延时逻辑。组成延时逻辑。 T34T34定时到,产生一个宽度为一个定时到,产生一个宽度为一个周期的脉冲周期的脉冲Q0.0Q
52、0.0,然后使,然后使T34T34复位。复位。( )( )( )INTONPT+400T34I0.0PM0.0M0.0Q0.0M0.1M0.1T34Q0.0AN Q0.0= M0.1TON T34,+400LD T34= Q0.0LD I0.0EU= M0.0LD M0.0O M0.12 2瞬时接通延时断开电路瞬时接通延时断开电路( )I0.0T37Q0.0I0.0Q0.0Q0.0T37INPTTON+30 当输入信号有效时,(当输入信号有效时,(Q0.0)立即有输出,而输入信号)立即有输出,而输入信号OFF后,输出信号延时一段时间才后,输出信号延时一段时间才OFF LD I0.0O Q0.0
53、AN T37= Q0.03SI0.0Q0.0梯形图梯形图 时序图时序图 LDN I0.0A Q0.0TON T37,+303 3延时接通延时断开电路延时接通延时断开电路 当有输入信号后,停一段时间输出信号才为当有输入信号后,停一段时间输出信号才为ONON。而输入。而输入信号信号OFFOFF后,输出信号延时一段时间才后,输出信号延时一段时间才OFF OFF I0.0I0.0 Q0.0T40T41Q0.0PTTONININPTTON( )+40+60T40T41A Q0.0TON T41,+60LD T40LD I0.0TON T40,+40LDN I0.0I0.0Q0.03S5SO Q0.0AN
54、 T41= Q0.0 4 4脉冲宽度可控电路脉冲宽度可控电路作用:作用:输入信号宽度不规范的情况下,该指令可调节脉冲宽。输入信号宽度不规范的情况下,该指令可调节脉冲宽。注意:注意:如果输入信号的两个上升沿之间的距离小于该脉冲宽度,如果输入信号的两个上升沿之间的距离小于该脉冲宽度,则忽略输入信号的第二个上升沿。则忽略输入信号的第二个上升沿。I 0 . 0T 4 2M O . OT 4 2( )M 0 . 0M 0 . 0P TT O NI N+ 2 0T 4 2( )M 0 . 0Q 0 . 0应用举例应用举例LD M0.0AN T42O I0.0= M0.0LD M0.0TON T42,+20LD M0.0AN T42= Q0.0 5 5长延时电路长延时电路 S7-200PLC中定时器的最长定时时间不到中定时器的最长定时时间不到1小时,实际应小时,实际应用中往往需要几小时甚至几天或更长时间的定时控制,这就需用中往往需要几小时甚至几天或更长时间的定时控制,这就需要通过编制程序来实现。要通过编制程序来实现。 7.3.2 二分频电路二分频电路二分频电路梯形图二分频电路梯形图 Q0.0M0.2( )M0.0M0.1M0.0( )I0.1M0.2Q0.0( )M0.0Q0.0M0.1(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 写字房租赁合同范例
- 产品返工合同范例
- 个人简易担保合同范例
- 公司众筹合同范例
- 体育机构加盟合同范例
- 东莞房间空调采购合同范例
- 以工代赈劳务合同范例
- 全无机无铅双钙钛矿材料物性调控的理论研究
- 上海钢琴租赁合同范例
- 灵活用工平台税收征管问题及对策研究
- 2025年1月 浙江首考英语试卷
- 2024年07月威海市商业银行校园招考大学生报到笔试历年参考题库附带答案详解
- 房屋修缮工程难点、重点分析及应对措施
- 2024年全国职业院校技能大赛(节水系统安装与维护赛项)考试题库(含答案)
- 《汽丰田服务流程》课件
- 财务管理(山东联盟-青岛科技大学)知到智慧树章节测试课后答案2024年秋青岛科技大学
- 2024初中语文新教材培训:阅读综合实践栏目的设计与使用解读
- 《高压直流输电换流阀用金属管状电阻器技术规范(征求意见稿)》
- GJB9001C-2017版标准培训课件
- 天津市南开区2025届高三下学期一模考试英语试题含解析
- 【大学】电子陶瓷材料
评论
0/150
提交评论