$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近似
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
全部0条评论
快来发表一下你的评论吧 !