第三章 运动曲线基础理论:梯形曲线、S型曲线、多项式曲线

各位同学,今天我们来聊聊运动曲线的那些事儿。

做电子凸轮,说白了就是让电机按照我们想要的轨迹去跑。但怎么跑得稳、跑得快、跑得准?这就得靠运动曲线来定义了。我做了十几年运动控制,见过太多因为曲线选型不当导致的抖动、过冲甚至机械损坏。嗯,这一章我们就把基础打牢。

3.1 梯形曲线:最简单,也最“暴力”

梯形曲线,顾名思义,速度曲线像个梯形。它分为三段:加速段、匀速段、减速段。

为什么叫梯形?你想想看,速度从0开始线性增加,到目标速度后保持一段,再线性减到0。画出来就是个梯形。

核心公式:

  • 加速段:v(t) = a * t,位移 s(t) = 0.5 * a * t²
  • 匀速段:v(t) = Vmax,位移 s(t) = Vmax * t
  • 减速段:v(t) = Vmax - a * t,位移 s(t) = Vmax * t - 0.5 * a * t²

我在项目中遇到过一个问题:用梯形曲线驱动一个高速贴片机,结果每次加减速时机器都在抖。为什么?因为梯形曲线的加速度在拐点处是突变的——从0瞬间跳到a,再从a瞬间跳到0。这会产生无穷大的加加速度(Jerk),机械结构受不了。

避坑指南:我曾经在包装机械上吃过亏。梯形曲线只适合对启停平稳性要求不高的场合,比如简单的传送带。如果你做的是精密定位,千万别用梯形曲线做末端加减速。

3.2 S型曲线:让运动更“温柔”

S型曲线解决了梯形曲线的痛点。它的加速度不是突变的,而是线性变化的。速度曲线从梯形变成了S形,所以叫S型曲线。

S型曲线分七段:加加速段、匀加速段、减加速段、匀速段、加减速段、匀减速段、减减速段。听着复杂,其实核心就一句话:让加速度的变化率(加加速度)可控

关键参数:

  • 最大加速度 Amax
  • 最大加加速度 Jmax
  • 目标速度 Vtarget

我个人的习惯是,只要设备对振动有要求,优先选S型曲线。比如数控机床的进给轴、机器人的关节运动,S型曲线几乎是标配。

小技巧:实际项目中,S型曲线的参数调优有个经验公式:Jmax = Amax / (0.1 * T),其中T是加速段时间。这样算出来的曲线,既不会太“肉”,也不会太“冲”。

3.3 多项式曲线:数学家的“万能钥匙”

梯形和S型曲线都有固定的形状。但有些场景,比如凸轮机构的特殊运动规律,需要自定义曲线形状。这时候多项式曲线就派上用场了。

3.3.1 三次多项式曲线

三次多项式:s(t) = a₀ + a₁t + a₂t² + a₃t³

它有4个系数,可以满足4个边界条件。比如:起点位置、终点位置、起点速度、终点速度。说白了,就是让曲线在两端的速度都为零。

我记得有一次做印刷机的飞达凸轮,要求启停位置速度为零,中间速度要平滑。用三次多项式,4个方程解4个未知数,搞定。

3.3.2 五次多项式曲线

五次多项式:s(t) = a₀ + a₁t + a₂t² + a₃t³ + a₄t⁴ + a₅t⁵

6个系数,可以满足6个边界条件。除了位置和速度,还能约束起点和终点的加速度。

为什么用五次?因为三次多项式只能保证速度连续,但加速度在端点处可能突变。五次多项式可以保证加速度也连续。说白了,就是更平滑。

我建议你在做高速凸轮时,至少用五次多项式。三次多项式在高速下容易产生冲击。

3.3.3 七次多项式曲线

七次多项式:s(t) = a₀ + a₁t + a₂t² + a₃t³ + a₄t⁴ + a₅t⁵ + a₆t⁶ + a₇t⁷

8个系数,可以约束位置、速度、加速度、加加速度(Jerk)在起点和终点的值。

七次多项式是“终极武器”。它能保证运动曲线的加加速度连续,机械冲击最小。但代价是计算量大,而且曲线形状不容易直观理解。

注意:我曾经在半导体设备上用过七次多项式,结果发现因为计算周期太长,导致控制周期跟不上。后来改用五次多项式加S型曲线组合,效果反而更好。所以,不是次数越高越好,要结合实际硬件能力。

3.4 三种曲线的对比与选型

曲线类型 加速度连续性 加加速度连续性 计算复杂度 适用场景
梯形曲线 不连续 无穷大 极低 低速、简单启停
S型曲线 连续 分段常数 中等 通用运动控制
三次多项式 不连续 不连续 简单轨迹插补
五次多项式 连续 不连续 中等 精密定位、凸轮
七次多项式 连续 连续 超精密、低振动

选型时我有个原则:够用就好。梯形曲线能解决的,别用S型;S型能解决的,别用五次多项式。因为越复杂的曲线,调试越麻烦,对硬件要求也越高。

3.5 知识体系总览

下面这张图,是我自己总结的运动曲线选型逻辑。你可以把它当作一个决策树来用。

运动曲线选型决策树 运动曲线选型 对平稳性要求低? 对平稳性要求高? 梯形曲线 S型曲线 多项式曲线 3次(基础) 5次(推荐) 7次(终极)

这张图的核心逻辑很简单:先问自己对平稳性的要求有多高。要求低,梯形曲线走起;要求高,再往下分——S型曲线适合通用场景,多项式曲线适合需要精确控制边界条件的场景。

我的经验:如果你刚开始做电子凸轮,我建议先从S型曲线入手。它比梯形曲线平滑,又比多项式曲线容易调参。等你把S型曲线吃透了,再根据实际需求去研究多项式曲线。一口吃不成胖子,运动控制这东西,得慢慢来。

好了,这一章的内容就到这里。梯形曲线、S型曲线、多项式曲线,这三种是电子凸轮最基础的“建筑材料”。后面我们会用这些曲线去搭建复杂的凸轮运动规律。嗯,先把基础打牢,后面才能盖高楼。

专注资料整理