10
UNIVERSIDAD DE GUANAJUATO ALGORITMOS Y APLICACIONES DE PROCESAMIENTO DIGITAL DE SEÑALES DISEÑO DE FILTROS FIR FILTROS PASABANDA USANDO VENTANA DOLPH-CHEBYSHEV Y KAISER DANIEL CHÁVEZ GARCÍA

examen dsp

Embed Size (px)

DESCRIPTION

examen dsp filtros digitales universidad de guanajuato

Citation preview

INTRODUCCIN

UNIVERSIDAD DE GUANAJUATO

ALGORITMOS Y APLICACIONES DE PROCESAMIENTO DIGITAL DE SEALES

DISEO DE FILTROS FIR

FILTROS PASABANDA USANDO VENTANA DOLPH-CHEBYSHEV Y KAISER

DANIEL CHVEZ GARCA

INTRODUCCIN

Los filtros son sistemas que se disean para eliminar ciertas componentes no deseadas de una seal. Estas componentes no deseadas se describen en funcin de sus contenidos en frecuencias. Se conocen usualmente dos tipos de filtros que se eligen segn las necesidades y la naturaleza del problema. Estos filtros se les conocen como FIR e IIR.

Los filtros FIR son ms rpidos que los IIR y tienen una repuesta de fase lineal.

Los filtros de respuesta finita al impulso (FIR finite impulse response) tienen la ventaja de ser utilizados con facilidad y poseer fase lineal para una respuesta al impulso par o impar, a esta propiedad se le llama simetra. Otra de las caractersticas que debe de tener un filtro FIR es que debe ser causal, esto significa que debe tener un retrazo hacia los positivos y no debe existir seal en frecuencias negativas.

La tcnica de diseo de ventaneo se basa en a la respuesta de un filtro aplicarle la ventana deseada por medio de una multiplicacin de sus ecuaciones, la ventana hace que en el filtro real diseado se tengan menos variaciones de transicin o supresin y con esto se logre un filtrado ms efectivo.

VENTANA Dolph-Chebyshev

Una ventana verstil es la de Dolph-Chebyshev, y est dada por la siguiente frmula:

para:

n=0,1,2,,(N-1)/2

donde:

r: relacin de rizo deseada.

La obtencin del grado del filtro viene definida por la siguiente ecuacin:

donde

VENTANA KAISER

La ventana de Kaiser es una de las ventanas ms utilizadas en el diseo de filtros, ya que permite controlar las caractersticas de discriminacin del filtro y su selectividad mediante la seleccin adecuada de sus parmetros. La expresin que define la Ventana de Kaiser es la siguiente:

Donde:

I0 : es la Funcin Modificada de Bessel de primera especie y orden cero

: es un parmetro real ajustable que permite controlar la discriminacin del filtro

M : es la longitud de la ventana

variacin de la forma de las ventanas Kaiser segn

Existen formulas para estimar y la longitud del filtro N, a partir de las especificaciones de la atenuacin mnima (A=as)

Para obtener el grado del filtro N.

Para disear filtros FIR usando la ventana de Kaiser se utiliza el siguiente procedimiento:

Establecer las especificaciones de la respuesta en frecuencia deseada, definiendo los valores de la frecuencia limite de la banda de paso p, la frecuencia limite de la banda de rechazo s y la atenuacin mnima en la banda de rechazo as.

Encontrar la frecuencia de corte del filtro pasa banda.

Determinar N a partir de los valores de as y f, seleccionando el entero impar mayor al que resulta de la estimacin de N. Con este valor de N se calcula M con la siguiente expresin:

se calcula de la expresin definida anteriormente usando el valor de as.

A partir de la respuesta al impulso del filtro pasa-banda y de la ventana de Kaiser se obtienen los coeficientes de la respuesta al impulso del filtro FIR.

PROBLEMAS

1. Disear un filtro FIR a travs de una ventana ajustable Dolph-Chebyshev con las siguientes caractersticas:

f1=4KHz

fp= (f1+f2)/2

Fsamp=48KHz

f2=8KHz

fs= (f3+f4)/2

f3=16KHz

Ap=3dB

f4=22KHz

As=100dB

2. Disear el mismo filtro aplicando la ventana de Kaiser.

La funcin h para el filtro pasa-bandas es:

CDIGO PARA LA VENTANA CHEBYSHEV

clear all

Fsamp=48000;

Fp1=4000;

Fs1=8000;

Fp2=16000;

Fs2=22000;

Ap=3.00;

As=100.00;

Fp=(Fp1+Fs1)/2

Fs=(Fp2+Fs2)/2

N=ceil((2.056*As-16.4)*Fsamp/(2.285*2*pi*(Fs-Fp)))

M=floor(N/2)

n=-M:M;

F=0:Fsamp/1999:Fsamp/2;

h=2*(Fp/Fsamp)*sinc(2*(Fp/Fsamp)*(n-( (M-1)/2 )))-2*(Fs/Fsamp)*sinc(2*(Fs/Fsamp)*(n-(M-1)/2));

H=h*exp(-2*pi*1j*n'*F/Fsamp);

subplot(3,2,1);

stem(n,h);

title('Respuesta al impulso filtro')

grid on;

subplot(3,2,2);

plot(F,20*log10(abs(H)));

title('Ganancia pasa-banda')

grid on;

delta_s=10^(-As/20);

delta_p=1-10^(-Ap/20);

gamma=abs(delta_s)

beta=cosh(acosh(1/gamma)/(2*M))

k=1:M;

x=beta*cos(k*pi/(2*M+1));

l=2*M;

VectorT=T(l,x);

VectorCos=cos(2*pi*n'*k/(2*M+1));

w=(1/gamma+2*VectorT*VectorCos')/(2*M+1);

w=w/max(w);

W=w*exp(-2*pi*1j*n'*F/Fsamp);

subplot(3,2,3);

stem(n,w);

title('Ventana Dolph-Chebyshev');

grid on;

subplot(3,2,4);

plot(F,20*log10(abs(W)/max(abs(W))));

title('Ganancia Ventana');

grid on;

hw=h.*w;

HW=hw*exp(-2*pi*1j*n'*F/Fsamp);

subplot(3,2,5);

stem(n,hw);

title('Ventana aplicada al filtro')

grid on;

subplot(3,2,6);

plot(F,20*log10(abs(HW)));

title('Ganancia Ventana aplicada al filtro')

grid on;

RESULTADOS Y GRFICAS

N =49

M =24

gamma =1.0000e-005

beta =1.0325

CDIGO PARA LA VENTANA KAISER

clear all

clc

Fsamp=48000;

Fp1=4000;

Fs1=8000;

Fp2=16000;

Fs2=22000;

Ap=3.00;

As=100.00;

Fp=(Fp1+Fs1)/2

Fs=(Fp2+Fs2)/2

N=ceil(Fsamp*(As-8)/(2.285*2*pi*(Fs-Fp)))

M=floor(N/2)

n=-M:M;

F=0:Fsamp/1999:Fsamp/2;

h=2*(Fp/Fsamp)*sinc(2*(Fp/Fsamp)*(n-( (M-1)/2 )))-2*(Fs/Fsamp)*sinc(2*(Fs/Fsamp)*(n-(M-1)/2));

H=h*exp(-2*pi*1j*n'*F/Fsamp);

subplot(3,2,1);

stem(n,h);

title('Respuesta al impulso filtro')

grid on;

subplot(3,2,2);

plot(F,20*log10(abs(H)));

title('Ganancia pasa-banda')

grid on;

if As>50

beta=0.1102*(As-8.7);

elseif As