可编程序控制器应用指令

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1/17第五章可编程序控制器应用指令本章论述可编程序控制器常用的应用指令的表示方法和规则。在使用应用指令时,需要了解指令的有关软元件的处理及其执行形式。在基本逻辑指令的基础上,PLC制造厂家开发了一系列完成不同功能的子程序,调用这些子程序的指令称为应用指令。FX系列PLC的应用指令可分为程序控制、传送与比较、算术与逻辑运算、移位与循环等。第一节应用指令的基础知识一、应用指令的基本格式1.应用指令有三部分组成:功能编号FNC---,助记符,操作数。2.梯形图形式:、。3.梯形图输入同一个应用指令:、。4.应用指令的含义二、应用指令的规则1.应用指令操作数(软元件)的含义如表:字软元件位软元件K:十进制整数X:输入继电器H:十六进制整数Y:输出继电器KnX:输入继电器X的位指定M:辅助继电器KnY:输出继电器Y的位指定S:状态继电器KnS:状态继电器S的位指定T:定时器T的当前值C:计数器C的当前值D:数据寄存器V、Z:变址寄存器2.指令执行形式有连续执行和脉冲执行两种。3.位软元件处理断开和闭合状态的元件为位软元件;2/17字软元件处理数据的元件称字软元件。由位软元件组合起来也可以构成字软元件,进行数据处理;每4个位软元件为一组,组合成一个单元,位软元件的组合由Kn(n在1至7之间)加首元件来表示。如KnY、KnX等,K1Y0表示由Y0、Y1、Y2、Y3组成的4位字软元件;K4M0表示由M0——M15组成的十六位字软元件。变址寄存器都是十六位数据寄存器。表示时如果V=5,Z=10,则D5V=D10(5+5=10),D5Z=D15(5+10=15)。32位指令中V、Z是自动组对使用,V作为高16位,Z作为低16位,使用时只需编写Z。第二节应用指令及其应用应用指令分为程序流程控制、传送与比较、数据处理等,在这节里我们对常用应用指令作一简单介绍。一、传送与比较指令1.MOV指令功能编号助记符功能操作软元件D连续执行P脉冲执行SD12MOV将源操作元件的数据传送到指定的目标操作元件K、H、KnX、KnY、KnM、KnS、T、C、D、V、ZKnY、KnM、KnS、T、C、D、V、Z++程序举例:2.比较指令CMP(FNC10)、区间比较指令ZCP(FNC11)功能编号助记符功能操作软元件S1.S2.S.D.10CMP将源操作软元件S1与S2的内容比较K、H、KnX、KnY、KnM、KnS、T、C、D、V、ZX、Y、M、S、T、C、D、V、Z11ZCPS与S1、S2区间比较程序举例:3/173.BCD(FNC18)转换指令、二进制转换指令BIN(FNC19)功能编号助记符功能操作软元件DPSD18BCD将源操作软元件的二进制数据转换成BCD码传送到指定的目标操作元件中KnX、KnY、KnM、KnS、T、C、D、V、ZKnY、KnM、KnS、T、C、D、V、Z++19BIN将源操作元件的BCD码转换成二进制数据传送到指定的目标操作元件中KnX、KnY、KnM、KnS、T、C、D、V、ZKnY、KnM、KnS、T、C、D、V、Z++程序举例1:接线形式如下图:四则运算(+-x÷)与增量指令、减量指令等编程控制器内的运算都用BIN码进行。因此可编程控制器获取BCD的数字开关信息时要使用FNC19(BCD—BIN)转换传送指令。另外向BCD的七段显示器输出时请使用FNC18(BIN—BCD)转换传送指令。但是一些特殊指令能自动地进行BCD/BIN转换。指令说明1:1)使用BCD、BCD(P)指令时,如BCD转换结果超出0—9999范围会出错。2)当使用(D)BCD、(D)BCDP指令时,如BCD转换结果超出0—99999999范围会出错。4/173)将可编程序控制器内的二制数据变为七段显示等的BCD码而向外部输出时使用该指令。程序举例2:指令说明2:1)可编程控序制器获取BCD数字开关的设定值时使用。2)源数据不是BCD码时,会发生M8067(运算错误),M8068(运算错误锁存)将不工作。3)因为常数K自动地转换成二进制数,所以不成为这个指令适用软元件。二、程序流程控制指令功能编号功能助记符指令名称及功能00CJ条件跳转,程序跳到P指针指定处,P63为END01CALL子程序调用,指定P指针,可嵌套5层以下02SRET子程序返回,从子程序返回,与CALL配对06FEND主程序结束07WDT定时器刷新08FOR重复循环开始,可嵌套5层09NEXT重复循环结束1.条件跳转指令CJ格式:5/17操作软件:P0~~P63共64个。程序举例:作为执行序列的一部分指令,有CJ、CJP指令,可以缩短运算周期及使用双线圈。在左图的示例中,如果X0ON,则从1步跳转到标记P8的后一步。X0=OFF时,不进行跳转,从0步向4步移动,不执行跳转指令。Y1变成双线圈,但是,X0=OFF时采用Xl。x000=ON时采用X12动作。因条件跳转,即使是分段的程序,在跳转内或跳转外将同一线圈编成2个以上程序时,也当作一般的双线圈对待。累计定时器及计数器的复位指令在跳转外时,计时线圈及跳转的计数线圈复位(接点恢复及当前值的清除)有效。指令说明:1)如举例程序中X0=ON时跳转到程序P8称为有条件转移,而如下程序则为无条件跳转。2)一个标号只能出现一次,多于一次则会出错;两条或多条跳转指令可以使用同一标号,如上格式例。6/173)如左图,编程时标号占一行,对有意为向END步跳转的指针P63编程时,请不要对标记P63编程,给标记P63编程时,可编程控制器显示出错码6507(标记定义不正确)并停止。应用举例:在工业控制当中经常采用手动和自动两种方式以确保生产控制的安全性和连续性。2.子程序调用指令CALL、子程序返回指令SRET、主程序结束指令FEND。程序格式:如果X000=ON,则执行调用指令跳转到标记P10步。在这里,执行子程序后,通过执行SRET指令返回原来的步即CALL指令之后的步。操作软元件:CALLPO—P62SRET、FEND无操作软元件X001=OFF到ON后,只执行CALLPPll指令l次后向标记Pll跳转,即脉冲形式。在执行Pll的子程序的过程中,如果执行P12的调用指令,则执行P12的子程序、用SRET指令向Pll的子程序跳转。7/17第一个SRET返回主程序,第二个SRET返回第一个子程序。这样,在子程序内最多可以允许有4次调用指令,整体而言可做5层嵌套。应用举例:应用子程序调用指令,可以优化程序结构,提高编写程序的效果。如下实例:当X1为OFF、X0为ON时,调用P0子程序;若X0为OFF时,调用P1子程序;当X1为ON时,不能调用P0、P1子程序,而调用P2子程序。3.监视定时器刷新指令WDTWDT指令是在PLC顺序执行程序中,进行监视定时器刷新的指令。WDT(P)为连续/脉冲执行型指令。无操作软元件。8/174.循环指令FOR、NEXT指令说明只在FOR到NEXT指令之间的处理(利用源数据指定的次数)执行几次后,才处理NEXT指令以后的步。n=1~32,767时有效,在指定了–32,767~0时,被当作n=l处理。[C]的程序执行4次后向NEXT指令(3)以后的程序转移。若在[C]的程序执行一次的过程中,数据寄存器D0Z的内容为6,则[B]的程序执行6次。因此[B]的程序合计一共被执行了24次。若不想执行FOR~NEXT间的程序时,利用CJ指令,使之跳转。(X10=ON)当x10为OFF时,例如,KlX000的内容为7,则在[B]的程序执行一次的过程中,[A]被执行了7次。总计被执行了4x6x7=168次,这样一共可以嵌套5层.循环次数多时扫描周期会延长,有可能出现监视定时器错误,请务必注意。NEXT指令在FOR指令之前或FOR指令与NEXT或无NEXT指令,或在FEND,END指令以后有NEXT指令的个数不一致时等等,都会出错。操作软元件:K、H、KnH、KnY、KnM、KnS、T、C、D、V、Z;NEXT无操作软元件。三、四则运算指令9/17功能编号助记符指令名称及功能DP20ADD二进制加法指令OO21SUB二进制减法指令OO22MUL二进制乘法指令OO23DIV二进制除法指令OO24INC加1指令OO25DEC减1指令OO1.加法指令功能:加法指令时将指定的源操作软元件[S1]、[S2]中二进制数相加,结果送到指定的目标操作软元件[D]中。格式:指令说明:1)操作软元件:[S]K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z[D]KnY、KnM、KnS、T、C、D、V、Z2)当执行条件满足时,(S1)+(S2)的结果存入(D)中,运算为代数运算。3)加法指令操作时影响三个常用标志,即M8020零标志、M8021借位标志、M8022进位标志。运算结果为零则M8020置1,超过32767进位标志M8022置1,小于-32767则借位标志M8021置1。(以上都为16位时)2.减法指令功能:减法指令是将指定的操作软元件[S1]、[S2]中的二进制数相减,结果送到指定的目标操作软元件[D]中。格式:指令说明:1)操作软元件也和加法指令一样。2)当执行条件满足时,(S1)-(S2)的结果存入(D)中,运算为代数运算。3)各种标志的动作和加法指令一样。3.乘法指令功能:乘法指令是将指定的源操作软元件[S1]、[S2]的二进制数相乘,结果送到指定的目标操作软10/17元件[D]中。格式:指令说明:1)操作软元件同减法指令一样。2)[S1]*[S2]存入[D]中,即[D0]*[D2]结果存入[D5][D4]中。3)最高位为符号位,0正1负。4.除法指令功能:除法指令是将源操作软元件[S1]、[S2]中的二进制数相除,[S1]为被除数,[S2]为除数,商送到指定的目标操作软元件[D]中。指令说明:1)格式如上。2)操作软元件通加法指令。5.加1指令/减1指令功能:目标操作软元件[D]中的结果加1/目标操作软元件[D]中的结果减1。格式:指令说明:1)若用连续指令时,每个扫描周期都执行,须注意。2)脉冲执行型只在脉冲信号时执行一次。四、移位指令[S.][D.]n1n234SFTR(p)位右移35SFTL(p)位左移K、Hn2=n1=1024X、Y、M、SY、M、S功能编号助记符指令名称及功能操作软元件功能:两条指令是使位软元件中的状态向右/向左移位,n1指定位软元件长度,n2指定移位的位数。格式:11/17五、数据处理:批复位指令ZRST[D1.][D2.]40ZRST操作软元件功能编号助记符Y、M、S、T、C、D(D1〈=D2)功能:区间批复位。格式:六、状态初始化操作软元件:格式:指定区[S.]运行模式起始输入:X020:手动操作X021:原点回归X022:单步X23:循环运行一次(单周期)X024:连续运行X025:原点回归开始XO26:自动运行启动X027:停止[D1]指定自动操作模式中,实际用到状态的最小序号。[D2]指定自动操作模式中,实用状态的最大序号。如果驱动该指令,下列元件被自动切换控制。但是如果驱动输入处于OFF状态,则不变化。M8040:转移禁止S0:手动操作的初始状态M8041:转移开始S1:原点回归的初始状态M8042:启动脉冲S2:自动运行的初始状态12/17M8047:STL监控有效.如使用这个指令,则S10一S19可作为原点回归用。因此,在编程中请勿将这些状态作为普通状态使用。另外,S0一S9作为初始状态处理,S0一S2作为如上述的手动操作,原点回归以及自动运行使用。关于S3一S9可以自由地使用。这个指令必须比状态S0一S2等一系列的STL电路优先编程。为了防止上例的x20一X24同时处于ON状态,必须用旋转开关。原点回归完成(M8043)未动作时,如果在各个(X20),原点回归(X21),自动(X22、X23、X24)之间进行切换时,则所有输出进入OFF状态。并且,自动运行在原点回归结束后,才可以再次驱动。机械手工件传送例:13/1714/17指令语句表:第三节指令应用应用指令的例程程序编写,也因为应

1 / 17
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功