1.结束指令 (1)一级程序结束 一级程序主要处理急停、跳转、超程等紧急动作;不使用一级程序时,只编写END1命令 (2)二级程序结束 编写普通的顺序程序 2.定时器指令 (1)延时定时器:SUB3/TMR 延时定时器的延时时间取决于在定时器设定画面,设定的时间和精度。 说明: a、对于1-8号定时器,设定时间的单位为48ms,少于48ms将被舍弃; b、对于9-40号定时器,设定时间单位为8ms,余数都被忽略,如果设置38ms,余数为6,(38=8*4+6),其实设计设置的值为32ms。 c、定时器号不能重复,否则动作无法预料。 (2)固定延时定时器:SUB24/TMRB 固定延时定时器设定时间是固定的延时时间,在功能指令的参数中指定。 3.计数器指令 该计数器是进行加/减的环形计数器 CN0=0:从0开始计数; CN0=1:从1开始计数。 UPD=0:加计数; UPD=1:减计数。 复位:加计数根据设定复位为0或1,减计数复位为预置值 4.数据传送指令 把数据从指令的传出位置的首地址传送到到传入位置的首地址。 SUB43/MOVB:1字节数据传送 SUB44/MOVW:2字节数据传送 SUB47/MOVD:4字节数据传送 SUB45/MOVN:任意字节传送 5.上升沿输出及下降沿输出:SUB57/DIFU SUB58/DIFD 注意:前沿检测号与后沿检测号不能重复,否则无法正确检测。 6.互锁,联锁,自锁 互锁: 梯形图中,将Y0.0和Y0.1的常闭触点分别与对方的线圈串联,可以保证它们不会同时为ON,因此两个线圈不会同时通电; 按钮联锁:将反转起动按钮控制的X0.1的常闭触点与控制正转的Y0.0的线圈串联,将正转起动按钮控制的X0.0的常闭触点与控制反转的Y0.1的线圈串联。 7.逻辑与指令 SUB60/AND 该指令用于将指定的2种数据进行逻辑与运算,并输出。 R100: 1 1 1 0 0 0 1 1 0 1 0 1 0 1 0 1 (85) R102: 0 1 0 0 0 0 0 1 运算原则:同1则为1,其他都为0. 8.逻辑或指令 SUB61/OR 该指令用于指定的2种数据进行逻辑或运算,并输出。 R100: 1 1 1 0 0 0 1 1 0 1 0 1 0 1 0 1 (85) R102: 1 1 1 1 0 1 1 1 运算原则:有1则为1,同0则为0. 9.逻辑非指令 SUB62/NOT 该指令用于将指定地址中的数据进行逻辑非运算,并输出。 R100: 1 1 1 0 0 0 1 1 R102: 0 0 0 1 1 1 0 0 运算原则:对原地址取反。 10.BCD数据检索指令 SUB17/DSCH BCD数据检索指令仅适用于PMC的数据表,用于在数据表中检索指令的数据,并输出其表内号,如未找到指定数据,则输出W1为1. 当X0.0接通时,从D100开始在长度为5个单元的数据表中依次检索F18中存储的值,并将检索到的数据的表内号写入R100中。 运算结果: F18=17时,R100=2 注解:BCD码 用4位二进制数来表示1位十进制数中的0~9这10个数码。 BCD码可分为有权码和无权码两类:有权BCD码有8421码、2421码、5421码,其中8421码是最常用的; 8421 BCD码是最基本和最常用的BCD码,它和四位自然二进制码相似,各位的权值为8、4、2、1,故称为有权BCD码。和四位自然二进制码不同的是,它只选用了四位二进制码中前10组代码,即用0000~1001分别代表它所对应的十进制数,余下的六组代码不用。 11.BCD加法运算指令 SUB19/ADD 该指令用于两位或四位BCD数据的加法运算。 BYT=0:处理数据为两位BCD数据; BYT=1:处理数据为四位BCD数据; 加法运算格式=0:加数为常数; 加法运算格式=1:加数用地址指定; Y0.0:在加法运算中,当运算结果超出指定的数据长度时,为1. 12.二进制加法运算 SUB36/ADDB 13.BCD减法运算指令 SUB20/SUB 该指令用于两位或四位BCD数据的减法运算 BYT=0:处理数据为两位BCD数据; BYT=1:处理数据为四位BCD数据; 加法运算格式=0:减数为常数; 加法运算格式=1:减数用地址指定; Y0.0:在减法运算中,当运算结果超出指定的数据长度时,为1. 14.二进制常数定义指令 SUB40/NUMEB 该指令用于1、2、4字节二进制常数的定义。 数据长度:指定二进制常数的长度(1.2.4字节) 常数:用十进制指定常数 常数输出地址:定义二进制常数输出的首地址。 R100(12)= 0 0 0 0 1 1 0 0 15.BCD常数定义指令 SUB23/NUME 该指令用于两位或四位BCD常数的定义 BYT=0:处理数据为两位BCD数据; BYT=1:处理数据为四位BCD数据。 R100(12)= 0 0 0 1 0 0 1 0 16.调用子程序 (1) 条件调用 SUB65/CALL:条件X0.4接通时调用子程序P13 (2) 无条件调用 SUB66/CALLU 17.跳转指令 SUB68/JMPB 功能指令JMPB立即将控制转移至设置在梯形图程序中的 JMPB 12标号后的程序。 多条跳转指令可使用同一标号, 跳转指令可以嵌套 LBL 12 18.简单举例应用 编一个程序实现:长按2s按键X28.0,灯Y28.0打开,再按一下关。并且用一个加法统计总共开启了多少次。 程序如下: |
|
来自: 马话城 > 《FANUC原创文章》