Body: Respuesta al impulso
Es la salida de un sistema cuando la entrada es un impulso unitario
En MATLAB, se pueden generar impulsos de varias maneras: imp = [1; zeros(49,1)];
Si se tiene el filtro con b = 1 a = [1 –0.9], su respuesta al impulso es:
h = filter(b,a,imp);
O, se puede usar la función de MATLAB
impz(b,a)
Body: Dominio de la frecuencia
Se usan las transformadas discretas
Fourier:
transformada de Fourier de tiempo discreto
transformada discreta de Fourier (DFT)
transformada rápida de Fourier (FFT)
Transformada z
Body: Las transformadas junto con las transformadas inversas proporcionan la relación entre la representación en el dominio del tiempo y de la frecuencia.
Los dos dominios proporcionan información complementaria de los mismos datos
En algunas aplicaciones suele usarse más la información de un dominio que del otro
En filtrado es particularmente útil la información en el dominio de la frecuencia
Body: La transformada de Fourier de tiempo discreto de la señal x(n):
produce el espectro X(w) de x(n)
si x(n) es periódica —> serie de Fourier y el espectro es discreto
si x(n) es no periódica —> transf. de Fourier y el espectro es continuo
Body: En la mayoría de las aplicaciones x(n) es no periódica —> espectros continuos:
Los espectros continuos no se pueden representar exactamente en una computadora digital
Solo se pueden representar por medio de sus muestras adecuadamente espaciadas
La transformada de Fourier de tiempo discreto no se puede implementar en una computadora digital. Entonces se desarrolla:
Body: La transformada discreta de Fourier (DFT) de x(n) es:
Son N muestras del espectro original que es continuo
Son muestras para valores discretos de frecuencia
Body: El número mínimo de muestras es N (que es el número de muestras de la señal de tiempo discreto)
Para obtener una buena representación del espectro real, es necesario tener un número suficiente de muestras, normalmente un número mayor que N
Como el cálculo de la DFT involucra muchas multiplicaciones, es computacionalmente costoso. Se desarrolló la:
Body: La transformada rápida de Fourier (FFT)
es un algoritmo que implementa la DFT
es muy eficiente, reduce el número de operaciones aritméticas
usa el hecho de que la DFT tiene simetrías
existen varios algoritmos
En MATLAB la función que realiza la FFT es fft,
mientras que ifft implementa la transformada rápida inversa
Body: Respuesta en frecuencia
La respuesta en frecuencia del filtro con función de transferencia H(z) es:
La función freqz usa un algoritmo basado en FFT based algorithm para calcular la respuesta en frecuencia de un filtro digital
Body: La sentencia: [h,w] = freqz(b,a,n)
regresa n puntos de la respuesta en frecuencia compleja del filtro digital
regresa el vector h de respuesta en frecuencia compleja y el vector w de frecuencias en rad/seg
Body: Ejemplo: Se encuentran 256 puntos de la respuesta en frecuencia de un filtro Chebyshev de orden 12. Se usa en freqz una frecuencia de muestreo de 1000 Hz
[b,a] = cheby1(12,0.5,200/500);
[h,f] = freqz(b,a,256,1000);
Body: Normalización en frecuencia
Normalmente se usa la convención de que la frecuencia unitaria es la frecuencia de Nyquist
La frecuencia de Nyquist se define como la mitad de la frecuencia de muestreo
La frecuencia de corte de los filtros es normalizada por la frecuencia de Nyquist
Así, para un sistema con una frecuencia de muestreo de 1000Hz, la frecuencia 300 Hz es 300/500 = 0.6 (frecuencia normalizada)
Body: Magnitud y Fase
La respuesta en frecuencia de sistemas como los filtros suelen ser cantidades complejas
Para analizar su comportamiento es necesario graficar la respuesta en frecuencia
Lo que se hace es observar una cantidad real: la magnitud de la respuesta en frecuencia y su fase
Para ello se usan las funciones abs y phase
Body: Ejemplo: Filtro Butterworth
[b,a] = butter(6,300/500);
[h,w] = freqz(b,a,512,1000);
m = abs(h);
p = angle(h);
semilogy(w,m);
plot(w,p*180/pi)
Body: Obtención de los coeficientes de filtros digitales
En MATLAB existen las funciones:
buttord, butter
cheb1ord, cheby1
cheb2ord, cheby2
ellipord, ellip
fir1, fir2
remezord, remez
Body: Al trabajar con frecuencias normalizadas, el rango de frecuencias para los filtros digitales queda restringido al rango:
0<2?, o -?<2?, o -?< ?, en radianes/muestra
Página anterior | Volver al principio del trabajo | Página siguiente |