news 2026/10/9 2:55:26

基于频率扫描的两端 HVDC 换流器黑盒建模及其小信号稳定性评估(Matlab、PSCAD实现)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于频率扫描的两端 HVDC 换流器黑盒建模及其小信号稳定性评估(Matlab、PSCAD实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

🎁完整资源、论文复现、期刊合作、论文辅导及科研仿真定制事宜点击:

👉👉👉本文完整资源下载

⛳️座右铭:行百里者,半于九十。

⛳️赠与读者

👨‍💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能解答你胸中升起的一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“躺平”上的尘埃吧。

或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎

💥第一部分——内容介绍

摘要

随着新能源发电、高压直流输电和电力电子装备的大规模接入,现代电力系统正呈现出显著的“电力电子化”特征。电压源换流器具有控制灵活、响应迅速、可连接异步电网等优点,但其高带宽闭环控制会与电网阻抗、线路分布参数以及其他换流器控制环发生高频交互,进而引发谐波谐振、次同步振荡和高频振荡等问题。传统白盒建模虽然物理意义明确,但需要掌握变换器内部全部参数,且状态维数高、仿真耗时长,难以适用于厂商保密或大规模互联场景。

本文以两端 HVDC 系统为研究对象,首先在 PSCAD 中建立基于平均模型的 VSC 与 HVDC 传输线模型,并设计 dq 坐标系下的有功/无功功率双环控制。随后构造 AC 与 DC 频率扫描模块,通过注入小信号正弦电压扰动,测量稳态电流响应,利用快速傅里叶变换提取端口导纳。进一步地,在 MATLAB 中建立白盒状态空间模型,作为黑盒模型的对照,并采用广义奈奎斯特判据与特征值分解分析系统稳定性与振荡模式。结果表明,黑盒建模能够在未知换流器内部结构的情况下,有效刻画其高频端口动态,为复杂电力电子系统的稳定性评估提供了一种高效、可扩展的分析路径。

关键词:高频建模,电力电子变换器,黑盒建模,频率扫描,dq 坐标系,导纳矩阵,广义奈奎斯特判据,参与因子,HVDC


1. 引言

1.1 研究背景

电力电子变换器已成为现代能源系统的核心装备,广泛应用于可再生能源并网、高压直流输电、电动汽车、高速列车和工业自动化等领域。随着碳化硅和氮化镓等宽禁带器件的成熟,变换器开关频率不断提高,系统带宽随之扩展,其动态行为不再局限于工频附近,而是延伸到数百赫兹甚至数千赫兹的高频段。

在高频段,变换器端口特性不再仅由主电路决定,还受到以下因素影响:开关器件的寄生电容与寄生电感、死区效应与开关延迟、采样保持与数字控制延迟、锁相环动态、电流环与电压环带宽、滤波器谐振,以及多换流器之间的阻抗耦合。这些因素使得高频建模变得复杂。若采用传统白盒方法,需要对每个元件建立详细模型,并形成高阶状态空间方程。对于两端 HVDC 系统,单个换流站可能包含十余个状态,当系统扩展到多端 HVDC 或含多个新能源场站时,状态维数迅速增加,计算负担显著上升。

1.2 黑盒建模的意义

黑盒建模不依赖系统内部结构,只根据端口输入-输出关系建立等效模型。对于高频电力电子系统,最自然的黑盒描述是导纳矩阵,其中每个元素表示某一 dq 轴电压扰动引起的 dq 轴电流响应。通过频率扫描,可以在不同频率下测量这些导纳,从而获得系统的小信号频域特性。

黑盒建模的优势包括:无需内部参数,适用于厂商保密或黑箱设备;计算效率高,只需端口测量,不需高阶状态空间;便于互联分析,可通过节点-边子系统分解研究大规模系统;适合高频段,频率扫描天然覆盖宽频带。

1.3 本文工作

本文围绕两端 HVDC 系统,完成以下工作:在 PSCAD 中建立两端 HVDC 平均模型;设计 dq 坐标系下的电流模式双环控制;构造 AC/DC 扫描模块,注入小信号扰动;用 Python 自动化频率扫描,提取导纳;用 MATLAB 建立白盒状态空间模型;用广义奈奎斯特判据和特征值分解分析稳定性与振荡模式。


2. 两端 HVDC 系统建模

2.1 系统结构

两端 HVDC 系统由两个 VSC 通过直流传输线连接。送端 VSC 作为整流器,将交流电转换为直流电;受端 VSC 作为逆变器,将直流电再转换为交流电。其结构包括送端交流电网、受端交流电网、两个 VSC、HVDC 传输线、交流滤波器以及电网等效阻抗。为简化分析,本文设两端频率均为五十赫兹,但 HVDC 本身可连接不同频率的异步电网,这正是其重要优势之一。

2.2 开关模型

VSC 采用六开关桥,每相桥臂由上下两个 IGBT 与反并联二极管组成。开关模型分为两类:精确模拟开关时刻的模型可分析开关损耗与电磁干扰,但需要极小仿真步长;平均模型在一个开关周期内取平均,忽略开关纹波,适合控制设计与稳定性分析。由于本文关注高频小信号动态和频率扫描,采用平均模型。

平均模型下,交流侧动态由滤波电感电流、输出电流、换流器控制电压、并网点电压和电网电压之间的关系描述。直流侧则由等效电容、直流电压、直流功率和直流线路电流之间的关系描述。对于两端 HVDC,直流侧动态可简化为两个方程,分别对应整流侧和逆变侧。

2.3 直流侧动态

直流侧电容动态描述了直流电压与直流功率、直流线路电流之间的关系。该方程在两端 HVDC 中可写为两个独立方程,分别描述整流侧和逆变侧的直流电压变化。直流电压的稳定对于功率传输至关重要,因此闭环控制中通常包含直流电压外环。


3. dq 坐标系与闭环控制

3.1 坐标变换

三相对称量在 abc 坐标系下为时变量。通过 Clarke 变换得到两相静止坐标系,再通过 Park 变换得到 dq0 旋转坐标系。在 dq 坐标系下,基波正弦量变为直流量,便于 PI 控制器实现无静差跟踪。通常令 d 轴与电网电压矢量对齐,则有功分量对应 d 轴,无功分量对应 q 轴。

dq 坐标系的引入不仅简化了控制器设计,还使得三相系统的功率控制可以解耦为两个独立的直流量控制问题。这种解耦特性是电流模式控制能够实现快速功率跟踪的基础。

3.2 电流模式控制与电压模式控制

电压模式控制通过调节 VSC 交流侧电压相对并网点电压的相位和幅值来控制功率。其优点是功率近似解耦,但缺点是没有直接控制线路电流,无法限制过流。

电流模式控制通过调节 VSC 线路电流相对并网点电压的相位和幅值来控制功率。其内环为电流环,外环为功率环。由于电流环带宽高,系统动态响应快,且具备过流保护能力,因此本文采用电流模式控制。

3.3 双环控制结构

外环输入为有功功率参考和无功功率参考,反馈为实际功率,控制器为 PI,输出为内环电流参考。内环输入为电流参考与实际电流,控制器为 PI,输出为换流器控制电压,再经 PWM 生成开关信号。

外环响应较慢,因为功率变化相对平缓;内环响应较快,因为电流需要快速跟踪参考值。这种双环结构兼顾了功率跟踪精度和电流动态性能。

3.4 锁相环

锁相环用于同步 VSC 输出电压与电网电压,其结构包括鉴相器、环路滤波器和压控振荡器。鉴相器检测相位差,环路滤波器滤除高频噪声,压控振荡器生成同步相位角。锁相环动态会影响 dq 坐标系下的小信号导纳,尤其在高频段。若锁相环带宽过高,可能引入额外相位滞后,影响系统稳定性;若带宽过低,则同步速度慢,动态响应差。


4. 白盒建模与状态空间模型

白盒建模从电路方程出发,建立状态空间模型。状态向量包含滤波器输出电流和电压、电感电流、控制器积分误差、锁相环相位和直流电压。输入向量包含有功功率参考和直流电压参考。

白盒模型的优点是物理意义明确、精度高;缺点是状态维数高、计算量大、需要内部参数。对于单个换流站,状态数约为十余个,其中包含控制器状态、交流系统动态状态和滤波器动态状态。当系统规模扩大时,状态维数迅速增加,因此需要更高效的黑盒建模方法。

白盒模型在本文中主要作为对照,用于验证黑盒模型的准确性,并帮助理解系统稳定性问题的根源。通过白盒模型,可以分析各状态变量对振荡模式的参与程度,从而定位关键元件。


5. 黑盒建模与频率扫描

5.1 黑盒思想

黑盒建模将变换器视为端口网络,只关心端口电压扰动与电流响应之间的关系。对交流侧,在 dq 坐标系下,导纳矩阵包含四个元素,分别描述 d 轴和 q 轴电压扰动引起的 d 轴和 q 轴电流响应。对直流侧,导纳为标量或二阶矩阵。

黑盒建模的核心假设是系统在稳态工作点附近的小信号线性化。因此,注入的扰动幅值必须足够小,以保证系统仍处于线性区域。同时,扰动频率需要覆盖感兴趣的频段,以捕获所有可能的谐振模式。

5.2 频率扫描流程

频率扫描步骤如下:首先在 PSCAD 中搭建两端 HVDC 系统;然后在交流侧和直流侧分别放置扫描模块;接着用 Python 自动调用 PSCAD;对每个频率注入小信号正弦电压扰动;等待系统进入稳态;用快速傅里叶变换提取该频率下的电流响应幅值和相位;计算导纳;扫描频率范围通常为几赫兹到一千赫兹,共数百个频点;最后将导纳幅值和相位绘制成 Bode 图。

5.3 扫描结果分析

直流地侧导纳呈现明显谐振峰,说明在某一频率附近存在弱阻尼谐振。交流地侧导纳在 dq 耦合下呈现四个通道不同特性,其中 d 轴和 q 轴主导,耦合项反映交叠影响。换流器侧导纳因稳态快照时刻不完美而出现一定偏差,但整体趋势与地侧一致。

频率扫描的精度受多种因素影响:扰动幅值过大会引入非线性,过小则信噪比不足;稳态等待时间过短会导致响应未完全稳定,过长则增加仿真时间;频率分辨率过低会遗漏窄带谐振,过高则增加计算量。因此,需要在精度和效率之间权衡。


6. 稳定性分析:广义奈奎斯特与特征值分解

6.1 节点-边子系统分解

将现代电力系统划分为节点子系统和边子系统。节点子系统包含电网、新能源、换流器等,内部未知,用黑盒导纳表示;边子系统包含输电线路、变压器等,参数已知,用导纳表示。构造两个传递函数,分别用于广义奈奎斯特判据和特征值分解。

节点-边分解的思想是将复杂系统拆分为已知部分和未知部分,从而降低分析难度。已知部分可以用详细模型描述,未知部分则用黑盒导纳描述。两者结合后,可以分析整个系统的稳定性。

6.2 振荡模式识别

对传递函数做特征值分解,每个特征值对应一个振荡模式。若某个频率下特征值幅值出现尖峰,说明该频率存在弱阻尼振荡模式。通过分析特征值随频率的变化,可以识别系统的谐振频率和阻尼特性。

振荡模式识别对于定位系统薄弱环节至关重要。若某一频率下特征值幅值远高于其他频率,说明该频率附近存在接近临界稳定的模式,需要重点关注。

6.3 参与因子

参与因子定义为特征值对导纳元素的偏导数,也可写为左右特征向量的乘积。参与因子越大,说明第某个状态变量对某个振荡模式影响越大。若某元件参与因子高,说明该元件是振荡主要参与者;若多个元件参与因子都高,则说明是全局振荡。

参与因子分析可以帮助工程师定位振荡源,从而采取针对性措施,如调整控制器参数、增加阻尼滤波器或改变电网结构。


7. 仿真结果与讨论

7.1 有功/无功功率控制

仿真结果显示,有功功率实际值能够跟踪参考值,无功功率实际值也能跟踪参考值,响应具有一阶系统特征,符合 PI 控制,初始暂态后误差趋于零。这表明双环控制结构能够有效实现功率跟踪。

7.2 白盒模型 Nyquist 与振荡模式

白盒模型 Nyquist 图中,特征值轨迹围绕临界点的情况决定稳定性。振荡模式图中,某些频率出现尖峰,对应弱阻尼模式。通过白盒模型,可以验证黑盒模型的准确性,并深入理解系统稳定性问题的根源。

7.3 黑盒 Bode 图

直流地侧导纳呈现明显谐振峰,交流地侧导纳在 dq 耦合下呈现四个通道不同特性。换流器侧导纳因稳态快照问题有偏差,但整体趋势与地侧一致。黑盒 Bode 图能够有效反映系统高频动态,为稳定性分析提供依据。

7.4 讨论

黑盒建模的优势在于:不需要内部参数;适合高频段;便于互联系统分析;可与广义奈奎斯特判据和参与因子结合。其局限性在于:需要精确的频率扫描;稳态快照时刻影响精度;非线性强时小信号假设可能失效;需要后处理拟合传递函数。

因此,黑盒建模并非万能,而是在特定场景下的一种高效替代方案。对于内部参数已知的系统,白盒建模仍然是最准确的方法;对于内部参数未知或系统规模庞大的场景,黑盒建模则更具优势。


8. 结论与未来工作

8.1 结论

本文以两端 HVDC 系统为例,完成了从白盒建模到黑盒建模的完整分析流程。主要结论如下:dq 坐标系下的电流模式双环控制能够实现有功/无功功率的快速跟踪;频率扫描可以提取交流/直流侧导纳,形成黑盒模型;黑盒模型能够反映系统高频谐振特性;广义奈奎斯特判据和特征值分解可用于稳定性评估与振荡模式识别;黑盒建模在未知内部参数场景下具有显著优势。

8.2 未来工作

未来可从以下方向扩展:将黑盒建模扩展到多端 HVDC 和新能源场站;结合广义奈奎斯特判据和参与因子实现自动稳定性评估;研究非线性更强时的小信号建模;开发更高效的频率扫描与传递函数拟合算法;将黑盒模型用于滤波器优化和控制器设计。

此外,还可以探索黑盒建模在电气能源枢纽、微电网和电动汽车充电网络中的应用,并结合人工智能方法提高建模效率和精度。


9. 总结

本文围绕“电力电子变换器高频黑盒建模”这一主题,以两端 HVDC 系统为载体,系统梳理了从 PSCAD 时域仿真、dq 闭环控制、频率扫描、导纳提取,到 MATLAB 白盒状态空间建模、广义奈奎斯特判据和特征值分解的完整技术路线。黑盒建模的核心价值在于:在不依赖变换器内部参数的前提下,通过端口频率响应刻画其高频动态,为大规模电力电子系统的稳定性分析、滤波器优化和控制器设计提供了一种高效、可扩展的工程方法。

随着电力系统电力电子化程度不断提高,黑盒建模将发挥越来越重要的作用。它不仅是学术研究的有力工具,也是工程实践中解决实际问题的有效手段。未来,黑盒建模有望与人工智能、数字孪生和实时仿真等技术深度融合,为新型电力系统的安全稳定运行提供更强有力的支撑。

📚第二部分——运行结果

部分代码:

% Nyquist plot
figure('Name','Nyquist')
plot(real(lambdas(2,:)),imag(lambdas(2,:)),'m','LineWidth',2);hold on
plot(real(lambdas(1,:)),imag(lambdas(1,:)),'b','LineWidth',2)
plot(-1,0,'kx','MarkerSize',10,'LineWidth',1);grid on
plot(cos(-pi:1e-3:pi),sin(-pi:1e-3:pi),'k--','Linewidth',1)
plot(real(lambdas(2,:)),-imag(lambdas(2,:)),'m','LineWidth',2);hold on
plot(real(lambdas(1,:)),-imag(lambdas(1,:)),'b','LineWidth',2)
sgtitle(strcat("Nyquist Plot: VSC + grid equivalent with $|Z_g| =$ ",num2str(sqrt(r_g^2+(l_g-1/c_g)^2),'%.2f')," pu"))
xlabel("$\Re\{\lambda\}$]");ylabel("$\Im\{\lambda\}$")
legend('$\lambda_\mathrm{1}$','$\lambda_\mathrm{2}$','$(-1,0j)$','interpreter','latex','NumColumns',1)

axes('position',[.50 .2 .35 .3]);box on
plot(real(lambdas(2,:)),imag(lambdas(2,:)),'m');hold on;grid on
plot(real(lambdas(2,:)),-imag(lambdas(2,:)),'m')
plot(real(lambdas(1,:)),imag(lambdas(1,:)),'b')
plot(real(lambdas(1,:)),-imag(lambdas(1,:)),'b')
plot(-1,0,'kx')
plot(cos(-pi:1e-3:pi),sin(-pi:1e-3:pi),'k--','Linewidth',1)
xlim([-2 2]);ylim([-2 2]);xticks(-2:1:2);yticks(-2:1:2)
title("Detail around the unit circle")
set(gcf,'position',[50,50,800,720])

%% Oscillation mode identification via EVD
% Very low damped modes appear as high-magnitude eigenvalue peaks
evd = zeros(2,points); % Array of closed-loop eigenvalues over the frequency
for k = 1:points
Ek = eig(inv(Z(:,:,k)) + Y(:,:,k));
if k > 1
% It compares the current vector of eigenvalues to the vector of
% eigenvalues at the previous frequency. If the flipped current one
% is closer to the prior than the unflipped, use the flipped.
% Otherwise, use the unflipped. A more general approach is to use
% eigenshuffle()
if norm(Ek-evd(:,k-1), 'Inf') > norm(flip(Ek)-evd(:,k-1), 'Inf')
Ek = flip(Ek);
end
end
evd(:,k) = Ek;
end
toc

% Plot the EVD
figure('Name','EVD')
hold on; box on; grid on
title('Oscillation mode identification','interpreter','latex');
set(gca,'xScale', 'log');set(gca,'yScale', 'log');
xlabel("Frequency [Hz]");ylabel("$$|\lambda_i(\mathbf{Z}_{Closed-loop})|$$ [pu]")
set(gcf,'Units','centimeters','position',[15,5,25,10])
plot(freq,1./abs(evd(1,:)),"b-","LineWidth",2);hold on
plot(freq,1./abs(evd(2,:)),"r-","LineWidth",2);hold on
xlim([min(freq),max(freq)]);
legend('$|\lambda_\mathrm{1}|$','$|\lambda_\mathrm{2}|$','interpreter','latex','NumColumns',1)
grid off; grid

🎉第三部分——参考文献

文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。(文章内容仅供参考,具体效果以运行结果为准)

​​​​​​🌈第四部分——本文完整资源下载

资料获取,更多粉丝福利,MATLAB|Simulink|Python|数据|文档等完整资源获取

本文完整资源下载

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

更适合科研学术党体质的神仙论文写作 SKILL 来了!

各位同仁好,我是七哥。一个在高校里从事人工智能 相关领域研究,钻研用大模型AI实操的学术人。可以和七哥交流学术写作或Gemini、GPT、Claude 等大模型 学术实操相关问题,多多交流,相互成就,共同进步。 科研过程中,很少有人能一路顺风。很多令人头疼的情况几乎每位研究…

作者头像 李华
网站建设 2026/10/9 2:53:11

进程同步与互斥:竞态条件、锁与信号量实战

1. 先从一道“修不好”的Bug说起:竞态的真实模样做服务端开发这些年,我最怕的不是业务逻辑复杂,而是遇到那种“偶尔出错、一上线就出问题、本地怎么都复现不了”的并发Bug。这类Bug十有八九都出在进程同步与互斥没有做好。说得直白一点&#…

作者头像 李华
网站建设 2026/10/9 2:52:48

Golang 基础01

Weekday:以int为底层类型,眼熟【自定义类型 + iota】 的枚举写法type 关键字,用于定义自定义类型或给已有类型取别名type Weekday int自定义类型,这里需注意:Weekday ≠ int 虽然存储的数据类型相同&#x…

作者头像 李华
网站建设 2026/10/9 2:52:25

别让浮板、背漂、鼻夹变成“永久拐杖”

浮板、背漂、鼻夹是学游泳的常见辅助工具,合理使用能帮助新手克服怕水、分解动作。但如果长期离不开,就可能从“帮手”变成“拐杖”,影响真正的水感和自救能力。是否使用、何时撤除,最好听从专业教练安排。一、过度依赖的常见表现…

作者头像 李华