news 2026/9/30 17:34:27

Matlab Simulink下自定义单相MMC模型的最近电平逼近调制实现

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Matlab Simulink下自定义单相MMC模型的最近电平逼近调制实现

matlab simulink 在自带系统的单相MMC模型上实现了最近电平逼近调制,模型和函数是自己改的

直接打开Simulink自带的MMC案例时,看到系统默认用的载波移相调制,寻思着把调制策略换成最近电平逼近(NLC)。从Library Browser里拽出来几个Matlab Function模块就开始魔改,结果发现原模型的子模块电容电压平衡逻辑和NLC压根不兼容。

先把原模型的调制波生成部分给扬了,自己搭了个实时计算电平数的函数。关键是要根据当前时刻的调制比和电容总电压动态调整输出电平,这里有个坑——Simulink的function块里不能用persistent变量存历史状态,只能靠延时模块硬凑:

function n = NLC_Calc(u_ref, V_cap_sum) % 计算当前需要投入的子模块数量 N = 40; % 总子模块数 V_step = V_cap_sum / N; n = round(u_ref / V_step); n = max(min(n, N/2), -N/2); % 限制在±20之间 end

这破函数看起来简单,实际调试时发现当调制波突变时会出现电平数跳变。后来在函数外面套了个Rate Limiter模块,把电平变化率限制在每周期最多增减2个,波形立马顺眼多了。

matlab simulink 在自带系统的单相MMC模型上实现了最近电平逼近调制,模型和函数是自己改的

子模块投切逻辑才是重头戏。原模型的排序法在NLC里完全失效,得根据方向信号动态调整排序顺序。折腾出个带权重因子的冒泡排序,把即将过压的电容往前排:

function [gate] = CapacitorBalance(capVoltages, direction) weights = abs(capVoltages - 5000) .* (1 + 0.1*direction); % 5000是目标电压 [~, index] = sort(weights, 'descend'); gate = zeros(size(capVoltages)); gate(index(1:20)) = 1; % 选前20个投入 end

运行仿真时发现电容电压波动比原模型大得多,把排序算法的执行周期从50us改成20us后,电压波动从±8%降到了±3%。不过CPU占用率直接飙到90%,风扇开始鬼畜旋转。

最后在示波器上看输出波形,阶梯状特征明显多了。FFT分析显示13次谐波突然拔高,估计是固定步长仿真导致的副作用。切到变步长ode23t算法后,THD从7.2%降到5.8%,但仿真时间翻了3倍。这性能损耗和效果提升之间的平衡,够喝一壶的。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/30 16:17:51

OpenMV识别物体基础:H7开发环境搭建教程

以下是对您提供的博文内容进行 深度润色与结构重构后的技术文章 。本次优化严格遵循您的全部要求: ✅ 彻底去除AI痕迹,语言自然、专业、有“人味”,像一位深耕嵌入式视觉多年的工程师在分享实战心得; ✅ 打破模板化标题体系&a…

作者头像 李华
网站建设 2026/9/30 16:17:52

用Fun-ASR做多媒体检索,音频内容秒变可搜索文本

用Fun-ASR做多媒体检索,音频内容秒变可搜索文本 你有没有过这样的经历:电脑里存着上百段会议录音、培训视频、客户访谈和内部分享,想找其中某句“关于Q3预算调整的讨论”,却只能靠模糊记忆反复快进播放?又或者&#x…

作者头像 李华
网站建设 2026/9/30 16:01:37

冲床送料机程序:伺服电机与PLC多段数据调节及存储程序

冲床送料机程序,送料机程序,伺服送料机程序,伺服电机,程序,三菱,台达,中达一体机,送料机程序,PLC多段数据不同,可任意调节A段B段c段长度,并定长切…

作者头像 李华
网站建设 2026/9/30 16:18:41

零样本音频分类神器:CLAP模型保姆级使用教程

零样本音频分类神器:CLAP模型保姆级使用教程 1. 为什么你需要这个工具——从听不清到听懂一切 你有没有遇到过这些场景: 家里老人突然听到奇怪的嗡鸣声,分不清是电器故障还是燃气泄漏工厂巡检员在嘈杂车间里,无法快速判断某台设…

作者头像 李华
网站建设 2026/9/29 9:06:35

ChatGLM-6B应用场景:教育领域作业辅导助手实现

ChatGLM-6B应用场景:教育领域作业辅导助手实现 1. 为什么教育场景特别需要一个“会教”的AI助手? 你有没有遇到过这样的情况:孩子拿着一道数学题发呆,家长翻遍课本也讲不清楚;中学生深夜刷题卡在物理受力分析&#x…

作者头像 李华
网站建设 2026/9/29 9:06:37

device参数怎么选?YOLO11多设备运行指南

device参数怎么选?YOLO11多设备运行指南 在实际部署YOLO11模型时,你是否遇到过这样的问题: 代码在笔记本上跑得飞快,一到服务器就卡死?想用GPU加速却提示CUDA out of memory?换了台机器,同样的…

作者头像 李华