这些年做新能源并网方向,我前前后后调过不少逆变器拓扑,从最常规的两电平到各种多电平方案,但要说上手最频繁、工程价值最直接的,还是基于I型NPC的三电平并网逆变器。尤其是配合恒功率PQ闭环控制做仿真验证,几乎每做一个储能或者光伏并网项目都绕不开。这篇就把我搭建这套仿真模型的过程、踩过的坑、以及一些参数整定的心得整理出来,希望给正在做同类课题的朋友一些参考。
这套仿真系统其实解决的核心问题很简单:让逆变器在并网运行时,按照我们给定的有功功率P和无功功率Q指令稳定输出,同时保证并网电流质量。它适合正在学习并网逆变器控制的学生、刚入门做光伏储能系统仿真的工程师,以及需要在MATLAB/Simulink里验证控制算法的研究人员参考。
1. 项目核心思路与技术选型解读
1.1 为什么选择I型NPC三电平拓扑
先聊聊拓扑选型。很多刚开始做仿真的朋友会问,既然两电平逆变器模型简单、控制成熟,为什么还要折腾三电平?其实答案很直接:电压等级和波形质量。
以额定直流母线电压800V左右的并网场景为例,如果采用两电平拓扑,IGBT需要承受完整的直流母线电压,器件应力大,开关损耗也高。而采用三电平NPC拓扑后,每个开关器件承受的电压只有直流母线电压的一半,这就是NPC(Neutral Point Clamped,中点钳位)名称的由来——通过二极管把中点钳位住,让电平数从两电平拓展到三电平。
I型NPC和三电平T型NPC是目前最常见的两种三电平方案。我选择I型,主要看中它的几个特点:导通损耗在中等开关频率下表现更好,中点电压平衡控制相对成熟,而且市场上有大量的驱动方案可以直接参考。T型虽然器件数量少,但对高压场景不太友好。做并网逆变器仿真,I型NPC是验证控制策略最稳妥的起点。
1.2 恒功率PQ控制的工程价值
PQ控制,本质上是解耦控制,把并网逆变器的输出有功功率和无功功率分开控制。为什么要这样?因为在并网模式下,逆变器既不决定电网频率,也不决定电网电压,它更像一个可控的电流源,跟随电网电压的频率和相位,向电网输送设定好的功率。
这种控制策略在光伏并网、储能变流器、微电网并网模式中极其常见。比如光伏电站,我们需要逆变器尽可能多地把直流侧的能量转化为有功功率送入电网,但无功功率则要按照电网调度指令来走,光伏电站甚至需要具备一定的无功调节能力来支撑电网电压。这时候PQ恒功率控制就派上了用场:外环给定P和Q的参考值,通过功率环输出电流内环的参考,内环快速跟踪电流,最终实现功率的精准输出。
在实际工程中,PQ控制的另一个价值在于它可以平滑地限制功率大小。分布式光伏并网规范往往要求逆变器具备有功功率限值和无功功率调节能力,一套可靠的PQ闭环控制是这些功能的基础。
1.3 适用场景与工程需求分析
这套仿真方案适用于三大类场景:
第一类是课题研究。比如"三电平逆变器并网运行特性分析""基于LCL滤波器的并网逆变器控制"这类毕业设计,用I型NPC三电平作为拓扑研究对象,配合PQ控制,既能体现一定的研究深度,又不至于因为拓扑过于复杂而无法收敛。
第二类是工程项目验证。在开发储能PCS或光伏逆变器时,硬件原型机投入大、调试风险高。先用Simulink搭建一套高保真度的PQ控制仿真模型,把控制算法、滤波参数、保护逻辑都验证充分了,再迁移到DSP代码中,能省掉大量的反复烧录与炸机风险。
第三类是教学演示。三电平拓扑和PQ控制是电力电子与新能源课程的重难点,通过仿真把功率流动、调制波形、电流响应可视化,比单纯讲公式好理解得多。
2. 逆变器主电路与控制原理拆解
2.1 从两电平到三电平:拓扑结构与波形优势
I型NPC三电平逆变器每一相桥臂由四个开关器件(通常用IGBT)和两个钳位二极管组成,直流母线上下各一个电容,电容中点与钳位二极管相连。以A相为例,输出电压相对直流负母线来说有三种状态:+Vdc/2、0、-Vdc/2,分别对应电平1、0、-1。
我当初第一次看这个拓扑结构时,险些被绕晕,后来总结了一个理解方法:把三个输出电平当成三个开关状态来记。高电平输出时上桥臂两个管子开通,中电平输出时中间两个管子配合钳位二极管开通,低电平输出时下桥臂两个管子开通。死区设置的时候要注意换流顺序,这也是仿真里最容易出问题的地方。
相比两电平,三电平带来的好处体现在三个维度:一是输出相电压阶梯由两级变成三级,波形更接近正弦,谐波含量显著降低;二是开关管承受的电压应力减半,可以选用耐压等级更低的器件;三是在同等开关频率下,电流纹波更小,滤波器的体积重量可以缩减。
仿真中如果直接对比两电平和三电平在相同滤波参数下的并网电流THD,你会发现差距非常直观。通常三电平方案的THD可以比两电平低30%以上,这也是三电平在中等压等级并网领域广泛应用的重要原因。
2.2 dq旋转坐标系下的PQ计算基础
恒功率控制的实现离不开坐标变换。三相静止坐标系下的电压电流都是工频交流量,如果用PI控制器直接跟踪正弦指令,会存在稳态误差,或者说带宽受限。解决思路是通过Park变换,把静止坐标系转换到与电网电压矢量同步旋转的dq坐标系中。
在dq坐标系下,三相平衡的电压电流变成了直流量,PI控制器可以做到无静差跟踪,控制难度大幅降低。按等幅值变换约定,有功功率P和无功功率Q可以表示为:
[ P = \frac{3}{2}(u_d i_d + u_q i_q) ]
[ Q = \frac{3}{2}(u_q i_d - u_d i_q) ]
在电网电压定向控制下,让d轴与电网电压矢量重合,则u_q等于0,公式进一步简化为:
[ P = \frac{3}{2} u_d i_d ]
[ Q = -\frac{3}{2} u_d i_q ]
这样一来,有功功率只与id相关,无功功率只与iq相关,两个通道完全解耦。外环功率控制器通过比较指令值与实际值的误差,输出电流内环的参考值idref和iqref,内环电流PI控制器再对电流进行快速调节。
理解这个解耦过程是整套控制的核心,因为它直接决定了控制环的设计思路。如果你把P和Q的误差直接给到同一个PI环而不经过解耦,系统在动态过程中会出现明显的功率耦合振荡,这在后面的调试中会频繁碰到。
2.3 功率外环与电流内环的双环控制结构
整套控制结构采用的是经典的双闭环:外环功率控制,内环电流控制。外环带宽较低,响应速度慢,功能是对功率指令进行无差跟踪;内环带宽较高,响应速度快,功能是快速跟踪外环给出的电流指令并抑制扰动。
具体来说,P指令Pref经过有功功率PI调节器生成idref,Q指令Qref经过无功功率PI调节器生成iqref。电流内环再根据idref和iqref生成调制电压指令。为了提升解耦效果,还需要引入电网电压前馈和电流交叉解耦项:
[ u_d = u_{gd} - \omega L i_q + K_p (i_d^{ref} - i_d) + K_i \int (i_d^{ref} - i_d) dt ]
[ u_q = u_{gq} + \omega L i_d + K_p (i_q^{ref} - i_q) + K_i \int (i_q^{ref} - i_q) dt ]
其中ωLiq和ωLid就是交叉耦合项,ugd和ugq是电网电压前馈项。有了前馈和交叉解耦,d轴和q轴才能近似独立控制,电流环性能才有保障。
调制环节方面,仿真中既可以采用基于载波的SPWM方式,也可以采用SVPWM方式。SPWM实现简单,适合快速验证原理;SVPWM直流电压利用率更高,输出谐波特性也更好。我在仿真中优先使用SVPWM,因为它的调制波计算并不复杂,效果却比SPWM好很多。如果刚上手,可以先从SPWM开始,确认控制逻辑无误后再切换到SVPWM。
3. 仿真模型搭建与参数设计全过程
3.1 仿真平台选择与主电路搭建
这套模型我是在MATLAB/Simulink环境下搭建的,主要用到Simscape Electrical(前身是SimPowerSystems)库。版本为R2022b,但R2018之后的版本基本都能兼容。
主电路部分包括以下几个模块:
- 直流电源:用DC Voltage Source模拟,电压设为700V,代表光伏或储能侧的输出电压;
- 直流母线电容:两个电容串联,中点引出用于NPC钳位,每个电容参数设为2mF;
- I型NPC三电平桥臂:用三个Universal Bridge设置为三电平NPC类型,或者直接用三个半桥模块加钳位二极管手动搭。前者建模效率高,后者可以更灵活地设置器件参数和观察中点电位;
- 逆变器出口滤波:采用L型滤波器,电感值为3mH,等效串联电阻0.1Ω。如果要对谐波要求更苛刻,可以改成LCL滤波器,但参数设计复杂度高一些;
- 电网:用Three-Phase Programmable Voltage Source模拟,线电压有效值设为380V,频率50Hz,通过升压变压器或直接经滤波电感连接到逆变器。
搭建过程中有几个细节需要特别留意。直流侧短路时的保护逻辑在仿真里可以先不处理,但要预留接口。每个IGBT的反并联二极管参数也要设置,否则仿真在换流瞬间可能出现的过压尖峰处理得不真实。三相电网模块要设置为理想电压源串联很小的内阻,否则仿真容易产生代数环报错。
3.2 锁相环与坐标变换的搭建
PQ控制的前提是精确获取电网电压的相位。我用的是同步旋转坐标系锁相环(SRF-PLL),它的基本思路是:将三相电网电压变换到dq系下,让q轴电压在稳态时趋近于零,通过PI调节器把uq盯到零,PI输出就是电网角频率的偏差量,再积分得到相位角θ。
SRF-PLL的搭建步骤如下:
第一步,用Three-Phase V-I Measurement模块测量电网电压,送到锁相环模块。第二步,将电压从三相abc变换到dq坐标系,变换角度为锁相环当前输出的θ。第三步,uq经过PI调节器,PI输出叠加2π50的基础角频率,积分得到θ。第四步,θ同时作为后续park变换的基准角度。
锁相环PI参数的整定直接影响并网稳定性。我常用的方法是按对称最优法整定,阻尼比取0.707,带宽取300Hz左右。带宽太低会导致动态响应慢,电网频率突变时相位跟踪滞后;带宽太高又容易将电网背景谐波引入控制环路。
坐标变换模块我习惯直接写MATLAB Function或构建Subsystem实现,不建议用Simulink自带的变换模块做黑盒,因为调试时需要查看中间量。变换公式基于经典的Clark和Park变换:
[ \left[ \begin{array}{c} u_\alpha \ u_\beta \end{array} \right] = \frac{2}{3} \left[ \begin{array}{ccc} 1 & -\frac{1}{2} & -\frac{1}{2} \ 0 & \frac{\sqrt{3}}{2} & -\frac{\sqrt{3}}{2} \end{array} \right] \left[ \begin{array}{c} u_a \ u_b \ u_c \end{array} \right] ]
[ \left[ \begin{array}{c} u_d \ u_q \end{array} \right] = \left[ \begin{array}{cc} \sin\theta & \cos\theta \ -\cos\theta & \sin\theta \end{array} \right] \left[ \begin{array}{c} u_\alpha \ u_\beta \end{array} \right] ]
注意这个变换的相位对齐方式有不同流派,有的用sin/cos组合,有的用cos/-sin组合,关键是保证d轴最终与电压矢量重合。如果变换基准搞反了,控制方向会反过来,系统在启动瞬间就发散,这是仿真中新手最常犯的错误。
3.3 PI参数计算与整定过程
参数整定是这套仿真里最耗时间、也最体现功力的环节。我用的是工程上最实用的带宽法。
先说电流内环。电流环带宽一般取开关频率的十分之一到二十分之一。仿真中开关频率设为10kHz,那么电流环带宽fc取500Hz到1000Hz之间,我取了800Hz。根据控制对象模型,被控对象为滤波电感L和等效电阻R的串联:
[ G_p(s) = \frac{1}{Ls + R} ]
PI调节器传递函数为Kp + Ki/s,通过零极点对消配置,令PI的零点抵消被控对象的极点,即Ki/Kp = R/L。闭环带宽ωc与Kp的关系近似为Kp = ωc * L。代入L=3mH,ωc=2π×800,Kp约等于15,Ki等于Kp×R/L等于500。实际仿真中我加了10%的调节余量,Kp取15.7,Ki取520,效果比较满意。
再说功率外环。功率环带宽远低于电流环,通常取电流环带宽的十分之一到五分之一。外环响应慢了,系统动态过程才不会产生振荡。我的做法是:先断开功率环,给电流环加阶跃电流指令,确认电流内环跟踪无误后,再闭合功率环并逐步加大外环Kp。有功功率环整定结果Kp=0.8,Ki=60;无功功率环Kp=0.6,Ki=50。两组参数略有差异是正常的,因为有功和无功通道上的等效增益不完全一致,需要分别微调。
调制部分的核心参数是三角载波频率和调制波幅值范围。SVPWM情况下调制波是连续变化的电压矢量信号,在Simulink中可以用SVPWM生成模块计算各相占空比。注意SVPWM的调制比上限可以达到1.1547,比SPWM高出约15%,这也是它直流电压利用率更高的原因。
3.4 从离网验证到并网联调的实测流程
我搭好模型后的调试流程是有讲究的,不建议直接上电网并联,而是按照以下步骤渐进开展:
第一步,先不连接电网,逆变器输出接纯阻性负载,给定固定的调制波,验证开环工作状态。看三相输出电压波形是否对称,各桥臂电平是否包含预期的+700/2、0、-700/2三档,中点电位是否在350V左右维持稳定。
第二步,在开环正常的基础上,闭合电流内环。给定idref和iqref阶跃,观察实际电流的跟踪响应,调整Kp和Ki直至动态响应在预期范围内且无稳态误差。此时可以顺便测一下不同指令下电流的THD。
第三步,接通电网,闭合功率外环。先给定Pref=10kW,Qref=0,观察稳态功率是否准确、并网电流是否与电网电压同相位。确认无误后,再逐步增加无功功率指令,检验解耦效果。
第四步,做动态实验。给定功率阶跃、电网电压跌落或者直流电压波动,记录系统响应波形,验证闭环控制系统的鲁棒性。如果一切正常,整套系统就算搭建完成了。
4. 常见问题与调试经验
4.1 中点电压不平衡问题
三电平NPC的一个固有麻烦就是直流母线中点电压会发生偏移。由于上下电容的充放电不对称,中点电压会偏离Vdc/2,导致输出波形畸变、开关器件应力不均,严重时还会导致电容过压损坏。
排查中点电压不平衡时,我先检查启动瞬间的电容初始电压是否设置了合理值。如果上下电容初始电压不一致,后续控制很难纠正过来。把两个电容的初始电压都设为350V后,问题就缓解了大半。
另一个常见原因是调制策略本身没有注入零序分量。在SVPWM算法中,通过调整正负小矢量作用时间的分配比例,可以主动控制中点电压平衡。如果模型里用的是简化SPWM,可以在调制波中注入特定的零序分量来抑制中点波动。我在仿真里加入了一个简单的零序电压补偿环节,根据中点电压偏差动态调整调制波偏移量,效果非常明显。
4.2 仿真不收敛与代数环问题
Simulink电力电子仿真最常见的问题就是启动就报错,要么说"Simulation may be singular",要么出现代数环警告。我排查这个问题时主要看三个地方。
第一,所有交流电压源和电容都必须有并联的电阻通路,比如给电网源加一个并联电阻,阻值设为大电阻如1kΩ,给直流电容加一个很大的并联电导,保证在没有开关通路的状态下电路矩阵可解。
第二,开关器件的缓冲电路参数不能为零。在Simulink里如果设置理想开关,换流瞬间可能出现计算奇异。给IGBT设置一个很小的缓冲电阻和电容,比如Rs=100Ω、Cs=1nF,仿真立刻稳定得多,而且对结果影响可以忽略。
第三,求解器类型和步长设置很关键。电力电子电路强非线性,离散求解器比连续求解器稳定得多,我一般用discrete(Tustin或零阶保持)求解器,步长固定在1微秒。三步设置完成后,模型基本不会出现不收敛的问题。
4.3 功率并网时电流冲击过大的处理
在刚接通电网的瞬间,逆变器输出电压和电网电压之间如果存在幅值或相位差,会瞬间产生很大的电流冲击,严重时仿真直接发散。
解决办法是增加预同步环节。在并网开关闭合前,先通过锁相环锁定电网相位,然后让逆变器输出电压的相位和幅值都追踪电网电压,等到压差和相位差都小于设定阈值后,再闭合并网开关。这个逻辑听上去简单,但操作顺序很讲究:先追踪电压,不要急着闭合开关;等到误差进到阈值之内还不能立刻并网,需要保持跟踪状态稳定一段时间,一般我保持4到5个工频周期,确认没有漂移后再闭合。这样并网冲击电流可以控制在额定电流的20%以内。
4.4 PQ指令切换时的功率耦合振荡
调试过程中我遇到过功率指令突变后,有功和无功功率出现明显振荡耦合的情况。现象是Pref阶跃上升时,Q输出先出现一个尖峰再回落,同时有功功率响应滞后。排查后发现两个原因:一是功率外环PI参数过大,带宽与电流环带宽过于接近,导致环间交互作用;二是前馈补偿项没有完全生效,dq轴之间的解耦不彻底。
解决办法是把功率环带宽降下来,保证至少与电流环有5倍以上的频率间距。然后检查交叉解耦项中电感值是否与主电路实际参数一致。如果解耦项中用的L值和主电路滤波电感有偏差,解耦就不会彻底,动态过程中必然出现耦合。我采用的是主电路L取3mH,解耦项也用同样的3mH,再把剩余耦合项当作扰动由PI环消化,最终效果很理想。
5. 仿真结果分析与性能评估
5.1 稳态性能分析
稳态工况下,我设置直流母线电压700V,电网线电压有效值380V,滤波电感3mH,开关频率10kHz。给定Pref=15kW,Qref=0kVar,运行至稳定后读取数据:
- 有功功率稳定在15.02kW,误差约0.13%;
- 无功功率接近0,误差小于0.5kVar;
- 并网电流THD约为2.8%,满足IEEE 519对THD低于5%的要求;
- 直流侧中点电压波动约为±2V,平衡控制有效。
如果换成两电平逆变器做同样的测试,相同滤波条件下THD通常在4%到5%之间。三电平的优势在这里体现得很直观。当然,THD与载波比、滤波电感大小都有关系,实际中需要通过参数扫描寻找最优组合。
5.2 动态响应特性
动态实验中我重点看了两个指标:功率阶跃响应和电网电压跌落响应。
功率阶跃测试中,在t=0.5s时将Pref从10kW阶跃到20kW,Qref保持0kVar。实测有功功率调节时间约30ms,超调量约4%,功率环表现符合预期。电流内环响应时间约5ms,说明电流带宽设置合理。无功功率在暂态过程中最大偏差约0.8kVar,随后恢复到指令值。
电网电压跌落测试中,在t=0.8s时将电网电压幅值突降20%,持续200ms后恢复。系统在电压跌落期间能够维持功率输出基本恒定,这是因为电网电压前馈项实时补偿了电压波动的影响。恢复瞬间波形略有冲击,但1到2个周期内即回到稳态。
5.3 与两电平方案的对比
同样的功率等级和滤波条件下,两电平与三电平的对比数据大致如下:
| 指标 | 两电平逆变器 | I型NPC三电平逆变器 |
|---|---|---|
| 输出线电压电平数 | 2 | 5(线电压层面) |
| 器件承压 | 100%直流母线电压 | 50%直流母线电压 |
| 电压变化率dv/dt | 高 | 低约50% |
| 并网电流THD | 约4.5% | 约2.8% |
| 滤波器体积 | 基准 | 可缩小约30% |
开关管承压减半是中高压应用最看重的指标,因为这会直接影响器件选型成本。波形质量的提升则直接降低了滤波环节的设计难度。这些优势叠加起来,解释了为什么三电平拓扑在储能PCS和光伏逆变器中越来越普及。
6. 实操体验与扩展方向
6.1 我个人调试的一些体会
整套模型从零开始搭到完全调通,我大约花了三个工作日。最难的部分其实不是数学公式,而是把各个子系统之间的端口方向、参考坐标系、标幺值约定理顺。Simulink最坑的地方在于,同样的模块在不同版本中端口顺序可能不同,所以一旦发现莫名其妙的错误,先用示波器把每个子系统边界上的关键信号都打出来看一眼。
关于PI参数,我的建议是不要指望一次性整定成功。先让系统跑起来,Kp从小到大逐步增加,观察临界振荡点,再取临界值的50%左右当作设计值,这种方法在仿真里也算比较快。每次修改参数前,保存一组基线数据,方便回滚对比。
另外,仿真结果的正确性要特别注意验证。用仿真数据算出来的功率、效率、THD是否合理,不能只看波形好就说系统正确。我习惯做一个能量校验:直流输入功率减去三相并网输出功率,应该等于滤波电感电阻损耗和开关损耗之和。如果能量不守恒超过5%,模型几乎一定有误差。
6.2 后续值得扩展的方向
这套PQ控制的框架搭好后,往多个方向扩展都很方便。比如增加低电压穿越功能,当检测到电网电压跌落时根据规范要求输出相应的无功支撑电流,这和LVRT的实际工程要求直接相关。也可以把线性PI控制器替换为PR控制器,在静止坐标系下直接控制电流,省掉坐标变换的环节,这在弱电网下往往表现更好。
另一个很实用的扩展是加入中点电压平衡的主动控制算法,并对比不同调制策略下中点电压波动的大小。这既是论文里很容易出成果的方向,也是在工程中提升系统可靠性的关键。如果再进一步,把模型里的电网电源换成阻抗动态可变的弱电网模型,还可以分析弱电网下锁相环与电流环的交互稳定性,研究深度就更上一层楼了。
7. 参考文献
在做这套仿真和学习I型NPC三电平逆变器控制时,下面这些文献给了我很大帮助,也一并整理出来供参考。
[1] 张兴,曹仁贤. 太阳能光伏并网发电及其逆变控制[M]. 2版. 北京:机械工业出版社,2018.
[2] 王兆安,刘进军. 电力电子技术[M]. 5版. 北京:机械工业出版社,2009.
[3] 徐德鸿. 电力电子系统建模及控制[M]. 北京:机械工业出版社,2006.
[4] 陈坚. 电力电子学——电力电子变换和控制技术[M]. 3版. 武汉:华中科技大学出版社,2011.
[5] 年珩,胡伟. 三相三电平NPC逆变器SVPWM控制策略研究[J]. 电工技术学报,2013,28(增刊1):224-229.
[6] 杨勇,阮毅. 三相并网逆变器LCL滤波器研究[J]. 电机与控制学报,2009,13(5):694-699.
[7] 董密,吴勤,肖泽明. 三相电压型PWM整流器双闭环控制策略研究[J]. 电力电子技术,2009,43(4):43-45.
[8] Nabae A,Takahashi I,Akagi H. A new neutral-point-clamped PWM inverter[J]. IEEE Transactions on Industry Applications, 1981,IA-17(5):518-523.
[9] Kjaer S B,Pedersen J K,Blaabjerg F. A review of single-phase grid-connected inverters for photovoltaic modules[J]. IEEE Transactions on Industry Applications,2005,41(5):1292-1306.
[10] Teodorescu R,Liserre M,Rodríguez P. Grid Converters for Photovoltaic and Wind Power Systems[M]. Wiley-IEEE Press,2011.
顺便说一句,参考文献里Nabae等人在1981年提出的这篇NPC逆变器原始论文非常值得精读。虽然年代久远,但很多基础概念比如钳位原理、电平定义、开关状态表,都是从那篇文章来的。把原始文献读懂,再看后来的改进型论文,会轻松很多,这也是我建议读文献时先从源头开始的原因。