Está en la página 1de 3

Universidad Tecnológica de Panamá

Facultad de Ingeniería Eléctrica


Laboratorio de Sistemas de Potencia- Flujo de cargas

Profesor Jean-François Duhé

1. Confeccionar en MATLAB un código que permita resolver el problema de flujo de


cargas para la siguiente red.

//Código

Vo = input('Introduzca voltaje de operación de la red: [KV] ');


Sb = input('Introduzca potencia aparente: [KVA] ');
Zl12 = input('Introduzca impedancia por unidad de longitud ZL12
[ohms/miles] ');
Zl23 = input('Introduzca impedancia por unidad de longitud ZL23
[ohms/miles] ');
Zl13 = input('Introduzca impedancia por unidad de longitud ZL31
[ohms/miles] ');
L12 = input('Introduzca longitud de la linea L12 [miles] ');
L13 = input('Introduzca longitud de la linea L13 [miles] ');
L23= input('Introduzca longitud de la linea L23 [miles] ');
VLL3 = input('Introducir Voltaje linea a linea barra 3 [kV] ');
P3 = input('Introducir Potencia activa de la barra 3 suministrada a la
red [kW] ');
P2 = input('Introducir Potencia activa consumida por la barra 2 [KW]
');
Q2 = input('Introduzca potencia reactiva consumida por la barra 2 [KVAR]
');

CABRERA, GUILLERMO;MORALES, JOSÉ;SÁNCHEZ, DOUGLAS 1


%Valores Base para la Red
fprintf('\2n Voltaje Base = %f\t KV \n', Vo)
fprintf('Potencia Base = %f\t KVA \n', Sb)
Vb3 = VLL3; %Vbase barra 3
Zbase12 = Vo^2/Sb;
Zbase13 = Vo^2/Sb;
Zbase23 = Vb3^2/Sb;
P3pu = P3/Sb;
P2pu = P2/Sb;
Q2pu = Q2/Sb;
fprintf('Impedancia base12 = %d\t ohms \n', Zbase12)
fprintf('Impedancia base13 = %d\t ohms \n', Zbase13)
fprintf('Impedancia base23 = %d\t ohms \n\n', Zbase23)
Vopu = Vo/Vo ;

%Cálculo de Impedancias de las líneas de tx (valores reales y pu)


zl12 = Zl12*L12; %Impedancia de la linea 1 - 2 en ohms
zl13 = Zl13*L13; %Impedancia de la linea 1 - 3 en ohms
zl23 = Zl23*L23; %Impedancia de la linea 2 - 3 en ohms
zl12pu = zl12/Zbase12;
zl13pu = zl13/Zbase13;
zl23pu = zl23/Zbase23;
fprintf('Impedancia de la línea 1-2 %f\t [ohms] \n',zl12)
fprintf('Impedancia de la línea 1-3 %f\t [ohms] \n',zl13)
fprintf('Impedancia de la línea 2-3 %f\t [ohms] \n',zl23)
fprintf('Impedancia de la línea 1-2 %f\t [pu] \n',zl12pu)
fprintf('Impedancia de la línea 1-3 %f\t [pu] \n',zl13pu)
fprintf('Impedancia de la línea 2-3 %f\t [pu] \n\n',zl23pu)

%Cálculo de voltaje de la barra controlada en pu, así como las potencias


reales y
%reactivas en la red
disp('Calculos tension en pu de la barra controlada por voltaje en pu,
potencias reales y reactivas en la red')
Vb3pu = Vb3/Vo;
fprintf('Tensión de la barra controlada por voltaje en pu es %d\t [pu]\n
Potencia Inyectada a la red %d\t kw \n', Vb3pu,P3 )
fprintf('Tensión del Slack bus en pu es %f\t \n\n', Vopu )

%Matriz de admitancia de la red


y12 = 1/zl12pu; y13 =1/zl13pu; y23=1/zl23pu;y11=y12+y13; y22= y23 + y12;
y33 = y13 + y23;
disp('Bus de Admitancia')
Ybus = [ y11,-y12,-y13;-y12,y22,y23;-y13,-y23,y33]
Q3 = 0;

%Método Gauss - Seidel


% Aplicar el método de Gauss-Seidel con una cantidad ajustable por el
usuario de “N” iteraciones para efectos de calcular los voltajes en las
barras.

%n = input('número de interacciones para calcular voltajes en las


barras')
%for n = 1:1:n
%end
CABRERA, GUILLERMO;MORALES, JOSÉ;SÁNCHEZ, DOUGLAS 2
V2 = 1/y22 * ( P2pu-Q2pu*j/Vb3pu - (y12*Vopu + y23*Vb3pu));
V3 = (1/y33)*(((P3pu - Q3*j)/Vb3pu)-(y13*Vopu + y23*V2));
Q3 = -imag(V3*(V3 * y33)+(Vopu*y13)+(V2*y23)) ;

%Voltajes y ángulos de fase de cada una de las barras


V1 = abs(Vopu) ;
A1 = angle(Vopu);
mV2 = abs(V2);
B2 = angle(V2);
mV3 = abs(V3);
C3 = angle(V3);
fprintf(' Voltaje en la barra 1 (slack bus) %f < %f \n', V1, A1)
fprintf(' Voltaje en la barra 2 (PQ bus) %f < %f \n', mV2, B2)
fprintf(' Voltaje en la barra 3 (PV bus) %f < %f \n', mV3, C3)

CABRERA, GUILLERMO;MORALES, JOSÉ;SÁNCHEZ, DOUGLAS 3

También podría gustarte