目录
[1 主要内容](#1 主要内容)
[2 部分代码](#2 部分代码)
[3 程序结果](#3 程序结果)
[4 下载链接](#4 下载链接)
1 主要内容
该程序参考文献《储能辅助电力系统调峰的容量需求研究》,主要是对火电、风电和储能等电力设备主体进行优化调度,在调峰能力达不到时采用弃负荷,程序以发电成本、投资运维成本、弃风惩罚、弃负荷成本以及储能调峰收益作为目标函数,程序包含多种电力设备代码建模,采用matlab+yalmip编程,注释清晰,方便学习!
目标函数
储能容量优化配置模型考虑经济性,以最小化运行成本为目标函数,包括:(1)发电成本;(2)储能系统投资运维成本;(3)弃风惩罚成本;(4)调峰不足惩罚成本;(5)调峰经济收益。
约束条件
(1)系统功率平衡约束
(2)储能系统出力上下限约束
(3)储能系统多时段能量耦合约束
(4)储能系统荷电状态约束
(5)火电机组爬坡速率约束
(6)火电机组出力上下限约束
(7)风电出力上下限约束
(8)系统日弃风量约束
从这些约束形式能够看出,常规电力系统优化调度/配置基本就这些约束内容,这些都是比较基础和常规的约束,适合初学者学习参考!
2 部分代码
%% 连续变量
% 决策变量:火电出力, 风电出力, 调峰不足,u储能放电,u储能充电 ,储能容量,
Pf = sdpvar(1,24); % 火电出力出力
Pw = sdpvar(1,24); %风电出力
Ploss = sdpvar(1,24); %调峰不足
%储能
Pchr = sdpvar(1,24); % 蓄电池充电功率
Pdis = sdpvar(1,24); % 蓄电池放电功率
Uchr = binvar(1,24); % 电池充电状态,1表示充电
Udis = binvar(1,24); % 电池放电状态,1表示放电
Wbt= sdpvar(1,24); % 蓄电池的荷电状态
Ess= sdpvar(1); % 蓄电池容量
%% 约束
constraint=[];
for t=1:24 % (1) 电能平衡约束
constraint = [constraint, Pf(t)+Pw(t)+Ploss(t)+Pdis(t)-Pchr(t)-Pload(t)==0 ];
end
constraint=[constraint, 0 <= Ess <= E_max];
for t=1:24 % 蓄电池不等式约束
constraint=[constraint, 0<=Pchr(t)<=Uchr(t)*E_max];
constraint=[constraint, 0<=Pdis(t)<=Udis(t)*E_max];
constraint=[constraint, Uchr(t)+Udis(t)<=1];
constraint=[constraint, Ess*soc_min<=Wbt(t)<=Ess*soc_max];
end
for t=1:24 % 蓄电池等式约束
if t==1
constraint=[constraint, Wbt(t)==Ess*soc0+Pchr(t)*eta-Pdis(t)/eta];
else
constraint=[constraint, Wbt(t)==Wbt(t-1)+Pchr(t)*eta-Pdis(t)/eta];
end
end
constraint = [constraint, Ess*soc0==Wbt(24) ];
%% 火电上下限约束
for t=1:24
constraint=[constraint, pf_min<=Pf(t)<=pf_max] ;
end
%% 火电爬坡约束
for t=2:24
constraint=[constraint, -delta<=Pf(t)-Pf(t-1)<=delta] ;
end