Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
I. OBJETIVO:
1. MATLAB
2. PC Pentium II-actual.
III. PROCEDIMIENTO:
1. Disee un ecualizador digital usando el comando ELLIP y grafique las ondas en el dominio
del tiempo y su respectiva transformada de Fourier. dibuje el esquema de bloques
correspondiente del ecualizador resultante.
>> 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]);
>> N=8;
>> [Bh,Ah]=yulewalk(N,f,H);
>> n=256;
>> hh=freqz(Bh,Ah,n);
>> hy=abs(hh);
>> ff=fs/(2*n)*(0:n-1);
>> figure(2)
>> plot(fhz,H,ff,hy)
>> title('Actual vs Desired Frequency Response')
>> xlabel('Frequency (Hz)'), ylabel('Magnitude')
3. De acuerdo al ejercicio anterior (1), disee un ecualizador digital de cuatro canales, usando los filtros
IIR, si la seal de entrada es f=sin(2*pi*t*500)+ sin(2*pi*t*1500)+ sin(2*pi*t*2500)+ sin(2*pi*t*3500).
Grafique la onda resultante en cada etapa del ecualizador en el dominio del tiempo y en el dominio de la
frecuencia.
>> %Introduciendo la tasa de muestreo
>> Fs=8000; %FMAX=3500Hz
>> t=(1:8000)/Fs;
>> %Filtro f1
>> BW1=[100 1000]*2/Fs; %ancho de banda normalizado respecto a la freq de Nyquist
>> [b,a]=ellip(N,Rp,Rs,BW1); %Filtro Eliptico
>> [H,w]=freqz(b,a,512); %respuesta en frecuencia del filtro
>> H=H*0.3;%ganancia del filtro
>> figure(2)
>> plot(w*Fs/(2*pi),abs(H));
>> title('RESPUESTA EN FRECUENCIA DEL FILTRO 1')
>> xlabel('FRECUENCIA(Hz)');ylabel('GANANCIA');
>> sf1=filter(b,a,s); % Filtra el contenido de "s" con lo descrito por los vectores b y a
>> 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)+SF1(1:256)]));
>> xlabel('FRECUENCIA(Hz)');ylabel('MAG. DE TRANSF. DE FOURIER');
>> %Filtro f2
>> BW2=[1000 2000]*2/Fs;
>> [b,a]=ellip(N,Rp,Rs,BW2);
>> [H,w]=freqz(b,a,512);
>> H=H*1.5;
>> figure(5)
>> plot(w*Fs/(2*pi),abs(H));
>> title('RESPUESTA EN FRECUENCIA DEL FILTRO 2')
>> xlabel('FRECUENCIA(Hz)');ylabel('GANANCIA');
>> 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)+SF2(1:256)]));
>> xlabel('FRECUENCIA(Hz)');ylabel('MAG. DE TRANSF. DE FOURIER');
>> %Filtro f3
>> BW3=[2000 3000]*2/Fs;
>> [b,a]=ellip(N,Rp,Rs,BW3);
>> [H,w]=freqz(b,a,512);
>> H=H*0.1;
>> figure(8)
>> plot(w*Fs/(2*pi),abs(H));
>> title('RESPUESTA EN FRECUENCIA DEL FILTRO 3')
>> xlabel('FRECUENCIA(Hz)');ylabel('GANANCIA');
>> 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)+SF3(1:256)]));
>> xlabel('FRECUENCIA(Hz)');ylabel('MAG. DE TRANSF. DE FOURIER');
>> %Filtro f4
>> BW4=[3000 3999]*2/Fs;
>> [b,a]=ellip(N,Rp,Rs,BW4);
>> [H,w]=freqz(b,a,512);
>> H=H*0.8;
>> figure(11)
>> plot(w*Fs/(2*pi),abs(H));
>> title('RESPUESTA EN FRECUENCIA DEL FILTRO 4')
>> xlabel('FRECUENCIA(Hz)');ylabel('GANANCIA');
>> 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)+SF4(1:256)]));
>> xlabel('FRECUENCIA(Hz)');ylabel('MAG. DE TRANSF. DE FOURIER');
>> %ECUALIZADOR
>> zf5= 0.3*sf1 + 1.5*sf2 + 0.1*sf3 + 0.8*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);
>> ZF5=fft(zf5,513);
>> w=(0:255)/256*(Fs/2);
>> figure(15)
>> plot(w,abs([S5(1:256)+ZF5(1:256)]));
>> xlabel('FRECUENCIA(Hz)'), ylabel('MAG. DE TRANSF. DE FOURIER')
CUESTIONARIO FINAL
Usar la DFT implica que el segmento que se analiza es un nico perodo de una seal
peridica que se extiende de forma infinita; si esto no se cumple, se debe usar una ventana para
reducir los espurios del espectro. Por la misma razn, la DFT inversa (IDFT) no puede
reproducir el dominio del tiempo completo, a no ser que la entrada sea peridica
indefinidamente. Por eso, se dice que la DFT es una transformada de Fourier para anlisis de
seales de tiempo discreto y dominio finito. Las funciones sinusoidales base que surgen de la
descomposicin tienen las mismas propiedades.
Los algoritmos FFT se utilizan tan habitualmente para calcular DFTs que el trmino
"FFT" muchas veces se utiliza en lugar de "DFT" en lenguaje coloquial. Formalmente, hay una
diferencia clara: "DFT" hace alusin a una transformacin o funcin matemtica,
independientemente de cmo se calcule, mientras que "FFT" se refiere a una familia especfica
de algoritmos para calcular DFTs.
2 i
Donde i es la unidad imaginaria y e N es la N-sima raz de la unidad. (Esta
expresin se puede escribir tambin en trminos de una matriz DFT; cuando se escala de forma
apropiada se convierte en una matriz unitaria y X k puede entonces ser interpretado como los
coeficientes de x en una base ortonormal). La transformada se denota a veces por el smbolo
F , igual que en X =F { x } o F ( x ) o F x . La transformada inversa de Fourier
discreta (IDFT) viene dada por:
N 1 2 i
1 kn
x n=
N
Xk e N
n=0, , N 1
k=0
2 2
A k =|X k|= ( X k ) + ( X k ) k =arg ( X k ) =atan2 ( ( X k ) , ( X k ) )
El convenio del signo negativo en el exponente suele ser adecuado porque significa que
Xk es la amplitud de una "frecuencia positiva" 2 k / N . De forma equivalente, la DFT
se suele considerar como un filtro adaptado: cuando se busca una frecuencia de +1, se correla la
seal de entrada con una frecuencia de 1. En adelante, los trminos "secuencia" y "vector" se
considerarn equivalentes.
EJEMPLOS.-
Figura (3)
Obtener la FFT de una seal exponencial modulada en amplitud con una frecuencia portadora
de 200 Hz. N es el nmero de puntos de muestreo durante D segundos de la seal. Se requiere
una frecuencia de muestreo de por lo menos 400 Hz, N/D>400
>> figure(2);
>> plot(f,Xm,'-r')
>> title('Mdulo de los coeficientes espectrales de x(t)');
>> xlabel('Frecuencia (Hz)');ylabel('|X[k]|');
>> figure(3);
>> stem(f,Xf,'-b');zoom;
>> title('Fase de los coeficientes espectrales X[k]');
>> xlabel('Frecuencia (Hz)');ylabel('Fase X[k]');