网站建设及维护课件免费,oneindex wordpress,百度小程序官网,网建目录 1 主要内容
2 程序难点及问题说明
3 部分程序
4 下载链接 1 主要内容
该程序分为两部分#xff0c;日前优化部分——该程序首先根据《电力系统云储能研究框架与基础模型》上面方法#xff0c;根据每个居民的实际需要得到响应储能充放电功率#xff0c;优化得到整体…目录 1 主要内容
2 程序难点及问题说明
3 部分程序
4 下载链接 1 主要内容
该程序分为两部分日前优化部分——该程序首先根据《电力系统云储能研究框架与基础模型》上面方法根据每个居民的实际需要得到响应储能充放电功率优化得到整体的储能充放电功率情况。日内滚动mpc跟踪部分——采用《基于MPC的微电网并网优化调度》P31-36页相关内容通过预测模型、滚动优化、反馈校正得到soc跟踪情况。 2 程序难点及问题说明
代码修正 for i1:96 C[C;P_C1(i) P_G1(i)P_PV1(i);%储能功率电网供电光伏储能P_PV1(i)P_C1(i)P_cap;%储能值约束0P_G1(i)P_cap;%电网供电约束E1(1)sum(P_C1)*nc*tE_cap;%soc约束到储能结束soc1];
end该程序含有这段代码最后一句代码和i不相关却重复循环96次这句代码和下面的代码功能重复在学习和修改代码的时候增加了复杂度。此外还有几处类似问题已经修正。
原文献有储能充放电功率模型如下该部分约束能够保证充放电功率不能同时不为0但是在代码里面却存在这方面问题已经进行了修正。 部分问题
代码原来的出图效果如下 该部分是第一阶段优化结果对于云储能用户考虑最简单的调度策略即根据电价详细分清楚每个时间段的充放电状态所以soc曲线也较为规律该图应该为5段即充-放-充-放-充但是考虑到前四段已经能够说明问题就只分析前四段。 得到两个阶段的soc跟踪效果图但是为什么只是充电阶段的跟踪图呢为什么第一个图效果那么好呢第一个问题留给大家思考第二个问题一会揭晓。
修正后的代码运行结果 修正代码实现了全过程的soc跟踪控制。 本模型的跟踪控制主要是由于光伏波动引起的在不存在光伏波动的时间段就会出现soc完美的跟踪效果也就回答了上面第二个问题。 3 部分程序
clc;clear all;
%% 数据准备
data xlsread(预测数据.xlsx);
p_pv data;%正值代表负荷。负值代表用户光伏发电量高于负荷的部分
p_pv(data0) 0; %用户的剩余光伏数据
prepvsum(p_pv,2);
data_d data;
data_d(data0) 0; %用户放电负荷数据
data_d -1.*data_d;
preloadsum(data_d,2);
%% 参数设置
e_cap xlsread(各用户租赁容量.xlsx); %各用户租赁的能量容量
p_cap 0.5.*e_cap; %各用户租赁的功率容量
E_cap 175; %CES储能容量
P_cap 90; %CES功率容量
e0 0.2.*e_cap; %各用户初始电量
E0 0.2*E_cap; %CES初始电量
emin 0.1.*e_cap;
Emin 0.1*E_cap;
nc 0.96; %充电效率
nd 0.96; %放电效率
r1 0.32; %低谷电价
r2 0.66; %平谷电价
r3 1.1; %高峰电价
r zeros(288,1); %各时段电价
r(1:96) r1;
r(97:144) r3;
r(145:204) r2;
r(205:252) r3;
r(253:288) r2;
t 5/60; %时间间隔
%% 定义变量
E1 sdpvar(96,1);%储能容量变量
E1(1) E0;
P_PV1 sum(p_pv(1:96,:),2);%充电时段0-800整体光伏出力
P_C1 sdpvar(96,1);%储能出力变量
P_G1 sdpvar(96,1);%电网供电变量
C[];%初始化约束
for i1:96 C[C;P_C1(i) P_G1(i)P_PV1(i);%储能功率电网供电光伏储能P_PV1(i)P_C1(i)P_cap;%储能值约束0P_G1(i)P_cap;%电网供电约束
% E1(1)sum(P_C1)*nc*tE_cap;%soc约束到储能结束soc1];
end
4 下载链接
点击直达