Informe N° 03 de PDS

download Informe N° 03 de PDS

of 18

Transcript of Informe N° 03 de PDS

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOSFacultad de Ingeniera Electrnica, Elctrica y Telecomunicaciones

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS(UNIVERSIDAD DEL PERU, DECANA DE AMERICA)

FACULTAD DE INGENIERIA ELECTRONICA Y ELECTRICA

CURSO:PROCESAMIENTO DIGITAL DE SEALESPROFESOR:ING. CARRILLO GOMERO, FLAVIO N.TEMA: ANALISIS DEL TIEMPO Y DE LA FRECUENCIA DE LAS SEALES DE TIEMPO DISCRETOAVANCE N 03:DISEO DE FILTROS CON MATLABHORARIO:LUNES 10 -12 AMALUMNOS:ZAMORA VARGAS, EDWAR ANTONIO RABELO MARISCAL, ANDRE

LIMA, 15 DE MAYO DEL 2014

ResumenEn el presente informe, presentaremos nuestro tercer avance del trabajo de investigacin referente al estudio y aplicacin de las seales discretas en el dominio del tiempo y de la frecuencia, para aplicarlo en el desarrollo de nuestro proyecto. Por ende en esta parte del trabajo hablaremos del procedimiento de diseo de filtros, especificaciones de un filtro, funciones de aproximacin de filtros, obtencin del orden de un filtro con Matlab y por ultimo diseo de un filtro con Matlab con lo cual tendremos una idea general de los diferentes filtros que podemos utilizar para la elaboracin de nuestro proyecto final la cual se basa en el desarrollo de filtros de imgenes y de audio.

IntroduccinUno de los problemas en la Ingeniera Electrnica y de Telecomunicaciones es la necesidad de separar diferentes componentes frecuenciales de una seal. A este proceso se le denomina filtrado y al subsistema encargado de realizar dicha tarea, filtro; cuya diferentes aplicaciones serian innumerables.

Habitualmente se emplean para tareas tales como la eliminacin de ruido o interferencias, en procesos de modulacin y limitacin del ancho de banda de seales, etc. Independientemente de su funcin, a la hora de introducir un filtro en un sistema de cualquier tipo, es necesario conocer de antemano las especificaciones que dicho filtro debe verificar, una vez conocidas estas, se procede a disear el filtro apropiado. Por ltimo, dicho filtro es construido o programado (Dependiendo de si se trata de un filtro analgico o digital) e insertado en el punto apropiado del sistema.

En este avance se pretende abordar el problema de diseo de filtros de una forma prctica, para lo que se utilizara el programa MATLAB 7. Iremos cubriendo una a una las diferentes etapas del diseo de filtros y aprendiendo a utilizar esta herramienta.

Es por ello que investigaremos todo relacionado a filtros ya que son ellos los que nos dan la solucin a todos los problemas anteriores mencionadas como por ejemplo: Seales de inters mezcladas con otras de no inters las que provocan la indistincin entre una y la otra, estas ltimas son denominadas ruido.

Objetivos: Se pretende conocer las herramientas que este software posee para el diseo de filtros tanto analgicos como digitales

Comparar entre distintos filtros digitales y a su vez con su par analgico.

Determinar los parmetros de un filtro y observar como podra ayudarnos a encontrar los coeficientes que luego podremos usar al programar un microproceso.

Marco tericoI. Procedimiento de diseo de filtros. El diseo de un filtro consiste en obtener un circuito en el que la respuesta frecuencial de su funcin de transferencia satisfaga una especificacin dada. Para ello, se sigue un proceso que divide el problema en tres etapas diferenciadas: a) Determinar matemticamente la funcin de transferencia cuya respuesta frecuencial mejor aproxima las especificaciones dadas para la respuesta frecuencial del filtro.

b) Descomponer los polinomios resultantes en factores de segundo orden que permitan su implementacin por una secuencia de etapas bicuadrticas conectadas en cascada.

c) Seleccionar el circuito con el que se implementar cada etapa del filtro y estimar los valores de los componentes que los circuitos elegidos contienen. II. Especificaciones de un filtro.

Las especificaciones de un filtro suelen darse a partir de su funcin de prdidas. Si G(s) es la funcin de transferencia de un filtro, su funcin de prdidas, H(s), se define como:

Las especificaciones de un filtro real son las que se muestran en las figuras siguientes. La funcin de prdidas del filtro tiene que quedar fuera de la zona sombreada.

III. Funciones de aproximacin de filtros.

Butterworth. La magnitud de la respuesta de un filtro Butterworth es mximamente plana en la banda de paso y en general monofnica.

Chebyshev. La respuesta de magnitud de un filtro de tipo de Chebyshev I es equiparable en la banda de paso y montona en la banda de detencin.

Cauer o elptica. La respuesta de magnitud de un filtro elptico es equiparable tanto en la banda de paso y la banda de detencin.

IV. Obtencin del orden de un filtro con MATLAB. Butterworth.

[N, Wn] = BUTTORD (Wp, Ws, Rp, Rs,'s')

Devuelve la orden N del filtro Butterworth analgico orden ms baja que pierde no ms de rupias en dB la banda de paso y tiene por lo menos Rs dB de atenuacin en la banda de rechazo. Wp y WS son la banda de paso y frecuencias de borde de banda suprimida en radianes / segundo. BUTTORD tambin devuelve Wn en rad / s, la frecuencia natural Butterworth (o, el "3 dB Frecuencia") utilizar con BUTTER para alcanzar las especificaciones.

Chebyshev.

[N, Wnc] = CHEB1ORD (Wp, Ws, Rp, Rs,'s')

Devuelve la orden N de la orden ms bajo analgico filtro Chebyshev Tipo I que pierde no ms de Rp dB en la banda de paso y tiene por lo menos Rs dB de atenuacin en la banda de detencin. Wp y WS son los banda de paso y frecuencias de borde de banda suprimida en radianes / segundo.

CHEB1ORD tambin devuelve Wnc en rad /s, la frecuencia natural de Chebyshev en la que la magnitud la respuesta del filtro es -RP dB. Wnc se utiliza con CHEBY1 para lograr las especificaciones.

Cauer o elptica.

[N, Wne] = ELLIPORD (Wp, Ws, Rp, Rs,'s')

Devuelve la orden N de la orden ms bajo del filtro elptico analgico que pierde no ms de Rp dB en la banda de paso y tiene por lo menos Rs dB de atenuacin en la banda de detencin. Wp y WS son la banda de paso y frecuencias de borde de banda suprimida en radianes/segundo. ELLIPORD tambin devuelve Wne en rad / s, la frecuencia eliptica natural se usara con Ellip para lograr las especificaciones. Wne (corte angular frecuencia) es el borde de la banda de paso, en el que la respuesta en magnitud del filtro es -RP dB.NOTA: Si Rs es demasiado mayor que Rp, o Wp y Ws estn muy cerca, el orden estimado puede ser infinita debido a las limitaciones de precisin numrica.

V. Diseo de filtros con MATLAB.

1) Filtros de paso bajo.

Butterworth.

[N, Wn] = BUTTORD (Wp, Ws, Rp, Rs,'s')

[NUM, DEN]=BUTTER (N,Wn,'s')

Disea un filtro Butterworth de paso bajo analgico ensimo orden y devuelve los coeficientes de filtro de longitud N +1 vectores NUM (numerador) y DEN (denominador). Los coeficientes son enumerados en potencias descendentes de s. La frecuencia de corte Wn est en rad / s. Cuando Rp es elegido como 3 dB, el Wn en BUTTER es igual a Wp en BUTTORD.

Chebyshev.

[N, Wnc] = CHEB1ORD (Wp, Ws, Rp, Rs,'s') [NUM, DEN]=CHEBY1 (N,Rp,Wnc,'s')

Disea un ensimo orden analgico de filtro paso bajo Tipo Chebyshev I con decibelios Rp de pico a pico rizado en la banda de paso y devuelve los coeficientes de filtro de longitud N +1 vectores NUM ( numerador ) y DEN ( denominador). Los coeficientes son enumerados en potencias descendentes de s . El punto de corte frecuencia Wnc es en rad / s.

Cauer o elptica.

[N, Wne] = ELLIPORD (Wp, Ws, Rp, Rs,'s') [NUM, DEN]=ELLIP(N,Rp,Rs,Wne,'s')

Disea un filtro elptico orden ensimo paso bajo analgico con decibelios Rp de ondulacin de pico a pico y una atenuacin de la banda de parada mnimo de Rs decibelios. Ellip devuelve los coeficientes de filtro de longitud N+1 vectores NUM (numerador) y DEN (denominador). Los coeficientes son enumerados en potencias descendientes de s. La frecuencia de corte es Wne en rad / s.

2) Filtros de paso alto.

Butterworth.

[N, Wn] = BUTTORD(Wp, Ws, Rp, Rs, 's') [NUM, DEN]=BUTTER(N,Wn,high,'s')

Disea un filtro Butterworth de paso alto analgico ensimo orden y devuelve los coeficientes de filtro de longitud N +1 vectores NUM ( numerador) y DEN (denominador). Los coeficientes son enumerados en potencias descendientes de s. La frecuencia de corte esta en Wn rad / s. Cuando Rp es elegido como 3 dB, el Wn en BUTTER es igual a Wp en BUTTORD.

Chebyshev.

[N, Wnc] = CHEB1ORD(Wp, Ws, Rp, Rs, 's') [NUM, DEN]=CHEBY1(N,Rp,Wnc,high,'s')

Disea un ensimo orden analgico de filtro pasa alto Tipo Chebyshev I con decibelios Rp de pico a pico rizado en la banda de paso y devuelve los coeficientes de filtro de longitud N +1 vectores NUM ( numerador )y DEN ( denominador). Los coeficientes se listan en potencias descendentes de s . El punto de corte frecuencia Wnc esta en rad / s.

Cauer o elptica.

[N, Wne] = ELLIPORD(Wp, Ws, Rp, Rs, 's')

[NUM, DEN]=ELLIP(N,Rp,Rs,Wne,high,'s')

Disea un filtro elptico orden ensimo paso bajo analgico con decibelios Rp de ondulacin de pico a pico y una atenuacin de la banda de parada mnimo de Rs decibelios . Ellip devuelve los coeficientes de filtro de longitud N+1vectores NUM ( numerador) y DEN ( denominador). Los coeficientes son enumerados en potencias descendientes de s. La frecuencia de corte es Wne en rad / s.

3) Filtros de paso banda.

Butterworth.

[N, Wn] = BUTTORD(Wp, Ws, Rp, Rs, 's')

BUTTORD tambin devuelve Wn = [ WN1 , WN2 ], el bajo Butterworth ( WN1 ) y alto ( WN2 ) naturales frecuencias (o, los " 3 dB las frecuencias ") a utilizar con BUTTER para lograr las especificaciones.

[NUM, DEN]=BUTTER(N,Wn,'s')

Si Wn es un vector de dos elementos, Wn = [ WN1 WN2 ] , BUTTER devuelve un filtro analogico pasabnda de orden 2N con banda de paso WN1 < W < WN2 y devuelve los coeficientes de filtro de longitud 2N +1 vectores NUM ( numerador) y DEN ( denominador). Los coeficientes son enumerados en potencias descendentes de s. Cuando Rp es elegido como 3 dB, el Wn en BUTTER es igual a Wp en BUTTORD.

Chebyshev.

[N, Wnc] = CHEB1ORD(Wp, Ws, Rp, Rs, 's')

CHEB1ORD tambin devuelve Wnc = [ WN1 , WN2 ], el Chebyshev bajo ( WN1 ) y alto ( WN2 ) naturales frecuencias para su uso con CHEBY1 para lograr las especificaciones.

[NUM, DEN]=CHEBY1(N,Rp,Wnc,'s')

Si Wnc es un vector de dos elementos Wnc = [ WN1 , WN2 ] con WN1 < WN2 , a continuacin, cheby1 (n, Rp, Wnc , ' s ' ) devuelve un filtro tipo Chebyshev I orden 2N analgico de paso de bandA con banda de paso WN1 < w < WN2 y con decibeles Rp de ondulacin de pico a pico en la banda de paso y regresalos coeficientes de filtro de longitud 2N +1 vectores NUM ( numerador) y DEN ( denominador). Los coeficientes son enumerados en potencias descendentes de s. La frecuencia de corte es Wnc en rad / s.

Cauer o elptica.

[N, Wne] = ELLIPORD(Wp, Ws, Rp, Rs, 's')

ELLIPORD tambin devuelve Wne = [ WN1 , WN2 ] en rad / s , la elptica baja ( WN1 ) y alto ( WN2 ) naturales frecuencias para su uso con Ellip para lograr las especificaciones.

[NUM, DEN]=ELLIP(N,Rp,Rs,Wn,'s')

Si Wne es un vector de dos elementos Wne = [ WN1 , WN2 ] con WN1 < WN2 , a continuacin, Ellip (n, Rp, Rs , Wne , ' s ') devuelve un filtro elptico analgico orden de paso de banda 2N con banda de pasoWN1 < w < WN2 y con decibeles Rp de ondulacin de pico a pico y una atenuacin mnima de banda suprimida de Rs decibelios. Ellip devuelve los coeficientes de filtro de longitud 2N+1 vectores NUM ( numerador) y DEN ( denominador ) . Los coeficientes se enumeran en potencias descendentes de s.

4) Filtros de rechazo de banda.

Butterworth.

[N, Wn] = BUTTORD(Wp, Ws, Rp, Rs, 's')

BUTTORD tambin devuelve Wn = [ WN1 , WN2 ], el bajo Butterworth ( WN1 ) y alto ( WN2 ) naturales frecuencias (o, los " 3 dB las frecuencias ") a utilizar con BUTTER para lograr las especificaciones.

[NUM, DEN]=BUTTER(N,Wn,stop,'s')

Disea un filtro Butterworth analogico 2Nesimo de supresin de banda y devuelve los coeficientes del filtro en longitud 2N +1 vectores NUM ( numerador) y DEN (denominador). Los coeficientes son enumerados en potencias descendentes de s. La frecuencia de corte Wn esta en rad / s. Cuando Rp es elegido como 3 dB, el Wn en BUTTER es igual a Wp en BUTTORD.

Chebyshev

[N, Wnc] = CHEB1ORD(Wp, Ws, Rp, Rs, 's')

CHEB1ORD tambin devuelve Wnc = [ WN1 , WN2 ] en rad / s, la frecuencia natural de Chebyshev usar con CHEBY1 para alcanzar las especificaciones.

[NUM, DEN]=CHEBY1(N,Rp,Wnc,stop,'s')

Disea un filtro de 2Nesimo orden de supresin de banda analgico Tipo Chebyshev I con decibelios Rp de pico a pico en la banda de paso y devuelve los coeficientes de filtro de longitud 2N +1 vectores NUM ( numerador )y DEN ( denominador). Los coeficientes son enumerados en potencias descendentes de s. El punto de corte frecuencia Wnc esta en rad / s.

Cauer o elptica.

[N, Wne] = ELLIPORD(Wp, Ws, Rp, Rs, 's')

ELLIPORD tambin devuelve Wne = [ WN1 , WN2 ] en rad / s, la frecuencia natural elptica usar con Ellip para alcanzar las especificaciones.

[NUM, DEN]=ELLIP(N,Rp,Rs,Wne, stop,'s')

Disea una orden de supresin de banda de filtro elptico analgico 2Nesimo con decibelios Rp de ondulacin de pico a pico y una atenuacin de la banda de parada mnimo de Rs decibelios. Ellip devuelve los coeficientes de filtro de longitud 2N +1 vectores NUM ( numerador) y DEN ( denominador). Los coeficientes se enumeran en potencias descendentes de s. La frecuencia de corte es Wne en rad / s.

5) Ejemplo.

Obtener con MATLAB las funciones de transferencia de un filtro paso bajo utilizando las funciones de aproximacin de Butterworth, Chebyshev y Cauer. Factorizar la funcin de transferencia obtenida. Las especificaciones son:

ws=20002 rad/seg, wp=10002 rad/seg, Amax=0.5dB y Amin=40dB

% Ejemplo de diseo de filtros analgicos con Matlab % Encontrar las funciones de aproximacin de paso bajo de Butterworth, % Chebyshev y elptica para los requerimientos de un filtro: % Amax=0.5dB, Amin=40dB, fp=1000Hz, fs=2000rad/seg close all; clear all; s=tf('s'); Amax=0.5; Amin=40; Rs=Amin; Rp=Amax; Wp=2*pi*1000; Ws=2*pi*2000; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Obtenemos la funcin de aproximacin de Butterworth [Nb, Wn] = buttord(Wp, Ws, Rp, Rs, 's') [NUM, DEN]=butter (Nb,Wn,'s'); gbut=tf(NUM,DEN) hbut=1/gbut; % Comprobamos que se verifican las especificaciones w=[Ws,Wp]; [mag]=bode(hbut,w); magdB=20*log10(mag) % Factorizamos la funcin de transferencia [sosb,g]=tf2sos(NUM,DEN); % Ver en Workspace %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Obtenemos la funcin de aproximacin de Chebyshev [Nc, Wnc] = cheb1ord(Wp, Ws, Rp, Rs, 's') [NUM, DEN]=cheby1(Nc,Rp,Wnc,'s'); gcheb=tf(NUM,DEN) hcheb=1/gcheb; % Comprobamos que se verifican las especificaciones [mag]=bode(hcheb,w); magdB=20*log10(mag) % Factorizamos la funcin de transferencia [sosch,g]=tf2sos(NUM,DEN); % Ver en Workspace %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Obtenemos la funcin de aproximacin de Cauer [Ne, Wne] = ellipord(Wp, Ws, Rp, Rs, 's') [NUM, DEN]=ellip(Ne,Rp,Rs,Wne,'s'); gcauer=tf(NUM,DEN) hcauer=1/gcauer; % Comprobamos que se verifican las especificaciones [mag]=bode(hcauer,w); magdB=20*log10(mag) % Factorizamos la funcin de transferencia [soscauer,g]=tf2sos(NUM,DEN); % Ver en Workspace %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Dibujamos el diagrama de Bode de las tres funciones de perdidas obtenidas bodemag(hbut,hcheb,hcauer); title(''); legend(['Butterworth de orden ' num2str(Nb)], ... ['Chebyshev de orden ', num2str(Nc)],['Cauer de orden ', num2str(Ne)])

Respuesta Commando Window:

Nb =

9

Wn =

7.5334e+03

gbut = 7.815e34 --------------------------------------------------------------- s^9 + 4.338e04 s^8 + 9.41e08 s^7 + 1.332e13 s^6 + 1.352e17 s^5 + 1.019e21 s^4 + 5.696e24 s^3 + 2.283e28 s^2 + 5.974e31 s + 7.815e34 Continuous-time transfer function.

magdB(:,:,1) =

40.0000

magdB(:,:,2) =

0.1626

Nc =

5

Wnc =

6.2832e+03

gcheb = 1.752e18 -------------------------------------------------------------- s^5 + 7367 s^4 + 7.648e07 s^3 + 3.248e11 s^2 + 1.173e15 s + 1.752e18 Continuous-time transfer function.

magdB(:,:,1) =

42.0387

magdB(:,:,2) =

0.5000

Ne =

4

Wne =

6.2832e+03

gcauer = 0.01 s^4 + 8.31e-15 s^3 + 7.074e06 s^2 - 8.117e-08 s + 6.993e14 -------------------------------------------------------------- s^4 + 7408 s^3 + 6.932e07 s^2 + 2.69e11 s + 7.407e14 Continuous-time transfer function.

magdB(:,:,1) =

40.8480

magdB(:,:,2) =

0.5000

Bibliografa

Seales y Sistemas 1 FiltrosAsuncin Moreno

Diseo y anlisis de filtros en procesamiento de audioMartha Ruiz CostaHelenca Duxans Barrobes

Procesamiento Digital de Seales | Informe N01: Presentacin de Trabajo a Desarrollar18