% Archivo M: mag_.m % Archivo-M para calcular y graficar la coriente % de magnetización de un transformador 230/115 operando a % 230 volts y 50/60 Hz. Este programa también calcula % el valor rms de la corriente magnetizante. % Abrir la curva de magnetización. En ella hay dos % columnas, con la primer columna corresponde a la fmm(A.Vuleta) % y la segunda corresponde al flujo(Wb). load mag_curva_1.dat; fmm_data = mag_curva_1(:,1); flujo_data = mag_curva_1(:,2); % Valores iniciales VM = 325; % Voltaje maximo (V) NP = 850; % Vueltas primario VM = 230; % Voltaje maximo (V) NP = 600; % Vueltas primario % Calcular la velocidad angular para 60hz. freq = 60; % Freq (Hz) w = 2 * pi * freq; % Calulca el flujo versus tiempo tiempo = 0:1/3000:1/30; % 0 a 1/30 seg flujo = -VM/(w*NP) * cos(w .* tiempo); % Calucla la fmm correspondiente para un flujo dado % usando la función de interpolación. fmm = interp1(flujo_data,fmm_data,flujo); % Calula la corriente de magnetización im = fmm / NP; % Calcula el valor rms de la corriente irms = sqrt(sum(im.^2)/length(im)); disp(['La corriente rms a 60 hz es ', num2str(irms)]); % Grafica la corriente de magnetización. figure(1) subplot(2,1,1); plot(tiempo,im); title ('\bfCurva de magnetización a 60 hz'); xlabel ('\bfTiempo (s)'); ylabel ('\bf\itI_{m} \rm(A)'); axis([0 0.04 -2 2]); grid on; % Calcula la velocidad angular a 50 hz freq = 50; % Freq (Hz) w = 2 * pi * freq; % Calula el flujo versus en tiempo tiempo = 0:1/2500:1/25; % 0 a 1/25 seg flujo = -VM/(w*NP) * cos(w .* tiempo); % Calcula la fmm correspondiente a un flujo dado % usando la función de interpolación. fmm= interp1(flujo_data,fmm_data,flujo); % Calcula la corriente de magnetización im = fmm / NP; % Calcula el valor rms de la corriente de magnetización irms = sqrt(sum(im.^2)/length(im)); disp(['El valor rms de la corriente a 50 hz es ', num2str(irms)]); % Grafica la corriente de magnetización. subplot(2,1,2); plot(tiempo,im); title ('\bfCurva de magnetización a 50 hz'); xlabel ('\bfTiempo (s)'); ylabel ('\bf\itI_{m} \rm(A)'); axis([0 0.04 -2 2]); grid on;