电网静态电压稳定性评估方法【IEEE33节点】(Matlab代码实现)

👨‍🎓个人主页:研学社的博客     

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

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

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

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现


💥1 概述

配电网的电压稳定指标总体上可分为基于线路潮流传输的指标和基于节点电压稳定极限求解的各

类裕度指标 一般来说 配电网包含根节点 主干线路、 侧翼线路 末端线路 相对于传输线路而言 其线路电抗电阻比大大减小 线路的有功功率损耗较高。 因此 传统的电压稳定指标不能有效地评估配电网的电压稳定性。 对此 本文提出了一种在系统某一运行状态下衡量网络中所有负荷节点电压稳定程度的指标。 对于一个 包含 个节 点 的 配 电网, 任意一条线路可以表示为如图 所示的简单模 型。 图中 节点 为线路送端 节点 为 线 路 受 端 ,节点i 的电压分别为 δ δ 节点 j送出的潮流为Pi +jQi 线路阻抗为Ri +jXi。

​ 

节点电压稳定指标的值越小 则其电压稳定性越好, 反之则稳定性越差 VSI =1.0 该线路处于临界运行状态, 相应的功率进一步增加 将导致该线路失去稳定的潮流平衡点, 潮流方程无解 受端功率需求无法保证, 系统发生电压崩溃 在任意系统运行状态下, 计算所有节点的电压稳定指标 其值最大的节点被称为系统的薄弱节点。 当全网负荷增加导致系统发生电压崩溃时, 一定是从最薄弱节点开始的。 对于系统运行人员而言 可 根 据 VSI 与 临 界值1.0 间的差值判断节点和系统的电压稳定裕度  

📚2 运行结果

​ 

 

​ 

function mpc = case33bw
%CASE33BW  Power flow data for 33 bus distribution system from Baran & Wu
%   Please see CASEFORMAT for details on the case file format.
%
%   Data from ...
%       M. E. Baran and F. F. Wu, "Network reconfiguration in distribution
%       systems for loss reduction and load balancing," in IEEE Transactions
%       on Power Delivery, vol. 4, no. 2, pp. 1401-1407, Apr 1989.
%       doi: 10.1109/61.25627
%       URL: https://doi.org/10.1109/61.25627

%% MATPOWER Case Format : Version 2
mpc.version = '2';

%%-----  Power Flow Data  -----%%
%% system MVA base
mpc.baseMVA = 10;

%% bus data
%	bus_i	type	Pd	Qd	Gs	Bs	area	Vm	Va	baseKV	zone	Vmax	Vmin
mpc.bus = [ %% (Pd and Qd are specified in kW & kVAr here, converted to MW & MVAr below)
	1	3	0	0	0	0	1	1	0	12.66	1	1	1;
	2	1	100	60	0	0	1	1	0	12.66	1	1.1	0.9;
	3	1	90	40	0	0	1	1	0	12.66	1	1.1	0.9;
	4	1	120	80	0	0	1	1	0	12.66	1	1.1	0.9;
	5	1	60	30	0	0	1	1	0	12.66	1	1.1	0.9;
	6	1	60	20	0	0	1	1	0	12.66	1	1.1	0.9;
	7	1	200	100	0	0	1	1	0	12.66	1	1.1	0.9;
	8	1	200	100	0	0	1	1	0	12.66	1	1.1	0.9;
	9	1	60	20	0	0	1	1	0	12.66	1	1.1	0.9;
	10	1	60	20	0	0	1	1	0	12.66	1	1.1	0.9;
	11	1	45	30	0	0	1	1	0	12.66	1	1.1	0.9;
	12	1	60	35	0	0	1	1	0	12.66	1	1.1	0.9;
	13	1	60	35	0	0	1	1	0	12.66	1	1.1	0.9;
	14	1	120	80	0	0	1	1	0	12.66	1	1.1	0.9;
	15	1	60	10	0	0	1	1	0	12.66	1	1.1	0.9;
	16	1	60	20	0	0	1	1	0	12.66	1	1.1	0.9;
	17	1	60	20	0	0	1	1	0	12.66	1	1.1	0.9;
	18	1	90	40	0	0	1	1	0	12.66	1	1.1	0.9;
	19	1	90	40	0	0	1	1	0	12.66	1	1.1	0.9;
	20	1	90	40	0	0	1	1	0	12.66	1	1.1	0.9;
	21	1	90	40	0	0	1	1	0	12.66	1	1.1	0.9;
	22	1	90	40	0	0	1	1	0	12.66	1	1.1	0.9;
	23	1	90	50	0	0	1	1	0	12.66	1	1.1	0.9;
	24	1	420	200	0	0	1	1	0	12.66	1	1.1	0.9;
	25	1	420	200	0	0	1	1	0	12.66	1	1.1	0.9;
	26	1	60	25	0	0	1	1	0	12.66	1	1.1	0.9;
	27	1	60	25	0	0	1	1	0	12.66	1	1.1	0.9;
	28	1	60	20	0	0	1	1	0	12.66	1	1.1	0.9;
	29	1	120	70	0	0	1	1	0	12.66	1	1.1	0.9;
	30	1	200	600	0	0	1	1	0	12.66	1	1.1	0.9;
	31	1	150	70	0	0	1	1	0	12.66	1	1.1	0.9;
	32	1	210	100	0	0	1	1	0	12.66	1	1.1	0.9;
	33	1	60	40	0	0	1	1	0	12.66	1	1.1	0.9;
];

%% generator data
%	bus	Pg	Qg	Qmax	Qmin	Vg	mBase	status	Pmax	Pmin	Pc1	Pc2	Qc1min	Qc1max	Qc2min	Qc2max	ramp_agc	ramp_10	ramp_30	ramp_q	apf
mpc.gen = [
	1	0	0	10	-10	1	100	1	10	0	0	0	0	0	0	0	0	0	0	0	0;
];

%% branch data
%	fbus	tbus	r	x	b	rateA	rateB	rateC	ratio	angle	status	angmin	angmax
mpc.branch = [  %% (r and x specified in ohms here, converted to p.u. below)
	1	2	0.0922	0.0470	0	0	0	0	0	0	1	-360	360;
	2	3	0.4930	0.2511	0	0	0	0	0	0	1	-360	360;
	3	4	0.3660	0.1864	0	0	0	0	0	0	1	-360	360;
	4	5	0.3811	0.1941	0	0	0	0	0	0	1	-360	360;
	5	6	0.8190	0.7070	0	0	0	0	0	0	1	-360	360;
	6	7	0.1872	0.6188	0	0	0	0	0	0	1	-360	360;
	7	8	0.7114	0.2351	0	0	0	0	0	0	1	-360	360;
	8	9	1.0300	0.7400	0	0	0	0	0	0	1	-360	360;
	9	10	1.0440	0.7400	0	0	0	0	0	0	1	-360	360;
	10	11	0.1966	0.0650	0	0	0	0	0	0	1	-360	360;
	11	12	0.3744	0.1238	0	0	0	0	0	0	1	-360	360;
	12	13	1.4680	1.1550	0	0	0	0	0	0	1	-360	360;
	13	14	0.5416	0.7129	0	0	0	0	0	0	1	-360	360;
	14	15	0.5910	0.5260	0	0	0	0	0	0	1	-360	360;
	15	16	0.7463	0.5450	0	0	0	0	0	0	1	-360	360;
	16	17	1.2890	1.7210	0	0	0	0	0	0	1	-360	360;
	17	18	0.7320	0.5740	0	0	0	0	0	0	1	-360	360;
	2	19	0.1640	0.1565	0	0	0	0	0	0	1	-360	360;
	19	20	1.5042	1.3554	0	0	0	0	0	0	1	-360	360;
	20	21	0.4095	0.4784	0	0	0	0	0	0	1	-360	360;
	21	22	0.7089	0.9373	0	0	0	0	0	0	1	-360	360;
	3	23	0.4512	0.3083	0	0	0	0	0	0	1	-360	360;
	23	24	0.8980	0.7091	0	0	0	0	0	0	1	-360	360;
	24	25	0.8960	0.7011	0	0	0	0	0	0	1	-360	360;
	6	26	0.2030	0.1034	0	0	0	0	0	0	1	-360	360;
	26	27	0.2842	0.1447	0	0	0	0	0	0	1	-360	360;
	27	28	1.0590	0.9337	0	0	0	0	0	0	1	-360	360;
	28	29	0.8042	0.7006	0	0	0	0	0	0	1	-360	360;
	29	30	0.5075	0.2585	0	0	0	0	0	0	1	-360	360;
	30	31	0.9744	0.9630	0	0	0	0	0	0	1	-360	360;
	31	32	0.3105	0.3619	0	0	0	0	0	0	1	-360	360;
	32	33	0.3410	0.5302	0	0	0	0	0	0	1	-360	360;
% 	21	8	2.0000	2.0000	0	0	0	0	0	0	0	-360	360;
% 	9	15	2.0000	2.0000	0	0	0	0	0	0	0	-360	360;
% 	12	22	2.0000	2.0000	0	0	0	0	0	0	0	-360	360;
% 	18	33	0.5000	0.5000	0	0	0	0	0	0	0	-360	360;
% 	25	29	0.5000	0.5000	0	0	0	0	0	0	0	-360	360;
];

%%-----  OPF Data  -----%%
%% generator cost data
%	1	startup	shutdown	n	x1	y1	...	xn	yn
%	2	startup	shutdown	n	c(n-1)	...	c0
mpc.gencost = [
	2	0	0	3	0	20	0;
];


%% convert branch impedances from Ohms to p.u.
[PQ, PV, REF, NONE, BUS_I, BUS_TYPE, PD, QD, GS, BS, BUS_AREA, VM, ...
    VA, BASE_KV, ZONE, VMAX, VMIN, LAM_P, LAM_Q, MU_VMAX, MU_VMIN] = idx_bus;
[F_BUS, T_BUS, BR_R, BR_X, BR_B, RATE_A, RATE_B, RATE_C, ...
    TAP, SHIFT, BR_STATUS, PF, QF, PT, QT, MU_SF, MU_ST, ...
    ANGMIN, ANGMAX, MU_ANGMIN, MU_ANGMAX] = idx_brch;
Vbase = mpc.bus(1, BASE_KV) * 1e3;      %% in Volts
Sbase = mpc.baseMVA * 1e6;              %% in VA
mpc.branch(:, [BR_R BR_X]) = mpc.branch(:, [BR_R BR_X]) / (Vbase^2 / Sbase);

%% convert loads from kW to MW
mpc.bus(:, [PD, QD]) = mpc.bus(:, [PD, QD]) / 1e3;

function mpc = case33bw
%CASE33BW  Power flow data for 33 bus distribution system from Baran & Wu
%   Please see CASEFORMAT for details on the case file format.
%
%   Data from ...
%       M. E. Baran and F. F. Wu, "Network reconfiguration in distribution
%       systems for loss reduction and load balancing," in IEEE Transactions
%       on Power Delivery, vol. 4, no. 2, pp. 1401-1407, Apr 1989.
%       doi: 10.1109/61.25627
%       URL: https://doi.org/10.1109/61.25627

%% MATPOWER Case Format : Version 2
mpc.version = '2';

%%-----  Power Flow Data  -----%%
%% system MVA base
mpc.baseMVA = 10;

%% bus data
%    bus_i    type    Pd    Qd    Gs    Bs    area    Vm    Va    baseKV    zone    Vmax    Vmin
mpc.bus = [ %% (Pd and Qd are specified in kW & kVAr here, converted to MW & MVAr below)
    1    3    0    0    0    0    1    1    0    12.66    1    1    1;
    2    1    100    60    0    0    1    1    0    12.66    1    1.1    0.9;
    3    1    90    40    0    0    1    1    0    12.66    1    1.1    0.9;
    4    1    120    80    0    0    1    1    0    12.66    1    1.1    0.9;
    5    1    60    30    0    0    1    1    0    12.66    1    1.1    0.9;
    6    1    60    20    0    0    1    1    0    12.66    1    1.1    0.9;
    7    1    200    100    0    0    1    1    0    12.66    1    1.1    0.9;
    8    1    200    100    0    0    1    1    0    12.66    1    1.1    0.9;
    9    1    60    20    0    0    1    1    0    12.66    1    1.1    0.9;
    10    1    60    20    0    0    1    1    0    12.66    1    1.1    0.9;
    11    1    45    30    0    0    1    1    0    12.66    1    1.1    0.9;
    12    1    60    35    0    0    1    1    0    12.66    1    1.1    0.9;
    13    1    60    35    0    0    1    1    0    12.66    1    1.1    0.9;
    14    1    120    80    0    0    1    1    0    12.66    1    1.1    0.9;
    15    1    60    10    0    0    1    1    0    12.66    1    1.1    0.9;
    16    1    60    20    0    0    1    1    0    12.66    1    1.1    0.9;
    17    1    60    20    0    0    1    1    0    12.66    1    1.1    0.9;
    18    1    90    40    0    0    1    1    0    12.66    1    1.1    0.9;
    19    1    90    40    0    0    1    1    0    12.66    1    1.1    0.9;
    20    1    90    40    0    0    1    1    0    12.66    1    1.1    0.9;
    21    1    90    40    0    0    1    1    0    12.66    1    1.1    0.9;
    22    1    90    40    0    0    1    1    0    12.66    1    1.1    0.9;
    23    1    90    50    0    0    1    1    0    12.66    1    1.1    0.9;
    24    1    420    200    0    0    1    1    0    12.66    1    1.1    0.9;
    25    1    420    200    0    0    1    1    0    12.66    1    1.1    0.9;
    26    1    60    25    0    0    1    1    0    12.66    1    1.1    0.9;
    27    1    60    25    0    0    1    1    0    12.66    1    1.1    0.9;
    28    1    60    20    0    0    1    1    0    12.66    1    1.1    0.9;
    29    1    120    70    0    0    1    1    0    12.66    1    1.1    0.9;
    30    1    200    600    0    0    1    1    0    12.66    1    1.1    0.9;
    31    1    150    70    0    0    1    1    0    12.66    1    1.1    0.9;
    32    1    210    100    0    0    1    1    0    12.66    1    1.1    0.9;
    33    1    60    40    0    0    1    1    0    12.66    1    1.1    0.9;
];

%% generator data
%    bus    Pg    Qg    Qmax    Qmin    Vg    mBase    status    Pmax    Pmin    Pc1    Pc2    Qc1min    Qc1max    Qc2min    Qc2max    ramp_agc    ramp_10    ramp_30    ramp_q    apf
mpc.gen = [
    1    0    0    10    -10    1    100    1    10    0    0    0    0    0    0    0    0    0    0    0    0;
];

%% branch data
%    fbus    tbus    r    x    b    rateA    rateB    rateC    ratio    angle    status    angmin    angmax
mpc.branch = [  %% (r and x specified in ohms here, converted to p.u. below)
    1    2    0.0922    0.0470    0    0    0    0    0    0    1    -360    360;
    2    3    0.4930    0.2511    0    0    0    0    0    0    1    -360    360;
    3    4    0.3660    0.1864    0    0    0    0    0    0    1    -360    360;
    4    5    0.3811    0.1941    0    0    0    0    0    0    1    -360    360;
    5    6    0.8190    0.7070    0    0    0    0    0    0    1    -360    360;
    6    7    0.1872    0.6188    0    0    0    0    0    0    1    -360    360;
    7    8    0.7114    0.2351    0    0    0    0    0    0    1    -360    360;
    8    9    1.0300    0.7400    0    0    0    0    0    0    1    -360    360;
    9    10    1.0440    0.7400    0    0    0    0    0    0    1    -360    360;
    10    11    0.1966    0.0650    0    0    0    0    0    0    1    -360    360;
    11    12    0.3744    0.1238    0    0    0    0    0    0    1    -360    360;
    12    13    1.4680    1.1550    0    0    0    0    0    0    1    -360    360;
    13    14    0.5416    0.7129    0    0    0    0    0    0    1    -360    360;
    14    15    0.5910    0.5260    0    0    0    0    0    0    1    -360    360;
    15    16    0.7463    0.5450    0    0    0    0    0    0    1    -360    360;
    16    17    1.2890    1.7210    0    0    0    0    0    0    1    -360    360;
    17    18    0.7320    0.5740    0    0    0    0    0    0    1    -360    360;
    2    19    0.1640    0.1565    0    0    0    0    0    0    1    -360    360;
    19    20    1.5042    1.3554    0    0    0    0    0    0    1    -360    360;
    20    21    0.4095    0.4784    0    0    0    0    0    0    1    -360    360;
    21    22    0.7089    0.9373    0    0    0    0    0    0    1    -360    360;
    3    23    0.4512    0.3083    0    0    0    0    0    0    1    -360    360;
    23    24    0.8980    0.7091    0    0    0    0    0    0    1    -360    360;
    24    25    0.8960    0.7011    0    0    0    0    0    0    1    -360    360;
    6    26    0.2030    0.1034    0    0    0    0    0    0    1    -360    360;
    26    27    0.2842    0.1447    0    0    0    0    0    0    1    -360    360;
    27    28    1.0590    0.9337    0    0    0    0    0    0    1    -360    360;
    28    29    0.8042    0.7006    0    0    0    0    0    0    1    -360    360;
    29    30    0.5075    0.2585    0    0    0    0    0    0    1    -360    360;
    30    31    0.9744    0.9630    0    0    0    0    0    0    1    -360    360;
    31    32    0.3105    0.3619    0    0    0    0    0    0    1    -360    360;
    32    33    0.3410    0.5302    0    0    0    0    0    0    1    -360    360;
%     21    8    2.0000    2.0000    0    0    0    0    0    0    0    -360    360;
%     9    15    2.0000    2.0000    0    0    0    0    0    0    0    -360    360;
%     12    22    2.0000    2.0000    0    0    0    0    0    0    0    -360    360;
%     18    33    0.5000    0.5000    0    0    0    0    0    0    0    -360    360;
%     25    29    0.5000    0.5000    0    0    0    0    0    0    0    -360    360;
];

%%-----  OPF Data  -----%%
%% generator cost data
%    1    startup    shutdown    n    x1    y1    ...    xn    yn
%    2    startup    shutdown    n    c(n-1)    ...    c0
mpc.gencost = [
    2    0    0    3    0    20    0;
];


%% convert branch impedances from Ohms to p.u.
[PQ, PV, REF, NONE, BUS_I, BUS_TYPE, PD, QD, GS, BS, BUS_AREA, VM, ...
    VA, BASE_KV, ZONE, VMAX, VMIN, LAM_P, LAM_Q, MU_VMAX, MU_VMIN] = idx_bus;
[F_BUS, T_BUS, BR_R, BR_X, BR_B, RATE_A, RATE_B, RATE_C, ...
    TAP, SHIFT, BR_STATUS, PF, QF, PT, QT, MU_SF, MU_ST, ...
    ANGMIN, ANGMAX, MU_ANGMIN, MU_ANGMAX] = idx_brch;
Vbase = mpc.bus(1, BASE_KV) * 1e3;      %% in Volts
Sbase = mpc.baseMVA * 1e6;              %% in VA
mpc.branch(:, [BR_R BR_X]) = mpc.branch(:, [BR_R BR_X]) / (Vbase^2 / Sbase);

%% convert loads from kW to MW
mpc.bus(:, [PD, QD]) = mpc.bus(:, [PD, QD]) / 1e3;

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]张谦,廖清芬,唐飞,徐君茹,刘涤尘,邹宏亮.计及分布式电源接入的配电网静态电压稳定性评估方法[J].电力系统自动化,2015,39(15):42-48.

🌈4 Matlab代码实现

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荔枝科研社

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值