3、执行器响应分析:电机电流环带宽设置、减速器背隙导致的极限环、液压系统压力脉动抑制
执行器是抖动问题的最终输出端。很多时候,你查遍了传感器、算遍了算法,最后发现抖动就出在电机、减速器或者液压泵上。这一章,我们聚焦三个最常踩的坑:电流环带宽怎么设、减速器背隙怎么治、液压脉动怎么压。
核心观点:执行器层面的抖动,本质上是“能量”与“间隙”的博弈。电流环给多了会振,背隙没消除会振,液压油不干净也会振。这三件事,我建议你按顺序排查。
3.1 电机电流环带宽设置——不是越快越好
电流环是电机控制的最内环。它的任务很简单:让实际电流快速跟上指令电流。但“快”是有代价的。
我个人习惯把电流环带宽分成三档:
- 保守档(200-400 Hz):用于大惯量关节或结构刚性不足的机器人。抖动敏感,优先保稳定。
- 标准档(500-800 Hz):大多数工业人形机器人的常用区间。响应够快,又不至于激发出结构谐振。
- 激进档(1 kHz 以上):只有在小惯量、高刚性、且电流采样噪声极低时才会用。我一般只在实验室验证时开过,量产时很少碰。
为什么会抖?说白了,电流环带宽太高,会把电流采样中的高频噪声放大,然后通过电机扭矩直接注入机械系统。你想想看,一个 1 kHz 的电流纹波,如果刚好落在关节的某个结构模态上,那就是一个持续的激励源。
我的调试习惯:先从一个较低的带宽开始(比如 300 Hz),然后以 50 Hz 步进往上加。每加一次,用手摸一下关节外壳,或者看 FFT 频谱上有没有出现新的峰值。一旦出现,立刻退回上一档。
另外,电流环的 PI 参数也不是随便设的。我见过不少工程师直接套用电机厂商给的默认值,结果在机器人上抖得不行。原因很简单:厂商给的参数是在理想台架上测的,没有考虑你机器人的机械负载和结构柔性。
// 一个简单的电流环 PI 参数整定思路(伪代码)
// 1. 先设 Ki = 0,只调 Kp
// 2. 增大 Kp 直到电流出现振荡,记录临界增益 Kp_crit
// 3. 取 Kp = 0.6 * Kp_crit
// 4. 再设 Ki = Kp / (L / R) 的近似值,L 是电机电感,R 是电阻
// 5. 微调 Ki 直到阶跃响应无超调
注意:千万不要在机器人悬空时调电流环。没有负载时,系统阻尼很低,你调出来的参数一装上腿就废了。我建议让机器人站在地面上,或者至少挂一个模拟负载。
3.2 减速器背隙导致的极限环——一个被低估的元凶
减速器背隙,说白了就是齿轮之间的那点“空行程”。它本身不是抖动,但它会让你的控制系统陷入一种叫“极限环”的自激振荡。
我在项目中遇到过一台双足机器人,走路时髋关节总有一个 2-3 Hz 的持续抖动。位置环、速度环、电流环全查了一遍,参数调了无数遍,就是消不掉。后来拆开减速器一看,背隙已经磨到 0.2 度了。换了一个新减速器,抖动立刻消失。
为什么会形成极限环?
- 当电机反向时,背隙导致电机先空转一段,然后突然撞上齿轮。
- 这个“撞击”相当于给系统注入了一个脉冲激励。
- 如果控制器的积分项反应过度,就会在背隙边界来回切换,形成持续的振荡。
解决背隙抖动,我一般用三种方法:
| 方法 | 原理 | 适用场景 | 代价 |
|---|---|---|---|
| 机械预紧 | 双电机对拖,消除间隙 | 高精度关节 | 增加重量和功耗 |
| 死区补偿 | 在控制器中补偿背隙角度 | 背隙已知且稳定 | 需要离线标定 |
| 降低积分增益 | 减少积分项对背隙的敏感度 | 快速调试 | 会牺牲稳态精度 |
嗯,这里要注意:死区补偿不是万能的。我曾经在一个项目里试图用软件完全补偿 0.3 度的背隙,结果因为减速器磨损不均匀,补偿值一直在变,反而越补越抖。后来我学乖了——软件补偿只解决 70%,剩下的交给机械。
避坑指南:如果你发现某个关节在低速反向时出现“咔咔”声并伴随抖动,90% 是背隙问题。先别急着调参数,拆开看看齿轮吧。
3.3 液压系统压力脉动抑制——看不见的抖动源
液压驱动的机器人,抖动问题往往比电机驱动更隐蔽。因为液压系统的抖动源不在控制板里,而在油管里。
压力脉动,就是液压泵输出的流量不是连续的,而是有周期性的波动。这个波动会通过液压缸直接传递到关节上,变成你看到的抖动。
我处理过一个案例:一台液压人形机器人在站立时,膝盖关节有 5 Hz 左右的微小抖动。位置环和力控都查不出问题。后来我在液压泵出口处接了一个压力传感器,发现压力波动正好是 5 Hz。原因很简单——液压泵的柱塞数是 9,电机转速是 2700 rpm,算下来脉动频率正好是 2700 / 60 * 9 / 9 = 5 Hz(具体计算要看泵的类型)。
抑制压力脉动,我常用的手段:
- 蓄能器:在泵出口装一个气囊式蓄能器,吸收高频脉动。这是最直接的方法。
- 管路阻尼:适当增加油管长度或使用软管,利用管路的分布参数特性来滤波。
- 主动补偿:在伺服阀的控制信号中叠加一个反向脉动信号。这个方法效果最好,但需要精确知道脉动的频率和相位。
一个小技巧:如果你没有压力传感器,可以用加速度计贴在液压缸的外壳上。加速度信号的频谱中,如果出现与泵转速相关的峰值,基本可以断定是压力脉动。
另外,液压油的清洁度也会影响脉动。油里有气泡时,流体的可压缩性会突变,导致压力波动加剧。我建议每 500 小时换一次油,或者至少检查一下油液的含气量。
警告:不要在液压系统带压时拆卸管路。我曾经见过一个工程师因为没泄压就拆接头,被高压油喷了一脸。安全第一。
3.4 本章知识体系
下面这张图总结了执行器响应分析的三个核心维度,以及它们之间的关联。你可以把它当作排查时的路线图。
这张图把三个维度的排查路径和解决方案串在了一起。你从中心出发,先判断抖动来自哪个环节,然后沿着分支找到对应的解决手段。我个人习惯是:先看电流环,因为它最容易调;再看背隙,因为它最容易被忽略;最后才考虑液压脉动,因为它的排查成本最高。