百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 文章教程 > 正文

爱普生工业机器人SPEL+语言常用的函数和指令及运算符

yund56 2025-02-25 01:17 14 浏览


一、动作指令


使机械手动作的指令叫作动作指令。


可分为:PTP动作指令,CP动作指令,Curves动作指令,Joint动作指令。


注意:

* CP模式,即Continuous Path 连续路径模式。

* 指定PTP动作指令和Joint动作指令的速度和加/减速度时,使用SPEED指令和ACCEL指令。指定CP模式动作指令时, 使用速度SPEEDS指令和加减速度ACCELS指令。

1、PTP动作指令

包括指令:Go、Jump、BGo、TGo

PTP(Pose To Pose)动作,是与其动作轨迹无关,以机械手的工具顶端为目标位臵使其动作的动作方法。PTP动作, 使用各关节上配置的电动机,使机械手通过最短的路径到达目标位置。

优点:运动速度快;

缺点:运动轨迹无法预测。指定PTP动作速度和加/减速,使用SPEED指令和ACCEL指令。


1.1、Go 指令

功能: 用于在当前位置到指定位置之间以PTP 动作移动机械臂。

格式:Go 目标坐标

示例:

1. Go P1 ′机械手动作到P1点

2. Go XY(50, 400, 0, 0) ′机械手动作到X=50,Y=400,Z=0,U=0 ’此坐标为世界坐标,单位:mm

3. Go P1+X(50) ′机械手动作到P1点X坐标值偏移量为+50的位置

4. Go P1:X(50) ′机械手动作到P1点对应X坐标值为50的位置

如下所示为利用命令窗口的操作示例。

>Go Here +X(50) '从当前位置向X 方向移动50mm

>Go P1 '向P1 移动

>Go P1 :U(30) '向P1 且U=30 的位置移动

>Go P1 /L '以左夹具末端姿势向P1 移动

>Go XY(50, 450, 0, 30) '向X=50、Y=450、Z=0、U=30 的位置移动

Go 与Move 的差异

Move 和 Go 都是使机器人机械臂动作的命令。两者之间的最大不同是Go 是进行PTP 动作,而Move是在直线轨道上移动机械臂。在重视到达目标点时的机械臂的姿势时,使用Go 命令;而更重视控制动作中的机械臂的轨迹时,使 用Move 命令。

Go 与Jump 的差异

Jump 和 Go 都是以PTP 动作移动机器人机械臂的命令。但是,Jump 拥有一个Go 所没有的功能。Jump 首先将机器 人的夹具末端抬起到LimZ 值,然后水平移动机械臂,在达到目标坐标的上空时开始下降动作。这种移动的优点是 可以切实地避开障碍物,更重要的是通过吸附和配置动作可以提高作业的循环时间。

1.2、Jump 指令(不能用于6轴机器人)

功能: 用于通过门控运动(首先垂直上升,然后水平移动,最后垂直下降的门型动作)使机械臂从当前位置向指 定位置进行PTP 动作。

格式:Jump 目标坐标

说明

Jump 命令用于通过所谓的 “Arch 运动(Arch 型动作)” 将机械臂从当前位置移动到目标坐标。也就是说,可 考虑为1 次可进行3 个动作的语句。比如,如果定义Arch 编号,1 次Jump 命令则进行下述3 个动作。

1) 首先,仅第3 关节动作到Jump 命令期间的由Arch 编号计算的Z 轴高度位置。

2) 其次,机械臂在到达由LimZ 指定的Z 限制位置之前,向Z 轴方向上升,同时水平移动到目标坐标。然后,分别 进行第1 关节、第2 关节、第4 关节的动作,同时开始向Z 轴方向下降。机械臂一直进行动作,直至获取最终的X、 Y、U 坐标位置。

3) 机械臂仅向Z 轴方向移动,直至获取目标Z 坐标位置,在获取目标坐标时,Jump 命令结束。由于不能在Jump 命 令中指定目标坐标(移动的目的位置),因此,执行Jump 命令之前,需要进行示教。利用Accel 进行Jump 移动的加速和减速。另外,利用Speed 控制移动速度。

关于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 坐标位置进行下降动作。下图所示为“门控运动”的动作。



关于LimZ

LimZ Z 坐标值指定当前设置的本地坐标系水平移动面上的Z 坐标最高值。根据指定的Arch 设置,达到LimZ 值之 前,也许第1 关节、第2 关节、第4 关节等各关节已开始动作,但LimZ 值始终用于定义该移动的Z 坐标方向的上 限值。如果省略LimZ 参数,则适用此前(最后)由LimZ 指定的最高值。

由LimZ 指定的高度方向限制值为本地机器人坐标系上的Z 坐标值。并不是Arm、Tool 坐标的Z 坐标值。因此,使 用作业高度不同的工具或夹具末端时,请充分注意并采取必要的措施。

Jump Jump3 Jump3CP 的差异

可在垂直6 轴型机器人中使用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 动作时非常便利。



使用Arch 时的重要事项

由于Arch 运动是通过轨迹控制来合成第3 关节的上升或下降动作以及横向动作,因此,并不能保证实际的轨迹。 其轨迹会因动作速度或机械臂的移动方式而异。请通过作业使用的实际速度和姿势确认实际轨迹。

? 即使在相同位置上执行带有相同C [Arch 编号] 的Jump 命令,低速时的轨迹也会低于高速动作时的轨迹。因此, 即使确认没有高速碰撞到障碍物,但低速动作时也可能会发生碰撞,敬请注意。

? 与低速动作时相比,会出现高速动作时垂直上升量增大、垂直下降量减小的倾向。没有达到期待的垂直下降距 离时,请降低速度或减速度,或将下降距离设置得长一些。

? 即使是相同距离的动作,轨迹也会因机械臂的移动方式而异。虽然因机械臂的移动方式而导致的轨迹变化多种 多样,但是,如果以一般的水平过关节型机器人为例,第1 机械臂的移动幅度越大,垂直上升量也越大,而垂直下 降量则越小。没有达到期待的垂直下降距离时,请降低速度或减速度,或将下降距离设置得长一些。

Jump 使用示例

下例所示为从点P0 到P1 进行单纯的PTP 动作后,利用Jump 返回到P0。在程序的后半段,机械臂执行Jump,如果 输入位4 未置为ON,则进行下降动作并移动到P1。输入位4 为ON 时,不进行下降动作。

演示



输入4信号时



>Jump P10+X50 C0 LimZ-20 Sense !D50;On 0;D80;On 1!

示例:

1. Jump P1 ′机械手以“门形动作”动作到P1点

2. Jump P1 LimZ -10 ′以限定第三轴目标坐标Z=-10的门形动作移动到P1点,如图1示

3. Jump P1:Z(-10)LimZ -10 ′以限定第三轴目标坐标Z=-10的门形动作移动到P1点位臵Z坐标值为-10的位置

1.3、BGo指令

解释:用于在已选择的本地坐标系上执行偏移PTP 动作。

格式:Bgo 目标坐标 [CP] [PerformMode 模式编号] [Till | Find] [!并行处理!] [SYNC]

说明

用于在已选择的本地坐标系上执行偏移PTP 动作。以由表示目标坐标的点数据指定的坐标系为基准,实施偏移PTP 动作。

未指定本地坐标系时,以本地0(基础坐标系)为基准,实施偏移PTP 动作。

无视由点数据提供的姿势标志并保持当前的姿势标志。但垂直6 轴型机器人情况下可自动变更姿势标志,以减小关节移动量。

通过使用Till 修饰符,可在Till 条件成立时于动作中途对机器人进行减速停止,完成BGo 动作。

使用Find 修饰符并且动作期间Find 条件变为真时,将点数据保存到FindPos 中。

可使用!并行处理!,与动作并行执行其他处理。

如果附加了CP 参数,则可在开始动作减速时叠加后续动作命令的加速。此时,不对目标坐标进行定位。

如果在路径运动有效时设置了PerformMode 参数,则可叠加不同动作模式的减速动作和加速动作。

根据动作模式,可能无法叠加。

BGo 使用示例

> BGo XY(100, 0, 0, 0) '(在本地坐标系中)向X 方向移动100mm

Function BGoTest

Speed 50

Accel 50, 50

Power High

P1 = XY(300, 300, -20, 0)

P2 = XY(300, 300, -20, 0) /L

Local 1, XY(0, 0, 0, 45)

GoP1

Print Here

BGo XY(0, 50, 0, 0)

Print Here

Go P2

Print Here

BGo XY(0, 50, 0, 0)

Print Here

BGo XY(0, 50, 0, 0) /1

Print Here

Fend

[输出结果]

X: 300.000 Y: 300.000 Z: -20.000 U: 0.000 V: 0.000 W: 0.000 /R /0

X: 300.000 Y: 350.000 Z: -20.000 U: 0.000 V: 0.000 W: 0.000 /R /0

X: 300.000 Y: 300.000 Z: -20.000 U: 0.000 V: 0.000 W: 0.000 /L /0

X: 300.000 Y: 350.000 Z: -20.000 U: 0.000 V: 0.000 W: 0.000 /L /0

X: 264.645 Y: 385.355 Z: -20.000 U: 0.000 V: 0.000 W: 0.000 /L /0


1.4、TGo指令

解释:用于在当前工具坐标系上执行偏移PTP 动作。

格式:TGo 目标坐标 [CP] [PerformMode 模式编号] [Till | Find] [!并行处理!] [SYNC]

说明

用于在当前工具坐标系上执行偏移PTP 动作。

无视由点数据提供的姿势标志并保持当前的姿势标志。但垂直6 轴型机器人情况下可自动变更姿势标志,以减小关 节移动量。

通过使用Till 修饰符,可在Till 条件成立时于动作中途对机器人进行减速停止,完成TGo 动作。

使用Find 修饰符并且动作期间Find 条件成真时,将点数据保存到FindPos 中。

可使用!并行处理!,与动作并行执行其它处理。

如果附加了CP 参数,则可在开始动作减速时叠加后续动作命令的加速。此时,不对目标坐标进行定位。

如果在路径运动有效时设置了PerformMode 参数,则可叠加不同动作模式的减速动作和加速动作。根据动作模式, 可能无法叠加。

TGo 使用示例

> TGo XY(100, 0, 0, 0) '(在工具坐标系中)向X 方向移动100 mm

Function TGoTest

Speed 50

Accel 50, 50

Power High

Tool 0

P1 = XY(300, 300, -20, 0)

P2 = XY(300, 300, -20, 0) /L

Go P1

Print Here

TGo XY(0, 0, -30, 0)

Print Here

Go P2

Print Here

TGo XY(0, 0, -30, 0)

Print Here

Fend

[输出结果]

X: 300.000 Y: 300.000 Z: -20.000 U: 0.000 V: 0.000 W: 0.000 /R /0

X: 300.000 Y: 300.000 Z: -50.000 U: 0.000 V: 0.000 W: 0.000 /R /0

X: 300.000 Y: 300.000 Z: -20.000 U: 0.000 V: 0.000 W: 0.000 /L /0

X: 300.000 Y: 300.000 Z: -50.000 U: 0.000 V: 0.000 W: 0.000 /L /0


2、CP动作指令

包括指令:Move、Arc、Arc3、Jump3/Jump3CP、BMove、TMove、CVMove

CP(Continuous Path )指令可以指定机械手到达目标位臵的运动轨迹。

优点:轨迹可以控制,匀速动作。

缺点:速度慢。

指定Linear动作速度和加/减速度,使用SPEEDS指令和ACCELS指令。

执行CP On,则动作命令将与减速开始命令同时执行以下语句,而与是否在各动作命令中指定了CP参数无关。其结 果,如果在减速动作过程中开始以下动作,将合成动作轨迹。

如果执行CP Off,则仅在各动作命令中指定了CP 参数时,此功能才有效。



CP 动作(Arc、Arc3、Jump3、Jump3CP、Move)或者PTP 动作(Go、Jump)将通过CP On 合成动作轨迹。

但是,如果CP 动作与PTP 动作是连续轨迹,则只减速而不合成动作轨迹。

CP 使用示例

CP On

Move P1

Move P2

CP Off

2.1、Move指令

解释:用于在当前位置到指定位置之间以直线插补动作移动机械臂。

格式:Move 目标坐标 [ROT] [ECP] [CP] [Till | Find] [!并行处理!] [SYNC]

说明

Move 用于在当前位置~指定位置之间直线移动机械臂。使用Move 时,所有关节同时开始/停止动作。执行Move 命令之前,请事先对目标坐标进行示教。由AccelS 命令控制Move 的加减速。由SpeedS命令控制Move 的速度。即使 有1 个由SpeedS 设置的值超出各关节的容许速度,也会切断电动机的励磁,机器人停止动作。

Move 的速度和加减速度分别使用SpeedS 和AccelS 的设定值。

通常的移动距离为0,仅姿势关节进行动作时,会发生错误。通过附加ROT 修饰参数并以工具姿势变化的加速度为 优先,可不出错误地进行动作。已经附加ROT 修饰参数时,如果没有姿势变化,并且移动距离不是0,则会发生错误。

另外,相对于移动距离,工具姿势变化速度过大时,或指定的转速超过机械手限度时,也会发生错误。此时,请降 低指定速度,或附加ROT 修饰参数,并以姿势变化的加减速度为优先。

使用ECP 时,在对应于指定ECP 编号的外部控制点上,工件沿着直线移动。此时,顶端关节的中心不沿着直线移动。



要在Move 动作完成之前对机器人执行减速停止时,用户可使用Till 修饰符指定该条件。此处指定的条件就是检查 其中1 个输入位,因此需要使用Sw 命令。用户检查输入的状态是ON 还是OFF,并根据指定的条件停止机械臂动作。 该功能类似于输入条件成立时停止Move 的中断。如果Move动作期间输入条件从未成立,机械臂则到达由目标坐标 指定的位置。

注意

不能利用Move 进行的操作进行动作之前,不能确认动作范围。这样的话,即使目标坐标位置在容许动作范围之内,而如果到达此处的轨迹通过容许动作范围以外位置,则可能会导致机械臂突然停止,并造成伺服冲击,导致发生故障,这很危险。为了防止发生这种情况,高速执行Move 之前,请先以低速确认动作范围。也就是说,即使目标坐标在机械臂动作范围之内, 从物理角度来讲,如果通过Move 动作到达此处的轨迹超出机械臂容许动作范围,机械臂则动不了。

CP 同时使用Move

如果使用CP 参数,动作命令则会在开始减速的同时将控制移交给后续语句。这在用户连续发出几个动作命令,要 以一定的速度进行连续动作时非常便利。为未指定CP 的Move 命令时,机械臂必须减速,以停在指定的目标位置上。 向Move 发出适当的速度/加减速度指示。

SpeedS 和AccelS 命令用于指定Move 动作期间的机械手速度和加减速度,而SpeedS 和AccelS 则为针对直线和圆 弧插补动作的命令,敬请注意它们之间的区别。Speed 和Accel 命令适用于PTP 动作。

执行直线移动距离为0 的动作时

如果要利用Move 进行仅使4 自由度机器人(水平多关节型(包括RS 系列)等)的U 坐标值或6自由度机器人(垂直6 轴型)的U、V、W 坐标值发生变化的动作,则会发生错误。此时请使用ROT参数。

超出关节限制速度的错误

进行指示的动作期间,即使1 个关节超出容许速度,也会发生超速错误。发生电动机超速错误时,机械臂停止动作, 电动机励磁被切断。

示例:Move P1 ′机械手以直线轨迹动作到P1点

NOTE:

Move与Go的区别到达目标点时的手臂的姿势重要的时候使用Go命令,但是比控制动作中的手臂的轨迹重要的时候,使用Move 命令。在SCARA机械手只有Z轴上下动作时,Go与Move的轨迹一样。

2.2、Arc和Arc3 指令

解释:Arc 用于在XY 平面上以圆弧插补动作将机械臂从当前位置移至指定位置。

Arc3 用于在三维平面上以圆弧插补动作将机械臂从当前位置移至指定位置。

无论是水平多关节型(包括RS 系列)机器人还是垂直6 轴型机器人都可以使用这两个命令。

格式

(1) Arc 经由坐标,目标坐标 [ROT] [CP] [Till | Find] [!并行处理!] [SYNC]

(2) Arc3 经由坐标,目标坐标 [ROT] [ECP] [CP] [Till | Find] [!并行处理!] [SYNC]

参数

经由坐标 以点数据进行指定。是机械臂从当前位置移至目标坐标的轨道所必须通过的点。用户可以预先示教。

目标坐标 以点数据进行指定。是机械臂可以通过圆弧动作移动的到达地点和目标位置。用户可以预先示教。

ROT 以工具姿势变化优先,确定动作速度、加减速度。可省略。

ECP 指定外部控制点动作。可省略。(仅在使用ECP 选项时有效)

CP 指定路径运动。可省略。

Till | Find 记述Till 或Find 表达式。可省略。

Till | Find

Till Sw(表达式)= {On | Off}

Find Sw(表达式)= {On | Off}

SYNC 预约动作命令。在通过SyncRobots 的动作开始之前,机器人不进行动作

说明

Arc 和Arc3 用于以圆弧插补动作并通过经由坐标将机械臂从当前位置移至目标坐标。根据给出的3点(当前位置、 经由坐标、目标坐标)自动计算圆弧插补轨道,并沿着该轨道移动机械臂直至目标坐标。在执行命令之前,预先示 教经由坐标和目标坐标。无法在语句中指定这些坐标位置。

Arc 和Arc3 的速度和加减速度分别使用SpeedS 和AccelS 的设定值。有关速度与加减速度之间的关系,请参阅注 意中的“与CP 同时使用Arc、Arc3”。不过,指定ROT 修饰参数时的速度和加减速度分别使用SpeedR 和AccelR 的设定值。此时,SpeedS 和AccelS 的设定值变为无效状态。

通常的移动距离为0,仅姿势关节进行动作时,会发生错误。通过附加ROT 修饰参数并以工具姿势变化的加速度为优先,可不出错误地进行动作。已经附加ROT 修饰参数时,如果没有姿势变化,并且移动距离不是0,则会发生错误。

另外,相对于移动距离,工具姿势变化速度过大时,或指定的转速超过机械手限度时,也会发生错误。此时,请降 低指定速度,或附加ROT 修饰参数,并以姿势变化的加减速度优先

使用ECP 时(仅限Arc3),在对应于指定ECP 编号的外部控制点上,工件沿着圆弧轨道移动。此时,顶端关节的中 心不沿着圆弧轨道移动。



Arc 动作的速度和加速度

分别通过SpeedS 和AccelS 进行相对于Arc 和Arc3 命令的速度和加减速度的设置。

通过SpeedS 指定速度(单位:mm/sec)、通过AccelS 指定加减速度(单位:mm/sec2)。

注意

Arc 命令仅在水平面上有效 按照Arc 命令描画的轨迹在XY 平面上将变为正圆弧。关于Z 方向和姿势,插补当前点和目标坐标值。Arc3 可以在三维空间中指定圆弧轨道。

Arc 命令的范围确认

Arc 和Arc3 语句可以在Arc 动作前进行轨道范围确认运算。因此,即使目标位置在动作区域内,如果轨道偏出区 域外,可能会停止。此时可能会产生冲击,给机械臂造成障碍,所以需要预先以低速执行程序确认轨道。

Arc 动作的设置

基于Arc 命令的圆弧动作是从当前位置开始,所以有时也需要在执行Arc 和Arc3 之前,预先使用Go 和Jump 及其 他关联动作命令,将机器人的机械臂移至恰当的位置上。

与CP 同时使用Arc、Arc3

如果使用CP 参数,动作命令则会在开始减速的同时将控制移交给后续语句。这在用户连续发出几个动作命令,要 以一定的速度进行连续动作时非常便利。为未指定CP 的Arc 命令、Arc3 命令时,机械臂必须减速,以停在指定的 目标位置上。

易引起的错误

变更夹具末端的属性

所以使用Arc 命令时,请注意各点的夹具末端的属性。如果在以后插补动作期间变更夹具末端的方向(例如从右手 向左手、或者相反的变更等),将会出错。机械臂的属性值(/L 左腕、/R 右腕)必须与实际的当前位置、经由坐 标和目标坐标一致。

想要将机械臂移至移动范围外时

如果指定的圆弧动作要将机械臂移至移动范围外,将会出错。

Arc 使用示例

下述为描画如图那样的轨迹的程序例。实现从P100 开始动作、经由P101 到达P102 的圆弧动作轨迹。

Function ArcTest

Go P100

Arc P101, P102

Fend



注意:

即使目标坐标在机械手的动作范围内,一旦在Move或Arc运动轨迹超过允许动作范围外,机械手会突然停止,给伺 服电机带来撞击,有产生故障的危险。为了防止这样的事发生,请在高速执行之前先以低速进行动作范围确认。

2.3、Jump3/Jump3CP 指令

解释:用于以三维门控动作移动机械臂。

Jump3 用于组合2 个CP 动作与1 个PTP 动作。

Jump3CP 则用于组合3 个CP 动作。

格式:(1) Jump3 转移坐标, 接近开始坐标, 目标坐标, [C Arch 编号] [CP] [LJM [选择姿势标志]][Sense | Till | Find] [!并行处理!][SYNC]

(2) Jump3CP 转移坐标, 接近开始坐标, 目标坐标, [ROT] [C Arch 编号] [CP] [LJM [选择姿势标志]][Sense | Till | Find] [!并行处理!][SYNC]

说明

通过三维门控动作将机械臂从当前位置移动到目标坐标位置。三维门控动作由转移动作、跨越动作与接近动作构成。

从当前位置到转移坐标的转移动作称之为CP 动作。在Jump3 时,从转移坐标到接近开始坐标的跨越动作为PTP 动 作;Jump3CP 时,为CP 动作。从接近开始坐标到目标坐标的接 近动作为CP 动作。


通过设置Arch 编号进行Arch 动作。

下图所示为Jump3 和Jump3CP 的Arch 动作。

请确保转移距离大于Arch 上升距离,接近距离大于Arch 下降距离。



Jump3CP 的速度和加减速度分别使用SpeedS 和AccelS 的设定值。有关速度与加减速度之间的关系,不过,指定ROT 修饰参数时的速度和加减速度分别使用SpeedR 和AccelR 的设定值。此时,SpeedS 和AccelS 的设定值变为无效状态。

通常的移动距离为0,仅姿势关节进行动作时,会发生错误。通过附加ROT 修饰参数并以工具姿势变化的加速度为优先,可不出错误地进行动作。已经附加ROT 修饰参数时,如果没有姿势变化,并且移动距离不是0,则会发生错 误。

另外,相对于移动距离,工具姿势变化速度过大时,或指定的转速超过机械手限度时,也会发生错误。此时,请降低指定速度,或附加ROT 修饰参数,并以姿势变化的加减速度为优先。

注意

LimZ Jump3 Jump3CP 没有影响。

由于跨越动作未必仅限于与坐标系的Z 轴垂直,因此,LimZ 对Jump3 和Jump3CP 没有影响。

Jump3 的跨越动作为PTP 动作。

由于难以预测PTP 动作的轨迹,因此,请充分注意不要干扰机器人主体或外围装置。

CP 同时使用Jump3Jump3CP

如果使用CP 参数,动作命令则会在开始减速的同时将控制移交给后续语句。这在用户连续发出几个动作命令,要以一定的速度进行连续动作时非常便利。为未指定CP 的Jump3 命令、Jump3CP 命令时,机械臂必 须减速,以停在指定的目标位置上。

Jump3 Pass 功能

在接近动作量为0 的Jump3 上附加CP 参数时,由于该Jump3 的跨越动作不减速停止,因此,可平滑地连接后续的 PTP 动作。

另外,在此前的PTP 动作命令上附加CP 参数时,由于转移动作量为0 的Jump3 的PTP 动作不减速停止,因此,可平滑地连接Jump3 的跨越动作。

这在希望将通常的Jump3 跨越动作(1 个PTP 动作)切换为平滑连接几个PTP 动作时非常便利。

(例1)

Jump3 P1,P2,P2 CP

Go P3,P4 CP

Jump3 P4,P5,P5+tlz(50)

(例2)

Jump3CP P1,P2,P2 CP

Move P3,P4 CP

Jump3CP P4,P5,P5+tlz(50)


LJM 同时使用Jump3Jump3CP

如果使用LJM 参数,则可简化使用LJM 函数的程序。

比如,可将

P11 = LJM(P1, Here, 2)

P12 = LJM(P2, P11, 2)

P13 = LJM(P3, P12, 2)

Jump3 P11, P12, P13

这样的4 行程序替换为下述1 行程序:

Jump3 P1, P2, P3 LJM 2

可以转换为1 行程序。

在垂直6 轴型机器人和RS 系列机器人中,LJM 参数是有效的。

Jump3CP 不能用于因跨越动作为直线(CP)动作而中途切换手腕姿势。因此,请勿使用可切换手腕姿势的LJM 函数的选择姿势标志(LJM 1)。

Jump3 使用示例

'类似SCARA 机器人的Jump 那样进行动作的垂直6 轴型机器人的动作

Jump3 Here :Z(100), P3 :Z(100), P3

'使用Z 工具坐标的转移动作和接近动作

Jump3 Here -TLZ(100), P3 -TLZ(100), P3

'使用Z 基础坐标的转移动作和使用Z 工具坐标的接近动作

Jump3 Here +Z(100), P3 -TLZ(100), P3

利用Tool1 进行转移动作、利用Tool2 进行接近动作的示例

Arch 0,20,20

Tool 1

Go P1

P2 = P1 -TLZ(100)

Tool 2

Jump3 P2, P3-TLZ(100), P3 C0

注意:

1、Jump不能用于6轴机械手,6轴机械手只能使用Jump3和Jump3 CP指令

2、Jump3CP指令用法与Jump3类似,不同在于Jump3CP是3个CP动作的组合

3、SCARA机械手Z轴上升或下降动作时,使用Jump指令可以提高运动速度

2.4、BMove 、TMove、CVMove 指令

BMove指令: 用于在已选择的本地坐标系上执行偏移直线插补动作。

TMove指令: 用于在当前工具坐标系上执行偏移直线插补动作。

CVMove指令: 用于执行Curve 命令定义的自由曲线CP 动作。

BMove:

说明

用于在已选择的本地坐标系上执行偏移直线插补动作。以由表示目标坐标的点数据指定的坐标系为基准,实施偏移直线插补动作。

未指定本地坐标系时,以本地0(基础坐标系)为基准,实施偏移PTP 动作。

无视由点数据提供的姿势标志并保持当前的姿势标志。但垂直6 轴型机器人情况下可自动变更姿势标志,以减小关节移动量。

BMove 的速度和加减速度分别使用SpeedS 和AccelS 的设定值。有关速度与加减速度之间的关系,不过,指定ROT修饰参数时的速度和加减速度分别使用SpeedR 和AccelR 的设定值。此时,SpeedS 和AccelS 的设定值变为无效状态。

通常的移动距离为0,仅姿势变化时,会发生错误。通过附加ROT 修饰参数并以工具姿势变化的加速度优先,可不出错误地进行动作。已经附加ROT 修饰参数时,如果没有姿势变化,并且移动距离不是0,则会发生错误。

另外,相对于移动距离,工具姿势变化速度过大时,或指定的转速超过机械手限度时,也会发生错误。此时,请降低指定速度,或附加ROT 修饰参数,并以姿势变化的加减速度优先。

通过使用Till 修饰符,可在Till 条件成立时于动作中途对机器人进行减速停止,完成BMove 动作。

通过使用Find 修饰符并且动作期间Find 条件的值为真(True)时,将点数据保存到FindPos 中。

可使用!并行处理!,与动作并行执行其他处理。

注意

与CP 同时使用BMove

如果使用CP 参数,动作命令则会在开始减速的同时将控制移交给后续语句。这在用户连续发出几个动作命令,要以一定的速度进行连续动作时非常便利。为未指定CP 的BMove 命令时,机械臂必须减速,以停在指定的目标位置上。

BMove 使用示例

> BMove XY(100, 0, 0, 0) '(在本地坐标系中)向X 方向移动100mm

Function BMoveTest

Speed 50

Accel 50, 50

SpeedS 100

AccelS 1000, 1000

Power High

P1 = XY(300, 300, -20, 0)

P2 = XY(300, 300, -20, 0) /L

Local 1, XY(0, 0, 0, 45)

Go P1

Print Here

BMove XY(0, 50, 0, 0)

Print Here

Go P2

Print Here

BMove XY(0, 50, 0, 0)

Print Here

BMove XY(0, 50, 0, 0) /1

Print Here

Fend

[输出结果]

X: 300.000 Y: 300.000 Z: -20.000 U: 0.000 V: 0.000 W: 0.000 /R /0

X: 300.000 Y: 350.000 Z: -20.000 U: 0.000 V: 0.000 W: 0.000 /R /0

X: 300.000 Y: 300.000 Z: -20.000 U: 0.000 V: 0.000 W: 0.000 /L /0

X: 300.000 Y: 350.000 Z: -20.000 U: 0.000 V: 0.000 W: 0.000 /L /0

X: 264.645 Y: 385.355 Z: -20.000 U: 0.000 V: 0.000 W: 0.000 /L /0


TMove:

TMove 使用示例

>TMove XY(100, 0, 0, 0) '(在工具坐标系中)向X 方向移动100 mm

Function TMoveTest

Speed 50

Accel 50, 50

SpeedS 100

AccelS 1000, 1000

Power High

Tool 0

P1 = XY(300, 300, -20, 0)

P2 = XY(300, 300, -20, 0) /L

Go P1

Print Here

TMove XY(0, 0, -30, 0)

Print Here

Go P2

Print Here

TMove XY(0, 0, -30, 0)

Print Here

Fend

[输出结果]

X: 300.000 Y: 300.000 Z: -20.000 U: 0.000 V: 0.000 W: 0.000 /R /0

X: 300.000 Y: 300.000 Z: -50.000 U: 0.000 V: 0.000 W: 0.000 /R /0

X: 300.000 Y: 300.000 Z: -20.000 U: 0.000 V: 0.000 W: 0.000 /L /0

X: 300.000 Y: 300.000 Z: -50.000 U: 0.000 V: 0.000 W: 0.000 /L /0


CVMove

格式:CVMove 文件名 [CP] [Till | Find] [SYNC]

参数

文件名 以字符串表达式或直接以字符串指定由Curve 命令创建的保存在控制器中的文件名。不能指定路 径。另外,也不受ChDisk 等的影响。

CP 指定最后的点后面的路径运动。可省略。

Till | Find 记述Till 或Find 表达式。可省略。

Till | Find

Till Sw(表达式)= {On | Off}

Find Sw(表达式)= {On | Off}

SYNC 预约动作命令。在通过SyncRobots 的动作开始之前,机器人不进行动作。

说明

CVMove 用于执行设置文件数据的自由曲线的CP 动作。此文件必须预先被Curve 命令所创建。如果文件名中没有扩 展名,将自动附加.CVT。

基于CVMove 的CP 动作的速度和加减速度,可以使用SpeedS 和AccelS 命令进行变更。Curve 命令可以在使用以前Local 定义的点执行动作时,通过Local 命令变更位置。执行CVMove 时,请充分注意与周围设备有无干扰。特别是,垂直6 轴型机器人,如果在相邻2 点之间使姿势急剧变化,根据三维花键函数的性质,其前后的点开始改变姿势并且可能会出现预想不到的动作。执行CVMove 时,请注意与周围装置的干扰并进行充分的轨迹确认。

点的指定尽量以等间隔详细指定,请不要使相邻2 点间的夹具末端姿势发生急剧变化。如果附加了CP 参数,则可在开始动作减速时叠加后续动作命令的加速。此时,不对目标坐标进行定位。

CVMove 使用示例

在下例中,使用叫做MYCURVE.CVT 的自由曲线文件,跟踪通过P1~P7 的曲线,通过P2 打开输出端口并通过P7 使机械臂减速。

设置自由曲线

> curve "mycurve", O, 0, 4, P1, P2, On 2, P(3:7)

以直线使机械臂向P1 移动

> jump P1

以定义的自由曲线“mycurve”移动机械臂

>cvmove "mycurve"

二、速度指令

1、PTP指令的速度设定

解释:用于设定动作的速度的指令

PTP指令的速度和加/减速度设定、CP指令的速度和加/减速度设定。

PTP动作速度:Speed 如 Speed 100 ‘以百分比为单位

PTP动作加/减速度:Accel 如 Accel 100,100 ‘以百分比为单位

以PTP方式动作,最大速度百分比为100,最大加减速度百分比为120.

参数

速度设定值 以表达式或数值指定相对于最大动作速度(PTP 动作)的比例(1~100 的整数,单位:%)。

转移速度 以表达式或数值指定Jump 命令时的转移动作速度(1~100 的整数,单位:%)。可省略。仅Jump 命 令时可设置。

接近速度 以表达式或数值指定Jump 命令时的接近动作速度(1~100 的整数,单位:%)。可省略。仅Jump 命令时可设置。

说明

Speed 用于指定所有PTP 动作命令的速度。其中包括有关Go、Jump、Pulse 等动作命令的速度设置。速度设置是指以1~100 的整数指定相对于最大速度的比例(%)。如果指定“100”,则以最大速度进行动作。

转移速度和接近速度仅适用于Jump 命令。如果省略,速度设定值则为转移速度和接近速度的设定值。

2、CP指令的速度设定

CP动作的速度表示: Speeds 如 Sppeds 1000

CP动作的加/减速度表示: Accels 如 Accels 10000,10000

参数

速度设定值 以表达式或数值指定速度(整数,单位:mm/sec)。

转移速度 以实数或表达式指定Jump3 转移速度(单位:mm/sec)。可省略。

接近速度 以实数或表达式指定Jump3 接近速度(单位:mm/sec)。可省略。

参数的有效设定值: 0.1~2000


相关推荐

豆包编程能力升级:支持HTML代码实时预览、交互

IT之家3月19日消息,IT之家从豆包官方获悉,豆包宣布AI编程功能迎来三项升级,包括HTML预览、Python运行、生成完整项目。据介绍,目前豆包支持HTML代码实时预览和交互...

1898款游戏!80、90回忆杀,重温旧梦,快速搭建中文DOS游戏服务

本内容来源于@什么值得买APP,观点仅代表作者本人|作者:羊刀仙大家好,我是羊刀仙。本期来介绍一个特别情怀向的游戏项目:chinese-dos-games。这套包含1898款经典中文DOS游戏的合集...

利用 SVG 文件内的 HTML 代码进行网络钓鱼攻击

随着时间的推移,网络钓鱼攻击的技术越来越精妙,旨在欺骗用户并规避安全措施。攻击者会使用欺骗性的URL重定向策略,例如将恶意网站地址附加到看似安全的链接后,在PDF中嵌入链接,以及发送HTML...

aardio + AI 大模型自动编写 Python 代码、网页前端代码的经验与技巧

在AI时代,老式的编程习惯完全被颠覆。原来可能要一大堆插件或工具辛苦堆出来的程序,现在只要把AI调教好了就行。aardio支持调用十几种编程语言,这很适合发挥AI大模型的优势。对于AI...

用AI制作游戏就是如此简单!

很多人不知道如何利用AI提高效率,不知道AI能帮我们做什么,其实可以让我们实现很多自己根本不懂的领域取得直观体验,比如利用DS或者豆包,输入“我想做一个简单的单机俄罗斯方块游戏”,AI会给出phtho...

不会写代码?教你用DeepSeek 三步做出小游戏

如今,借助人工智能技术,哪怕你完全看不懂代码,也能通过DeepSeek制作出属于自己的网页版大鱼吃小鱼游戏。接下来,就为大家详细介绍制作过程。第一步、向DeepSeek描述需求为何要做网页版的...

《暗黑1》被移植成网页游戏 可在浏览器上玩了

《暗黑1》,这款1996年发售的“鼠标杀手”砍杀游戏,现在可以在浏览器上玩了。国外专注暴雪游戏的Rivsoft分享了一个《暗黑1》的共享版本,该版本只包含地下城的头2个地区和三个角色职业中的一个。不...

网页代码过滤 轻松获取专辑目录

通过过滤网页代码,可以将网页上显示不全的长文件名列表完整地提取出来。我有一个含有75个视频文件的《中医诊断学》课件,文件名是以01.RMVB、02.RMVB……75.RMVB这种格式命名的。我希望能找...

IDEA 2021首个大版本发布,Java开发者感动哭了(附新亮点演示)

工欲善其事,必先利其器!就在不久之前,Java领域的开发神器IntelliJIDEA终于迎来2021年的一个重要的大版本更新:IntelliJIDEA2021.1。现如今大量的Java开发者深度...

View Source:在 iOS 上轻松查看网页源代码

在移动互联网时代,移动端的应用和web体验都尤为重要,在PC上有很多web前端工具可以选择,而在移动端貌似就少之又少了,在NEXT出现的ViewSource能帮你在iOS上查看...

当我们《寻找房祖名》,我们能找到什么?

游戏葡萄原创专稿,未经允许请勿转载柯震东,因为在九把刀电影《那些年我们追过的女孩》中饰演男主角柯景腾而走红的台湾影星,在昨天被爆出了和著名演员成龙之子房祖名吸毒被抓的丑闻,一时间相关讨论席卷社交网络。...

多用途游戏娱乐新闻网站HTML5模板

Retnews是一个响应式的HTML新闻,博客,杂志网站模板,可以使用这套前端模板简约很多设计的工作。模板有许多特性适合流行的主题商业、时尚,游戏,娱乐,生活方式、体育、科技、政治、旅行、天气、视频等...

简约好看的个人引导页HTML源码下载

源码介绍一款非常简约好看的个人引导页HTML源码,非常适合个人主页以及个人导航使用,纯HTML不需要数据库,上传服务器即可使用!...

教你如何在微信公共平台上插入小游戏(图文教程)

很多玩微信公共平台的朋友都想在公共平台上面插入几个小游戏,用来跟用户之间互动,这里花生来分享一下如何在微信公共平台上插入游戏,以及如何制作html5微信小游戏。首先是找游戏,总共有三个方法,本人比较倾...

html5重力感应剖析附源码

下面是测试html5重力感应的demohttp://bbs.qietu.com/html/zhongli/http://www.qietu.com/html/f2/qqqianbao/demo2是切图...