发那科机器人lpos指令【完整版】

发那科机器人lpos指令【完整版】

发那科机器人的LPOS JPOS指令,挺实用的读取当前位置指令:

LPOS 为当前位置的直角坐标系值(X,Y,Z,W,P,R)

JPOS 为当前位置的关节坐标系值(J1,J2,J3,J4,J5,J6)

应用场景的话,可以是刚开始初始化的时候,也可以比如码垛的时候,没有具体的点位,可以直接读取当前位置,然后可以进行抬起等动作,也不会影响前后码垛点

示例:这是一个最简单的拧紧螺丝后旋松的码垛程序一部分(具体码垛操作见之前的文章有)

PALLETIZING-B_1  //——————码垛

J PAL_1[A_1] 30% FINE  //——————移动到接近点

J PAL_1[BTM] 30% FINE  //——————移动到堆叠点

DO[110] = ON  //——————打开拧紧工具

WAIT DI[109] = ON  //——————等待拧紧合格OK信号

PR[2] = LPOS  //——————读取当前位置以直角坐标系的形式保存到PR[2]的位置寄存器中

PR[3] = LPOS

PR[2,3] = PR[2,3] + R[3]  //——————更改当前坐标位置的基础上往上抬升R[3]的距离

L PR[2] 30% FINE  //——————移动到上方确认拧紧完成

L PR[3] 30% FINE  //——————移动到原位准备旋松

DO[111] = ON  //——————打开拧紧工具反转

J PAL_1[R_1] 30% FINE  //——————同时移动到逃离点

PALLETIZING-END_1  //——————码垛程序结束

扩展资料:

像西门子系统或发那科系统、马扎克系统,编制程序时,时常会使用一下变量,变量有全局变量、局部变量、通道变量、程序变量、系统变量等,其中全局变量为子程序编制,设备开关机均存在,系统变量为设备出厂时固有的变量,也是不变的,在程序编制的时候可以使用此类变量读取设备PLC内的数据,用于程序中参数的判断等,下面分享一下我曾经经常用到的发那科系统的系统变量:

1. #3000 报警变量

例: N65 #3000=1(G55 Z CHAO XIAN) 括号内是设备显示的信息

2. #5221 G54 坐标的X坐标值

3. #5222 G54 坐标的Y坐标值

4. #5223 G54 坐标的Z坐标值

5. #5241 G55 坐标的X坐标值

6. #5242 G55 坐标的Y坐标值

7. #5243 G55 坐标的Z坐标值 以此类推……

8. #2001 和 #2201 分别为当前刀具的刀长和刀补

9. #4111 当前刀具H代码

10. #4120 当前主轴刀具的T代码

11. #3101 圆周率π

12. #4000 主程序号

13. #参数,功用同西门子R参数,#1、#2、#3…… 其中,变量#500-#999的数据保存,即使断电也不丢失

以上参数,编一个刀长检测或者坐标检测程序就够用了,希望对初学编程的朋友有益,谢谢支持!

 

 

服务机械行业22年 - 专业权威积淀,品牌优势传承