0


【配电网重构】基于混合整数二阶锥配电网重构研究(Matlab代码实现)

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

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

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

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

💥1 概述

随着经济快速增长,电力需求急剧增加,这给输配电网带来了巨大的扩容投资压力[1]。电力系统高峰负荷十分集中,要满足尖峰段负荷需求, 就必须加大系统容量建设,这不仅带来了巨大的投资要求,也使得电网现有的设备利用率低下,部分设备只在高峰时段运行。配电网多采用环状结构,开环运行,在配电线路沿馈线设有一定数量的常闭分段开关,馈线之间装有常开的联络开关。配电网重构技术不需增加额外投资,只需调整配电网中的开关状态,就可达到优化运行结构、平衡电力负荷、降低网络损耗、提高 电 压 质 量 的 目 的。理论上,任 何 一 个 配电网都存在一个最优的网络结构,在这个最优结构下,各负荷点的运行电压、网络损耗和负荷平衡的协调均优于其

他可行方案。当负荷变化时,这个最优结构也将变化,因此计算出这个最优结构,以使配电网尽可能地运行在最优状态。

主动配电网进行网络重构的目标有多种,主要包括:降低网络有功损耗,降低系统一定时间段内能量损耗,使线路负载均衡,提高系统供电可靠性,以及提高电压稳定性等。对应的优化目标函数可以用如下数学形式进行表示。

📚****2 运行结果

IEEE33节点:

function mpc = IEEE33

%% 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 = IEEE33

%% 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;
];

🎉3**** 参考文献****

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

[1]朱俊澎. 主动配电网重构与孤岛划分研究[D].东南大学,2018.

[2]葛鹏江,张树永,董晓晶,靳盘龙.基于鲁棒优化的配网重构二阶锥规划模型[J].电力科学与技术学报,2018,33(04):50-57.

[3]荣德生,胡举爽.配电网重构的凸模型[J].电源学报,2016,14(03):131-136.DOI:10.13234/j.issn.2095-2805.2016.3.131.

[4]向佳霓,赵建立,顾霈,王隗东,陈珂,张洪志.考虑需求响应的配电网重构经济性和可靠性研究[J].电工技术,2022(19):20-23.DOI:10.19768/j.cnki.dgjs.2022.19.006.

🌈4 Matlab代码实现


本文转载自: https://blog.csdn.net/2301_77414277/article/details/130938603
版权归原作者 天天程序猿 所有, 如有侵权,请联系我们删除。

“【配电网重构】基于混合整数二阶锥配电网重构研究(Matlab代码实现)”的评论:

还没有评论