Simulink背靠背MMC电能质量调节系统建模与仿真解析
2026/9/10 18:58:06 网站建设 项目流程

把Scope窗口里的曲线放大,我盯着屏幕上那两条波形的变化看了很久:背靠背MMC投入之前,负载侧母线电压还存在明显畸变,电流波形里谐波分量清晰可见;换流器解锁之后,电压波形慢慢变成了一条平滑的正弦线,电流里的毛刺也被压了下去。这是我在Simulink里把背靠背高压直流调制多电平变流器(MMC)作为电力质量调节系统跑通后的第一个直观感受。

说不上多惊艳,但看着从建模、控制到调试一步步走过来的模型终于输出理想波形,还是挺有成就感的。这篇东西不是教科书复述,是我自己从零搭建背靠背MMC仿真模型、并让它体现电能质量调节效果的完整过程,包括主电路参数怎么定、控制环怎么设计、Simulink里哪些细节容易坑人,以及最后怎么用波形和指标验证“电力质量调节”确实有效果。适合正在做MMC方向课程设计、毕业课题,或者工作中需要评估MMC作为电能质量治理装置可行性的工程师参考。如果你已经用过Simulink做过简单逆变器仿真,那这篇内容完全可以跟着落地。

1. 为什么非要用背靠背MMC做电能质量调节

1.1 单个换流器解决不了两侧解耦的问题

很多人一听到电力质量调节,第一反应是上SVG或者APF——静止无功发生器加上有源滤波,确实能解决大部分电压波动和无功补偿问题。但这类装置有一个天然限制:它只能接在电网的某一个节点上,对电网侧和负载侧的交互影响基本没法隔离。比如负载侧某个大功率整流装置启动时,产生的谐波和电压跌落,会顺着母线直接传染给电网侧;而电网侧发生电压闪变,负载侧也会跟着抖。如果你要的是“两边互不污染”,单个换流器做不到。

我在做这个仿真前,先花了不少时间想清楚一个问题:背靠背MMC本质上不是“在电网节点上并联一个补偿装置”,而是“把电网和负载从物理上解开,再通过直流母线建立受控的能量通道”。整流侧MMC从电网吸收有功功率,同时控制电网侧的无功功率和电压;逆变侧MMC向负载输出工频交流电,同时承担调压、补偿谐波、平衡三相负荷这些任务。两侧之间只有有功功率通过直流母线流动,无功和谐波各管各的,互相不影响。

1.2 多电平换流器的“软”特性从哪来

背靠背MMC里用的是模块化多电平换流器,它不是传统两电平VSC那样靠PWM在高压直流和交流侧之间强行斩波,而是每个桥臂由几十个半桥子模块(SM)串联而成。通过控制每个子模块的投入和切除数量,交流输出电压能一步一个台阶地逼近正弦波,台阶越多,波形就越好。

这个结构特点在电能质量调节场景里特别值钱。因为MMC每相有上下两个桥臂,每个桥臂还有一堆子模块,整个换流器就相当于一台可以精确调节的受控电压源。它输出的交流电压的幅值、相位、频率,甚至波形形状都能通过控制指令改。换句话说,它不只是把电网电压传递到负载侧,而是“重新生成”了一个负载侧电压——电网侧的电压畸变、谐波、闪变,只要不转化为有功功率波动,负载侧基本感觉不到。

1.3 这个仿真到底要回答哪几个问题

在动手之前,我把这次仿真要实现的目标收敛成了五条:

  • 背靠背MMC两侧需要独立控制,控制策略怎么分配才算合理;
  • 逆变侧能不能在负载突加突卸时维持负载母线电压稳定;
  • 电网侧电压波形谐波能不能被隔离,不再传播到负载侧;
  • 非线性负载或三相不平衡负载接入后,MMC是否能主动补偿谐波和负序电流;
  • 整个系统在Simulink里用多大步长、多少子模块数量才保证精度和速度的平衡。

这几个问题不是凭空想的,而是实际评估MMC用作电能质量调节系统时必须回答的核心问题。仿真模型就是回答这些问题的最好工具,它比理论推导直观,又比现场试验便宜得多。

2. 动手搭建前,先定主电路参数和控制方案

2.1 一个能跑的中压配网背靠背MMC模型,参数怎么选

仿真不是越复杂越好,关键是参数要自洽。我这个模型设定为中压配网场景,额定容量5 MVA,两侧交流系统都是10 kV/50 Hz,直流母线电压设计为20 kV。为了让仿真时间和精度平衡,每个桥臂的子模块数量选了8个,这样单侧单相桥臂一共16个子模块,背靠背整机加起来是96个半桥子模块。如果N取到几十个,仿真速度会明显变慢,而且对电能质量研究来说,8电平的波形质量已经足够说明问题。

子模块电容的选取我参考了工程上常用的能量存储约束。MMC子模块电容设计一般要求整个换流器的能量存储时间常数在30~40 kJ/MVA左右。按5 MVA算,系统总储能大约在150 kJ到200 kJ之间。由于每个桥臂8个子模块,直流电压20 kV,每个子模块平均电压是2.5 kV。这一套参数算下来,单电容取值在4 mF左右比较合适,我用4 mF建模仿真时电容器电压纹波约在8%以内,符合预期。

桥臂电感的取值参考典型值0.1 pu。根据10 kV/5 MVA的基准值计算,基准阻抗Z_base是20Ω,0.1 pu对应的电感量大约是6 mH。这个电感的作用有两个:一是限制环流,二是作为换流器与交流系统之间的能量交换缓冲。我实际试过从3 mH到10 mH的区间,电感太小环流抑制压力很大,电感太大又会拖慢电流响应速度,6 mH在这个系统里比较均衡。主要参数如下表:

参数数值说明
额定容量5 MVA中压配网级别
交流线电压10 kV / 50 Hz两侧相同
直流母线电压20 kV背靠背公共直流母线
每桥臂子模块数8兼顾波形质量与仿真速度
子模块电容4 mF按30~40 kJ/MVA能量约束选取
桥臂电抗6 mH约0.1 pu
子模块平均电压2.5 kV由直流电压和N值决定

2.2 三层控制嵌套:外环给指令,内环跟电流,环流抑制兜底

背靠背MMC的控制系统比普通两电平VSC要复杂一截,因为它不仅要有交流电流控制,还要管直流母线电压、子模块电容电压,以及桥臂内部的二倍频环流。

我这个模型里,整流侧MMC的控制策略是“定直流电压+定无功功率”。直流电压外环的PI输出作为有功电流内环的d轴参考值,无功功率外环输出作为q轴电流参考值。这套逻辑很成熟,和普通VSC的矢量控制差别不大,只是底层执行对象从两电平桥臂变成了多电平桥臂。

逆变侧MMC的控制策略是“定有功功率+定交流电压幅值”,同时兼顾负载侧电能质量。有功功率外环用于设定背靠背系统传输的有功大小,交流电压外环用于稳定负载母线电压。对于谐波补偿功能,我在逆变侧电流内环的参考值上叠加了通过陷波器提取的谐波电流分量,让逆变侧MMC主动输出与负载谐波电流大小相等、方向相反的补偿电流。

环流抑制是MMC控制的一个重要环节。由于上下桥臂电压之和存在二倍频波动,会在桥臂内部产生二倍频环流,这个环流不流到外部,但会增大器件损耗和电容电压波动。我用的方法是在每相上下桥臂电流相加得到环流后,提取其二倍频分量,通过一个谐振控制器或负序坐标变换后的PI控制器来抑制。Simulink里直接搭谐振控制器要小心离散化后的频率偏移,用负序dq变换加PI反而更稳。

用生活类比来理解这三层控制:外环就像公司管理层,只定目标——直流电压稳在20 kV、负载电压稳在10 kV、要传输多少有功;内环就是执行层,负责让实际电流快速跟上管理层给的指令;环流抑制则是后勤部门,专门处理系统内部“自己跟自己较劲”的多余能量。

2.3 调制策略:为什么我选了载波移相PWM

子模块数量到了8个,调制策略的选择就有讲究了。常见的有最近电平逼近调制(NLM)和载波移相PWM(CPS-PWM)。对于几十上百个子模块的输电级MMC,NLM是主流,因为电平数量多,每个子模块的开关频率可以压得很低;但对于8个子模块的模型,NLM的输出电平台阶只有9个,在低调制比下谐波会比较明显,而CPS-PWM通过8个相位错开的载波,等效开关频率提高了8倍,谐波分布更均匀,滤波负担也小。

CPS-PWM的实现逻辑不复杂:每个子模块配一个三角载波,载波频率2 kHz,相位依次错开π/N。环流抑制和电压均衡之后产生的调制波和每个载波比较,生成每个子模块的开关信号。在Simulink里我直接用比较器配合锯齿波/三角波发生器实现,注意每相上桥臂和下桥臂的载波起始相位要在时间轴上对齐,否则桥臂之间会出现不对称。

除了调制策略,还要解决子模块电容电压均衡的问题。简单可靠的策略是“排序法”——在每个控制周期里测量桥臂所有子模块的电容电压,根据桥臂电流方向决定投入电压最高还是最低的子模块。排序法在Simulink里用MATLAB Function块写起来非常顺手,一个周期跑完也就几行代码。虽然它不是最优算法,但对于中等数量子模块的仿真模型来说,计算量小,均衡效果直观可见。

2.4 模型精度和仿真代价,怎么平衡

仿真模型建到什么精度,是Simulink用户经常纠结的问题。背靠背MMC整机96个子模块,如果全部用IGBT和二极管的具体开关模型,Simulink里会引入大量开关非线性,仿真步长可能被迫压到亚微秒级,跑一个0.5秒的工况耗时非常长。更现实的做法是先跑速度快的简化模型,把控制逻辑调通,再局部替代成详细模型做波形级验证。

我给了自己三个档次的模型选择:

模型形式建模方法速度用途
开关级详细模型IGBT+二极管+电容验证最终波形与损耗
理想开关模型用理想开关替代IGBT中等观察电压电流波形细节
平均模型受控电压源替代桥臂调PI参数、验证控制逻辑

我的实际策略是先用平均模型把背靠背系统的功率平衡关系、直流电压控制、两侧交流电流控制整体调通,再把逆变侧换成理想开关级子模块模型做电能质量波形分析,这样能把整个开发周期压缩一大半。

3. Simulink里搭建背靠背MMC模型的关键步骤

3.1 工具箱准备和版本选择

这部分的硬件基础很简单,MATLAB/Simulink加Simscape Electrical工具包就够了。我用的是R2021a版本,后面如果你用更高版本,模块库里部分名字会有变化,但基本思路一致。Simulink里做MMC相关仿真有三种路径:一是直接用Simscape Electrical里的“MMC Converter”现成模型,二是自己搭子模块,三是用受控源搭平均模型。

我强烈建议,如果你是第一次接触MMC,不要直接用现成的MMC模块,因为那个封装之后的模型黑盒感很强,出了问题你根本不知道哪里错。自己搭子模块虽然前期费时间,但对理解MMC工作原理、后面调试控制参数都有巨大帮助。等你自己搭的模型跑出来了,再去对比官方模块的行为,才会真正看懂背后的物理过程。

3.2 半桥子模块和桥臂的建模

一个半桥子模块在Simulink里能拆成两个理想开关(或IGBT加二极管)、一个直流电容、一个电压测量端。为了简化仿真,我先用了Simscape Electrical里的Ideal Switch,这样不用处理IGBT的导通压降和死区问题,仿真速度更快。两个开关一组,状态互补,电容要么接入桥臂,要么被旁路,逻辑简单清晰。

子模块封装的时候,一定要把门控信号和电容电压反馈端子留好。门控信号来自CPS-PWM比较器,电容电压反馈则送给排序算法。我在这个模型里还给每个子模块加了一个并联放电电阻,用来模拟实际工程中的均压电阻,这样仿真初期直流侧预充电阶段电容电压能自然均匀。

桥臂我按“N个子模块串联后加桥臂电感”的方式搭建。上下两个桥臂在交流输出端相连,形成MMC的单相桥臂对。这里有个容易忽略的细节:桥臂电感必须放在子模块串和交流输出端口之间,这样才对环流和短路电流有抑制作用。我一开始把它放在子模块串后面,结果环流抑制效果完全不对,波形里出现了很大的震荡分量,查了半天才发现是电感位置摆错了。

3.3 背靠背直流环节怎么接

背靠背结构在Simulink里体现为两个MMC共用一条直流母线。我没有额外给直流侧加长线路,因为既然叫“背靠背”,中间就是极短的直流连接,线路电感电容可以忽略。直流母线我加了一个平波电容和直流电压测量点,用来给整流侧直流电压控制环提供反馈信号。

整流侧MMC和逆变侧MMC在这个共享直流母线上必须满足功率平衡,简单说就是整流侧送进来的有功功率要等于逆变侧送出去的有功功率加上系统损耗。如果失衡,直流电压就会飙升或跌落。这个关系在控制设计时就要刻在脑子里:整流侧保住直流电压,逆变侧决定有功流动,两边才能稳定运行。

3.4 控制系统搭建和离散化处理

控制系统的搭建建议全部放在离散域。Simulink里常规模拟PI控制器在连续域看起来调得不错,但一接到PWM生成和开关逻辑这种离散环节,就会出现意料之外的延迟,控制器参数必须重新校正。我直接用了离散PI控制器,控制频率选10 kHz,也就是控制周期100微秒,这样和CPS-PWM的等效开关频率匹配。

坐标变换和锁相环这个环节,Simulink里用“abc to dq0”模块和内置PLL即可。整流侧和逆变侧各需要一个PLL,分别锁定各自交流母线的电压相位。这里有一个我踩过的坑:背靠背两侧交流系统频率和相位不同,PLL必须分别工作,绝不能共用一个相位信号。我一开始想省事,把整流侧PLL输出的相位直接给逆变侧用,结果逆变侧电流控制完全跟不住参考值,波形直接发散。

pwm载波比较部分,我用一个重复序列模块生成三角载波,周期设为载波频率2 kHz的倒数,相位控制通过一个初始相位参数设定。8个子模块的载波相位按π/8间隔排列,这里可以通过一个计数器模块加比较器实现,避免手动搭8份载波模块。

3.5 仿真步长的选择,直接影响结果可信度

Simulink仿真步长是这种电力电子仿真最容易翻车的环节。系统里同时存在PWM开关动作、子模块电容充放电和控制器的离散采样,任何一层的时间分辨率不够,都会导致结果失真。

我这里先跑了理想开关模型,使用固定步长1微秒的离散求解器。1微秒对应2 kHz PWM,一个开关周期有500个仿真点,分辨率足够。如果把步长放到2微秒甚至5微秒,电容电压波形和PWM脉宽细节会明显变形,环流抑制效果也会被高估或低估,结论就不可信了。

如果你用平均模型做控制参数整定,步长可以放宽到5微秒,因为不存在开关事件,数值刚性会小很多。但一旦切回详细开关模型,建议立刻把步长压回1微秒。还有一个经验:Simulink默认的变步长求解器在PWM仿真里容易在开关切换点不断缩小步长,导致仿真速度异常慢。换固定步长,配合离散求解器,速度和稳定性反而更好。

4. 结果分析:从波形和指标看电能质量调节效果

4.1 稳态波形怎么看,看哪几个点

模型搭完,首先要看稳态波形是否正常。我习惯看四个关键波形:整流侧交流电流、逆变侧交流电压、直流母线电压、子模块电容电压。

逆变侧交流电压波形在CPS-PWM下呈现8电平台阶,整体轮廓是干净的正弦波,这个看一眼就知道调制逻辑对不对。如果台阶数不对,或者有的台阶宽度不均匀,通常是载波相位设置错误。直流母线电压在稳定工况下应维持在20 kV附近,纹波峰峰值一般在2%到4%之间;如果纹波明显偏大,优先查环流抑制是否生效,再看电容大小是否合理。

子模块电容电压是我最关注的地方。正常状态下,单个子模块电压应在2.5 kV附近小幅波动,波动幅度在5%到10%之间符合预期。如果我发现某一相电容电压明显偏离平均值,说明排序算法或环流抑制出了问题。这里多说一句,排序算法在Simulink里如果用MATLAB Function块实现,要注意把它设成离散采样模式,采样时间取控制周期100微秒,否则会引入代数环报错。

4.2 用THD和功率因数给结果“打分”

波形肉眼看着好还不够,得用定量指标说话。我用Simulink里的Powergui FFT分析工具,分别测了不投入背靠背MMC和投入后两种工况下的负载侧电压电流谐波。

我在负载侧接了一个不可控整流桥加阻感负载,这个负载典型且恶劣,谐波含量高。没投背靠背MMC时,负载侧电压THD在14%左右,电流波形有明显的6k±1次谐波;投入背靠背MMC并开启逆变侧谐波补偿后,电压THD降到了3%以下,电流THD也降到5%以内。这个数字虽然谈不上极限,但已经满足大多数电能质量标准的低压侧要求。

功率因数的变化也很有代表性。负载侧功率因数从原来的0.78提高到了0.98左右,这里主要靠整流侧MMC提供无功支撑,避免了电网侧额外加设电容器组。从这里能看出,背靠背MMC作为电能质量调节系统的一个核心优势:无功补偿是动态的、连续可调的,不像机械投切电容器那样只能分级粗调。

4.3 典型工况模拟:用瞬态仿真验证动态补偿能力

稳态指标合格了,还要看动态性能。我在模型里设了三种瞬态工况。

第一种是负载侧突加一个有功负载。在0.3秒前系统带轻载运行,0.3秒时投入大功率负载。由于逆变侧MMC的交流电压外环响应,负载侧电压跌落被控制在很小的范围内,电压在20毫秒内恢复到额定值附近。整流侧直流电压在扰动瞬间有小幅跌落,随后在直流电压PI控制器的调节下回升到20 kV。这个工况验证了背靠背结构对负载突变的“隔离”能力。

第二种是模拟电网侧电压跌落。我把电网侧交流电源电压在0.4秒到0.6秒之间降低15%,观察负载侧电压波形。由于两侧通过直流母线解耦,电网侧电压跌落并不会直接传导到负载侧,逆变侧只感受到直流母线电压的微小变化,负载侧电压几乎维持不变。这在工程上相当于实现了动态电压恢复功能,对敏感负载意义很大。

第三种是不平衡负载补偿。我在负载侧加了一个单相大功率负载,造成明显的三相不平衡和负序电流。逆变侧检测到输出电流中存在负序分量后,通过负序电流控制策略主动输出补偿电流,把负载侧三相电压的不平衡度从15%压到了4%以下。逆变换流器在dq坐标系下同时控制正序和负序分量,这在Simulink里需要多一套负序旋转坐标系的控制环,实现起来比想象中麻烦,但波形投入后能看到明显的补偿效果。

4.4 一次真实的调参踩坑记录:环流抑制引起的恶性循环

仿真并不是一路顺风的。中间有几个晚上我都在跟一个诡异的现象较劲:系统启动后正常运行几十毫秒,然后电容电压开始发散,紧接着直流母线电压开始震荡,最后直接把仿真“跑飞”。

最开始我以为是PI参数问题,把直流电压外环的增益压低了,没用;后来怀疑排序算法,把电容电压均衡的优先级提到最高,也没用。最后我把电容电压波形和桥臂环流波形叠加在一起看,才发现环流分量在失控前已经出现了明显的负阻尼增长。

问题出在环流抑制控制器的采样频率。我把环流抑制放进了一个控制频率只有2 kHz的子系统中,而二倍频环流是100 Hz,理论上2 kHz采样足够,但实际环流抑制的闭环响应延迟太大,导致控制器非但没抑制环流,反而给环流引入了负阻尼,形成恶性循环。把环流抑制控制器的采样频率提升到10 kHz后,波形立刻稳定下来,电容电压纹波也回到了正常水平。

这个坑让我记住了:MMC控制系统里的不同控制环,采样频率不能一刀切。电流内环和环流抑制要对齐到较高频率,外环可以适当降低,但内部环路的频率必须高于被控对象的特征频率。

5. 几点个人体会和后续扩展方向

这次把背靠背MMC在Simulink里作为电力质量调节系统完整跑通,我最大的体会是“分层推进,先简后繁”。如果一上来就堆96个IGBT开关模型,大概率还卡在仿真速度的泥潭里,别说调控制了,连模型能不能完整跑完都是问题。先做平均模型,把整流侧定直流电压、逆变侧定交流电压的两侧功率平衡关系吃透,再逐渐加入子模块开关细节,这条路径对初学者是最友好的。

另外,我觉得MMC仿真和传统两电平VSC仿真在调试思路上有一个显著区别:两电平只看外部输出波形基本就够,而MMC还必须盯内部状态量,比如桥臂环流、子模块电容电压、子模块之间的均衡程度。这些内部状态直接决定系统能不能稳定运行,也直接影响输出电压波形质量。做MMC仿真时至少要把环流波形和电容电压示波器常驻在界面上,随时观察。

如果你后续想在这个基础上继续深挖,我建议可以往三个方向走:

  • 换流器控制策略升级。当前用的是经典矢量控制加环流抑制,如果换成模型预测控制或虚拟同步机控制,动态响应和弱网适应性会更好,仿真模型的控制结构也要大改。
  • 故障穿越能力建模。给背靠背MMC加入交流侧对称和不对称故障工况,研究直流母线过电压、过电流的抑制策略。这在实际工程选型时是电网公司必问的问题。
  • 实时化验证。Simulink建好的模型可以通过代码生成工具部署到RT-LAB或FPGA在环平台上做实时仿真,这个模型的控制结构完全可以作为起点。

如果你也想做类似方向,建议先把自己的交流系统参数和控制目标写在一张纸上,再开始建模。参数自洽的系统,比盲目追求高N值的系统更能说明问题,也更适合作为研究成果呈现。后面如果搭建过程中遇到什么奇怪的现象,欢迎根据我上面列的几个排查方向自查一遍,多半能找到原因。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询