功能指令应用_第1页
功能指令应用_第2页
功能指令应用_第3页
功能指令应用_第4页
功能指令应用_第5页
已阅读5页,还剩71页未读 继续免费阅读

下载本文档

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

文档简介

1、第第5章章 功能指令的应用功能指令的应用5.1 输入输入/输出继电器的表示格式输出继电器的表示格式 5.2 数据传送指令及应用数据传送指令及应用 5.3 跳转指令及应用跳转指令及应用 5.4 数据类型与算术运算指令数据类型与算术运算指令 5.5 增增1/减减1指令指令INC/DEC及其应用及其应用 5.6 逻辑运算指令及其应用逻辑运算指令及其应用 5.7 子程序调用指令及其应用子程序调用指令及其应用 5.8 循环指令及其应用循环指令及其应用 5.9 比较指令及其应用比较指令及其应用 5.11 模拟电位器、拨码开关及其应用模拟电位器、拨码开关及其应用 5.10 数码显示及其应用数码显示及其应用

2、5.1 输入输入/输出继电器的表示格式输出继电器的表示格式 5.1.1 输入继电器的表示格式输入继电器的表示格式 表表5-1输入继电器的表示格式输入继电器的表示格式 位位I0.0I0.7I15.0I15.7128点点字节字节IB0、IB1、IB1516个个字字IW0、IW2、IW148个个双字双字ID0、ID4、ID8、ID124个个对输入继电器的说明如下对输入继电器的说明如下(1)位)位位表示格式为:位表示格式为:I 字节地址字节地址.位地址位地址。如。如I1.0表示输入继电器第表示输入继电器第1个个字节的第字节的第0位位图5-1 输入继电器字节图图5-2 输入继电器字输入继电器字 (2)字

3、节)字节字节表示格式为:字节表示格式为:IB起始字节地址起始字节地址。如。如IB0表示输入继电器第表示输入继电器第0个个字节,共字节,共8位。位。(3)字)字字表示格式为:字表示格式为:IW起始字节地址起始字节地址。例如。例如IW0中中IB0是高是高8位,位,IB1是是低低8位。位。图图5-3 输入继电器双字输入继电器双字 (4)双字)双字双字表示格式为:双字表示格式为:ID起始字节地址起始字节地址。如。如ID0中中IB0是最高是最高8位,位,IB1是高是高8位,位,IB2是低是低8位,位,IB3是最低是最低8位,其表示格式如图位,其表示格式如图5-3所示。所示。5.1.2 输出继电器的表示格

4、式输出继电器的表示格式 表5-2输出继电器的表示格式位位Q0.0Q0.7Q15.0Q15.7128点点字节字节QB0、QB1、QB1516个个字字QW0、QW2、QW148个个双字双字QD0、QD4、QD8、QD124个个图5-4 输出继电器字节(3)字)字如如QW0中中QB0是高是高8位,位,QB1是低是低8位,其表示格式如图位,其表示格式如图5-5所示。所示。图图5-5 输出继电器字输出继电器字 (1)位)位位表示格式为:位表示格式为:Q 字节地址字节地址.位地址位地址。如。如Q1.0表示输出继电器第表示输出继电器第1个字节的第个字节的第0位位(2)字节)字节如如QB0表示输出继电器第表示

5、输出继电器第0个字节,共个字节,共8位。位。(4)双字)双字如如QD0中中QB0是最高是最高8位,位,QB1是高是高8位,位,QB2是低是低8位,位,QB3是最是最低低8位,其表示格式如图位,其表示格式如图5-6所示。所示。图5-6 输出继电器双字5.2 数据传送指令及应用数据传送指令及应用 5.2.1 数据传送指令数据传送指令MOV表5-3数据传送指令格式项项 目目字字 节节 传传 送送字字 传传 送送双双 字字 传传 送送实实 数数 传传 送送梯形图梯形图指令表指令表MOVB IN,OUTMOVW IN,OUTMOVD IN,OUTMOVR IN,OUT5.2.2 数据传送指令应用举例数据

6、传送指令应用举例【例题【例题5.1】 设有设有8盏指示灯,控制要求是:当盏指示灯,控制要求是:当I0.0接通时,全部灯亮;接通时,全部灯亮;当当I0.1接通时,奇数灯亮;当接通时,奇数灯亮;当I0.2接通时,偶数灯亮;当接通时,偶数灯亮;当I0.3接通时,全接通时,全部灯灭。试编写程序。部灯灭。试编写程序。 表5-4例题5.1 控制关系表输入继电输入继电器器输出继电器位输出继电器位输出继电器字输出继电器字节节Q0.7Q0.6Q0.5Q0.4Q0.3Q0.2Q0.1Q0.0QB0I0.016#FFI0.116#AAI0.216#55I0.30图5-8 例题5.1程序图5.2.3 实习操作:电动机

7、实习操作:电动机Y-形启动控制电路与程序形启动控制电路与程序 应用数据传送指令设计电动机应用数据传送指令设计电动机Y-形降压启动控制电路和程序。指形降压启动控制电路和程序。指示灯在启动过程中亮,启动结束时灭。如果发生电动机过载,停止工作示灯在启动过程中亮,启动结束时灭。如果发生电动机过载,停止工作并且灯光报警。并且灯光报警。1控制要求控制要求2电动机电动机Y-形降压启动控制电路形降压启动控制电路图5-9 Y形降压启动控制电路3启动过程和控制数据启动过程和控制数据 表5-5Y-形降压启动过程和控制数据表输入输入元件元件作作 用用输入继电器输入继电器输出继电器输出继电器/ 负载负载控制控制数据数据

8、Q0.3/Q0.2/YQ0.1/电电源源Q0.0/灯灯SB2形启动形启动I0.201117T37延时到延时到形运转形运转101010SB1停止停止I0.100000KH过载保护过载保护I0.0000114程序梯形图程序梯形图 图5-10 Y形降压启动程序梯形图 5.3 跳转指令及应用跳转指令及应用 应用跳转指令的程序结构如图应用跳转指令的程序结构如图5-11所示。所示。I0.3是手动是手动/自动选择开关自动选择开关的信号输入端。当的信号输入端。当I0.3未接通时,执行手动程序段,反之执行自动程序未接通时,执行手动程序段,反之执行自动程序段。段。图5-11 手动/自动程序段跳转5.3.1 跳转指

9、令跳转指令JMP、标号指令、标号指令LBL表5-6跳转指令与标号指令项项 目目跳跳 转转标标 号号梯形图梯形图指令表指令表JMP NLBL N数据范围数据范围N:0255对跳转指令与标号指令说明如下。对跳转指令与标号指令说明如下。(1)跳转指令:改变程序流程,使程序转移到具体的标号()跳转指令:改变程序流程,使程序转移到具体的标号(N)处。当跳转条)处。当跳转条件满足时,程序由件满足时,程序由JMP指令控制转至标号指令控制转至标号N的程序段去执行。的程序段去执行。(2)标号指令:标记转移目的地的地址。)标号指令:标记转移目的地的地址。 5.3.2 实习操作:手动实习操作:手动/自动控制选择程序

10、自动控制选择程序某台设备具有手动某台设备具有手动/自动两种操作方式。自动两种操作方式。SB3是操作方式选择开关,是操作方式选择开关,当当SB3处于断开状态时,选择手动操作方式;当处于断开状态时,选择手动操作方式;当SB3处于接通状态时,处于接通状态时,选择自动操作方式,不同操作方式的进程如下。选择自动操作方式,不同操作方式的进程如下。(1)手动操作方式进程:按启动按钮)手动操作方式进程:按启动按钮SB2,电动机运转;按停止按钮,电动机运转;按停止按钮SB1,电动机停止。,电动机停止。(2)自动操作方式进程:按启动按钮)自动操作方式进程:按启动按钮SB2,电动机连续运转,电动机连续运转1min后

11、,后,自动停止。按停止按钮自动停止。按停止按钮SB1,电动机立即停止。,电动机立即停止。1控制要求控制要求2手动手动/自动控制电路自动控制电路 图5-12 手动/自动控制电路图表5-7输入/输出端口分配表输输 入入输输 出出输入继电器输入继电器输输 入入 元元 件件作作 用用输出继电器输出继电器输输 出出 元元 件件 I0.0KH常闭触点常闭触点过载保护过载保护Q0.0交流接触器交流接触器KMI0.1SB1常闭触点常闭触点停止停止I0.2SB2常开触点常开触点启动启动I0.3SB3拨动开关拨动开关手动手动/自动选择自动选择3手动手动/自动控制电路输入自动控制电路输入/输出端口的分配输出端口的分

12、配4程序梯形图和指令表程序梯形图和指令表 图5-13 手动/自动选择程序梯形图和指令表 5.4 数据类型与算术运算指令数据类型与算术运算指令 5.4.1 数据类型数据类型 S7-200系列系列PLC数据类型可以是字节、字、双字和实数型,实数据类型可以是字节、字、双字和实数型,实数采用数采用32位来表示,数据类型、长度及范围见表位来表示,数据类型、长度及范围见表5-8。 1数据类型、长度及范围数据类型、长度及范围表5-8数据类型、长度及范围基本数据类型无符号整数有符号整数十 进 制十 六 进 制十 进 制十 六 进 制字节B(8位)02550FF128127807F字W(16位)065 5350

13、FFFF32 76832 76780007FFF双字D(32位)04 294 967 2950FFFF FFFF2 147 483 6482 147 483 647800000007FFFFFFF实数(32位)正数:+1.175 495E38+3.402 823E+38负数:1.175 495E383.402 823E+38表5-9常数表示形式进进 制制使使 用用 格格 式式举举 例例十进制十进制十进制数值十进制数值2 008十六进制十六进制十六进制数值十六进制数值16#ABCD二进制二进制二进制数值二进制数值2#100 1110 0100 1111实数实数IEEE 754标准(标准(32位浮

14、点数)位浮点数)+3.141 593(正数)(正数)0.707E+8(负数)(负数)2常数常数5.4.2 加法指令加法指令ADD表5-10ADD指令格式项项 目目整整 数数 加加 法法双整数加法双整数加法实实 数数 加加 法法梯形图梯形图指令表指令表I IN1,OUTD IN1,OUTR IN1,OUT(1)IN1、IN2为参加运算的源操作数,为参加运算的源操作数,OUT为存储运算结果的目标操作数。为存储运算结果的目标操作数。(2)整数加法运算)整数加法运算ADD_I。将将2个单字长(个单字长(16位)有符号整数位)有符号整数IN1和和IN2相加,运算结果送到相加,运算结果送到OUT指定的存指

15、定的存储器单元,输出结果为储器单元,输出结果为16位。位。(3)双整数加法运算)双整数加法运算ADD_DI。将将2个双字长(个双字长(32位)有符号双整数位)有符号双整数IN1和和IN2相加,运算结果送到相加,运算结果送到OUT指定的指定的存储器单元,输出结果为存储器单元,输出结果为32位。位。(4)实数加法运算)实数加法运算ADD_R。将将2个双字长(个双字长(32位)有符号实数位)有符号实数IN1和和IN2相加,运算结果送到相加,运算结果送到OUT指定的存指定的存储器单元,输出结果为储器单元,输出结果为32位。位。 1加法指令加法指令ADD的说明的说明2加法指令加法指令ADD的举例的举例

16、图5-14 加法指令举例图5-15 加法运算状态监控表5.4.3 减法指令减法指令SUB表5-11SUB指令格式项项 目目整整 数数 减减 法法双整数减法双整数减法实实 数数 减减 法法梯形图梯形图指令表指令表I IN1,OUTD IN1,OUTR IN1,OUT(1)整数减法运算)整数减法运算SUB_I。将将2个单字长(个单字长(16位)有符号整数位)有符号整数IN1和和IN2相减,运算结果送到相减,运算结果送到OUT指指定的存储器单元,输出结果为定的存储器单元,输出结果为16位。位。(2)双整数减法运算)双整数减法运算SUB_DI。将将2个双字长(个双字长(32位)有符号双整数位)有符号双

17、整数IN1和和IN2相减,运算结果送到相减,运算结果送到OUT指定的存储器单元,输出结果为指定的存储器单元,输出结果为32位。位。(3)实数减法运算)实数减法运算SUB_R。将将2个双字长(个双字长(32位)有符号实数位)有符号实数IN1和和IN2相减,运算结果送到相减,运算结果送到OUT指指定的存储器单元,输出结果为定的存储器单元,输出结果为32位。位。1减法指令减法指令SUB的说明的说明2减法指令减法指令SUB的举例的举例图5-17 减法运算状态监控表图5-16 减法指令举例表5-12MUL指令格式项项 目目整整 数数 乘乘 法法双整数乘法双整数乘法整数乘法运算双整数输整数乘法运算双整数输

18、出出实实 数数 乘乘 法法梯形图梯形图指令表指令表*I IN1,OUT*D IN1,OUTMUL IN1,OUT*R IN1,OUT5.4.4 乘法指令乘法指令MUL(1)整数乘法运算)整数乘法运算MUL_I。将将2个单字长(个单字长(16位)有符号整数位)有符号整数IN1和和IN2相乘,运算结果送到相乘,运算结果送到OUT指定的存储器单元,输出结果为指定的存储器单元,输出结果为16位。位。(2)双整数乘法运算)双整数乘法运算MUL_DI。将将2个双字长(个双字长(32位)有符号双整数位)有符号双整数IN1和和IN2相乘,运算结果送到相乘,运算结果送到OUT指定的存储器单元,输出结果为指定的存

19、储器单元,输出结果为32位。位。(3)整数乘法运算双整数输出)整数乘法运算双整数输出MUL。将将2个单字长(个单字长(16位)有符号整数位)有符号整数IN1和和IN2相乘,运算结果送到相乘,运算结果送到OUT指定的存储器单元,输出结果为指定的存储器单元,输出结果为32位。位。(4)实数乘法运算)实数乘法运算MUL_R。将将2个双字长(个双字长(32位)有符号实数位)有符号实数IN1和和IN2相乘,运算结果送到相乘,运算结果送到OUT指定的存储器单元,输出结果为指定的存储器单元,输出结果为32位。位。注意,整数数据做乘注意,整数数据做乘2运算,相当于其二进制形式左移运算,相当于其二进制形式左移1

20、位;做乘位;做乘4运算,相当于其二进制形式左移运算,相当于其二进制形式左移2位;做乘位;做乘8运算,相当于其二进制形运算,相当于其二进制形式左移式左移3位;位; 1乘法指令乘法指令MUL的说明的说明处于监控状态的整数乘法运算双整数输出的梯形图如图处于监控状态的整数乘法运算双整数输出的梯形图如图5-18(a)所示。当所示。当I0.0触点接通时,执行乘法指令,乘法运算的结果(触点接通时,执行乘法指令,乘法运算的结果(10 92312 = 131 076)存储在)存储在VD30目标操作数中,其二进制格式为目标操作数中,其二进制格式为0000 0000 0000 0010 0000 0000 0000

21、 0100。VD30中各字节存储的数据分别是中各字节存储的数据分别是VB30=0、VB31=2、VB32=0、VB33=4;VD30中各字存储的数据分别是中各字存储的数据分别是VW30 = +2、VW32 = +4,状,状态监控表如图态监控表如图5-18(b)所示。)所示。2乘法指令乘法指令MUL的举例的举例图图5-18 乘法指令乘法指令MUL的举例的举例5.4.5 除法指令除法指令DIV项项 目目整整 数数 除除 法法双整数除法双整数除法整数除法运算双整数整数除法运算双整数输出输出实实 数数 除除 法法梯形图梯形图指令表指令表/I IN1,OUT/D IN1,OUTDIV IN1,OUT/R

22、 IN1,OUT1除法指令除法指令DIV的说明的说明(1)整数除法运算)整数除法运算DIV_I。将将2个单字长(个单字长(16位)有符号整数位)有符号整数IN1和和IN2相除,运算结果送到相除,运算结果送到OUT指定的存储器单元,输出结果为指定的存储器单元,输出结果为16位。位。(2)双整数除法运算)双整数除法运算DIV_DI。将将2个双字长(个双字长(32位)有符号双整数位)有符号双整数IN1和和IN2相除,运算结果送到相除,运算结果送到OUT指定的存储器单元,输出结果为指定的存储器单元,输出结果为32位。位。表5-13DIV指令格式(3)整数除法运算双整数输出)整数除法运算双整数输出DIV

23、。将将2个单字长(个单字长(16位)有符号整数位)有符号整数IN1和和IN2相除,运算结果送到相除,运算结果送到OUT指指定的存储器单元,输出结果为定的存储器单元,输出结果为32位,其中低位,其中低16位是商,高位是商,高16位是余数。位是余数。注意,整数数据做除以注意,整数数据做除以2运算,相当于其二进制形式右移运算,相当于其二进制形式右移1位;做除以位;做除以4运算运算,相当于其二进制形式右移,相当于其二进制形式右移2位;做除以位;做除以8运算,相当于其二进制形式右移运算,相当于其二进制形式右移3位位;(4)实数除法运算)实数除法运算DIV_R。将将2个双字长(个双字长(32位)有符号实数

24、位)有符号实数IN1和和IN2相除,运算结果送到相除,运算结果送到OUT指指定的存储器单元,输出结果为定的存储器单元,输出结果为32位。位。图5-19 整数除法运算双整数输出处于监控状态的除法指令梯形图如图处于监控状态的除法指令梯形图如图5-20(a)所示。如果)所示。如果I0.0触点触点接通,执行除法指令。除法运算的结果(接通,执行除法指令。除法运算的结果(15/2=商商7余余1)存储在)存储在VD20的的目标操作数中,其中商目标操作数中,其中商7存储在存储在VW22,余数,余数1存储在存储在VW20。其二进制格。其二进制格式为式为0000 0000 0000 0001 0000 0000

25、0000 0111。VD20中各字节存储的数据分别是中各字节存储的数据分别是VB20=0、VB21=1、VB22=0、VB23=7;各字存储的数据分别是;各字存储的数据分别是VW20=+1、VW22=+7,状态监控表如,状态监控表如图图5-20(b)所示。)所示。利用除利用除2取余法,可以判断数据的奇偶性,如果余数为取余法,可以判断数据的奇偶性,如果余数为1是奇数,为是奇数,为0则则是偶数。是偶数。图5-20 除法指令DIV的举例2除法指令除法指令DIV的举例的举例5.5 增增1/减减1指令指令INC/DEC及其应用及其应用 5.5.1 增增1/减减1指令指令INC/DEC表5-14INC/D

26、EC指令格式项目项目增增1指令指令INC减减1指令指令DEC梯形梯形图图指令指令表表INCB OUTINCW OUTINCD OUTDECB OUTDECW OUTDECD OUT图5-21 增1/减1指令举例5.5.2 实习操作:单按钮的功率控制程序实习操作:单按钮的功率控制程序加热器的单按钮功率控制电路如图加热器的单按钮功率控制电路如图5-22所示。控制要求是:有所示。控制要求是:有7个功率个功率调节挡位,大小分别是调节挡位,大小分别是0.5kW、1kW、1.5kW、2kW、2.5kW、3kW和和3.5kW,由一个功率调节按钮,由一个功率调节按钮SB1和一个停止按钮和一个停止按钮SB2控制

27、。第控制。第1次按下次按下SB1时功率为时功率为0.5kW,第,第2次按下次按下SB1时功率为时功率为1kW,第,第3次按下次按下SB1时功率时功率为为1.5kW,第,第8次按下次按下SB1或随时按下或随时按下SB2时,停止加热。输入时,停止加热。输入/输出输出端口分配见表端口分配见表5-15。图5-22 单按钮的功率控制电路1单按钮的功率控制电路和控制要求单按钮的功率控制电路和控制要求表5-15输入/输出端口分配表输输 入入输输 出出输入继电器输入继电器输输 入入 元元 件件作作 用用输出继电器输出继电器接触器、电热元接触器、电热元件件I0.1SB1常开触点常开触点调节功率调节功率Q0.0K

28、M1、 R1/0.5kWI0.3SB2常开触点常开触点停止加热停止加热Q0.1KM2、 R2/1kWQ0.2KM3、 R3/2kW表表5-16单按钮功率控制的工序单按钮功率控制的工序输出功率输出功率(kW)位存储器位存储器MB10按按SB1次数次数M10.3M10.2M10.1M10.00000000.5000111001021.5001132010042.5010153011063.5011170100082单按钮功率控制的工序单按钮功率控制的工序3单按钮的功率控制程序单按钮的功率控制程序图5-23 单按钮的功率控制程序表5-17WAND指令格式项项 目目字节字节“与与”字字“与与”双字双字

29、“与与”梯形图梯形图指令表指令表ANDB IN1,IN2ANDW IN1,IN2ANDD IN1,IN2(1)IN1、IN2为两个相为两个相“与与”的源操作数,的源操作数,OUT为存储为存储“与与”逻辑逻辑结果的目标操作数。结果的目标操作数。(2)逻辑)逻辑“与与”指令的功能是将两个源操作数的数据进行二进制按指令的功能是将两个源操作数的数据进行二进制按位相位相“与与”,并将运算结果存入目标操作数中。,并将运算结果存入目标操作数中。5.6.1 逻辑逻辑“与与”指令指令WAND1逻辑逻辑“与与”指令指令WAND的说明的说明5.6 逻辑运算指令及其应用逻辑运算指令及其应用 要求用输入继电器要求用输入

30、继电器I0.0I0.4的位状态去控制输出继电器的位状态去控制输出继电器Q0.0Q0.4,可用输入字节,可用输入字节IB0去控制输出字节去控制输出字节QB0。对字节多余的控制位。对字节多余的控制位I0.5、I0.6和和I0.7,可与,可与0相相“与与”进行屏蔽。程序如图进行屏蔽。程序如图5-24所示。所示。图图5-24 应用逻辑应用逻辑“与与”指令的程序指令的程序图图5-25 逻辑逻辑“与与”指令的位运算过程指令的位运算过程2逻辑逻辑“与与”指令指令WAND的举例的举例表5-18WOR指令格式项项 目目字节字节“或或”字字“或或”双字双字“或或”梯形图梯形图指令表指令表ORB IN1,IN2OR

31、W IN1,IN2ORD IN1,IN2(1)IN1、IN2为两个相为两个相“或或”的源操作数,的源操作数,OUT为存储为存储“或或”运算结运算结果的目标操作数。果的目标操作数。(2)逻辑)逻辑“或或”指令的功能是将两个源操作数的数据进行二进制按位指令的功能是将两个源操作数的数据进行二进制按位相相“或或”,并将运算结果存入目标操作数中。,并将运算结果存入目标操作数中。5.6.2 逻辑逻辑“或或”指令指令WOR逻辑逻辑“或或”指令指令WOR的指令格式见表的指令格式见表5-18。1逻辑逻辑“或或”指令指令WOR的说明的说明要求用输入继电器字节要求用输入继电器字节IB0去控制输出继电器字节去控制输出

32、继电器字节QB0,但,但Q0.3、Q0.4两位不受字节两位不受字节IB0的控制而始终处于的控制而始终处于ON状态。可用逻辑状态。可用逻辑“或或”指令指令屏蔽屏蔽I0.3、I0.4位,程序如图位,程序如图5-26所示。所示。图5-26 应用逻辑“或”指令的程序图5-27 逻辑“或”指令的位运算过程2逻辑逻辑“或或”指令指令WOR的举例的举例表5-19INV指令格式项项 目目字节字节“取反取反”字字“取反取反”双字双字“取反取反”梯形图梯形图指令表指令表INVB ININVW ININVD IN(1)IN为为“取反取反”的源操作数,的源操作数,OUT为存储为存储“取反取反”运算结果的目运算结果的目

33、标操作数。标操作数。(2)逻辑)逻辑“取反取反”指令的功能是将源操作数数据进行二进制按位指令的功能是将源操作数数据进行二进制按位“取反取反”,并将逻辑运算结果存入目标操作数,并将逻辑运算结果存入目标操作数OUT中。中。5.6.3 逻辑逻辑“取反取反”指令指令INV1逻辑逻辑“取反取反”指令指令INV的说明的说明假设要求用输入继电器字节假设要求用输入继电器字节IB0的相反状态去控制输出继电器字节的相反状态去控制输出继电器字节QB0,即,即IB0的某位为的某位为“1”时,时,QB0的相应位为的相应位为“0”;IB0某位为某位为“0”时时,QB0的相应位为的相应位为“1”。程序如图。程序如图5-28

34、所示。所示。图5-28 应用逻辑“取反”指令的程序图5-29 逻辑“取反”指令的位运算过程2逻辑逻辑“取反取反”指令指令INV的举例的举例5.7 子程序调用指令及其应用子程序调用指令及其应用 图5-30 子程序调用与返回结构5.7.1 子程序指令子程序指令CALL、CRET表5-20CALL、CRET指令格式项项 目目子程序调用指令子程序调用指令条件返回指令条件返回指令梯形图梯形图指令表指令表CALL SBR_NCRET5.7.2 实习操作:子实习操作:子程序调用举例程序调用举例图5-31 应用子程序调用指令的程序图5-31 应用子程序调用指令的程序(续) 5.8 循环指令及其应用循环指令及其

35、应用 5.8.1 循环指令循环指令FOR、NEXT表5-21FOR、NEXT指令格式项项 目目FOR指令指令NEXT指令指令梯形图梯形图指令表指令表FOR INDX,INIT,FINALNEXT表表5-21中中FOR用来标记循环体的开始,用来标记循环体的开始,NEXT用来标记循环体的结束。用来标记循环体的结束。参数参数INDX为当前循环次数计数器,用来记录循环次数的当前值,循环为当前循环次数计数器,用来记录循环次数的当前值,循环体程序每执行一次体程序每执行一次INDX值加值加1。参数。参数INIT及及FINAL用来规定循环次数的初用来规定循环次数的初值及终值,当循环次数当前值大于终值时,循环结

36、束。可以用改写参数值的值及终值,当循环次数当前值大于终值时,循环结束。可以用改写参数值的方法控制循环体的实际循环次数。方法控制循环体的实际循环次数。5.8.2 循环指令的举例循环指令的举例【例题5.2】 求0+1+2+3+100 的和,并将计算结果存入VW0。【解】 用循环指令编写的程序如图5-32所示,VW2作为循环增量。如果在循环体内又包含如果在循环体内又包含了另外一个循环,称为了另外一个循环,称为循环嵌套,循环指令最循环嵌套,循环指令最多允许多允许8级循环嵌套。级循环嵌套。 图5-32 例题5.2应用循环指令求和的程序【例题【例题5.3】 应用循环嵌套求应用循环嵌套求0+1+2+3+10

37、0 的和,并将计算结果存入的和,并将计算结果存入VW0。【解】【解】 在图在图5-33所示的程序中,使用了所示的程序中,使用了2级循环嵌套,外循环的次数为级循环嵌套,外循环的次数为2次,内循环的次数为次,内循环的次数为50次,总循环的次数为次,总循环的次数为250 = 100次。循环结束后,次。循环结束后,VW0中存储的数据为中存储的数据为5 050。图5-33 例题5.3应用循环嵌套求和的程序 5.9 比较指令及其应用比较指令及其应用 5.9.1 比较指令比较指令表5-22比较指令格式项项 目目方方 式式 字节比较字节比较整数比较整数比较双整数比较双整数比较实数比较实数比较字符串比较字符串比

38、较 梯形图梯形图(以(以为例)为例) 指令表指令表LDB IN1,IN2LDB IN1,IN2LDB IN1,IN2LDB IN1,IN2LDB= IN1,IN2AB= IN1,IN2AB IN1,IN2AB IN1,IN2AB IN1,IN2AB= IN1,IN2OB= IN1,IN2OB IN1,IN2OB IN1,IN2OB IN1,IN2OB= IN1,IN2LDW IN1,IN2LDW IN1,IN2LDW IN1,IN2LDW IN1,IN2LDW= IN1,IN2AW= IN1,IN2AW IN1,IN2AW IN1,IN2AW IN1,IN2AW= IN1,IN2OW= IN1

39、,IN2OW IN1,IN2OW IN1,IN2OW IN1,IN2OW= IN1,IN2LDD IN1,IN2LDD IN1,IN2LDD IN1,IN2LDD IN1,IN2LDD= IN1,IN2AD= IN1,IN2AD IN1,IN2AD IN1,IN2AD IN1,IN2AD= IN1,IN2OD= IN1,IN2OD IN1,IN2OD IN1,IN2OD IN1,IN2OD= IN1,IN2LDR IN1,IN2LDR IN1,IN2LDR IN1,IN2LDR IN1,IN2LDR= IN1,IN2AR= IN1,IN2AR IN1,IN2AR IN1,IN2AR IN1,I

40、N2AR= IN1,IN2OR= IN1,IN2OR IN1,IN2OR IN1,IN2OR IN1,IN2OR= IN1,IN2LDS= IN1,IN2AS IN1,IN2OS IN1,IN2LDS IN1,IN2AS IN1,IN2OS IN1,IN2【例题【例题5.4】 应用比较指令产生断电应用比较指令产生断电6s、通电、通电4s的脉冲输出信号。的脉冲输出信号。【解】【解】 图5-34 例题5.4程序与时序图【例题【例题5.5】 某生产线有某生产线有5台电动机,要求每台电动机间隔台电动机,要求每台电动机间隔5s启动,试用比启动,试用比较指令编写启动控制程序。较指令编写启动控制程序。 图5

41、-35 例题5.5程序5.9.2 实习操作:传送带的实习操作:传送带的PLC控制程序控制程序用如图用如图5-36所示的传送带输送工件,数量为所示的传送带输送工件,数量为20个。连接个。连接I0.0端子的端子的光电传感器对工件进行计数。当计件数量小于光电传感器对工件进行计数。当计件数量小于15时,指示灯常亮;当时,指示灯常亮;当计件数量等于或大于计件数量等于或大于15时,指示灯闪烁;当计件数量为时,指示灯闪烁;当计件数量为20时,时,10s后传后传送带停止,同时指示灯熄灭。送带停止,同时指示灯熄灭。图5-37 传送带的控制线路图1控制要求控制要求图5-36 传送带工作台表5-23输入/输出端口分

42、配表输 入输 出输入继电器输 入 元 件作 用输出继电器控 制 元 件控 制 对 象I0.0光电传感器计数Q0.0接触器KM电动机MI0.2SB1常开触点启动Q0.2HL指示灯I0.3SB2常闭触点停止图5-38 传送带的PLC控制程序 5.10 数码显示及其应用数码显示及其应用 1七段数码管与七段数码管与显示代码显示代码十进制数码十进制数码七段显示电平七段显示电平16进制进制显示代码显示代码gfedcba0011111116#3F1000011016#062101101116#5B3100111116#4F4110011016#665110110116#6D6111110116#7D7000

43、011116#078111111116#7F9110011116#67图5-39 七段数码管十进制数码与七段显示电平和显示代码逻辑关系5.10.1 七段数码显示七段数码显示设计一个数码显示的设计一个数码显示的5人智力竞赛抢答器。某参赛选手抢先按下自己的按钮时人智力竞赛抢答器。某参赛选手抢先按下自己的按钮时,则显示该选手的号码,同时联锁其他参赛选手的输入信号无效。主持人按复位,则显示该选手的号码,同时联锁其他参赛选手的输入信号无效。主持人按复位按钮清除显示数码后,比赛继续进行。按钮清除显示数码后,比赛继续进行。2数码管应用举例数码管应用举例图5-40 智力竞赛抢答器控制电路图输输 入入输输 出出

44、输入继电器输入继电器输输 入入 元元 件件作作 用用输出继电器输出继电器控控 制制 对对 象象I0.0SB1主持人复位主持人复位Q0.0Q0.6a g七段显示码七段显示码I0.1I0.5SB2SB6参赛选手参赛选手155人智力竞赛抢答器控制电路需要人智力竞赛抢答器控制电路需要6个输入端口,个输入端口,7个输出端口。输入、个输出端口。输入、输出端口的分配见表输出端口的分配见表5-25。表5-25输入/输出端口分配表图5-41 智力竞赛抢答器程序梯形图梯梯 形形 图图指令表指令表SEG IN,OUT描述描述使能输入有效时,将字节型输入数据使能输入有效时,将字节型输入数据IN的低的低4位有效数字产生

45、相应的七段显位有效数字产生相应的七段显示码,并将其输出到示码,并将其输出到OUT指定的单元中指定的单元中对七段编码指令对七段编码指令SEG说明如下:说明如下:(1)IN为要编码的源操作数,为要编码的源操作数,OUT为存储七段编码的目标操作数。为存储七段编码的目标操作数。IN、OUT数据类型为字节(数据类型为字节(B)。)。(2)SEG指令是对指令是对4位二进制数编码,如果源操作数大于位二进制数编码,如果源操作数大于4位,只对最低位,只对最低4位编码。位编码。(3)SEG指令的编码范围为十六进制数字指令的编码范围为十六进制数字09、AF,对数字,对数字09的七的七段编码见表段编码见表5-24,对

46、数字,对数字AF的七段编码可查看本章小结有关内容。的七段编码可查看本章小结有关内容。 5.10.2 七段编码指令七段编码指令SEG在图在图5-41所示程序中,对要显示的数码需要用人工计算出七段显示所示程序中,对要显示的数码需要用人工计算出七段显示码,其实码,其实PLC有一条编码指令,可以自动编出待显示数码的七段显示码。有一条编码指令,可以自动编出待显示数码的七段显示码。表5-26SEG指令格式图5-42 七段编码指令SEG应用举例SEG指令的应用举例程序如图指令的应用举例程序如图5-42(a)所示,状态监控表如图)所示,状态监控表如图5-42(b)所示。)所示。5.10.3 BCD码转换指令码

47、转换指令IBCD在在PLC中,存储的数据无论是以十进制格式输入还是以十六进制的格中,存储的数据无论是以十进制格式输入还是以十六进制的格式输入,都是以二进制的格式存在的。如果直接使用式输入,都是以二进制的格式存在的。如果直接使用SEG指令对两位以上指令对两位以上的十进制数据进行编码,则会出现差错。的十进制数据进行编码,则会出现差错。这种用二进制形式反映十进制数码的代码称为这种用二进制形式反映十进制数码的代码称为BCD码,其中最常用码,其中最常用的是的是8421BCD码,它是用码,它是用4位二进制数来表示位二进制数来表示1位十进制数码,该代码从位十进制数码,该代码从高位至低位的权分别是高位至低位的

48、权分别是8、4、2、1,故称为,故称为8421BCD码。码。 18421BCD编码编码表5-27十进制、十六进制、二进制与8421BCD码关系十十 进进 制制 数数十六进制数十六进制数二二 进进 制制 数数8421BCD码码000000000011000100012200100010330011001144010001005501010101660110011077011101118810001000991001100110A10100001 000011B10110001 000112C11000001 001013D11010001 001114E11100001 010015F11110

49、001 010116101 00000001 011017111 00010001 011120141 01000010 0000503211 00100101 0000150961001 01100001 0101 00002581021 0000 00100010 0101 1000要想正确地显示十进制数码,必须先用要想正确地显示十进制数码,必须先用BCD码转换指令码转换指令IBCD将二进制将二进制的数据转换成的数据转换成8421BCD码,再利用码,再利用SEG指令编成七段显示码,最后输出控指令编成七段显示码,最后输出控制数码管发光。制数码管发光。表5-28IBCD指令格式梯梯 形形 图图

50、指令表指令表IBCD OUT描述描述使能端输入有效时,将输入的整数值使能端输入有效时,将输入的整数值IN转换成转换成BCD码,并将结果送到码,并将结果送到OUT输出输出对对IBCD转换指令说明如下。转换指令说明如下。(1)IN为要转换的源操作数(为要转换的源操作数(09 999),),OUT为存储为存储BCD码的目标码的目标操作数。操作数。(2)IBCD指令是将源操作数的数据转换成指令是将源操作数的数据转换成8421BCD码并存入目标操作码并存入目标操作数中。在目标操作数中每数中。在目标操作数中每4位表示位表示1位十进制数,从低至高分别表示个位、位十进制数,从低至高分别表示个位、十位、百位、千

51、位。十位、百位、千位。2BCD码转换指令码转换指令IBCDIBCD指令的应用举例如图指令的应用举例如图5-43所示。当所示。当I0.0接通时,先将接通时,先将5 028存入存入VW0,然后将(然后将(VW0)= 5 028编为编为BCD码输出到码输出到QW0。从图从图5-44所示的工作过程可以看出,所示的工作过程可以看出,VW0中存储的二进制数据与中存储的二进制数据与QW0中存储的中存储的BCD码完全不同。码完全不同。QW0以以4位位BCD码为码为1组,从高至低分组,从高至低分别是十进数别是十进数5、0、2、8的的BCD码。码。图5-44 BCD转换指令IBCD工作过程图5-43 BCD转换指

52、令IBCD应用举例5.10.4 多位数码显示多位数码显示当显示的数码不止当显示的数码不止1位时,就要并列使用多个数码管。以位时,就要并列使用多个数码管。以2位数码位数码显示为例,可以显示的范围十六进制是显示为例,可以显示的范围十六进制是0FF,十进制是,十进制是099。如果显示如果显示2位十进制数,要先用位十进制数,要先用BCD转换指令将二进制数据转换转换指令将二进制数据转换为为8位位BCD码,再将码,再将BCD码的高码的高4位和低位和低4位用七段编码指令位用七段编码指令SEG分别分别编码,最后用高、低位编码分别控制十位和个位数码管。编码,最后用高、低位编码分别控制十位和个位数码管。5.10.

53、5 实习操作:停车场数码显示应用程序实习操作:停车场数码显示应用程序某停车场最多可停某停车场最多可停50辆车,用辆车,用2位数码管显示停车数量。用出入传位数码管显示停车数量。用出入传感器检测进出车辆数,每进一辆车停车数量增感器检测进出车辆数,每进一辆车停车数量增1,每出一辆车停车数量,每出一辆车停车数量减减1。场内停车数量小于。场内停车数量小于45时,入口处绿灯亮,允许入场;等于和大于时,入口处绿灯亮,允许入场;等于和大于45但小于但小于50时,绿灯闪烁,提醒待进场车辆司机注意将满场;等于时,绿灯闪烁,提醒待进场车辆司机注意将满场;等于50时,红灯亮,禁止车辆入场。时,红灯亮,禁止车辆入场。停车场输入、输出设备位置示意图如图停车场输入、输出设备位置示意图如图5-46所所示。示。1控制要求控制要求图5-46 停车场输入/输出设备位置示意图2控制电路控制电路停车场停车场PLC控制电路如图控制电路如图5-45所示。所示。图5-45 停车场控制电路图输输 入入输输 出出输入继电器输入继电器输输 入入 元元 件件作作 用用输出继电器输出继电器控控 制制 对对 象象I0.0传感器传感器IN检测进场车辆检测进场车辆Q0.6Q0.0个位数显示个位数显示I0.1传感器传感器OUT检测出场车辆检测出场车辆Q1.0绿灯,允许信号绿灯,

温馨提示

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

评论

0/150

提交评论