4、电流环调参实战:电流环PID参数整定步骤(Kp、Ki),使用示波器观察电流响应,常见问题与调试技巧

电流环,说白了就是三环控制中最里面那个环。它直接跟电机绕组打交道,响应速度最快。如果电流环没调好,外面的速度环和位置环再怎么折腾也是白搭。我刚开始做伺服驱动时,就吃过这个亏——速度环怎么调都抖,最后发现是电流环的Ki给大了。

这一章,咱们就动手调一次电流环。我会把整定步骤拆开,配合示波器看波形,再聊聊那些年我踩过的坑。

核心观点:电流环调参的目标只有一个——让实际电流快速、无超调地跟踪给定电流。Kp决定响应速度,Ki消除稳态误差,但Ki过大会导致振荡。

4.1 电流环PID参数整定步骤

我习惯先把积分项关掉,只调比例。为什么呢?因为积分项会掩盖比例环节的真实响应,让你误以为参数已经合适了。等比例调好,再加一点积分把静差吃掉就行。

步骤一:准备工作

  • 电机轴锁死(机械抱闸或用手按住,别让它转)
  • 给定一个较小的电流指令,比如额定电流的10%
  • 示波器探头接在电流采样电阻或DAC输出脚上
  • 确保PWM频率和电流采样频率已经配置好
注意:电机锁死时,反电动势为零,电流环的负载特性最单纯。如果这时候调不好,电机转起来只会更糟。

步骤二:调Kp(比例增益)

  1. Ki设为0,Kp从一个很小的值开始,比如0.1
  2. 给一个阶跃电流指令,观察示波器上的电流响应
  3. 逐步增大Kp,每次增加50%~100%,直到电流出现轻微振荡
  4. 记录下临界振荡时的Kp值,记为Kp_crit
  5. 最终Kp取Kp_crit的50%~70%

为什么会振荡?因为比例增益太大,系统相位裕度不够了。你想想看,电流环的延迟主要来自PWM更新和采样滤波,Kp一高就容易自激。

我的习惯:调Kp时,我喜欢用方波指令,频率设在100Hz~200Hz。这样能清楚看到上升沿的斜率——斜率越大,响应越快,但 overshoot 也会变大。

步骤三:调Ki(积分增益)

  1. Kp固定在上一步得到的值
  2. Ki从0.001开始,给一个持续的电流指令
  3. 观察稳态误差是否被消除
  4. 逐步增大Ki,每次增加0.001~0.005,直到电流出现低频振荡
  5. 最终Ki取临界值的30%~50%

我记得有一次,Ki调得太大,电流波形像波浪一样上下起伏,频率大概十几赫兹。当时还以为是机械共振,查了半天才发现是积分饱和在作怪。

4.2 使用示波器观察电流响应

示波器是调参的眼睛。光看代码里的变量值,你永远不知道真实电流长什么样。我建议至少看三个信号:

信号 观察内容 理想波形
电流给定 阶跃或方波指令 干净、无毛刺
实际电流 跟踪速度、超调量 快速上升,无过冲
PWM占空比 是否饱和、是否抖动 稳定,不频繁限幅

调参时,我习惯把时基设在1ms/div~5ms/div。太慢了看不清瞬态,太快了又看不到稳态。

4.3 常见问题与调试技巧

问题1:电流响应有高频振荡

现象:电流波形上叠加了高频毛刺,频率在几kHz以上。
原因:通常是Kp太大,或者电流采样有噪声。
解决办法:先降低Kp,再检查采样电路。我曾经遇到过采样电阻的引脚太长,引入了几十mV的噪声,换了短引脚就好了。

问题2:电流响应有低频振荡

现象:电流像呼吸一样缓慢起伏,频率几Hz到几十Hz。
原因:Ki太大,积分环节引入了低频极点。
解决办法:减小Ki,或者加一个积分限幅。我一般把积分输出限制在额定电流的20%以内。

问题3:稳态误差一直消不掉

现象:实际电流始终比给定小一点点,比如差0.1A。
原因:Ki太小,或者PWM死区时间补偿没做好。
解决办法:适当增大Ki,同时检查死区补偿算法。死区补偿不准,电流环永远有静差。

避坑指南:我曾经在调电流环时,发现怎么调都有静差。折腾了两天,最后发现是电流采样偏置没校准。零点漂移了0.05V,换算成电流就是0.2A的误差。所以,调参前一定要先做电流采样校准。

4.4 电流环调参流程图

下面这张图总结了我常用的调参流程。照着走,基本不会出大问题。

电流环PID调参流程图 开始调参 步骤1:锁死电机,给定10%额定电流 步骤2:Ki=0,从Kp=0.1开始 步骤3:增大Kp直到电流轻微振荡 步骤4:Kp取临界值的50%~70% 步骤5:加Ki,消除稳态误差 调参完成 提示 • 每次只调一个参数 • 记录临界值 • 用示波器看波形

4.5 调参后的验证

参数调好后,别急着收工。我一般会做三个验证:

  • 阶跃响应测试:给一个满幅阶跃,看上升时间是否在1ms以内,超调量是否小于5%
  • 正弦跟踪测试:给一个100Hz~1kHz的正弦指令,看相位滞后和幅值衰减
  • 负载扰动测试:用手突然拧一下电机轴,看电流能否快速恢复
一个小技巧:验证时,把电流指令和实际电流同时显示在示波器上,用XY模式看李萨如图形。如果是一条直线,说明跟踪完美;如果是椭圆,说明有相位差。