振动03:控制回路与运动规划引起的振动

机器在目标位置附近来回抖,可能是控制器不断追赶滞后的反馈,也可能是电机轴已稳定、柔性负载仍在摇晃;换向时的敲击还可能来自背隙与接触。它们都能在频谱中留下峰,却需要不同的处理方法。

本篇把机械模型、反馈回路和运动指令放到同一条链路中,解释为什么增大增益、加滤波或减小 jerk 会产生收益与代价,并说明怎样通过同步记录建立证据。文中的数值是明确模型下的计算示例。

一、刚性伺服模型为什么解释不了柔性负载

最简单的转动模型把电机与负载视为一个刚体,忽略摩擦时有 J·角加速度=电机力矩−外部负载力矩。若电流环足够快,力矩到转速的模型近似 1/(Js),到位置近似 1/(Js²)。

这只适用于所关注频带内,轴、联轴器、皮带和结构的弹性变形足够小的情况。真实传动里,电机端先运动,负载端随后跟上;弹性元件储能再释放,就产生额外模态。

规划位置 → 位置 / 速度控制 → 电流环 → 电机惯量
↕ 弹性、阻尼、背隙
负载惯量 → 末端运动
↑ 编码器可能只测电机端,也可能还测负载端

指令经过位置、速度与电流回路驱动电机和柔性负载;电机编码器反馈与外部负载测量位于不同位置,电机端安静不能代表末端安静

图中的电机编码器参与位置与速度反馈,外部传感器作为独立观测。它们看到的运动不同,诊断时应明确测量位置。

两惯量模型:反共振与共振是不同特征

把减速比折算到同一侧,设电机惯量 Jm、负载惯量 Jl,连接刚度 kt 和扭转阻尼 ct。电机角度与负载角度为 θm、θl,外部负载力矩为 τl:

Jmθ¨m=τm−kt(θm−θl)−ct(θ˙m−θ˙l),J_m\ddot{\theta}_m= \tau_m-k_t(\theta_m-\theta_l)-c_t(\dot{\theta}_m-\dot{\theta}_l),

Jlθ¨l=kt(θm−θl)+ct(θ˙m−θ˙l)−τl.J_l\ddot{\theta}_l= k_t(\theta_m-\theta_l)+c_t(\dot{\theta}_m-\dot{\theta}_l)-\tau_l.

只为推导频率,取 ct=0、τl=0,得到电机力矩到电机转速的传递函数:

Gm(s)=Jls2+kts[JmJls2+kt(Jm+Jl)].G_m(s)=\frac{J_l s^2+k_t} {s\left[J_mJ_l s^2+k_t(J_m+J_l)\right]}.

它的反共振角频率和弹性共振角频率分别为:

ωar=ktJl,ωr=kt(1Jm+1Jl).\omega_{ar}=\sqrt{\frac{k_t}{J_l}},\qquad \omega_r=\sqrt{k_t\left(\frac1{J_m}+\frac1{J_l}\right)}.

取 Jm=0.002、Jl=0.008 kg·m²、kt=50 N·m/rad,可算得 far≈12.58 Hz、fr≈28.13 Hz。反共振是这个特定输入—输出通道的响应谷,共振是响应峰;有阻尼时谷与峰会变得有限,位置也可能改变。

电机端某频率响应很小,不表示负载端也不动。 改成负载角度、末端加速度或不同激励位置,传递函数的零点会变化;反共振不能被当作整台机器共有的“安静频率”。Kollmorgen 的 Bode 说明将机械柔性、惯量比、频响峰谷和稳定裕度放在同一分析框架中。

二、PID 增益、稳定裕度与延迟

响应更快,也更容易把柔性模态带进回路

理想连续 PID 的控制量为:

u(t)=Kpe(t)+Ki∫e(t) dt+Kde˙(t).u(t)=K_p e(t)+K_i\int e(t)\,dt+K_d\dot e(t).

P 使误差立即产生控制量,I 消除持续偏差,D 对误差变化作出响应。实际驱动器往往是位置、速度、电流嵌套回路,参数的单位和作用位置不同;不能把另一设备的三个数原样复制过来。

改动 可能的收益 需要同步检查的代价
增大 P 或速度环增益 更快跟踪、减少低频误差 交越频率上移,柔性模态或延迟可能侵蚀稳定裕度
增大 I 减少稳态偏差 饱和后的积分累积,低速摩擦附近反复过冲
增大 D / 速度反馈作用 改善部分频段的阻尼 测量噪声、量化差分与高频力矩增大
加低通或降低带宽 减少高频控制活动 额外相位滞后、跟踪与扰动抑制变慢

对开环 L(s),增益交越频率是 |L(jωc)|=1 的位置,相位裕度反映到 −180° 还剩多少相位余量。有多个交越点时需全部分析,不能只看一个好看的数字;闭环带宽与开环交越频率也不是严格相同的定义。参见 MathWorks 稳定裕度说明。

4 ms 的延迟为什么可能很重要

纯延迟为 e^(−sτ),在频率 f 产生相位滞后:

ϕdelay(f)=−2πfτ rad=−360fτ deg.\phi_{delay}(f)=-2\pi f\tau\ \mathrm{rad} =-360f\tau\ \mathrm{deg}.

在 50 Hz,4 ms 延迟对应 72° 滞后。假设原先在同一交越频率有 50° 相位裕度,单是这项附加延迟就足以耗尽余量;实际是否失稳,还要检查完整频响、交越点和非线性限制。MathWorks 延迟系统示例说明了延迟对带宽与闭环稳定性的影响。

延迟来源包括采样、总线传输、驱动器插补、计算、队列等待与滤波。平均周期 1 ms,不表示最大延迟只有 1 ms;周期抖动还使系统不再是固定延迟模型。记录实际周期分布、漏周期和命令年龄,避免仅凭配置中的“1000 Hz”判断实时性。

输出已限幅时,I 仍可能继续积累;解除饱和后会产生大幅回拉。anti-windup 应依据实际执行器限制工作,不能只限制 PID 内部输出而漏掉下游的电流、速度或力矩约束。MathWorks PID 文档分别说明了微分滤波、采样时间和 anti-windup。

三、采样、量化与滤波也能制造抖动

编码器位置看起来平滑,差分速度却可能跳动

若一圈有 N 个有效计数,角度分辨率为 Δq=2π/N。直接差分得到速度:

ω^[k]=q[k]−q[k−1]Ts.\hat{\omega}[k]=\frac{q[k]-q[k-1]}{T_s}.

取 N=131072 count/rev、Ts=1 ms,一个计数对应约 4.79×10⁻⁵ rad;一拍差一个计数就对应约 0.0479 rad/s 的速度变化。这是简化差分器的量化步长,不等于该编码器或驱动器的实际速度精度。

低速时,反馈可能连续几拍不变、随后跳一个计数。控制器若把这些跳动当成真实速度,就会产生高频电流活动;继续增大 D 可能放大问题。采用合理的速度估计、滤波或更合适的测量方式时,应同时核验低速精度与延迟。

采样率高,不自动等于测量频带足够

高于 Nyquist 频率的模拟振动可能混叠到低频;采样后的数字低通无法恢复已混叠的信号。采集链需要合适的抗混叠设计,记录还应检查传感器量程、削顶和安装共振。测量细节见 振动02:频谱与机械故障。

把位置平滑后再差分,或先差分再平滑,会得到不同的动态特性。长窗口平均虽然让曲线更漂亮,也会把反馈变旧。离线零相位滤波适合分析,不能直接当作实时反馈的无延迟实现。

软件层面,订阅队列积压、时间戳错误和多机时钟偏差,都可能让“当前反馈”实际上来自过去。首先比较数据的采样时间、接收时间与控制使用时间,再讨论控制增益。

四、低速粘滑、背隙与极限环

摩擦:积累、突破、回拉

静摩擦可以把负载暂时卡住,误差与积分继续增大;达到突破力矩后,运动突然发生,摩擦状态随速度变化,负载可能越过目标。控制器再反向修正,形成停顿—滑动—回拉。

若这种重复运动稳定地维持有限幅值,就可能是极限环;它不等同于线性模态的自由衰减,也不一定锁定在某个固有频率。原始 LuGre 摩擦模型论文把预滑、粘滑等动态摩擦行为纳入控制建模,提醒我们不能仅用常数阻尼替代全部摩擦。

诊断时对齐误差、I 项、力矩与低速反馈,检查运动突破前后是否出现一致的循环。摩擦补偿需要基于方向、速度与状态设计;过大的补偿在零速附近也可能引入抖动。不能从一次低速振荡直接断定必须增加积分。

背隙:电机动了,负载仍在间隙内

换向时,电机可能先跨过间隙,输出端没有立即响应。控制器看到误差持续存在而增加力矩;齿面重新接触时,储存的动能形成冲击,再激起结构模态。

只有电机编码器时,电机端的跟踪误差可能很小,却漏掉输出端的游隙和撞击。负载侧位置或外部加速度能提供额外证据。MathWorks Backlash 模型明确区分了接触、脱离和换向后的空程。

背隙模型不能替代齿面碰撞模型。回差补偿、机械预紧或双编码器控制,都要核验接触力、摩擦和温升;把补偿做得更激进,并不自动减少冲击。

五、梯形速度、S 曲线与 jerk

位置 q 的前三阶导数是速度、加速度和 jerk:

v=q˙,a=q¨,j=q....v=\dot q,\qquad a=\ddot q,\qquad j=\dddot q.

平移 jerk 单位为 m/s³,转动 jerk 为 rad/s³。梯形速度轨迹在理想模型中让加速度瞬间跳变,jerk 在切换点是脉冲;限制 jerk 则让加速度在有限时间内变化,形成 S 形速度过渡。

轨迹特征 梯形速度 有限 jerk 的 S 曲线
加速度切换 理想瞬时跳变 有有限斜坡或更平滑过渡
高频激励 切换点更容易激起宽频响应 通常减少突变,但仍可能激起特定模态
时间与约束 给定限速限加速度时常较紧凑 同约束下可能需要更多时间
验证重点 切换点的电流与残余振动 jerk、总时长、峰值电流与轮廓误差

同样移动1米且具有相同速度和加速度上限的两条积分一致轨迹;梯形速度需2.50秒并含理想jerk脉冲,jerk上限4米每三次方秒的S曲线需2.75秒,加速度采用有限斜坡

本图的位移、速度、加速度与 jerk 来自同一分段积分模型,两条速度曲线面积都为 1 m。有限 jerk 的 S 曲线在此组限制下增加 0.25 s;梯形轨迹的 jerk 箭头表示理想脉冲,高度没有有限数值。

例如最大加速度 2 m/s²、最大 jerk 20 m/s³,线性 jerk 段从 0 增到最大加速度至少需 2/20=0.1 s。这是某一段的斜坡时间,不是整个运动的时长;短距离时甚至达不到最大速度或最大加速度。Beckhoff 的 jerk 限制说明讨论了平滑程度与定位时间的取舍。

减小 jerk 后,不能一边固定所有速度加速度限制、一边要求原时长必然不变。若强行保持原时长,其他段的峰值加速度、电流或速度可能增加,需要重新规划并检查约束。

规划器平滑,执行器收到的指令仍可能不平滑

离散路径点、拼接段、重规划与模式切换可能破坏连续性。检查拼接处的位置、速度、加速度是否连续,以及控制器在两个点之间如何插补。只看规划器输出图,可能漏掉总线降采样、驱动器内部插补和跳过的指令点。

厂商的 jerk 参数还可能以百分比或功能开关表达。Kollmorgen S 曲线文档中,jerk 参数为 0 表示采用梯形配置,并不表示物理 jerk 恒等于零。读参数时先查对应控制器的定义。

六、姿态、负载与频率变化

机械臂伸展后,同一关节看到的等效惯量可能增大,结构刚度和模态耦合也可能变化。可用局部近似 fn≈(1/2π)√(keff/meff) 理解趋势,但多自由度机器真正的频率需要由质量、刚度和边界共同求解。

同一组 PID 在收拢姿态稳定,不保证伸展且带载时也有同样裕度。固定频率的陷波或整形器也可能偏离目标模态。记录姿态、负载质量、工具偏心、夹持条件和温度,使频率变化有可比较的背景。

增益调度或多工况滤波可以覆盖部分变化,但切换本身要连续、受限并经过验证。不要只在最容易稳定的一个姿态选参数;关注整个允许工作范围中的最低裕度与最大残余振动。

七、input shaping 与 notch 分别改变什么

输入整形:让后续指令抵消前面激起的振动

Input shaping 把原指令与一串带权延迟脉冲卷积:

us(t)=∑iAiu(t−ti),∑iAi=1.u_s(t)=\sum_i A_i u(t-t_i),\qquad \sum_i A_i=1.

单模态、无阻尼理想系统中,ZV 整形可把指令分为两个等权分量,间隔半个模态周期。若 fn=20 Hz,则间隔为 25 ms;后一个分量激起的振动在模型中抵消前一个留下的振动。

无阻尼 ZVD 的三个权重是 1/4、1/2、1/4,时间为 0、25、50 ms;它以更长的指令延迟换取频率误差附近的更好鲁棒性。带阻尼、多模态或带约束时,权重与时刻需要重新计算。Singer 的 MIT 原始研究及其 1990 年论文记录是这条方法的来源。

整形器通常改变参考输入,不会自动改变闭环自身的稳定性。它不能修好已松动的连接、消除外部持续扰动,或把一个不稳定的反馈回路变稳定;真实模态漂移、非线性接触和饱和也会留下残余。评估时包含增加的指令时长和到位等待时间。

陷波:削弱一个频带的回路活动

连续二阶陷波的一种形式为:

H(s)=s2+2ζzω0s+ω02s2+2ζpω0s+ω02,0<ζz<ζp.H(s)=\frac{s^2+2\zeta_z\omega_0s+\omega_0^2} {s^2+2\zeta_p\omega_0s+\omega_0^2},\qquad 0<\zeta_z<\zeta_p.

中心频率处幅值比为 ζz/ζp,低频与很高频增益趋于 1。离中心频率的相位也会改变,因此陷波位置、宽度、深度及所在信号路径都会影响闭环,而不是只把频谱峰剪掉。

把陷波放在指令路径、控制器前向路径或反馈路径,影响并不相同;数字实现还要检查实际采样频率与离散化频响。模态移动后,窄陷波可能漏掉目标,过宽则可能损失有效控制频段。参见 Kollmorgen 官方滤波指南。

选择输入整形、陷波或降低带宽,取决于主要问题是轨迹激励、回路共振还是测量噪声。不能只根据某个 FFT 峰的位置直接设置一个“通用滤波器”。

八、先机械、后回路,再检查轨迹

  1. 确认测量可信。 检查传感器安装、量程、时间戳与有效频带,复核是否真的发生运动,还是测量或显示造成的假象。
  2. 核对机械状态。 在符合设备维护要求的停机状态检查连接、支承、预紧、背隙与线缆牵扯。控制参数不能替代机械修复。
  3. 建立现有运行基线。 使用已批准的正常工况记录数据;保存姿态、载荷、驱动配置和故障前后的差异。
  4. 检查反馈与执行。 看延迟、周期抖动、噪声、饱和和积分累积,区分电机端与负载端响应。
  5. 检查指令与规划。 对齐振动起点与加速度切换、换向、重规划和模式切换。先离线或仿真验证改动,再按项目调试流程验证。

若需要频响辨识,应使用设备厂商支持的流程,由熟悉负载、限位和保护条件的人员执行。本篇不给机械在线扫频、解除保护或故意逼近失稳的操作步骤。

同步记录哪些信号

信号 用来回答的问题 容易遗漏的条件
原始规划与实际下发位置/速度 振动前,指令是否已出现跳变 规划器输出不一定等于驱动器收到的值
电机与负载反馈、跟踪误差 谁先动、谁还在振 测点、减速比、角度单位与时间戳
请求力矩、实际电流、限幅状态 控制器是否持续供能或饱和 电流不总能直接换成末端力
I 项、速度估计与滤波状态 积分或测量是否参与循环 保存滤波前后数据,避免只看平滑曲线
外部加速度 电机稳定时结构是否仍在振 安装频响、抗混叠与传感器同步
周期、命令年龄、漏周期 计算与通信是否改变反馈相位 平均频率不能代表最坏情况

用同一时钟或可核验的同步关系,把命令、反馈、电流和加速度对齐。ROS bag 适合保存应用数据,但若话题只有 50 Hz,就无法可靠描述几百 Hz 的伺服振动;需要驱动器高速记录或独立采集。ROS 2 控制回路说明可用于区分控制周期与通信周期。

看数据时先提出可证伪的判断

观察 优先检验的解释 需要的补充证据
加速度切换后振动,随后衰减 轨迹激起柔性模态 指令频带、模态频率、相同工况下残余变化
目标恒定,电流与误差持续周期变化 闭环振荡或非线性极限环 周期延迟、积分、摩擦与反馈量化
电机误差小,负载端仍摇晃 负载柔性或观测位置问题 双端反馈与外部加速度
每次换向出现短冲击 背隙、接触或补偿切换 负载空程、力矩起点、机械状态
换姿态或加负载后频率移动 模态或惯量变化 保持转速、轨迹和测点一致的比较

验证修改时,同时比较跟踪误差、残余振动、峰值与 RMS 电流、到位时间、温升及整个工作范围。只让一个频谱峰下降,可能把问题转移到另一个频段或增加了定位时间。最终应能说明改动削弱的是哪一条因果链,以及代价在什么工况下出现。

机械模型基础见 振动01,频谱证据与齿轮排查见 振动02,其余主题可从 振动分类继续阅读。

知识共享许可协议