Professional Documents
Culture Documents
INTRODUCCIÓN A LAS
GUÍA 4
DISEÑO DE FILTROS Y ECUALIZADOR DIGITAL
I. OBJETIVO
Diseñar filtros de respuesta en frecuencia de audio y determinar sus características en
el dominio del tiempo y de la frecuencia. Asimismo, diseñar ecualizadores digitales de
audio frecuencia usando MATLAB.
II. PROCEDIMIENTO
Fs=8000;
t=(1:8000)/Fs;
f1=sin(2*pi*t*500); f2=sin(2*pi*t*1500); f3=sin(2*pi*t*3000);
f4=sin(2*pi*t*4000);
s=f1+f2+f3+f4;
figure(1)
plot(t,s)
axis([0 0.01 -4 4]);
[b,a]=ellip(4,0.1,40,[100 1000]*2/Fs);
[H,w]=freqz(b,a,512);
figure(2)
plot(w*Fs/(2*pi),abs(H));
sf1=filter(b,a,s);
figure(3)
plot(t,sf1);
xlabel('tiempo(seg)');ylabel('Forma de onda vs Tiempo')
axis([0 0.01 -4 4]);
S1=fft(s,513);
SF1=fft(sf1,513);
w=(0:255)/256*(Fs/2);
figure(4)
plot(w,abs(S1(1:256)),w,abs(SF1(1:256)));
xlabel('Frecuencia (Hz)'); ylabel('Mag. de Transf. de Fourier');
%
[b,a]=ellip(4,0.1,40,[1000 2000]*2/Fs);
[H,w]=freqz(b,a,512);
figure(5)
plot(w*Fs/(2*pi),abs(H));
sf2=filter(b,a,s);
figure(6)
plot(t,sf2);
xlabel('Tiempo (seg)'); ylabel('Forma de onda vs Tiempo')
axis([0 0.01 -4 4]);
S2=fft(s,513);
SF2=fft(sf2,513);
w=(0:255)/256*(Fs/2);
figure(7)
plot(w,abs(S2(1:256)),w,abs(SF2(1:256)));
xlabel('Frecuencia (Hz)'); ylabel('Mag. de Transf. de Fourier');
[b,a]=ellip(4,0.1,40,[2500 3500]*2/Fs);
[H,w]=freqz(b,a,512);
figure(8)
plot(w*Fs/(2*pi),abs(H));
sf3=filter(b,a,s);
figure(9)
plot(t,sf3);
xlabel('Tiempo (seg)'); ylabel('Forma de onda vs Tiempo')
axis([0 0.01 -4 4]);
S3=fft(s,513);
SF3=fft(sf3,513);
w=(0:255)/256*(Fs/2);
figure(10)
plot(w,abs(S3(1:256)),w,abs(SF3(1:256)));
xlabel('Frecuencia (Hz)'); ylabel('Mag. de Transf. de Fourier');
%
Fs=10000;
[b,a]=ellip(4,0.1,40,[3500 4000]*2/Fs);
[H,w]=freqz(b,a,512);
figure(11)
plot(w*Fs/(2*pi),abs(H));
sf4=filter(b,a,s);
figure(12)
plot(t,sf4);
xlabel('Tiempo (seg)'); ylabel('Forma de onda vs Tiempo')
axis([0 0.01 -4 4]);
S4=fft(s,513);
SF4=fft(sf4,513);
w=(0:255)/256*(Fs/2);
figure(13)
plot(w,abs(S4(1:256)),w,abs(SF4(1:256)));
xlabel('Frecuencia (Hz)'); ylabel('Mag. de Transf. de Fourier');
%
zf5=0.8*sf1+0.5*sf2+0.2*sf3+0.4*sf4;
figure(14)
plot(t,zf5);
xlabel('Tiempo (seg)'); ylabel('Forma de onda vs Tiempo')
axis([0 0.01 -4 4]);
S5=fft(s,513);
SF5=fft(zf5,513);
w=(0:255)/256*(Fs/2);
figure(15)
plot(w,abs(S5(1:256)),w,abs(SF5(1:256)));
xlabel('Frecuencia (Hz)'); ylabel('Mag. de Transf. de Fourier');
w=(0:255)/256*(Fs/2);
figure(16)
plot(w,abs(S5(1:256))+abs(SF5(1:256)));
xlabel('Frecuencia (Hz)'); ylabel('Mag. de Transf. de Fourier');
%%
%
2. Verificar la respuesta en frecuencia de otros filtros.