2. 跟随误差定义:它到底是什么?

做伺服调校这么多年,我见过太多人一上来就调增益、改速度环,结果越调越乱。为什么?因为连最基本的「跟随误差」都没搞明白。今天我们就把这个概念彻底说清楚。

2.1 什么是跟随误差?

说白了,跟随误差就是「指令位置」和「实际位置」之间的差值。你让电机走到100mm,它只走到99.5mm,那0.5mm就是跟随误差。

但这里有个坑——很多人把跟随误差和定位误差搞混。我刚开始做项目时也犯过这个错。定位误差是停下来以后的偏差,而跟随误差是运动过程中的瞬时偏差。你想想看,电机在跑的时候,指令一直在变,实际位置永远在追,这个「追不上」的差距就是跟随误差。

核心定义:跟随误差 e(t) = 指令位置 Pcmd(t) − 实际位置 Pact(t)

单位:通常用脉冲数(pulse)或长度单位(mm、μm)表示。

嗯,这里要注意:跟随误差可以是正数,也可以是负数。正数表示实际位置落后于指令,负数表示实际位置超前于指令。我在做龙门同步时遇到过负数跟随误差,那通常是前馈参数设过头了。

2.2 跟随误差的数学表达式

数学上,跟随误差的表达式其实很简单,但不同场景下写法略有不同。我个人习惯用下面这种形式:

e(t) = θ_cmd(t) - θ_act(t)

其中:
e(t)      —— 瞬时跟随误差
θ_cmd(t)  —— t时刻的指令位置
θ_act(t)  —— t时刻的实际位置

如果考虑速度因素,还可以写成:

e(t) = ∫[v_cmd(τ) - v_act(τ)] dτ + e(0)

这个积分形式其实更有物理意义——跟随误差是速度差在时间上的累积。我在调试高速贴片机时,就靠这个公式定位了问题:速度环响应慢了,导致速度差一直存在,跟随误差越积越大。

对于数字控制系统,我们通常用离散形式:

e(k) = θ_cmd(k) - θ_act(k)

k —— 第k个采样周期

实用技巧:大多数伺服驱动器都会实时输出跟随误差值。我建议你在调试时把这个值接到示波器上,比看任何参数都直观。

2.3 跟随误差的物理意义

跟随误差到底代表了什么?我总结了三个层面:

层面 物理意义 实际影响
位置层面 实际位置与指令位置的瞬时偏差 加工精度、轨迹精度
速度层面 速度跟踪能力的直接体现 运动平稳性、加减速性能
力/力矩层面 等效于「弹性变形量」 系统刚度、振动特性

我曾经调试一台五轴加工中心,Z轴在高速下刀时总是过切。查了半天,发现跟随误差在加减速阶段飙到了0.3mm。说白了,就是伺服没跟上指令,实际轨迹走出了一个弧线。这就是跟随误差在位置层面的直接影响。

从控制理论角度看,跟随误差还有一个更深刻的含义——它代表了系统的跟踪刚度。你可以把伺服系统想象成一根弹簧:

  • 指令位置是弹簧的一端
  • 实际位置是弹簧的另一端
  • 跟随误差就是弹簧的拉伸量
  • 驱动力 = 跟随误差 × 增益(弹簧刚度)

这个类比我用了十几年,每次给新人培训都讲。你想想看,弹簧拉得越长,弹力越大。同样,跟随误差越大,伺服产生的纠正力也越大。这就是为什么增益越高,跟随误差越小——相当于弹簧变硬了。

避坑指南:我曾经在调试一台高速冲床时,为了减小跟随误差,把位置环增益调到了极限。结果跟随误差确实小了,但系统开始振荡,工件表面出现了振纹。记住:跟随误差不是越小越好,要在稳定性和精度之间找平衡。

下面这张图展示了跟随误差在整个伺服系统中的位置和作用:

跟随误差在伺服系统中的角色 指令位置 跟随误差 e(t) 控制器 实际位置 电机+负载 关键理解: 1. 跟随误差 = 指令位置 − 实际位置 2. 它是控制器的输入信号,控制器根据它的大小产生驱动力 3. 跟随误差越大,纠正力越大;但过大说明系统响应跟不上 4. 实际位置通过编码器反馈,与指令位置比较形成闭环

从这张图可以看得很清楚:跟随误差是整个闭环控制的「驱动信号」。没有它,控制器就不知道该怎么出力。我经常跟团队说:跟随误差是伺服系统的语言——它告诉你系统当前的状态,也告诉你该怎么调整。

2.4 几个关键点总结

  • 跟随误差 ≠ 定位误差:一个是动态偏差,一个是静态偏差
  • 跟随误差是速度差的积分:速度跟不上,误差就会累积
  • 跟随误差是控制器的输入:它直接决定了控制器的输出力矩
  • 跟随误差不是越小越好:过小的跟随误差往往意味着系统接近不稳定

我的调试习惯:拿到一台新设备,我第一件事就是看跟随误差曲线。如果曲线平滑、没有突变,说明系统底子不错。如果曲线毛刺多、波动大,那先别急着调增益,检查机械连接和编码器信号更靠谱。

好了,跟随误差的定义就讲到这里。记住这三个层面:位置偏差、速度跟踪、等效刚度。搞懂了这些,后面调参数的时候你就能知道每个旋钮到底在干什么。