I solved it. It was a silly thing. I had Pmin of the source bus equal to zero,
so that was the reason, that the opf could not converge for negative output. I
changed the Pmin limits of the source to equal to '-(total wind generation)'
and it converges properly! I apologize for that.
However, as far as the slack bus when I run an opf, If I change the slack bus
to a generator bus and run an opf I receive the following error:
Attempted to access Varefs(1); index out ofbounds because numel(Varefs)=0.
Error in mipsopf_solver (line 120) x0(vv.i1.Va:vv.iN.Va) = Varefs(1); %%
angles set to first reference angle
Error in opf_execute (line 91) [results, success, raw] =
mipsopf_solver(om, mpopt);
Error in opf (line 225)[results, success, raw] = opf_execute(om, mpopt);
Error in runopf (line 96)[r, success] = opf(casedata, mpopt);
Could you please explain me why is this happening?
Regards,Angelina
From: [email protected]
Subject: Re: how power can be absorbed by the slack bus
Date: Tue, 24 Mar 2015 10:18:11 -0400
To: [email protected]
I didn’t realize you were using an OPF. Since you mentioned a slack bus, I
assumed you were using a simple power flow. The OPF does not have a concept of
slack (only a voltage angle reference).
You could try setting VMIN and VMAX equal to the set-point voltage (the
corresponding generator’s VG) for your source and wind gen buses and then
completely eliminating the reactive power limits for both source and wind gen
and the voltage limits at all other buses by setting the mins to –Inf and the
maxes to +Inf. Also, make sure you do not have binding branch flow limits, by
setting RATE_A to zero everywhere.
If this still doesn’t work, try reducing PMAX of the wind generator until it
does. I assume you’ve confirmed that you can solve the case when the wind
generator is not producing, correct?
-- Ray ZimmermanSenior Research AssociateB30 Warren Hall, Cornell University,
Ithaca, NY 14853 USAphone: (607) 255-9645
On Mar 23, 2015, at 3:18 PM, angelina sirri <[email protected]> wrote:I
hadn't thought of limiting the mpc.gen(wind_farm,10) to be equal to
mpc.gen(wind_farm,9). Previously I had mpc.gen(wind_farm,10)=0 , so when wind
output was higher than the total load, simply results.gen(wind_farm,2) was
almost equal to the total load, and the rest of the wind output was curtailed.
Now I tried mpc.gen(wind_farm,10)= mpc.gen(wind_farm,9) so in the results, the
slack bus absorbs the remaining wind power , having a negative output. However
the opf does not converge, and I am sure that this is because of voltage issues.
I have tried to- increase Qmin and Qmax limits (both of the wind farm and the
slack bus), -I have tried relaxing the voltage limits (in the mpc.bus(:,12) and
mpc.bus(:,13)-step down the transformer in the slack bus (by changing the
value of mpc.branch(branch of the transformer 33/11kv, 9)). But still I cannot
succeed convergence.
What more could I try?
From: [email protected]
Subject: Re: how power can be absorbed by the slack bus
Date: Mon, 23 Mar 2015 12:00:53 -0400
To: [email protected]
Have you simply tried it? I can’t think of any reason that a negative output
from the slack bus should cause problems.
Ray
On Mar 20, 2015, at 1:32 PM, angelina sirri <[email protected]> wrote:Dear
all,
I am trying to simulate active network management in distribution network in
11kv. I have a distribution network with 40 nodes. Of those, one node is the
distribution substation node, which is also the slack bus, and also I have in
another node a wind farm.The rest of the nodes are loads. For the cases that I
have a low demand and a wind power output higher than that, I would like to let
the wind farm inject that power back to the main network (which I do not
neither include in the mpc. case , nor simulate).For example, let's say that I
have the following:sum(mpc.bus(:,3))=5MW; %total active demand
sum(mpc.bus(:,4))=4MVar; %total reactive demand
mpc.gen(slack bus,9)=20MW; %maximum slack bus outputmpc.gen(wind_farm,9)=10MW;
%maximum wind power output
So in this case, the wind farm is able to feed the rest of the network, with
zero power taken from the slack bus (if with opf, wind generator is cheaper
than the slack).How could I feed the remaining 5MW (10-5) from the wind farm
back to the grid, getting in the results sth like:results.gen(slack bus,2)=-5MW?
I guess that I will have voltage issues, but in first place I was wandering how
this could happen in case I do not have voltage issues. Afterwards, to face the
voltage issues I was thinking to manually change the tap of the transformer
behind the slack like that:
mpc.branch(branch of the transformer 33/11kv, 9) = range between 0 to 1;
Any proposal would really help!!Kind Regards,Angelina