电力电子领域的三相电压型PWM整流器控制,本质上是在处理一个多变量、强耦合、非线性的动态系统。传统PI控制在稳态工况下表现尚可,但面对负载突变、电网扰动等动态过程时,就像用一把直尺去测量蜿蜒的河流——总是存在滞后和过冲问题。
我在实际项目中多次遇到这样的困境:当生产线上的大功率设备突然启停时,直流母线电压会出现明显的"凹陷"或"凸起",这种电压波动轻则影响敏感设备工作,重则导致整个系统保护停机。经过多次尝试,发现自抗扰控制(ADRC)特别适合解决这类问题,因为它将系统内部不确定性和外部扰动统一视为"总扰动"进行实时估计和补偿。
选择离散型二阶非线性ADRC作为电压外环控制器,主要基于三个实际考量:
跟踪微分器是ADRC的前置滤波器,其核心作用是让参考信号的跳变变得"柔和"。在整流器控制中,直流电压给定值可能因运行模式切换而突变,直接使用阶跃信号会导致控制量剧烈变化。
matlab复制function [v1, v2] = fhan(x1, x2, r, h)
d = r*h^2;
a0 = h*x2;
y = x1 + a0;
a1 = sqrt(d*(d+8*abs(y)));
a2 = a0 + sign(y)*(a1-d)/2;
sy = (sign(y+d)-sign(y-d))/2;
a = (a0+y-a2)*sy + a2;
sa = (sign(a+d)-sign(a-d))/2;
v1 = x1 + h*x2;
v2 = x2 + h*(-r*sign(a))*sa;
end
这个非线性函数的特点是:
调试心得:r值过大会引入高频噪声,过小则跟踪迟缓。建议初始值设为采样频率的1/10,再根据实际波形微调。
ESO是ADRC的"眼睛"和"大脑",负责重构系统状态并估计总扰动。对于二阶系统,我们设计三阶ESO:
code复制dz1/dt = z2 - β1·e
dz2/dt = z3 - β2·fal(e,α1,δ) + b0·u
dz3/dt = -β3·fal(e,α2,δ)
其中非线性函数fal定义为:
matlab复制function f = fal(e, alpha, delta)
if abs(e) > delta
f = abs(e)^alpha * sign(e);
else
f = e / (delta^(1-alpha));
end
end
参数整定规律:
避坑指南:β1超过2000时会出现数值振荡,表现为输出电压波形出现高频纹波。这是因为过高的观测器带宽放大了测量噪声。
传统PID的线性组合在应对非线性系统时显得力不从心。我们采用非线性组合:
code复制e1 = v_ref - z1
e2 = -z2
u0 = k1·fal(e1, α, δ) + k2·fal(e2, α, δ)
u = (u0 - z3)/b0
参数选择技巧:
在搭建离散模型时需要特别注意:
模型包含以下关键子系统:
在额定功率3kW的实验平台上测试,对比传统PI与ADRC控制:
| 性能指标 | PI控制 | ADRC控制 |
|---|---|---|
| 负载阶跃响应时间 | 20ms | 8ms |
| 电压超调量 | 8% | 3% |
| THD(满载) | 3.2% | 2.7% |
| 抗扰动能力 | ±5%Vdc | ±2%Vdc |
典型波形特征:
通过大量实验总结出"三步调试法":
观测器校准阶段:
静态补偿验证:
动态性能优化:
实用技巧:调试时可以故意让观测器带宽不足,观察电压波形如何从"心电图"逐渐变为"平滑曲线",这个过程能直观理解各参数的作用。
在定点DSP上实现时需注意:
针对变工况需求,开发了在线调参机制:
虽然电流环仍采用PI控制,但与ADRC电压环配合时需要注意:
实际测试表明,这种混合控制架构在计算复杂度和控制性能之间取得了良好平衡。对于需要快速动态响应的场合(如电动汽车充电桩),可以进一步将电流环也升级为ADRC,形成全自抗扰控制体系。
经过半年多的现场运行验证,这套控制方案使整流器的动态性能指标提升了40%以上,特别是在焊接设备、变频器等负载剧烈变化的场合表现突出。当然,ADRC的参数整定确实比PI复杂,但一旦掌握其规律,就能发挥出传统控制方法难以企及的性能优势。