各位做电力电子仿真、有源滤波方向的朋友,大家好。
最近在帮几个研究生和工程现场的读者调试并联型 APF(有源电力滤波器)仿真模型时,发现大家关注的点高度集中:谐波检测到底用哪条路线、双闭环控制器参数怎么整定、仿真结果和理论波形对不上怎么办。虽说 APF 的文献很多,但真正能把“检测—控制—主电路—调制—验证”串成一条完整链路的资料并不算多。
这篇文章围绕基于 ip-iq 谐波检测方法的电压电流双闭环控制并联型 APF 展开,从谐波治理背景、检测原理、控制器设计到 Simulink 建模排错,给出全套讲解思路和设计报告框架。内容适合正在做电力电子仿真课题的研究生,也适合准备入门 APF 方向的工程师;已经能跑通模型的读者可以直接跳到“常见问题排查”和“工程建议”部分。
1. APF 与谐波治理:为什么非要做这个仿真
1.1 谐波问题为什么难以回避
电网中的非线性负载,比如整流器、变频器、开关电源、充电桩,都会从电网吸收非正弦电流。大量非正弦电流流过系统阻抗后,会在公共连接点产生电压畸变。谐波带来的后果集中体现在几个方面:变压器和电机发热增加、继电保护误动作、电容器组谐振烧毁、通信线路受干扰、电能表计量偏差等。
治理谐波的传统手段是 LC 无源滤波器。它的优点是成本低、结构简单,但缺点也很明显——只能针对特定次谐波调谐,电网阻抗变化时容易失谐,还存在与系统发生并联谐振的风险。所以当谐波源复杂、负载动态变化快时,有源电力滤波器(APF)成为更合适的选择。
1.2 APF 相比无源滤波器的核心优势
APF 的核心思路是“反向补偿”:检测负载谐波电流,生成与之幅值相等、相位相反的补偿电流注入电网,使网侧电流恢复为正弦。对比无源滤波器,APF 的优势可以总结为下表:
| 对比项 | 无源滤波器 | 有源滤波器(APF) |
|---|---|---|
| 补偿对象 | 固定次谐波 | 谐波、无功、不平衡可综合治理 |
| 动态响应 | 慢,依赖调谐 | 快,ms 级响应 |
| 谐振风险 | 存在并联谐振风险 | 不易与系统发生谐振 |
| 负载适应性 | 负载变化时性能下降 | 负载突变时仍能跟踪 |
| 体积成本 | 低 | 较高,控制复杂 |
需要说明的是,APF 不能完全替代无源滤波,在工程中两者经常混合使用。但就仿真研究和动态补偿效果来说,APF 的控制链路更值得深挖。
1.3 本文仿真研究的技术主线
本文研究的并联型 APF 系统包含几个核心环节:
- 谐波检测:采用基于瞬时无功功率理论的 ip-iq 检测法,提取负载电流中的谐波分量。
- 电流跟踪控制:采用电压外环、电流内环的双闭环结构,直流侧电压稳定,同时输出补偿电流能快速跟踪指令。
- 主电路与调制:三相电压型 PWM 变流器作为 APF 主电路,采用三角载波调制或空间矢量调制。
- 系统验证:在 Simulink 中搭建完整模型,观察补偿前后网侧电流波形和 FFT 频谱。
对于初学者来说,把这条链路拆开理解,比直接下载一个模型从头调参要有效得多。
2. 系统组成与仿真环境准备
2.1 并联型 APF 系统拓扑
并联型 APF 通过耦合电感并联接入电网,结构上包含:
- 三相交流电源:提供系统电压。
- 非线性负载:三相整流桥带阻感负载,作为谐波源。
- APF 主电路:三相电压型 PWM 变流器,直流侧为支撑电容。
- 耦合电感:连接变流器与电网,影响电流纹波和控制响应。
- 控制系统:谐波检测模块、电压外环、电流内环、PWM 调制模块。
电网 ──→ 非线性负载 └──→ 耦合电感 ──→ 三相PWM变流器 ──→ 直流电容 ↑ 指令电流计算与双闭环控制2.2 仿真软件版本说明
本文示例以 Matlab/Simulink 为仿真平台。版本方面不做死板指定,因为不同版本的 Simulink 模块库名称和界面布局有差异。建议采用 R2020a 及以上版本,本文示例以常见版本环境演示;如果你的版本较旧,模块路径可能需要按实际名称查找。
需要确认的工具箱:
- Simulink。
- Simscape Electrical(或早期版本的 SimPowerSystems)。
- Simulink Control Design 可选,用于线性化分析。
- 信号处理相关模块可用于 FFT 分析。
2.3 示例系统初始设计参数
仿真参数没有统一答案,需要根据容量和开关频率折中。下面给出一组用于原理验证的初始值,实际课题中应根据目标容量重新计算:
| 参数 | 数值 | 说明 |
|---|---|---|
| 电网线电压有效值 | 380 V | 50 Hz |
| 电网频率 | 50 Hz | 工频 |
| 非线性负载 | 三相整流桥带 RL 负载 | 产生 6k±1 次特征谐波 |
| 耦合电感 | 3 mH | 影响电流纹波 |
| 直流侧电压给定 | 750 V | 高于线电压峰值 |
| 直流侧电容 | 3000 μF | 电压波动与动态响应权衡 |
| 开关频率 | 10 kHz | PWM 载波频率 |
| 仿真时长 | 0.2 s | 观察动态与稳态 |
上面参数中的电容和电感数值需要结合你设定的系统容量进行调整。仿真目的不同,参数倾向也不同:如果要看动态响应,电容不宜过大;如果要看稳态补偿效果,开关频率和耦合电感匹配更关键。
3. ip-iq 谐波检测方法原理拆解
3.1 瞬时无功功率理论的切入点
传统功率理论基于平均值定义,适合稳态正弦场景。而 APF 需要在电流畸变、动态变化的情况下实时提取谐波指令,所以需要瞬时无功功率理论的思路。
瞬时无功功率理论的核心是把三相电流、电压从 abc 坐标系变换到 αβ 坐标系,再进一步变换到 dq 旋转坐标系。在电网电压基波正序分量同步旋转的 dq 坐标系下,基波正序有功电流表现为直流量,谐波和负序分量表现为交流量。这样,用低通滤波器把直流量提取出来,再经过反变换,就能重构基波电流,用负载电流减去基波电流就得到谐波指令电流。
3.2 ip-iq 检测法的工作原理
ip-iq 检测法相比传统的 p-q 检测法,一个明显改进是检测结果受电网电压畸变的影响较小。传统 p-q 法需要计算瞬时实功率 p 和虚功率 q,当电网电压畸变时,计算结果会混入电压谐波的影响。ip-iq 法则只用电网电压的相位信息,通过锁相环得到与 A 相基波电压同步的正余弦信号,然后对负载电流进行变换。
核心变换关系如下。
首先计算瞬时有功电流 ip 和瞬时无功电流 iq:
[ \begin{bmatrix} i_p \ i_q \end{bmatrix}
\sqrt{2} \begin{bmatrix} \sin \omega t & -\cos \omega t \ -\cos \omega t & -\sin \omega t \end{bmatrix} \begin{bmatrix} 1 & -\frac{1}{2} & -\frac{1}{2} \ 0 & \frac{\sqrt{3}}{2} & -\frac{\sqrt{3}}{2} \end{bmatrix} \begin{bmatrix} i_a \ i_b \ i_c \end{bmatrix} ]
经过低通滤波器后得到直流分量:
- ip 的直流分量对应基波正序有功电流。
- iq 的直流分量对应基波正序无功电流。
然后通过反变换重构三相基波正序电流:
[ \begin{bmatrix} i_{af} \ i_{bf} \ i_{cf} \end{bmatrix}
\sqrt{2} \begin{bmatrix} 1 & 0 \ -\frac{1}{2} & \frac{\sqrt{3}}{2} \ -\frac{1}{2} & -\frac{\sqrt{3}}{2} \end{bmatrix} \begin{bmatrix} \sin \omega t & -\cos \omega t \ -\cos \omega t & -\sin \omega t \end{bmatrix} \begin{bmatrix} \bar{i}_p \ \bar{i}_q \end{bmatrix} ]
最终谐波指令为:
[ i_{ah}^* = i_{aL} - i_{af} ]
这里的核心问题是低通滤波器的设计。如果截止频率太低,动态响应慢,负载突变时谐波指令跟踪不上;如果截止频率太高,基波直流量提取不干净,补偿效果会变差。常见做法是取 20~50 Hz 左右的截止频率,然后在仿真中对比波形微调。
3.3 为什么选择 ip-iq 方法
本课题选择 ip-iq 法而不是 p-q 法,主要有两个原因:
- 抗电压畸变能力强。因为只取电压相位,即使电网电压有一定的畸变或不对称,检测结果仍然比较稳定。
- 便于扩展有功、无功独立控制。需要同时补偿谐波和无功时,只要保持 iq 通道的直流分量不做滤除即可。
不过要注意,ip-iq 检测法依赖锁相环输出准确的相位。如果锁相环在电压跌落或相位跳变时动态不佳,检测效果会受影响。所以在仿真中还需要同步关注 PLL 的响应。
3.4 低通滤波器设计要点
在 ip-iq 检测法中,低通滤波器承担着“只保留基波直流量”的任务。常用实现有 Butterworth 低通滤波器和二阶低通滤波器。仿真时可以直接用 Simulink 的 Transfer Fcn 模块或 Analog Filter Design 模块。
一个可以参考的 Butterworth 二阶低通滤波器传递函数为:
[ H(s) = \frac{\omega_c^2}{s^2 + \sqrt{2} \omega_c s + \omega_c^2} ]
其中 ωc = 2π × fc,fc 取 20~50 Hz。如果 fc 取得太低,检测动态性能下降;取得太高,会残留低频谐波分量。建议先用 Bode 图观察滤波器的幅频特性,再结合仿真波形整定。
4. 电压电流双闭环控制策略设计
4.1 双闭环的结构与作用
APF 的控制系统通常不是单环,而是电压外环加电流内环的双闭环结构。
电压外环控制直流侧电容电压。直流侧电压必须维持在指令值附近,才能为变流器提供足够的电压支撑;但直流电压又不希望波动太大,否则会影响补偿电流的生成精度。电压外环的输出一般作为有功电流指令的修正量,参与 ip 通道。
电流内环负责控制 APF 实际输出电流跟踪谐波指令电流。电流环的响应速度决定了补偿效果;如果电流环带宽不足,高频次谐波的跟踪误差会明显增大。
4.2 电压外环设计
电压外环的采样对象是直流侧电容电压 Udc,参考值是 Udc_ref。两者比较后经过 PI 调节器,输出作为有功电流的增量信号,参与指令电流计算。
这里需要理解一个关键点:APF 本身并不是能量源,它要维持直流侧电压稳定,就必须从电网吸收少量基波有功功率来补充开关损耗等损耗。因此电压外环的输出本质上是“有功电流的小信号修正量”,而不是谐波指令本身。
电压外环 PI 参数整定思路:
- 比例系数影响电压恢复速度,过大容易导致电流指令振荡。
- 积分系数消除稳态误差,但过大会使动态过程变慢。
- 实际仿真中可以先让内环投入,再逐步加大外环 PI,观察 Udc 是否稳定收敛到给定值。
4.3 电流内环设计
电流内环的目标是让 APF 输出电流跟随指令电流。控制对象可以近似为一阶惯性环节,即耦合电感和变流器增益构成的环节。电流环的控制带宽要高于谐波补偿的最高频率。
在 dq 旋转坐标系下,电流内环通常采用 PI 控制,同时加入前馈解耦项:
[ u_d = -\left( K_p + \frac{K_i}{s} \right)(i_d^* - i_d) + \omega L i_q + u_{sd} ]
[ u_q = -\left( K_p + \frac{K_i}{s} \right)(i_q^* - i_q) - \omega L i_d + u_{sq} ]
其中电感 L 为耦合电感值,usd、usq 为电网电压 dq 分量。前馈项的作用是消除 dq 轴之间的耦合和电网电压扰动。在仿真中如果不加前馈,系统也能勉强运行,但动态偏差会更明显,所以建议把前馈加上。
电流内环 PI 参数可以按典型 I 型系统或 II 型系统整定,工程上也常用“先比例后积分、边观察边调整”的方式。
4.4 调制与驱动信号生成
电流内环输出的调制波信号,经过 PWM 调制后生成开关管的驱动脉冲。并联型 APF 常用的调制方式:
- 三角载波调制:实现简单,适合验证控制算法。
- 空间矢量调制 SVPWM:直流电压利用率更高、谐波性能更好,但 Simulink 建模稍复杂。
在原理仿真阶段,可以用三相 PWM 发生器模块统一产生六路脉冲;在较精细的对比研究中,可以改成 SVPWM 实现并对比补偿效果。开关频率通常取 5~20 kHz,本文示例采用 10 kHz。
5. Simulink 仿真模型搭建实战
5.1 模型整体结构规划
在动手搭建之前,先在草稿纸上规划好模型的分层结构。推荐按下面几个子系统组织:
- 主电路子系统:电源、负载、APF 主电路。
- 谐波检测子系统:ip-iq 检测法。
- 直流电压控制子系统:电压外环 PI。
- 电流控制与调制子系统:电流内环和 PWM。
这样做的好处是每个子系统可以单独替换验证,调试时也容易定位问题。Simulink 模型中尽量使用 Goto/From 或数据总线传递信号,避免交叉连线过多。
5.2 主电路搭建
主电路模块包括:
- Three-Phase Source:三相电源。
- Three-Phase Transformer 可选,在低压仿真中可省略。
- Universal Bridge:设置为整流器模式,作为非线性负载。
- Three-Phase Series RL Branch:作为整流器的直流侧负载。
- 另一个 Universal Bridge:作为 APF 的 PWM 变流器。
- Three-Phase Series RLC Branch:作为耦合电感。
这里需要注意,APF 变流器的 Universal Bridge 要设置为“PWM”或由外部脉冲控制,不能设置为内部二极管整流模式。
整流桥直流侧负载的阻感大小决定了谐波电流的幅值。负载越大,电流谐波越明显。建议先设置一组阻感值让负载电流在额定范围内,再观察 FFT。
5.3 ip-iq 谐波检测子系统搭建
ip-iq 检测子系统内部可以按以下步骤搭建:
- 用 PLL 模块获取 A 相电网电压的相位 wt。
- 由 sin(wt) 和 cos(wt) 构造变换矩阵。
- 将负载三相电流 i_a、i_b、i_c 经过 Clark 变换得到 αβ 轴分量。
- 将 αβ 分量与正余弦矩阵相乘得到 ip、iq。
- ip、iq 经过低通滤波器得到直流分量。
- 反变换得到基波正序电流 i_a1、i_b1、i_c1。
- 用负载电流减去基波电流得到谐波指令 i_ah、i_bh、i_ch。
如果补偿目标不仅限于谐波,还包含无功,则 iq 通道不经过滤波器,直接全部保留。这一改动在仿真中只需要调整信号连线即可完成,很直观。
5.4 双闭环控制器搭建
直流电压环部分:
- 测量直流侧电容电压 Udc。
- 与给定值 Udc_ref 做差。
- 经 PI 调节器输出 d 轴有功指令修正量 Δip。
电流内环部分需要先把三相补偿电流变换到 dq 坐标下。这里有两种常见实现:
- 把谐波指令电流 i_h 直接作为 dq 轴的指令,再用实际的补偿电流做反馈。
- 先计算补偿电流的 dq 量,在 dq 轴下闭环控制,再反变换回三相调制波。
第二种做法更贴合理论推导,模型也更整洁。由于谐波指令本身是交流量,在 dq 旋转坐标系下会表现为不同频率的交流分量,因此电流内环需要有足够的带宽。
5.5 完整模型参数初始化脚本
仿真前建议用 Matlab 脚本统一设置参数,而不是在模块对话框中逐个填写。这样做便于反复调整和保存实验记录。
% 文件路径:sim_params.m % 并联型APF仿真初始参数设置示例 %% 电网参数 U_rms = 380; % 线电压有效值,V f_grid = 50; % 电网频率,Hz w_grid = 2*pi*f_grid; % 角频率,rad/s %% 非线性负载参数 R_load = 10; % 整流器直流侧电阻,ohm L_load = 5e-3; % 整流器直流侧电感,H %% APF主电路参数 L_coupling = 3e-3; % 耦合电感,H R_coupling = 0.1; % 耦合电感寄生电阻,ohm C_dc = 3000e-6; % 直流侧电容,F Udc_ref = 750; % 直流电压给定,V %% 控制器参数 kp_udc = 0.5; % 电压外环比例系数 ki_udc = 10; % 电压外环积分系数 kp_i = 10; % 电流内环比例系数 ki_i = 500; % 电流内环积分系数 %% 调制参数 f_sw = 10000; % 开关频率,Hz这段脚本的作用是把系统关键参数集中管理。注意这些控制器参数是初始参考值,应根据你搭建的模型做进一步整定,不要照搬。
5.6 仿真参数设置建议
Simulink 仿真参数设置:
- 仿真时长:0.1~0.3 s 比较合适。太短看不出稳态效果,太长浪费时间。
- 求解器:建议使用变步长 ode23tb 或 ode15s,因为电力电子电路含有开关器件,变步长能兼顾精度和速度。
- 最大步长:可以限制在 1e-5 左右,避免开关动作时刻被跳过。
- 允许误差:保持默认即可,如果波形毛刺多可以适当减小相对误差。
开关频率越高,仿真越慢。调试阶段可以先降低开关频率到 5 kHz,确认控制链路正常后再把开关频率提上去。
6. 仿真结果分析与波形解读技巧
6.1 补偿前:谐波源特性确认
先不投入 APF,只运行非线性负载。用 Scope 观察 A 相电网电流,再用 Powergui 的 FFT 分析工具查看频谱。
预期结果:
- 电流波形呈尖顶波或近似方波形状,发生明显畸变。
- FFT 频谱中 5、7、11、13 次谐波明显,符合三相整流桥 6k±1 次特征谐波规律。
- THD 值通常在 20%~40% 之间,具体数值取决于直流侧负载电感大小。
这一步的关键是确认谐波源的“底子”正确。如果负载本身谐波很小,后面 APF 的补偿效果也看不出来。
6.2 补偿后:网侧电流与直流电压
投入 APF 后观察以下波形:
- 网侧电流波形应接近正弦。
- 直流侧电压应稳定在给定值附近,纹波在可接受范围内。
- 补偿电流波形应与谐波指令电流大体一致,存在一定开关纹波。
如果补偿后的 THD 降到了 5% 以下,说明检测、控制、调制链路基本正确。如果 THD 仍然很高,则要分模块排查,而不是盲目调 PI。
6.3 动态工况验证
除了稳态,可以增加一个阶跃扰动来验证系统动态性能。常见做法是:
- 在 t = 0.1 s 时,负载电阻从 10 Ω 切换到 5 Ω。
- 观察负载电流突变后,APF 能否在几个工频周期内重新进入稳态。
- 观察直流电压在负载突变时的跌落幅度和恢复时间。
动态验证能力是 APF 区别于无源滤波的重要指标。如果动态响应太慢,说明电流内环带宽不足或电压外环积分太弱。
6.4 波形分析时的常见坑
波形分析中有一个容易忽略的问题:FFT 分析不要直接对瞬态过程做。要先让仿真运行到稳态,再选取稳态区间内的波形做频谱分析,否则频谱里会混入非周期分量。
另一个问题是补偿前和补偿后的采样窗口长度要一致,否则 FFT 频谱的分辨率不同,对比没有意义。
7. 常见问题与排查思路
下面给出 APF 仿真中经常遇到的问题和排查顺序。
| 问题现象 | 常见原因 | 排查与解决思路 |
|---|---|---|
| 补偿后网侧电流更加畸变 | 补偿方向反了 | 检查 APF 输出电流方向与谐波指令方向是否相反,可尝试将耦合电感接入点对调或反转电流反馈符号 |
| 直流侧电压发散或振荡 | 电压外环 PI 参数不合适 | 先断开谐波指令,确认电压环单独能稳定,再逐渐加入谐波补偿 |
| 谐波指令含有明显基波分量 | 低通滤波器截止频率太高 | 降低 fc,观察 ip、iq 直流分量是否平滑 |
| 补偿电流跟踪滞后明显 | 电流内环 PI 带宽不足或开关频率低 | 增大 Kp,必要时提高开关频率 |
| 仿真速度非常慢 | 开关频率过高、步长太小 | 降低开关频率调试,确认正常后再恢复 |
| FFT 结果与理论不符 | 采样窗口未同步或包含瞬态 | 选取稳态数据段,统一窗口长度 |
| 锁相环失锁 | PLL 初始条件设置不当 | 检查 PLL 模块的初始相位,或改用带前馈的三相 PLL |
排查建议按“从后往前”的顺序:先确认调制波正常,再确认电流环跟踪指令,再确认谐波指令计算正确,最后确认主电路接线无误。如果一上来就调 PI,往往会把问题弄得更复杂。
8. 最佳实践与工程建议
8.1 参数管理规范
APF 仿真涉及电气参数、控制器参数、调制参数、仿真参数至少四类参数,建议不要散落在各个模块里。统一用初始化脚本管理,并在脚本头部记录参数修改时间和实验目的,这样后续恢复数据、写报告都会省很多时间。
8.2 分模块验证替代整体调参
最有效的调试方式是分模块验证:
- 先验证锁相环输出相位是否正确。
- 再验证 ip-iq 检测输出在谐波负载下能否正确分离基波和谐波。
- 再验证电流内环能否跟踪指令电流。
- 最后加入电压外环,验证直流电压稳定。
每步验证都用一个简单的 Scope 或 Disp 模块观察关键信号,不要等到整个模型跑完再找问题。
8.3 控制器参数整定经验
电流内环优先整定。在电压外环未投入时,可以给电流内环一个阶跃指令,观察跟踪速度和超调。然后以“又快又稳”为目标调整 Kp、Ki。
电压外环的响应速度应当比电流内环慢很多,否则两个环路会相互干扰。通常电压外环的带宽设计为电流内环带宽的十分之一到五分之一。
8.4 模型复用与扩展
仿真模型搭建时可以保留多个版本备份:
- 纯谐波补偿版本。
- 谐波与无功同时补偿版本。
- 加入 SVPWM 调制的对比版本。
- 电网电压畸变下的鲁棒性测试版本。
这样的模型库在毕业设计或课题申报中比较有价值,因为可以回答“为什么选择这个方案”“和别的方法相比有什么优势”等高频问题。
8.5 报告撰写与仿真结果呈现
如果是课程设计或学位论文,建议把仿真过程分成三类素材收集:
- 原理图与拓扑图:主要用于第 2、3 章的方案介绍。
- 关键波形截图:补偿前后电流、直流电压、谐波指令、FFT 频谱。
- 参数对比表:不同控制参数下的 THD 和动态指标对比。
在报告里给出“补偿前 THD ≈ 27.5%,补偿后 THD ≈ 3.8%”这类量化对比,比单纯贴一张波形更有说服力。FFT 分析时要把 THD 数值和频谱图一起截取,便于阅读者直观理解。
9. 结语:从仿真到样机还差什么
整套基于 ip-iq 谐波检测和电压电流双闭环控制的并联型 APF 仿真流程到这里就完整了。从谐波源建模、检测算法设计、双闭环控制器整定到 Simulink 仿真验证,每一步都有明确的工程含义。仿真跑通后,你能直观理解 APF 为什么能动态补偿谐波、电压外环和电流内环分别承担什么任务、哪些参数对补偿效果影响最大。
如果接下来要往深处做,建议从这几个方向继续拓展:一是用 SVPWM 替换三角载波调制,对比直流电压利用率和电流纹波;二是引入电网电压畸变和不对称工况,验证 ip-iq 检测法的鲁棒性;三是把控制器离散化,为后续 DSP 或 FPGA 实现做准备。仿真只是第一步,从仿真到样机的差距,往往比想象中更大,但也正是这些差距最值得研究。