ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

两级式单相光伏并网仿真:Boost MPPT与全桥逆变Simulink指南

两级式单相光伏并网仿真:Boost MPPT与全桥逆变Simulink指南 1. 项目概述为什么自建两级式单相光伏并网仿真看到标题就明白这不是个花架子项目而是一个非常经典的电力电子入门到进阶的完整闭环前级用Boost电路做MPPT最大功率点跟踪后级用单相全桥做并网逆变。两级式的意义在于把“追最大功率”和“并网控制”两个任务彻底解耦——前级只管把光伏板电压抬到合适的直流母线电平后级只管把母线能量高质量地送进电网。我最初做这个仿真时走的是单级式路线后来发现并网电流波形稍微一乱MPPT也跟着抖动两个控制环互相牵制排查起来缠成一团。换成两级式之后调试体验直线上升所以如果你也卡在控制耦合的泥潭里这个方案值得一试。这篇博文会从系统架构开始接着拆解前级Boost建模和MPPT算法细节然后单独用一个章节讲PWM波生成和前级控制环的实现思路再聊后级逆变与两级配合的经验最后整理一份调试中真实遇到过的坑对照表。仿真环境是MATLAB/Simulink光伏组件模型和功率电路部分用Simscape Electrical搭控制逻辑用常规Simulink模块搭这套配置在工程实践里覆盖度非常高无论你是毕设、课程设计还是想复现文献里的控制策略都可以直接参考。适合谁来读如果你对DC-DC和MPPT只是停留在公式层面想看看Simulink里到底怎么搭模型或者你已经跑通过单级并网但想把“两级式”的母线电压和解耦思路讲清楚再或者你纯粹是想找个仿真项目练手把Boost电路、PWM控制、MPPT算法这几块硬骨头一次啃完——这篇都合适。我不会只贴一张最终仿真图然后说“看成功了”而是把每一部分的选型和理由都摊开来讲清楚因为仿真这东西跑通了只是第一步知道为什么这么搭、参数为什么这么取才真正值钱。2. 整体架构与两级式方案的设计思路2.1 两级式拓扑前级Boost加后级逆变分工明确整套系统的信号流和功率流可以概括成一句话光伏阵列输出低压直流经过Boost升压后稳定成高压直流母线再由单相全桥逆变器转换成与电网同频同相的交流电中间靠滤波器把开关纹波滤掉。这个架构里每一级都有自己的控制目标前级Boost负责执行MPPT算法实时调整开关管的PWM占空比让光伏组件始终工作在最大功率点附近。它的输入侧接光伏阵列输出侧接直流母线电容。后级全桥逆变负责控制并网电流的幅值和相位。它从直流母线取能量通过SPWM或单极性调制输出正弦化电压再经过L或LCL滤波器并入电网。直流母线环节前级输出和后级输入之间的储能电容它的电压水平直接决定后级能够输出的电压上限同时也是两级功率平衡的“缓冲池”。为什么选两级而不是单级单级式拓扑虽然少了一套变换器效率理论上更高但MPPT和并网逆变必须同时完成后级逆变器的调制比直接受光伏输出电压影响。光伏板的电压范围非常宽比如一块额定36V的板子在最大功率点可能只有32V但在低照度下开路电压却可能接近45V这种宽范围变化对单级并网来说是很头疼的——逆变器既要保证足够的升压比又要维持并网电流质量控制难度直线上升。两级式的好处在于Boost先把电压稳定在一个固定水平比如360V或400V后级逆变器面对的就是一个相对稳定的输入源MPPT和并网控制互不干扰。用生活化的类比就是单级式相当于一个人一边爬山一边开车既要找路又要握着方向盘稍微分心就可能跑偏两级式则是先让副驾驶把车稳定在平路上主驾驶只需要专注控制方向和速度就好。2.2 前级MPPT控制的原理与算法选型MPPT的本质是不断寻找光伏阵列输出功率对电压的导数等于零的那个点。光伏组件的P-V曲线是一条先上升后下降的单峰曲线峰值就是最大功率点。在峰值左侧电压增加会导致功率增加dP/dV为正在峰值右侧电压增加会导致功率减少dP/dV为负而峰值点附近dP/dV接近0。所有MPPT算法的核心思想都是沿着这个曲线“爬山”不断逼近顶点。常见的MPPT算法主要有固定电压法、扰动观察法PO、电导增量法INC和智能算法。扰动观察法的实现在工程中最常见每隔一个周期给参考电压或占空比加一个小的扰动然后观察功率变化的方向如果功率增加就继续沿原方向扰动功率减小就反方向扰动。这个算法逻辑简单、响应快但存在稳态振荡——在最大功率点附近功率指令总是在不断地左右试探PWM占空比也会跟着微微抖动。电导增量法的优势在于它可以精确判断工作点与最大功率点的相对位置通过比较电导变化量dP/dV与瞬时电导-P/V的关系来决定扰动方向稳态振荡比PO小但算法复杂度更高对电压和电流采样的精度也更敏感。实际做仿真的时候我建议先上扰动观察法把整套链路跑通再去替换电导增量法做对比这样每一步的变化都足够清晰不会一上来就是一堆波形叠加在一起看不明白。选择扰动观察法还有一个理由它不依赖光伏组件的具体参数模型。电导增量法需要比较精确的电压电流采样值来做微分计算如果仿真中光伏组件模型内部参数设置得比较粗糙或者采样噪声偏大INC反而容易误判。PO本质上只看功率的变化符号对绝对精度的要求低更适合作为第一版实现。2.3 仿真环境选择与模型搭建策略MATLAB/Simulink里搭建光伏并网系统有两条路线纯Simulink模块建模或者基于Simscape Electrical的物理建模。我强烈建议功率电路直接用Simscape控制逻辑用Simulink。Simscape的好处在于功率开关、二极管、电感电容这些器件都是物理模型不需要自己推导状态方程MOSFET的导通电阻、二极管管压降这些寄生参数都能设置仿真结果更接近实际。而控制部分用Simulink因为PI控制器、PWM发生器这些在Simulink里实现非常灵活调试的时候改控制参数也方便。搭建顺序上我的习惯是先搭前级Boost独立电路输入用直流源模拟光伏输出重点验证MPPT和PWM控制逻辑没问题然后替换成光伏组件模型看MPPT能不能真的找到最大功率点最后再接逆变器和电网。前级单独验证通过后再接后级能省掉大量耦合调试的时间。3. 前级Boost电路建模与MPPT控制实现细节3.1 Boost电路工作模态与分析Boost升压电路的结构很经典光伏输入端串联一个电感电感后接二极管二极管之后再分两路一路到输出电容和负载一路经过开关管接地。开关管导通时电感两端加的是输入电压电流线性上升能量储存在电感中开关管断开时电感电流不能突变只能通过二极管流向输出端此时电感电压和输入电压串联叠加输出电压高于输入电压。Boost电路的升压比由占空比D决定理想情况下Vout Vin / (1 - D)。注意这个公式成立的前提是电路工作在连续导通模式CCM也就是电感电流在整个开关周期内都不降为0。如果电感设计得太小或者负载太轻电路会进入断续导通模式DCM升压比就不再是简单的1/(1-D)关系。光伏MPPT场景下我们通常希望Boost尽量工作在CCM模式因为DCM下电流纹波大、控制建模也更复杂。前级Boost的关键元件参数主要有三个电感L决定电流纹波大小。电感越大纹波越小但动态响应变慢、体积变大。经验公式是L ≥ Vin_min × D_max / (f_sw × ΔI_L)其中ΔI_L一般取平均输入电流的20%到40%。输出电容C决定直流母线电压纹波。电容越大电压越平稳但充电时间也越长。通常根据允许的电压纹波百分比来算C ≥ I_o × D_max / (f_sw × ΔV_o)。开关频率f_swBoost的PWM载波频率。选得越高电感和电容可以做得越小但开关损耗增加仿真步长也必须相应缩小。举个例子假设光伏板最大功率点电压32V最大功率200WBoost输出母线电压设定360V开关频率取20kHz输入电流平均值约6.25A允许电流纹波按30%算就是约1.9A。占空比D 1 - 32/360 ≈ 0.911这个值太高了实际设计中建议把光伏组件串联或者前级加一级升压把MPPT工作电压范围提高。这就是为什么两级式系统的前级Boost通常需要多个光伏板串联而不是一片板子直接接Boost去升到360V。如果输入电压只有32V而要把输出拉高到360V占空比接近0.9二极管反向恢复压力大开关管有效占空比窗口极窄环路稳定性也会变得很敏感——这也是我在实际调试中踩过的一个坑。3.2 MPPT算法的Simulink实现扰动观察法为例在Simulink中实现扰动观察法我按四个步骤来拆采样用Rate Transition或Memory模块按固定周期采样光伏输出电压V_pv和电流I_pv计算当前功率P V × I。比较将当前功率P(k)与上一周期功率P(k-1)做差得到ΔP当前电压V(k)与上一周期电压V(k-1)做差得到ΔV。判断方向如果ΔP大于0且ΔV大于0说明工作点位于最大功率点左侧且还在向上爬应该继续增加参考电压如果ΔP大于0但ΔV小于0说明刚才的电压扰动方向反了应该反向如果ΔP小于0说明扰动方向错误需要翻转。一个常见的简化写法是ΔP与ΔV同号则继续同向扰动异号则反向扰动。输出更新参考电压V_ref经过一个PI控制器或者其他方式转换成占空比D送给PWM发生器。这里有一个容易踩的坑采样周期和扰动步长的配合。MPPT的采样周期不能太快否则PWM占空比还没来得及让电路稳定下一次扰动就来了整个系统会抖成一团。我一般取MPPT采样周期为开关周期的20到50倍比如开关频率20kHz周期50微秒MPPT周期取1到2毫秒左右。扰动步长也要控制好步长太大最大功率点附近振荡幅度大步长太小跟踪速度慢光照突变时反应不过来。电导增量法的实现也顺便提一句它计算dP/dV并与-P/V比较如果dP/dV -P/V说明还没到最大功率点继续增加电压dP/dV -P/V说明已经越过最大功率点需要减小电压两者相等时不做调整。这个算法在光照快速变化时的表现比PO好但在仿真里需要用滤波器把采样噪声处理干净否则微分项会引入大量毛刺。3.3 PWM波生成方式与占空比限制Boost电路的PWM波生成最简单的方式是用一个周期为Ts的锯齿波或三角波与占空比指令D_ref进行比较产生开关信号。Simulink里可以直接用Relational Operator模块将D_ref与Repeating Sequence Staircase生成的锯齿波做比较输出1和0的开关信号送给MOSFET的Gate端。这里有几个细节值得讲究PWM载波频率锯齿波的周期要跟开关频率一致。我习惯用20kHz既考虑了器件开关损耗又让电感和电容的体积可控。仿真步长至少取载波周期的1/100也就是0.5微秒左右否则开关边沿无法准确呈现电流纹波波形也会失真。占空比限幅Boost占空比不能无限接近1因为开关管有一个最小导通时间二极管也有反向恢复时间。我在仿真里会加一个Saturation模块把占空比限制在0.05到0.95之间防止积分器饱和后占空比被拉满造成电感电流失控。驱动信号死区Boost只有一个开关管理论上不需要死区。但后级全桥的上下桥臂如果同用一路PWM取反逻辑就必须加死区时间否则上下管瞬间直通直流母线直接短路。仿真里可以用Transport Delay或者在PWM发生器里设置死区参数来实现。4. 仿真参数设置与两级的联调过程4.1 前级Boost独立仿真先把MPPT跑通再说我的第一个里程碑目标不是并网而是让Boost电路在固定直流输入下把MPPT跑对。具体做法是用一个可调直流电压源代替光伏组件给它一个固定电压比如36V然后把MPPT算法跑起来观察输出功率是否收敛到输入电压×输入电流的最大值附近。但这个做法对扰动观察法来说有个问题直流源的内阻极低电压不会随着电流变化而变化P-V曲线近乎垂直MPPT很难找到“最大功率点”甚至可能出现占空比直接冲顶的异常现象。所以更稳妥的做法是直接用Simscape里的光伏组件模型或者用一个受控电压源串联一个电阻来模拟光伏组件的输出特性。光伏组件模型在Simscape Electrical的Sources库里可以直接找到需要输入的参数包括开路电压Voc、短路电流Isc、最大功率点电压Vmpp和电流Impp还有串联电阻Rs和并联电阻Rsh。这些参数可以从组件数据手册里查比如常见的250W多晶硅组件Voc约37.5VIsc约8.9AVmpp约30.2VImpp约8.3A。我测试时喜欢把光照和温度也接成信号输入方便后面做光照突变的工况测试。跑完第一版的结果你会看到光伏功率先快速上升然后在一个区间内小幅振荡这就是PO算法的典型波形。振荡幅度取决于扰动步长比如参考电压扰动步长取0.1V功率振荡大约就是最大功率的1%到2%。如果你觉得振荡偏大可以把步长调小但跟踪速度也会变慢这里就是一个典型的权衡。我个人更推荐固定步长加自适应在功率变化比较大时用大步长快速逼近接近最大功率点时切换小步长降低振荡。这个功能用Simulink的Switch模块加一个阈值判断就能实现不用上复杂的状态机。4.2 光伏阵列与Boost电路的参数匹配前级Boost的输出电压决定了后级逆变器的直流母线电压。对于单相220V并网系统直流母线电压至少要高于电网峰值电压的两倍才能保证逆变器的调制比不过饱和。220V电网的峰值是约311V考虑到调制比留10%裕量母线电压取360到400V比较合适。光伏阵列的串联数直接决定前级Boost的输入电压范围和占空比。假设单块组件Vmpp30V串联8块就是240VBoost需要把240V升到360V占空比D 1 - 240/360 0.33这个占空比处于非常健康的工作区间。如果并联两路输入功率翻倍Boost电感的电流也要翻倍。设计时先把MPPT电压范围定下来再反推Boost占空比区间确保占空比落在0.2到0.8之间这样控制环的增益不至于太极端。网侧电感的选择也是两级配合的重要环节。单相全桥逆变器输出的SPWM波里含有大量开关频率谐波L滤波器的截止频率一般取开关频率的1/10到1/20。比如开关频率20kHz截止频率取2kHz左右电感值L ≈ (Vbus / (6 × f_sw × ΔI_max))其中ΔI_max是允许的电流纹波峰峰值。我通常按额定电流的20%来定。如果滤波效果不够好可以升级成LCL滤波器多一级电容和阻尼电阻但稳定性分析也更复杂初学阶段用L就够。4.3 后级逆变与并网控制的基本配合后级单相全桥采用双环控制外环是直流母线电压环内环是并网电流环。母线电压环的作用是维持前级Boost输出和后级逆变消耗之间的功率平衡如果光伏输出功率大于并网功率母线电压上升电压环会增大电流指令把更多能量送入电网反之则减小电流指令。这个环路的带宽要远低于MPPT的扰动频率一般取10到50Hz否则MPPT引起的功率波动会直接传递到并网电流指令上造成电流波形畸变。电流内环采用PR控制器或者PI控制器加电网电压前馈。PI控制器在静止坐标系下对正弦电流跟踪存在稳态误差为了解决这个问题要么用dq旋转坐标系下的PI控制要么用静止坐标系下的PR控制。PR控制器在谐振频率处的增益趋近无穷可以做到对正弦参考的无静差跟踪实现起来也不复杂传递函数是Kp Kr × s / (s² ω₀²)其中ω₀是电网角频率50Hz对应的314 rad/s。我在仿真里用PR加电网电压前馈效果比纯PI好很多。前馈的物理意义是逆变器输出的电压大致等于电网电压加上电感压降如果提前把电网电压加进去电流环就不需要额外扛电网电压的扰动。和单级式系统相比两级式的配合核心在于给后级一个稳定干净的直流母线。Boost的MPPT扰动引起的母线电压波动后级电压环需要能够吸收掉同时后级电流环的切换动作也不能剧烈影响到前级的输入功率。调试的时候先把后级断开让Boost单独工作在纯阻性负载下等母线电压稳定在360V附近再接上后级。两级联调里有很多容易翻车的细节比如启动时序如果Boost还没建立母线电压就把后级逆变投入逆变器很可能出现过流或母线电压跌落导致保护动作。我一般会加一个简单的使能逻辑母线电压升到设定值的90%以上才给后级发启动信号。仿真中这个逻辑可以用一个比较器和Switch模块组合实现。5. 常见问题与排查技巧实录5.1 Boost电路振荡与PWM波形异常“Boost电压环怎么抑制振荡”是仿真调试中出现频率最高的问题之一。我遇到过的振荡来源主要有三种第一种是MPPT扰动叠加电容量偏小导致的低频振荡。现象是母线电压在几十赫兹频率上有明显的波动波形像一个缓慢的呼吸。原因是MPPT给出的占空比扰动直接影响了Boost输出能量而母线电容不足以吸收这些波动。解决办法有三个方向加大母线电容、减小MPPT扰动步长、或者在MPPT输出端加一个低通滤波器。我实测加一个截止频率20Hz的一阶低通滤波器效果立竿见影母线电压波动能降一半以上。第二种是占空比参考与PWM载波频率不匹配导致的高频振荡。如果D_ref更新很快或者带有巨大的毛刺而锯齿波生成频率不够高就会出现开关周期内多次翻转的现象PWM波形看上去密密麻麻像是一个周期内开了很多次闸。这种情况要检查D_ref是否经过了适当的限幅和滤波以及载波频率是否保持严格稳定。Simulink里如果用了VariableTransportDelay或不同步的离散模块可能会引入时间抖动建议用固定步长仿真器跑功率电路部分。第三种是电感或者二极管寄生参数设置不合理引起的阻尼不足。Simscape里的MOSFET有Ron和Roff参数二极管有Ron和Vf参数如果把这些都设成理想值0电路就会处于无阻尼状态很容易在开关瞬间产生振铃。我一般给电感串联一个0.1到0.5欧姆的等效串联电阻虽然实际电感也有这个量级的内阻这样仿真的阻尼特性更接近真实器件。5.2 光伏组件模型参数不匹配导致MPPT失效MPPT跑飞的一个常见原因是Simscape里光伏组件模型的参数设置互相矛盾。比如你设了开路电压37V、短路电流8.9A但电池片串联数和并联数填错了模型生成的I-V曲线可能会严重偏离预期。最简单的验证方法是给光伏组件直接接一个可变电阻负载扫一遍输出功率人工确认最大功率点是否在预期电压电流附近。这一步花不了几分钟但能省掉后面一整天排查MPPT失效的时间。另外数据手册里给出的参数是在标准测试条件1000W/m²、25°C下的数值仿真里如果输入的光照和温度信号不对最大功率点会偏移。Simscape光伏组件模块里一般有一个参数叫“Array data ”可以选择按单个组件填写或者按整个阵列填写注意这里的串联模块数、并联模块数一定要与实际拓扑一致否则MPPT找到的“最大功率点”可能完全是错的。我试过用一组标称100W、但实际串联并联配置填倒的数据结果MPPT稳定后的P-V曲线显示最大功率只有60W一开始还以为是算法有问题后来检查发现是组件数填错。这种问题光看算法代码是发现不了的必须回到模型参数源头核对。5.3 并网电流畸变与THD超标并网电流畸变的典型表现是含有大量高频毛刺或者过零附近有平顶。毛刺一般来自L滤波器选型偏小截止频率过高开关纹波没有被充分衰减。平顶则多半是调制比饱和也就是直流母线电压不够高逆变器输出电压指令在某些瞬间超过了可用电压的范围。解决办法是提高母线电压参考值或者降低逆变器调制比最大限幅。还有一个容易被忽视的问题仿真步长选得过大时并网电流波形会在过零处出现锯齿状畸变。如果只用ode45变步长求解器功率电路部分的开关瞬间可能被跳过电流波形上的细节丢失。我建议功率电路和控制逻辑都使用固定步长步长取开关周期的1/100到1/200。比如100微秒的开关周期步长取0.5到1微秒。虽然仿真速度会变慢但波形质量完全不一样。电网侧电压源的设置也影响并网波形。Simscape里用Sinusoidal Voltage Source做电网模型如果它的内阻设置为0逆变器并网瞬间可能出现很大的电流冲击。我习惯给电网模型串一个0.1到0.5欧姆的内阻一方面更接近实际电网阻抗另一方面避免纯理想源的数值振荡问题。5.4 仿真速度慢与代数环问题两级式加上MPPT和并网双环仿真模型规模不小如果不加约束跑一个0.5秒的工况可能要等好几分钟。常用的加速手段包括去掉非必要的示波器采样节点用To Workspace只记录关键信号把Simscape电路的离散化步长设大一些比如从1微秒放宽到2微秒前提是开关纹波形态还能接受还有就是把后级并网部分先简化为纯阻性负载等前级参数全部调试完之后再换回全桥。代数环是Simulink仿真里另一个常见问题表现为仿真报错“Algebraic state”或者卡在初始化阶段很长时间。它通常出现在控制信号和功率信号之间的直接反馈环路上比如占空比直接影响输出电压输出电压又经过反馈参与占空比的解算。解决方案是在反馈路径中插入Memory模块或者Unit Delay模块打破瞬时代数依赖。在MPPT的采样回路里加入Unit Delay是标准做法因为它本身就需要一步延迟形成上一周期的功率和电压值。6. Simulink模型搭建实操记录以Simscape为主6.1 从空白模型开始搭建Boost主电路我每次搭Simscape仿真都从空白模型开始不用模板因为模板里往往带了大量不需要的示例模块反而干扰思路。第一步在Simulink库浏览器里拖入以下模块光伏组件模型Solar Cell或PV Array如果考虑整串组件我习惯用PV Array它支持自定义串并联数能直接生成I-V和P-V曲线。也有用单个Solar Cell模块再自己串并联的做法灵活但麻烦适合做研究论文里的人为故障注入。MOSFET模块Simscape Electrical的MOSFET支持栅极信号输入导通电阻和寄生电容都可以设。Boost开关管选N沟道增强型参数按实际器件如IRFP460来填。电感L填电感值同时勾选R_L项填等效串联电阻实测能减小振荡。二极管Boost续流二极管选Diode模块注意设置导通压降Vf和反向恢复参数默认值在仿真中足够用。电容C母线电容填容值设一个低ESR。电压电流测量模块用电流传感器和电压传感器把V_pv、I_pv、V_bus信号引到Simulink域注意传感器输出的信号需要通过Simulink PS-Simulink Converter模块转换。脉冲电压源如果不用MPPT想手动测Boost开环特性可以先用Pulse Generator产生固定占空比方波。等开环跑通再替换成MPPT控制的D_ref输入。光伏阵列模块的I-V曲线可以通过它的“Array data”选项卡里的显示功能查看。我在Simscape中设置了一个可变的光照信号输入从常数模块换成阶梯信号这样后面可以方便地做光照突变实验检验MPPT的跟踪动态。6.2 控制子系统封装MPPT加PWM生成控制逻辑我习惯封装成独立子系统方便后续复用。MPPT子系统的输入是V_pv和I_pv输出是占空比D_ref第一步用Simulink的Sample and Hold或Unit Delay模块做离散采样设置采样时间为Ts_mppt比如1ms。第二步算功率P V_pv × I_pv然后与上一周期值比较。第三步通过逻辑判断决定D_ref的增减方向D_ref每次变化一个固定步长ΔD。有人喜欢直接用D_ref作为扰动目标有人喜欢先扰动V_ref再通过PI得到D_ref这两种做法我在调试里都试过。直接扰动D_ref的好处是链路短少一个PI坏处是光伏板电压跟随占空比变化的关系是非线性的在最大功率点附近步长控制不那么直观。扰动V_ref再串PI物理意义更清晰光照突变时也能更平滑地跟踪只是控制器参数多一组要调。我第一版推荐扰动D_ref少一层环路定位问题容易如果后面想跟论文里的控制策略对标再换V_ref方案。PWM子系统更简单用Repeating Sequence Staircase生成0到1的锯齿波周期等于1/f_sw和D_ref做比较输出经过布尔转换接到MOSFET的物理信号端口G。这里唯一要注意的是D_ref经过Saturation限幅建议把上下限设为0.1和0.9遇到异常状况时至少保证Boost不会失控。6.3 后级并网与锁相环的模拟实现后级全桥逆变在Simscape里用四个MOSFET搭H桥桥臂中点经L滤波器接电网电压源。并网控制需要知道电网电压的相位仿真的锁相环可以用Simulink自带的PLL模块也可以自己搭一个基于Park变换的锁相环。对纯仿真来说最保险的初始化模式是用一个与电网电压相位完全一致的理想正弦信号来直接产生调制波这样电流内环可以先专注于跟踪准确性等到系统跑通之后再去验证锁相环的抗扰性能。这样做的好处是排除锁相环本身带来的干扰坏处是仿真结果比真实系统“好得太多”不过作为教学演示先跑通再完善反而是合理的路径。后级控制的电流参考方向按逆变器向电网输送功率的极性来定义。母线电压环的输出作为电流幅值指令电网相位通过正弦函数生成电流参考波形。电流误差进PR控制器输出叠加电网电压前馈得到调制波信号调制波与三角载波比较后产生全桥的SPWM信号。在Simulink里可以很方便地将调制波与三角波比较产生S1到S4的开关序列同一桥臂的上下管信号取反并插入死区。并网启动的瞬间最容易出问题。如果电网电压和逆变器输出电压相位不一致就并入会产生巨大的冲击电流。仿真里的处理办法是让调制波乘以一个软启动系数在初始的若干个工频周期内从0慢慢增大到1这样电流指令是渐变升起的冲击电流就被平滑掉了。7. 仿真结果分析与实验验证心得7.1 正常工况下应该看到的波形前级Boost跑通后光伏输出功率波形应该呈现一个先上升、稳定后小幅振荡的形状。以250W组件、8串2并的阵列为例在标准光照下最大功率约4000WPO算法稳定后功率波动约40到80W占空比在0.33附近微微变化。母线电压波形应该稳定在360V附近纹波峰峰值约3到5V。后级并网电流波形在稳定状态下应该是标准的正弦波与电网电压同频同相。功率因数的判断可以通过观察电流过零点与电压过零点是否对齐不过仿真里通常直接算有功无功更精确。总谐波畸变率在L滤波器下通常在3%以下如果波形是干净的THD在1%左右也不奇怪。这里需要强调一点Simulink的THD分析不要直接在示波器上看最好用power_fftscope工具或者将电流数据导出到工作区后用MATLAB脚本计算这样能得到可信的数值指标。7.2 光照突变时的MPPT动态响应光伏并网系统要面对的一个标准测试工况是光照从1000W/m²突降到500W/m²。此时最大功率点从4000W掉到约2000W附近MPPT需要重新收敛。优秀的动态响应应该是在几十毫秒内追踪新的最大功率点母线电压跌落不超过5%到10%并网电流幅值跟着减小但不能出现明显的暂态畸变。我实测过不同的算法表现PO在光照突变后往往要经过一段较长时间的重新搜索过程其间占空比可能先过度调整再回摆INC的收敛路径更平滑但前提是采样滤波做得好。这个场景非常考验MPPT采样周期的设置如果采样周期太短新的占空比指令还没让电路稳定下来就再次被采样整个跟踪过程会变成一团噪声采样周期太长则跟踪响应慢光照突变后的动态性能难看。我的经验是采样周期取5到20ms之间具体取决于开关频率和电路时间常数留给Boost电感电流足够的时间建立新的稳态再继续扰动。7.3 效率分析与母线电容的影响两级式的效率可以分解成Boost效率和逆变效率两部分。Boost效率主要取决于开关管的导通损耗、开关损耗和二极管压降损耗仿真里可以通过搭功率损耗测量来定量分析。母线电容的容值选择对效率影响不大但对动态响应影响很大容值偏小光照突变时母线电压波动剧烈后级电流环容易饱和容值偏大启动时间变长MPPT和电压环之间的动态交互也会变得迟钝。一般按输出功率每千瓦搭配1到2mF来估算母线电容在仿真中可以上下调整观察效果。还有一个值得做的实验把MPPT关闭固定占空比观察光伏组件输出点偏离最大功率点的程度。用一个扫描法在占空比0到0.9之间每隔0.01跑一个静态工作点把功率曲线画出来可以看到理论最大功率点和实际工作点的偏差。这个实验能帮助你直观理解MPPT的价值也能帮你校准MPPT算法的参数范围。8. 实操总结与经验延伸整套仿真做下来我最深的一个体会是两级式系统的调试顺序极其重要前级和后级必须分开验证千万不要一上来就搭完整闭环仿真去指望一次跑通。我见过很多同学直接拖了一个网上找的完整模型然后稍微改几个参数就开始跑报错了也搞不清楚是MPPT的问题、Boost参数的问题还是并网控制的问题最后只能到处乱试。如果按照“Boost开环→Boost闭环→MPPT→后级开环→后级闭环→两级联调”这个顺序一步步走每一步的输入输出都是已知的任何异常都能迅速定位到具体环节。后级并网的控制调试里还有一个几乎所有资料里都不会写但你一定会遇到的问题Simulink的Simscape模型在用到MOSFET和二极管时变步长求解器在开关边沿会自适应缩小步长如果模型比较大仿真时间会异常长。一个实测有效的加速方案是把功率电路和控制电路的采样时间都设置为固定步长选择离散求解器这样仿真速度会大幅提升代价是开关瞬间的细节会有少量损失但对研究MPPT和并网控制策略来说完全够用。最后再分享一个我在调试中摸索出来的小技巧给MPPT的功率信号加一个低通滤波再进控制逻辑效果非常明显。光伏组件的瞬时功率里含有开关频率的纹波分量如果直接用原始功率做PO判断扰动方向很容易被纹波干扰导致算法误判。加一个截止频率低于开关频率一个数量级的一阶低通滤波器之后功率信号变得平滑MPPT的稳定性提升了一个档次。类似的道理也适用于电压和电流采样的对消处理但滤波时间常数不能太大否则信号延迟会让MPPT反应变慢。如果你做完了两级式仿真接下来可以尝试的方向也很多把L滤波器升级为LCL并加入阻尼控制、给光伏阵列加局部阴影遮挡来测试MPPT的多峰搜索能力、把固定步长PO替换成自适应步长或者模糊控制等智能算法。每一步改动都会引入新的控制问题但正是这些问题让光伏并网这个方向值得不断深入。我个人觉得两级式并网仿真是理解电力电子从能量变换到系统控制的最佳整体练习之一把它吃透了后面再去看三相并网、储能变换器或者微电网构网控制思路都会顺畅很多。
返回列表