Codigorecargado

También podría gustarte

Está en la página 1de 2

%Potencia_demanda_por_barra

Pd=[0;0;1.40;0];
Qd=[0;0;0.30;0];
%Potencia_Generada_por_barra
Pg=[0;0.80;0;0];
Qg=[0;0;0;0];
%Potencia_especificada
Pesp=Pg-Pd;
Qesp=Qg-Qd;
%Matriz_Admitancias_[YB]
Yb=[50 0 0 -50;0 100 0 -100;0 0 40 -40;-50 -100 -40 190]*(-1i);
%Vector_magnitudes_tension
VBm=[1;1;1;1];
%Vector_angulos_tension
delta=zeros(4,1);
%Error_Maximo_permitido
tot=1/1000;
%Error_maximo_asumido
errmx=1;
%Numero_iteraciones
itermx=10;
%contador_iteraciones
iter=0;
%%PROCESO_ITERATIVO
while (errmx>tot && iter<itermx)
%Vector_tensiones_barras_FASORIALMENTE
Vb=VBm.*exp(1i*delta);
%Potencias_calculadas
MVB=diag(Vb);
MS=MVB*conj(Yb)*conj(MVB);
MP=real(MS);
MQ=imag(MS);
Pcal=sum(transpose(MP))
Qcal=sum(transpose(MQ))
%Errores_activa_y_reactiva
Dp=Pesp'-Pcal
Dq=Qesp'-Qcal
%Vector_errores
Df=transpose([Dp(2:4) Dq(3:4)])%%LA DOS NO SE TOMO EN CUENTA POR SE
BARRA PV Y POR ENDE SE DESCONOCE Q
%Maximo_valor_error_absoluto
errmx=abs(max(Df));
%Calculo_elementos_Jacobiano
HH=MQ;
NN=MP;
JJ=-NN;
LL=HH;
for k=1:4
HH(k,k)=HH(k,k)-Qcal(k);
NN(k,k)=NN(k,k)+Pcal(k);
JJ(k,k)=JJ(k,k)+Pcal(k);
LL(k,k)=LL(k,k)+Qcal(k);
end
H=HH(2:4,2:4);
N=NN(2:4,3:4);
J=JJ(3:4,2:4);
L=LL(3:4,3:4);

Jacob=[H N;J L]
%Calculo_correcciones
Dx1=inv(Jacob);%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%55555
Dx=Dx1*Df;
%Correccion de variables
Ddelta=Dx(1:3);
DVSV=Dx(4:5);
delta(2:4)=delta(2:4)+Ddelta;
VBm(3:4)=VBm(3:4)+DVSV;

end
%CALCULO_RESULTADOS_FINALES
disp('Tension de Barra')
disp([VBm(1:4) delta(1:4)*(180/pi)])
%Vector_Tensiones_barras_FASORES
VB=VBm.*exp(1i*delta);
%Potencias_calculadas
MVB=diag(VB);
MS=MVB*conj(Yb)*conj(MVB);
MP=real(MS);
MQ=imag(MS);
Pcalc=sum(transpose(MP));
Qcalc=sum(transpose(MQ));
%Potencia_Generada
Pg(1)=(Pcal(1)'+Pd(1));
Qg(1:2)=Qcal(1:2)'+Qd(1:2);
Pgrta=round(Pg(1:4)*1000);
Qgrta=round(Qg(1:4)*1000);
disp('Potencia_generada')
disp([Pgrta Qgrta]/10)
%Potencia_demandada
disp('Potendia_deamandada')
disp(([Pd(1:4) Qd(1:4)])*100)

También podría gustarte