4. 单轴运动控制:梯形与S形速度规划、PID控制原理与参数整定、前馈补偿与扰动抑制

各位工程师朋友,今天我们来聊聊单轴运动控制。这是多轴协同的基础,也是整个晶圆平台控制系统的基石。说白了,如果单轴都跑不稳,多轴协同就是空中楼阁。

我在刚入行那会儿,总觉得单轴控制很简单——不就是让电机转起来嘛。直到有一次,一个晶圆平台在高速运动时出现了肉眼可见的抖动,我才意识到,这里面的门道深着呢。

4.1 梯形速度规划:简单但够用

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

为什么叫梯形?你想想看,速度从0开始,先线性上升,然后保持一段时间,最后线性下降。画出来就是个梯形。

核心公式:

  • 加速段:v(t) = v₀ + a·t
  • 匀速段:v(t) = v_max
  • 减速段:v(t) = v_max - a·(t - t₁)

我个人习惯用梯形规划做粗定位。为什么?因为它简单、计算量小、响应快。但要注意,梯形规划的加速度在拐点处是突变的,这会导致冲击力。

避坑指南:我曾经在一个项目中,直接用梯形规划驱动大惯量负载,结果在加速结束的瞬间,平台出现了明显的振动。后来加了S形规划才解决。

4.2 S形速度规划:平滑至上

S形速度规划,说白了就是给梯形加了个"圆角"。它把加速度的变化也做了平滑处理,引入了加加速度(Jerk)的概念。

S形规划分为七个阶段:加加速、匀加速、减加速、匀速、加减速、匀减速、减减速。听着复杂,但实际效果非常好。

我的经验:在晶圆平台这种高精度场景,我建议优先考虑S形规划。虽然计算量大了点,但换来的是更平滑的运动和更长的机械寿命。

// S形速度规划示例(简化版)
float S_curve_plan(float t, float v_max, float a_max, float jerk) {
    if (t < t1) {
        // 加加速阶段
        return 0.5 * jerk * t * t;
    } else if (t < t2) {
        // 匀加速阶段
        return v1 + a_max * (t - t1);
    } else if (t < t3) {
        // 减加速阶段
        return v2 + a_max * (t - t2) - 0.5 * jerk * (t - t2) * (t - t2);
    } else {
        // 匀速阶段
        return v_max;
    }
}

4.3 PID控制原理:老司机都懂

PID控制,比例-积分-微分控制。这三个字母,做运动控制的没人不知道。

参数 作用 影响
P(比例) 快速响应误差 增大P,响应变快,但可能超调
I(积分) 消除稳态误差 增大I,消除静差,但可能振荡
D(微分) 预测误差趋势 增大D,抑制超调,但可能放大噪声

嗯,这里要注意。PID不是万能的。我在项目中遇到过,单纯靠PID调参,怎么都调不到理想状态。后来加了前馈,问题迎刃而解。

4.4 参数整定:实战技巧

参数整定,说白了就是找平衡。我常用的方法有两种:

  1. Ziegler-Nichols法:先只加P,直到系统临界振荡,记录增益和周期,然后查表算出PID参数。
  2. 试凑法:先调P,再调I,最后调D。每次只改一个参数,观察响应。

我的习惯:先用Z-N法算个大概,然后手动微调。别指望一次调好,整定是个迭代过程。

4.5 前馈补偿:让控制更主动

PID是被动控制——它等误差出现了才去纠正。前馈是主动控制——它提前预测误差,提前补偿。

前馈补偿的核心思想:把已知的扰动或期望轨迹信息,直接加到控制量中。

举个例子:如果你知道平台要加速,那就提前给一个加速度前馈量。这样PID就不用等速度误差出现再去调整了。

// 前馈补偿示例
float feedforward_control(float desired_accel, float mass) {
    // 根据牛顿第二定律:F = m * a
    return mass * desired_accel;
}

4.6 扰动抑制:对抗不确定性

扰动是运动控制的天敌。摩擦、负载变化、外部振动,这些都是扰动。

常用的扰动抑制方法:

  • 观测器法:用状态观测器估计扰动,然后补偿
  • 自适应控制:在线调整控制器参数,适应变化
  • 鲁棒控制:设计控制器时考虑最坏情况

我曾经踩过的坑:在一个项目中,我忽略了摩擦力的非线性特性,结果低速时平台出现了爬行现象。后来加了摩擦补偿模型,问题才解决。

4.7 知识体系总览

下面这张图,是我整理的单轴运动控制知识体系。你可以把它当作一个检查清单,看看自己还有哪些地方没掌握。

单轴运动控制知识体系 单轴运动控制 速度规划 梯形规划 S形规划 控制器设计 PID控制 前馈补偿 扰动抑制 观测器法 自适应控制 参数整定 Z-N法 试凑法 图:单轴运动控制知识体系结构图

这张图把单轴运动控制分成了四个核心模块:速度规划、控制器设计、扰动抑制、参数整定。每个模块之间都有联系,不能孤立地看。

好了,这一章的内容就到这里。单轴控制是基础,但基础不牢,地动山摇。希望你能把这些内容吃透,后面讲多轴协同的时候,我们才能聊得更深入。


公众号:蓝海资料掘金营,微信deep3321