Jump
用于通过门控运动(首先垂直上升,然后水平移动,最后垂直下降的门型动作)使机械臂从当前位置向指定位置进行PTP动作。
格式
Jump 目标坐标 [C Arch编号] [LimZ [Z坐标值]] [CP] [{Sense|Till|Find}] [!并行处理!] [SYNC]
参数
- 目标坐标
- 以点数据指定目标位置。
- Arch编号
- Arch编号指定在Jump的Arch运动形状中使用哪个Arch表格的设置。请在Arch编号的开头附加字母“C”号。有效值为C0~C7。可省略。
- Z坐标值
- 请考虑为利用Jump命令进行动作期间,第3关节可移动的最大值(Z限制值)、或利用Jump命令得到的Z成分的高度限制值。如果是有效的第3关节坐标值,则可为任何值。可省略。
- CP
- 指定路径运动。可省略。
- Sense、Till或Find
- 记述Sense、Till或Find表达式。可省略。
Sense | Till | Find Sense Sw(表达式) = {On | Off} Till Sw(表达式) = {On | Off} Find Sw(表达式) = {On | Off}
- !并行处理!
- 利用Jump命令进行动作期间,可添加I/O或用于执行其它命令的并行处理语句。可省略。
- SYNC
- 预约动作命令。在通过SyncRobots开始动作之前,机器人不进行动作。
说明
Jump命令用于通过所谓的 “Arch运动(Arch型动作)” 将机械臂从当前位置移动到目标坐标。也就是说,可考虑为1次可进行3个动作的语句。比如,如果定义Arch编号,1次Jump命令则进行下述3个动作。
- 首先,仅第3关节动作到Jump命令期间的由Arch编号计算的Z轴高度位置。
- 其次,机械臂在到达由LimZ指定的Z限制位置之前,向Z轴方向上升,同时水平移动到目标坐标。然后,分别进行第1关节、第2关节、第4关节的动作,同时开始向Z轴方向下降。机械臂一直进行动作,直至获取最终的X、Y、U坐标位置。
- 机械臂仅向Z轴方向移动,直至获取目标Z坐标位置,在获取目标坐标时,Jump命令结束。
由于不能在Jump命令中指定目标坐标(移动的目的位置),因此,执行Jump命令之前,需要进行示教。利用Accel进行Jump移动的加速和减速。另外,利用Speed控制移动速度。
不能对垂直6轴型机器人(包括N系列)执行Jump。请使用Jump3。
关于CP
如果附加了CP参数,则可在开始动作减速时叠加后续动作命令的加速。此时,不对目标坐标进行定位。
关于Arch编号
可利用Jump命令中指定的Arch编号变更Jump的Arch类型。这样的话,可在第1关节、第2关节、第4关节等各关节动作之前,确定要向Z轴方向移动多少程度。Jump命令中可有效使用的Arch编号为C0~C7之间的值。用户可利用Arch命令来定义Arch表格值相对于C0~C6之间值的设置。但C7始终定义“门控运动”。“门控运动”是指机器人在移动第1关节、第2关节、第4关节等各关节之前,首先仅将第3关节移动到由LimZ定义的坐标位置处。进行这种“门控运动”时,首先移动到由LimZ定义的Z限制值位置,然后,开始第1关节、第2关节、第4关节等各关节动作。第1关节、第2关节、第4关节等各关节移动到各自的最终目标坐标位置之后,第3关节朝向由目标坐标定义的最终Z坐标位置进行下降动作。下图所示为“门控运动”的动作。
符号 说明 a 当前位置 b 目标坐标 关于LimZ
LimZ Z坐标值指定当前设置的本地坐标系水平移动面上的Z坐标最高值。根据指定的Arch设置,达到LimZ值之前,也许第1关节、第2关节、第4关节等各关节已开始动作,但LimZ值始终用于定义该移动的Z坐标方向的上限值。如果省略LimZ参数,则适用此前(最后)由LimZ指定的最高值。
由LimZ指定的高度方向限制值为本地机器人坐标系上的Z坐标值。并不是Arm、Tool坐标的Z坐标值。因此,使用作业高度不同的工具或夹具末端时,请充分注意并采取必要的措施。
关于Sense
是可省略的参数之一。Sense用于在第3关节进行最终下降动作之前,检查输入条件或存储器I/O条件等。如果没有问题,则将机器人机械臂停在目标坐标位置上(最终仅保留第3关节动作的位置),并视为该命令(Jump)执行结束。不过,即使检测到由Sense指定的条件,机械臂也不会立即停止,这点敬请注意。
符号 说明 a 条件检查 b 动作结束 c 目标坐标 与JS或Stat等命令组合,可确认Sense条件成立并且机械臂停在目标坐标位置之前,或者Sense条件不成立并且机械臂直接停在目标坐标位置上。
关于Till
使用选项Till,可在执行Jump之前对机器人进行减速控制,设置停止条件。可按照包括检查1个I/O输入或1个存储器I/O这样的条件进行设置。此处使用Sw或MemSw函数。可根据事先设置的条件,检查输入为ON或OFF,对机械臂进行减速、停止控制。
通过使用Stat函数,可确认Till条件成立并且已执行命令,或者Till条件不成立并且机器人停在目标坐标位置上。
注意
Jump不能用于垂直6轴型机器人(包括N系列)
请使用Jump3或Jump3CP。
省略Arch编号参数时
如果省略Arch编号参数的设置,执行Jump命令时的默认Arch值则为C7。正如上文所述,Arch值为C7时,变为 “门控运动” 移动(请参阅上文)。
Jump与Jump3及Jump3CP的差异
可在垂直6轴型机器人(包括N系列)中使用Jump3和Jump3CP,但不能使用Jump。在水平多关节型机器人(包括RS系列)上向Z轴方向进行上升/下降动作时,使用Jump可缩短动作时间。也可以在Z轴以外的方向进行Jump3的接近/转移动作。
Jump与Go的差异
Jump与Go的最大差异在于:Go时,所有关节动作同步,各关节同时开始动作并同时停止。而Jump时,动作的开始和结束仅限于垂直方向第3关节。进行装置吸附/配置等作业时,建议使用该命令。
Jump的减速停止
使用Jump时,机械臂必须在减速的同时,停在目标坐标位置上。
Jump的适当速度和加速指示
分别利用Speed和Accel设置Jump动作时的机器人速度和加减速。仅可在要利用Jump、Go等进行点到点的动作时设置Speed和Accel命令,这点敬请注意。比如,要执行类似Move或Arc等进行直线和曲线动作的命令时,请使用SpeedS或AccelS命令。
另外,Jump时,可分别针对第3关节的上升移动、第4关节的水平移动(包括旋转)以及第3关节的下降等设置速度和加减速。
Jump的Pass功能
在下降动作量为0的Jump上附加CP参数时,由于该Jump的水平动作不减速停止,因此,可平滑地连接后续的PTP动作。
另外,在此前的PTP动作命令上附加CP参数时,由于上升动作量为0的Jump的PTP动作不减速停止,因此,可平滑地连接Jump的水平动作。
这在希望将通常的Jump水平动作(1个PTP动作)切换为平滑连接几个PTP动作时非常便利。
[例]
Go P1 Jump P2 :Z(-50) C0 LimZ -50 CP Go P3 :Z(0) CP Jump P4 C0 LimZ 0
使用Arch时的重要事项
由于Arch运动是通过轨迹控制来合成第3关节的上升或下降动作以及横向动作,因此,并不能保证实际的轨迹。其轨迹会因动作速度或机械臂的移动方式而异。请通过作业使用的实际速度和姿势确认实际轨迹。
- 即使在相同位置上执行带有相同[C Arch编号]的Jump命令,低速时的轨迹也会低于高速动作时的轨迹。因此,即使确认没有高速碰撞到障碍物,但低速动作时也可能会发生碰撞,敬请注意。
- 与低速动作时相比,会出现高速动作时垂直上升量增大、垂直下降量减小的倾向。没有达到期待的垂直下降距离时,请降低速度或减速度,或将下降距离设置得长一些。
- 即使是相同距离的动作,轨迹也会因机械臂的移动方式而异。虽然因机械臂的移动方式而导致的轨迹变化多种多样,但是,如果以一般的水平过关节型机器人为例,第1机械臂的移动幅度越大,垂直上升量也越大,而垂直下降量则越小。没有达到期待的垂直下降距离时,请降低速度和减速度,或将下降距离设置得长一些。
易引起的错误
LimZ值设置过低时
在第3关节机械臂位置处于比LimZ设置值还高的位置状态下,如果执行Jump,则会发生错误4005。
参阅
Accel、Arc、Arch、Go、JS、JT、LimZ、P#=指定点、Pulse、Sense、Speed、Stat、Till
Jump使用示例
下例所示为从点P0到P1进行单纯的PTP动作后,利用Jump返回到P0。在程序的后半段,机械臂执行Jump,如果输入位4未置为ON,则进行下降动作并移动到P1。输入位4为ON时,不进行下降动作。
Function jumptest
Home
Go P0
Go P1
Sense Sw(4) = On
Jump P0 LimZ -10
Jump P1 LimZ -10 Sense '检查输入4
If Js(0) = 1 Then
Print "Input #4 came on during the move and"
Print "the robot stopped prior to arriving on"
Print "point P1."
Else
Print "The move to P1 completed successfully."
Print "Input #4 never came on during the move."
EndIf
Fend
> Jump P10+X50 C0 LimZ-20 Sense !D50;On 0;D80;On 1!
从命令窗口执行的操作示例。
> Jump P0 '执行跳跃动作至P0
> Jump P0 C0 '以通过门型编号C0设置的门型动作向P0执行跳跃动作
> Jump P0 LimZ -10 '在达到Z限制值-10mm之前向P0进行跳跃动作。
> Jump P0 !D0; On 1; D50; Off 1! '执行跳跃动作至P0。将动作的移动量变为50%之前输出的第1位设置为On,变为50%之后的第1位设置为Off。
输入的第1位变为“On”时,停止Jump命令并进至下一个处理。
Function main
(省略)
Till Sw(1) = On
Jump P0 C0 CP Till
(省略)
Fend
← JTran Jump3、Jump3CP →