轨迹规划:关节空间与笛卡尔空间的插值方法

核心原理:为什么轨迹规划是机器人运动的“指挥棒”

轨迹规划的任务,是给定机器人起始位姿与目标位姿,在满足运动学、动力学以及工艺约束的前提下,生成一条随时间变化的运动序列。这条序列既要保证各关节运动连续、平滑,又要避免奇异位形、超出关节限位或与环境发生碰撞。从数学本质上看,轨迹规划是在机器人构型空间或工作空间中求解一条满足约束的插值曲线。

根据规划空间的不同,轨迹规划分为两大类:

  • 关节空间轨迹规划:将每个关节的角度视为独立的时间函数,直接对关节变量进行插值。计算量小,不会产生奇异问题,但末端执行器的路径在笛卡尔空间中往往不可预测(可能是曲线)。
  • 笛卡尔空间轨迹规划:在末端执行器的位姿空间(位置+姿态)中规划路径,如直线、圆弧等,再通过逆运动学映射为关节角序列。路径直观可控,但计算量大,且可能经过奇异点或超出关节运动范围。
选型直觉:若任务只要求“从A点到B点”,不关心中间路径形状(如点焊、搬运),优先选关节空间规划;若任务要求末端走直线或圆弧(如涂胶、弧焊、切割),则必须使用笛卡尔空间规划。

关节空间轨迹规划:多项式插值与梯形速度法

关节空间规划的核心是构造每个关节的角度函数 θ(t),使其满足起点和终点的位置约束,以及可选的的速度、加速度约束。常用的方法有三种:

1. 三次多项式插值

给定起点角度 θ₀ 和终点角度 θ_f,并假设起点和终点速度均为 0,则可用三次多项式描述:

θ(t) = a₀ + a₁·t + a₂·t² + a₃·t³

约束条件:
θ(0) = θ₀        θ(t_f) = θ_f
θ'(0) = 0        θ'(t_f) = 0

解得:
a₀ = θ₀
a₁ = 0
a₂ = 3(θ_f - θ₀) / t_f²
a₃ = -2(θ_f - θ₀) / t_f³

三次多项式保证位置和速度连续,但加速度在起点和终点处存在跳变,可能引起机械振动。

2. 五次多项式插值

若进一步约束起点和终点的加速度为 0,则需要五次多项式:

θ(t) = a₀ + a₁·t + a₂·t² + a₃·t³ + a₄·t⁴ + a₅·t⁵

约束条件增加:
θ''(0) = 0       θ''(t_f) = 0

五次多项式使位置、速度、加速度均连续,适合高速高精度场景,但计算量稍大。

3. 梯形速度曲线(T型曲线)

当对运动时间有明确要求时,常采用“匀加速—匀速—匀减速”三段式速度规划。设最大速度为 v_max,加速度为 a,则总时间 t_f 与位移 Δθ 的关系为:

若 Δθ > v_max² / a:
  加速段时间 t_a = v_max / a
  匀速段时间 t_c = (Δθ - v_max² / a) / v_max
  总时间 t_f = 2·t_a + t_c
否则(三角形速度曲线):
  t_a = sqrt(Δθ / a)
  t_f = 2·t_a

梯形速度曲线实现简单,在工业机器人中应用最广,但加速度存在阶跃,柔性稍差。更平滑的S型曲线(加加速度连续)可用于精密装配。

多关节同步问题:各关节运动时间必须一致。通常先按各关节的位移和速度限制分别计算所需时间,取最大值作为公共运动时间,再反算各关节的插值参数。

笛卡尔空间轨迹规划:直线与圆弧插补

笛卡尔空间规划需要解决两个核心问题:路径生成(如何描述期望的末端轨迹)和时间标定(沿路径运动的速度/加速度分布)。

直线插补

设起点位姿为 P₀(位置 p₀,姿态 R₀),终点为 P_f。位置部分采用线性插值:

p(t) = p₀ + s(t)·(p_f - p₀)

其中 s(t) 为归一化标量,从 0 到 1,可由梯形速度或S型速度曲线确定。
姿态部分可采用球面线性插值(SLERP):
R(t) = R₀ · exp(s(t) · log(R₀⁻¹ · R_f))

圆弧插补

当需要末端走圆弧时,通常用三点确定一个空间圆:起点 P₁、中间点 P₂、终点 P₃。先计算圆心 C 和半径 r,再在圆弧平面上按角度增量 Δφ 插值:

圆心 C 由三点共面条件及到三点距离相等求解:
|C - P₁|² = |C - P₂|² = |C - P₃|² = r²

角度增量 Δφ = v·Δt / r(v 为期望线速度)
每个插补点:P(φ) = C + r·[cosφ·u + sinφ·v]

其中 u、v 为圆弧平面内的正交基向量。

笛卡尔空间规划得到的每个路径点都必须通过逆运动学转换为关节角,再下发给伺服驱动器。若某点逆解不存在(超出工作空间)或接近奇异位形,则需调整路径或改用关节空间规划。

关键陷阱:笛卡尔直线路径在关节空间中往往表现为高度非线性的曲线。当末端接近奇异位形时,关节速度会急剧增大,可能超出电机额定转速。因此,规划前必须进行奇异点检测,必要时在奇异点附近插入过渡圆弧或降低速度。

案例:六轴机器人涂胶轨迹的混合规划

某六轴关节型机器人执行手机外壳涂胶任务,胶路包含三段直线和两段圆弧。实际工程中采用如下混合策略:

  1. 离线阶段:在CAD模型中提取胶路中心线,离散为路径点序列,标注每段是直线还是圆弧。
  2. 笛卡尔空间粗插补:对直线段采用梯形速度规划,圆弧段采用等角度增量插补,生成约每 2mm 一个的路径点(含位置和姿态)。
  3. 奇异点检查:对每个路径点求雅可比矩阵条件数,若条件数大于阈值(如 100),则将该点附近路径替换为三次B样条过渡曲线。
  4. 逆运动学求解:对每个路径点求解关节角,优先选择与上一时刻关节角变化最小的解(最小范数解)。
  5. 关节空间精插补:将逆解得到的关节角序列在关节空间进行五次多项式平滑,消除笛卡尔插补带来的微小加速度突变。

该方案既保证了末端路径的几何精度(±0.5mm),又通过关节空间平滑避免了振动,涂胶均匀性提升 30%。

误区与复盘:轨迹规划中的常见问题

误区 后果 正确做法
所有轨迹都用关节空间三次多项式 末端路径不可控,可能偏离期望路径 对路径有要求时改用笛卡尔空间规划
忽略加速度连续性 机械臂末端振动,减速机磨损加剧 高速场景使用五次多项式或S型速度曲线
笛卡尔路径点直接下发,不做平滑 关节速度波动大,跟踪误差超差 逆解后增加关节空间平滑滤波
未检查奇异点 关节速度指令饱和,触发急停 规划前计算雅可比条件数,避开奇异区域
各关节独立规划时间 末端轨迹与预期不符,运动不协调 统一运动时间,取各关节最大需求时间
复盘要点:轨迹规划的本质是“约束下的插值”。关节空间规划约束的是关节运动平滑性,笛卡尔空间规划约束的是末端路径形状。实际工程中常采用两级规划架构——笛卡尔空间粗插补保证路径,关节空间精插补保证平滑。调试时若出现路径偏移,优先检查逆解多解选择逻辑;若出现振动,优先检查加速度曲线是否连续。
轨迹规划双空间协同架构 任务输入 起始/目标位姿 路径约束/速度要求 路径形状 是否关键? 否 关节空间规划 三次/五次多项式 梯形/S型速度曲线 各关节独立插值 是 笛卡尔空间规划 直线插补 / 圆弧插补 姿态SLERP插值 生成末端路径点序列 奇异点检测 雅可比条件数 κ > 阈值? 是 → 路径调整 否 → 继续 逆运动学求解 多解选择:最小范数解 关节角序列输出 关节角序列 θ₁(t) ... θ₆(t) 时间同步 关节角序列 θ₁(t) ... θ₆(t) 含奇异规避修正 关节空间平滑 五次多项式滤波 最终轨迹:平滑关节角指令 下发至伺服驱动器 → 执行运动 关节空间:计算快、无奇异 | 笛卡尔空间:路径可控、需逆解与奇异检测