电流环故障排查:电流采样异常与PI参数失配
大家好,我是老张。今天咱们聊聊电流环的故障排查。说实话,电流环是三个环里最基础、也最容易出问题的一环。我见过不少工程师,一上来就调速度环、位置环,结果发现电流环压根没整明白——那上层调得再好也是白搭。
电流环的故障,我把它分成三大类:采样异常、PI参数失配、饱和与限幅。咱们一个一个说。
一、电流采样异常:偏置、噪声、断线
电流采样是电流环的「眼睛」。眼睛花了,后面再怎么调也没用。我个人习惯,排查电流环问题,第一步永远是看采样值对不对。
1. 偏置误差
偏置说白了就是零漂。电机不转的时候,电流采样应该接近0。如果读到0.1A、0.2A甚至更大,那就是有偏置了。
我在项目中遇到过一台伺服驱动器,空载时电流显示0.3A,电机嗡嗡响。查了半天,发现是霍尔传感器的供电电压偏了0.1V。嗯,这种问题其实挺常见的。
- 电机停机,断开动力线
- 用万用表测传感器供电(5V或3.3V)
- 读取ADC原始值,计算偏移量
- 软件中做偏置校准(一般存到EEPROM里)
2. 噪声干扰
噪声这东西,你想想看,它不像偏置那么「老实」。偏置是固定的,噪声是随机的。电流波形上出现毛刺、高频抖动,十有八九是噪声。
我曾经处理过一个案例:电机低速运行时电流波形像锯齿一样,速度一高反而好了。后来发现是PWM开关频率和采样时刻没对齐,采样点正好落在开关噪声上。
3. 断线或接触不良
断线其实最好判断——电流读数为0或者跳变到满量程。但接触不良就隐蔽多了。我遇到过一根线在端子排里只压住了皮没压住铜芯,运行半小时后温度一高就断开,冷却后又恢复。这种「软故障」最坑人。
- 静态测量:用万用表测传感器输出端对地电阻
- 动态观察:用手轻轻晃动线束,看电流值是否跳动
- 替换法:换一根已知完好的线缆
二、电流环PI参数失配导致震荡
参数失配,说白了就是比例增益Kp和积分时间Ti没配对。Kp太大,系统会震荡;Ti太小,也会震荡。但两者的震荡特征不一样——这个得会区分。
| 故障类型 | 现象 | 频率特征 | 解决方法 |
|---|---|---|---|
| Kp过大 | 高频震荡,电机啸叫 | 接近电流环带宽 | 减小Kp,或增加阻尼 |
| Ti过小 | 低频振荡,电流过冲 | 几Hz到几十Hz | 增大Ti(放慢积分) |
| Kp过小 | 响应慢,稳态误差大 | 无震荡 | 增大Kp |
| Ti过大 | 消除静差慢 | 无震荡 | 减小Ti |
我个人的调参习惯是这样的:先把积分时间设得很大(比如100ms),然后慢慢增大Kp,直到电流波形出现轻微震荡。这时候把Kp往回退20%,再慢慢减小Ti,直到响应速度和稳定性都满意为止。
三、电流环饱和与限幅问题
饱和问题,说白了就是「心有余力不足」。你让电机输出100A的电流,但驱动器最大只能给50A,那电流环的输出就会被限幅器卡住。
1. 输出限幅
输出限幅本身不是故障,它是一种保护机制。但问题在于:限幅之后,积分项还在继续累加,这就产生了积分饱和。积分饱和会导致什么?电流指令降下来之后,实际电流还要过一会儿才能跟着降——因为积分项里存了一大笔「旧账」要慢慢还。
- 电流响应有「拖尾」现象
- 指令从大变小后,实际电流过冲严重
- 系统从饱和状态退出时,有明显的滞后
2. 解决方法
对付积分饱和,常用的办法有这么几种:
- 积分限幅: 给积分项单独设一个上限,别让它无限累加
- 积分冻结: 输出饱和时,停止积分累加
- 反向积分: 输出饱和时,让积分项往反方向走,加速退出
我在实际项目中用得最多的是「积分冻结+积分限幅」的组合。简单、可靠,而且代码实现起来也不复杂。
小结
电流环的故障排查,说白了就是三件事:看采样准不准、看参数配不配、看限幅有没有卡住。这三件事搞清楚了,电流环的问题基本就能解决八成。
嗯,今天就先聊到这儿。下一章咱们会深入讲速度环的故障排查,到时候再细聊。