前言
在机器人关节装配好进行调试的时候,最让人头疼的往往不是不会调 PID,而是同样一组参数,今天运行良好,明天却出现抖动;空载时响应干脆,装上负载后却超调、掉速甚至啸叫。今天调试有异响明天可能就没了,你都没办法复现。机器人关节电机的问题,很少是单一参数造成的,它往往同时牵涉控制环、机械传动、传感器反馈和通信链路。
关节电机是机器人执行系统的核心:位置环决定走到哪,速度环决定走多快,电流环决定用多大力,而减速器、编码器和负载又配合把这些指令转化为真实的机械运动。也正因如此一个看似简单的关节抖了、超调或者到位慢,背后可能是增益不匹配、积分饱和、机械共振、背隙柔性、编码器噪声、通信延迟,甚至是惯量随姿态变化在作祟。如果只盯着某一组 PID 参数反复试,很容易陷入按下葫芦浮起瓢的循环。
本文把机器人关节电机中常见的振荡、超调、低速爬行、负载掉速、电流冲击、发热啸叫、减速器背隙、编码器异常和通信抖动等问题,放回完整的控制链路中去理解。希望读完之后,你面对一个具体现象时,能先判断问题出在哪一环,再决定先查什么、后调什么,而不是盲目改参数。毕竟,调参的目标从来不是“把增益调到最大”,而是让控制、机械与负载在真实工况下协同稳定地工作。
先看懂控制链
工业机器人关节通常采用三环级联控制,这是所有调试工作的基础框架。
| 控制环 | 核心职责 | 典型控制周期 | 调试优先级 |
|---|---|---|---|
| 电流环 (内环) | 控制电机电磁转矩,响应最快 | 10~20 kHz (50~100 μs) | 最先调试(或使用默认值) |
| 速度环 (中环) | 稳定转速,抑制负载扰动 | 1~3 kHz | 其次 |
| 位置环 (外环) | 决定最终定位精度和轨迹跟踪 | 500 Hz ~ 1 kHz | 最后调试 |
关键原则:内环的带宽必须高于外环,否则系统会振荡。调试顺序必须严格遵守“先电流 → 再速度 → 最后位置”的原则,反过来必震。
机器人关节一般采用串级控制结构:位置环套着速度环,速度环套着电流环。外环负责最终结果,内环负责快速执行并控制扰动,三环串级闭环伺服控制流程如下:
目标位置
↓
位置环:比较目标位置与位置反馈 → 输出速度指令
↓
速度环:比较速度指令与速度反馈 → 输出电流/转矩指令
↓
电流环:比较电流指令与电流反馈 → 输出PWM/电压
↓
电机 → 减速器 → 关节和负载
↑
位置/速度传感器反馈:位置给位置环,速度给速度环
↑
电流传感器反馈:电流给电流环
| 名称 | 作用 | 通俗理解 | 常见问题 |
|---|---|---|---|
| 位置环 | 比较目标角度和实际角度,输出速度指令 | 决定走到哪 | 到位慢、超调、停不稳 |
| 速度环 | 比较目标速度和实际速度,输出转矩或电流指令 | 决定走多快 | 加速慢、低速爬行、负载后掉速 |
| 电流环 | 控制电机电流,从而控制输出转矩 | 决定用多大力 | 电流冲击、啸叫、发热 |
| 减速器 | 把电机的高转速、小转矩变成关节的低转速、大转矩 | 电机和关节之间的“变速箱” | 背隙、柔性、换向冲击 |
| 编码器 | 测量电机或关节角度,速度通常由角度变化算出 | 关节的眼睛 | 跳变、噪声、零点偏差 |
| 负载 | 机械臂连杆、末端工具和工件 | 关节背着的东西 | 下垂、惯量变化、不同姿态表现不同 |
| 通信周期 | 控制器和驱动器交换指令、反馈的时间间隔 | 指令和反馈的“更新频率” | 延迟、抖动、丢包 |
位置环、速度环和电流环的基本公式是一样的。误差为 ,控制量为:
P 根据当前误差立即出力,I 负责消除长期存在的小偏差,D 根据误差变化趋势提前制动。放在不同控制环里, 和 的含义不同:位置环里是角度,速度环里是速度,电流环里是电流。
三个环怎么调
调试顺序应当从内到外:内环不稳定,外环再怎么调也只是在掩盖问题。外环的响应速度还要明显低于内环,否则位置环会把速度环的延迟当成误差,越调越振荡。
电流环通常由伺服驱动器内部完成,多数情况下只用 PI。可以在转矩或电流模式下给一个小阶跃,观察实际电流的上升和波形。P 加到响应足够快但不出现明显振铃,I 用来补足稳态误差。电流环一般不加 D,因为电流采样噪声大,D 会把噪声放大成 PWM 毛刺。如果电流已经打到限幅,先检查负载、重力补偿和电流限制,不要继续加增益。
速度环是关节调试的重点。先让位置环不参与,直接给速度指令,积分和微分置零,只留一个较小的 P。从额定速度的 5% 到 10% 开始给阶跃,逐渐加大 P,直到速度响应开始出现轻微振荡,再回退 20% 到 30%。然后慢慢加 I,观察负载变化后的恢复情况。加 I 后如果出现一两赫兹的慢摆,通常是积分太强或反馈延迟太大。速度环的 D 不是必需项,确实需要时也要加滤波,并重点检查低速时编码器速度估计是否稳定。
位置环通常先只用 P。给 0.5° 到 2° 的小角度阶跃,观察上升时间、超调和停止后的残余摆动。P 加到响应干脆但还没有持续振荡,再稍微回退。位置环的 I 只在确实存在静态误差时使用,而且要先确认重力补偿和摩擦补偿是否合理。位置环的 D 要非常谨慎,很多关节不用它也足够稳定;如果使用,应该小量增加,并对反馈做滤波。
轨迹跟踪不能全部依赖位置环 P。速度前馈、加速度前馈、重力补偿和摩擦补偿往往更有效。PID 负责修正模型没有算准的部分,不应该承担全部跟踪任务。
现场问题怎么判断
| 现象 | 更可能的原因 | 先做什么 |
|---|---|---|
| 垂直轴总比目标低一点 | 重力矩没有补偿,或积分不足 | 先做重力补偿,再少量增加速度环积分 |
| 低速时一冲一停 | 摩擦、黏滑、编码器低速分辨率不足 | 检查润滑和反馈,做摩擦前馈,不要盲目加 P |
| 停止后来回晃 | 位置环 P 太大,或速度环阻尼不足 | 降低位置环 P,检查速度环,必要时小量加带滤波的 D |
| 高频啸叫 | D 太大、反馈噪声大或机械共振 | 先撤掉 D,降低 P,再检查滤波、联轴器和减速器 |
| 换向时“咯噔”一下 | 减速器背隙,或积分饱和 | 检查回差,加入抗饱和和摩擦补偿 |
| 高速时跟随误差大 | 前馈不足、电流饱和或控制带宽不够 | 先看电流波形,再补速度和加速度前馈 |
这些现象里,背隙、柔性和共振不是 PID 能彻底解决的。参数只能在机械和反馈条件确定之后,让系统运行得更平稳。
调完怎么验收
不要只在空载、单一姿态下看一次阶跃。至少要在几个典型姿态、空载和额定负载、正反方向、低速和高速轨迹下测试,并记录目标位置、实际位置、速度、电流和母线电压。重点看超调量、调节时间、稳态误差、换向冲击和连续运行后的温升。
如果负载或姿态变化很大,一套参数可能无法覆盖所有工况,这时可以按负载或姿态做增益调度。好的 PID 参数不是看起来最激进的参数,而是在实际工况下稳定、可重复、不过热,也不会让减速器和联轴器承受反复冲击的参数。