资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第,4,章,S7-200,系列,PLC,基本指令及实训,4.1,可编程控制器程序设计语言,梯形图,语句表,顺序功能流程图,功能块图,1.,梯形图(,Ladder Diagram,)程序设计语言,LAD,图形指令有,3,个基本形式:,触点,、,线圈,、指令盒,(1)触点:,触点符号代表输入条件如外部开关,按钮及内部条件等。CPU运行扫描到触点符号时,到触点位指定的存储器位访问(即CPU对存储器的读操作)。该位数据(状态)为1时,表示“能流”能通过。计算机读操作的次数不受限制,用户程序中,常开触点,常闭触点可以使用无数次。,bit,bit,常开触点,常闭触点,(2)线圈,线圈表示输出结果,通过输出接口电路来控制外部的指示灯、接触器等及内部的输出条件等。线圈左侧接点组成的逻辑运算结果为1时,“能流”可以达到线圈,使线圈得电动作,CPU将线圈的位地址指定的存储器的位置位为1,逻辑运算结果为0,线圈不通电,存储器的位置0。即线圈代表CPU对存储器的写操作。PLC采用循环扫描的工作方式,所以在用户程序中,每个线圈只能使用一次。,(3)指令盒,指令盒代表一些较复杂的功能。如定时器,计数器或数学运算指令等。当“能流”通过指令盒时,执行指令盒所代表的功能。,梯形图按照逻辑关系可分成网络段,分段只是为了阅读和调试方便。在举例中我们将网络段省去。,2.,语句表(,Statement List,)程序设计语言,语句表程序设计语言是用布尔助记符来描述程序的一种程序设计语言。,语句表程序设计语言具有下列特点,(1) 采用助记符来表示操作功能,具有容易记忆,便于撑握的特点;,(2) 在编程器的键盘上采用助记符表示,具有便于操作的特点,可在无计算机的场合进行编程设计;,(3) 用编程软件可以将语句表与梯形图可以相互转换,例如,图中的梯形图转换为语句表程序如下:,梯形图,网络1,LD I0.0,O Q0.0,AN T37,= Q0.0,TON T37, +50,网络2,LD I0.2,= Q0.1,3,.,顺序功能流程图(,Sepuential Function Chart,)程序设计,顺序功能流程图程序设计是近年来发展起来的一种程序设计。采用顺序功能流程图的描述,控制系统被分为若干个子系统,从功能入手,使系统的操作具有明确的含义,便于设计人员和操作人员设计思想的沟通,便于程序的分工设计和检查调试。顺序功能流程图的主要元素是步、转移、转移条件和动作。如图所示。顺序功能流程图程序设计的特点是:,(1)以功能为主线,条理清楚,便于对程序操作的理解和沟通;,(2)对大型的程序,可分工设计,采用较为灵活的程序结构,可节省程序设计时间和调试时间;,(3)常用于系统的规模校大,程序关系较复杂的场合;,(4)只有在活动步的命令和操作被执行,才对活动步后的转换进行扫描,因此,整个程序的扫描时间要大大缩短。,步2,步1,步3,动作,动作,动作,转移条件,转移条件,起动条件,图4-2 顺序功能流程图,4.,功能块图(,Function Block Diagram,)程序设计语言,功能块图程序设计语言是采用逻辑门电路的编程语言,有数字电路基础的人很容易掌握。功能块图指令由输入、输出段及逻辑关系函数组成。流动。,图4-3 功能块图,4.2,基本位逻辑指令与应用,4.2.1,基本位操作指令介绍,位操作指令是,PLC,常用的基本指令,梯形图指令有触点和线圈两大类,触点又分常开触点和常闭触点两种形式;语句表指令有与、或以及输出等逻辑关系,位操作指令能够实现基本的位逻辑运算和控制。,1.,逻辑取(装载),LD/LDN,及线圈驱动指令 =(OUT),LD(load):常开触点逻辑运算的开始。对应梯形图则为在左侧母线或线路分支点处初始装载一个常开触点。,LDN(load not):常闭触点逻辑运算的开始(即对操作数的状态取反),对应梯形图则为在左侧母线或线路分支点处初始装载一个常闭触点。,=(OUT):线圈驱动(赋值指令)。对同一元件只能使用一次。,网络1,LD I0.0 /装载常开触点,= Q0.0 /输出线圈,网络2,LDN I0.0 /装载常闭触点,= M0.0 /输出线圈,说明:,1) 触点代表CPU对存储器的读操作,常开触点和存储器的位状态一致,常闭触点和存储器的位状态相反。用户程序中同一触点可使用无数次。,如:存储器I0.0的状态为1,则对应的常开触点I0.0接通,表示能流可以通过;而对应的常闭触点I0.0断开,表示能流不能通过。存储器I0.0的状态为0,则对应的常开触点I0.0断开,表示能流不能通过;而对应的常闭触点I0.0接通,表示能流可以通过。,2) 线圈代表CPU对存储器的写操作,若线圈左侧的逻辑运算结果为“1”,表示能流能够达到线圈,CPU将该线圈所对应的存储器的位置位为“1”,若线圈左侧的逻辑运算结果为“0”,表示能流不能够达到线圈,CPU将该线圈所对应的存储器的位写入“0”用户程序中,同一线圈只能使用一次。,(3)LD/LDN, = 指令使用说明:,LD 、LDN 指令用于与输入公共母线(输入母线)相联的接点,也可与OLD、ALD指令配合使用于分支回路的开头。,“=” 指令用于Q、M、SM、T、C、V、S。但不能用于输入映像寄存器I。输出端不带负载时,控制线圈应尽量使用M或其他,而不用Q。LD I0.0,= M0.0,= Q0.0,“=”可以并联使用任意次,但不能串联。如下图所示。,LD I0.0,= M0.0,= Q0.0,2.,触点串联指令 A(And)、AN(And not),A(And):与操作,在梯形图中表示串联连接单个常开触点。,AN(And not):与非操作,在梯形图中表示串联连接单个常闭触点。,(2)指令格式如图所示,网络1,LD I0.0 /装载常开触点,A M0.0 /与常开触点,= Q0.0 /输出线圈,网络2,LD Q0.0 /装载常开触点,AN I0.1 /与常闭触点,= M0.0 /输出线圈,A T37 /与常开触点,= Q0.1 /输出线圈,(3)A/AN 指令使用说明:,A、AN的操作数:I、Q、M、SM、T、C、V、S,A、AN是单个触点串联连接指令,可连续使用。如图所示。,LD M0.0,A T37,AN T38,= Q0.0,若要串联多个接点组合回路时,必须使用ALD指令。如图所示,图4-8,ALD,若按正确次序编程(即输入:“左重右轻、上重下轻”;输出:上轻下重),可以反复使用=指令。如第一图所示。但若按第二图所示的编程次序,就不能连续使用“=”指令,。,3. 触点并联指令:O(Or)/ON(Or not),(1)指令功能,O:或操作,在梯形图中表示并联连接一个常开触点。,ON:或非操作,在梯形图中表示并联连接一个常闭触点。,(2)指令格式如图所示,网络1,LD I0.0,O I0.1,ON M0.0,= Q0.0,网络2,LDN Q0.0,A I0.2,O M0.1,AN I0.3,O M0.2,= M0.1,(3)O/ON指令使用说明:,O/ON指令可作为并联一个触点指令,紧接在LD/LDN指令之后用,即对其前面的LD/LDN指令所规定的触点并联一个触点,可以连续使用。,若要将两个以上触点的串联回路与其他回路并联时,须采用OLD指令。,ON操作数:I、Q、M、SM、V、S、T、C。,4. 电路块的串联指令ALD,(1)指令功能,ALD:块“与”操作,用于串联连接多个并联电路组成的电路块。,(2)指令格式如图所示,ALD,梯形图,LD I1.0 /装入常开触点,O I1.1 /或常开触点,LD I1.2 /装入常开触点,O I1.3 /或常开触点,ALD /块与操作,= Q0.0 /输出线圈,语句表,图,4-12,ALD,指令使用,(3)ALD指令使用说明:,并联电路块与前面电路串联连接时,使用ALD指令。分支的起点用LD/LDN指令,并联电路结束后使用ALD指令与前面电路串联。,可以顺次使用ALD指令串联多个并联电路块,支路数量没有限制。如图4-13所示。,ALD指令无操作数。,ALD,ALD,LD I0.0,ON I0.3,LD I0.1,O I0.4,ALD,LD I0.2,O I0.5,ALD,= Q0.0,ALD指令使用,5. 电路块的并联指令OLD,(1)指令功能,OLD:块“或”操作,用于并联连接多个串联电路组成的电路块。,(2)指令格式如图所示。,OLD指令的使用,OLD,OLD,LD I0.0 /装入常开触点,A I0.1 /与常开触点,LD I0.2 /装入常开触点,A I0.3 /与常开触点,OLD /块或操作,LDN I0.4 /装入常闭触点,A I0.5 /与常开触点,OLD /块或操作,= Q0.0 /输出线圈,(3)OLD指令使用说明:,并联连接几个串联支路时,其支路的起点以LD 、LDN开始,并联结束后用OLD。,可以顺次使用OLD指令并联多个串联电路块,支路数量没有限制。,ALD指令无操作数。,【例】根据下图所示梯形图,写出对应的语句表。,LD I0.0,O I0.1,LD I0.2,A I0.3,LD I0.4,AN I0.5,OLD,O I0.6,ALD,ON I0.7,= Q0.0,6. 逻辑堆栈的操作,S7-200系列采用模拟栈的结构,用于保存逻辑运算结果及断点的地址,称为逻辑堆栈。S7-200系列PLC中有一个9层的堆栈。在此讨论断点保护功能的堆栈操作。,(1)指令的功能,堆栈操作指令用于处理线路的分支点。在编制控制程序时,经常遇到多个分支电路同时受一个或一组触点控制的情况如图4-17所示,若采用前述指令不容易编写程序,用堆栈操作指令则可方便的将图4-17所示梯形图转换为语句表。,LPS(入栈)指令:LPS指令把栈顶值复制后压入堆栈,栈中原来数据依次下移一层,栈底值压出丢失。,LRD(读栈)指令:LRD指令把逻辑堆栈第二层的值复制到栈顶,2-9层数据不变,堆栈没有压入和弹出。但原栈顶的值丢失。,LPP(出栈)指令:LPP指令把堆栈弹出一级,原第二级的值变为新的栈顶值,原栈顶数据从栈内丢失。,LPS、LRD、LPP指令的操作过程如图所示。图中 IV.x为存储在栈区的断点的地址。,指令格式如图所示。,LPS,LRD,LPP,LD I0.0 /装载常开触点,LPS /压入堆栈,LD I0.1 /装载常开触点,O I0.2 /或常开触点,ALD /块与操作,= Q0.0 /输出线圈,LRD /读栈,LD I0.3 /装载常开触点,O I0.4 /或常开触点,ALD /块与操作,= Q0.1 /输出线圈,LPP /出栈,A I0.5 /与常开触点,= Q0.2 /输出线圈,堆栈指令的使用,(3)指令使用说明:,逻辑堆栈指令可以嵌套使用,最多为9层。,为保证程序地址指针不发生错误,入栈指令LPS和出栈指令LPP必须成对使用,最后一次读栈操作应使用出栈指令LPP。,堆栈指令没有操作数。,7. 置位/复位指令 S/R,(1)指令功能,置位指令S:使能输入有效后从起始位S-bit开始的N 个为置“1”并保持。,复位指令R:使能输入有效后从起始位S-bit开始的N 个为清“0”并保持。,S/R指令格式,STL,LAD,S S-bit,N,S-bit,( ),N,R S-bit,N,R-bit,( ),N,网络1,LD I0.0,S Q0.0, 1,网络2,LD I0.1,R Q0.0, 1,S/R指令的使用,(3)指令使用说明:,对同一元件(同一寄存器的位)可以多次使用S/R指令(与“=”指令不同)。,由于是扫描工作方式,当置位、复位指令同时有效时,写在后面的指令具有优先权。,操作数N为:VB, IB, QB, MB, SMB, SB, LB, AC, 常量, *VD, *AC, *LD。取值范围为:0255。数据类型为:字节。,操作数S-bit为:I, Q, M, SM, T, C, V, S, L。数据类型为:布尔。,置位复位指令通常成对使用,也可以单独使用或与指令盒配合使用。,【例】图所示的置位、复位指令应用举例及时序分析。如图所示。,网络1,LD I0.0,S Q0.0, 1,网络2,LD I0.1,R Q0.0, 1,S/R指令的使用,(4)= 、S、 R 指令比较。如图所示。,LD I0.0,= Q0.0,S Q0.1, 1,R Q0.2, 2,8. 脉冲生成指令 EU/ED,1)指令功能,EU指令:在EU指令前的逻辑运算结果有一个上升沿时(由OFFON)产生一个宽度为一个扫描周期的脉冲,驱动后面的输出线圈。,ED指令:在ED指令前有一个下降沿时产生一个宽度为一个扫描周期的脉冲,驱动其后线圈。,(2)指令格式如表所示,用法如图,时序分析如图所示。,STL,LAD,操作数,EU(Edge Up),无,ED(Edge Down),无,网络1,LD I0.0 /装入常开触点,EU /正跳变,= M0.0 /输出,网络2,LD M0.0 /装入,S Q0.0, 1 /输出置位,网络3,LD I0.1 /装入,ED /负跳变,= M0.1 /输出,网络4,LD M0.1 /装入,R Q0.0, 1 /输出复位,程序及运行结果分析如下:,I0.0的上升沿,经触点(EU)产生一个扫描周期的时钟脉冲,驱动输出线圈M0.0导通一个扫描周期,M0.0的常开触点闭合一个扫描周期,使输出线圈Q0.0置位为1,并保持。,I0.1的下降沿,经触点(ED)产生一个扫描周期的时钟脉冲,驱动输出线圈M0.1导通一个扫描周期,M0.1的常开触点闭合一个扫描周期,使输出线圈Q0.0复位为0,并保持。,(3)指令使用说明,EU、ED指令只在输入信号变化时有效,其输出信号的脉冲宽度为一,个机器扫描周期。,对开机时就为接通状态的输入条件,EU指令不执行。,EU、ED指令无操作数。,1.,逻辑取(装载)及线圈驱动指令,(1)LD(load):常开触点逻辑运算的开始。,LDN(load not):常闭触点逻辑运算的开始 (对操作数的状态取反),=(OUT):线圈驱动(赋值指令)。对同一元件只能使用一次。,(2) 指令格式,LAD,STL,LD I0.0,= Q0.0,LDN I0.0,= M0.0,触点代表CPU 对存储器的读操作, 用户程序中,触点可以使用无数次。,OFF,1,I0.0,ON,0,I0.0,OFF,ON,线圈:代表CPU对存储器的写操作,用户程序中同一线圈只能使用一次。,ON,Q0.0,1,0,OFF,0,Q0.0,1,(3) LD /LDN、“=” 指令使用说明,LD ,LDN 指令用于与输入公共母线(输入母线)相联的触点,也可与OLD,ALD指令配合使用于分支回路的开头。,“=”指令用于Q,M, SM, T, C, V,S。但不能用于I。输出端不带负,载时,控制线圈应使用M或其它。尽可能不要使用Q。,“=”指令可以并联使用任意次,但不能,串联,。,LD T37,= M0.0,= Q0.0,LD,LDN的操作数:I,Q,M,SM,T,C,V,S。,“=”(OUT)的操作数:Q,M,SM,T,C,V,S。,2. 触点串联指令A(And),AN(And not),(1)定义,A(And):串联连接常开触点。,AN(And not)串联连接常闭触点。,A M0.0 /与常开触点,= Q0.0 /输出线圈,LD Q0.0 /装载常开触点,AN I0.1 /与常闭触点,= M0.0 /输出线圈,A T37 /与常开触点,= Q0.1 /输出线圈,(2)指令格式,A/AN 指令使用说明:,(1)A,AN是单个触点串联连接指令,可连续使用,。,(2)若要串联多个触点组合回路时,必须使用ALD指令。,(3)若按正确次序编程(即输入:左重右轻;输出:上轻下重),可以反复使用“=”指令。,但若按:,(4)A,AN的操作数:I,Q,M,SM,T,C,V,S.,3. 触点并联指令:(),(),(1)定义,():并联连接常开触点。,:并联连接常闭触点。,(2)指令格式,LD I0.0,O I0.1,ON M0.0,= Q0.0,LDN Q0.0,A I0.2,O M0.1,AN I0.3,O M0.2,= M0.1,O,ON指令使用说明:,(1)O,ON指令可作为并联一个接点指令。紧接在LD,LDN,指令之后用, 即对其前面的LD,LDN指令所规定的触点并联一,个触点,可以连续使用。,(2)若要将两个以上触点的串联回路与其他回路并联时,须采用OLD指令。,( ),(3)O,ON操作数为:I,Q,M,SM,V,S,T,C。,4. 逻辑环节(电路块)的串联指令ALD,.,(1)定义,ALD,(ndload,),:用于串联连接并联触点组成的电路块,。,(2) 指令格式,LAD,STL,LD I1.0 /装入常开触点,电路块1,电路块2,ALD,O I1.2 /或常开触点,LD I1.1 /装入常开触点,O I1.2 /或常开触点,ALD /块与操作,= Q0.0 /输出线圈,ALD指令使用说明:,并联电路块与前面电路串联连接时,使用ALD指令。分支的起点用LD,LDN指令。并联电路结束后使用ALD指令与前面电路串联。,如果有多个并联电路块串联,顺次使用ALD指令与前面支路连接,支路数量没有限制。,ALD指令无操作数。,5. 逻辑环节(电路块)的并联指令OLD,.,(1)定义,OLD,(ORload,),:用于并联连接串联触点组成的电路块,。,(2)指令格式,OLD,OLD,STL,LD I0.0,A I0.1,LD I0.2,A I0.3,LDN I0.4,A I0.5,= Q0.0,OLD,OLD,(3)OLD 指令使用说明:,几个串联支路并联连接时,其支路的起点以LD ,LDN开始,以OLD结束。,如需将多个支路并联,从第二条支路开始,在每一条支路后面加OLD指令,用这种方法编程,对并联支路数没有限制。,OLD指令没有操作数。,例题:起动保持停止电路(起保停电路),LD I0.0,起动 I0.0,停止 I0.1,Q0.0,O Q0.0,AN I0.1,= Q0.0,0,1,0,1,例题:起动保持停止电路(起保停电路),LD I0.0,起动 I0.0,停止 I0.1,Q0.0,O Q0.0,AN I0.1,= Q0.0,0,1,0,1,1,1,LD I0.0,起动 I0.0,停止 I0.1,Q0.0,O Q0.0,AN I0.1,= Q0.0,1,0,1,0,1,1,0,0,0,例题:起动保持停止电路(起保停电路)。,LD I0.0,O Q0.0,AN I0.1,= Q0.0,CPU224,I0.0,I0.1,1M,2M,L+,DC24V,1L,Q0.0,SB1,SB2,AC220V,KM,I0.0,I0.1,Q0.0,输入映像寄存器,起动,停止,.I0.0,I0.1,Q0.0,输出映像寄存器,LD I0.0,O Q0.0,AN I0.1,= Q0.0,CPU224,I0.0,I0.1,1M,2M,L+,DC24V,1L,Q0.0,SB1,SB2,AC220V,KM,I0.0,I0.1,Q0.0,输入映像寄存器,起动,停止,I0.0,I0.1,Q0.0,输出映像寄存器,1,0,ON,ON,ON,ON,ON,1,LD I0.0,O Q0.0,AN I0.1,= Q0.0,CPU224,I0.0,I0.1,1M,2M,L+,DC24V,1L,Q0.0,SB1,SB2,AC220V,KM,I0.0,I0.1,Q0.0,输入映像寄存器,起动,停止,I0.0,I0.1,Q0.0,输出映像寄存器,0,0,ON,ON,ON,ON,ON,1,OFF,LD I0.0,O Q0.0,AN I0.1,= Q0.0,CPU224,I0.0,I0.1,1M,2M,L+,DC24V,1L,Q0.0,SB1,SB2,AC220V,KM,I0.0,I0.1,Q0.0,输入映像寄存器,起动,停止,I0.0,I0.1,Q0.0,输出映像寄存器,0,1,OFF,OFF,OFF,OFF,OFF,0,LD I0.0,O Q0.0,AN I0.1,= Q0.0,CPU224,I0.0,I0.1,1M,2M,L+,DC24V,1L,Q0.0,SB1,SB2,AC220V,KM,I0.0,I0.1,Q0.0,输入映像寄存器,起动,停止,I0.0,I0.1,Q0.0,输出映像寄存器,0,0,OFF,ON,OFF,OFF,OFF,0,如果把停止按钮换为常闭按钮,同样完成“起保停”的控制功能,将如修改梯形图?,CPU224,I0.0,I0.1,1M,2M,L+,DC24V,1L,Q0.0,SB1,SB2,AC220V,KM,I0.1,I0.0,0,1,每一个传感器或开关输入对应一个PLC确定的输入点,每一个负载对应PLC一个确定的,输出点。外部按钮一般用常开按钮。,输入“左重右轻”:把并联触点多的支路靠近最左端。,输出“上轻下重”:把串联触点多的支路放在下面。,输出线圈不能串联.,LD M0.0,A T37,AN T38,= Q0.0,6.,逻辑堆栈,指令,S7-200,系列采用模拟栈的结构,用于保存逻辑运算结果及断点的地址,称为逻辑堆栈。,S7-200,系列,PLC,中有一个,9,层的堆栈,。,(,1,)指令的功能,堆栈操作指令用于处理线路的分支点 。,LPS,(入栈)指令:LPS指令把栈顶值复制后压入堆栈,栈中原来数据依次下移一层,栈底值压出丢失。,LRD,(读栈)指令:LRD指令把逻辑堆栈第二层的值复制到栈顶,2-9层数据不变,堆栈没有压入和弹出。但原栈顶的值丢失。,LPP,(出栈)指令:LPP指令把堆栈弹出一级,原第二级的值变为新的栈顶值,原栈顶数据从栈内丢失。,(,2,)指令格式,逻辑堆栈的操作,(,3,)指令使用说明,逻辑堆栈指令可以嵌套使用,最多为,9,层。,为保证程序地址指针不发生错误,入栈指令,LPS,和出栈指令,LPP,必须成对使用,最后一次读栈操作应使用出栈指令,LPP,。,堆栈指令没有操作数。,7.,置位,/,复位指令,S/R,(,1,)指令功能,置位指令S:,使能输入有效后从起始位S-bit开始的N 个 位置“1”并保持。,复位指令R:,使能输入有效后从起始位S-bit开始的N 个位清“0”并保持。,(,2,)指令格式,置位,/,复位指令,S/R,(,3,)指令使用说明,对同一元件,(,同一寄存器的位,),可以多次使用,S/R,指令,(,与“,=,”指令不同,),。,由于是扫描工作方式,当置位、复位指令同时有效时,写在后面的指令具有优先权。,操作数,N,为:,VB, IB, QB, MB, SMB, SB, LB, AC,常量, *VD, *AC, *LD,。取值范围为:,0,255,。数据类型为:字节。,操作数,S-bit,为:,I, Q, M, SM, T, C, V, S, L,。数据类型为:布尔。,置位复位指令通常成对使用,也可以单独使用或与指令盒配合使用。,8.脉冲生成指令,EU/ED,(1)指令功能,EU,指令:在EU指令前的逻辑运算结果有一个上升沿时(由OFF,ON,)产生一个宽度为一个扫描周期的脉冲,驱动后面的输出线圈。,ED,指令:在ED指令前有一个下降沿时产生一个宽度为一个扫描周期的脉冲,驱动其后线圈。,(,2,)指令格式,脉冲生成指令,EU/ED,(,3,)指令使用说明,EU,、,ED,指令只在输入信号变化时有效,其输出信号的脉冲宽度为一个机器扫描周期。,对开机时就为接通状态的输入条件,EU指令不执行。,EU、ED指令无操作数。,4.2.2,基本位逻辑指令应用举例,1.,起动、保持、停止电路,起动、保持和停止电路(简称为“起保停”电路),其梯形图和对应的PLC外部接线图如图所示。在外部接线图中起动常开按钮SB1和SB2分别接在输入端I0.0和I0.1,负载接在输出端Q0.0。因此输入映像寄存器I0.0的状态与起动常开按钮SB1的状态相对应,输入映像寄存器I0.1的状态与停止常开按钮SB2的状态相对应。而程序运行结果写入输出映像寄存器Q0.0,并通过输出电路控制负载。图中的起动信号I0.0和停止信号I0.1是由起动常开按钮和停止常开按钮提供的信号,持续ON的时间一般都很短,这种信号称为短信号。起保停电路最主要的特点是具有“记忆”功能,按下起动按钮,I0.0的常开触点接通,如果这时未按停止按钮,I0.1的常闭触点接通,Q0.0的线圈“通电”,它的常开触点同时接通。放开起动按钮,I0.0的常开触点断开,“能流” 经 Q0.0的常开触点和I0.1的常闭触点流过Q0.0的线圈,Q0.0仍为ON,这就是所谓的“自锁”或“自保持”功能。按下停止按钮,I0.1的常闭触点断开,使Q0.0的线圈断电,其常开触点断开,以后即使放开停止按钮,I0.1的常闭触点恢复接通状态,Q0.0的线圈仍然“断电”。时序分析如图4-24所示。这种功能也可以用图中的S和R指令来实现。在实际电路中,起动信号和停止信号可能由多个触点组成的串、并联电路提供。,起、保、停电路梯形图,I0.0,I0.1,Q0.0,输入映像寄存器,输出映像寄存器,外部接线图和梯形图,S/R指令实现的起、保、停电路,S/R指令实现的起、保、停电路,2.,比较电路,如图所示,该电路按预先设定的输出要求,根据对两个输入信号的比较,决定某一输出。若I0.0、I0.1同时接通,Q0.0有输出;I0.0、I0.1均不接通,Q0.1有输出;若I0.0不接通。I0.1接通,则Q0.2有输出;若I0.0接通,I0.1不接通,则Q0.3有输出,。,LD I0.0,= M0.0,LD I0.1,= M0.1,LD M0.0,A M0.1,= Q0.0,LDN M0.0,AN M0.1,= Q0.1,LDN M0.0,A M0.1,= Q0.2,LD M0.0,AN M0.1,= Q0.3,3.,微分脉冲电路,(1)上升沿微分脉冲电路,如图所示。PLC是以循环扫描方式工作的,PLC第一次扫描时,输入I0.0由OFFON时,M0.0、M0.1线圈接通,Q0.0线圈接通。在第一个扫描周期中,在第一行的M0.1的常闭接点保持接通,因为扫描该行时,M0.1线圈的状态为断开。在一个扫描周期其状态只刷新一次。等到PLC第二次扫描时,M0.1的线圈为接通状态,其对应的M0.1常闭接点断开,M0.0线圈断开,Q0.0线圈断开,所以Q0.0接通时间为一个扫描周期。,LD I0.0,AN M0.1,= M0.0,LD I0.0,= M0.1,LD M0.0,= Q0.0,M0.0,Q0.0,一个扫描周期,(2)下降沿微分脉冲电路,LDN I0.0,AN M0.1,= M0.0,LDN I0.0,= M0.1,LD M0.0,= Q0.0,I0.0,M0.0,Q0.0,一个扫描周期,4.抢答器电路,1)控制任务:有3个抢答席和1个主持人席,每个抢答席上各有1个抢答按钮和一盏抢答指示灯。参赛者在允许抢答时,第一个按下抢答按钮的抢答席上的指示灯将会亮,且释放抢答按钮后,指示灯仍然亮;此后另外两个抢答席上即使在按各自的抢答按钮,其指示灯也不会亮。这样主持人就可以轻易的知道谁是第一个按下抢答器的。该题抢答结束后,主持人按下主持席上的复位按钮(常闭按钮),则指示灯熄灭,又可以进行下一题的抢答比赛。,工艺要求:本控制系统有4个按钮,其中3个常开S1、S2、S3,一个常闭S0。另外,作为控制对象有3盏灯H1、H2、H3。,(2)I/O分配表,输入,I0.0 S0 /主持席上的复位按钮(常闭),I0.1 S1 /抢答席1上的抢答按钮,I0.2 S2 /抢答席2上的抢答按钮,I0.3 S3 /抢答席3上的抢答按钮,输出,Q0.1 H1 /抢答席1上的指示灯,Q0.2 H2 /抢答席2上的指示灯,Q0.0 H3 /抢答席3上的指示灯,(3)程序设计,抢答器的程序设计如图所示。本例的要点是:如何实现抢答器指示灯的“自锁”功能,即当某一抢答席抢答成功后,即使释放其抢答按钮,其指示灯仍然亮,直至主持人进行复位才熄灭;如何实现3个抢答席之间的“互锁”功能。,抢答器程序设计,5.,分频电路,用PLC可以实现对输入信号的任意分频。下图是一个2分频电路。将脉冲信号加到I0.0端,在第一个脉冲的上升沿到来时,M0.0产生一个扫描周期的单脉冲,使M0.0的常开触点闭合,由于Q0.0的常开触点断开,M0.1线圈断开,其常闭触点M0.1闭合,Q0.0的线圈接通并自保持;第二个脉冲上升沿到来时,M0.0又产生一个扫描周期的单脉冲, M0.0的常开触点又接通一个扫描周期,此时Q0.0的常开触点闭合,M0.1线圈通电,其常闭触点M0.1断开,Q0.0线圈断开;直至第三个脉冲到来时,M0.0又产生一个扫描周期的单脉冲,使M0.0的常开触点闭合,由于Q0.0的常开触点断开,M0.1线圈断开,其常闭触点M0.1闭合,Q0.0的线圈又接通并自保持。以后循环往复,不断重复上过程。由图可见,输出信号Q0.0是输入信号I0.0的二分频。,LD I0.0,EU,= M0.0,LD M0.0,A Q0.0,= M0.1,LD M0.0,O Q0.0,AN M0.1,= Q0.0,4.2.3,编程注意事项及编程技巧,1.,梯形图语言中的语法规定,(1)程序应按自上而下,从左至右的顺序编写。,(2)同一操作数的输出线圈在一个程序中不能使用两次,不同操作数的输出线圈可以并行输出。,(3)线圈不能直接与左母线相连。如果需要,可以通过特殊内部标志位存储器SM0.0(该位始终为1)来连接.,不正确,正确,(4)适当安排编程顺序,以减少程序的步数。,1)串联多的支路应尽量放在上部,如图所示。,电路安排不当,电路安排正确,2)并联多的支路应靠近左母线,电路安排正确,电路安排不当,3)触点不能放在线圈的左边。,4)对复杂的电路,用ALD、OLD等指令难以编程,可重复使用一些触点画出其等效电路,然后再进行编程,如图所示。,复杂电路,等效电路,复杂电路编程技巧,2.,设置中间单元,在梯形图中,若多个线圈都受某一触点串并联电路的控制,为了简化电路,在梯形图中可设置该电路控制的存储器的位,这类似于继电器电路中的中间继电器。,3.,尽量减少可编程控制器的输入信号和输出信号,可编程控制器的价格与I/O点数有关,因此减少I/O点数是降低硬件费用的主要措施。如果几个输入器件触点的串并联电路总是作为一个整体出现,可以将他们作为可编程控制器的一个输入信号,只占可编程控制器的一个输入点。如果某器件的触点只用一次并且与PLC输出端的负载串联,不必将它们作为PLC的输入信号,可以将它们放在PLC外部的输出回路,与外部负载串联。,4. 外部联锁电路的设立。,为了防止控制正反转的两个接触器同时动作造成三相电源短路,应在,PLC,外部设置硬件联锁电路,。,5.,外部负载的额定电压。,PLC的继电器输出模块和双向晶闸管输出模块一般只能驱动额定电压AC 220V的负载,交流接触器的线圈应选用220V的。,4.2.4,电动机控制实训,1.,实训目的,(1)应用PLC技术实现对三相异步电动机的控制。,(2)熟悉基本位逻辑指令的使用,训练编程的思想和方法。,(3)掌握在PLC控制中互锁的实现及采取的措施。,2.,控制要求,(1)实现三相异步电动机的正转、反转、停止控制。,(2)具有防止相间短路的措施。,(3)具有过载保护环节。,3.,实训内容及指导,(1)I/O分配及外部接线,三相异步电动机的正转、反转、停止控制的电路如图1所示。该图为按钮和电气双重互锁的正反停电路。PLC控制的输入输出配置及外部接线图如图2所示,电动机在正反转切换时,为了防止因主电路电流过大,或接触器质量不好,某一接触器的主触点被断电时产生的电弧熔焊而被粘结,其线圈断电后主触点仍然是接通的,这时,如果另一接触器线圈通电,仍将造成三相电源短路事故。为了防止这种情况的出现,应在可编程控制器的外部设置由KM1和KM2的常闭触点组成的硬件互锁电路,如图2,假设KM1的主触点被电弧熔焊,这时其辅助常闭触点处于断开状态,因此KM2线圈不可能得电。,图1,SB1,I0.3,I0.2 Q0.0,I0.1,I0.0,Q0.1,1M,2M,L+ DC24V,1L,S7-200 CPU224,输入,输出,反转,SB3,正转,停止,过载,SB2,FR,KM2,KM1,KM,1,KM2,反转,正转,AC220V,图2 输入输出配置及外部接线图,(2)程序设计,采用PLC控制的梯形图、语句表下图所示。图中利用PLC输入映像寄存器的I0.2和I0.3的常闭接点,实现互锁,以防止正反转换接时的相间短路。,按下正向起动按钮SB2时,常开触点I0.2闭合,驱动线圈Q0.0并自锁,通过输出电路,接触器KM1得电吸合,电动机正向起动并稳定运行。,按下反转起动按钮SB3时,常闭触点I0.3断开Q0.0的线圈,KM1失电释放,同时I0.3的常开触点闭合接通Q0.1线圈并自锁,通过输出电路,接触器KM2得电吸合,电动机反向起动,并稳定运行。如图 三相异步电动机正反停控制的梯形图及语句表,LD I0.3,OR Q0.1,AN I0.2,AN I0.0,AN I0.1,AN Q0.0,= Q0.1,LD I0.2,OR Q0.0,AN I0.3,AN I0.0,AN I0.1,AN Q0.1,= Q0.0,按下停止按钮SB1,或过载保护FR动作,都可使KM1或KM2失电释放,电动机停止运行。,(,3)运行并调试程序,步骤:,1按正转按钮SB2,输出Q0.0接通,电动机正转。,2按停止按钮SB1,输出Q0.0断开,电动机停转。,3按反转按钮SB3,输出Q0.1接通,电动机反转。,4模拟电动机过载,将热继电器FR的触点断开,电动机停转。,5将热继电器的FR触点复位,在重复正反停的操作。,6运行调试过程中用状态图或状态表对元件的动作进行监控并记录。,4.定时器指令,4.3.1,定时器指令介绍,S7-200,系列,PLC,的定时器是对内部时钟累计时间增量计时的。每个定时器均有一个,16,位的当前值寄存器用以存放当前值(,16,位符号整数);一个,16,位的预置值寄存器用以存放时间的设定值;还有一位状态位,反应其触点的状态。,1.,工作方式,S7-200,系列,PLC,定时器按工作方式分三大类定时器。其指令格式如表所示。,LAD,STL,说明,TON T,PT,TON通电延时定时器,TONR记忆型通电延时定时器,TOF断电延时型定时器,IN是使能输入端,指令盒上方输入定时器的编号(T),范围为T0-T255;PT是预置值输入端,最大预置值为32767;PT的数据类型:INT;,PT操作数有:IW,QW,MW,SMW,T,C,VW,SW,AC,常数,TONR T,PT,TOF T,PT,2.,时基,按时基脉冲分,则有,1ms,、,10ms,、,100ms,三种定时器。不同的时基标准,定时精度、定时范围和定时器刷新的方式不同,(1)定时精度和定时范围,定时器的工作原理是:使能输入有效后,当前值PT对PLC内部的时基脉冲增1计数,当计数值大于或等于定时器的预置值后,状态位置1。其中,最小计时单位为时基脉冲的宽度,又为定时精度;从定时器输入有效,到状态位输出有效,经过的时间为定时时间,即:定时时间=预置值时基。当前值寄存器为16bit,最大计数值为32767,由此可推算不同分辨时的定时器的设定时间范围。CPU 22X系列PLC的256个定时器分属TON (TOF)和TONR工作方式,以及3种时基标准,如下表所示。可见时基越大,定时时间越长,但精度越差。,工作方式,时基(ms),最大定时范围(s),定时器号,TONR,1,32.767,T0,T64,10,327.67,T1-T4,T65-T68,100,3276.7,T5-T31,T69-T95,TON/TOF,1,32.767,T32,T96,10,327.67,T33-T36,T97-T100,100,3276.7,T37-T63,T101-T255,(2)1ms 10ms 100ms定时器的刷新方式不同,1ms定时器每隔1ms刷新一次与扫描周期和程序处理无关即采用中断刷新方式。因此当扫描周期较长时,在一个周期内可能被多次刷新,其当前值在一个扫描周期内不一定保持一致。,10ms 定时器则由系统在每个扫描周期开始自动刷新。由于每个扫描周期内只刷新一次,故而每次程序处理期间,其当前值为常数。,100ms定时器则在该定时器指令执行时刷新。下一条执行的指令,即可使用刷新后的结果,非常符合正常的思路,使用方便可靠。但应当注意,如果该定时器的指令不是每个周期都执行,定时器就不能及时刷新,可能导致出错。,3.,定时器指令工作原理,通电延时型,有记忆的通电延时型,断电延时型,三种定时器的使用方法如下:,(1)通电延时定时器(TON)指令工作原理,程序及时序分析如图所示。当I0.0接通时即使能端(IN)输入有效时,驱动T37开始计时,当前值从0开始递增,计时到设定值PT时,T37 状态位置1,其常开触点T37接通,驱动Q0.0输出,其后当前值仍增加,但不影响状态位。当前值的最大值为32767。当I0.0分断时,使能端无效时,T37复位,当前值清0,状态位也清0,即回复原始状态。若I0.0接通时间未到设定值就断开,T37则立即复位,Q0.0不会有输出。,LD I0.0,TON T37,100,LD T37,= Q0.0,PT,I0.0,T37当前值,Q0.0,最大值32767,通电延时型定时器工作原理分析,(2)记忆型通电延时定时器(TONR)指令工作原理,使能端(IN)输入有效时(接通),定时器开始计时,当前值递增,当前值大于或等于预置值(PT)时,输出状态位置1。使能端输入无效(断开)时,当前值保持(记忆),使能端(IN)再次接通有效时,在原记忆值的基础上递增计时。,注意:TONR记忆型通电延时型定时器采用线圈复位指令R进行复位操作,当复位线圈有效时,定时器当前位清零,输出状态位置0。,程序分析如图所示。如T3,当输入IN为1时,定时器计时;当IN为0时,其当前值保持并不复位;下次IN再为1时,T3当前值从原保持值开始往上加,将当前值与设定值PT比较,当前值大于等于设定值时,T3状态位置1,驱动Q0.0有输出,以后即使IN再为0,也不会使T3复位,要使T3复位,必须使用复位指令。,LD I0.0,TONR T3,100,LD I0.1,R T3,1,LD T33,= Q0.0,PT,I0.0,T3当前值,I0.1,Q0.0,(3)断电延时型定时器(TOF)指令工作原理,断电延时型定时器用来在输入断开,延时一段时间后,才断开输出。使能端(IN),输入有效时,定时器输出状态位立即置1,当前值复位为0。使能端(IN)断开时,定时器开始计时,当前值从0递增,当前值达到预置值时,定时器状态位复位为0,并停止计时,当前值保持。,如果输入断开的时间,小于预定时间,定时器仍保持接通。IN再接通时,定时器当前值仍设为0。断电延时定时器的应用程序及时序分析如图所示。,LD I0.0,TOF T37, + 30,LD T37,= Q0.0,I0.0,T37当前值,PT,Q0.0,3s,小结:,1.以上介绍的3种定时器具有不同的功能。接通延时定时器(TON)用于单一间隔的定时;有记忆接通延时定时器(TONR)用于累计时间间隔的定时;断开延时定时器(TOF)用于故障事件发生后的时间延时。,2.TOF和TON 共享同一组定时器,不能重复使用。即不能把一个定时器同时用作TOF和TON。例如,不能既有TON T32,又有TOF T32。,4.3.2,定时器指令应用举例,1.一个机器扫描周期的时钟脉冲发生器,梯形图程序如图所示,使用定时器本身的常闭触点作定时器的使能输入。定时器的状态位置1时,依靠本身的常闭触点的断开使定时器复位,并重新开始定时,进行循环工作。采用不同时基标准的定时器时,会有不同的运行结果,具体分析如下:,(1)T32为1ms时基定时器,每隔1ms定时器刷新一次当前值,CPU当前值若恰好在处理常闭触点和常开触点之间被刷新,Q0.0可以接通一个扫描周期,但这种情况出现的几率很小,一般情况下,不会正好在这时刷新。若在执行其他指令时,定时时间到,1ms的定时刷新,使定时器输出状态位置位,常闭触点打开,当前值复位,定时器输出状态位立即复位,所以输出线圈Q0.0一般不会通电。,(2)若将图中的定时器T32换成T33,时基变为10ms,当前值在每个扫描周期开始刷新,计时时间到时,扫描周期开始时,定时器输出状态位置位,常闭触点断开,立即将定时器当前值清零,定时器输出状态位复位(为0)。这样输出线圈Q0.0永远不可能通电。,(3)若用时基为100ms的定时器,如T37,当前指令执行时刷新,Q0.0在T37计时时间到时准确的接通一个扫描周期。可以输出一个断开为延时时间,接通为一个,自身常闭接点作使能输入,输出线圈的常闭接点作使能输入,(4)若将输出线圈的常闭接点作为定时器的使能输入,如图所示,则无论何种时基都能正常工作。,2.,延时断开电路,如图所示。I0.0一个输入信号,当I0.0接通时,Q0.0接通并保持,当I0.0断开后,经4s延时后,Q0.0断开。T37同时被复位。,I0.0,Q0.0,4s,3.,延时接通,如图所示,电路用I0.0控制Q0.1,I0.0的常开触点接通后,T37开始定时,9s后T37 的常开触点接通,使Q0.1变为ON,I0.0为ON时其常闭触点断开,使T38复位。I0.0变为OFF后T38 开始定时,7S后T38的常闭触点断开,使Q0.1变为OFF,T38亦被复位。,I0.0,Q0.1,7s,9s,T38常开触点,T37常开触点,4.,闪烁电路,图中I0.0的常开触点接通后,T37的IN输入端为1状态,T37开始定时。2S后定时时间到,T37的常开触点接通,使Q0.0变为ON,同时T38开始计时。3s后T38的定时时间到,它的常闭触点断开,使T37的IN输入端变为0状态,T37的常开触点断开,Q0.0变为OFF,同时使T38的IN输入端变为0状态,其常闭触点接通,T37又开始定时,以后Q0.0的线圈将这样周期性地“通电”和“断电”,直到I0.0变为OFF,Q0.0线圈“通电” 时间等于T38的设定值,“断电”时间等于T37的设定值。,I0.0,T37的常开接点,T38的常开接点,2s,3s,Q0.0,4.4,计数器指令,4.4.1,计数器指令介
展开阅读全文