1. 项目概述
开环模块化多电平换流器(Modular Multilevel Converter, MMC)是高压直流输电(HVDC)领域的核心技术之一。这次我们要搭建的是N=6电平的MMC仿真模型,使用Simulink作为仿真平台。对于电力电子从业者来说,MMC仿真既是入门必修课,也是实际工程应用的前置验证手段。
我第一次接触MMC仿真是在2015年参与某柔性直流输电项目时,当时在Simulink里调试一个简单的N=3模型就花了整整两周。现在回头看,很多时间都浪费在基础参数设置和仿真步长选择上。这次分享的N=6模型虽然复杂度更高,但有了系统的方法论,搭建过程反而会更顺畅。
2. 核心原理与拓扑结构
2.1 MMC基本工作原理
MMC的核心在于其模块化设计。每个桥臂由多个子模块(Sub-Module, SM)串联而成,通过控制这些子模块的投入和切除,可以合成近似正弦的阶梯波。N=6意味着每个桥臂有6个子模块,输出相电压有6+1=7个电平。
子模块通常采用半桥结构(见图1),包含两个IGBT(T1/T2)和一组电容。当T1导通时,电容电压接入电路;T2导通时则旁路该子模块。这种设计带来了三个关键优势:
- 单个器件承受电压应力小
- 输出电压谐波含量低
- 容错能力强
图1:半桥子模块电路图
code复制T1 ----|>|---+ | C D1 | ----|<|---+ T2
2.2 N=6拓扑的特殊考量
与常见的N=10+的高电平数应用不同,N=6属于中等电平配置,在仿真时需要特别注意:
- 电容电压波动更明显(单个子模块承担更多功率)
- 环流抑制难度增大(桥臂电抗器参数更敏感)
- 调制策略需要调整(电平数少时SHEPWM效果优于NLM)
3. Simulink建模详解
3.1 基础模块搭建
首先在Simulink中建立六个相同的子模块库(Library),每个包含:
- 两个IGBT模块(带反并联二极管)
- 1000uF电容(初始电压设为Vdc/N)
- 电压电流测量端口
关键参数设置技巧:
- IGBT的Ron设为1e-3Ω(实际器件导通电阻量级)
- 电容ESR设为0.1Ω(考虑实际电容损耗)
- 开关频率设为2kHz(折衷开关损耗和波形质量)
3.2 主电路连接
按照图2结构连接三相六桥臂:
code复制 相单元A
/ | \
上桥臂 上桥臂 上桥臂
下桥臂 下桥臂 下桥臂
\ | /
直流母线
每个桥臂包含:
- 6个子模块串联
- 10mH桥臂电抗(抑制环流)
- 电流传感器
提示:使用Simscape Electrical库中的SPS(Specialized Power Systems)组件可以大幅提高仿真速度。
3.3 控制策略实现
采用最近电平逼近调制(NLM)+电容电压排序控制:
- 参考波生成:
matlab复制Vref = Vm*sin(2*pi*50*t) + 0.5*Vdc;
- 电平数计算:
matlab复制N_on = round(Vref/(Vdc/N));
- 电容电压排序算法:
matlab复制[~, idx] = sort(cap_voltages);
active_SMs = idx(1:N_on);
4. 关键参数计算
4.1 直流电压分配
假设系统参数:
- 直流母线电压Vdc = 6kV
- 单个子模块额定电压 = Vdc/N = 1kV
- 电容初始电压设为1kV±10%(考虑预充电过程)
4.2 桥臂电抗计算
电抗值需满足:
$$ L \geq \frac{V_{dc}}{6Nf_{sw}\Delta i} $$
取开关频率fsw=2kHz,允许纹波Δi=10%额定电流(假设100A):
$$ L \geq \frac{6000}{6×6×2000×10} ≈ 8.33mH $$
实际选用10mH留有余量。
5. 仿真配置技巧
5.1 求解器设置
- 使用ode23tb(刚性系统专用)
- 最大步长设为1/(100*fsw)=5e-6s
- 相对容差1e-4,绝对容差1e-6
5.2 加速技巧
- 启用"加速器"模式(Simulation > Accelerator)
- 对所有SPS模块右键选择"Disable Snapshot"
- 将控制部分转为Matlab Function块
6. 典型问题排查
6.1 电容电压失衡
现象:个别电容电压持续升高/降低
解决方法:
- 检查排序算法是否正常更新(每秒至少100次)
- 增加电压均衡电阻(并联1kΩ电阻)
- 调整NLM的滞环宽度
6.2 仿真发散
现象:仿真中途报错停止
排查步骤:
- 检查所有IGBT的gate信号是否同时导通(必须互锁)
- 电容初始电压是否在合理范围
- 尝试减小仿真步长
7. 进阶优化方向
完成基础仿真后,可以尝试:
- 加入闭环控制(外环电压+内环电流)
- 实现故障穿越功能(模拟子模块故障)
- 移植到FPGA做硬件在环测试
我在实际项目中发现,N=6模型虽然电平数较少,但非常适合用来验证控制算法的实时性。去年在某换流阀测试中,就是先用这个规模的仿真模型快速验证了新型均压算法的有效性,节省了约40%的现场调试时间。