matlab|基于DistFlow潮流的配电网故障重构(输入任意线路)

目录

[1 主要内容](#1 主要内容)

[2 部分代码](#2 部分代码)

[3 程序结果](#3 程序结果)

[4 下载链接](#4 下载链接)


1 主要内容

程序采用适用于辐射状网络的DistFlow潮流模型,可输入任意故障线路编号,得到优化重构结果。这个程序是配电网故障重构可视化matlab+yalmip的升级版,原来的程序是以电压质量作为目标函数的,未采用配电网严格的辐射状和连续状约束,如果改目标为网损或者弃负荷就会出现环网或者孤岛的情形。

本升级后的程序加入了辐射状和连续状约束,保证网络连通性和辐射性,改换成任意目标都不会导致配电网或者环网,本程序以网损和弃负荷作为目标,以二阶锥、电压电流、欧姆定律、网络潮流等作为约束条件,非常有利于初学者掌握配网故障重构的精髓!

2 部分代码

复制代码
%% 2.设变量
V = sdpvar(nb,T);%电压的平方
I = sdpvar(nl,T);%电流的平方
P = sdpvar(nl,T);%线路有功
Q = sdpvar(nl,T);%线路无功
Pg = sdpvar(nb,T);%发电机有功
Qg = sdpvar(nb,T);%发电机无功
lamda = sdpvar(nb,T);%弃负荷比例
Zij=binvar(nl,1);%网架结构
Z0=[ones(nl-nc,1);zeros(nc,1)];%初始拓扑
assign(Zij,Z0);
​
%% 3.设约束
Constraints = [];
%% 网络重构约束
Constraints = [Constraints, sum(Zij) == 32];
Constraints = [Constraints, I(AA) == 0];
Constraints = [Constraints, 0<=lamda<=1];
% P_tree = sdpvar(37,1);%虚拟有功
% Pin_tree = -upstream*P_tree + dnstream*P_tree;%虚拟节点注入有功
% Constraints = [Constraints,-Zij <= P_tree <= Zij];
% Constraints = [Constraints, Pin_tree(1:32) + 0.01==0];
%% 潮流约束
%节点功率约束
Pin = -upstream*P + upstream*(I.*(r*ones(1,T))) + dnstream*P;%节点注入有功
Qin = -upstream*Q + upstream*(I.*(x*ones(1,T))) + dnstream*Q;%节点注入无功
Constraints = [Constraints, Pin + (1-lamda).*pload - Pg==0];
Constraints = [Constraints, Qin + qload - Qg==0];
%欧姆定律约束
m = 1.06*1.06 - 0.94*0.94;
M = (ones(nl,1) - Zij)*m;
Constraints = [Constraints, V(branch(:,1),:) - V(branch(:,2),:) <= M + 2*(r).*P + 2*(x).*Q - ((r.^2 + x.^2)).*I];
Constraints = [Constraints, V(branch(:,1),:) - V(branch(:,2),:) >= -M + 2*(r).*P + 2*(x).*Q - ((r.^2 + x.^2)).*I];
​

3 程序结果

支路13故障

星标为故障线路,红色线路为断开支路,黑实线为常规闭合支路,黑虚线为联络闭合支路。
支路20故障

星标为故障线路,红色线路为断开支路,黑实线为常规闭合支路,黑虚线为联络闭合支路。
支路5故障

星标为故障线路,红色线路为断开支路,黑实线为常规闭合支路,黑虚线为联络闭合支路。

4 下载链接

相关推荐
Matlab精灵3 小时前
Matlab科研绘图:自定义内置多款配色函数
算法·matlab
喵叔哟4 小时前
重构代码中引入外部方法和引入本地扩展的区别
java·开发语言·重构
seraph9994 小时前
python oa服务器巡检报告脚本的重构和修改(适应数盾OTP)有空再去改
重构
xrgs_shz8 小时前
MATLAB读入不同类型图像并显示图像和相关信息
图像处理·计算机视觉·matlab
火山口车神丶11 小时前
某车企ASW面试笔试题
c++·matlab
今天吃饺子11 小时前
2024年SCI一区最新改进优化算法——四参数自适应生长优化器,MATLAB代码免费获取...
开发语言·算法·matlab
Evand J1 天前
集合卡尔曼滤波(Ensemble Kalman Filter),用于二维滤波(模拟平面上的目标跟踪),MATLAB代码
matlab·平面·目标跟踪
我是博博啦1 天前
matlab例题
人工智能·算法·matlab
2402_871321951 天前
MATLAB方程组
gpt·学习·线性代数·算法·matlab
Matlab程序猿小助手2 天前
【MATLAB源码-第218期】基于matlab的北方苍鹰优化算法(NGO)无人机三维路径规划,输出做短路径图和适应度曲线.
开发语言·嵌入式硬件·算法·matlab·机器人·无人机