本文主要是介绍Matlab|储能辅助电力系统调峰的容量需求研究,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
目录
1 主要内容
目标函数
约束条件
2 部分代码
3 程序结果
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==1constraint=[constraint, Wbt(t)==Ess*soc0+Pchr(t)*eta-Pdis(t)/eta];elseconstraint=[constraint, Wbt(t)==Wbt(t-1)+Pchr(t)*eta-Pdis(t)/eta];end endconstraint = [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
3 程序结果
4 下载链接
这篇关于Matlab|储能辅助电力系统调峰的容量需求研究的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!