Matlab|计及需求响应消纳风电的电热综合能源系统经济调度
目录
1 主要内容
场景分析
目标函数:
约束条件:
2 部分代码
3 程序结果
4 下载链接
1 主要内容
程序主要参考《计及需求响应消纳风电的电热综合能源系统经济调度》第四章内容,模型负荷侧应用需求响应的基本原理,在日前应用分段电价需求响应原理,优化电负荷出力更加平顺,提高了风电上网空间,促进风电消纳。在日内应用风变电价需求响应,降低因风电出力不确定性给系统带来的调度维护费用,符合电力系统经济运行的基本要求。构建机组侧和负荷侧的两阶段优化经济调度模型,解决风电消纳困难,以及可再生能源出力不确定性的问题。
负荷侧需求响应部分可详见《电价负荷需求响应-考虑电价变动》和《负荷需求响应-考虑风变影响》两个文章介绍,在此不再赘述。
-
场景分析
本次主要是对算例场景进行分析,主要分为如下三个场景,本程序中场景3并未采用滚动调度,通过风变负荷来实现日内优化效果,实现了SPDR和WEPDR两种负荷需求响应的影响分析。
-
目标函数:
(注:计算参考该公式,目标函数包括热电联产机组和火电机组运行成本以及弃风成本,未计及PDR成本。)
-
约束条件:
2 部分代码
Pmax=[600 600 600 247 247 247 800 600 ];%各个机组最大电出力 Pmin=[165 165 165 81 81 81 0 0 ];%各个机组最小电出力 PUmax=[70 70 70 80 80 80 50 130 ];%各个机组最大电爬坡 PDmax=[70 70 70 80 80 80 50 130 ];%各个机组最小电爬坡 Hmax=[450 450 450 180 180 180 ];%8台中有6台热电联产机组,最大热出力 Hmin=[0 0 0 0 0 0 ];%8台中有6台热电联产机组,最小热出力 HUmax=[100 100 100 93.3 93.3 93.3 ];%8台中有6台热电联产机组,最大热爬坡 HDmax=[100 100 100 93.3 93.3 93.3 ];%8台中有6台热电联产机组,最小热爬坡 a=[0.0532 0.0532 0.0532 0.0504 0.0504 0.0504 ];%6台热电联产机组,热电成本系数a b=[190.12 190.12 190.12 160.44 160.44 160.44 ];%6台热电联产机组,热电成本系数b c=[13175.4 13175.4 13175.4 10232.6 10232.6 10232.6 ];%6台热电联产机组,热电成本系数c e=[ 0.1197 0.266 ];%2台纯火电机组,火电成本系数a f=[ 189.35 190.12 ];%2台纯火电机组,火电成本系数b g=[ 8075.9 26351.5 ];%2台纯火电机组,火电成本系数c cv=0.15; cw=100; forecast=[ 1825.61999675894 1030 400 450 1739.61915170686 1040 410 430 1826.41881967561 1050 420 530 1814.46302565045 1070 420 550 1857.00904221349 1080 430 575 1895.16431333503 1100 440 600 1796.99834571728 1090 450 610 1919.26529195984 1090 430 585 1923.65338812799 1000 400 500 1923.87540668541 900 350 480 2042.64027800894 800 300 460 2030.84385531158 700 270 330 2005.75464467561 650 250 335 2072.63007983821 600 240 390 2120.70393754842 550 250 370 2317.09098113394 570 255 450 2367.27096841592 700 300 500 2329.71633356450 800 320 530 2088.67030460469 850 330 510 2111.39027800894 880 340 510% 2000.60339098971 950 380 500 2004.84591193752 1020 430 510 1916.59855631083 1000 420 490 1973.15369782026 1030 420 570 ];%1电负荷 2区域1热负荷 3区域2热负荷 4预测风电出力 onoff=binvar(8,24,'full');%调度周期24小时中,每小时各个机组的运行状况,用0-1表示 re =sdpvar(6,24,'full');%6台热电联产机组的实际出力 huo =sdpvar(2,24,'full');%2台纯火电机组的实际出力 feng =sdpvar(1,24,'full');%风电的实际出力 qfeng=sdpvar(1,24,'full');%弃风量 qfeng=forecast(:,4)'-feng;%弃风量 %约束条件 Constraints=[ ]; %热电联产机组约束 for k=1:24 Constraints=Constraints+(Hmin'<=re(:,k)<=Hmax');%6台热电联产机组热出力上下限约束 end for k=2:24 Constraints=Constraints+((-1)*HDmax'<=re(:,k)-re(:,k-1)<=HUmax');%6台热电联产机组热爬坡约束 end for k=1:24 Constraints=Constraints+(sum(re(:,k))==sum(forecast(k,2:3)));%区域1和2热网互联后热负荷平衡约束 end %for k=1:24 % Constraints=Constraints+(Pmin(1,1:6)'<=0.75*re(:,k)<=Pmax(1,1:6)');%通过热电比将热换算为电,进行热电联产机组的电出力约束 %end %for k=2:24 % Constraints=Constraints+((-1)*PDmax(1,1:6)'<= 0.75*re(:,k)-0.75*re(:,k-1)<=PUmax(1,1:6)');%通过热电比将热换算为电,进行热电联产机组的电出力爬坡约束 %end %常规机组约束 for k=1:24 Constraints=Constraints+(Pmin(1,7:8)'<=huo(:,k)<=Pmax(1,7:8)');%进行纯火电机组的电出力上下限约束 end for k=2:24 Constraints=Constraints+((-1)*PDmax(1,7:8)'<=huo(:,k)-huo(:,k-1)<=PUmax(1,7:8)');%进行纯火电机组的电出力爬坡约束 end %风电出力约束 Constraints=[Constraints,0<=feng'<=forecast(:,4)];%风电出力上下限约束 for k=1:24 Constraints=Constraints+(sum(0.95*re(1:3,k))+sum(0.75*re(4:6,k))+sum(huo(:,k))+feng(1,k)==PLT2(1,k));%系统的电功率平衡约束 end %目标函数 Objective=0; for k=1:24 for i=1:6 Objective=Objective+re(i,k)*a(1,i)*re(i,k)+re(i,k)*b(1,i)+c(1,i);%6个热电联产机组的成本 end end for k=1:24 for j=1:2 Objective=Objective+huo(j,k)*e(1,j)*huo(j,k)+huo(j,k)*f(1,j)+g(1,j);%2个纯火电机组的成本 end end Objective=Objective+sum(cw*qfeng);%弃风惩罚费用 %求解
3 程序结果
场景1:弃风率27.8942%(程序自动计算得出)
场景2:弃风率6.747%(程序自动计算得出)
场景3:弃风率5.8103%(程序自动计算得出)