1. 项目概述
最近在电力电子领域,模块化多电平变换器(MMC)因其出色的电压扩展能力和波形质量,在高压直流输电(HVDC)和柔性交流输电(FACTS)系统中获得了广泛应用。这次我实现的是一个交流3000V到直流5000V的整流仿真系统,单桥臂配置20个子模块,重点对比了最近电平逼近(NLM)和载波移相调制(CPS-PWM)两种调制策略的实际表现。
这个项目源于我在研究高压大功率电能转换时的实际需求。传统两电平或三电平变换器在高压场合需要串联大量功率器件,存在动态均压困难、开关损耗大等问题。而MMC通过模块化设计,不仅实现了电压等级的灵活扩展,还能显著改善输出波形质量。但在实际应用中,调制策略的选择和环流抑制一直是工程实现的难点。
2. 系统架构与参数设计
2.1 主电路拓扑
MMC的基本单元是子模块(SM),本设计采用最常见的半桥结构。单相系统包含上下两个桥臂,每个桥臂由20个子模块与一个桥臂电感串联组成。系统主要参数如下:
| 参数名称 | 数值 | 设计依据 |
|---|---|---|
| 交流侧电压 | 3000V | 中压工业应用典型值 |
| 直流侧电压 | 5000V | 满足1.67倍升压比 |
| 子模块电容 | 15mF | 平衡体积与电压纹波 |
| 桥臂电感 | 5mH | 抑制环流与限流 |
| 开关频率 | 500Hz | 折衷损耗与控制性能 |
提示:子模块电容值的选择需要综合考虑系统功率等级和允许的电容电压波动。经验公式C=P/(3ωΔUcUdc),其中ΔUc一般控制在10%以内。
2.2 控制架构
系统采用分层控制策略:
- 系统级控制:维持直流电压稳定,生成桥臂电压参考
- 调制级控制:实现NLM或CPS-PWM调制
- 平衡控制:保持子模块电容电压均衡
- 环流抑制:专门抑制二倍频环流
环流抑制采用双闭环结构,外环为直流电压控制,内环为环流抑制。特别在环流控制回路中加入了陷波滤波器,中心频率设置为100Hz(针对50Hz工频系统的二次谐波)。
3. 调制策略实现细节
3.1 最近电平逼近调制(NLM)
NLM的核心思想是用最接近参考电压的整数电平来近似目标波形。对于20个子模块的桥臂,可输出0-20共21个电平。
3.1.1 快速排序算法实现
电容电压排序是NLM的关键环节。我采用快速排序算法替代常见的冒泡排序,时间复杂度从O(n²)降至O(nlogn)。Matlab实现如下:
matlab复制function sorted_SMs = fastSort(capVoltages)
% 递归终止条件
if length(capVoltages) <= 1
sorted_SMs = capVoltages;
return;
end
% 选择基准点(最后元素)
pivot = capVoltages(end);
% 分区操作
left = capVoltages(capVoltages < pivot);
right = capVoltages(capVoltages > pivot);
% 递归调用
sorted_SMs = [fastSort(left) pivot fastSort(right)];
end
实际应用中需要注意:
- 递归深度问题:20个子模块下堆栈使用安全
- 等值处理:当存在相同电压时需特殊处理
- 执行效率:实测排序时间从2.1ms降至0.3ms
3.1.2 投入逻辑设计
根据排序结果,电压最低的子模块优先投入充电,电压最高的优先切出放电。这种策略能自动维持电容电压均衡,但需注意:
- 引入滞环比较:防止在切换点附近频繁投切
- 最小投入时间约束:避免开关器件动作过快
- 冗余设计:保留1-2个子模块作为热备用
3.2 载波移相调制(CPS-PWM)
CPS-PWM通过相位错开的载波实现多电平输出,20个子模块需要20个载波,相位间隔18°(360°/20)。
3.2.1 载波生成技巧
matlab复制phaseShift = (0:19)*(2*pi)/20;
carriers = sawtooth(2*pi*fs*t + phaseShift', 0.5);
关键点:
- 相位严格均分:确保等效开关频率提升20倍
- 死区补偿:添加0.5μs死区时间防止直通
- 归一化处理:所有载波幅度统一为[-1,1]
3.2.2 调制波设计
采用正弦波与三次谐波注入结合的方式,提高直流电压利用率:
matlab复制modWave = ma*sin(2*pi*f*t) + 0.2*ma*sin(3*2*pi*f*t);
其中ma为调制比,控制在0.8-0.9之间以获得最佳波形质量。
4. 环流抑制实现
4.1 环流机理分析
MMC运行时,相单元内会自然产生二倍频环流,主要成分为:
- 有功分量:与能量交换相关
- 无功分量:与电容电压波动相关
4.2 控制算法实现
采用PR控制器结合陷波滤波器的方案:
matlab复制% 环流抑制器参数
Kp = 0.15; % 比例系数
Ki = 2.5; % 积分系数
notchFreq = 100; % 陷波频率(针对50Hz系统)
[bn, an] = iirnotch(2*notchFreq/(1e3), 0.1); % 设计数字陷波器
% 控制律实现
error = iref - imeas;
integral = integral + Ki*error*Ts;
output = Kp*error + integral;
output = filter(bn, an, output); % 陷波滤波
调试技巧:
- 先调Kp确定响应速度
- 再调Ki消除稳态误差
- 陷波带宽设为5-10Hz为宜
5. 仿真结果对比
5.1 波形质量分析
| 指标 | NLM方案 | CPS-PWM方案 |
|---|---|---|
| THD | 1.8% | 0.9% |
| 效率 | 98.7% | 97.2% |
| 电容电压波动 | ±3% | ±2.5% |
| 环流幅值 | <5%额定 | <3%额定 |
NLM在效率上优势明显,而CPS-PWM在波形质量上更优。这种差异主要源于:
- NLM的开关损耗更低
- CPS-PWM的等效开关频率更高
5.2 动态响应测试
在负载突加(50%-100%)情况下:
- NLM的直流电压恢复时间:20ms
- CPS-PWM的恢复时间:15ms
CPS-PWM的动态响应更快,得益于其更高的等效开关频率带来的带宽优势。
6. 工程实现经验
6.1 参数选择建议
-
子模块电容:
- 过大会影响动态响应
- 过小导致电压波动大
- 经验值:15-20mF/kW
-
桥臂电感:
- 典型值:0.1-0.2pu
- 本设计取5mH(约0.15pu)
-
开关频率:
- NLM:500-1000Hz
- CPS-PWM:可低至200Hz(等效频率仍很高)
6.2 调试排错指南
-
电容电压不平衡:
- 检查排序算法是否正确
- 验证投入逻辑时序
-
环流过大:
- 调整PR控制器参数
- 检查陷波滤波器中心频率
-
波形畸变:
- 确认调制比是否合适
- 检查死区补偿是否足够
6.3 性能优化方向
- 混合调制策略:低频区用NLM,高频区用PWM
- 模型预测控制:替代传统PI控制
- 智能排序算法:减少排序计算量
这个项目从理论到实践验证了MMC两种调制策略的特点。实际工程中,需要根据应用场景的具体需求(效率优先还是波形质量优先)来选择合适的调制方案。对于高压大功率应用,NLM因其高效率更具吸引力;而对波形质量要求严格的场合,CPS-PWM可能更合适。