从零手搓1000MW柔性直流输电MMC-HVDC模型:参数推导与电网故障实测
很多人一听“手搓1000MW柔性直流输电模型”第一反应是这不就是换个电压等级、改几个参数的事吗真做起来就会发现1000MW这个量级背后是一整套环环相扣的推导逻辑直流电压选多少、子模块数量怎么定、桥臂电抗凭什么取那个值、控制器的PI参数在弱电网下会不会振荡。这篇文章把我从零搭建这套模型的全过程、参数推算链路、以及各种“电网大考”工况下的实测表现完整记录下来希望能给正在做MMC-HVDC仿真研究、或者准备入坑柔直方向的同学一个能直接参考的模板。文中所有参数均基于公开工程经验和常规仿真实践整理并非某个具体工程的保密数据。1. 为什么非要“手搓”1000MW级柔直模型——项目定位与设计基线1.1 1000MW到底意味着什么在动手之前我先明确了一个问题为什么是1000MW而不是10MW或者100MW10MW级别的东西在PSCAD里用几个子模块拼一拼就能跑研究的是控制逻辑本身跟电网的交互弱得可怜100MW级别属于中小容量柔直常用于海岛供电、海上平台互联电网强度通常还不错而1000MW这个档位是真刀真枪接入主网、承担区域功率交换的骨干换流站级别对应的典型场景包括大型海上风电基地送出的汇集站、跨区域电网的互联通道、以及大型城市负荷中心的柔性直流支撑。这个量级直接决定了模型的“考法”交流侧故障时电网对换流站的低电压穿越能力有严格考核直流侧故障时故障电流的幅值、上升速率、换流器闭锁时序都会直接影响保护策略功率倒送时控制系统能不能平滑过渡到整流状态是评判一个柔直工程成熟度的关键指标。所以如果你想让模型面对的是“电网大考”而不是“课程作业”就必须把容量抬到这个水平。1.2 模型的总体架构与仿真平台选型我最终搭建的模型是基于对称单极MMC拓扑也就是俗称的伪双极结构。交流侧为500kV等级电网通过换流变压器降压后接入换流器换流器直流侧正负极之间电压为±320kV总传输功率1000MW。整流侧MMC采用定直流电压、定无功功率控制负责维持直流母线电压稳定。逆变侧MMC采用定有功功率、定无功功率控制负责将直流功率馈入受端交流电网。两端交流系统都采用戴维南等效电源加线路阻抗的等值模型便于独立调节电网短路比SCR来测试控制器的鲁棒性。仿真平台我选的是PSCAD/EMTDC电磁暂态仿真的精度足够应对IGBT开关过程的模拟。但这里必须提前说明一个矛盾如果用全子模块详细模型每个子模块都带IGBT和二极管开关模型1260个子模块后面会算到具体数量的开关级仿真在PSCAD里跑一段10秒的暂态过程仿真时间会让人崩溃。所以我的做法是先用详细模型跑稳态和简单故障验证控制参数再切换到我后面会讲到的戴维南等效模型跑长时段的电网交互工况。1.3 为什么不用官方demo模型非要自己搭很多人觉得PSCAD自带MMC示例模型改改容量就能用。我一开始也是这么干的但很快发现三个硬伤第一官方模型的子模块参数是写死的例如电容值、桥臂电抗取值都是针对特定电压等级和容量优化过的。盲目改功率等级会导致电容能量常数不对、桥臂阻抗百分比失调仿真结果出现莫名其妙的振荡你却不知道是该调控制参数还是该调主电路参数。第二官方模型为了演示效果控制器通常是简化版比如省略了环流抑制环节或者用平均值模型替代了均压排序算法。这种模型用来学概念没问题但用来研究“电网大考”下的动态特性会掩盖很多真实问题——比如直流双极短路时子模块电容的放电过程、二极管续流阶段平均值模型根本表现不出来。第三自己手搓一遍你才能真正理解每一个参数从哪里来。这是最笨但最有效的学习方法。电网领域的工程仿真最忌讳的就是“调参侠”——不知道为什么只知道调到某个值时波形不炸了。后面所有的参数推算我认为这才是整套模型的核心价值所在。2. 主电路参数的完整推算过程从直流母线电压到桥臂电抗器的每一步2.1 直流母线电压与阀侧交流电压的选型逻辑直流母线电压的选择第一个约束来自绝缘成本和功率传输效率的平衡。±320kV是当前陆上柔直工程非常成熟的一个电压等级对应的换流器阀厅绝缘设计、直流电缆/架空线选型都有大量运行经验可以参考。1000MW功率在这个电压等级下单极直流电流I_dc 1000MW / (2 × 320kV) ≈ 1562.5A这个电流水平对IGBT阀组来说属于比较舒服的工作区间。交流侧电压的确定遵循一个核心原则换流器交流输出电压的基波幅值必须能覆盖直流电压的需求。稳态下MMC的交流侧相电压基波峰值线对地和直流母线正负极间电压的关系可以近似写成U_ac_peak ≈ U_dc / 2这是MMC最基本的电压匹配关系。为了给调制留出裕度阀侧线电压有效值一般取在直流极间电压的一半再折算。我最终确定的换流变压器阀侧额定线电压为210kV折算下来相电压峰值约为171.5kV留出了约7%的调制裕度同时考虑IGBT通态压降、桥臂电抗压降等因素后在额定工作点恰好能输出所需的交流电压波形。这里有个实操提示变压器阀侧电压不是随便定的它和子模块数量、调制方式强耦合。改其中一个后面的推导全都要重来。2.2 子模块数量与冗余设计从IGBT耐压到NLM调制子模块数量是整个模型中最核心的参数之一它直接决定波形的逼真度和设备成本。计算逻辑是这样的每个子模块内部采用半桥结构IGBT器件的耐压等级决定了单个子模块能承受的最高电压。我选用的是工程上常见的4.5kV IGBT器件考虑到关断过程中的电压尖峰和器件安全裕度通常取1.5~1.8倍安全系数单个子模块的额定电压取2.2kV左右比较稳妥。那么单极对地电压320kV理论上需要的子模块数量为N理论 320kV / 2.2kV ≈ 145.5取整为146个但实际工程中不会只按理论值来还要考虑两个因素一是直流电压在暂态过程中可能出现的过冲比如交流系统突然甩负荷导致的直流电压升高二是子模块自身出现故障后需要旁路退出剩余的模块必须还能维持额定电压输出。我参考常规工程实践冗余度按约5%~8%配置最终确定单桥臂子模块数为155个。这样正常运行时有约16.8%的电压裕度即便少量模块故障旁路系统仍能满载运行。三相六桥臂的子模块总数就是155 × 6 930个。为什么我在前面说1260个因为在最终调试中为了进一步提升波形质量我把子模块电压进一步降低到2.0kV附近模块数上调到了210个每桥臂这是后话参数调整过程会在第5章细说。2.3 桥臂电抗与子模块电容的工程估算桥臂电抗器的作用一是抑制换流器内部的二倍频环流二是限制直流侧故障时的电流上升速率三是为桥臂间能量交换提供缓冲。它的取值在工程上通常用标幺值表示我取0.12pu。折算到实际值的计算过程X_L 0.12 × (U_valve^2 / S_N)这里U_valve取阀侧线电压210kVS_N取1000MVA那么X_L 0.12 × (210×10³)² / (1000×10⁶) ≈ 5.29Ω对应的桥臂电抗电感值L_arm X_L / (2πf) 5.29 / (2 × 3.14 × 50) ≈ 16.8mH实际取17mH。这个值看起来不大但在直流双极短路工况下它能把故障电流的初始上升率限制在每微秒几百安培的量级给保护动作留出时间窗。子模块电容的设计遵循“能量常数”原则。工程上通常要求MMC换流器的电容储能时间常数H在30~40kJ/MVA之间。储能时间常数的定义是换流器储存的总能量除以额定功率。对MMC来说总能量是三相同时充电的电容能量近似为6个桥臂 × 每桥臂N个子模块 × 0.5 × C × U_c²。取H35kJ/MVA额定功率1000MVA则总储能需要35MJ。于是6 × 155 × 0.5 × C × (2.2kV)² 35×10⁶ J解出来C约等于15.5mF。考虑到子模块电压波动率要求通常电容电压纹波控制在±5%~±10%这个值会给到16mF附近。电容值定得太小电压纹波大均压压力大定得太大成本和体积上去动态响应变慢。16mF折算到单模块储能约38.7kJ符合经验区间。2.4 换流变压器与连接电抗的配套设计换流变压器的核心参数是额定容量、变比和短路阻抗。额定容量按1.0~1.1倍换流器容量选择取1050MVA变比根据网侧500kV、阀侧210kV确定为500/210。短路阻抗UK%取15%这是柔直变压器比普通变压器略高的一个典型值目的是与桥臂电抗器配合共同起到限制故障电流和滤除谐波的作用。过高的短路阻抗会增大换流器运行时的无功损耗过低则对故障电流限制不足15%是经过大量工程验证的折中。3. 控制系统的三层逻辑电压外环、电流内环与子模块均压怎么联动3.1 上层功率控制与双闭环结构的搭建MMC的控制系统本质上是嵌套结构最外层是功率/电压控制中间层是电流控制最内层是子模块电容电压均衡和调制。我先把外环和中环讲清楚。整流侧定直流电压控制其外环输出作为d轴电流参考值。控制逻辑是检测直流母线电压U_dc与参考值U_dc_ref比较经过PI调节器输出d轴正序电流指令I_d_ref。这样当送端功率变化导致直流电压波动时整流侧会自动调整直流电流来维持电压稳定。逆变侧则采用定有功功率控制外环直接跟踪有功功率指令P_ref输出d轴电流指令。两端配合直流网络的功率平衡由整流侧负责电压逆变侧负责功率这是柔直系统最经典也最可靠的控制模式。无功控制方面我采用定无功功率控制外环输出q轴电流指令。在后续测试中我还做了定交流电压控制的切换实验在弱电网工况下定交流电压控制对电网电压支撑效果更好后面会聊到这个对比。3.2 电流内环的dq解耦与PI参数整定过程电流内环在dq旋转坐标系下工作核心方程是L × (di_d/dt) u_d - R×i_d ωL×i_q - e_d L × (di_q/dt) u_q - R×i_q - ωL×i_d - e_q可以看到d轴和q轴之间存在耦合项ωL×i_q和ωL×i_d所以控制器输出必须加上前馈解耦项否则d轴电流的变化会扰动q轴导致控制互相打架。实际实现时PI控制器的输出加上解耦项后生成换流器输出电压指令u_d_ref PI_d(i_d_ref - i_d) ωL×i_q e_d u_q_ref PI_q(i_q_ref - i_q) - ωL×i_d e_qPI参数的整定我是按带宽法来设计的。电流内环的期望带宽设为200~400rad/s对应的积分时间常数τ_i L/R。以桥臂电感17mH、等效电阻0.1Ω为例τ_i 0.17s比例增益Kp L × 带宽 ≈ 0.017 × 300 ≈ 5.1。这里要特别注意带宽不能设置过高否则数字控制器的采样延时和PWM开关延时会导致系统失稳。这个坑我在调试中反复遇到过具体表现就是电流波形出现高频振荡后来降带宽才压住。3.3 最近电平逼近与电容电压排序算法的工程实现内层控制是MMC的独有难点。我的模型调制方式采用最近电平逼近NLM工作逻辑是根据当前期望的交流输出电压计算出需要投入的子模块数量然后从桥臂中选出电压最低的那批模块投入、电压最高的那批切除从而实现电容电压的均衡。排序算法的实现细节可以简化描述为在每个控制周期读取桥臂内155个子模块的电容电压按电压从低到高排序然后根据投入数量的指令决定投入哪些模块、切除哪些模块。这个逻辑看着简单工程上却有三个坑排序周期不能太短也不能太长。太短相邻周期模块投切状态频繁翻转开关损耗大太长电容电压均衡效果差。我最终取的是100μs的排序周期对应的开关频率约相当于器件工作频率的1.5~2倍是一个比较平衡的区间。同一周期内投入和切除的模块数量要一致但不要所有模块都在同一个周期切换可以通过滞环逻辑让部分模块维持状态减少触发脉冲的抖动。投切切换瞬间电流不能突变这要求NLM算法在计算目标电平时要考虑桥臂电流方向否则会出现电压跳变、过冲。实际实现中我在计算中加入了前馈补偿项补偿桥臂电感上的压降。3.4 环流抑制二倍频分量为什么必须单独处理MMC三相桥臂共享直流母线三相之间的电压不平衡会在桥臂间产生环流主要成分是二倍频负序分量。环流不直接体现在交流输出上但会增大桥臂电流有效值、提高损耗和器件应力。我观察到的典型现象是不加环流抑制时桥臂电流的峰值比理论计算值高出约18%~20%这是不可接受的。环流抑制的标准做法是在电流控制中额外叠加一个二倍频负序坐标系即-100Hz坐标系下的PI控制环把桥臂环流中的二倍频分量作为被控量输出二倍频的修正电压叠加到桥臂电压指令上。调制波方程可写为u_arm_ref u_ac_ref/2 ± u_dc/2 ∓ u_cir_ref其中u_cir_ref就是环流抑制器的输出。调试中我发现环流抑制器的带宽设计不要过高通常取内环带宽的1/5到1/4即可过高会导致它在动态过程中引入新的振荡。4. 电网大考科目实录直流短路、交流故障、潮流反转与孤岛黑启动4.1 直流双极短路故障电流发展过程与闭锁策略直流双极短路是MMC换流器最严峻的故障形态。我在模型中做了这个仿真并全程录下了故障电流的演变分三个阶段第一阶段是子模块电容放电阶段。故障瞬间所有已投入的子模块电容通过桥臂电感和故障点构成放电回路放电电流从零开始快速上升上升速率由直流侧等效电感和故障电阻决定。我的模型中这个初始上升率约为每微秒几百安培峰值电流在约2~3ms内达到数倍额定值。第二阶段是二极管续流阶段。当检测到过流信号后控制器封锁IGBT触发脉冲但桥臂内的续流二极管仍然导通交流系统通过二极管向故障点馈入短路电流。这个阶段电流会维持在一个较高水平直到交流侧断路器或直流断路器动作故障电流被最终切断。第三阶段是故障清除后的恢复阶段。直流电流衰减后换流器解锁重新开始充电和功率恢复。这个故障过程的波形数据正好说明了为什么实际柔直工程中直流断路器的动作时间要求如此苛刻必须在子模块电容放电阶段结束之前切除故障电流否则二极管续流阶段的电流应力会损坏器件。在仿真模型里我的保护逻辑是检测直流电流超过1.2倍额定值立即闭锁换流器等待40ms后由直流断路器模型切除故障然后再尝试重启。这个时序在实际工程中对应的是“一次重启不成功则闭锁停机”的典型策略。4.2 交流侧三相短路与单相接地低电压穿越的实测波形交流侧故障是最常考的科目。我模拟了逆变侧交流母线三相金属性短路持续时间为625ms对应30个周波左右实际规程中有不同要求故障期间交流电压几乎跌到零。系统表现最亮眼的一点是故障期间逆变侧换流器并没有停机而是依靠直流母线电容的能量维持直流电压基本稳定整流侧继续向直流网络注入功率。故障清除后逆变侧交流电压迅速恢复有功功率在约200ms内重新回到指令值。这个过程的物理机制在于MMC本身具备四象限运行能力交流电压跌落时通过控制器的限流逻辑限制输出电流在1.2pu以内换流器可以一直保持运行——这正是柔性直流比传统直流输电在交流故障场景下的核心优势。单相接地故障的考验要温和不少但我发现了一个有意思的细节不对称故障会在直流母线电压中引入二倍频脉动原因是交流负序电流在直流侧产生功率振荡。我的模型在单相故障期间的直流电压脉动幅值约为正常运行时的3%~5%这个脉动幅度不至于危害设备但会让直流过压保护整定的灵敏度受到限制。如果你要深入研究换流器对交流系统不对称故障的耐受能力这个点很值得展开。4.3 功率倒送潮流反转时的控制系统表现柔直系统另一个传统直流无法比拟的能力是双方向传输功率时不需要改变直流电压极性。我在模型中测试了功率指令从1000MW整流送逆变逐步过渡到-1000MW逆变送整流的动态过程。有意思的地方在于功率倒送对控制系统而言并不是一条“新路”——因为MMC运行在整流还是逆变状态本质上是电流方向反转、直流电压极性不变的过程。控制器的实现方式有两种直接改变有功功率指令符号让功率外环的PI输出动态调节电流指令。这种方式简单但功率变化率过快时可能引发直流电压波动。我在模型中测试了200MW/s的功率变化率直流电压波动约±8kV±2.5%可以接受。更平滑的方式是采用“频率-功率”下垂控制通过略微调节直流电压来实现功率按比例分配并避免功率阶跃对电网的冲击。这个模式在未来的多端柔直系统中是标配。实际上在功率反转的过渡过程中我观察到的主要问题是桥臂环流会瞬间增大尤其是反转瞬间的暂态环流可以达到稳态的2倍左右。这说明环流抑制器在动态过程中的响应速度和控制器的协调也需要一并考虑只调试稳态性能是不够的。4.4 孤岛供电与黑启动从零建立交流电压的过程最硬核的“大考”科目是孤岛黑启动。我把受端交流系统断开让换流器对一个完全无源的孤立负荷网络供电。这时换流器必须放弃功率控制模式切换到定频率定电压VVVF模式自己建立交流电压和频率。控制逻辑是这样的外环不再输出有功电流指令而是直接用锁相环PLL锁住换流器自己产生的频率参考50Hz输出电压幅值给定为额定值电流内环则负责限制输出电流。实现方式上我用的是虚拟同步机思想的简化版电压幅值指令作为q轴参考频率指令作为d轴参考配合电流内环的限幅让换流器像一个理想的电压源。黑启动过程的实测表现给换流器解锁指令后交流电压在约30ms内建立到额定幅值电压谐波畸变率在0.5%以内随后合闸给负荷供电带载瞬间电压跌落约5%在200ms内恢复至额定值。整个过程中最需要谨慎的是启动初期的冲击电流如果负荷侧有变压器还要考虑变压器的励磁涌流这个我在测试中特意模拟了一下涌流峰值达到了1.8倍额定电流——幸好有电流限幅逻辑顶着否则可能会触发过流保护误动作。5. 实测阶段的翻车现场与调参心得仿真步长、弱网振荡与模型扩展5.1 全详细模型的仿真效率瓶颈与等效模型切换这是我踩的最大一个坑。最开始我坚持用全子模块详细模型跑所有工况结果发现在一个普通配置的工作站上PSCAD跑满1秒的仿真时间需要将近50分钟。做一次完整的故障扫描几十个工况相当于连续跑两三天。这个代价让我不得不妥协。妥协方案是分级建模第一级开关信号平均模型或者叫连续平均值模型。这种模型把MMC等效为一个受控电压源忽略开关过程适用于研究交流电网交互、功率振荡、启动策略等宏观问题。仿真速度提升约100倍但无法模拟直流短路故障和子模块电容动态。第二级戴维南等效模型这是精度和速度的最佳折中。每个桥臂用一个戴维南等效电路表示能够精确计算桥臂电流和子模块电容电压轨迹同时计算量大幅下降。直流短路、二极管续流等关键故障特性都能复现速度是详细模型的10倍以上。第三级全详细模型只在需要验证IGBT开关应力、器件级保护逻辑时使用。最终我的工作流是用戴维南等效模型完成绝大多数工况测试对最关键的故障工况如直流双极短路再用全详细模型做验证性仿真。模型精度差异对结论影响有多大我对比了一下戴维南模型与全详细模型在交流故障期间的直流电压跌落、有功功率恢复时间等关键指标上误差在5%以内这个精度对于研究级模型是可接受的。一个真实的教训是仿真研究也要算经济账别和机器的计算能力过不去。5.2 PI参数在弱电网条件下的振荡问题我在不同短路比SCR条件下做了控制器鲁棒性测试。整流侧和逆变侧的交流电网短路比从强电网的SCR5逐步降到弱电网的SCR1.5结果发现原本在强电网下调好的电压外环PI参数到了SCR2以下就开始出现直流电压低频振荡振荡频率约在几十赫兹级别仔细和电网强度分析其实就是控制环路与交流系统阻抗之间的谐振。这个问题的根源是强电网下交流系统阻抗极小换流器与电网的交互主要由控制器主导弱电网下交流系统阻抗不可忽略控制器的输出会通过电网阻抗形成正反馈回路。如果还是盯着原来的带宽整定思路就会忽略这个回路。我最终的解决办法有两个降低电压外环的带宽把PI参数从原本的积分时间常数0.1s调整为0.2s即响应速度放慢一半。增加了阻尼项在电压外环中加入了一个带通滤波环节用于抑制特定频段的振荡。实测效果是SCR1.5时直流电压振荡幅度从±15kV降到±3kV以内恢复稳定。这个调参过程的启发是做柔直模型的控制器测试不能只在一个电网强度下整定必须做短路比扫描。很多“仿真能跑、实际出问题”的事故根源都在这里。5.3 子模块故障与冗余投切的模拟我在模型里做了一组子模块故障测试在稳态运行中随机选择3个不同桥臂的子模块设置故障模拟其被旁路退出。系统在故障后的表现是故障模块被旁路后桥臂电流自动转移到剩余的健康模块上各模块电容电压重新均衡换流器继续正常运行。当然这个过程中实际上也暴露了一个隐患如果故障集中在同一桥臂这个桥臂的剩余模块电压会略有升高如果故障模块数量超过冗余量就必须降容运行。我在模型里把故障模块数逐步增加发现当故障数量超过全部模块的5%时直流电压纹波明显增大子模块电压偏移超过允许范围。这说明“冗余投切”不是无限度的冗余量必须和降容策略配合才能保证安全。这个测试的实际工程意义在于柔直换流站运行中IGBT/电容这类元件的老化和故障是不可避免的模型里提前模拟这些工况比实际发生后再去手忙脚乱要好得多。5.4 模型下一步的扩展空间多端柔直与智能协同1000MW双端模型跑通之后我认为下一步最值得扩展的方向有两个多端柔直网络。把单对单的拓扑扩展为三端或四端网络研究多换流站之间直流电压-功率分配协调策略比如基于直流电压下垂控制的功率自动分配这是未来区域电网互联、海上风电集群送出的核心技术。与多智能体协同控制相结合。多端柔直系统中集中式控制对通信依赖强一旦通信延时或故障系统的稳定性就会受到威胁。而基于多智能体协同的分布式控制可以让每个换流站根据本地信息自主决策通过协同算法共同维持系统运行。我计划在现有模型的基础上把每个换流站的控制封装为独立的智能体加入通信延时、丢包等非理想因素验证分布式控制策略的鲁棒性。这项工作也正好可以把搜索引擎里常看到的多智能体协同电网可靠运行热度话题落在一个可验证的仿真平台上。最后分享一个做这类模型的实用体会参数和逻辑都可以慢慢调但一定要把模型的文件组织、参数管理从一开始做规范。我的做法是用Excel统一管理所有主电路参数、控制器参数PSCAD里的模型通过全局变量引用改参数时只改Excel再导入避免在模型界面里四处乱翻。另外每次仿真一定要记录版本号和工况描述不然三天之后你看着一堆out文件根本分不清哪个对应哪个工况。这些习惯看起来琐碎真到了模型要扩展到多端、加上智能算法的时候能省下大量时间。