KUKA E6POS结构类型的变量定义

描述

$POS_ACT

当前笛卡尔机器人位置

E6POS结构类型的变量定义了TCP相对于BASE坐标系的设定点位置。

 X、Y、Z:原点沿轴的偏移,单位为[mm]

 A、B、C:轴角度的旋转偏移,单位为[°]

变量是写保护的。在机器人程序中,变量触发提前运行停止。

 $POS_ACT_MES

测量的笛卡尔机器人位置

E6POS结构类型的变量定义了TCP相对于BASE坐标系的实际位置。

 X、Y、Z:原点沿轴的偏移,单位为[mm]

 A、B、C:轴角度的旋转偏移,单位为[°]

例子1:

 piece_found = $POS_ACT_MES

机器人的当前位置现在就是工件的位置。在此将其保存到一个变量中

例子2:

用该指令将工具逆着冲击方向拉回 100 mm,这不取决于机器人现在位于哪个位置上

LIN  $POS_ACT : {x -100, y 0, z 0, a 0, b 0, c 0}

前提是冲击方向在 X 方向上。

$POS_ACT 是结构类型 E6POS 的系统变量,含有当前的笛卡尔机器人位置。

$POS_BACK,$POS_F OR–P2近似

TCP

1单块

2中间块

3后续块

$POS_BACK当前运动块的笛卡尔起始位置

E6POS结构类型的变量定义了TCP相对于BASE坐标系的起始位置。

 X、Y、Z:原点沿轴的偏移,单位为[mm]

 A、B、C:轴角度的旋转偏移,单位为[°]

$POS_BACK可用于返回到中断的动作指令的起始位置$POS_BACK对应于用于近似窗口内的中断的窗口的开始,并且对应于用于在近似窗口之后的中断的窗的结束$POS_BACK触发KRL程序中的提前运行停止。

近似PTP运动

PTP P1

PTP P2 C_PTP

PTP P3

 $POS_FOR 当前运动块的笛卡尔目标位置

E6POS结构类型的变量定义了TCP相对于BASE坐标系的目标位置。

 X、Y、Z:原点沿轴的偏移,单位为[mm]

 A、B、C:轴角度的旋转偏移,单位为[°]

$POS_FOR可用于移动到中断的运动指令的目标位置$POS_FOR对应于近似窗口内的中断的窗口的结束,并且对应于近似窗之前的中断的窗的开始$POS_FOR触发KRL程序中的提前运行停止。

 $POS_INT发生中断时的笛卡尔机器人位置

E6POS结构类型的变量定义了中断时TCP相对于BASE坐标系的位置。

 X、Y、Z:原点沿轴的偏移,单位为[mm]

 A、B、C:轴角度的旋转偏移,单位为[°]

$POS_INT可用于返回到触发中断的笛卡尔位置。该变量仅在中断程序中允许,并触发提前运行停止。

 $POS_RET 离开路径时的笛卡尔机器人位置

E6POS结构类型的变量定义了TCP在编程路径离开时相对于BASE坐标系的位置。

 X、Y、Z:原点沿轴的偏移,单位为[mm]

 A、B、C:轴角度的旋转偏移,单位为[°]

当机器人静止时,可以使用$POS_RET返回到留下路径的笛卡尔位置。

示例 :

在编程设定的轨迹上有两个物品,其位置通过两个连接在输入端 6 和 7 上的传感器识别。然后要接近这两个已识别到的位置。

为此,将两个已识别到的位置保存为点 P_1 和 P_2。在主程序的第二个部分接近这些点。

如果机器人控制系统识别到用 INTERRUPT … DECL … WHEN … DO … 定义的事件,则始终在系统变量 $AXIS_INT  (与轴相关)和 $POS_INT  (笛卡尔)中保存当前的机器人位置。

主程序:

局部中断程序 1:

DEF PROG()

... 

INTERRUPT DECL 10 WHEN $IN[6]==TRUE DO UP1() 

INTERRUPT DECL 20 WHEN $IN[7]==TRUE DO UP2() 

... 

INTERRUPT ON

LIN START 

LIN END 

INTERRUPT OFF 

LIN P_1

LIN P_2 

... 

END

局部中断程序 2:

DEF UP1()

P_1=$POS_INT 

END

DEF UP2()

P_2=$POS_INT 

END

示例 2

在碰撞识别时要求快速和可靠地停止机器人。为此,用 BRAKE F 声明中断。

如果超出轴 A1 上的正转矩 1500 Nm,则中断立即开始 BRAKE F 并调用子程序 STOP_FAST()。如果机器人停止,则沿工具方向 X 移动 -10 mm 返回至笛卡尔位置 $POS_INT。$POS_INT 是触发了中断的位置。

DEF PROG()

...

INTERRUPT WITH BRAKE F DECL 25 WHEN $TORQUE_AXIS_ACT[1]>1500 DO 

STOP_FAST()

INTERRUPT ON 25

...

END

...

DEF STOP_FAST()

BRAKE F

PTP $POS_INT:{x -10}

...

END

示例 3

按照硬件,在涂胶期间进行不沿轨迹的紧急停止。通过程序停止涂胶并在许用(通过输入端 10)之后将涂胶枪反向定位到轨迹上。

DEF PROG()

... 

INTERRUPT DECL 1 WHEN $STOPMESS DO STOP_PROG()

LIN P_1

INTERRUPT ON

LIN P_2

INTERRUPT OFF

...

END

DEF STOP_PROG()

BRAKE F

GLUE=FALSE

WAIT FOR $IN[10]

LIN $POS_RET

GLUE=TRUE

END

  
      审核编辑:彭静
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分