功能 INVERSE 从一个笛卡尔位置用附加轴角度计算合适的机器人轴角度。在
此不必为笛卡尔位置指定状态和转角值。
功能 INVERSE 可例如用于以 PTP 接近在卸码垛时计算所得的点。用该功能可以检查转角值的有效性并在需要时在目标点上进行调整。
正确地考虑到机器人运动系统形式的和用作基坐标运动系统的附加轴。
该功能可通过 SHOWVAR 命令或 SETVAR 命令和在 KRL 程序中调用该功能。
result = INVERSE (position , start_axis , err_status )
结果 |
类型:E6AXIS 返回值的变量 传递的位置上轴角 |
位置 |
类型:E6POS 传递方式:IN 参数 基于基坐标系的笛卡尔位置 (必要时带附加轴角度)为该位置计算机器人轴角度 |
start_axis |
类型:E6AXIS 传递方式:IN 参数 运动起点上的机器人轴角 |
err_status |
类型:INT 传递方式:OUT 参数 设置是否要在软件限位开关上检查传递的轴角度 (start_axis)。 0:检查所有轴角度。如果它们不在软件限位开关的极限之内,则 err_status 返还一个错误代码。 <>0:不检查轴角度。 在任何情况下,都要在软件限位开关上检查计算所得的轴角度 (result) |
在以下情况下,需要起点 start_axis :
1.目标点没有状态值。
通过系统变量 $TARGET_STATUS 定义目标点应得到哪个状态值:
$TARGET_STATUS=#SOURCE该目标点将得到与起点一样的状态。从点 start_axis 的轴角度中计算状态。
2.$TARGET_STATUS=#BEST
目标点将得到机器人在轴空间中必须尽量短地从起点至目标点时的状态。
3.目标点没有转角值。
为每个轴计算允许的、目标点可通过它拥有至起点的最短路径的转角值。
在此,允许表示在软件限位开关之内。
4.目标点在奇点附近。
必须预定轴角度并且计算取决于此的值。通过系统变量
$SINGUL_POS[1...3] 设置目标点应得到哪个角度:
$SINGUL_POS[1...3]=0:轴的角度被确定为 0 度。
$SINGUL_POS[1...3]=1:角度从起始点一直到目标点保持不变。
KRL 程序 KUE_WEG 计算轴 5 的状态,使轴 4 和 5 在 PTP 运动的起点和目标点之间尽量少地运动。可以将其集成到一个运动程序中或者在离线生成笛卡尔点时使用。
审核编辑:刘清
全部0条评论
快来发表一下你的评论吧 !