news 2026/4/3 6:09:14

MMC-HVDC 直流输电系统仿真探索:性能与控制的融合之旅

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
MMC-HVDC 直流输电系统仿真探索:性能与控制的融合之旅

MMC模块化多电平换流器,MMC-HVDC直流输电系统,单个桥臂N=10个子模块,采用载波移相调制 simulink仿真模型。 为了测试控制性能良好,在1s时,额定有功功率10e6增加到15e6。 子模块电压2000V,直流电压20KV。 定有功功率控制+定无功功率控制+二倍频环流抑制控制(PI或PR)+子模块电容电压均衡控制 总体效果很好。

在电力传输领域,MMC(模块化多电平换流器)与MMC-HVDC(高压直流输电)系统可谓是备受瞩目的明星技术。今天就来聊聊基于MMC-HVDC系统的一些有趣的仿真实践。

我们搭建的这个MMC-HVDC直流输电系统,单个桥臂的子模块数量设定为 \( N = 10 \) ,并采用了载波移相调制方式。这种调制方式在MMC中能有效减少输出电压的谐波含量,让波形更加平滑。

Simulink仿真模型搭建

在Simulink中搭建模型时,关键就在于对各个子模块的精准建模与连接。首先是子模块部分,其电压设定为 \( 2000V \),而整个直流电压为 \( 20KV \) 。以简单的子模块建模为例(假设使用MATLAB语言进行描述,实际Simulink中通过模块搭建):

% 子模块参数定义 submodule_voltage = 2000;

这行代码就定义了子模块的电压值,在Simulink中对应的是设置子模块电压参数的操作。

控制策略实现

为了测试系统的控制性能,我们采用了一系列控制策略:定有功功率控制、定无功功率控制、二倍频环流抑制控制(采用PI或PR控制器)以及子模块电容电压均衡控制。

  1. 定有功功率控制

定有功功率控制的目的在于让系统按照我们期望的功率值输出。假设使用PI控制器,其基本原理就是通过对有功功率参考值 \( P{ref} \) 和实际测量的有功功率 \( P{measured} \) 的差值进行比例积分运算来调节控制变量。代码示例如下:

% 定义PI参数 Kp_p = 0.5; Ki_p = 0.1; % 初始化积分项 integral_p = 0; % 计算PI输出 error_p = P_ref - P_measured; integral_p = integral_p + error_p * dt; control_signal_p = Kp_p * error_p + Ki_p * integral_p;

这里, \( Kpp \) 和 \( Kip \) 分别是比例和积分系数,根据系统特性进行调整。通过不断更新积分项和比例项的计算,得到控制信号 \( controlsignalp \) 来调节有功功率。

  1. 定无功功率控制

与定有功功率控制类似,定无功功率控制也是为了维持无功功率在设定值。

% 定义PI参数 Kp_q = 0.4; Ki_q = 0.08; % 初始化积分项 integral_q = 0; % 计算PI输出 error_q = Q_ref - Q_measured; integral_q = integral_q + error_q * dt; control_signal_q = Kp_q * error_q + Ki_q * integral_q;

这里同样利用PI控制器,对无功功率参考值 \( Q{ref} \) 和实际测量的无功功率 \( Q{measured} \) 的差值进行运算,得到控制信号 \( controlsignalq \) 。

  1. 二倍频环流抑制控制

采用PI或PR控制器来抑制二倍频环流。以PR控制器为例,PR控制器对特定频率的信号有很好的抑制作用。在代码实现上,相较于PI控制器,会增加对特定频率的补偿环节。

% 定义PR参数 Kp_pr = 0.6; Ki_pr = 0.1; omega = 2 * pi * 100; % 二倍频,50Hz系统下为100Hz % 初始化积分项 integral_pr = 0; % 计算PR输出 error_pr = circulating_current_error; integral_pr = integral_pr + error_pr * dt; control_signal_pr = Kp_pr * error_pr + Ki_pr / omega * sin(omega * t) * error_pr;

这里通过对环流误差信号进行处理,利用PR控制器的特性来抑制二倍频环流。

  1. 子模块电容电压均衡控制

子模块电容电压均衡控制确保每个子模块的电容电压保持在合理范围内。这通常通过比较各个子模块电容电压,并根据差值来调整子模块的投入与切除。虽然代码实现相对复杂,但原理简单来说就是:

% 假设已经获取各个子模块电容电压值voltages avg_voltage = mean(voltages); for i = 1:length(voltages) if voltages(i) > avg_voltage % 采取措施降低该子模块电容电压,比如减少充电时间 else % 采取措施升高该子模块电容电压,比如增加充电时间 end end

性能测试

为了测试控制性能良好,在仿真时间到 \( 1s \) 时,将额定有功功率从 \( 10e6 \) 增加到 \( 15e6 \) 。从仿真结果来看,系统在这种工况变化下,通过上述一系列控制策略的协同工作,总体效果很好。有功功率能快速跟踪参考值的变化,无功功率保持稳定,二倍频环流得到有效抑制,子模块电容电压也维持均衡。

这次基于MMC-HVDC系统的Simulink仿真探索,让我们看到了通过精心设计控制策略,能够让系统在复杂工况下保持良好的性能表现。无论是电力传输的稳定性还是电能质量,都能得到有效保障。未来,随着技术的不断发展,相信MMC-HVDC系统在电力领域会发挥更大的作用。

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

ORPO直接偏好优化:简化流程的端到端训练新模式

ORPO直接偏好优化:简化流程的端到端训练新模式 在大模型落地应用日益深入的今天,如何让一个参数规模动辄数十亿、上百亿的语言模型真正“听懂人话”,生成符合人类价值观和使用习惯的内容,已经成为决定其成败的关键。传统上&#x…

作者头像 李华
网站建设 2026/4/2 1:59:51

仅限内部流传的昇腾算子编码规范,这5个关键点决定项目成败

第一章:昇腾算子开发的核心理念与架构认知昇腾(Ascend)AI处理器由华为推出,专为人工智能计算设计,具备高性能、低功耗的特点。其算子开发体系以“贴近硬件、高效调度、灵活扩展”为核心理念,强调开发者在实…

作者头像 李华
网站建设 2026/3/21 8:24:03

自定义数据集导入教程:让你的领域数据发挥价值

自定义数据集导入实战:让领域数据真正驱动大模型进化 在金融风控会议中,分析师面对堆积如山的客户对话语音记录发愁;医院信息科主任看着逐年增长的电子病历不知如何挖掘价值;智能制造工厂的日志系统每秒产生上万条设备运行数据………

作者头像 李华
网站建设 2026/3/31 5:48:26

从C代码到RISC-V机器指令:自动化生成流程的底层原理(专家级剖析)

第一章:从C代码到RISC-V机器指令的演进全景现代计算机系统中,高级语言编写的程序最终必须转化为处理器可执行的机器指令。以RISC-V架构为例,这一转化过程涵盖了预处理、编译、汇编和链接等多个阶段,每一步都对代码的抽象层级进行降…

作者头像 李华
网站建设 2026/4/2 9:04:22

开源中国收录提交:进入国内主流开发者门户

ms-swift 被收录至开源中国:国产大模型开发迎来“全栈式”新选择 在AI技术从实验室走向产业落地的今天,一个现实问题摆在开发者面前:如何快速、低成本地完成大模型的训练、微调、评测与部署?传统的做法往往是“拼凑式”搭建工具链…

作者头像 李华
网站建设 2026/3/27 17:26:22

超越MyBatisPlus的灵活性?看ms-swift如何插件化扩展大模型训练组件

超越MyBatisPlus的灵活性?看ms-swift如何插件化扩展大模型训练组件 在大模型研发日益“工业化”的今天,一个现实摆在所有开发者面前:我们不再只是跑通一个实验,而是要持续迭代、快速验证、高效部署上百个模型变体。传统的训练脚本…

作者头像 李华