Está en la página 1de 43

UNIVERSIDAD TCNICA PARTICULAR DE LOJA

La Universidad Catlica de Loja


Electrnica y Telecomunicaciones
Electrnica de Radiofrecuencia


Prctica: Diseo de filtros IIR (Infinite Inpulse Response).
Nmero: 2.
Profesores:
Ing. Manuel Quiones Cuenca.
Fecha: 08/04/2014
Integrantes:
1)
2)
3)

1. Resumen
Durante esta prctica se va a disear e implementar filtros (tomando como base
los IIR), por medio del uso de herramientas de software para evaluar sus
caractersticas y propiedades, y los diferentes mtodos dedicados para este
propsito; para aplicarlos en receptores y transmisores. Finalmente les invito
estimados estudiantes a empezar con optimismo la presente prctica.

2. Objetivos
Disear e implementar algoritmos que modelan el comportamiento de los
filtros IIR.
Diseo de modelos especficos para filtros pasa-bajos, pasa-altos, pasa-
banda, rechaza banda.
Entender la importancia de usar filtros en transmisores y receptores.

3. Reglas generales para el desarrollo de las Prcticas de Laboratorio.

Las presentaciones de resultados deben ser originales, es decir, se
sancionar a los equipos o autores de prcticas idnticas.
El da de entrega de la prctica debe ser en formato electrnico y subido
al sistema EVA (Subir informe y archivos generados)
Durante revisin de la prctica, se verificara los resultados y las
conclusiones que hayan obtenido con el fin de corroborar los objetivos de
la prctica se haya logrado.

4. Desarrollo de laboratorio

A continuacin se presenta un tutorial, que nos llevar al final de desarrollo de
sistemas de filtros IIR (Infinite Impulse Response).

Se mostrar algunos ejemplos de diseo, en los cuales, usted deber completar
una tarea de diseo final, y obtener sus conclusiones (documentar).

1. Introduccin.

El problema de disear filtro digitales, involucra que se logre
determinara un conjunto de coeficientes del filtro, los cuales cumplan con las
especificaciones del diseo. Estas especificaciones tpicamente consisten en el
ancho de la(s) banda(s) pasante y su correspondiente ganancia, en el ancho
de la(s) banda(s) de rechazo y la atenuacin en la misma; las frecuencias en
las bandas de borde (las cuales indican la banda de transicin) y el rizo de
pico tolerable en la banda pasante y en la banda de rechazo.

El diseo de filtros IIR est estrechamente relacionado al diseo de filtros
analgicos, los mismos que tienen un fuerte respaldo en la literatura (Libros con
basta informacin de diseo de filtros analgicos). Usualmente se disea un
filtro analgico, para luego llevar a cabo su transformacin en el dominio
digital. Existen dos mtodos de transformacin: la transformacin de invarianza
en el impulso y el mtodo de la transformacin bilineal. En este tutorial se har
uso de la transformacin bilineal.

En el diseo de filtros IIR, se logran caractersticas de orden (N) ms
bajos que en sus correspondientes filtros FIR (Finite Impulse Response). A
continuacin se trabajar con filtros Butterworth, Chevyshev I y II; y filtros
Elpticos en pasabajos. Y luego se realizar el procedimiento para el diseo de
otro tipo de filtros (pasa-altos, pasa-banda, rechaza-banda).

2. Tcnicas de mapeo para cambio de analgico a dominio digital.

Los filtros digitales se disean usando valores pasados de la salida y
valores presentes de la entrada, por medio de la convolucin. La respuesta
de este filtro puede ser infinita en duracin; por tal motivo su
denominacin. La respuesta al impulso infinita implica la habilidad del filtro
de tener una respuesta al impulso infinita. Esto indica que el filtro es
propenso a la retroalimentacin y a la inestabilidad.

Se estudiar algunos tipos de filtros IIR incluyendo el filtro Butterworth,
Chevyshev I & II y los filtros Elpticos, pasa-bajos, pasa-altos, pasa-banda.
Los filtros IIR se disean bsicamente por los mtodos de Invarianza en
Impulso y el mtodo de transformacin Bilineal.
2.1. Invarianza en el Impulso.

Este procedimiento envuelve la eleccin de la respuesta del filtro
digital como una versin muestreada equi-espaciada de un filtro
analgico.

a. Primer paso.- se decide sobre la respuesta en frecuencia
deseada.
b. Segundo paso.- se disea un filtro analgico apropiado.
c. Tercer paso.- clculo de la respuesta al impulso de este filtro
analgico.
d. Curato paso.- Muestreo de la respuesta al impulso del filtro
analgico.
e. Quinto paso.- Uso del resultado como coeficientes del filtro.

El mtodo de invarianza en impulso mapea la porcin izquierda del
plano-s en el interior del circulo unitario y la porcin hacia la derecha del
plano-s en el exterior del circulo unitario. A partir de las caractersticas de
cualquier filtro analgico se sabe que no puede haber interferencia de
banda limitada esta es una de las mayores consideraciones. Debido al
aliasing presente en el muestreo la respuesta de la frecuencia digital es
distinta de la respuesta en frecuencia de los filtros analgicos. A partir de
eso es que la distorsin de la respuesta en fase es uno de los mayores
factores limitantes de su implementacin mientras que su ventaja est en el
hecho de que hay una relacin lineal entre el sistema analgico y digital
con respecto a su respuesta en magnitud. Para prevenir estas distorsiones
debido a la limitacin de banda este mtodo se restringe al diseo de
filtros pasa-bajo y pasa-banda.

2.2. Transformacin bilineal.

El mtodo de la Transformada Bilineal, supera el efecto del aliasing,
que es causado debido a la respuesta en frecuencia analgica que
contiene componentes que estn en, o ms all de la Frecuencia de
Nyquist. La transformada bilineal es un mtodo de compresin del infinito,
directamente desde el eje de frecuencia analgica a una de longitud
finita, la cual se reforma alrededor del crculo unitario una sola vez. Algunas
veces se la conoce como deformacin en frecuencia (frequency
warping). Esta introduce una distorsin en la frecuencia. Se trata de
deshacer por medio de pre-deformaciones las frecuencias crticas del filtro
anlogo (frecuencia de corte y frecuencia central) tal como cuando los
filtros analgicos se transforman en filtro digitales, el filtro digital diseado
deber cumplir con ciertas especificaciones deseadas.

Considere un filtro analgico:


()

()


El sistema puede ser caracterizado por una ecuacin diferencial:

() () () ()

Supongamos la aproximacin de la integral en vez de la derivada

()

) ()

Podemos aproximar la integral usando la frmula Trapezoidal

()

()

( )] ( ) ()


A partir de la ecuacin diferencial, podemos sustituir por y(t)

() () () ()

Podemos sustituir esto en la regla trapezoidal y escribimos

(

) () (

) ( )

[() ( )] ()

Obtenemos la transformada-z:

(

) () (

()

)() ()

La cual se simplifica a:

()
()
()

)
()



Se puede observar que el mapeo es el siguiente:

() ()

) ()

Este mapeo es conocido como la transformada Bilineal.

Resolviendo esta ecuacin para y, obtenemos:

(


) ()

Esta transformacin es conocida como Bilineal. La transformada de
Laplace en las expresiones del filtro es remplazada por las correspondientes
transformadas z.

Remplazando s = + j y ejecutando las manipulaciones
algebraicas, substituyendo z = e
j
obtenemos:

) ()

Se puede ver que el componente anlogo de DC (s = 0) mapea al
contenido DC digital (z = 1) y la frecuencia analgica ms alta (s = )
mapea a la frecuencia digital ms alta (z = -1). Es fcil mostrar que todo el
eje j en el plano s es mapeado exactamente una vez alrededor del
crculo unitario en el plano z. Por lo tanto, este no tiene alias. Con (2/T)
como real y positivo, la mitad izquierda del plano s mapea al crculo
unitario interior, y la mitad derecha del plano s mapea fuera del crculo
unitario.

La constante provee un grado permanente de libertad que puede
ser utilizado para mapear cualquier frecuencia finita en particular el eje j
en el plano s a una particular ubicacin deseada sobre el circulo unitario
e
j
en el plano z. Todas las otras frecuencias sern deformadas. En
particular, aproximando la mitad de la tasa de muestreo, el eje de
frecuencia se comprime ms y ms. Los filtros tienen una simple transicin
en frecuencia, tal como los filtros pasa-bajos y pasa-altos, mapeando
sutilmente bajo la transformada bilineal; usted mapea simplemente la
frecuencia que le corresponde, y podemos apreciar que se obtiene una
muy buena respuesta. En particular, equal ripple (de rizo igual), el cual
preserva lo ptimo de los filtros tipo Elptico y Chevyshev porque los valores
tomados sobre la respuesta en frecuencia son idnticos en ambos casos;
nicamente el eje de frecuencia es deformado.


3. Tipos de filtros
3.1 Filtros Butterworth.

Los filtros Butterworth son causales por naturaleza y de varios niveles
de orden, los de ms bajo orden son lo mejor (lo ms corto posibles) en el
dominio del tiempo, y los de orden ms alto son lo mejor en el dominio de
la frecuencia. Los filtros Butterworth o mximamente planos tienen una
respuesta en frecuencia de amplitud monotnica la cual es mximamente
plana cuando la respuesta en frecuencia es igual a cero (Figura 1). Y la
respuesta en amplitud decrece logartmicamente conforme incrementa la
frecuencia. Los filtros Butterworth tienen un mnimo desplazamiento en fase
comparados con otro tipo de filtros convencionales.

()

()

()


Figura 1. Respuesta en frecuencia de un filtro Butterworth, plano en ambos lados de la banda pasante y
la banda de rechazo



3.2. Filtros Chebishev.

Los filtros Chevyshev son de dos tipos: los filtros Chevyshev I tienen
todos los polos del filtro los cuales estn equi-ripple en la banda de paso y
son monotnicos en la banda de rechazo. (Figura 2).




Figura 2. Respuesta en frecuencia de un filtro Chevyshev I, con rizo en la parte de la banda de paso, y
monotonicamente plano en la banda de rechazo.


Los filtros Chevyshev II contienen polos y ceros exhibiendo un
comportamiento monotnico en la banda pasante y equi-ripple en la
banda de rechazo (Figura 3).



Figura 3. Respuesta en frecuencia de un filtro Chevyshev II, con rizo en la parte de la banda de
rechazo, y monotonicamente plano en la banda de paso.


La respuesta en frecuencia de este filtro est dada por:

()

))

()

Donde es un parmetro relacionado al rizo presente en la banda
pasante.

())
(

())
()

3.3. Filtros Elpticos.

Los filtros elpticos son caracterizados por ser igualmente rizados en
ambos lados de la banda de paso y de rechazo (Figura 4), ste nos provee
una realizacin con el orden ms bajo para ciertas condiciones
particulares establecidas.

()

()





Transformaciones de frecuencia.

Esta es una de las mayores tcnicas empleadas en el diseo de
filtros. Se puede disear un filtro pasa-bajos analgico o digital y luego este
se transforma en un filtro digital pasa-altos o pasa-banda.

Transformaciones de frecuencia analgica.

Las transformaciones en frecuencia que pueden ser usadas
para obtener un filtro pasa-altas, pasa-bajos, pasa-banda o rechaza
banda se pueden observar en la tabla 1.

Aqu 0
2
= 1* 2 la cual es definida como la frecuencia de
corte para un filtro pasa-bajos o pasa-altos y la frecuencia central
para los filtros en la banda de paso y de rechazo.

()

()

Donde 2 y 1 son la ms alta y la ms baja frecuencia de
corte respectivamente. 2 - 1 dan como resultado el ancho de
banda.


Tabla 1. Relacin entre los tipos de filtros y las transformaciones de frecuencia
analgica.

Tipo de filtros Transformacin

Pasa-bajos





Pasa-altas





Pasa-banda


(






4. Funciones de Matlab para el diseo de filtros IIR.

Funciones para determinar el orden necesario para implementar un
determinado filtro:

[N, Wn] = buttord(Wp, Ws, Rp, Rs)
Calcula el orden de un filtro pasobajo digital de Butterworth, con Ws la
frecuencia de pasabanda, Wp la frecuencia parabanda, y Rp y Rs las
Atenuaciones respectivas de pasabanda y parabanda en decibelios.
Wp y Ws deben ser entre (0,1), siendo 1 la frecuencia de Nyquist (fs/2). N
es el orden del filtro y Wn la frecuencia de 3db.

[N, Wn] = buttord(Wp, Ws, Rp, Rs,'s')
Lo mismo que antes, pero para un filtro pasobajo analgico. Aqu los
valores de Wp y Ws pueden tomar cualquier valor en radianes. Para
calcular el orden de otros tipos de filtro (pasoalto, parabanda o
pasabanda) deberemos aplicar primero las transformaciones al
prototipo de filtro pasobajo (Tabla 2).

[N, Wn] = cheb1ord(Wp, Ws, Rp, Rs)
Clculo del orden necesario para un filtro digital pasobajo de
Chebyshev I, con las especificaciones dadas. Las mismas
consideraciones que en el caso del filtro de Butterworth.

[N, Wn] = cheb1ord(Wp, Ws, Rp, Rs, 's')
Lo mismo pero para el filtro analgico

[N, Wn] = cheb2ord(Wp, Ws, Rp, Rs)
Filtro digital de Chebyshev II

[N, Wn] = cheb2ord(Wp, Ws, Rp, Rs, 's')
Filtro analgico de Chebyshev II

[N, Wn] = ellipord(Wp, Ws, Rp, Rs)
Filtro digital elptico

[N, Wn] = ellipord(Wp, Ws, Rp, Rs, 's')
Filtro analgico elptico.

Funciones para determinar los coeficientes del filtro

[B,A] = butter(N,Wn)
B y A son los coeficientes del numerador y del denominador
espectivamente, en orden decreciente de un filtro de Butterworth
digital. N es el orden del filtro (calculado previamente) y Wn es la
frecuencia de corte. El valor de Wn debe estar normalizado con la
frecuencia de Nyquist. Para disear un filtro pasobajo Wn es un escalar
entre (0,1). La pasabanda es (0, Wn) y la parabanda es (Wn,1). Para
disear un filtro de pasoalto, el comando a escribir es:

[B,A] = butter(N,Wn,high) donde Wn es un escalar.

Un filtro Parabanda se determina de la siguiente forma:

[B,A] = butter(N,[W1 W2])
Es decir, Wn es en este caso un vector que especifica las frecuencias de
pasabanda.

Finalmente, para un filtro Parabanda:
[B,A] = butter(N,[W1 W2],stop)
[W1 W2] son las frecuencias de Parabanda.

[B,A] = cheby1(N,R,Wn)
Diseo de filtros digitales de Chebyshev I. Se deben especificar el orden del
filtro N, el rizado de pasabanda permitido R y la frecuencia de corte
normalizada con respecto a la frecuencia de Nyquist. Para disear filtros de
pasoalto, pasabanda y parabanda se siguen las mismas reglas que en el
diseo de filtros de Butterworth.

[B,A] = cheby2(N,R,Wn)
Lo mismo que antes, pero R es el rizado de parabanda.

[B,A] = ellip(N,Rp,Rs,Wn)
Rp y Rs son los rizados de pasabanda y parabanda. Aadiendo a los
comandos anterior la opcin s, los vectores B y A son los coeficientes del
filtro analgico correspondiente. Sigue siendo vlido lo que se mencion
anteriormente acerca del diseo de filtros pasoalto, pasabanda y
parabanda, pero Wn puede tomar cualquier valor en radianes (no est
limitado entre (0,1)):

[B,A] = butter(N,Wn,s)
[B,A] = cheby1(N,R,Wn,s)
[B,A] = cheby2(N,R,Wn,s)
[B,A] = ellip(N,Rp,Rs,Wn,s)

Para Filtros pasabanda o parabanda se debe definir una variable con dos
valores que determinan los extremos de la frecuencia de la banda

Ejemplo:

Omega=[Omega1, Omega2]

Y usar el comando, por ejemplo

[num,den]=butter(n,Omega,stop) para el Parabanda

[num,den]=butter(n,Omega) para el Pasabanda.

Respuesta frecuencial del filtro diseado

Para los filtros analgicos

>> H = freqs(B,A,W)
Devuelve el vector H de nmeros complejos, que es la respuesta
frecuencial al filtro cuya funcin de transferencia en s viene dada por B y A.
La respuesta frecuencial se evala en los puntos especificados por el
vector W en radianes. Ms opciones en el Help de MATLAB.

plot(W,abs(H))
Dibuja la magnitud de la respuesta frecuencial del filtro.

plot(W,unwrap(angle(H)))
Dibuja la fase de la respuesta frecuencial del filtro. La funcin unwrap hace
que no haya discontinuidad en la fase por el paso de +pi a pi .

Para los filtros digitales

>> H = freqz(B,A,F,Fs)
Devuelve el vector H de nmeros complejos, que es la respuesta
frecuencial al filtro cuya funcin de transferencia en z viene dada por B y
A. La respuesta frecuencial se evala en los puntos especificados por el
vector F en Hz, siendo la frecuencia de mustreo Fs Hz. Ms opciones en el
Help de MATLAB.

gd = grpdelay(B,A,F,Fs)
Calcula retraso de grupo (-df1/dt) de la funcin de Transferencia formada
por los polinomios B y A. Se evala en los puntos especificados por W en
radianes. Para ms opciones de esta funcin ver el Help de MATLAB.

plot(F,abs(H))
Dibuja la magnitud de la respuesta frecuencial del filtro.

plot(F,unwrap(angle(H)))
Dibuja la fase de la respuesta frecuencial del filtro.

plot(F,gd)
Dibuja el retraso de grupo de la funcin de Transferencia Discreta.

5. Diseo de filtros IIR.

El Toolbox de MATLAB dedicado al procesamiento de seales,
incluye algunas funciones tiles para disear ambas clases de filtros
digitales FIR e IIR as como tambin para el diseo tradicional de
filtros analgicos. Las caractersticas bsicas de los tipos de filtros
analgicos comunes ya se han resumido en las secciones previas.
Los filtros considerados fueron los filtros Butterworth, Chevyshev I & II, y
los filtros Elpticos.
Primer diseo.

Situacin

Para una seal de datos muestreada a 100 Hz, disear un filtro
pasabajos con menos de 1 dB de rizo en la banda de paso, definido
de 0 a 12 Hz, y al menos 30 dB de atenuacin en la banda de
rechazo, definido a 15 Hz de la frecuencia de Nyquist.

Solucin

Basados en los parmetros que se especifican en esta situacin,
realizaremos los diseos de Butterworth, Chevyshev I & II y Elptico, por el
mtodo directo.

%%%%%%%PRIMER DISEO%%%%%%%%%%%%%%%%%
%Diseo de filtro Butterworth, realizacin directa
%Especificaciones:
%Fs = 100 Hz Frecuencia de muestreo
%Fbp = 12 Hz Frecuencia en la banda de paso
%Fsb = 15 Hz Frecuencia en la banda de rechazo
%Rp = 1 dB Rizado en la banda de paso
%As = 30 dB mxima atenuacin en la banda de rechazo

Fs = 100; fs=100/2; %Frecuencia de muestreo normalizada
Fbp = 12; fbp = Fbp/fs; %Frecuencia Fbp normalizada
Fsb = 15; fsb = Fsb/fs; %Frecuencia Fsb normalizada
Rp = 1; % Rizado en la banda de paso
As = 30; %Mxima atenuacin en la banda de rechazo
%Diseo del filtro
[N,wn] = buttord(fbp,fsb,Rp,As); %Se obtiene el orden y frecuencia de corte
[b,a] = butter(N,wn); % Se obtienen los coeficiente de la realizacin del filtro IIR en forma
directa
[H,w]=freqz(b,a,512,100);%este comando determina la respuesta en frecuencia del filtro
digital
[h,n] = impz(b,a,50); %clculo de la respuesta al impulso digital

%Grficas
figure(1)
subplot(2,2,1)
plot(w,(abs(H)).^2);title('Respuesta en frecuencia (magnitud)')
xlabel('Frecuencia en Hz')
ylabel('|H(\omega)|^2')
grid on

subplot(2,2,2)
plot(w,20*log10(abs(H)));title('Respuesta en frecuencia (magnitud en dB)')
xlabel('Frecuencia en Hz')
ylabel('|H(\omega)|')
grid on

subplot(2,2,3)
plot(w,angle(H));title('Respuesta en frecuancia (fase)')
xlabel('Frecuencia en Hz')
ylabel('Fase')
grid on

subplot(2,2,4)
stem(n,h);
title('Respuesta al impulso')
xlabel('tiempo [n]')
ylabel('h[n]')
%Grafica del plano z
figure(2)
z = roots(b);
p = roots(a);
zplane(z,p)





%%%%%%%SEGUNDO DISEO%%%%%%%%%%%%%%%%
%Diseo de filtro Chebyshev I, realizacin directa
%Especificaciones:
%Fs = 100 Hz Frecuencia de muestreo
%Fbp = 12 Hz Frecuencia en la banda de paso
%Fsb = 15 Hz Frecuencia en la banda de rechazo
%Rp = 1 dB Rizado en la banda de paso
%As = 30 dB mxima atenuacin en la banda de rechazo

Fs = 100; fs=100/2; %Frecuencia de muestreo normalizada
Fbp = 12; fbp = Fbp/fs; %Frecuencia Fbp normalizada
Fsb = 15; fsb = Fsb/fs; %Frecuencia Fsb normalizada
Rp = 1; % Rizado en la banda de paso
As = 30; %Mxima atenuacin en la banda de rechazo
%Diseo del filtro
[N,wn] = cheb1ord(fbp,fsb,Rp,As); %Se obtiene el orden y frecuencia de corte
[b,a] = cheby1(N,Rp,wn); % Se obtienen los coeficiente de la realizacin del filtro IIR en
forma directa
[H,w]=freqz(b,a,512,100);%este comando determina la respuesta en frecuencia del filtro
digital
[h,n] = impz(b,a,50); %clculo de la respuesta al impulso digital

%Grficas
figure(1)
subplot(2,2,1)
plot(w,(abs(H)).^2);title('Respuesta en frecuencia (magnitud)')
xlabel('Frecuencia en Hz')
ylabel('|H(\omega)|^2')
grid on

subplot(2,2,2)
plot(w,20*log10(abs(H)));title('Respuesta en frecuencia (magnitud en dB)')
xlabel('Frecuencia en Hz')
ylabel('|H(\omega)|')
grid on

subplot(2,2,3)
plot(w,angle(H));title('Respuesta en frecuancia (fase)')
xlabel('Frecuencia en Hz')
ylabel('Fase')
grid on

subplot(2,2,4)
stem(n,h);
title('Respuesta al impulso')
xlabel('tiempo [n]')
ylabel('h[n]')
%Grafica del plano z
figure(2)
z = roots(b);
p = roots(a);
zplane(z,p)



%%%%%%%TERCER DISEO%%%%%%%%%%%%%%%%%
%Diseo de filtro Chebyshev II, realizacin directa
%Especificaciones:
%Fs = 100 Hz Frecuencia de muestreo
%Fbp = 12 Hz Frecuencia en la banda de paso
%Fsb = 15 Hz Frecuencia en la banda de rechazo
%Rp = 1 dB Rizado en la banda de paso
%As = 30 dB mxima atenuacin en la banda de rechazo

Fs = 100; fs=100/2; %Frecuencia de muestreo normalizada
Fbp = 12; fbp = Fbp/fs; %Frecuencia Fbp normalizada
Fsb = 15; fsb = Fsb/fs; %Frecuencia Fsb normalizada
Rp = 1; % Rizado en la banda de paso
As = 30; %Mxima atenuacin en la banda de rechazo
%Diseo del filtro
[N,wn] = cheb2ord(fbp,fsb,Rp,As); %Se obtiene el orden y frecuencia de corte
[b,a] = cheby2(N,As,wn); % Se obtienen los coeficiente de la realizacin del filtro IIR en
forma directa
[H,w]=freqz(b,a,512,100);%este comando determina la respuesta en frecuencia del filtro
digital
[h,n] = impz(b,a,50); %clculo de la respuesta al impulso digital

%Graficas
figure(1)
subplot(2,2,1)
plot(w,(abs(H)).^2);title('Respuesta en frecuencia (magnitud)')
xlabel('Frecuencia en Hz')
ylabel('|H(\omega)|^2')
grid on

subplot(2,2,2)
plot(w,20*log10(abs(H)));title('Respuesta en frecuencia (magnitud en dB)')
xlabel('Frecuencia en Hz')
ylabel('|H(\omega)|')
grid on

subplot(2,2,3)
plot(w,angle(H));title('Respuesta en frecuancia (fase)')
xlabel('Frecuencia en Hz')
ylabel('Fase')
grid on

subplot(2,2,4)
stem(n,h);
title('Respuesta al impulso')
xlabel('tiempo [n]')
ylabel('h[n]')
%Grafica del plano z
figure(2)
z = roots(b);
p = roots(a);
zplane(z,p)






%%%%%%%CUARTO DISEO%%%%%%%%%%%%%%%%%
%Diseo de filtro Elptico, realizacin directa
%Especificaciones:
%Fs = 100 Hz Frecuencia de muestreo
%Fbp = 12 Hz Frecuencia en la banda de paso
%Fsb = 15 Hz Frecuencia en la banda de rechazo
%Rp = 1 dB Rizado en la banda de paso
%As = 30 dB mxima atenuacin en la banda de rechazo

Fs = 100; fs=100/2; %Frecuencia de muestreo normalizada
Fbp = 12; fbp = Fbp/fs; %Frecuencia Fbp normalizada
Fsb = 15; fsb = Fsb/fs; %Frecuencia Fsb normalizada
Rp = 1; % Rizado en la banda de paso
As = 30; %Mxima atenuacin en la banda de rechazo
%Diseo del filtro
[N,wn] = ellipord(fbp,fsb,Rp,As); %Se obtiene el orden y frecuencia de corte
[b,a] = ellip(N,Rp,As,wn); % Se obtienen los coeficiente de la realizacin del filtro IIR en
forma directa
[H,w]=freqz(b,a,512,100);%este comando determina la respuesta en frecuencia del filtro
digital
[h,n] = impz(b,a,50); %clculo de la respuesta al impulso digital

%Graficas
figure(1)
subplot(2,2,1)
plot(w,(abs(H)).^2);title('Respuesta en frecuencia (magnitud)')
xlabel('Frecuencia en Hz')
ylabel('|H(\omega)|^2')
grid on

subplot(2,2,2)
plot(w,20*log10(abs(H)));title('Respuesta en frecuencia (magnitud en dB)')
xlabel('Frecuencia en Hz')
ylabel('|H(\omega)|')
grid on

subplot(2,2,3)
plot(w,angle(H));title('Respuesta en frecuancia (fase)')
xlabel('Frecuencia en Hz')
ylabel('Fase')
grid on

subplot(2,2,4)
stem(n,h);
title('Respuesta al impulso')
xlabel('tiempo [n]')
ylabel('h[n]')
%Grafica del plano z
figure(2)
z = roots(b);
p = roots(a);
zplane(z,p)





Segundo diseo.

Situacin
Para una seal de datos muestreada a 10 Hz, disear un filtro
pasa-altos por medio de un filtro Elptico, utilizando para ello los dos
mtodos de diseo: directo y por el mtodo bilineal. Las
caractersticas del filtro son las siguientes:
Fs = 10 Hz.
Fpb = 2.4 Hz
Fsb = 2 Hz
Rp = 1 dB
As = 40 db
Solucin
Basados en los parmetros que se especifican en esta
situacin, realizaremos los dos diseos, a continuacin se muestran
los detalles.
%%%%%%%QUINTO DISEO%%%%%%%%%%%%%%%%%
%Diseo de filtro Elptico pasa-altos, realizacin directa
%Especificaciones:
%Fs = 10 Hz Frecuencia de muestreo
%Fbp = 2.4 Hz Frecuencia en la banda de paso
%Fsb = 2 Hz Frecuencia en la banda de rechazo
%Rp = 1 dB Rizado en la banda de paso
%As = 40 dB mxima atenuacin en la banda de rechazo

Fs = 10; fs=Fs/2; %Frecuencia de muestreo normalizada
Fbp = 2.4; fbp = Fbp/fs; %Frecuencia Fbp normalizada
Fsb = 2; fsb = Fsb/fs; %Frecuencia Fsb normalizada
Rp = 1; % Rizado en la banda de paso
As = 40; %Mxima atenuacin en la banda de rechazo
%Diseo del filtro
[N,wn] = ellipord(fbp,fsb,Rp,As); %Se obtiene el orden y frecuencia de corte
[b,a] = ellip(N,Rp,As,wn,'high'); % Se obtienen los coeficiente de la realizacin del filtro IIR
en forma directa
[H,w]=freqz(b,a,512,100);%este comando determina la respuesta en frecuencia del filtro
digital
[h,n] = impz(b,a,50); %clculo de la respuesta al impulso digital

%Grficas
figure(1)
subplot(2,2,1)
plot(w,(abs(H)).^2);title('Respuesta en frecuencia (magnitud)')
xlabel('Frecuencia en Hz')
ylabel('|H(\omega)|^2')
grid on

subplot(2,2,2)
plot(w,20*log10(abs(H)));title('Respuesta en frecuencia (magnitud en dB)')
xlabel('Frecuencia en Hz')
ylabel('|H(\omega)|')
grid on

subplot(2,2,3)
plot(w,angle(H));title('Respuesta en frecuancia (fase)')
xlabel('Frecuencia en Hz')
ylabel('Fase')
grid on

subplot(2,2,4)
stem(n,h);
title('Respuesta al impulso')
xlabel('tiempo [n]')
ylabel('h[n]')
%Grafica del plano z
figure(2)
z = roots(b);
p = roots(a);
zplane(z,p)





%%%%%%%SEXTO DISEO%%%%%%%%%%%%%%%%%
%Diseo de filtro Elptico pasa-altos, mtodo bilineal
%Especificaciones:
%Fs = 10 Hz Frecuencia de muestreo
%Fbp = 2.4 Hz Frecuencia en la banda de paso
%Fsb = 2 Hz Frecuencia en la banda de rechazo
%Rp = 1 dB Rizado en la banda de paso
%As = 40 dB mxima atenuacin en la banda de rechazo

Fs = 10;fs = Fs/2;
Fpb = 2.4; fpb = Fpb/fs;
Fsb = 2; fsb = Fsb/fs;
Rpb = 1;
Asb = 40;

[N,wn] = ellipord(fpb,fsb,Rpb,Asb);

N = 5;
[z,p,k] = ellipap(N,Rpb,Asb);
b = k*poly(z);
a = poly(p);
[b1,a1] = lp2hp(b,a,2*pi*Fpb); %transformacin "pasa-bajo" a "pasa-alto"
[b2,a2] = bilinear(b1,a1,fs); %transformacin de coeficientes analogos a digitales por el
metos bilineal
[H,w] = freqz(b2,a2,512,10); %obtencin de la respuesta en frecuancia del filtro digital
figure;
[h,n] = impz(b2,a2,50); %clculo de la respuesta al impulso digital

%Grficas
figure(1)
subplot(2,2,1)
plot(w,(abs(H)).^2);title('Respuesta en frecuencia (magnitud)')
xlabel('Frecuencia en Hz')
ylabel('|H(\omega)|^2')
grid on

subplot(2,2,2)
plot(w,20*log10(abs(H)));title('Respuesta en frecuencia (magnitud en dB)')
xlabel('Frecuencia en Hz')
ylabel('|H(\omega)|')
grid on

subplot(2,2,3)
plot(w,angle(H));title('Respuesta en frecuancia (fase)')
xlabel('Frecuencia en Hz')
ylabel('Fase')
grid on

subplot(2,2,4)
stem(n,h);
title('Respuesta al impulso')
xlabel('tiempo [n]')
ylabel('h[n]')
%Grafica del plano z
figure(2)
z = roots(b);
p = roots(a);
zplane(z,p)





Tercer diseo.

Situacin

Desarrollar un filtro IIR Butterworth mediante Matlab para el anlisis
de un filtro IIR Butterworth, y su aplicacin al filtrado pasabajos, usando la
herramienta sptool de Matlab, a una seal de voz (analisis.wav).


Solucin

La primera instruccin en Matlab es cargar al espacio de
trabajo el archivo .wav que servir de base a nuestro anlisis.

>>[y,fs]=wavread(C:\Users\Tiago\Desktop\AUDIO.wav)

Donde y es la variable que guarda las muestras de la seal de voz, fs es la
frecuencia de muestreo.

Se obtuvo una frecuencia de muestreo fs=16000 Hz.

A continuacin se ocup la herramienta sptool:
>>sptool


Herramienta Sptool de Matlab.

Para cargar la seal que nos interesa desde el espacio de trabajo,
hacemos clic en File, import.

Una vez cargada la seal la podemos visualizar:


Visualizacin de nuestra seal (kill_bill.wav)

A continuacin hacemos clic en filters, new design.


Filtro IIR Butterworth en sptool de Matlab.

Elegimos en mtodo de diseo el tipo de filtro, en este caso IIR Butterworth
orden 6 y con los parmetros:
Fp: Frecuencia lmite de pasabanda.
Fs: Frecuencia lmite de parabanda.
Rd: Rizado de pasabanda.
Rs: rizado de parabanda. (ver fig 2)

Los dems parmetros son:
Sampling Frequency: Es la frecuencia de muestreo, en nuestro caso
16000Hz.
Minimum Order: n mnimo para obtener este filtro.
Auto Design: Dejar que el programa se encargue de disearlo
dndole un valor de n y la frecuencia de muestreo.

Una vez especificado el filtro a usar, volvemos a la ventana de sptool y en
Filters, View podremos visualizar nuestro filtro:


Filter Viewer en frecuencia v/s magnitud y frecuencia v/s fase (en grados)

En las distintas ventanas podemos modificar la escala a ocupar y el rango
a ocupar.

Adems podremos ver en esta ventana el grafico en z de los polos y ceros
de nuestro sistema (filtro).


Ceros y polos de nuestro filtro.

Cabe hacer notar que tenemos 6 polos, dentro del crculo unitario
que corresponden a los polos de la funcin ( ) H s en el semiplano
izquierdo, por lo que concluimos que se trata de un filtro estable.

Para poder apreciar la seal de salida al filtro, seleccionamos la
seal de entrada y el filtro que estamos aplicando, hacemos clic en
Apply y obtenemos:


Cuadro de dialogo para una seal de entrada obteniendo una salida al filtro.

Una vez obtenida nuestra seal la podremos visualizar:


Seal de salida a nuestro filtro.

Comparando las 2 seales podemos apreciar claramente la
diferencia, podemos escuchar como las componentes de ms alta
frecuencia se ha eliminado para nuestra seal de salida.

Ahora apreciaremos el efecto en frecuencia de nuestro filtro
pasabajos Butterworth.

Primero seleccionaremos nuestra seal de entrada, en Spectra
hacemos clic en Create y finalmente en la nueva ventana hacemos
clic en Apply, y podemos visualizar la seal de entrada.


Espectro en frecuencia v/s decibeles.

Variables:
En la ventana de Method hemos seleccionado FFT (la transformada
rpida de Fourier).
Nfft: Es el nmero de pasos de la FFT.
Para la seal de salida hacemos lo mismo.


Espectro de la seal de salida.

Podemos apreciar como el filtro logro recortar las componentes de
frecuencia mayores a
s
f y tambin podemos apreciar la banda de
transicin entre
p
f y
s
f .


6. Tareas a realizar.


1. Disee un filtro pasa-bajo directo por los cuatro mtodos, con las
siguientes caractersticas.

Fs = 20 kHz
Fpb = 4.5 kHz
Fsb = 4.56 kHz
Rp = 2 dB
As = 70 dB

Diseo de filtro Butterworth

Diseo de filtro Chebyshev I




Diseo de filtro Chebyshev II









Diseo de filtro Elptico, realizacin directa



2. Disee un filtro pasa altos elptico por el mtodo directo y la
transformada bilineal con las siguientes caractersticas.

Fs = 1 kHz
Fpb = 350 Hz
Fsb = 250 Hz
Rp = 1 dB
As = 60 Db

Filtro pasa altos elptico por el mtodo directo










Filtro pasa altos elptico por el mtodo bilineal




















3. Disee un filtro Chevyshev I pasa-bandas por el mtodo directo y por la
transformada bilineal.

Orden = 8
Fs = 30 Hz
Frecuencia de borde en la banda ms baja Fc1 = 4Hz
Frecuencia de borde en la banda ms alta Fc2 = 8Hz
Rizado en la banda de paso = 1 dB

4. Usar la herramienta sptool de Matlab, tomando en cuenta las siguientes
consideraciones:

Siguiendo el mismo procedimiento de Tercer diseo (Seccin
anterior), para un archivo *.wav definido a libre eleccin
aplicar un filtro IIR, cuyos requerimientos sern definidos segn
sus necesidades.
Presentar resultados segn la seccin anterior (Tercer diseo).






































































Adjunta el fichero filtro.spt el cual contiene la sesin de Sptool
empleada para este trabajo.
5. Responda lo siguiente: Cul es la importancia de usar filtros analgicos
o digitales en los transmisores y receptores de RF?.
6. Busque un diagrama de un receptor o transmisor, e identifique los filtros
usados y describa la funcin que desempeen.


5. Resultados
Entregar cada uno de las actividades resueltas y sus conclusiones.
6. CONCLUSIONES
El profesional en formacin debe analizar los resultados obtenidos en cada una
de las actividades propuestas, as como de aquellas otras que estime necesarias.

También podría gustarte