模块化多电平变换器MMC的NLM与CPS-PWM调制策略仿真实现:交流3000V-直流5000...
模块化多电平变换器MMC两种调制策略实现交流3000V-直流5000V整流仿真单桥臂二十子模块分别采用最近电平逼近NLM与载波移相调制CPS-PWM实现仿真中使用环流抑制NLM中采用快速排序两个仿真动稳态性能良好附带仿真介绍文档详细讲述仿真搭建过程并附带参考文献与原理出处内容详实最近在搞模块化多电平变换器MMC的仿真项目目标是实现交流3000V到直流5000V的整流。单桥臂挂了20个子模块分别试了最近电平逼近NLM和载波移相调制CPS-PWM两种玩法。这里分享点实战经验特别是代码实现中的骚操作。先看NLM方案的核心——电容电压排序。这玩意儿直接关系到子模块投入顺序。我在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个子模块下堆栈不会溢出。环流抑制这块用了双闭环控制。外环维持直流电压稳定内环专门怼环流。控制算法里埋了个陷波滤波器专门针对二倍频环流% 环流抑制模块参数 Kp 0.15; Ki 2.5; notchFreq 100; % 对应50Hz系统的二次谐波 [bn, an] iirnotch(2*notchFreq/(1e3), 0.1);转战CPS-PWM时发现载波相位分配是个技术活。20个子模块需要等间隔相位差这里用了个数学魔术phaseShift (0:19)*(2*pi)/20; carriers sawtooth(2*pi*fs*t phaseShift, 0.5);每个载波错开18度这样合成的等效开关频率直接翻了20倍。不过要注意死区补偿我在PWM生成模块里加了0.5us的死区时间防止上下管直通。模块化多电平变换器MMC两种调制策略实现交流3000V-直流5000V整流仿真单桥臂二十子模块分别采用最近电平逼近NLM与载波移相调制CPS-PWM实现仿真中使用环流抑制NLM中采用快速排序两个仿真动稳态性能良好附带仿真介绍文档详细讲述仿真搭建过程并附带参考文献与原理出处内容详实动态测试时NLM方案的THD居然只有1.8%比CPS-PWM的0.9%还差点。但看效率NLM的98.7%吊打CPS-PWM的97.2%。果然是鱼与熊掌不可兼得。稳态波形里电容电压波动控制在±3%以内环流幅值压到了额定电流的5%以下。仿真文档里详细记录了每个模块的参数设置比如子模块电容取的是15mF这个值大了影响动态响应小了电压波动hold不住。建议新手用我的参数模板起步MMC_Config: SM_Capacitance: 15e-3 Arm_Inductor: 5mH DC_Link_Voltage: 5000 Carrier_Freq: 500参考文献方面Marquardt老爷子那篇《An innovative modular multilevel converter...》必读CPS-PWM的相位分配技巧参考了Lesnicar的专利说明。环流抑制算法改自《IEEE Trans. Power Electron》2016年那篇二倍频抑制方案。代码仓库里附带了Simulink模型文件注意打开前先运行InitParameters.m。遇到波形震荡别慌八成是环流抑制器参数没调好把Ki值从2.5开始往上微调准没错。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2491481.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!