机器人三次多项式插值和带抛物线过渡的线性插值法详解


在机器人轨迹规划中, 三次多项式插值和**带抛物线过渡的线性插值(LSPB)**是两种最基础、最常用的方法。它们分别对应“平滑但不可控速度”和“可控速度但加速度有突变”的典型场景。

下面详细拆解这两种方法。


一、三次多项式插值

这种方法为每一段关节空间轨迹生成一个三次多项式函数 θ ( t ) \theta(t) θ(t),保证位置和速度在起点和终点连续。

1. 数学模型

设单关节从起点 θ 0 \theta_0 θ0 运动到终点 θ f \theta_f θf,总时间 t f t_f tf,起点速度为 v 0 v_0 v0,终点速度为 v f v_f vf
三次多项式形式:

θ ( t ) = a 0 + a 1 t + a 2 t 2 + a 3 t 3 \theta(t) = a_0 + a_1 t + a_2 t^2 + a_3 t^3 θ(t)=a0+a1t+a2t2+a3t3

速度:

θ ˙ ( t ) = a 1 + 2 a 2 t + 3 a 3 t 2 \dot{\theta}(t) = a_1 + 2a_2 t + 3a_3 t^2 θ˙(t)=a1+2a2t+3a3t2

代入边界条件:

θ ( 0 ) = θ 0 = a 0 θ ˙ ( 0 ) = v 0 = a 1 θ ( t f ) = θ f = a 0 + a 1 t f + a 2 t f 2 + a 3 t f 3 θ ˙ ( t f ) = v f = a 1 + 2 a 2 t f + 3 a 3 t f 2 \begin{aligned} \theta(0) &= \theta_0 = a_0 \\ \dot{\theta}(0) &= v_0 = a_1 \\ \theta(t_f) &= \theta_f = a_0 + a_1 t_f + a_2 t_f^2 + a_3 t_f^3 \\ \dot{\theta}(t_f) &= v_f = a_1 + 2a_2 t_f + 3a_3 t_f^2 \end{aligned} θ(0)θ˙(0)θ(tf)θ˙(tf)=θ0=a0=v0=a1=θf=a0+a1tf+a2tf2+a3tf3=vf=a1+2a2tf+3a3tf2

解得:

a 0 = θ 0 , a 1 = v 0 , a 2 = 3 ( θ f − θ 0 ) − ( 2 v 0 + v f ) t f t f 2 , a 3 = − 2 ( θ f − θ 0 ) + ( v 0 + v f ) t f t f 3 a_0 = \theta_0,\quad a_1 = v_0,\quad a_2 = \frac{3(\theta_f - \theta_0) - (2v_0 + v_f)t_f}{t_f^2},\quad a_3 = \frac{-2(\theta_f - \theta_0) + (v_0 + v_f)t_f}{t_f^3} a0=θ0,a1=v0,a2=tf23(θfθ0)(2v0+vf)tf,a3=tf32(θfθ0)+(v0+vf)tf

2. 典型情况:起点与终点速度为零

v 0 = v f = 0 v_0 = v_f = 0 v0=vf=0

θ ( t ) = θ 0 + 3 ( θ f − θ 0 ) t f 2 t 2 − 2 ( θ f − θ 0 ) t f 3 t 3 \theta(t) = \theta_0 + \frac{3(\theta_f - \theta_0)}{t_f^2} t^2 - \frac{2(\theta_f - \theta_0)}{t_f^3} t^3 θ(t)=θ0+tf23(θfθ0)t2tf32(θfθ0)t3

此时加速度为线性变化(因为三次多项式求导二次为一次函数),起点和终点加速度不为零(分别为 6 ( θ f − θ 0 ) t f 2 \frac{6(\theta_f - \theta_0)}{t_f^2} tf26(θfθ0) − 6 ( θ f − θ 0 ) t f 2 -\frac{6(\theta_f - \theta_0)}{t_f^2} tf26(θfθ0))。

3. 特点

  • 优点:位置、速度、加速度均连续(二阶连续),无突变,对电机冲击小。
  • 缺点
    • 中间段速度不可控,可能超过关节极限。
    • 加速度在起点和终点不为零(若要求起止速度为零),意味着需要电机瞬间提供较大加速度。
    • 只能保证经过端点,不能精确经过中间点(除非拼接多段多项式)。

4. 适用场景

  • 单段点到点运动。
  • 对冲击敏感,且对速度曲线形状无特殊要求的场合。

二、带抛物线过渡的线性插值(LSPB)

这种方法为了克服纯线性插值(梯形速度曲线)在速度转折点加速度无穷大的问题,在两端用抛物线(匀加速/减)过渡,中间段保持匀速。

1. 基本思想

  • 加速段:恒定加速度 a a a(抛物线形状的位置曲线)。
  • 匀速段:速度恒定 v max v_{\text{max}} vmax
  • 减速段:恒定减速度 − a -a a(对称设计)。

2. 数学推导(以对称 LSPB 为例,起点终点速度为零)

设总行程 θ f − θ 0 = D \theta_f - \theta_0 = D θfθ0=D,总时间 t f t_f tf,加速度 a a a(正值)。
加速段时间 t a t_a ta,加速度段位移 1 2 a t a 2 \frac{1}{2} a t_a^2 21ata2
由于对称,加速和减速位移相等,匀速段位移 D − a t a 2 D - a t_a^2 Data2,匀速段时间 t m = D − a t a 2 a t a t_m = \frac{D - a t_a^2}{a t_a} tm=ataData2

总时间:

t f = 2 t a + t m = 2 t a + D − a t a 2 a t a = D a t a + t a t_f = 2t_a + t_m = 2t_a + \frac{D - a t_a^2}{a t_a} = \frac{D}{a t_a} + t_a tf=2ta+tm=2ta+ataData2=ataD+ta

给定 t f t_f tf D D D,需选择 a a a t a t_a ta 满足 a t a ≤ D / 2 a t_a \le D/2 ataD/2(保证有匀速段)且 a t a 2 ≤ D a t_a^2 \le D ata2D

3. 位置分段表达式

t b = t a t_b = t_a tb=ta(加速结束时间), t c = t f − t a t_c = t_f - t_a tc=tfta(减速开始时间), v max = a t a v_{\text{max}} = a t_a vmax=ata

  • 加速段 ( 0 ≤ t ≤ t a 0 \le t \le t_a 0tta):

θ ( t ) = θ 0 + 1 2 a t 2 \theta(t) = \theta_0 + \frac{1}{2} a t^2 θ(t)=θ0+21at2

  • 匀速段 ( t a ≤ t ≤ t f − t a t_a \le t \le t_f - t_a tattfta):

θ ( t ) = θ 0 + a t a ( t − t a / 2 ) \theta(t) = \theta_0 + a t_a (t - t_a/2) θ(t)=θ0+ata(tta/2)

  • 减速段 ( t f − t a ≤ t ≤ t f t_f - t_a \le t \le t_f tftattf):

θ ( t ) = θ f − 1 2 a ( t f − t ) 2 \theta(t) = \theta_f - \frac{1}{2} a (t_f - t)^2 θ(t)=θf21a(tft)2

4. 特点

  • 优点
    • 加速度有限(仅在起点、终点、加速‑匀速交接点有阶跃,但不为无穷大)。
    • 速度可严格控制在 v max v_{\text{max}} vmax 以内,适合受限于关节速度的机器人。
    • 计算简单,实时性好。
  • 缺点
    • 加速度不连续(在 t a t_a ta t f − t a t_f - t_a tfta 处有突变),理论上会激起机械振动。
    • 需要提前选定 a a a t f t_f tf a a a v max v_{\text{max}} vmax,若行程太短可能无匀速段,自动退化为三角形速度曲线。

5. 适用场景

  • 工业机器人快速搬运、喷涂等对路径精度要求不高但需严格控制最大速度的场合。
  • 多用于关节空间笛卡尔空间直线插补(与直线插补结合,变成“加速‑匀速‑减速”直线运动)。

三、两者对比表

特性 三次多项式插值 抛物线过渡线性插值 (LSPB)
加速度连续性 连续(线性变化) 不连续(在过渡点阶跃)
速度控制 中间速度不可预测,可能超限 能严格限制最大速度
计算量 简单,仅需解 4 个系数 需要判断是否有匀速段,计算过渡时间
对电机冲击 较小(加速度连续) 较大(加速度突变)
适用场景 精密装配、高平滑轨迹 高速搬运、点到点快速运动
过中间点方式 多段三次多项式拼接(需额外约束) 常与 PVT 模式结合,或使用高阶多项式过渡

四、实际应用建议

  • 若机器人负载较轻、刚性较好(如 SCARA、小型六轴),且希望运动极致平滑,优先选择五次多项式(加速度也连续)而不是三次——三次的加速度在端点不为零,仍有一定冲击。
    但若只能用三次多项式,注意检查中间速度是否超过关节限位。

  • 在通用工业机器人轨迹规划中,需要明确的“加‑匀‑减”阶段以便于时间最优控制,LSPB 是一个实用的选择。实际代码中常将 LSPB 与速度前瞻S 形曲线(加速度也连续,但计算更复杂)结合使用。

  • 一个常见陷阱:LSPB 中加速度突变会导致理论上的无穷大加加速度(jerk)。对于大负载或高精度机器人,这会引起残余振动。此时应改用 S 形速度曲线(七段式,加加速度有限)或五次多项式

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐