版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、4.4 S7-200 PLC 的功能指令PLC的功能指令Functional Instruction或称应用指令,是指令系统中满足特殊控制要求的 那些指令。在本节中主要介绍数据处理指令、数据运算指令、转换指令、表功能指令、程序 控制类指令、中断指令、高速计数器指令、高速脉冲指令等。1. 指令格式指令的梯形图格式主要以指令盒的形式表示,如图4-49所示:图4-49指令的梯形图格式MOV_B, 般由两局部组成,前面局部为指令的助记B表示字节,W表示字,DW 表示双字、R表示实数、如字节传送指令的指令表格式为:MOVB IN,OUT。指令盒的顶部为该指令的标题,如 符,后面局部为参与运算的数据类型,
2、 I表示整数、DI表示双整数。指令的指令表格式也分为两局部,前面局部为指令的助记符,后面局部为指令的操作数,其中"IN 为源操作数,"OUT 为 目的操作数。为了节省篇幅,对每条功能指令的操作数的内容即数据类型做如下约定:字节型:VB、IB、QB、MB、SB、SMB、LB、AC、*VD、*LD、*AC 和常数。字型及 INT 型:VW、IW、QW、MW、SW、SMW、LW、AC、T、C、*VD、*LD、 *AC和常数。双字型及 DINT 型:VD、ID、QD、MD、SD、SMD、LD、AC、*VD、*LD、*AC 和 常数。2指令的执行条作和运行情况指令梯形图格式中的“ E
3、N 端是允许输入端,为指令的执行条件,只要有“能流流入EN端,指令就执行。要注意的是:只要条件存在,该指令会在每个扫描周期执行一次,如果希 望只执行一次,要在“ EN 前加一条跳变指令。在语句表STL程序中没有EN允许输入端,允许执行STL语句的条件是栈顶的值必须 是 “1。4.ENO状态用于指令的级联指令盒的右边设有 “ENO 使能输出,假设EN端有“能流且指令被准确无误地执行了,那么ENO端会有“能流输出,传到下一个程序单元,如果指令运行出错,ENO端状态为0。在语句表程序中用AENO ANDENO 指令访问,可以产生与指令盒的允许输出端ENO 相同的效果。数据处理指令该类指令涉及对数据的
4、非数值运算,包括数据的传送指令、交换指令等。一、传送指令一单个数据传送指令1. 含义:是指把输入端IN指定的数据传送到输出端 OUT,且每次只传送 1个数据,传送 过程中数据值保持不变。2. 类型:按操作数的数据类型可分为字节传送MOVB、字传送MOVW、双字传送MOVD、实数传送MOVR指令,指令的梯形图和指令表格式如图4-50 所示图4-50单个数据传送指令的梯形图和指令表格式3. 指令功能。MOVB:当允许输入EN有效时,把MOVW:当允许输入 EN有效时,把MOVD:当允许输入EN有效时,把MOVR:当允许输入EN有效时,把 存储单元。(二)数据块传送指令1. 含义:数据块传送指令把从
5、输入端IN所指的单字节原值传送到 OUT所指字节存储单元。 IN所指的单字原值传送到 OUT所指字存储单元。IN所指的单双字原值传送到 0UT所指双字存储单元。IN所指的单32位实数原值传送到 0UT所指双字长的(IN)指定的N个(最多255个)数据成组传送到从输出端(OUT)指定地址开始的N个连续存储单元中,传送过程中各存储单元的内容不变。2. 类型:按操作数的数据类型可分为字节块传送(BMB)、字块传送(BMW)双字块传送(BMD)指令等3种。指令的梯形图和指令表格式如图4.51所示ELKMOV BENENOELKMOV_WEN EffOBLKM0V DEN ENOOUTTITOUTIN
6、OUTNEflIB Iff, OUT, HBMW IN, OUT, NBlrtD IN, OUT, If图4-51数据块传送指令的梯形图和指令表格式3. 指令功能。BMB :当允许输入EN有效时, 始的N个字节型存储单元。BMW :当允许输入EN有效时, 的N个字型存储单元。把从输入IN开始的N个字节型数据传送到从输出OUT开把从输入IN开始的N个字型数据传送到从输出OUT开始把从输入IN开始的N个双字型数据传送到从输出OUT开BMD :当允许输入EN有效时, 始的N个双字型存储单元。二、交换字节指令(SWAP)W_BIREN EHOIN OUT1K5VJI1FEN EHQIW OUTBIR
7、IB, OUTBI¥ HOUT用来把输入字型数据(IN)的高字节内容与低字节内容互相交换,交换结果仍存放在输 入端(IN)指定的地址中。指令的梯形图和指令表格式如图4-52所示。图4-52交换字节指令的梯形图和指令表格式操作数数据类型为无符号整数型WORD三、传送字节立即读、写指令传送字节立即读BIR指令,当允许输入 EN有效时,立即读取输入端IN指定字节地址 的物理输入点IB的值,并传送到输出端OUT指定字节地址的存储单元中。传送字节立即写BIW指令,当允许输入 EN有效时,立即将由输入端 IN指定的字节数 据写入到输出端OUT指定字节地址的物理输出点QB。传送字节立即读、写指令如
8、图4.所示。其操作数数据类型为字节型BYTE。数据运算指令随着计算机技术的开展,新型PLC具备了越来越强的的 数据运算功能,来满足复杂控制对控制器计算能力的要求。数据运算指令包括算术运算指令和逻辑运算指令两大类。一、算术运算指令算术运算指令包括加、减、乘、除运算及常用函数拽令。其数据类型为整型INT、双整型DINT和实数REAL1加法运算指令当允许输入端EN有效时,加法运算指令执行加法操作,把两个输入端IN1、IN2指定的数据相加,将运算结果送到输出端OUT指定的存储器单元中。加法运算指令是对有符号数进行加法运算,可分为整数ADD、双整数ADD_D、实数ADD_R加法运算指令,指令的梯形图和指
9、令表格式如图4.53所示。其操作数数据类型依次为有符号整数INT、有符号双整数DINT、实数REAL。图4-53加法运算指令的梯形图和指令表格式执行加法运算时,使用梯形图编程和指令表编程时对存储单元的要求是不相同的。使 用梯形图编程时,执行 IN1+ IN2 =OUT因此IN2和OUT指定的存储单元可以相同也可以不 相同;使用指令表编程时,执行IN1+OUT=OUT因此IN2和OUT要使用相同的存储单元。2、减法运算指令当允许输入端EN有效时,减法运算指令执行减法操作,把两个输入端 IN1、IN2指定 的数据相减,将运算结果送到输出端OUT指定的存储器单元中。减法运算指令是对有符号数进行减法运
10、算,可分为整数ADD、双整数ADD_D、实数ADD_R减法运算指令,指令的梯形图和指令表格式如图4.54所示。其操作数数据类型依次为有符号整数INT、有符号双整数DINT、实数REAL。-D II?, OUT-R 112, OUT图4-54减法运算指令的梯形图和指令表格式执行减法运算时,使用梯形图编程和指令表编程时对存储单元的要求是不相同的。使 用梯形图编程时,执行IN1- IN2 =OUT因此IN1和OUT旨定的存储单元可以相同也可以不相同;使用指令表编程时,执行OUT-IN2=OUT因此IN1和OUT要使用相同的存储单元。3、乘法运算指令当允许输入端 EN有效时,乘法 运算指令,把两个输入
11、端IN1 , IN2指定的数相乘,将 运算结果送到输出端OUT指定的存储单元中。乘法运算指令是对有符号数进行乘法运算,可分为整数、双整数、实数乘法指令和整 数完全乘法指令,指令的梯形图和指令表格式如图4.55所示。*1 IPJL, OUT初 IK1, OUT半R INkOUTMUL T1T1, OUT图4-55乘法运算指令的梯形图和指令表格式整数乘法运算指令是将两个单字长符号整数相乘,产生一个16位整数;双整数乘法 运算指令是将两个双字长符号整数相乘,产生一个32位整数;实数乘法 运算指令是将两个双字长实数相乘,产生一个 32位实数;整数完全乘法 运算指令是将两个单字长符号整数相乘, 产生一个
12、32位整数;执行乘法运算时,使用梯形图编程和指令表编程时对存储单元的要求是不相同的。使 用梯形图编程时,执行 IN1*IN2 =OUT,因此IN2和OUT指定的存储单元可以相同也可以不 相同;使用指令表编程时,执行IN1*OUT=OUT因此IN2和OUT要使用相同的存储单元 整数完全乘法 运算指令的IN2与OUT的低16位使用相同的地址单元。对标志位的影响加法、减法、乘法指令影响的特殊存储器位:SM1.0零、SM1.1溢出、SM1.2负。4、除法运算指令当允许输入端 EN有效时,除法 运算指令,把两个输入端IN1 , IN2指定的数相除,将 运算结果送到输出端OUT指定的存储单元中。除法运算指
13、令是对有符号数进行除法运算,可分为整数、双整数、实数除法指令和整 数完全除法指令,指令的梯形图和指令表格式如图4.56所示。/I IN2, OUT/D INN OUT /R IW2, OUTDIV Ilf乙 OUT图4-56除法运算指令的梯形图和指令表格式整数除法运算指令是将两个单字长符号整数相除,产生一个16位商,不保存余数;双整数除法运算指令是将两个双字长符号整数相除,产生一个32位商,不保存余数;实数除法运算指令是将两个双字长实数相除,产生一个32位32位商,不保存余数;整数完全除法运算指令是将两个单字长符号整数相除,产生一个32位的结果;其中高16位是余数,低16位是商。执行除法运算时
14、,使用梯形图编程和指令表编程对存储单元的要求是不相同的。使用 梯形图编程时,执行 IN1/IN2 =OUT,因此IN1和OUT指定的存储单元可以相同也可以不相同;使用指令表编程时,执行OUT/IN2=OUT因此IN1和OUT要使用相同的存储单元整数完全除法指令 运算指令的IN1与OUT的低16位使用相同的地址单元。除法运算指令对特殊存储器位的影响:SM1.0零、SM1.1溢出、SM1.2负、SM1.3除数为0。算术运算指令编程举例如图4-57所示。LD10.0+1AC1.AC0nuL101,70100DIV7220,7300M0V_RVD400, VB500/R70130,71)5004-57
15、算术运算指令编程举例图4-40中,实数除法指令中IN1VD400与OUTVD5OO不是同一地址单元。在指令表编 程时,首先要使用 MOV_指令将IN1VD400传送到OUTVD5OO,然后再执行除法操作。事 实上,加法、减法、乘法等指令如果遇到上述情况,也要作类似的处理。5、加1和减1指令加1和减1指令用于自增、自减操作,当允许输入端EN有效时,把输入端IN指定的数 相加1或减1,将运算结果送到输出端 OUT指定的存储单元中。加1和减1指令操作数长度可以是字节无符号数、字或双字有符号数,所以指令可以分为字节、字、双字加1或减1指令,指令的梯形图和指令表格式如图4.58所示。IIC.BDEC.B
16、TUC-VT1EC_¥TNC_P¥-Et< ENOEJT EXO EN ENO'EV EHOEH ENOEI ENOID OUT一 IB 01H一 111 UU7一 IM OUT11 OUT-IB OUT一1JICE OUT DECE OUTiNCtf OUT DEC* JUTIN2D DUT DECD OUT图4-58加1和减1指令的梯形图和指令表格式执行加1减1指令时,使用梯形图编程和指令表编程时对存储单元的要求是不相同 的。使用梯形图编程时,执行IN+ 1=OUTIN-1=OUT,因此IN和OUT指定的存储单元可以相同也可以不相同;使用指令表编程时,执行
17、out+1=OUTout-仁OUT,因此IN和OUT要使用相同的存储单元。字节加1和减1指令影响的特殊存储器位:SM1.0零、SM1.1溢出,字、双字加1和减1指令影响的特殊存储器位:SM1.0零、SM1.1溢出、SM1.2负。6、数学功能指令数学功能指令包括平方根、自然对数、自然指数、三角函数等常用的函数指令,除平方平方根 自然对数自然指数正弦余弦正切图4-59数学功能指令的梯形图和指令表格式1、平方根Square Root指令平方根指令SQRT,把输入端IN的32位实数开方,得到32位实数结果,并把结果存 放到OUT指定的存储单元中。、自然对数Natuaral Logarthm 指令自然对
18、数指令LN,把输入端IN的32位实数取自然对数,得到32位实数结果,并把结果存放到OUT指定的存储单兀中。、自然指数Natural Exponential指令4、正弦、余弦、正切指令正弦、余弦、正切指令,对输入端得到32位实数结果,并把结果存放到数学功能指令影响的特殊存储器位:自然指数指令EXP,把输入端IN的32位实数取以e为底的指数,得到32位实数结果, 并把结果存放到 OUT指定的存储单兀中。IN指定的32位实数的弧度值取正弦、余弦、正切, OUT指定的存储单元中。SM1.0零、SM1.1溢出、SM1.2负。、逻辑运算指令逻辑运算是对无符号数进行逻辑处理,按运算性质的不同,包括逻辑与指令
19、、逻辑或指令、逻辑非指令、逻辑异或指令。其操作数均可以是字节、字和双字,且均为无符号数。1、逻辑“与指令逻辑“与指令是指当允许输入端 EN有效时,对两个输入端IN1 , IN2的数据按位“与, 产生一个逻辑运算结果, 并把结果存入 OUT指定的存储器单元中。 逻辑“与指令按操作数 的数据类型可分为字节B “与、字W “与、双字DW “与指令,指令的梯形图和 指令表格式如图4.60所示ANDE IK1.0UTANDV lUlj OUT字节B “与字W “与双字DW “与图4-60逻辑“与指令的梯形图和指令表格式2、逻辑“或指令逻辑“或指令是指当允许输入端 EN有效时,对两个输入端IN1 , IN
20、2的数据按位“或, 产生一个逻辑运算结果,并把结果存入 OUT旨定的存储器单元中。 逻辑“或指令按操作数的数据类型可分为字节B “或、字W “或、双字DW “或指令,指令的梯形图和 指令表格式如图4.61 所示ORB INI, OUTORW INI, OUT字节B “或字w “或双字DW “或字节B “异或字W “异或图4-61逻辑“或指令的梯形图和指令表格式3、逻辑“异或指令逻辑“异或指令是指当允许输入端 EN有效时,对两个输入端IN1 , IN2的数据按位“异 或,产生一个逻辑运算结果,并把结果存入OUT指定的存储器单元中。逻辑“异或指令按操作数的数据类型可分为字节B “异或、字W “异或
21、、双字DW “异或指令,指令的梯形图和指令表格式如图4.72 所示双字DW “异或图4-72逻辑“异或指令的梯形图和指令表格式4、逻辑“取反指令逻辑“取反指令是指当允许输入端EN有效时,对输入端IN的数据按位“取反,产生一个逻辑运算结果,并把结果存入OUT指定的存储器单元中。逻辑“取反指令按操作数的数据类型可分为字节B “取反、字W “取反、双字DW “取反指令,指令的梯 形图和指令表格式如图 4.73所示字节B“取反IOD OUT字W “取反双字DW “取反图4-73逻辑“异或指令的梯形图和指令表格式逻辑运算指令影响的特殊存储器位:SM1.0零逻辑运算指令编程举例如图4-74所示。LD11.
22、 0ANLIVVtflOO, VW2OO0RVLV10, LW2QM0VDVDWO, VD500X0RDVD300, VD5OO图4-74逻辑运算指令编程举例移位指令移位指令包括左移位、右移位、循环左移位、循环右移位和移位存放器指令。移位和循环移位指令均为无符号数操作。一、左移位指令 SHL Shift Lelt 左移位指令,当EN端口执行条件存在时,把输入端IN指定的数据左移 N位,并把结果存入OUT指定的存储器单元中。左移位指令,按操作数的数据长度可分为字节、字、双字左移位指令,指令的梯形图和指令表格式如图4.75所示。字节左移 字左移双字左移图4-75左移位指令的梯形图和指令表格式二、右
23、移位指令(SRB、SRW SRD指令)右移位指令,当EN端口执行条件存在时, 把输入端(IN)指定的数据右移 N位,并把结果 存入OUT指定的存储器单元中。 右移位指令,按操作数的数据长度可分为字节、字、双字右 移位指令,指令的梯形图和指令表格式如图4.76所示。SEE OUTSRV OUT.NSKD OUT字节右移字右移双字右移图4-76右移位指令的梯形图和指令表格式对左移位指令和右移位指令的说明:(1) 操作数为无符号数。(2) 数据存储单元的移出端与SM1.1 (溢出)端相连,移出位存入 SM1.1存储单元,SM1.1存储单元中为最后一次移出的位值,数据存储单元的另一端自动补0。(3)
24、移位次数N和移位数据长度有关,如果 N小于实际的数据长度,那么执行 N次移位;如果N大于实示的数据长度, 字节、字、双字移位指令的实际最大可移位数分别为& 16、32。三、循环右移指令循环右移指令,当EN端口执行条件存在时, 把输入端(IN)指定的数据循环右移 N位,并 把结果存入OUT指定的存储器单元中。 循环右移指令,按操作数的数据长度可分为字节、 字、 双字循环右移指令,指令的梯形图和指令表格式如图4.78所示。rioR_EEN EI10IN OUTuENE恥INOUTuROE_D¥EN ESOIN OUTERB OUTNR刑 OUT. NRRD OUT, K字节循环右
25、移字循环右移双字循环右移图4-78循环右移指令的梯形图和指令表格式四、循环左移指令循环左移指令,当EN端口执行条件存在时, 把输入端(IN)指定的数据循环左移 N位,并把结果存入OUT指定的存储器单元中。 循环左移指令,按操作数的数据长度可分为字节、字、双字循环左移指令,指令的梯形图和指令表格式如图4.79所示。KLB OUT, KRLW OUT, WRLE OUT, N字节循环左移字循环左移双字循环左移图4-79循环左移指令的梯形图和指令表格式对循环右移指令和循环左移指令的说明:(1) 操作数为无符号数。(2) 数据存储单元的移出端与另一端相连,因此最后移出的位被移到了另一端;同时又与SM1
26、.1 (溢出)端相连,因此移出位也存入到了SM1.1存储单元中,SM1.1存储单元中始终为最后一次移出的位值。(3) 移位次数N和移位数据长度有关,如果 N小于实际的数据长度,那么执行 N次移位;如果N大于实示的数据长度,字节、字、双字移位指令的实际移位次数分别为N除以8、16、32的余数。左、右移位指令和循环左、右移位指令对标志位的影响:SM1.0 (零)、SM1.1 (溢出)。移位后溢出位(SM1.1)的值等于最后一次移出的位值;如果移位的结果是0,那么零存储器位(SM1.0)置位。左移位指令和循环右移位指令指令应用如图4-80 所示VVLOOVVI JU溢出庇循环移位前1010 0011
27、 0110 1001Z1010 DD11 01101001M2OD图4-80左移位指令和循环右移位指令指令应用五、移位存放器指令(SHRB指令)(P80)移位存放器指令是一条可指定移位长度的移位指令,可用来进行顺序控制、步进控制、物流及数据流控制。其梯形图及语句表格式如图4.81所示:SUREENEN0DATAS_EIT囲菇 MT血S.BJT, K图4-81移位存放器指令的梯形图和指令表格式SHRB指令是指当使能输入有效时,把输入端DATA 的数值移入移位存放器,并进行移位。该移位存放器是由S_BIT和N决定的,其中,S_BIT指定移位存放器的最低位,N指定移位存放器的长度。移位方向分为正向移
28、位和反向移位,正向移位时N为正数,即输入数据从移位存放器的最低有效位移入,从最高有效位移出;反向移位时N为负数,即输入数据从移位存放器的最高有效位移入,从最低有效位移出。移位存放器存储单元的移出端与SM1.1 溢出位相连,最后被移出的位存放在SM1.1位存储单元中,移位存放器最高有效位 MSB.b的计算方法:由移位存放器的最低有效位 S_BIT和移 位存放器的长度N来计算移位存放器的最高有效位MSB. b的地址。计算公式为:MSB.b=S_BIT 的字节号+ N的绝对值-l+S_BIT的位号十8.被8除所得余数】例如,如果 S_BIT是V33.4 , N是14,贝U MSB.b是V35.1。具
29、体计算如下:MSB.b=V33+14-l+4- 8=V33+17十 8=V33+2余数为 1=V33.1每次使能输入有效时, 在每个扫描周期内,移位存放器移动一位,因此应该用跳变指令来控制使能端的状态。数据类型,DATA和S_BIT为BOO型,N为字节型。数据转换指令数据转换指令的功能是指对操作数的类型进行转换,方便在不同类型数据之间进行处理或者运算。包括 数据类型转换指令、数据的编码和译码指令以及字符串类型转换指令。一、数据类型转换指令在进行数据处理时,不同性质的操作指令对数据类型的要求是不同的,所以在使用时需要 进行数据类型转换。数据 类型转换包括BCD码与整数的转换、双字整数与实数的转换
30、、双字 六进制数的转换指令ATH指令、HTA指令、整数、双字整数、实数转为ASCII码指令一 BCD码与整数的转换1. BCDI指令BCD码转为整数BCDI指令是指当EN端口执行条件存在时,把输入端IN指定的BCD码转换成整数,并把结果存入输出端OUT指定的存储器单元中。输入数据的范围是09999。在STL中,IN和OUT使用相同的存储单元,指令的梯形图和指令表格式如图4.所示。2 . IBCD指令整数转为 BCD码IBCD指令是指当EN端口执行条件存在时,把输入端 IN指定的整数转换成 BCD码,并 把结果存入输出端OUT指定的存储器单元中。输入数据的范围是09999。在STL中,IN和OU
31、T使用相同的存储单元,指令的梯形图和指令表格式如图4.82所示。IECU OUT图4-82 BCD码与整数转换指令的梯形图和指令表格式BCDI指令和IBCD指令的数据类型为无符号整数, 指令影响的特殊存储器位:SMI.6非法 BCD码。二双字整数与实数的转换双字整数与实数转换指令的梯形图和指令表格式如图4.83所示HOUND IN, OUTTRUKC III, OUT图4-83双字整数与实数转换指令的梯形图和指令表格式把输入端IN指定的BCD码转换成整数,并把结果存入输出端OUT指定的存储器单元中。1. DTR指令双字整数转换为实数当EN端口执行条件存在时, 把输入端IN指定的有符号双字整数转
32、换成实数,并把结果存入到输出端OUT指定的双字存储单元中。影响的特殊存储器位:SMI.1溢出2. ROU ND取整指令实数转换为双字整数当EN端口执行条件存在时,将输入端IN指定的实数转换成有符号双字整数,结果输出到OUT指定的双字存储单元中。转换时实数的小数局部四舍五入。影响的特殊存储器位:SMI.1溢出3. TRUNC取整指令实数转换为双字整数当EN端口执行条件存在时,将输入端IN指定的实数转换成有符号双字整数,结果输出到OUT指定的双字存储单元中。转换时实数的小数局部舍去。影响的特殊存储器位:SMI.1溢出 三双字整数与整数的转换图4-85字节与整数的转换双字整数与整数转换指令的梯形图和
33、指令表格式如图4.84所示图4-84双字整数与整数转换指令1. DTI指令双字整数转为整数当EN端口执行条件存在时,把输入端IN指定的有符号双字整数转换成整数,并把结果存入到输出端OUT指定的字存储单元中。影响的特殊存储器位:SMl.1溢出2.ITD指令整数转为双字整数当EN端口执行条件存在时,将输入端IN指定的整数转换成有双字整数,结果输出到OUT指定的双字存储单元中。影响的特殊存储器位:SMI.1溢出四字节与整数的转换字节与整数转换指令的梯形图和指令表格式如图4.85所示1. BTI指令字节转换为整数当EN端口执行条件存在时, 把输入端IN指定的字节型数据转换成整数,并把结果存入到输出端O
34、UT指定的字存储单元中。2.IBT 指令整数转换为字节当EN端口执行条件存在时, 将输入端IN指定的无符号整数转换成字节型数据,结果输出到OUT指定的字节存储单元中。影响的特殊存储器位:SMI.1溢出转换指令应用举例如图4-86所示11.0图4-86转换指令应用举例LD11. 0EUITDVY1 0, ACOBTRACO, VD100财RVD2D4, VD209半RVD100f VD20SKOUNDVD208, VD220五译码、编码指令译码、编码指令指令的梯形图和指令表格式如图DECO INS OUTEKCO IN,OUT图4-87译码、编码指令1.译码DECO脂令当EN端口执行条件存在时,
35、图4-88段码SEG指令将输入字节IN的低四位的二进制值所表示的十进制数,输出字OUT的相应位为“ I其他位置“ 0。2. 编码ENC0脂令当EN端口执行条件存在时,将输入字IN中值为1的最低有效位的位号编码成4位二进制数,编码结果送到由OUT所指定字节的低四位。六段码SEG指令段码SEG指令指令的梯形图和指令表格式如图4.88所示段码SEG指令是指当EN端口执行条件存在时,将输入字节IN低4位的有效值16#0F转换成七段显示码,并输出到OUT所指定的字节存储单元中。段码指令SEG的七段显示码如图 4-89所示。每个七段显示码占用一个字节,用它显示IL 0SEGEN EWOIM OUTAC1V
36、B30 图4-90段码指令编程应用举例段码指令编程应用举例如图4-90所示。一个字符。每段置1时亮,置0时暗。与其对应的8位编码最高位补0称为七段显业码。 例如,要显示数据“ 1 时,七段数码管明暗规那么为 2#0000110,将高位补0后为2#00000110, 即1 译码为“ 16#06 IN(LSD)OUT gfe de ba段s平IN(LSD)OJT gfe deba軀示0ooii mi0001111111*10000 OHO190110 011120101 1011rA0111 0111A3oioo mi3Dili 110040110 01104c0011 1001c50110 11
37、015D0101 .1110Db0111 11016E0111 toolE70000 0111 rF0111 0001 1F图4-89段码指令SEG的七段显示码LD II. 0SEG VE30, AC1VB30 | 05 |AC1 | 丫D | (显示字符6七ASCII码与十六进制数的转换指令 ATH指令、HTA指令ASCII码与十六进制数转换指令的梯形图和指令表格式如图4.91所示ATH 1 OUT, LENHTA LN, OUT, LEN图4-91 ASCII码与十六进制数的转换指令1. ATH指令ATH指令是指当使能输入有效时,把从IN指定的字节开始,长度为LEN的ASCII码字符串转换
38、成十六进制数,并输出到OUT所指定的字节存储单元中。ASCII码字符串的最大长度为255个字符。2. HTA指令HTA指令是指当使能输入有效时,把从IN指定的字节开始,长度为 LEN的十六进制数转换成ASCII码,并输出到OUT所指定的字节存储单元中。 最多可转换255个十六进制数。(八) 整数、双字整数、实数转为ASCII码指令整数、双字整数、实数转为ASCII码指令的梯形图和指令表格式如图4.92所示UTA IN, OUT, OT图4-92整数、双字整数、实数转为ASCII码指令1.ITA指令ITA指令是指当使能输入有效时,把输入端IN所指定的整数转换成一个ASCII码字符串2. DTA指
39、令DTA指令是指当使能输入有效时,把输入端IN所指定的双字整数转换成一个ASCII码字符串3. RTA指令IN所指定的实数转换成一个ASCII码字符串DTA指令是指当使能输入有效时,把输入端 表功能指令在S7-200中,表功能指令是数据管理指令。使用它可建立一个不大于100个字的数据表,依次向数据区填入或取出数据,也可在数据区查找符合设置条件的数据。数据在表格中的存储形式如表4.14 所示表4. 14表中数据的存储格式存储单元地址存储单元中的数据说明VW1000005VW100为表格的首地址,TL=5为该表格的最大 填表数VW1020003数据EC=0003 (ECW 100)为该表中的实际填
40、表数VW1043457数据0VW1062356数据1VW1088743数据2VW110无效数据表功能指令包括填表指令、查表指令,先进先出指令、后进先出指令以及填充指令。、填表指令(ATT)填表指令是指当EN端口执行条件存在时,把DATA端的数据填加到TBL指定的数据表ATT DATA, TEL中。指令的梯形图和指令表格式如图4.93 所示图4-93填表指令的梯形图和指令表格式指令说明:(1) DATA、TBL为字型数据。(2) TBL指明表格的首地址,表中第一个数是最大填表数 (TL ),第二个数是实际填表数(EC);DATA端为数据输入,指明被填表的字型数据或地址。(3) 填表时,把DATA
41、端的数据填加在数据表最后一个数据的后面,且实际填表数EC值自动加1。(4) 填表指令影响的特殊存储器位为SM1.4 (表溢出)二、查表指令(FND)查表指令是指当EN端口执行条件存在时,从INDX开始搜索表TBL,查找符合条件PTN和CMD的数据。指令的梯形图和指令表格式如图4.95所示LADSTLTEL_FIITO ENENOTBLFTNIIWXCMD阳D= TBL. PATRN, ITiDXFMDO TBL, PATRN, JNDK FND< TEL, PATRN, IIOX FMD> TBL, PATRH,IMDX图4-95查表指令的梯形图和指令表格式指令说明:(1) TBL
42、、PTN、INDX为字型数据,CMD为字节型数据。(2) TBL指明表格的首地址;PTN设置要查找的具体数据;CMD设置查找条件,它是一个14的数值,分别表示=、;INDX用来存放表中符合查找条件的数据的地址。 查表指令FND是从INDX 开始搜索表 TBL,查表前,INDX的内容应清零。当 EN端 口执行条件存在时,从INDX开始查找符合条件的数据,假设没有发现符合条件的数据,那么INDX的值等于EC;假设找到一个符合条件的数据,那么将该数据在表中的地址存放到INDX中。找到一个符合条件的数据后,假设想继续查找下一个符合条件的数据,在激活查表指令前,必须先对INDX加1。三、先进先出指令(F
43、IFO )先进先出指令是指当EN端口执行条件存在时,将表中的字型数据按照先进先出的方式取出,并将该数据输出到 DATA指定的存储单元中,表中剩余数据依次上移一个位置, 每取一个数,实际填表数EC值自动减1。指令的梯形图和指令表格式如图4.96所示FIFOLIFOFILL_NHEU EHOEF ENOENENOTBL TATATBL DATApDATALFIFO TBL, DATALIFO TBLi DATAFILL巩 OUT. N图4-97后进先出指令图4-98存储器填充指图4-96先进先出指令令四、后进先出指令LIFO 后进先出指令是指当EN端口执行条件存在时,将表中的字型数据按照后进先出的
44、方式取出,并将该数据输出到 DATA指定的存储单元中,表中剩余数据位置保持不变,每 取一个数,实际填表数EC值自动减1。指令的梯形图和指令表格式如图4.97所示FIFO和LIFO指令影响的特殊存储器位:SM1.5表空4存储器填充指令FILL存储器填充指令是指用输入值IN填充从输出单元OUT开始的N个字的内容。N为1255。指令的梯形图和指令表格式如图4.98 所示程序控制类指令程序控制指令用于对程序的走向进行控制。可以控制程序的结束、分支、循环、子程 序或中断程序调用等。合理使用该类指令,可以优化程序结构,增强程序功能和灵活性。该类指令主要包括:结束指令、暂停指令、监视定时器复位指令、跳转与标
45、号指令、 循环指令、子程序调用等指令一、结束指令END和MEND结束指令分为有条件结束指令END和无条件结束指令MEND,指令的梯形图和指令表格式如图4.99 所示< STOP )STOP图4-99结束指令图4-100暂停指令指令使用说明:1END指令是指当执行条件成立时结束主程序,返回主程序的起点,且用在无条件结束指 令之前。2MEND指令那么是编程软件 STEP-Micro/WIN32在主程序结尾处自动加上的,标志主程序 的结束。3结束指令的功能是结束主程序,只能用于主程序中,不能在子程序和中断程序中使用。4有条件结束指令和无条件结束指令均为无操作数指令。二、暂停指令STOP暂停指令
46、是指当执行条件成立时使PLC的运行方式从RUN状态转为STOP状态,同时立即终止用户程序的执行。指令的梯形图和指令表格式如图4.100 所示指令使用说明:1STOP指令可以用在主程序、子程序和中断程序中。假设在中断程序中执行了STOP指令,那么立即终止该中断处理程序,并且忽略所有等待的中断,继续扫描程序的剩余局部,在本次扫描结束后,完成将PLC从RUN状态到STOP状态的切换。2STOP指令无操作数。三、跳转与标号指令JMP、LBL指令跳转与标号指令的梯形图和指令表格式如图4.101所示Y JMP )LBLJMP NLBL N跳转指令标号指令图4.101跳转与标号指令跳转指令JMP是指当条件满
47、足时,可使程序跳转到同一程序中N所指定的相应标号处。标号指令LBL,标记跳转目的地的位置N,由N来标记与哪个JMP指令对应。 指令操作数N为常数0255跳转指令是根据不同的逻辑条件,有选择地执行不同的程序。 利用跳转指令可以使 PLC编程的灵活性大大提高,减少扫描时间,从而加快了糸统的响应速度。跳转与标号指令指令应用如图4.102所示:叫3JMF )LDN 10.0JMF 33;LBLLBL 3图4.102跳转与标号指令的应用指令说明1 JMP和LBL指令必须成对应用于主程序、子程序或中断程序中。 不能在不同的程序块中相互跳转。 假设在步进程序中使用跳转指令,那么必须使JMP和LBL指令在同一
48、个 SCR段中。2 多条跳转指令可以对应于同一个标号,但一条跳转指令不能对应多个相同的标号, 即在程序中不能出现两个相同的标号。3执行跳转指令后,被跳过的程序段中各元件的状态如下。 各输出线圈保持跳转前的状态。 计数器C停止计数,当前值存储器保持跳转前的计数值。 分辨率为1ms、10ms的定时器保持跳转之前的工作状态,原来工作的继续工作,到设定值后可以正常动作,其当前值一直累计到32767才停止。分辨率为 100ms的定时器在跳转期间停止工作,但不会复位,当前值保持不变,跳转结束后,假设输入条件允许,可继续计时,但计时已不准确了。四、循环指令FOR、NEXT指令当需要重复执行相同功能的程序段时
49、,可采用循环程序结构。循环指令有两条:循环开 始指令FOR和循环结束指令 NEXT。这两条指令的梯形图和指令表格式如图4.103所示FOREK ENOIND葢INITJIKAL(KE2T )NEXTFOR IJDI, HIT, FINAL图4.103循环指令FOR、NEXT指令循环开始指令FOR的功能是标记循环程序的开始。循环结束指令NEXT的功能是标记循环程序的结束,无操作数。FOR和NEXT之间的程序局部称为循环体。FOR指令中INDX指定当前循环计数器,用于记录循环次数,INIT指定循环次数的初值,FINAL指定循环次数的终值。当使能输入有效时,开始执行循环体,当前循环计数器 从INIT
50、指定的初值开始,每执行 1次循环体,当前循环计数器值增加1,并且将结果同终值进行比拟,如果大于终值,循环结束。循环指令应用如图 4.104所示。该段程序的功能是,当I0.0接通时,外层循环执行 10次,当I0.1接通时,内层循环执行 5次。< NEXT )LDIO. 0FORVlOO+l, U0LDIO. 1F0RW200, +1, +5HEXTNEXT图4. 104循环指令应用指令的使用说明循环开始FOR和循环结束指令NEXT指令必须成对使用。当初值大于终值时,循环指令不被执行。每次使能输入有效时,指令自动复位各参数,同时将 INIT指定初值放入当前循环计数器 中,使循环指令可以重新执
51、行。循环指令可以循环嵌套,嵌套最多为8层,但各个循环指令之间不能交叉。五、子程序指令在程序设计中,可以把功能独立的,且需要屡次使用的程序段单独编写,设计成子程序的形式,供主程序调用。要使用子程序,首先要建立子程序,然后才能调用子程序。1建立子程序建立子程序是通过编程件来完成的。可用编程软件“编辑“菜单中的插入“子菜单下的子程序“命令,来建立一个新的子程序。默认的子程序名为SBR-N,编号N从0开始按顺序递增,范围为 063,也可以通过重命名命令为子程序改名。2. 子程序调用CALL 、子程序返回CRET指令指令梯形图与指令表格式如图4.105所示SBR_N( RIT )EN CRETC盘匚L
52、SER_N图4. 105子程序调用CALL 、子程序返回CRET指令子程序调用指令CALL 是指当EN端口执行条件存在时,主程序把程序控制权 交给子程序,转到子程序入口开始执行子程序。SBR-N是子程序名,表示子程序入口地址。子程序调用可以带参数,也可以不带参数。有条件子程序返回指令CRET 是指当逻辑条件成立时,结束子程序的执行,返回 主程序中的子程序调用处继续向下执行。每个子程序必须以无条件返回指令RET作为结束,编程软件STEP-Micro/WIN32为每个子程序自动参加无条件返回指令,不需要编程人员手工输入该指令。在中断程序和子程序中也可调用子程序,子程序的嵌套深度最多为8层,在子程序中不能调用自已。当一个子程序被调用时,系统会自动保存当前的堆栈数据,保存后再把栈顶值置
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑工程施工现场安全管理制度
- 投资咨询与顾问管理制度
- 幼儿园食堂采购制度
- 《常见的动物》讲义
- 学习压力-主题班会
- 人教部编版四年级语文上册第24课《延安我把你追寻》精美课件
- 2024年拉萨客运上岗证条件
- 2024年株洲公交车从业资格证考试
- 2024年孝感客运从业资格模拟考试
- 2024年湘西客运从业资格证考试题
- 5000吨每年聚丙烯酰胺工艺流程图
- DB64∕T 1754-2020 宁夏砖瓦用粘土矿产地质勘查技术规程
- PSUR模板仅供参考
- 火力发电企业作业活动风险分级管控清单(参考)
- 《锅炉水容积测试技术规范》团体标准
- 全国第四轮学科评估PPT幻灯片课件(PPT 24页)
- 子宫内膜息肉-PPT课件
- 桥梁施工各工序质量控制措施
- 保安队排班表
- 包头医学院新开课程申请表
- (精心整理)初中物理串联分压和并联分流精练
评论
0/150
提交评论