4. 常用曲线类型(下):多项式曲线与三角函数曲线

上一章我们聊了梯形、S形这些基础曲线。说实话,做电子凸轮调优越往后走,你会发现基础曲线越来越不够用。为什么?因为实际工况往往有特殊要求——比如启停必须绝对平滑,或者某个区间需要精准的速度控制。

这时候就该多项式曲线和三角函数曲线登场了。这两种曲线在工业现场用得非常多,但很多人对它们的理解停留在「高阶=更平滑」这个层面。今天我就把它们的底细掰开来讲。

4.1 多项式曲线:阶次决定命运

多项式曲线说白了就是用多项式函数来拟合运动轨迹。它的核心参数就一个——阶次。阶次越高,曲线越平滑,但计算量也越大。

4.1.1 3次多项式曲线

3次多项式,也叫三次样条。它的数学形式是:

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

这个曲线能保证位置和速度连续,但加速度是线性变化的。我刚开始做凸轮时,觉得3次多项式已经够用了,直到有一次在高速贴片机上试——嗯,结果机器抖得跟筛子似的。

核心特性:

  • 位置连续 ✓
  • 速度连续 ✓
  • 加速度连续 ✗(只有线性变化)
  • 加加速度(Jerk)不连续 ✗

适用场景:

  • 低速、低精度要求的场合
  • 对冲击不敏感的物料搬运
  • 作为过渡曲线与其他曲线拼接

避坑指南:我曾经在包装机的切刀机构上直接用3次多项式做启停曲线,结果切刀在高速下产生明显振动,切出来的包装袋边缘全是毛边。后来换成5次多项式才解决。记住——3次多项式只适合低速场景,别贪便宜。

4.1.2 5次多项式曲线

5次多项式是工业现场最常用的曲线之一。它的形式是:

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

多了两个系数,换来的是加速度连续。这意味着什么?意味着运动过程中的力不会突变,机械冲击大幅降低。

对比项 3次多项式 5次多项式
位置连续 ✓ ✓
速度连续 ✓ ✓
加速度连续 ✗ ✓
加加速度连续 ✗ ✗
计算复杂度 低 中

我个人习惯在大多数通用场景下首选5次多项式。它比3次多项式多不了多少计算量,但平滑度提升了一个档次。

实用技巧:如果你用5次多项式做点对点运动,边界条件通常这样设置:

位置边界:s(0)=0, s(T)=S
速度边界:v(0)=0, v(T)=0
加速度边界:a(0)=0, a(T)=0

六个边界条件正好解六个系数。这样出来的曲线启停都非常柔和。

4.1.3 7次多项式曲线

7次多项式是多项式家族里的「高阶选手」。它的形式我就不写了,你想想看——多了两个系数,意味着可以多控制两个边界条件。

7次多项式最大的优势是:加加速度(Jerk)连续。这意味着整个运动过程中,力的变化率也是平滑的。对于精密光学设备、医疗设备这类对微振动极其敏感的场合,7次多项式几乎是标配。

7次多项式的边界条件(典型设置):

位置:s(0)=0, s(T)=S
速度:v(0)=0, v(T)=0
加速度:a(0)=0, a(T)=0
加加速度:j(0)=0, j(T)=0

八个边界条件,八个系数,完美闭合。

适用场景:

  • 高精度定位设备(如晶圆搬运)
  • 对振动敏感的检测设备
  • 需要极低残余振动的场合

注意:7次多项式不是万能的。它的计算量比5次多项式大不少,在低端控制器上可能跑不动。另外,阶次越高,曲线在中间段的「过冲」风险也越大。我曾经在调试一台高速点胶机时,7次多项式在中间段产生了约3%的位置过冲,差点把工件撞坏。后来加了限幅才解决。

4.2 三角函数曲线

三角函数曲线在电子凸轮里用得相对少一些,但在某些特定场景下,它的表现比多项式更好。

4.2.1 正弦曲线

正弦曲线的运动规律是:

s(t) = S/2 · [1 - cos(π·t/T)]

这个曲线的特点是:启停加速度为零,中间段加速度最大。说白了就是「两头轻、中间重」。我最早接触正弦曲线是在老式印刷机的飞达机构上,那个年代的控制器算力有限,正弦曲线计算简单,效果也不错。

优点:

  • 计算量极小(只需要一个cos函数)
  • 启停无冲击
  • 速度曲线平滑

缺点:

  • 加速度峰值较高(比5次多项式高约10%)
  • 中间段加速度变化剧烈

4.2.2 余弦曲线(修正正弦)

修正正弦曲线是在正弦曲线基础上改进的。它把正弦曲线的加速段和减速段做了调整,让加速度变化更均匀。数学形式稍微复杂一些:

s(t) = S · [t/T - sin(2π·t/T)/(2π)]

这个曲线在工业机器人上用得比较多。为什么?因为它能兼顾平滑度和加速度峰值。我见过不少机器人厂商在关节运动中使用修正正弦曲线,效果相当不错。

曲线类型 加速度峰值 计算量 平滑度 典型应用
正弦曲线 较高 低 中 低速搬运、老式设备
修正正弦 中等 中 较高 工业机器人、通用运动
5次多项式 中等 中 高 通用场景、包装机械
7次多项式 较低 较高 极高 精密设备、光学设备

4.3 曲线选择框架

说了这么多,到底怎么选?我画了一张图,把选择逻辑理清楚了。

多项式与三角函数曲线选择框架 运动需求分析 低速/低精度 高速/高精度 3次多项式 / 正弦曲线 5次多项式 / 修正正弦 7次多项式 适用:简单搬运、低速包装 注意:避免高速冲击场景 适用:通用工业、机器人 注意:检查加速度峰值是否超限 适用:精密设备、光学设备 注意:控制器算力要求高 选择建议 • 算力有限 → 正弦曲线或3次多项式 • 通用场景 → 5次多项式(首选)或修正正弦 • 精密场景 → 7次多项式(但需验证过冲) • 混合场景 → 不同区间拼接不同曲线

4.4 实战经验总结

做了这么多年运动控制,我总结了几条选型经验,分享给你:

  1. 别盲目追求高阶。我见过有人不管什么场景都用7次多项式,结果控制器算力不够,运动周期反而变长了。够用就好。
  2. 三角函数在低速场景有优势。它的计算量小,在老旧控制器上也能跑得很流畅。如果你在维护老设备,优先考虑正弦曲线。
  3. 5次多项式是「万金油」。如果你不确定选什么,选5次多项式大概率不会错。它在平滑度和计算量之间取得了很好的平衡。
  4. 注意边界条件。同样的曲线类型,不同的边界条件设置,出来的效果天差地别。我建议你在调试时先跑仿真,看看加速度曲线是否平滑。

一个小技巧:如果你需要更高的平滑度但又担心7次多项式的过冲问题,可以试试「5次多项式+末端修正」的方案。具体做法是:先用5次多项式生成基础曲线,然后在末端叠加一个小的修正函数来消除残余振动。这个方法我在半导体设备上用过,效果接近7次多项式,但计算量只增加了20%。