Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
𝑅1𝑅2𝐶1𝑠
𝐻1 =
𝑅1𝑅2𝑅3𝐶1𝐶2𝑠 2 + 𝑠(𝑅1𝑅3𝐶1 + 𝑅1𝑅3𝐶2) + 𝑅1 + 𝑅3
1.55632𝑠
𝐻1 =
61.12151 ∗ 10−6 𝑠 2 + 𝑠(17.452317 ∗ 10−3 + 226.8801 ∗ 10−3 ) + 5.777𝐾 + 1.007𝐾
𝐻2
𝐾𝑅3𝑅2𝐶1𝑠
=
𝑅1𝑅2𝑅3𝐶1𝐶2𝑠 2 + 𝑠(𝑅1𝑅2𝐶1 + 𝑅1𝑅2𝐶2 + 𝑅2𝑅3𝐶1 + 𝑅1𝑅3𝐶1 − 𝐾𝑅1𝑅3𝐶1) + 𝑅1 + 𝑅2
𝐾4.5166176𝑠
𝐻2 =
2.277 ∗ 10−3 𝑠 2 + 𝑠(48.829 − 𝐾11.7589) + 84.04𝐾 + 32.28𝐾
𝐻 = 𝐻1 ∗ 𝐻2
PROGRAMA MATLAB
% Script que muestra como graficar la función de transferencia de cualquier
% sistema en el dominio de la frecuencia (f)
% El script usa como ejemplo un filtro paso bajo de dos polos
% Desarrollado por Ing. Juan Inga Ortega, Docente
%
clearvars;
close all;
clc;
% -------------------------------------------------------------------------
% CONFIGURACIONES INICIALES - PARAMETROS
% -------------------------------------------------------------------------
fs = 100e3; % Frecuencia de muestreo
N = 4096; % Número de muestras
fmax = fs / 2; % Calcula la frecuencia maxima que se puede visualizar
% según Nyquist
%% H1(S)
R1=5.777e3; R2=1.007e3; R3=89.8e3;
C1=3e-9; C2=39e-9;
H=H1.*H2;
% -------------------------------------------------------------------------
% Gr?fica de la Func. de Transferencia (en t?rminos de f) Bode
% -------------------------------------------------------------------------
% Note que no hace falta dividir para N a la variable H, ya que H se ha
% calculado directamente en el dominio de f y no se aplico la FFT
magH = abs(H);
faseH = angle(H)*180/pi; % se calcula la fase en grados para este caso
figure(1)
subplot(211)
plot(f,magH);
grid on; grid minor;
xlabel('Frecuencia [Hz]');ylabel('|H(f)| [V/Hz]');
legend (sprintf('Espectro de Magnitud'),'location','NW');
set(gca,'FontName','Times New Roman', 'FontSize',10); % tipo de letra del eje
axis([-10e3 10e3 0 max(magH)])
subplot(212)
plot(f,faseH)
grid on; grid minor;
xlabel('Frecuencia [Hz]');ylabel('\angleH(f)[Grados ?]');
legend (sprintf('Espectro de Fase'),'location','NW');
set(gca,'FontName','Times New Roman', 'FontSize',10); % tipo de letra del eje
% -------------------------------------------------------------------------
% Gr?fica de la Func. de Transferencia (en t?rminos de f) Bode
% -------------------------------------------------------------------------
% Note que no hace falta dividir para N a la variable H, ya que H se ha
% calculado directamente en el dominio de f y no se aplico la FFT
magH = abs(H);
faseH = angle(H)*180/pi; % se calcula la fase en grados para este caso
figure(2)
subplot(211)
semilogx(f(N/2+1:end),(magH(N/2+1:end)));
grid on; grid minor;
xlabel('Frecuencia [Hz] (En Escala Logar?tmica)');ylabel('|H(f)| [V/Hz]');
legend (sprintf('Espectro de Magnitud\n solo Frec.
Positivas'),'location','SW');
set(gca,'FontName','Times New Roman', 'FontSize',10); % tipo de letra del eje
subplot(212)
semilogx(f(N/2+1:end),faseH(N/2+1:end))
grid on; grid minor;
xlabel('Frecuencia [Hz] (En Escala Logar?tmica)');ylabel('\angleH(f)[Grados
?]');
legend (sprintf('Espectro de Fase\n solo Frec. Positivas'),'location','SW');
set(gca,'FontName','Times New Roman', 'FontSize',10); % tipo de letra del eje
X = fft(x);
Y = X.* H;
y = ifft(Y);
y = real (y);
figure()
plot(t,y,'LineWidth',2)
grid on; grid minor;
axis ([0 0.1 min(y) max(y)])
xlabel('tiempo [seg] ');ylabel('y(t) [V]');
legend (sprintf('Salida-> y(t)=x(t)*h(t)'),'location','SE');
set(gca,'FontName','Times New Roman', 'FontSize',10); % tipo de letra del eje
RESULTADOS:
G