ID : 2675
TrackMotionRange
功能
在跟踪对象工件位于跟踪范围内时,检查作业动作的目标位置的轨道上,有无能进入机器人的可动范围内的点。
该指令对Ver.2.11.*以上的版本有效。
格式
TrackMotionRange (传送带编号, 目标位置 [, 工具坐标 [, 工件坐标] ])
指定项目
- 传送带编号
-
指定要进行目标位置检查的工件所在的传送带编号。使用整数型数据指定。
- 目标位置
- 工具坐标
-
用位置型数据指定工具坐标的各要素(X,Y,Z,Rx,Ry,Rz),或者用-1~63的整数型数据指定工具坐标系编号。用位置型数据指定时,Fig被忽略。““-1”表示当前的工具编号,0~63为工具坐标系编号。可省略。省略时为“-1”(当前的工具编号)。
- 工件坐标
-
用位置型数据指定工件坐标的各要素(X,Y,Z,Rx,Ry,Rz),或者用-1~7的整数型数据指定工件坐标系编号。用位置型数据指定时,Fig被忽略。““-1”表示当前的工件编号,0~7为工件坐标系编号。可省略。省略时为“-1”(当前的工件编号)。
返回值
在跟踪对象工件位于跟踪范围内时,检查作业动作的目标位置中,有无能进入机器人的可动范围内的点,以整数型数据返回该结果。
返回值 | 内容 |
---|---|
0 | 没有能进入机器人的可动范围内的点 |
0以外 | 有能够进入可动范围内的点 |
解说
开始跟踪动作时,当作业动作的目标位置在机器人的可动范围外时会发生错误。使用TrackCurMotionRange指令可以检查作业动作的目标位置有无进入机器人的可动范围内。但是,如下图所示,有时目标位置可能一次也不会进入机器人的可动范围内。
TrackMotionRange指令在跟踪对象工件位于跟踪范围内时,检查作业动作的目标位置的轨道上,有无能进入机器人的可动范围内的点。
实际上,是在要检查的跟踪对象工件的轨道上,以跟踪范围的上游上限和下游下限为端点,等间隔计算路径点的位置。即使其中有1个进入机器人的可动范围内,则返回“0以外”的返回值。
路径点的个数在用户参数“278 : 工件通过位置软件限位检查 路径点数”中设定。
例 : 已将路径点的个数设定为4个时
绿色的跟踪对象工件,由于轨道上的路径点1个也没有进入机器人的可动范围内,因此返回“0”的返回值。
蓝色的跟踪对象工件,由于轨道上的路径点已有1个以上进入了机器人的可动范围内,因此返回“0以外”的返回值。
注意事项
传送带及圆形跟踪专用指令。
应用示例
‘ 设定跟踪对象工件
P10 = TrackTargetPos(1)
‘ 检查能否对对象工件进行跟踪动作
If TrackMotionRange(1, P10) <> 0 Then ‘ 可以对对象工件执行跟踪动作时
‘ 待机至作业动作的目标位置位于机器人的可动范围内
Wait TrackCurMotionRange(1, P10)
TrackStart 1
TrackMove P, P10
TrackStop
Else ‘ 无法对对象工件执行跟踪动作时
TrackTargetRelease 1, true ‘ 从缓冲区中删除对象工件
Endif
ID : 2675