99312_UR5_User_Manual_zh_E67ON_Global.pdf - 第165页
Mo veL WP _I WP _1 (b len d) WP _2 (b len d) if ( dig ita l_in put [1] ) t hen WP _F_ 1 el se WP _F_ 2 WP_I WP_1 WP_2 WP_F_1 WP_F_2 * 16. 5 : WP_ I 为 初 始 路 点 , 有 两 个 潜 在 最 终 路 点 WP _F_ 1 和 WP _F_ 2 , 具 体 取 决 于 条 件 表 达 式 …

r
WP_1
WP_2
WP_3
p1
p2
O
16.3:
在
(WP_2)
上方交融的半径为
r
,初始交融位置为
p1
,最后交融位置为
p2
。
(O)
是障
碍物。
如果设置了交融半径,机器手臂轨迹即会绕过路点从其周围经过,以使机器手臂不会停在该
点。
交融不能重叠,因此不能设置一个与上一路点或下一路点的交融半径重叠的交融半径,如图
16.4 所示。
WP_1
WP_2
WP_3
WP_4
*
16.4:
不允许交融半径重叠 (*)。
条件交融轨迹
交融轨迹受设置交融半径的路点以及程序树中的下一个路点影响。也就是说,在图 16.5 的程
序中,围绕 (WP_1) 的交融受 (WP_2) 影响。在本例中,当围绕 (WP_2) 交融时,其结果变得更
显而易见。
有两个可能的结束位置,为了确定下一个要交融的路点,机器人必须在输入交融半径时评估
digital_input[1] 的当前读数。
这意味着 if…then 表达式( 或确定下一个路点( 如可变路点) 的其他必要语句) 会在我们实际到
达 (WP_2) 之前进行评估,这在查看程序序列时有点违反直觉。如果某个路点是一个停止点,
后接判断下一个路点的条件表达式( 如:I/O 命令) ,当机器手臂停在该路点时执行该表达式。
UR5 154 用 户 手 册
版 权所 有 © 2009–2021UniversalRobotsA/S。保留 所 有 权利。

MoveL
WP_I
WP_1 (blend)
WP_2 (blend)
if (digital_input[1]) then
WP_F_1
else
WP_F_2
WP_I
WP_1
WP_2
WP_F_1
WP_F_2
*
16.5:WP_I
为初始路点,有两个潜在最终路点
WP_F_1
和
WP_F_2
,具体取决于条件表达
式。当机器人手臂进入第二个交融 (*) 时,将评估
if
条件表达式。
轨迹类型组合
可以在 MoveJ 和 MoveL 的所有 4 种轨迹类型的组合之间交融,但是特定组合将影响计算的交
融轨迹。有 4 个可能的组合:
1. MoveJ 到 MoveJ( 纯关节空间交融)
2. MoveJ 到 MoveL
3. MoveL 到 MoveL( 纯笛卡尔空间交融)
4. MoveL 到 MoveJ
图 16.6 对纯关节空间交融( 第 1 点) 与纯笛卡尔空间交融( 第 3 点) 进行了比较。它显示了相同
路点组的工具的两个潜在路径。
用 户 手 册 155 UR5
版 权所 有 © 2009–2021UniversalRobotsA/S。保留 所 有 权利。

WP_1
WP_2
WP_3
WP_1
WP_2
WP_3
16.6:
关节空间 (MoveJ) 与笛卡尔空间 (MoveL) 运动和交融。
在不同组合中,第 2、3 和 4 点将产生保持在笛卡尔空间里的原始轨迹边界内的轨迹。不同轨
迹类型( 第 2 点) 之间的交融示例可参见图 16.7。
WP_1
WP_2
WP_3
16.7:
从关节空间运动 (MoveJ) 到线性工具运动 (MoveL) 的交融。
但是,纯关节空间交融( 第 1 点) 可能会以不太直观的方式表现,因为机器人将设法在考虑速
度和时间要求的同时在关节空间中实现尽可能最平滑的轨迹。鉴于此,它们可能会偏离路点
指定的路线。尤其是在两个轨迹之间的关节速度存在明显差异时。
小心
:如果速度相差很大
UR5 156 用 户 手 册
版 权所 有 © 2009–2021UniversalRobotsA/S。保留 所 有 权利。