2. 轨迹跟踪误差定义:跟随误差、轮廓误差、定位误差的数学定义

做伺服位置环控制这么多年,我见过太多工程师一上来就调PID参数,结果调了半天,设备跑出来的轨迹还是歪的。为什么?说白了,你连「误差」到底指什么都没搞清楚。

今天咱们就把这三个最核心的误差概念掰开揉碎。我个人习惯把它们比作「三个不同的放大镜」——看问题的角度不同,定义自然不同。

2.1 跟随误差(Following Error)

先问个问题:你给伺服发了一个位置指令,它真的能瞬间到达吗?

不能。电机有惯性,有响应延迟。所以实际位置总是落后于指令位置。这个「落后量」,就是跟随误差。

数学定义很简单:

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

其中:

  • θ_cmd(t):t时刻的指令位置
  • θ_act(t):t时刻的实际位置

我在项目中遇到过一台高速贴片机,跟随误差一直偏大。查了半天,发现是加速度前馈没开。你想想看,如果只靠位置环的P增益去追,高速下肯定追不上。这就好比让一个人跑100米,你喊「开始」他才起步,那肯定落后。

关键点:跟随误差是「时间维度」上的偏差。它衡量的是伺服系统对指令的响应速度。

我的经验:调试时先看跟随误差曲线。如果曲线是「锯齿状」,说明增益太高,系统在震荡。如果曲线是「斜坡状」,说明增益不够,或者前馈没加。

2.2 轮廓误差(Contour Error)

这个就更有意思了。轮廓误差,很多人把它和跟随误差搞混。我刚开始做多轴联动时也犯过这个错。

轮廓误差的定义是:实际轨迹上某一点,到指令轨迹的最短垂直距离。

数学上,对于二维平面轨迹:

e_c = min || P_act(t) - P_cmd(s) ||

其中:

  • P_act(t):t时刻的实际位置点
  • P_cmd(s):指令轨迹上的参数化曲线点
  • min表示求最短距离

为什么要单独定义轮廓误差?

我举个例子你就明白了。假设你加工一个圆形工件。如果两个轴的跟随误差都是1mm,但方向相反,那实际轨迹可能是个椭圆——轮廓误差很大。反过来,如果两个轴的跟随误差都是1mm,但方向相同,那实际轨迹就是个同心圆——轮廓误差反而很小。

核心区别:跟随误差看「时间延迟」,轮廓误差看「空间偏离」。一个是纵向的,一个是横向的。

避坑指南:我曾经在调试五轴机床时,只盯着跟随误差调,结果轮廓精度一直不达标。后来才发现,两个轴的跟随误差虽然都很小,但它们的相位差导致轮廓误差很大。所以,多轴系统一定要看轮廓误差!

2.3 定位误差(Positioning Error)

定位误差,这个最好理解。就是伺服系统到达目标位置后,实际停下来的位置和目标位置之间的偏差。

数学定义:

e_p = |θ_target - θ_settle|

其中:

  • θ_target:目标位置
  • θ_settle:系统稳定后的实际位置

注意,这里有个「稳定后」的概念。不是电机一停就算,而是等震荡衰减完才算。

定位误差和跟随误差有什么区别?

嗯,这里要注意:跟随误差是「运动过程中」的偏差,定位误差是「停止后」的偏差。你可以把跟随误差理解为「追着跑时的差距」,定位误差是「停下来后的差距」。

我的习惯:测定位误差时,我会让系统反复走同一个点位,比如来回走100次,然后看每次的停止位置分布。如果分布很散,说明系统重复性差,可能是机械间隙或者编码器分辨率不够。

2.4 三者关系与对比

为了让你看得更清楚,我整理了一张表:

误差类型 关注维度 典型场景 主要影响因素
跟随误差 时间 高速运动、加减速段 增益、前馈、惯量比
轮廓误差 空间 多轴联动、曲线加工 轴间同步、动态匹配
定位误差 终点 点位运动、定位停止 静差、死区、分辨率

你看,这三个误差其实是从不同角度去衡量同一个系统的性能。我个人的经验是:

  • 如果做点位控制(比如点胶机),优先关注定位误差
  • 如果做轨迹控制(比如雕刻机),优先关注轮廓误差
  • 如果做高速运动(比如贴片机),优先关注跟随误差

2.5 知识体系图

下面这张图,是我自己总结的「误差三角」关系,帮你理清思路:

轨迹跟踪误差知识体系 跟随误差 e_f = θ_cmd - θ_act 轮廓误差 e_c = min||P_act - P_cmd|| 定位误差 e_p = |θ_target - θ_settle| 时间维度 终点维度 空间维度 三者从不同维度描述伺服系统的跟踪性能 实际调试中需要根据应用场景选择重点关注对象

总结一句话:跟随误差是「追不上」,轮廓误差是「跑偏了」,定位误差是「停不准」。搞清楚了这三个,你调伺服就有了方向。

最后分享个小技巧:我每次拿到一个新系统,会先跑一个圆形轨迹,同时采集跟随误差和轮廓误差。如果跟随误差大但轮廓误差小,说明两个轴同步性好,调前馈就行。如果轮廓误差大,那就要检查轴间的动态匹配了。


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