3. 电子凸轮基本原理
做电子凸轮这些年,我越来越觉得:搞不懂曲线数学,就像开车不看路。你调出来的运动可能能跑,但跑得顺不顺、稳不稳、会不会抖,全看你对曲线本质的理解。
这一章,咱们就聊聊三种最常用的曲线数学工具——多项式、三角函数、样条曲线。它们各自擅长什么,在凸轮里怎么用,有哪些坑要避开。
核心观点:没有万能的曲线,只有合适的组合。多项式负责平滑,三角函数负责柔顺,样条负责灵活拼接。
3.1 多项式曲线:最朴素的运动规律
多项式曲线,说白了就是用一个多项式函数来描述位置随时间的变化。比如最简单的三次多项式:
s(t) = a₀ + a₁·t + a₂·t² + a₃·t³
为什么三次多项式在凸轮里这么常见?因为它能同时约束位置和速度。你想想看,一个运动段有起点和终点,每个点都有位置和速度要求,四个条件正好对应四个系数。
我在项目中遇到过不少新手,一上来就用五次多项式。其实没必要。三次多项式已经能保证速度连续,对大多数应用足够了。五次多项式多出来的两个自由度,是用来约束加速度的——只有对冲击特别敏感的场合才需要。
| 多项式阶数 | 可约束条件 | 典型应用场景 |
|---|---|---|
| 3次 | 位置、速度 | 一般凸轮推程、回程 |
| 5次 | 位置、速度、加速度 | 高速凸轮、精密定位 |
| 7次 | 位置、速度、加速度、加加速度 | 超高精度、晶圆搬运 |
注意:多项式阶数不是越高越好。阶数越高,曲线越容易在端点附近产生"龙格现象"——就是那种莫名其妙的抖动。我曾经在一个包装机上试过9次多项式,结果末端速度振荡得厉害,最后老老实实换回5次。
3.2 三角函数曲线:天生的柔顺大师
三角函数在凸轮里最经典的应用,就是摆线运动(Cycloidal Motion)。它的位移公式长这样:
s(t) = h · [t/T - (1/2π)·sin(2π·t/T)]
其中 h 是总行程,T 是运动时间。
为什么摆线曲线这么受欢迎?因为它的加速度曲线是正弦波,起点和终点加速度都为零。这意味着什么?意味着启动和停止时没有冲击力。我做过一个高速贴片机项目,用三次多项式时末端总有点抖动,换成摆线曲线后,问题直接消失了。
三角函数曲线的另一个好处是:它的速度、加速度、加加速度都是连续的。你想想看,一个函数求导四次还是连续的,这在多项式里得用多少阶才能做到?
我的经验:当设备运行速度超过 300 转/分钟时,我优先考虑摆线曲线。低速时多项式够用,但高速时加速度的连续性直接影响设备寿命。
不过三角函数也有短板——计算量大。老一代的控制器算一次 sin 要几十微秒,实时性受影响。好在现在的处理器已经不成问题了。
3.3 样条曲线:自由拼接的艺术
样条曲线,你可以把它理解成"分段的多项式"。每一段都是低阶多项式,但在连接点处保证连续。
最常用的是三次样条(Cubic Spline)。它由多个三次多项式拼接而成,在每个连接点处保证位置、速度、加速度都连续。这就很厉害了——你可以在不同段用不同的运动规律,但整体看起来是一条光滑的曲线。
我在做印刷机凸轮时用过一次样条。那个凸轮需要在 120 度范围内完成"加速-匀速-减速"三段运动。用单一多项式根本做不出来,用样条就轻松搞定:
段1: 0°~30° 三次多项式加速
段2: 30°~90° 匀速段(一次多项式)
段3: 90°~120° 三次多项式减速
样条曲线的核心优势是灵活性。你可以把复杂的运动拆成若干段,每段用最合适的曲线类型,然后通过样条把它们"粘"在一起。
避坑指南:我曾经在样条曲线的连接点处吃过亏。当时只保证了位置和速度连续,忽略了加速度。结果机器跑起来后,在连接点处有明显的"咯噔"一下。后来加上加速度连续条件才解决。记住:至少保证 C² 连续(加速度连续)。
3.4 三种曲线的对比与选择
说了这么多,到底什么时候用哪种?我整理了一个对比表:
| 特性 | 多项式 | 三角函数 | 样条曲线 |
|---|---|---|---|
| 平滑性 | 中等 | 优秀 | 优秀 |
| 计算量 | 低 | 中 | 高 |
| 灵活性 | 低 | 低 | 高 |
| 端点冲击 | 有(低阶) | 无 | 可控 |
| 适用速度 | 中低速 | 高速 | 全速域 |
我的选择原则很简单:
- 简单运动、低速设备 → 三次多项式
- 高速设备、要求低冲击 → 摆线曲线
- 复杂多段运动 → 三次样条
3.5 知识体系总览
下面这张图,把三种曲线的关系和适用场景梳理清楚了:
3.6 实战中的曲线选择策略
说了这么多理论,来点实际的。我一般按这个流程选曲线:
- 先看速度——设备最高转速多少?低于 200 rpm,多项式就够了;高于 300 rpm,考虑三角函数。
- 再看运动段数——如果只有推程和回程,用单一曲线就行;如果有匀速段、停留段,必须上样条。
- 最后看精度要求——普通包装机,三次多项式没问题;晶圆搬运、医疗设备,至少五次多项式或摆线。
一个小技巧:如果你不确定选哪种,先用三次样条搭框架,然后逐段优化。样条的好处是改一段不影响其他段,调试起来特别方便。
嗯,这一章的内容就到这里。曲线数学是凸轮控制的根基,理解透了,后面调参数、做优化都会顺手很多。记住:没有最好的曲线,只有最合适的曲线。