主动配电网故障恢复的重构与孤岛划分matlab程序

微❤关注"电气仔推送"获得资料(专享优惠)

参考文档:

A New Model for Resilient Distribution Systems by Microgrids Formation;

主动配电网故障恢复的重构与孤岛划分统一模型;

同时考虑孤岛与重构的配电网故障恢复运行策略。

运行环境:

matlab+yalmip+cplex

主要内容:

程序主要以33节点为研究对象,编制配电网故障重构模型,采用虚拟潮流约束保证配电网的连通性和辐射性,以网损和负荷损失作为目标函数,包括潮流约束、电压电流约束、辐射性约束等。

主动配电网故障恢复的重构与孤岛划分统一模型 随着分布式电源和储能装置大量接入配电网,配电网 在发生故障之后可以进行重构和孤岛划分,提高故障恢复的水平。建立包含多类型分布式电源、柔性负荷和储能的多 时间段故障动态恢复模型,并计及故障恢复时间和检修次序。利用二阶锥技术将 所建模型转换成混合整数二阶锥规划模型。结果表明,与传统方法相比,所提故障恢复方法计算速度更快,故障恢复率更高。

部分代码:

%% 检修策略约束

for i=1:nl

if ismember(i,F)

Constraints = [Constraints, Zij(i,1)==0];%故障线路初始状态

for t=2:N

Constraints = [Constraints, Zij(i,t)>=Zij(i,t-1)];%故障线路下一个时刻状态要大于等于上一个时刻

end

end

end

[~,na]=size(F);%故障线路条数

for t=1+Tf:N

Constraints = [Constraints, sum(Zij(F,t))-sum(Zij(F,t-Tf))<=h];%每个时段最多只能检修h条故障线路

end

for i=1:6

for t=2:N

Rep(i,t-1)=Zij(F(i),t)-Zij(F(i),t-1);%线路维修状态和线路状态关系

end

%% 定义目标函数

f=sum(sum(repmat(r_ij,1,N).*x_Iij_square))+100*sum(sum(p_Load1))+100*sum(sum(-lamda.*p_Load1));

Constraints=[Constraints,0<=lamda<=1];

%% 有功与无功平衡

for opt_num=1:N

Constraints=[Constraints,x_ui_square(1,opt_num)==12.66^2];

for k=2:33

Constraints = [Constraints, -0.01.*Zij(33:37,opt_num)<= x_pij(33:37,opt_num) <= 0.01.*Zij(33:37,opt_num)];%线路有功约束

Constraints = [Constraints, -4.*Zij(1:32,opt_num) <= x_pij(1:32,opt_num) <= 4.*Zij(1:32,opt_num)];%线路有功约束

%% 支路欧姆定律

%欧姆定律约束

m = (1.05*1.05 - 0.95*0.95)*12.66^2;

M = (ones(nl,N) - Zij)*m;

%% 运行电压电流约束

Constraints=[Constraints,x_ui_square(:,opt_num)>=(0.95*12.66)^2];

Constraints=[Constraints,xuisquare(:,opt_num)<=(1.05*12.66)^2];

运行结果:

相关推荐
喵叔哟3 天前
重构代码之删除对参数的赋值
重构
fishjam3 天前
[开源重构]Search(Elasticsearch/OpenSearch) Sync Tool
elasticsearch·重构·开源
多多*3 天前
Vue.js 插槽 Slots 实际应用 最近重构项目的时候遇到的...
前端·vue.js·重构
喵叔哟5 天前
重构代码之内联类
服务器·重构
喵叔哟5 天前
重构代码之替换算法
重构
有趣的杰克9 天前
移动端【01】面试系统的MVVM重构实践
面试·职场和发展·重构
喵叔哟9 天前
重构代码之内联临时变量
重构
喵叔哟9 天前
重构代码之拆分临时变量
重构
喵叔哟9 天前
重构代码之用多态替代条件逻辑
java·服务器·重构