ARTICLE DETAIL

资讯详情

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

MATLAB/Simulink离网微电网下垂控制并联运行实践指南

MATLAB/Simulink离网微电网下垂控制并联运行实践指南 离网型微电网的下垂控制说穿了就是让几台逆变器像一伙有默契的搭档一样在不依赖大电网的情况下自己把电压和频率稳住把负载功率按比例分摊干净。这个方向我前前后后折腾了不少时间从最初在Simulink里搭单机模型到后来双机并联、四机环网、带不平衡负载、加二次调节踩过的坑比代码行数都多。今天就把这套基于MATLAB/Simulink的并联运行与下垂控制实践从原理到建模再到参数整定和故障排查完整摊开来聊一聊希望能让刚接触这个领域的朋友少走弯路。先说清楚这套东西到底解决什么问题。离网型微电网没有大电网撑腰所有发电单元逆变器、储能、柴油机等必须自己建立电压和频率的参考。如果几台逆变器直接并联不做任何协调控制那几乎必然出问题各台机器的输出电压幅值、相位、频率总有差异于是逆变器之间会产生很大的环流轻则功率分配不均、某台机器过载重则直接触发过流保护停机甚至烧毁功率器件。下垂控制就是解决这个并联协调问题的经典方案它的思路非常朴素每台逆变器都把自己输出的有功功率和频率挂钩、无功功率和电压幅值挂钩负载增加时频率和电压自然往下掉一点大家按各自容量比例分担以此实现无通信线互联的冗余并联。这在微电网里意味着更高的可靠性因为控制不依赖中央控制器任何一台机器坏了剩下的机器照样能撑着系统跑。这套方法适合谁来参考如果你是电力电子、新能源发电、微电网方向的研究生或者做分布式电源并网/离网设备的工程师又或者正在做毕业设计想快速入门离网微电网仿真这篇文章应该能给你一条比较完整的技术路线。1. 离网型微电网并联运行的核心难点先抛开控制算法回到物理层面看并联到底难在哪。三相同步发电机并联我们都熟悉只要满足电压相等、频率相等、相位一致就能并车电网本身强单台发电机即便有点偏差也会被拉入同步。但逆变器不一样逆变器是电压源型电力电子设备输出阻抗很小动态响应极快对电压差、相角差极其敏感。1.1 环流的产生机制与危害假设两台逆变器并联给同一个负载供电理想情况下它们输出电压处处相等各承担一半电流。但实际情况是两台机器的滤波参数有差异、控制延时不同、直流侧电压不同导致输出电压存在幅值差ΔU和相位差δ。这个电压差作用在两台逆变器之间的连接阻抗主要是线路阻抗和滤波电感上就会产生环流I_c ΔU / (Z1 Z2)。这个环流有多大我用一个具体例子算过两台380V/50Hz的逆变器如果输出相电压幅值偏差只有5V线路阻抗每台0.1Ω主要是电感感抗环流轻松超过25A。更麻烦的是环流不一定是有功还是无功它可能在一台机器里是正功率、另一台是负功率——也就是说一台逆变器在给另一台反向充电。这会让某台机器的直流母线电压飙升或者让某台机器长期过流发热系统寿命大打折扣。所以在设计并联控制时首要目标就是把这个看不见的环流压到最小。1.2 无互联线并联的通信困境并联控制有个方向性的选择问题能不能靠通信线把每台机器的功率信息发给中央控制器由中央控制器统一分配技术上当然可以比如集中式控制、主从控制但代价是引入了单点故障风险通信线断了、中央控制器坏了整个系统就瘫了。在离网场景下比如野外营地、海岛供电、应急电源可靠性是第一位的谁也不想因为一根双绞线松了导致全站停电。下垂控制走的是另一条路不给它们打电话而是给它们定好规则让它们自己通过输出功率的变化感知系统的状态。负载增加输出有功功率上升频率就按比例降一点所有机器感知同一个系统频率自然就跟着这个频率走功率也就按各自的下垂系数分开了。这叫无通信线互联本质上是把“协调”从硬连线变成了隐含在电气量里的默契。1.3 容量差异下的功率分配要求实际微电网里逆变器很少是同一型号的可能一台50kW配一台30kW甚至储能和柴油机混着并联。下垂控制的关键在于每台机器的下垂系数必须和它的容量成反比。也就是说50kW机器的下垂系数d_p (Δf_max / P_rated)如果额定频率偏差是1Hz那50kW机器的系数是1Hz/50kW0.02Hz/kW30kW机器则是0.033Hz/kW。这样负载功率增长时50kW机器频率掉得慢、承担更多功率30kW机器掉得快、承担较少功率最终比例是5:3正好等于容量比。这一条如果做反了小机器会被优先榨干这是很多初学仿真实例功率分配不均的根本原因。2. 下垂控制的原理与数学模型下垂控制的名称来源于同步发电机的静态频率特性但真正工程化实现是在逆变器控制里把它变成了两条外特性曲线。2.1 有功-频率下垂与无功-电压下垂标准的下垂控制表达式两张图就能说清楚。第一张是有功-频率下垂图横轴是有功功率P纵轴是角频率ω或者频率f。空载时频率是额定值ω0输出P有功功率后频率线性下降斜率为-m_p -1/D_pD_p就是有功下垂系数。数学表达式 ω ω0 - m_p * P第二张是无功-电压下垂图横轴是Q纵轴是电压幅值E。空载电压为E0输出无功后电压下降斜率为-n_q -1/D_q表达式 E E0 - n_q * Q这个设计的物理直觉是什么类比一下人力协作几个人一起抬一个重物每个人都会感到“吃力”越吃力的人自然就多出点力。逆变器这边系统负载变重了所有机器的输出有功都变大频率也都被压低谁的下垂系数大谁对频率变化更敏感谁的功率增量就小。于是系统在没有通信的情况下自动达到了一个折中所有机器运行在同一个频率功率按下垂系数反比分配。无功-电压下垂同理不过它更依赖线路阻抗的性质后面会专门讲。2.2 从功率计算到控制指令的完整链路下垂控制不是直接输出开关管驱动信号它处在控制结构的最外层。完整链路是这样采样三相电压U_abc和电流I_abc。通过瞬时功率理论计算有功P和无功Q通常用低通滤波器滤掉二倍频纹波得到平均功率。将P、Q代入下垂公式得到当前时刻的频率指令ω和电压幅值指令E。由ω积分得到相位θE和θ合成三相电压参考正弦波。电压参考进入电压电流双闭环控制通过PI调节器生成调制波。调制波进入PWM发生器输出驱动信号控制逆变器开关。这里面每个环节都可以展开很多细节但在仿真阶段最影响结果的是功率滤波器的带宽和双闭环的参数配合。如果功率低通滤波器的截止频率太低动态响应就慢负载突变后要几百毫秒才能稳定如果太高二倍频纹波会穿透到频率指令里导致电压波形畸变、频率抖动。2.3 线路阻抗对下垂控制的影响有一个非常关键的细节下垂控制是根据P和Q来调节频率和电压的但P和Q与线路阻抗的性质密切相关。在高压电网里线路呈感性P主要受相角差影响Q主要受电压差影响所以上面的下垂公式成立。但在低压微电网里电缆可能呈阻性或者阻感混合这时P和Q会出现耦合调电压可能会影响有功调频率可能会影响无功导致控制环互相干扰甚至震荡。实际工程中常用的解决办法有三种第一种是加入虚拟阻抗在控制算法里人为把一个虚拟电感串联到输出端强行让等效输出阻抗呈感性这就让下垂控制有了立足点第二种是改用P-V下垂和Q-f下垂也就是反下垂控制适合纯阻性线路第三种是在功率计算时进行正交变换旋转坐标在一定程度上实现P和Q的解耦。仿真中我建议首选虚拟阻抗法实现简单物理意义清晰不会引发太多的耦合问题。2.4 下垂系数的整定计算下垂系数不是拍脑袋定的要满足系统的电压和频率偏差要求。举个例子微电网允许的频率偏差通常是±1%即0.5Hz允许的电压偏差是±5%即对380V系统是19V。如果这台逆变器额定容量是50kW那么有功下垂系数m_p 0.5Hz / 50kW 0.01Hz/kW 0.0628 rad/s/kW。无功下垂系数要依据额定无功容量来定比如额定20kvar则n_q 19V / 20kvar 0.95V/kvar。关键在并联组网时如果一号机50kW、二号机30kW要保证功率均分比例5:3下垂系数必须反比即m_p1 0.01Hz/kWm_p2 0.01Hz/kW × (50/30) ≈ 0.0167Hz/kW。这样同样的频率偏差下30kW机器承担的有功比例为3份。这个计算看起来简单但在Simulink里调试时很多人直接在Constant模块里填个0.001就导致两台机器功率比例完全不对。3. MATLAB/Simulink建模实操从单机到并联Simulink做微电网仿真的优势是模块化直观、不需要写太多底层代码、波形调试方便。但如果你只是把元件库里的逆变器拖出来连上线大概率跑出来的模型发散或者波形惨不忍睹。这里分享一套我验证过无数次的搭建步骤。3.1 主电路搭建直流源、三相逆变桥、滤波与负载首先是主电路。每个逆变单元由四部分组成直流电压源模拟光伏或储能直流母线、三相两电平逆变桥Universal Bridge、LC滤波器L和C、以及连接负载的线路阻抗。具体参数我常用这样一组直流母线电压VDC800V逆变桥采用IGBT/二极管滤波电感L1.5mH等效电阻0.1Ω滤波电容C50μF开关频率fsw10kHz负载用三相平衡阻性负载初始功率20kW。逆变桥的控制信号来自PWM Generator频率10kHz载波用三角波。这里有个特别容易踩的坑LC滤波器的谐振频率。L1.5mH、C50μF时谐振频率f_res 1 / (2π√(LC)) ≈ 581Hz。这个频率必须远低于开关频率10kHz同时远高于工频50Hz但又不能和下垂控制的带宽靠得太近否则会引起谐振尖峰。我一开始选L5mH、C10μF谐振频率约712Hz但是动态响应慢电压跌落明显后来权衡后还是选回1.5mH/50μF这个组合效果最好。3.2 功率计算与滤波模块功率计算我这里推荐用瞬时功率法不需要坐标变换也能实现。对三相三线制系统瞬时有功P UaIa UbIb UcIc瞬时无功可以用Q (Ua-Ia的90度滞后)的方式计算但更标准的还是通过Park变换得到dq分量后计算P 1.5(UdId UqIq)Q 1.5*(UqId - UdIq)。我们在Simulink里的做法是先提取三相电压电流进入abc_to_dq模块Park变换然后计算P和Q再各接一个一阶低通滤波器。低通滤波器时间常数T_f是一个关键参数。经验值是T_f 0.02s左右对应截止频率约8Hz这样既能滤掉100Hz的二倍频纹波又不会让动态响应太慢。如果你发现P波形振荡厉害多半是滤波器带宽太宽或者采样步长不够小。3.3 下垂控制与参考电压生成得到滤波后的P和Q之后进入下垂控制模块。这里核心是两条数学表达式 ω ω0 - m_p * (P - P_ref) E E0 - n_q * (Q - Q_ref)P_ref和Q_ref是额定值离网模式下通常是0空载时维持额定频率和额定电压。ω积分一次得到相位θ。E和θ合成三相电压参考用正弦波发生器生成Ua_ref Esin(θ)Ub_ref Esin(θ-120°)Uc_ref E*sin(θ120°)。注意这里生成的是正弦波参考而不是直接送入PWM的调制波。这个参考电压要进入电压电流双闭环通常采用dq坐标系下的PI控制输出电压参考是Uqd_ref Uqd PI控制器输出。PWM比较的调制波来自电压环输出。3.4 电压电流双闭环的参数设计双闭环是下垂控制能够落地的执行机构。外环是电压环带宽约500Hz内环是电流环带宽约2kHz两者相差4-5倍保证互不干扰。电压环PI参数我常用Kp_v 0.5Ki_v 50电流环Kp_i 5Ki_i 100。当然具体参数要结合你的滤波电感电容值微调但带宽分层原则是铁的纪律——如果电流环和电压环带宽靠得太近系统会震荡。一个细节dq坐标系下的控制对采样延时敏感Simulink仿真中最好用Discrete模块采样时间设为1/fsw。连续模块和离散模块混用时最容易出现代数环问题表现为仿真卡死或者计算极慢。我的建议是整张模型统一用离散求解器步长1e-5s或更小。3.5 双机并联系统建模双机并联时要特别小心接地和参考点。每台逆变器都是独立的电压源它们并联后给公共负载供电。公共连接点PCC的电压是它们共同作用的结果建模时最好给每个逆变单元单独封装成Subsystem明确端口直流输入、三相输出连接到公共母线、控制参数端口。这样后期扩展到多机系统时只需要复制子系统再改下垂系数。我第一次搭双机系统时犯过一个错误两台逆变器的控制变量比如θ没有分别初始化运行后相位差巨大系统直接发散。解决方法是给每台机器设定不同的初始相位但并网前先通过预同步让它们一致或者仿真初期使用较小的下垂系数让系统有一个自校正过程。4. 仿真结果分析与波形解读模型搭完仿真跑起来最重要的工作就是解读波形。很多人对着示波器屏幕发呆不知道波形到底算好还是坏。这里给出几个关键判据和典型波形特征。4.1 稳态均流效果验证系统进入稳态后看两台逆变器的输出有功功率P1和P2。如果下垂系数设计正确P1:P2应该等于容量比。比如一台50kW、一台30kW负载总功率60kW稳态P1应该在37.5kW左右P2在22.5kW左右。误差在5%以内都算正常如果偏差过大要从功率滤波时间常数、线路阻抗差异、下垂系数精度三个方向排查。电压波形此时应该是三相对称的幅值稳定。频率波形应该在50Hz附近但注意因为下垂控制的存在满载时频率会比空载时低一些。比如设计满载频率偏差0.5Hz那满载时频率大约49.5Hz这是正常现象不是故障。如果你后面加了二次调频自动发电控制频率才会回到50Hz。4.2 负载突变时的动态响应在t2s时突然切入一组负载把总功率从20kW拉到60kW。观察频率响应曲线理想情况下频率应该快速下降并趋于新的稳态值超调不超过0.3Hz稳定时间在0.5s以内。有功功率P1、P2应该在短时间内完成重新分配没有明显的过冲。如果观察到的频率振荡剧烈首先怀疑下垂系数过大或者功率滤波器时间常数太小。如果P波形有100Hz纹波说明低通滤波器没滤干净。如果电压波形畸变明显则要检查虚拟阻抗参数和双闭环跟踪性。4.3 环流抑制效果对比用示波器观察两台逆变器之间的差值电流I1-I2。在理想下垂控制下这个差流应该趋于零附近的很小值。我实测过一组数据不加任何均流措施时两台相同容量逆变器并联差流有效值可达8A加上下垂控制后差流降至0.8A以下。这里要注意环流不能只看幅值还要看它的频率成分如果是工频分量说明电压幅值/相位差没有得到有效抑制如果是100Hz或更高频分量说明功率滤波或PWM存在调制问题。4.4 参数敏感性分析仿真过程中你会逐渐发现参数的影响不是线性的。下垂系数从0.01Hz/kW增大到0.05Hz/kW均流效果可能变化不大但频率偏差显著增大低通滤波器时间常数从0.005s增大到0.05s纹波确实被抑制了但动态响应时间直接从0.1s恶化到0.8s。所以参数的取值本质上是一个折中问题。我的经验是下垂系数按国家标准的频率偏差上限来设计比如0.5Hz不要留太小的余量低通滤波器时间常数取0.01~0.02s兼顾纹波抑制和动态性能虚拟阻抗选L_v 2~5mH过大会导致电压跌落严重过小则无法改善均流。多跑几组参数对比波形你会对这套系统的脾气摸得很透。5. 常见问题排查与实战心得这个环节我觉得比前面所有公式都值钱因为大部分都是仿真软件里反复折磨我、最后才解决的坑。5.1 Simulink仿真发散与数值稳定性很多人第一次跑并联模型仿真器直接报错“Simulation stopped because of a singularity”或者数值溢出。常见原因有三个第一求解器步长太大。Simulink默认的变步长求解器在含有PWM调制和10kHz开关频率时自动步长机制容易失效建议改成Fixed-step步长设为1e-5s或更小。第二代数环。电压电流测量值被直接反馈到控制输入端中间没有延时或者滤波模块形成了代数环。解决办法是在反馈通路上加一个Unit Delay或者Memory模块打破代数环。第三初始条件设置不当。逆变器启动瞬间输出电压突变导致dI/dt极大仿真发散。可以在模型中设置初始输出电压接近额定值或者用斜坡启动的方式让参考电压在0.05s内从0升到额定值。5.2 功率分配不均的几大根因两台机器按下垂控制并联但P1:P2和容量比差得很远。这时候按优先级排查下垂系数是否成反比这是最容易被忽略的很多人两台机器用同一个下垂系数。线路阻抗是否一致如果负载离1号机近、离2号机远2号机的功率会偏小这就是线路压降导致的。解决办法是增大虚拟阻抗使线路阻抗差异相对不那么重要。功率滤波时间常数是否一致如果两台机器的功率滤波器带宽不同动态分配过程和稳态结果都会受影响。传感器增益或者标幺值基准是否一致仿真里很少出现这个问题但实际工程中电流传感器变比不一致会导致虚假不均流。5.3 频率与电压偏差超标怎么办稳态时频率或电压超出了允许范围。这时不要急着改控制器参数先判断是设计问题还是配置问题。如果空载时频率就偏离50Hz说明ω0设定不对或者仿真初始相位有问题。如果满载时频率偏低0.8Hz说明下垂系数太大需要减小m_p但减小均流能力会变弱。一个比较实用的解决方案是加入二次控制Secondary Control用慢速的PI控制器检测系统频率偏差然后整体补偿所有机器的ω0和E0。这样既保持了一次下垂的均流特性又消除了稳态偏差。在Simulink里实现起来很直接一个PI控制器接收频率误差输出一个补偿量叠加到ω0上时间常数取1~5s和一次控制的时间尺度拉开。5.4 波形畸变与谐波问题如果你在波形里看到明显的畸变重点查三处第一电压电流双闭环的PI参数是否合适带宽是否拉开了第二PWM发生器的载波频率和调制方式是否匹配三角波载波频率推荐至少2kHz以上否则LC滤波效果差第三负载是否为非线性负载如果是整流桥负载需要额外考虑谐波抑制策略比如PR控制或者重复控制。我在仿真中遇到过一种特殊情况两台逆变器的开关频率完全相同PWM载波同步后在并联点会产生集中的开关频率谐波而如果载波不同步谐波会展宽但峰值降低。仿真中常用同步载波来简化分析工程上则要权衡EMI滤波器的设计。5.5 从仿真到硬件实现的差距提醒仿真跑通了不代表硬件能直接复制。这里说几个我印象极深的差距第一仿真里的模拟量没有延时、没有量化噪声硬件里AD采样、PWM更新都有100μs级别的延时建模时最好在控制链路里加一个Transport Delay来模拟。第二仿真中的直流源是理想电压源硬件里直流母线有波动逆变器输出功率突变时母线电压可能跌落导致输出电压瞬态变形所以仿真中建议在直流侧加一个电容并限制直流源内阻。第三传感器的偏置和噪声在仿真里是没有的但在硬件里可能是最大的挑战。比如互感器偏置会导致有功功率计算出现直流偏置最终体现在功率均分上就是一台机器多承担一点功率。硬件上都有校准环节仿真阶段可以忽略但心中必须有数。写在最后的实战建议这套仿真模型我最终用了接近三个月的时间反复打磨最深刻的体会就是下垂控制看似公式简单但把它放到并联系统里参数间的耦合、动态过程的振荡、非线性负载的干扰每一个问题都能让一个方案反复推翻重来。建议刚入手的读者不要一上来就搭四机环网系统先从单机下垂模型开始观察负载突变时频率和电压的响应再搭双机并联对比两台机器的功率分配和环流变化最后逐步加入虚拟阻抗、二次调频、不平衡负载一步步把系统做扎实。另外一个小技巧Simulink里不要每次改参数都手动重新运行用Parameter Sweep参数扫描或者写个简单的MATLAB脚本循环跑把结果对比图一次性画出来效率提升非常明显。我第一次调下垂系数时一个个点RUN一晚上改了20多次后来用for循环扫描50组参数十分钟就找到了最合适的点。工具用对了实验效率能翻几倍。
返回列表