本文旨在通过指令介绍及程序示例帮助读者了解和学习I/O指令、IF\SELECT指令、WAIT指令、JMP/LBL指令、CALL指令以及FOR\ENDFOR指令的使用方法及注意事项。 1.I/O指令 I/O指令是改变向外围设备输出信号状态,或读出输入信号状态的指令。 例如: 注意:I/O在使用前需要进行配置。 如何加入I/O(信号)指令? 1)编辑界面中,按F1【指令】(INST)键,显示图1画面: 2)选择I/O,按【ENTER】键确认,显示图2画面: 3)选择所需I/O指令,按【ENTER】键确认; 4)根据光标位置输入值或选择相应的项并输入值。 2.条件比较和条件选择指令 IF/SELECT 2.1条件比较指令 IF IF 条件满足,JMP LBL[i] / Call子程序 图3:IF指令支持的条件和计算 注意:IF指令可使用逻辑算符(AND、OR)连接条件,单条IF指令最多可连接5个条件,且“AND”和“OR”不能混合使用。 2.2条件选择指令 SELECT 如何加入IF/SELECT指令 1)编辑界面中,按F1【指令】(INST)键,显示图4画面: 2)选择【IF/SELECT】,按【ENTER】键确认,显示如图5: 3)选择所需项,按【ENTER】键确认; 4)根据光标位置输入值或选择相应的项并输入值。 3.待命指令 WAIT 可以在所指定的时间,或条件得到满足之前使程序执行待命。 图5:WAIT指令支持的条件和计算 注意: 1.可通过逻辑运算符“or”(或)和“and”(与)将多个条件组合起来,但“or”和“and”不能在同一语句中使用。 2.若程序中的条件不满足,则会一直处于等待状态。 若要解除等待状态,处理措施如下: 如需人工干预,可通过【FCTN】键,显示图6画面,选择7 【解除等待】(RELEASE WAIT)跳过等待语句,并在下个语句处等待。 图6:FCTN功能界面 使用等待超时跳转指令 $WAITTMOUT=n (单位:10msec) WAIT ……,TIMEOUT LBL[i] 等待超时,跳转至LBL[i] 4.跳转/标签指令 JMP/LBL 跳跃指令:转移到所指定的标签 标签指令:指定程序转移目的地的指令。 如何加入JMP/LBL指令 1)编辑界面中,按F1【指令】(INST)键,显示图7画面: 2)选择【JMP/ LBL】,按【ENTER】键确认,显示图8画面: 3)选择所需要项,按【ENTER】键确认,并输入相应的标签号; 5.程序调用指令 CALL 使当前执行的程序转移到其它程序(子程序)。 注意:被调用的程序执行结束时,自动返回主程序调用指令后一行。 Call (Program) Program :程序名 程序调用指令除了能调用程序外,也可以调用【结束】(END) 结束指令用来结束程序的执行。 如何加入CALL指令 1)编辑界面中,按F1【指令】(INST)键,显示图9画面: 2)选择【调用】(CALL),按【ENTER】键确认,显示图10画面: 3)选择【调用程序/结束】(CALL program / END),按【ENTER】确认。 6.循环指令 FOR/END FOR 使用该指令来包围需要循环的区间,指定循环的次数。 FOR R[i] = (value) TO (value) FOR R[i] = (value) DOWNTO (value) Value: R[i]或Constant,范围从-32767到32766的整数 如何加入FOR/ENDFOR指令 1)编辑界面中,按F1【指令】(INST)键,显示图11画面: 2)选择【FOR/ENDFOR】,按【ENTER】键确认,显示图12画面: 3)选择所需要项,按【ENTER】键确认; 4)根据光标位置输入值或选择相应的项并输入值。 7.程序示例 程序作用: 1)机器人从HOME位置出发,拾取不同形状工件进行分装; 2)若机器人初始位置不在HOME点,则不进行分装工作,仅指定机器人返回至HOME位置。 寄存器说明: 1)R[1]值表示不同形状的工件; 圆形工件:R[1]=1; 正方形工件:R[1]=2; 三角形工件:R[1]=3; 2)可通过外围设备识别工件形状后,以数值形式发送给机器人的寄存器R[1]。 |
|
来自: 阿明哥哥资料区 > 《82.发那科机器人.机床》