运动控制基础:位置、速度、加速度、加加速度(Jerk)

各位同学,欢迎来到第二章。这一章我们不讲复杂的算法,先聊聊运动控制里最基础、也最容易被忽视的几个概念。

位置、速度、加速度、加加速度。这四个词,你肯定都认识。但说实话,我在项目里见过太多人把它们的物理意义和工程意义搞混。尤其是加加速度(Jerk),很多人觉得它只是个数学概念,直到设备振动、电机过载、加工表面出现波纹,才回头来找它的麻烦。

所以这一章,我会从工程实践的角度,把这四个量的关系讲透。同时也会聊聊运动控制系统的组成——控制器、驱动器、执行器、反馈。这些东西,你每天都会打交道,但未必真正理解它们之间的配合逻辑。

1. 位置、速度、加速度、加加速度:从数学到物理

先看一张图,把四个量的关系理清楚。

运动学四层关系图 位置 p(t) 单位:mm / deg 速度 v(t) 单位:mm/s 加速度 a(t) 单位:mm/s² 加加速度 j(t) 单位:mm/s³ 微分 → ← 积分 微分 → ← 积分 微分 → ← 积分 💡 工程理解 • 位置对时间求导 → 速度;速度对时间求导 → 加速度;加速度对时间求导 → 加加速度 • 反过来,加加速度积分 → 加速度;加速度积分 → 速度;速度积分 → 位置 • 在运动控制中,我们通常规划位置曲线,然后通过微分得到速度、加速度、加加速度约束

说白了,这就是微积分在运动控制里的直接应用。位置对时间求导是速度,速度对时间求导是加速度,加速度再求导就是加加速度。反过来,从加加速度开始积分,一路回到位置。

但工程上,我们很少真的去算这些微分积分。控制器里跑的是离散的轨迹点,每个点都包含了位置、速度、加速度的信息。你只需要告诉控制器:我要从这里走到那里,速度不能超过多少,加速度不能超过多少。剩下的,控制器会帮你算。

1.1 位置:最直观,也最容易出错

位置,就是物体在空间中的坐标。在运动控制里,位置可以是直线位移(毫米),也可以是旋转角度(度或弧度)。

我见过最典型的错误,是位置单位搞混。有一次,一个同事把编码器的脉冲数直接当成了毫米数传给控制器。结果设备一启动,直接撞到硬限位。还好速度不快,不然就是事故了。

我的习惯:在系统设计阶段,就把所有位置量统一成「用户单位」。比如直线轴用毫米,旋转轴用度。然后在控制器里做一次脉冲到用户单位的换算。这样调试的时候,你看到的数据就是有物理意义的,不用再心里换算。

1.2 速度:决定效率,也决定安全

速度是位置的变化率。你想想看,一台机床,进给速度越快,加工效率越高。但速度太快,刀具磨损、工件表面质量下降、甚至机床振动都会找上门。

速度规划的核心,就是在不超过系统能力的前提下,尽可能快。但什么是系统能力?电机额定转速、机械结构承受能力、负载惯量比……这些都会限制最大速度。

我记得有一次调试一个龙门架,客户要求速度达到 2 m/s。电机选型没问题,但机械结构是铝型材搭的,一跑到 1.5 m/s 就开始抖。最后只能降速到 1.2 m/s,加了一堆加强筋才勉强稳住。所以,速度上限不是电机说了算,是机械说了算。

1.3 加速度:冲击的来源

加速度,就是速度的变化率。加速度越大,意味着速度变化越快,设备受到的冲击也越大。

在运动控制里,加速度通常被限制在电机额定转矩和机械结构能承受的范围内。但很多人忽略了一个问题:加速度的突变。

举个例子,你让电机从静止直接加速到 1 m/s²。在加速开始的瞬间,加速度从 0 跳变到 1 m/s²。这个跳变,就是加加速度无穷大。机械结构会感受到一个冲击,产生振动。这就是为什么很多设备在启动和停止时会有「咯噔」一下的感觉。

避坑指南:我曾经调试一台贴片机,贴装头在高速运动时总是有异响。检查了所有机械连接,都没问题。最后发现是加速度曲线太陡,加加速度过大。把加速度的上升时间从 10ms 延长到 30ms,异响消失,贴装精度也提高了。所以,加速度的平滑性,比加速度本身更重要。

1.4 加加速度(Jerk):被忽视的振动元凶

加加速度,是加速度的变化率。单位是 mm/s³ 或 m/s³。它描述的是加速度变化的快慢。

为什么加加速度重要?因为加加速度直接决定了机械振动的激励强度。加加速度越大,加速度变化越剧烈,机械结构受到的冲击力变化越快,越容易激起高频振动。

在高端运动控制中,比如半导体设备、精密加工中心、机器人,加加速度是必须约束的参数。通常的做法是:

  • S型速度规划:让加速度平滑变化,加加速度有限
  • 加加速度限制:在轨迹规划器中直接设置最大加加速度
  • 滤波器:在速度指令后加低通滤波器,平滑加速度变化

我个人的经验是:如果你不确定加加速度设多少,先设一个保守值。比如电机额定加速度的 10 倍作为加加速度上限。然后根据实际振动情况,逐步提高。不要一上来就追求极致的加加速度,设备会「抗议」的。

2. 运动控制系统的组成

聊完了运动学量,我们来看看实现运动控制的硬件系统。一个典型的运动控制系统,由四个核心部分组成:控制器、驱动器、执行器、反馈。

下面这张图,是我在项目里经常用来给新人讲解的框架图。

运动控制系统组成框架 控制器 PLC / 运动控制卡 轨迹规划 + 闭环控制 驱动器 伺服驱动器 / 步进驱动器 电流环 + 速度环 执行器 伺服电机 / 步进电机 将电能转化为机械能 反馈 编码器 / 光栅尺 位置 + 速度反馈 反馈信号(位置/速度) 💡 控制器发出位置/速度指令 → 驱动器执行电流控制 → 电机转动 → 编码器反馈位置给控制器,形成闭环

2.1 控制器:运动控制的大脑

控制器负责两件事:轨迹规划和闭环控制。

轨迹规划,就是根据目标位置、速度、加速度等约束,生成一条平滑的运动曲线。闭环控制,就是根据反馈的位置/速度,实时调整输出,让实际运动跟随规划轨迹。

常见的控制器有:

  • PLC:适合逻辑控制为主、运动控制为辅的场景
  • 运动控制卡:插在电脑里,适合复杂轨迹、多轴联动
  • 独立运动控制器:自带处理器和IO,适合中等复杂度的系统

我个人的建议是:如果系统只有 1-2 个轴,且轨迹简单,用 PLC 就够了。如果轴数多、轨迹复杂(比如机器人、CNC),还是上运动控制卡或独立控制器吧。PLC 的轨迹规划能力有限,强行用会把自己逼疯。

2.2 驱动器:把指令变成电流

驱动器接收控制器的指令(通常是速度或转矩指令),然后转换成电机需要的电流。

驱动器内部通常有三个环:电流环、速度环、位置环。电流环最快,速度环次之,位置环最慢。这三个环的带宽决定了系统的响应速度。

调试驱动器时,我一般先调电流环,再调速度环,最后调位置环。顺序不能乱。电流环调不好,速度环和位置环都是空中楼阁。

一个小技巧:很多驱动器有自动整定功能。但自动整定出来的参数,往往偏保守。如果你需要更高的动态性能,可以手动微调。我习惯在自动整定的基础上,把速度环比例增益提高 10%-20%,然后观察电机是否有啸叫或振动。没有的话,再往上加一点,直到临界点再回调 10%。

2.3 执行器:把电能变成运动

执行器就是电机。运动控制里最常用的是伺服电机和步进电机。

特性 伺服电机 步进电机
控制方式 闭环(带编码器反馈) 开环(通常无反馈)
低速性能 优秀,低速平稳 有低频振动
高速性能 优秀,可到数千转 转矩随转速下降
精度 高(取决于编码器分辨率) 中(取决于步距角)
成本 高 低
典型应用 机器人、CNC、精密定位 3D打印机、小型工作台

选型时,我通常会先算负载惯量比。伺服电机一般要求负载惯量比不超过 10:1,最好在 5:1 以内。超过这个范围,系统就很难调稳。步进电机对惯量比没那么敏感,但转矩会随转速下降,所以要注意高速时的转矩是否够用。

2.4 反馈:让系统知道自己在哪

反馈元件通常是编码器或光栅尺。编码器装在电机轴上,测量电机转角。光栅尺装在机械末端,直接测量负载位置。

反馈的分辨率决定了系统的定位精度。但分辨率不是越高越好。分辨率太高,控制器处理不过来,反而会引入噪声。我一般选择编码器分辨率比系统要求的定位精度高 5-10 倍就够了。

避坑指南:我曾经在一个项目里用了 23 位编码器的伺服电机,想着精度越高越好。结果控制器每 1ms 中断一次,处理 23 位的位置数据,CPU 占用率直接飙到 80%。后来换成 17 位编码器,精度完全够用,CPU 占用率降到 20%。所以,不要盲目追求高分辨率,够用就好。

3. 四个量的关系:一个完整的运动控制案例

最后,用一个简单的例子,把位置、速度、加速度、加加速度串起来。

假设你要让一个轴从位置 0 运动到位置 100mm,最大速度 100mm/s,最大加速度 500mm/s²,最大加加速度 5000mm/s³。

控制器会这样规划轨迹:

  1. 加加速阶段:加速度从 0 开始,以 5000mm/s³ 的速率增加到 500mm/s²。用时 0.1s。
  2. 匀加速阶段:加速度保持 500mm/s²,速度从 5mm/s 增加到 100mm/s。用时 0.19s。
  3. 减加速阶段:加速度从 500mm/s² 减小到 0。用时 0.1s。
  4. 匀速阶段:速度保持 100mm/s。用时约 0.7s。
  5. 加减速阶段:加速度从 0 开始反向增加。用时 0.1s。
  6. 匀减速阶段:加速度保持 -500mm/s²。用时 0.19s。
  7. 减减速阶段:加速度回到 0。用时 0.1s。

你看,整个轨迹被分成了 7 段。每一段都严格限制了加加速度、加速度和速度。这就是 S 型速度规划的基本思路。

在实际项目中,你不需要手动算这些。控制器会帮你算好。但理解这个过程,能让你在调试时知道:为什么设备会振动?为什么运动时间比预期长?为什么电机过载? 答案往往就在加加速度和加速度的约束上。