I didn’t get a chance to look at your code carefully, but is there a reason you 
are not simply using the continuation power flow (see chapter 5 in the manual 
<http://www.pserc.cornell.edu/matpower/manual.pdf>) in MATPOWER?  

   Ray


> On Apr 20, 2015, at 5:44 AM, Sridevi Hosur <[email protected]> wrote:
> 
> 
> Hello,
> 
> I am Sridevi, I am trying to get a PV Curve and pmax for IEEE 30 bus test 
> system for few buses (example bus 7). The curve looks like a linear curve. It 
> does not look any close to a typical pv curve.
> 
> Could anyone look into it and assist. Here is the code.
> 
> clear all
> close all
> clc
> 
> %============Inputs====================================================
> pf = 0.8;%power factor = 0.8 lagging
> BUS_I=7;%change these bus numbers 
> mpc=loadcase('case30');%load case30 to mpc file
> Po=mpc.bus(BUS_I,3);%reading the real load demand from bus data
> i=1; %iterative variable
> %======================================================================
> 
> %=====================To find out the range of P==========================
> P=0;%load power is initialised to zero 
> P_old=0;
> temp=1;
> while (temp>0.5)
> P_old(i)=P;
> mpc.bus(BUS_I,3)=P;% modifying the real load demand 
> Q=((sqrt(1-pf^2))/pf)*P;%calculating the corresponding reactive load demand
> mpc.bus(BUS_I,4)=Q;
> results = runpf(mpc);%run the load flow and save the results
> V(i)=results.bus(BUS_I,8);%read voltage from the updated values
> temp=V(i);
> P=P+1;% increase load real power
> i=i+1;
> end
> %==========================================================================
> 
> P=P-1;
> %=============To zero in on P more accurately with increased resolution====
> % P=P+0.1;% we have decremented the increament of P to get accuracy on 
> maximum P
> % temp=1;
> % while (temp>0.5)
> % P_old(i)=P;
> % mpc.bus(BUS_I,3)=P;% modifying the real load demand 
> % Q=((sqrt(1-pf^2))/pf)*P;%calculating the corresponding reactive load demand
> % mpc.bus(BUS_I,4)=Q;
> % results = runpf(mpc);%run the load flow and save the results
> % V(i)=results.bus(BUS_I,8);%read voltage from the updated values
> % temp=V(i);
> % P=P+0.1;% increase load real power
> % i=i+1;
> % end
> %==========================================================================
> 
> %=======To calculate the load flow for exact value of P found==============
> mpc.bus(BUS_I,3)=P;
> P_old(i)=P;
> results=runpf(mpc);
> V(i)=results.bus(BUS_I,8);
> %==========================================================================
> 
> %===========To plot the PV curve======================
> plot(P_old,V);%Plot P-V accordingly
> xlabel('Power [MW]');
> ylabel('Voltage [V]');
> title('PV Curve');
> axis([0 300 0.5 1])
> deltaP=P-Po;%Determine loading margins
> %====================================================
> 
> Kindly assist.
> 
> Thanks & Regards,
> Sridevi Hosur
> 

Reply via email to