1.指令与功能
RAPID 程序中的程序点位置不仅可利用前述的程序偏移生效、设定指令来进行整体调整,而且还可利用位置偏置、工具偏置、程序点镜像等 RAPID 函数命令来改变指定程序点的位置。
在 RAPID 程序中,位置偏置函数命令可用来改变指定程序点(robtarget 数据)的XYZ位置数据项 pos,但不改变工具姿态数据项 orient;工具偏置函数命令可改变指定程序点的工具姿态(工具坐标系原点、方向),但不改变XYZ位置(数据 pos);镜像函数命令可将指定程序点转换为XZ平面或YZ平面的对称点。
RAPID 位置、工具偏置及镜像函数命令的名称与编程格式见表 3.6-3。
2.位置偏置函数
位置偏置函数命令 Offs 可改变程序点 TCP 位置数据 robtarget 中的XYZ位置数据 pos,偏移程序点的X、Y、Z坐标值,但不能用于工具姿态的调整;命令的执行结果同样为 TCP 位置型数据 robtarget。函数命令的编程格式及命令参数要求如下。
Offs ( Point, XOffset, YOffset, ZOffset )
Point:需要偏置的程序点名称,数据类型 robtarget。
XOffset、YOffset、ZOffset:X、Y、Z坐标偏移量,数据类型 num,单位为 mm。
位置偏置函数命令 Offs 可用来改变指定程序点的XYZ坐标值、定义新程序点或直接替代移动指令程序点,命令的编程实例如下。
p1 := Offs (p1, 0, 0, 100) ; // 改变程序点坐标值
p2 := Offs (p1, 50, 100, 150) ; // 定义新程序点
Move L Offs(p2, 0, 0, 10), v1000, z50, tool1 ; // 替代移动指令程序点
……
位置偏置函数命令 Offs 结合子程序调用功能使用,可用来实现不需要调整工具姿态的分区作业(如搬运、码垛等),以简化编程和操作。例如,对于图 3.6-10 所示的机器人搬运作业,如使用如下子程序 PROC pallet,只要在主程序中改变列号参数 cun、行号参数 row 和间距参数 dist,系统便可利用位置偏置函数命令 Offs,自动计算偏移量、调整目标位置 ptpos 的X、Y坐标值;并将机器人定位到目标点,从而简化作业程序。
!***********************************************************
PROC pallet (num cun, num row, num dist, PERS tooldata tool, PERS wobjdata wobj )
VAR robtarget ptpos:=[[0, 0, 0], [1, 0, 0, 0], [0, 0, 0, 0],[9E9, 9E9, 9E9, 9E9, 9E9, 9E9]] ;
ptpos := Offs (ptpos, cun*dist, row*dist , 0 ) ;
Move L ptpos, v100, fine, tool\WObj:=wobj ;
ENDPROC
!*********************************************************
3.工具偏置函数
工具偏置函数命令 Rel Tool 可用来调整程序点的工具姿态,包括工具坐标原点的XYZ坐标值及工具坐标系方向,命令的执行结果同样为 TCP 位置型数据 robtarget。函数命令的编程格式及命令参数要求如下。
Rel Tool ( Point, Dx, Dy, Dz [\Rx] [\Ry] [\Rz] )
Point:需要工具偏置的程序点名称,数据类型 robtarget。
Dx、Dy、Dz:工具坐标原点的XYZ偏移量,数据类型 num,单位为 mm。
\Rx、\Ry、\Rz:工具坐标系方向,即工具绕X、Y、Z轴旋转的角度,数据类型 num,单位为 °。当添加项\Rx、\Ry、\Rz 同时指定时,工具坐标系方向按绕X、绕Y、绕Z轴依次回转。
工具偏置函数命令 Rel Tool 可用来改变指定程序点的工具姿态、定义新程序点或直接替代移动指令程序点,命令的编程实例如下。
p1 := Rel Tool (p1, 0, 0, 100 \Rx:=30) ; // 改变程序点工具姿态
p2 := Rel Tool (p1, 50, 100, 150 \Rx:=30 \Ry:= 45) ; // 定义新程序点
Move L Rel Tool (p2, 0, 0, 100 \Rz:=90), v1000, z50, tool1 ;// 替代移动指令程序点
……
4.程序点镜像函数
镜像函数命令 Mir Pos 可将指定程序点转换为XZ平面或YZ平面的对称点,以实现机器人的对称作业功能。例如,对于图 3.6-11 所示的作业,如果原程序的运动轨迹为 P0→P1→P2→P0,若生效XZ平面对称的镜像功能,则机器人的运动轨迹可转换成 P0'→P1'→P2'→P0'。
RAPID 镜像函数命令 MirPos 的编程格式及命令参数要求如下。
Mir Pos (Point, Mir Plane [\WObj] [\Mir Y])
Point:需要进行镜像转换的程序点名称,数据类型 robtarget。如程序点为工件坐标系位置,则其工件坐标系名称由添加项\WObj 指定。
MirPlane:用来实现镜像变换的工件坐标系名称,数据类型 wobjdata。
\WObj:程序点 Point 所使用的工件坐标系名称,数据类型 wobjdata。不使用添加项时为大地坐标系或机器人基座坐标系数据。
\MirY:XZ平面对称,数据类型 switch。不使用添加项时为YZ平面对称。
机器人的镜像转换一般在工件坐标系上进行,基座坐标系、工具坐标系的镜像受结构限制。例如,在机器人基座坐标系上进行镜像转换时,由于坐标系的Z原点位于机器人安装底平面,故不能实现XY平面对称作业;如进行YZ平面对称作业,则机器人必须增加腰回转动作等。此外,由于机器人的工具坐标系原点位于手腕工具安装法兰基准面上,由于程序转换不能改变工具安装,因而一般也不能使用工具坐标镜像功能。
镜像函数命令 Mir Pos 一般用来定义新程序点或直接替代移动指令程序点,命令的编程实例如下。
PERS wobjdata mirror := [……] ; // 定义镜像转换坐标系
p2 := Mir Pos(p1, mirror) ; // 定义新程序点
Move L Rel Tool Mir Pos(p1, mirror), v1000, z50, tool1 ; // 替代移动指令程序点
了解更多库卡机器人知识欢迎点击咨询:库卡机器人集成
- 下一篇:库卡机器人如何编辑程序等待指令
- 上一篇:库卡机器人集成|如何编辑程序偏移与设定指令