DFIG高电压穿越HVRT控制策略Simulink仿真详解
搞风电机组变流器仿真的同行应该都有过这种体验电网电压跌落的研究铺天盖地低压穿越的方案一搜一大把可一旦涉及“电压骤升”很多人反而一时半会儿不知道从哪儿下手。前几天我刚好把一个DFIG双馈感应发电机高电压穿越HVRT控制策略的Simulink仿真模型完整跑通了从故障机理分析、模型搭建、控制改进到多工况验证前前后后折腾了不少时间。这篇就把整个思路和实操过程梳理一下重点讲清楚电压骤升时转子侧到底发生了什么、控制策略为什么要那样改、故障工况怎么设置才靠谱以及我在仿真中踩过的几个坑。这篇文章适合两类人看一类是刚接触风电并网仿真、打算把HVRT作为研究方向的学生或工程师另一类是已经在做LVRT相关仿真、想拓展到高压穿越场景的从业者。我会尽量用比较口语化的方式把关键点讲透涉及到公式和参数的地方也会给出具体数值和设置方法方便直接参考复现。1. 为什么要把高电压穿越单独拿出来做仿真1.1 电网电压骤升给DFIG带来的连锁反应先明确一下HVRT说的是什么。高电压穿越简单说就是当电网电压由于某种原因突然升高到额定值的1.1倍以上甚至1.3倍左右时风电机组不能立刻脱网而是要在一段时间内保持并网运行同时还要给电网提供一定的无功支撑帮助电压尽快恢复。电压骤升不是想象中那么罕见。风电场所处的电网末端往往比较薄弱当大容量负荷突然切除、或者风电场附近发生单相接地故障后非故障相电压升高、又或者电网无功补偿装置动作异常都可能在几毫秒到几十毫秒内让并网电压抬升一大截。DFIG的定子直接挂在电网上电网电压一变定子磁链就会受到强烈扰动而这种扰动会通过电磁耦合直接传递到转子绕组上。很多人一开始不理解电压升高为什么反而会造成转子过电流直觉上电压高了电流不是应该也升高吗问题就出在“暂态”两个字上。电压幅值突变那一瞬间DFIG内部磁场不能突变——这是由磁链守恒决定的——于是定子磁链里会出现很大的直流分量和负序分量。这些分量相对转子以较快速度旋转在转子绕组中感应出远超稳态值的暂态电动势直接把转子电流顶上去。转子侧变流器本来就是低压大电流设备额定裕度不高一旦转子电流过流超过IGBT的安全工作区故障后的几百毫秒甚至几十毫秒内就可能炸模块。直流母线电压也会因为转子能量无法及时回送电网而飙升继续打穿直流侧电容。这就让HVRT成了一个必须认真对待的问题。1.2 高电压穿越与低电压穿越的根本差异看上去HVRT和LVRT都是“电网故障下保持并网”但两者的物理过程和控制需求差异非常大。低压穿越时电压跌落导致定子磁链骤减转子的暂态电动势主要由磁链直流分量衰减产生同时变流器要努力输出有功和无功来“撑住”电压而高压穿越时电压骤升带来的磁链突变幅度同样剧烈甚至在某些不对称故障场景下非故障相电压升到1.2倍以上时定子磁链中的负序分量更加复杂转子侧感受到的冲击反而比三相短路时更棘手。我把两个场景的关键差异整理成了一张对比表方便直观理解对比项低电压穿越LVRT高电压穿越HVRT故障特征电压幅值降低磁链幅值减小电压幅值升高磁链幅值增大转子暂态电动势来源磁链直流分量相对转子旋转磁链直流分量、负序分量叠加主要风险点转子过流、变流器直流母线欠压/过流转子过流、直流母线过压、变流器过流无功需求方向输出容性无功抬升电压输出感性无功吸收过剩无功、压降控制难点低电压下电流内环饱和、锁相环失稳高电压下磁链突变剧烈、暂态分量大从控制策略的角度看低压穿越因为研究成熟很多模型和控制算法可以直接参考而高压穿越的暂态过程更依赖精确的磁链观测和前馈补偿这也决定了我们不能简单把LVRT的改进方案原样套到HVRT上。后面第四节会详细展开控制策略的设计。2. 高电压故障下DFIG的电磁暂态过程剖析2.1 定子磁链“不肯突变”带来的暂态电动势要说清楚为什么电压骤升冲击这么大得先看DFIG定子磁链的动态方程。定子电压方程为Us Rs·Is dψs/dt jωe·ψs这里Us是定子电压空间矢量ψs是定子磁链Rs是定子电阻ωe是同步角速度。电网电压发生突变时Us的幅值和相位会快速变化但由于磁链不能突变ψs不可能瞬间跟随Us跳到新稳态于是dψs/dt这一项就会变得非常大这个巨大的磁链变化率会通过定转子互感映射到转子绕组上形成转子暂态反电动势。转子绕组中感应电动势的幅值粗略可以用这个关系式来理解Er ≈ (Lm/Ls)·(1-s)·|dψs/dt|其中Lm是激磁电感Ls是定子电感s是转差率。电压骤升幅值越大、变化速度越快dψs/dt就越剧烈转子感应电动势就越高。这就是为什么阶跃式电压骤升的仿真最容易把转子电流冲到离谱水平——因为阶跃变化率理论上无穷大在不加任何软化措施时数值冲击很难受。2.2 转子侧过电流、直流母线过电压的传导路径电压骤升瞬间转子侧变流器面临的冲击是一条清晰的传导链电网电压骤升 → 定子磁链突变 → 转子暂态电动势激增 → 转子电流快速上升 → 转子电流通过RSC强迫换流 → 能量向直流母线堆积 → 直流母线电压升高 → 如果GSC来不及把能量送回电网或换成无功直流侧电容持续充电 → 过压损坏。在仿真波形上这个传导链非常明显。一旦在某个时间点把电网电压从1.0pu阶跃到1.3pu不控状态下转子三相电流几乎在同一时刻出现尖峰直流母线电压随后紧跟冲高。这说明转子过流和直流过压本质上是一个问题转子暂态能量没有地方去只能往母线上挤。所以控制策略的核心思路应该是一方面在转子侧把暂态电动势的冲击“卸掉”或“抵消”掉一部分另一方面在直流侧给多余能量一个泄放通道两条路同时走才能真正把内压降下来。理解了这条传导链再去搭Simulink模型和大改控制策略就知道每一步该盯什么量了。3. Simulink仿真模型的搭建与参数配置3.1 模型框架从风力机到电网的三段式连接我用的仿真平台是Simulink配合Simscape Electrical库整体模型按三段式结构搭第一段是风力机与传动链。风力机输出机械功率通过两质块传动模型连接到发电机转子。实际工程里转速-功率曲线比较复杂但做HVRT仿真的重点是电磁暂态所以这里我用的是2MW级通用机组的简化机械功率输入桨距角控制保持恒定不需要过分精细化。第二段是DFIG本体。Simulink中可以直接用绕线转子异步电机模块定子侧接电网转子侧通过集电环引出接到背靠背变流器。这个模块既支持标幺值参数设定也支持三相绕组模型仿真精度够用。第三段是变流器与控制系统。RSC、GSC两个两电平VSC直流母线电容连接控制系统用电压/电流双闭环。PWM调制用的是载波比较方式开关频率设在4kHz左右。电网侧通过升压变压器和线路阻抗接入一个可编程三相电压源方便设置各种高电压故障工况。这个框架的优点在于模块化清晰故障设置点、控制策略改动点都是独立的排查问题时很容易把“电机问题”“控制问题”“电网问题”分开定位。我在实际搭建时变压器和线路阻抗放在电机定子与电压源之间这样电压骤升作用在变压器高压侧还是低压侧都可以通过节点选择灵活模拟。3.2 参考机组的关键参数设定仿真里的DFIG参考对象我按一台2MW级、690V/50Hz的机组来做参数做了通用化处理。选这个容量是有讲究的太小的电机模型比如几千瓦电磁时间常数太短电压骤升后的暂态过程衰减太快看不出HVRT该有的现象太大容量又会让仿真步长和模型复杂度上升不利于调试。2MW是风电行业很常见的一个单机容量档位参数也好找。关键参数如下参数数值说明额定容量2 MW仿真基准容量定子额定电压690 V线电压有效值额定频率50 Hz电网频率极对数2同步转速1500 r/min定子电阻 Rs0.008 pu影响磁链衰减时间常数转子电阻 Rr0.006 pu折算到定子侧定子漏感 Lls0.09 pu漏感越小耦合越强转子漏感 Llr0.09 pu折算到定子侧激磁电感 Lm2.9 pu激磁电流较小除此之外直流母线额定电压我设在1150V母线电容取了40000uF左右这个容量不算激进能兼顾纹波抑制和动态响应。变流器额定电流按转子额定电流的1.2倍裕度来选取也就是允许短时过流1.2pu但超过这个值就视为保护动作门槛。这些参数全部按标幺值输入到Simscape模块中配合后面的故障场景模型已经具备了复现HVRT暂态过程的基础条件。3.3 用可编程电压源模拟高压故障工况故障注入是整个仿真中最重要的步骤之一。我要模拟电网电压骤升选的是Simulink里的可编程三相电压源模块。这个模块可以按时间序列设定每一相的幅值、相位、频率非常适合做电压骤升和恢复。以对称高电压穿越为例具体设置如下02.0s电压源输出1.0pu正常电压2.0s2.7s三相电压幅值同时“上抬”到设定值比如1.3pu持续0.7s2.7s之后电压恢复到1.0pu观察控制策略的恢复过程。用阶跃方式突变电压最简单但阶跃会带来数值上极陡的dψs/dt模型很容易发散。我的做法是给电压幅值变化加一个10ms的斜坡过渡这样既保留了“短时高压”的故障特征又让仿真数值稳定很多。后面第六节会详细说这个坑。除了对称骤升不对称故障也很值得模拟。比如模拟单相接地故障引起非故障相电压升高就把电压源设置成A相电压维持1.0pu、B相和C相电压同时升到1.25pu左右的模式。这种工况对转子负序电流的冲击更明显控制策略里如果只考虑正序补偿波形上会立刻暴露出问题。4. 高电压穿越控制策略的设计与实现4.1 传统矢量控制在电压骤升时为什么会“失灵”DFIG的传统转子侧变流器控制一般采用定子电压定向的矢量控制外环控制有功/无功功率或转速内环控制转子电流d/q轴分量输出电压指令经过PWM送给RSC。这套控制在电网电压平稳时非常好用但在电压骤升时问题接踵而至。首先是定子电压定向的前提失效。定子电压突然变化PLL和磁链观测器需要时间重新锁定在重新锁定之前的过渡过程中电压定向角会存在偏差导致d/q轴解耦失效。其次是传统控制里通常没有对定子磁链突变的补偿转子电压指令里缺少dψs/dt对应的前馈项导致电压骤升瞬间转子暂态电动势几乎完整地作用到变流器上电流内环根本来不及抑制。最后是电流内环在设计时一般按稳态工况调PI参数面对电压骤升这种带宽之外的大扰动动态响应不够快容易触发过流保护。我在仿真里先跑了一版传统矢量控制作为对照组故障发生后的情况可以用“惨烈”来形容转子电流瞬间冲到额定值的2.5倍以上直流母线电压直接越过保护阈值。这个对照组很有必要因为它清楚地证明了传统控制不加改动是不能直接用于HVRT场景的。4.2 转子侧变流器改进控制的三个补偿项针对传统矢量控制的三个短板我在转子侧变流器控制中加入了三个关键补偿项。第一项是磁链微分前馈补偿。在转子电压指令上叠加一项与定子磁链变化率成正比的补偿量ΔUR (Lm/Ls)·dψs/dt这里的物理含义是用变流器主动输出一个与暂态电动势方向相反的电压分量把来自转子绕组的冲击“抵消”掉一部分。实现时定子磁链可以通过定子电压和电流实时观测得到再做微分。实际仿真中这个微分项容易引入噪声我在前面加了一阶低通滤波时间常数取5ms左右既保证补偿效果又不会把开关纹波放大。第二项是变流器电流限幅的自适应调整。电压骤升期间转子电流内环的输出需要优先限制电流峰值而不能死板地执行“无功优先”的指令。我实现了一个功电流和励磁电流的动态分配检测转子电流幅值超过1.2pu后先削减有功电流分量保留无功电流分量这样既保护了变流器也维持了对电网的无功支撑能力。不能为了保住有功输出让电流内环一直饱和在那儿那样只会让冲击更剧烈。第三项是负序电流抑制。不对称高电压穿越时电压骤升中包含负序分量传统正序定向控制对负序分量没有抑制能力。我加了负序电流环采用正负序分离的方式在负序dq坐标系下对负序电流进行调节使转子负序电流得到一定限制。这个项在对称骤升工况下作用不大但在不对称故障工况下效果很明显波形上转子三相电流的不对称程度会显著下降。4.3 网侧变流器、Chopper与无功支撑的协同策略转子侧控制解决的是“从哪里来”的问题直流侧和网侧解决的是“往哪里去”的问题。直流母线电压控制上我加了一个带滞环的Chopper保护电路。当母线电压超过额定值的1.1倍时Chopper开始以固定占空比放电把直流侧多余能量消耗在卸荷电阻上超过1.15倍时占空比增大到最大全力泄放。实际工程里这个Chopper不是摆设它是保护IGBT的最后一道物理防线单纯靠控制算法把能量回送电网往往来不及完全泄掉最快的那一波冲击。网侧变流器GSC的控制逻辑也要配合调整。正常工况下GSC的任务是维持直流母线电压、控制网侧功率因数高电压穿越期间我让GSC在维持直流母线电压的同时根据电网电压偏差输出无功电流。注意方向别搞反电网电压升高时变流器要输出感性无功也就是吸收电网的无功功率帮助电压回落。所以无功电流指令的方向必须与LVRT相反我在仿真里一开始就把这个方向做反了结果电压越控越高后来才改回来。这四个部分协同起来的逻辑是RSC通过补偿项压低转子过流直流侧Chopper兜底防过压GSC在维持母线电压的同时输出感性无功整体目标是在故障期间既让机组安全扛过去又对电网电压恢复做贡献。5. 仿真结果波形分析与多工况验证5.1 先跑一个不控对照组故障瞬间的“暴力”冲击为了直观看到HVRT不加控制的后果我先用传统矢量控制模型做了一组对称电压骤升仿真t2.0s电压从1.0pu阶跃到1.3pu持续0.7s2.7s恢复。故障发生瞬间转子三相电流波形直接拉出一个尖峰峰值差不多是额定电流的2.5倍。这个冲击持续时间虽然只有几十毫秒但对IGBT来说已经足够致命。直流母线电压同步从1150V抬升到接近1500V最后稳定在一个偏高平台直到2.7s电压恢复时才回落到正常值。这组结果说明两个问题第一电压骤升的冲击主要集中在故障发生和恢复两个时刻尤其是恢复瞬间因为磁链又要经历一次突变相当于再来一次“反向HVRT”第二传统控制下转子过流和母线过压是同时出现的单靠增加硬件保护也扛不住反复冲击必须从控制层就削弱暂态能量幅值。5.2 加入HVRT控制后的动态响应对比把第四节的控制策略加到模型里之后同样工况下的波形改善非常明显。转子电流峰值降到了额定值的1.5倍以内持续时间明显缩短直流母线电压最高不超过1250V波动幅度约8%且Chopper只在最开始的几十毫秒动作之后就不再频繁触发故障期间转子有功电流被优先削减无功电流反向增大输出约10%的感性无功电流配合电网电压恢复。电压恢复时刻也就是2.7s之后改进控制的优势也体现出来了。由于控制中有磁链微分前馈恢复瞬间的过度过程明显缓和转子电流没有出现类似故障开始时的第二次大尖峰而是平滑过渡到稳态。这在实际并网中非常重要因为很多设备不是在故障过程中损坏的恰恰是在“故障过去”的那一刻系统来不及反应造成的二次冲击。5.3 多工况测试结果汇总仿真验证部分不能只看一组工况。我把模型分别跑了几种典型的HVRT场景汇总结果如下故障工况电压骤升幅值持续时间转子电流峰值pu直流母线电压峰值V无功电流输出对称骤升1.2pu1.20.5s1.31180不明显对称骤升1.3pu1.30.7s1.5125010%感性对称骤升1.4pu1.40.6s1.8132015%感性两相骤升1.2pu1.20.5s1.412108%感性两相骤升1.3pu1.30.5s1.7129012%感性需要说明的是最后两行不对称工况的结果是在加入负序电流抑制之后得到的。如果没有负序抑制两相骤升1.3pu工况下转子电流峰值会接近2.3pu差得非常多。所以结论很清楚对称HVRT场景下磁链前馈补偿起主要作用不对称HVRT场景下负序电流抑制是标配。6. 仿真实操中的常见问题与排查记录6.1 故障发生时刻数值仿真发散这是最让人头疼的问题。模型跑稳态一切正常一到故障注入时间点就提示“数值不可用”或直接步长坍塌。我排查下来的首要原因是电压源阶跃变化太陡。理想阶跃意味着电压变化率无穷大而电机方程里的dψs/dt项在这种情况下会变成一个极窄的尖峰任何数值积分器都很难精确处理。解决办法是在电压幅值变化处接入一个斜坡过渡把突变分散在510ms内。这样既保留了故障的暂态冲击特征又不把数值问题推给求解器。另一个原因是求解器选得不对高压穿越仿真涉及PWM开关和电磁暂态建议用可变步长的ode23tb或ode15s并把最大步长限制在2e-5s左右。不要默认用ode45它会慢到让你怀疑人生。6.2 转子电流高频振荡和开关纹波混在一起有一次我在观察改进控制后的波形时发现转子电流上叠加了一层明显的高频振荡频率远高于开关频率一开始还以为是控制参数不收敛后来仔细排查发现是磁链微分前馈项的微分噪声放大了PWM开关纹波。这属于非常典型的问题。微分项对高频噪声天然敏感而DFIG转子电流里本来就带着开关纹波经过微分后噪声被放大再叠回电压指令里形成振荡。解决办法有两个一是给微分项加低通滤波器截止频率选在开关频率的1/5左右二是把磁链观测值先做滤波再微分不要直接对原始信号求导。我在模型里用了第二种方案效果更干净。6.3 无功电流指令与变流器限流的矛盾高电压穿越期间要求变流器输出感性无功电流但转子侧变流器同时还要承受暂态过流。这里存在一个现实矛盾如果完全按照“保护变流器优先”的思路削减电流可能无功支撑不足如果完全执行“无功优先”的指令转子电流可能顶到保护阈值以上。我最终的取舍是在转子电流幅值低于1.2pu时严格按无功电流指令执行超过1.2pu后让限幅环节动态削去有功分量以牺牲部分有功输出为代价保住变流器和无功支撑。这个策略是基于2MW机组变流器1.2倍短时过流能力设计的。如果你的模型选用了过流能力更强的变流器可以把这个阈值调高一些但不要超过1.5倍否则仿真结果会偏离实际设备的工作边界。6.4 电压骤升幅值不同时控制参数需要微调我最初以为把控制参数调好一版可以通吃所有工况结果发现不行。1.2pu骤升下波形很漂亮换到1.4pu骤升后磁链微分前馈的补偿系数需要适当加大否则转子电流峰值压不住负序电流环的PI参数在两个不对称工况之间也要微调。我的建议是先把补偿系数设成跟电压骤升幅值相关的自适应形式比如补偿系数按电压偏差的平方做软调整电压偏差越大补偿越强。这样模型在多工况之间切换时不需要手工反复改参数鲁棒性更好。无法做自适应时至少要为不同工况保存不同的参数版本不要在仿真中途改参数那样很容易引入非物理的数值跳变。最后再分享一个实操习惯我在跑HVRT仿真时习惯把故障起始时刻放在电流过零点附近也就是让电压源幅值变化的起始点与某一相电压相位对齐。这样做的好处是故障发生瞬间的冲击相对整齐波形更容易观察暂态分量的变化趋势如果把突变时刻随便放在某相电压峰值附近初始冲击会更猛但波形里往往叠加了相位因素反而不利于机理分析。这个细节不算复杂但对分析和结果展示帮助不小。