Está en la página 1de 2

% Este programa obtiene la curva de potencia

% en la carga para diferentes valores de impedancia de carga


%% Elaborado por: Abraham Emanuel De la Cruz Villafuerte
% Hacer (debidamente comentado):
% Realiza los siguientes puntos:
% 1.- Calcular los voltajes en la impedancia de carga y de Thevenin
% 2.- Gráfica para las magnitudes de voltajes del punto 1
% 3.- Gráfica para los ángulos de voltajes del punto 1
% 4.- Gráfica para la potencia consumida por la carga
% 5.- Gráfica con los tres puntos anteriores (una sola gráfica)
% 6.- Mostrar la máxima potencia transferida a la carga
j=sqrt(-1); %Se define el número complejo dado raiz de menos 1
magVth=19.2; %Se define la magnitud del valor de la tension de voltaje de
Thevenin
angVth=-53.13;%Se define el angulo
Vth=magVth*cos(deg2rad(angVth)) + j*magVth*sin(deg2rad(angVth)); % Se define el
voltaje de Thevenin
Xth=-j*1.68; %Se define la parte imaginaria de Thevenin
Xl=-(Xth); %Se define el conjugado de Xth
Rth = 5.76; %Se define la resistencia de Thevenin
Zcar=Rth + Xl; %Se define Zcarga
puntos = 100; %Se define el numero de iteraciones, es decir cuantas repeticiones
hace el for
Rl=linspace(0,19*Rth,puntos);%Se define la resistencia de carga
%Se define variables locales para el for
f=linspace(0,10,puntos);
Zl=zeros(1,puntos);
Il=zeros(1,puntos);
Pl=zeros(1,puntos);
%Se establece el ciclo for para poder graficar las iteraciones
for i=1:puntos %Se define la iteracion del for
Zl(i) = f(i) * Zcar; %Se hace la iteracion por el numero de las repeticiones
establecidas en el for
Il(i) = (Vth) / ((Rth+Rl(i)) + j*(Xth+Xl)); %Se hace la iteracion por el
numero de las repeticiones establecidas en el for
Pl(i) = abs(Il(i))^2 * Rl(i); %Se hace la iteracion por el numero de las
repeticiones establecidas en el for
end
[Pmax, Pmaxloc] = max(Pl); % Se crea variable local para grafica
Vzth = (Rth + Xth)*Il;
Vzthw = (Xth)*Il;
Vl = (Rth)*Il;
[Vzmax, Vzmaxloc] = max(Vzth); % Se crea variable local para grafica
[Vmax, Vmaxloc] = max(Vl); % Se crea variable local para grafica
AngVzth = rad2deg(angle(Vzth)); % Se crea variable del angulo de Voltaje de la
impedancia de Thevenin
AngVl = rad2deg(angle(Vl)); % Se crea variable del angulo del Voltaje de carga
%% Graficas
plot(Rl, Pl, LineWidth=2.5, Color=[0.4660 0.8740 0.1880]); %Se crea ploteo de la
maxima transferencia de potencia
hold on
plot(Rl, abs(Vzth), LineWidth=2.5, Color=[0.8500 0.3250 0.0980]); %Se crea
ploteo del voltaje de la impedancia Thevenin
hold on
plot(Rl, -abs(Vl), LineWidth=2.5, Color=[0 0.4470 0.9410]); %Se crea ploteo del
voltaje de carga
hold on
plot(Rl, abs(Vzthw), LineWidth=2.5, Color=[1 0 1]); %Se crea ploteo del angulo
del voltaje de Thevenin
hold on
plot(Rl, -abs(Vzthw), LineWidth=2.5, Color=[0 0 0]); %Se crea ploteo del angulo
del voltaje de Thevenin
hold on
xline(Rth,'HandleVisibility','off');
plot(Rth,Pmax,'o','MarkerSize',10, LineWidth=4, Color=[0.4940 0.1840 0.5560]);
%sirve para poner el circulo del punto maximo
set(gca,'fontname','times') %Se establece las propiedades Marker y
MarkerFaceColor de todas las líneas con el mismo valor.
set(gca,'FontSize',12) %Se establece las propiedades Marker y MarkerFaceColor de
todas las líneas con el mismo valor.
text(Rth,Pmax-0.3*Pmax,['\bf\leftarrow R_{Carga} = ', ...
num2str(Rth), ' \Omega']);%% sirve para poner el valor de r carga
grid on % sirve para cuadricular grande
grid minor % sirve para cuadricular chico
str1 = ['\bfP_{max} = ', num2str(round(Pmax),2), ' W']; % Se crea funcion para
poder llamar los valores requeridos en las etiquetas
str2 = ['\bfVzth_ = ', num2str(round(Vzmax),2), ' V']; % Se crea funcion para
poder llamar los valores requeridos en las etiquetas
str3 = ['\bfVl_ = ', num2str(round(Vmax),2), ' V']; % Se crea funcion para
poder llamar los valores requeridos en las etiquetas
legend(str1,str2,str3); %Se manda a llamar etiquetas
legend('boxoff'); %Sirve para encuadrar a las etiquetas
xlabel('Resistencia[Ohms]'); % Se pone texto en el eje de las x para poder poner
etiquetas a la tabla
ylabel('Potencia [W]'); % Se pone texto en el eje de las y para poder poner
etiquetas a la tabla
title('Máxima Transferencia de Potencia por Abraham Villafuerte'); % Se pone
titulo a la tabla

También podría gustarte