1、输入继电器H:十六进制整数Y:输出继电器KnX:输入继电器X的位指定M:辅助继电器KnY:输出继电器Y的位指定S:状态继电器KnS:状态继电器S的位指定T:定时器T的当前值C:计数器C的当前值D:数据寄存器V、Z:变址寄存器2 指令执行形式有连续执行和脉冲执行两种。3 位软元件 处理断开和闭合状态的元件为位软元件;字软元件 处理数据的元件称字软元件。由位软元件组合起来也可以构成字软元件,进行数据处理;每4个位软元件为一组,组合成一个单元,位软元件的组合由Kn(n在1至7之间)加首元件来表示。如KnY 、KnX等,K1Y0表示由Y0、Y1、Y2 、Y3组成的4位字软元件;K4M0表示由M0M15
2、组成的十六位字软元件。变址寄存器都是十六位数据寄存器。表示时如果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
3、 +程序举例:2 比较指令CMP(FNC10)、区间比较指令 ZCP(FNC11)S1.S2.S.D.10CMP将源操作软元件S1与S2的内容比较X、Y、 M、 S、 T、C、D、V、Z11ZCPS与S1、S2区间比较3 BCD(FNC18)转换指令、二进制转换指令BIN(FNC19)P 18BCD将源操作软元件的二进制数据转换成BCD码传送到指定的目标操作元件中KnX、KnY、 KnM、 KnS、 T、C、D、V、Z19BIN将源操作元件的BCD码转换成二进制数据传送到指定的目标操作元件中程序举例1:接线形式如下图:四则运算(- x )与增量指令、减量指令等编程控制器内的运算都用 BIN 码
4、进行。因此可编程控制器获取 BCD 的数字开关信息时要使用 FNC19 ( BCD BIN )转换传送指令。另外向 BCD 的七段显示器输出时请使用 FNC18 ( BIN BCD )转换传送指令。但是 一些特殊指令能自动地进行 BCD / BIN 转换。指令说明1:1)使用 BCD、BCD()指令时,如 BCD 转换结果超出9999范围会出错。2)当使用(D)BCD 、(D) BCDP指令时,如 BCD转换结果超出0 99999999 范围会出错 。3)将可编程序控制器内的二制数据变为七段显示等的 BCD 码而向外部输出时使用该指令。程序举例2:指令说明2:1) 可编程控序制器获取 BCD
5、数字开关的设定值时使用。2) 源数据不是 BCD 码时,会发生M8067 (运算错误), M8068(运算错误锁存)将不工作。3) 因为常数K自动地转换成二进制数,所以不成为这个指令适用软元件。二、 程序流程控制指令1 条件跳转指令CJ 格式:操作软件:P0P63共64个。作为执行序列的一部分指令,有CJ、CJP 指令,可以缩短运算周期及使用双线圈。在左图的示例中,如果 X0 ON ,则从 1 步跳转到 标记 P8 的后一步。 X0 = OFF时,不进行跳转,从 0 步向 4 步移动,不执行跳转指令。Y1 变成双线圈,但是, X0 = OFF 时采用 Xl 。 x000 = ON 时采用 X1
6、2 动作。因条件跳转,即使是分段的程序,在跳转内或跳转外将同一线圈编成2 个以上程序时,也当作一般的双线圈对待。累计定时器及计数器的复位指令在跳转外时,计时线圈及跳转的计数线圈复位(接点恢复及当前值的清除)有效。指令说明:1) 如举例程序中X0=ON时跳转到程序P8称为有条件转移,而如下程序则为无条件跳转。2)一个标号只能出现一次,多于一次则会出错;两条或多条跳转指令可以使用同一标号,如上格式例。3)如左图,编程时标号占一行,对有意为向END 步跳转的指针 P63 编程时,请不要对标记 P63 编程,给标记 P63 编程时,可编程控制器显示出错码6507 (标记定义不正确)并停止。应用举例:在
7、工业控制当中经常采用手动和自动两种方式以确保生产控制的安全性和连续性。子程序调用指令CALL、子程序返回指令SRET、主程序结束指令FEND。程序格式:如果 X000 = ON,则执行调用指令跳转到标记 P10 步。在这里,执行子程序后,通过执行SRET 指令返回原来的步即CALL指令之后的步 。操作软元件 :CALL PO P62SRET、FEND无操作软元件X001=OFF 到ON 后,只执行 CALLP Pll 指令 l 次后向标记 Pll 跳转,即脉冲形式。在执行 Pll 的子程序的过程中,如果执行 P12 的调用指令,则执行P12 的子程序、用 SRET 指令向 Pll 的子程序跳转
8、。第一个SRET返回主程序,第二个SRET返回第一个子程序。这样,在子程序内最多可以允许有 4 次调用指令,整体而言可做 5 层嵌套。应用子程序调用指令,可以优化程序结构,提高编写程序的效果。如下实例:当X1为OFF、X0为ON时,调用P0子程序;若X0为OFF时,调用P1子程序;当X1为ON时,不能调用P0、P1子程序,而调用P2子程序。3.监视定时器刷新指令WDTWDT指令是在PLC顺序执行程序中,进行监视定时器刷新的指令。WDT(P)为连续/脉冲执行型指令。无操作软元件。4.循环指令FOR、NEXT指令说明只在 FOR 到 NEXT 指令之间的处理(利用源数据指定的次数)执行几次后,才处
9、理 NEXT 指令以后的步。n=132,767 时有效,在指定了32,7670 时,被当作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 次。总计被执行了 4 x 6 x 7 = 168 次,这样一共可以嵌套 5 层.循环次数多时扫描周期会延长
10、,有可能出现监视定时器错误,请务必注意。NEXT 指令在 FOR 指令之前或FOR 指令与 NEXT 或无NEXT 指令,或在 FEND , END 指令以后有 NEXT 指令的个数不一致时等等,都会出错。操作软元件:K、H、KnH、KnY、KnM、KnS、T、C、D、V、Z;NEXT无操作软元件。三、 四则运算指令1 加法指令功能:加法指令时将指定的源操作软元件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)的结
11、果存入(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的二进制数相乘,结果送到指定的目标操作
12、软元件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) 脉冲执行型只在脉冲信号时执行一次。四、 移位指令 功能:两条指令是使位软元件中的状态向右/向左移位,n1指定位软元件长度,n2指定移位的位数。五、 数据处理: 批复位指令ZRST区间批复位。六、 状态初始化指定区S.运行模式起始输入:X020 :手动操作 X021 :原点回归 X022 :单步 X23 :循环运行一次(单周期) X024 :连续运行 X025 :原点回归开始 XO26 :自动运行启动 X027 :停止D1指定自动操作模式中,实际用到状态的最小序号。D2 指定自动操作模式中,实用状态的最大序号。如果驱动该指令,下列元件被自动切换控制。但是如果驱动输入处于 OFF 状态,则不变化。 M8040 :转移禁
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1