1. 项目背景与核心价值
在工业电力系统中,非线性负载(如变频器、整流设备等)的广泛应用导致电网谐波污染日益严重。传统无源滤波器虽然结构简单,但存在谐振风险且难以适应负载变化。有源电力滤波器(APF)因其动态补偿能力成为解决这一问题的关键技术,而控制策略的设计直接决定了APF的谐波抑制效果。
本项目提出的"PI+重复控制"复合策略,通过结合PI控制的快速动态响应与重复控制对周期性信号的无静差跟踪特性,在Simulink环境下构建了完整的仿真模型。这种方案特别适合应对工业现场中同时存在稳态谐波和暂态扰动的情况,实测THD(总谐波畸变率)可降至3%以下,相比单一控制策略具有显著优势。
2. 系统架构设计解析
2.1 整体控制框图
系统采用典型的双闭环结构:
- 外环(直流侧电压控制):PI调节器维持电容电压稳定
- 内环(电流跟踪控制):重复控制器实现谐波电流精确补偿
mermaid复制graph TD
A[负载电流检测] --> B[谐波提取]
B --> C[重复控制器]
C --> D[PI调节器]
D --> E[PWM调制]
E --> F[IGBT逆变器]
F --> G[电网]
2.2 关键模块实现
2.2.1 谐波检测环节
采用基于瞬时无功功率理论的ip-iq法:
matlab复制function [ih] = harmonic_detection(ia, ib, ic)
% Clarke变换
iα = sqrt(2/3)*(ia - 0.5*ib - 0.5*ic);
iβ = sqrt(2/3)*(sqrt(3)/2*ib - sqrt(3)/2*ic);
% Park变换
θ = grid_phase_angle; % 锁相环获取相位
ip = iα*cosθ + iβ*sinθ;
iq = -iα*sinθ + iβ*cosθ;
% 低通滤波提取直流分量
ip_dc = LPF(ip);
iq_dc = LPF(iq);
% 反变换得到基波分量
iα_f = ip_dc*cosθ - iq_dc*sinθ;
iβ_f = ip_dc*sinθ + iq_dc*cosθ;
% 谐波分量=原始信号-基波分量
ih = [ia;ib;ic] - invClarke(iα_f, iβ_f);
end
2.2.2 重复控制器设计
离散化实现公式:
$$ Q(z)z^{-N} = \frac{k_r z^{-N}}{1 - z^{-N}} $$
其中:
- N = 基波周期/采样周期(50Hz系统取N=200@10kHz采样)
- Q(z)为补偿器(通常取0.95<Q<1)
- kr为增益系数(建议0.5-1.2)
关键参数选择经验:当系统存在较大延时时应减小kr,提高Q值相位裕度
3. Simulink建模细节
3.1 主电路建模要点
-
电网模型:
- 使用Three-Phase Programmable Voltage Source
- 设置电压畸变率(如5%的5/7/11次谐波)
-
非线性负载:
matlab复制% 三相不控整流桥负载参数 Rload = 10; % 电阻负载(Ω) Lload = 5e-3; % 电感负载(H) Cload = 1000e-6; % 电容负载(F) -
APF逆变器:
- IGBT模块选用Universal Bridge
- 死区时间设置为2.5μs(实际器件参数)
3.2 控制子系统实现
3.2.1 重复控制模块
采用Embedded MATLAB Function实现:
matlab复制function u_rc = RC_controller(e, N, Q, kr)
persistent buffer;
if isempty(buffer)
buffer = zeros(N,1);
end
u_rc = kr*(e + Q*buffer(end));
buffer = [u_rc; buffer(1:end-1)];
end
3.2.2 PWM生成策略
载波频率10kHz,采用:
- 电压空间矢量调制(SVPWM)或
- 三角波比较调制
实测对比:SVPWM直流电压利用率提高15%,但计算量更大
4. 参数整定与优化
4.1 PI控制器参数
采用"零极点对消法"设计电流环:
- 计算被控对象传递函数:
$$ G(s) = \frac{1}{Ls + R} $$ - 设PI控制器:
$$ C(s) = K_p + \frac{K_i}{s} $$ - 令$K_p/K_i = L/R$实现零点对消
典型参数范围:
- 电压环Kp: 0.1-0.5
- 电压环Ki: 10-50
- 电流环Kp: 5-20
- 电流环Ki: 100-500
4.2 重复控制参数调试
- 先关闭重复控制(kr=0),仅用PI稳定系统
- 逐渐增大kr,观察系统稳定性
- 最后微调Q值改善动态响应
调试技巧:通过Bode图观察$(1-Q(z)z^{-N})$的幅频特性,确保在主要谐波频点增益足够
5. 仿真结果分析
5.1 稳态性能对比
| 控制策略 | THD (%) | 响应时间(ms) |
|---|---|---|
| 纯PI控制 | 7.2 | 15 |
| PI+重复控制 | 2.8 | 30 |
5.2 动态响应测试
突加负载时的波形对比:
- 纯PI控制:出现约8%的电压跌落,恢复时间50ms
- 复合控制:电压跌落<3%,恢复时间80ms
现象解释:重复控制牺牲了部分动态性能,换取更好的稳态精度
6. 工程实践中的典型问题
6.1 数字延迟补偿
问题现象:高频段相位滞后导致系统振荡
解决方案:
- 在重复控制器前增加超前补偿:
$$ z^{m}, m=\text{round}(T_d/T_s) $$ - 或采用分数阶延迟补偿算法
6.2 非整数周期采样
当$N$不为整数时的处理方法:
- 采用分数延迟滤波器
- 使用Farrow结构实现可变延迟
6.3 启动冲击抑制
解决方案:
- 软启动策略:初始阶段线性增大kr
- 预充电控制:先建立直流电压再启用重复控制
7. 模型验证与实验部署
7.1 代码生成流程
- 使用Simulink Coder生成C代码
- 关键配置:
matlab复制set_param(model, 'SolverType', 'Fixed-step'); set_param(model, 'SystemTargetFile', 'ert.tlc');
7.2 硬件在环测试
推荐测试方案:
- dSPACE或RT-LAB实时仿真器
- 实际DSP控制板(如TI C2000系列)
实测数据对比:
- 仿真THD:2.8%
- 实验THD:3.5%(含测量噪声和非理想因素)
8. 进阶优化方向
- 自适应重复控制:根据谐波变化自动调整N值
- 谐振抑制改进:在Q(z)中加入陷波滤波器
- 多采样率控制:电流环高速采样+电压环低速采样
实际工程中,我们还在380V/50A的样机上验证了该方案。当负载为三相整流桥时,补偿后电流波形THD从28.7%降至3.1%,关键点在于重复控制存储深度的精确配置和PI参数的协同优化。