2024年4月14日发(作者:)
四个电厂、一个风电场
满足负荷、维持电网平衡、爬坡约束、风电全额上网
%电网负荷
fuhe =[ 130 140 150 160 170 180 190 200 210 220 230 240 230 220 210 200 190 180 170
160 150 140 130 120]
plot(fuhe);
xlim([0.0 25.0]);
ylim([0 260]);
grid on;
fengdian=[30 25 20 25 30 35 40 45 45 40 45 50 55 60 60 55 50 45 40 35 30 25 20 25];
x=sdpvar(4,24);
F=sdpvar(1,24);
%机组出力约束
constraints=[x(1,1:1:24)>=9]
constraints=[constraints,x(1,1:1:24)<=60]
constraints=[constraints,10<=x(2,1:1:24),x(2,1:1:24)<=55];
constraints=[constraints,10<=x(3,1:1:24),x(3,1:1:24)<=80];
constraints=[constraints,9<=x(4,1:1:24),x(4,1:1:24)<=60];
%风电出力约束
fengdianchuli=sdpvar(1,24);
constraints=[constraints,fengdianchuli(1,1:1:24)==fengdian(1,1:1:24)];
%constraints=[constraints,fengdianchuli(1,1:1:24)>=0,fengdianchuli(1,1:1:24)<=fengdian
(1,1:1:24)];
%电网平衡约束
for i=1:1:24
constraints=[constraints,(x(1,i)+x(2,i)+x(3,i)+x(4,i)+fengdianchuli(1,i))==fuhe(1,i)]
end
%发电机组爬坡约束
constraints=[constraints,abs(x(1,2:1:24)-x(1,1:1:23))<=30];
constraints=[constraints,abs(x(2,2:1:24)-x(2,1:1:23))<=30];
constraints=[constraints,abs(x(3,2:1:24)-x(3,1:1:23))<=30];
constraints=[constraints,abs(x(4,2:1:24)-x(4,1:1:23))<=30];
%目标函数
clear j;
for j=1:1:24
F=x(1,j)^2+1.5*x(2,j)^2+1.75*x(3,j)^2+2*x(4,j)^2
end
%定义目标函数
objective=F;
ops=sdpsettings('verbose',1,'solver','gurobi');
result=optimize(constraints,objective,ops);
if m == 0
value(x);
value(objective);
else
disp('求解过程中出错');
end
plot(fuhe);
hold on;
grid on;
R=double(x(1,1:1:24));
plot(R);
hold on;
S=double(x(2,1:1:24));
plot(S);
hold on;
T=double(x(3,1:1:24));
plot(T);
hold on;
U=double(x(4,1:1:24));
plot(U);
hold on;
V=double(fengdianchuli(1,1:1:24));
plot(V);
hold on;
发布者:admin,转转请注明出处:http://www.yc00.com/news/1713045153a2171840.html
评论列表(0条)