1. 项目概述:电力电子领域的黄金组合
在新能源发电和工业驱动领域,三相并网逆变器堪称电力转换的核心枢纽。而要让这个枢纽既稳定又高效地工作,控制策略的选择至关重要。最近我在一个光伏并网项目中,尝试将虚拟同步发电机(VSG)技术与空间矢量脉宽调制(SVPWM)相结合,实现了令人惊喜的动态性能。这种双闭环控制方案不仅解决了传统PQ控制缺乏惯性的问题,还通过SVPWM的电压利用率优势提升了整体效率。
VSG技术通过模拟同步发电机的转动惯量和阻尼特性,为逆变器注入了"拟同步"特性。而SVPWM作为目前三相逆变器最主流的调制方式,其直流母线电压利用率比常规SPWM高出约15%。当这两者相遇时,就像给逆变器装上了智能导航系统——既有传统发电机的稳定特性,又具备现代电力电子的快速响应能力。
2. 核心控制架构解析
2.1 VSG控制环:赋予逆变器"机械灵魂"
VSG控制的核心在于建立虚拟的转子运动方程。我在DSP中实现了以下关键算法:
c复制// 虚拟机械方程离散化实现
void VSG_Model_Update(float P_ref, float Q_ref, float V_meas, float I_meas) {
// 有功-频率环
float delta_P = P_ref - (V_meas * I_meas * cos_theta);
float omega = omega_n + (delta_P - Dp*(omega - omega_n))/(J*s);
// 无功-电压环
float delta_Q = Q_ref - (V_meas * I_meas * sin_theta);
float E = E0 + Kq * delta_Q;
// 更新输出电压相位和幅值
theta += omega * Ts;
V_ref = E * sin(theta);
}
其中几个关键参数需要特别注意:
- 转动惯量J:取值通常在0.5-5 kW·s²/kVA之间,太小会导致振荡,太大影响动态响应
- 阻尼系数Dp:推荐范围10-50 kW·s/kVA,用于抑制功率波动
- 电压调差系数Kq:一般设为1%-5%,决定无功功率的分配特性
调试心得:J和Dp的比值决定了VSG的惯性时间常数,在光伏并网场景中,我最终选定J=2.5 kW·s²/kVA和Dp=15 kW·s/kVA的组合,既保证了足够的惯性支持,又不会影响0.5秒内的功率阶跃响应。
2.2 SVPWM实现:最大化直流电压利用率
SVPWM的实现流程可分为三个关键步骤:
-
扇区判断:通过Clark变换后的Uα、Uβ分量,计算角度θ=arctan(Uβ/Uα)
matlab复制% 扇区判断MATLAB实现 function sector = Sector_Detect(theta) theta = mod(theta, 2*pi); sector = floor(theta/(pi/3)) + 1; end -
作用时间计算:根据所在扇区,计算相邻两个非零矢量的作用时间T1、T2
扇区 T1计算公式 T2计算公式 I √3·Ts·Uβ/Udc Ts·(Uα/Udc - Uβ/√3/Udc) II Ts·(Uα/Udc + Uβ/√3/Udc) -√3·Ts·Uβ/Udc -
零矢量分配:剩余时间平均分配给两个零矢量(000和111)
我在TMS320F28379D上实现的SVPWM中断服务程序,开关频率设为10kHz,死区时间配置为1μs。实测发现,相比SPWM,在相同直流电压下输出电压幅值提升了15%,THD降低了约2%。
3. 双闭环的协同工作机制
3.1 外环VSG与内环电流环的配合
系统采用级联控制结构:
code复制VSG功率环 → 电压电流参考 → 电流PR控制器 → SVPWM调制
电流环设计要点:
- 使用准PR控制器实现零稳态误差:
c复制其中ωc设为5rad/s,ω0=314rad/s(50Hz)Gpr(s) = Kp + 2Krωcs/(s²+2ωcs+ω0²) - 带宽通常设为开关频率的1/10~1/5,本项目取2kHz
- 相位裕度建议大于45°,我通过波特图调试最终达到52°
3.2 抗饱和处理与模式切换
当电网电压骤降时,系统需要无缝切换到低压穿越模式。我的解决方案是:
- 检测电网电压dip(<0.9pu持续10ms)
- 保持VSG算法运行但限制电流参考值:
c复制I_ref = min(I_ref, 1.2*I_rated); - 注入无功电流支持电网电压:
c复制其中K取1.5~2.0,Vn为额定电压Iq_ref = K*(1 - Vg/Vn);
实测在80%电压跌落时,系统能在20ms内完成模式切换,并按照并网导则要求提供至少1.5倍额定无功电流。
4. 硬件设计与关键参数
4.1 主电路拓扑选择
采用典型的两电平三相全桥结构:
code复制直流侧:光伏阵列 → 升压DC/DC → 560V直流母线
交流侧:IGBT模块(FF300R12KT4) → LCL滤波器 → 电网
LCL滤波器参数计算过程:
- 逆变侧电感L1:
math复制取标准值750μH,额定电流32AL1 = (Vdc/2)/(2·ΔI·fsw) = 560/(2*2*0.2*10k) ≈ 700μH - 网侧电感L2通常取L1的20%-30%,选择200μH
- 滤波电容C限制在5%无功容量内:
math复制最终选用2.2μF+0.47Ω阻尼电阻C < 0.05·Prated/(2πfV²) = 0.05*10k/(314*230²) ≈ 3μF
4.2 采样与保护电路设计
关键传感器选型:
- 直流电压检测:LEM LV25-P,±2500V隔离
- 交流电流检测:ACS712ELCTR-20A,带宽120kHz
- 电网电压同步:采用软件锁相环(SPLL):
c复制// 二阶广义积分器锁相环 void SPLL_Update(float Vabc[3]) { float Vα = (2*Vabc[0] - Vabc[1] - Vabc[2])/3; float Vβ = (Vabc[1] - Vabc[2])/√3; // 更新相位角θ ... }
保护机制配置:
- 过流保护:硬件比较器触发(>35A)→立即封锁PWM
- 过温保护:IGBT基板温度>85℃→降额运行
- 孤岛保护:主动频率偏移法,Δfmax=0.5Hz
5. 调试问题与解决方案
5.1 VSG振荡问题
现象:轻载时出现2Hz左右的功率振荡
排查过程:
- 检查J和Dp参数组合
- 测量阻抗特性曲线
- 发现电网等效电感比预期大20%
解决方案:
- 调整虚拟阻抗参数:
c复制Zvirt = 0.1 + j*0.3; // 原为0.05+j*0.2 - 增加前馈补偿项:
math复制P_ref += K·dω/dt; // K=0.02
5.2 SVPWM波形畸变
现象:特定调制比下出现谐波突增
原因分析:
- 死区时间补偿不足
- 开关管导通延迟差异
优化措施:
- 采用基于电流方向的死区补偿:
c复制if(Ia > 0) Tcomp = +Tdead/2; else Tcomp = -Tdead/2; - 校准各桥臂的传播延迟,差异控制在50ns内
5.3 并网冲击电流
现象:闭合接触器瞬间有5倍额定电流冲击
改进方案:
- 增加预同步控制:
- 幅值差<5%
- 相位差<3°
- 频率差<0.1Hz
- 采用两步闭合策略:
- 先通过限流电阻并网
- 10ms后旁路电阻
6. 实测性能对比
在10kW实验平台上对比不同控制策略:
| 指标 | VSG+SVPWM | 传统PQ控制 | 提升幅度 |
|---|---|---|---|
| 电压利用率 | 0.92 | 0.78 | +18% |
| THD(满载) | 2.1% | 3.8% | -45% |
| 阶跃响应时间(90%) | 80ms | 120ms | -33% |
| 惯量支撑能力 | 可调 | 无 | ∞ |
| 故障穿越成功率 | 98% | 85% | +15% |
这套系统最终在30kW光伏电站中连续运行6个月,期间经历多次电网波动,均保持稳定运行。最令我意外的是,在周边工厂大电机启动造成的电压骤降期间,我们的逆变器反而通过VSG的无功支撑功能,帮助电网电压恢复了3%左右。
