我平时用DENSO机器人比较多,也用过epson、kawasaki、abb等。
前段时间玩了下安川机器人,感觉安川自己的指令太简单了,很多其他机器人的功能都没有(难道大家都是用motoplus开发的么?)
于是自己写了几个小功能:
1.APPROACH
功能是移动到指定P变量上方(工具负方向)指定距离的位置,movj的运动方式,该功能有2个变量:
第一个是参考点位的P变量
GETARG LP000 IARG#(1)
第二个是参考距离,单位是mm
GETARG LD000 IARG#(2)
2.DEPART
功能是从当前位置向上(工具负方向)移动指定距离,movl的运动方式,该功能有一个变量:参考距离,单位是mm
GETARG LD000 IARG#(1)
3.PALLET
功能是计算码垛点位,该功能有8个变量:
第一个是P变量的序号,计算得结果会储存至该P变量
GETARG LB000 IARG#(1)
第二个变量是码垛的当前序号
GETARG LI000 IARG#(2)
第三个是x轴方向的码垛数量
GETARG LB001 IARG#(3)
第四个是Y轴的码垛数量
GETARG LB002 IARG#(4)
第五个是z轴的码垛层数
GETARG LB003 IARG#(5)
第六个是x轴的码垛间距
GETARG LD000 IARG#(6)
第七个是y轴的码垛间距
GETARG LD001 IARG#(7)
第八个是z轴的码垛层高
GETARG LD002 IARG#(8)
4.PALLET2
上面PALLET需要码垛方向与世界坐标系方向一致,或者指定用户坐标系,然后写了这个pallet2,会将偏移变量存储至全局变量P001,也是8个参数:
第一个是码垛的当前序号
GETARG LI000 IARG#(1)
第二个是P0-P1的数量
GETARG LB001 IARG#(2)
第三个是P0-P2的数量
GETARG LB002 IARG#(3)
第四个是码垛层数
GETARG LB003 IARG#(4)
第五个是码垛的z轴层高
GETARG LD000 IARG#(5)
第六个是P0变量
GETARG LP001 IARG#(6)
第七个是P1变量
GETARG LP002 IARG#(7)
第八个是P2变量
GETARG LP003 IARG#(8)
5.RELMOVE
该功能参考abb的RELTOOL功能,是approach和depart功能的扩展。该功能5个参数:
第一个是需要移动目标点的参考位置P变量的序号
GETARG LP000 IARG#(1)
第二个变量是X轴的参考距离
GETARG LD000 IARG#(2)
第三个变量是Y轴的参考距离
GETARG LD001 IARG#(3)
第四个变量是Z轴的参考距离
GETARG LD002 IARG#(4)
第五个变量是运动方式,0表示movj,1表示movl
GETARG LB000 IARG#(5)