
ANPC-VSG控制:基于有源中点钳位三电平的LCL滤波器电压电流双闭环控制及其VSG
原理与下垂系数计算方法
最近在搞ANPC三电平逆变器的VSG控制方案,踩了不少坑也攒了点实战经验。这种构网型逆变器既
要维持虚拟同步机的动态特性,还得搞定中点电位平衡,属实是技术活。今天咱就拆解下这套控制系统的
实现要点,顺手贴点干货代码。
**VSG内核怎么跑起来?**
虚拟同步机的核心就是让逆变器模仿同步电机的转动惯量和阻尼特性。咱在Simulink里搭了个非
线性下垂控制器,核心算法用Matlab函数块实现:
```matlab
function [Pout, Qout, theta] = VSG_Core(omega_ref, V_ref, Vt, Ig, J, D)
% 角频率计算
delta_omega = (Pref - Pout)/(2*H*omega_ref);
omega = omega_ref + delta_omega - D*(omega - omega_ref);
% 电压下垂
Vcmd = V_ref + kq*(Qref - Qout);
% 相位积分
theta = mod(omega/(2*pi)*t, 1);
end
```
这里J参数相当于虚拟转动惯量,调试时发现超过0.8系统响应就会明显变慢。D参数别直接照搬论
文推荐值,得配合LCL滤波器参数做扫频测试。
**中点电位平衡的骚操作**
三电平拓扑最头疼的就是中点漂移。我们在载波层叠PWM里植入平衡算法,实时监测上下电容电压
差:
```matlab
if (Vc1 - Vc2) > threshold
current_compensation = Kp*(Vc1 - Vc2) + Ki*integral_error;
modifyPWM_dutycycle(current_compensation);
end
```