4、电流环调参实战:电流环PID参数整定步骤(Kp、Ki),使用示波器观察电流响应,常见问题与调试技巧
电流环,说白了就是三环控制中最里面那个环。它直接跟电机绕组打交道,响应速度最快。如果电流环没调好,外面的速度环和位置环再怎么折腾也是白搭。我刚开始做伺服驱动时,就吃过这个亏——速度环怎么调都抖,最后发现是电流环的Ki给大了。
这一章,咱们就动手调一次电流环。我会把整定步骤拆开,配合示波器看波形,再聊聊那些年我踩过的坑。
4.1 电流环PID参数整定步骤
我习惯先把积分项关掉,只调比例。为什么呢?因为积分项会掩盖比例环节的真实响应,让你误以为参数已经合适了。等比例调好,再加一点积分把静差吃掉就行。
步骤一:准备工作
- 电机轴锁死(机械抱闸或用手按住,别让它转)
- 给定一个较小的电流指令,比如额定电流的10%
- 示波器探头接在电流采样电阻或DAC输出脚上
- 确保PWM频率和电流采样频率已经配置好
步骤二:调Kp(比例增益)
- Ki设为0,Kp从一个很小的值开始,比如0.1
- 给一个阶跃电流指令,观察示波器上的电流响应
- 逐步增大Kp,每次增加50%~100%,直到电流出现轻微振荡
- 记录下临界振荡时的Kp值,记为Kp_crit
- 最终Kp取Kp_crit的50%~70%
为什么会振荡?因为比例增益太大,系统相位裕度不够了。你想想看,电流环的延迟主要来自PWM更新和采样滤波,Kp一高就容易自激。
步骤三:调Ki(积分增益)
- Kp固定在上一步得到的值
- Ki从0.001开始,给一个持续的电流指令
- 观察稳态误差是否被消除
- 逐步增大Ki,每次增加0.001~0.005,直到电流出现低频振荡
- 最终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,同时检查死区补偿算法。死区补偿不准,电流环永远有静差。
4.4 电流环调参流程图
下面这张图总结了我常用的调参流程。照着走,基本不会出大问题。
4.5 调参后的验证
参数调好后,别急着收工。我一般会做三个验证:
- 阶跃响应测试:给一个满幅阶跃,看上升时间是否在1ms以内,超调量是否小于5%
- 正弦跟踪测试:给一个100Hz~1kHz的正弦指令,看相位滞后和幅值衰减
- 负载扰动测试:用手突然拧一下电机轴,看电流能否快速恢复