11. 跳转至

11. 多段轨迹融合规划#

该规划器在多个规划路径点之间生成速度和加速度平滑的连续轨迹。

如果给定的 blend_radius(以米为单位)大于零,则相应的轨迹将与以下目标合并,以使机器人不会停在当前目标处。当 TCP 比给定的blend_radius更接近目标时,它就可以向下一个目标行进。 当离开当前目标周围的球体时,机器人将返回到它不进行混合时所走的轨迹上。

如下图:

多段轨迹融合规划

轨迹融合会有限制。只有第一个目标可以有开始状态。后续轨迹从前一个目标开始。并且两个后续 blend_radius 球体不得重叠。

blend_radius(i) + blend_radius(i+1)必须小于目标之间的距离。

使用轨迹融合时,需在 options 中设置以下参数:

  • velocity_scaling_factor:最大关节速度的缩放因子
  • acceleration_scaling_factor:最大关节加速度/减速度的缩放因子
  • sampling_time:采样间隔时间(以秒为单位)
  • allow_planning_time:允许的最大规划时间
  • allow_blend_fail:允许融合失败,若开启,则轨迹融合失败时退化到blend_radius = 0的情况

注: 轨迹 blending 会在段与段的交界处做平滑过渡(等价于把拐点附近的一小段改成平滑曲线),这样就允许轨迹在 waypoint 附近偏离一点点,换来速度/加速度的连续性与更短的执行时间。它会拟合路径段并重新采样,与严格时间参数化不同,输出的 waypoints 可能在一定容差内偏离原始轨迹

注:轨迹融合半径(blend_radius)暂不开放修改