filtrado digital fir e iir - sitio web rectoradomdoallo/descargas/...cad h ejω cda y(t) x(t)...

25
Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas Facultad de Ingeniería y Ciencias Exactas y Naturales Msc. Ing. Franco Martin Pessana [email protected] FILTRADO DIGITAL FIR E IIR La función principal de un filtro digital, es discriminar las frecuencias de una señal de entrada discreta x[n], convirtiéndola en una señal de salida y[n]. Para ello, se parte de una señal digitalizada (por medio de conversores analógico-digital) y según la ubicación de polos y ceros del filtro digital H(z), será la secuencia de salida obtenida, la cual puede ser transformada nuevamente en una señal analógica (conversores digital- analógico). La Figura siguiente muestra un diagrama en bloques de un filtro digital. Los conceptos necesarios para trabajar con filtros digitales se basan en el conocimiento de la Transformada Z, Transformada de Fourier de una secuencia y las propiedades de ambas. Es fundamental el manejo de estas propiedades para el diseño y cálculo de los diferentes filtros digitales. Transformada Z Sea x[n] una señal discreta absolutamente integrable para < < n . Se define la Transformada Z Bilateral (TZB) de x[n] como: () [] { } [] +∞ −∞ = = = n n B z n x n x Z z X , con 2 1 R z R < < (1) La Transformada Z Bilateral de una secuencia, tendrá una cierta región de validez, en la cual X B (z) es convergente, llamada región de convergencia (ROC). Si x[n] es una señal causal, es decir x[n]=0 para 0 < n , se define la Transformada Z Unilateral (TZ) de x[n] como: () [] { } [] +∞ = = = 0 n n z n x n x Z z X , con z R < (2) Al ser la señal x[n] causal, su ROC estará formada por todos los puntos del plano complejo Z que se encuentran fuera de un círculo de radio R. La TZ debe ir siempre acompañada de su ROC ya que dos señales completamente diferentes pueden tener la misma Transformada Z, solamente diferenciándose por su correspondiente ROC. Ejemplo Encontrar la Transformada Z de la señal causal [ ] [ ] n u a n x n = () [] () a z z z X z a z a z a z n x z X n n n n n n n = = = = = = = = 1 1 0 0 0 con a z > (3) La expresión (3) indica que la TZ de x[n], está formada por un cero en el origen y un polo ubicado en a y es convergente para todos los puntos del plano complejo exteriores a un círculo de radio a . CAD ( ) ω j e H CDA y(t) x(t)

Upload: others

Post on 07-Mar-2020

12 views

Category:

Documents


1 download

TRANSCRIPT

Procesamiento Digital de Señales

Adquisición y Procesamiento de Señales Biológicas Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

FILTRADO DIGITAL FIR E IIR

La función principal de un filtro digital, es discriminar las frecuencias de una señal de entrada discreta x[n], convirtiéndola en una señal de salida y[n]. Para ello, se parte de una señal digitalizada (por medio de conversores analógico-digital) y según la ubicación de polos y ceros del filtro digital H(z), será la secuencia de salida obtenida, la cual puede ser transformada nuevamente en una señal analógica (conversores digital-analógico). La Figura siguiente muestra un diagrama en bloques de un filtro digital.

Los conceptos necesarios para trabajar con filtros digitales se basan en el conocimiento de la Transformada Z, Transformada de Fourier de una secuencia y las propiedades de ambas. Es fundamental el manejo de estas propiedades para el diseño y cálculo de los diferentes filtros digitales. Transformada Z Sea x[n] una señal discreta absolutamente integrable para ∞<<−∞ n . Se define la Transformada Z Bilateral (TZB) de x[n] como:

( ) [ ]{ } [ ]∑+∞

−∞=

−==n

nB znxnxZzX , con 21 RzR << (1)

La Transformada Z Bilateral de una secuencia, tendrá una cierta región de validez, en la cual XB(z) es convergente, llamada región de convergencia (ROC). Si x[n] es una señal causal, es decir x[n]=0 para 0<n , se define la Transformada Z Unilateral (TZ) de x[n] como:

( ) [ ]{ } [ ]∑+∞

=

−==0n

nznxnxZzX , con zR < (2)

Al ser la señal x[n] causal, su ROC estará formada por todos los puntos del plano complejo Z que se encuentran fuera de un círculo de radio R. La TZ debe ir siempre acompañada de su ROC ya que dos señales completamente diferentes pueden tener la misma Transformada Z, solamente diferenciándose por su correspondiente ROC. Ejemplo Encontrar la Transformada Z de la señal causal [ ] [ ]nuanx n=

( ) [ ] ( )az

zzX

zaz

azaznxzXn

n

n

nn

n

n

−=⇒

−=⎟

⎠⎞

⎜⎝⎛=⋅=⋅= ∑∑∑

=

=

−∞

=

− 1

1000

con az > (3)

La expresión (3) indica que la TZ de x[n], está formada por un cero en el origen y un polo ubicado en a y es convergente para todos los puntos del plano complejo exteriores a un círculo de radio a .

CAD

( )ωjeH

CDA y(t) x(t)

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

Fórmula de antitransformación Como toda transformada, las Transformada Z Bilateral o Unilateral tendrán una fórmula de antitransformación que permitirá obtener la secuencia x[n] a partir de su Transformada Z. Esa expresión está dada por:

[ ] ( )∫ −=C

n dzzzXj

nx 1

21π (4)

La expresión (4) es válida tanto para Transformada Bilateral como para Unilateral. Calcular la Transformada Z Inversa, implica realizar una integral curvilínea cerrada, perteneciendo la curva de integración C a la ROC de la TZB o TZ. Propiedades de la Transformada Z A partir de las definiciones (1) y (2), pueden desprenderse un conjunto de propiedades (linealidad, desplazamiento, convolución, etc.), tanto para TZB como para TZ. Propiedades comunes (TZB y TZ)

[ ] ( ) Ζ∈= ∫ − n ,dzz·zF

πj21

C

1n f n [ ]∑∞

−∞=

−=n

nn zf(z)Fb ; [ ]∑

=

−=0n

nn zfF(z)

1 [ ] [ ]n22n11 fafa + )z(Fa)z(Fa 2211 +

2 [ ]nf ( )zF

3 [ ]{ }nfRe ( ) ( )[ ]zFzF21 +

4 [ ]{ }nfIm ( ) ( )[ ]zFzFj21 −

5 [ ]nk fn { }0k)z(F

dzdz)1(

kk ∪ℵ∈⎟

⎠⎞

⎜⎝⎛− ,

6 [ ] 0afa nn ≠± , ( )zaF 1m

7 [ ]{ } [ ]{ }nn g*f )z(G)z(F ⋅

8 [ ] ∫ Ζ∈π

− ndzz)z(Fj2

1f 1nn , )z(F

9 [ ] ∫π

=σω⋅σ

σ−

ωω

Tde)e(F

21f TjnTj

n , )z(F

10 [ ] [ ]nn gf ⋅ ( )∫ ω⎟⎠⎞

⎜⎝⎛

ω⋅ω

ωπ γdzGF1

j21

Propiedades exclusivas de TZB

[ ] ( ) Ζ∈= ∫ − n ,dzz·zFπj21

C

1n f n [ ]∑∞

−∞=

−=n

nn zf(z)Fb

1 [ ]anf + )z(Fza

2 [ ]anf − )z(Fz a−

3 [ ]nf − ⎟⎠⎞

⎜⎝⎛

z1F

4 [ ]

anf n

+ ∫− −− dz)z(Fzz a1a

5 [ ]nf − ⎟⎠⎞

⎜⎝⎛

z1F

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

Propiedades exclusivas de TZ

[ ] ( ) { }0n ,dzz·zFπj21

C

1n ∪ℵ∈= ∫ − f n [ ]∑∞

=

−=0n

nn zfF(z)

1 [ ]anf + ( ) [ ] [ ] [ ][ ] ℵ∈−−−− −+−− afzfzfzFz 1a

1a1

10

a , L

2 [ ]anf − ( ) ℵ∈− azFz a ,

3 [ ]anf − ( ) [ ] [ ] [ ] [ ]11a

2a2

1a1

aa fzfzfzfzFz −

+−+−

−+−

−−

− +++++ L

4 [ ]0f ( )zFlimz ∞→

5 [ ]nnflim

∞→ ( ) ( )zF·z1lim 1

1z

→−

6 [ ]nf∇ ( )zFz

1z −

7 [ ]nm f∇ ( )zF

z1z m

⎟⎠⎞

⎜⎝⎛ −

8 [ ]nfΔ ( ) ( ) [ ]0zfzF1z −−

9 [ ]nm fΔ ( ) ( ) ( ) [ ]∑ Δ−−−

=

−−1m

0k0

k1kmm f1zzzF1z

10 [ ]∑=

n

0kkf ( )zF

1zz−

11 [ ] ℵ∈nnf n , ( ) [ ]

∫ +′′′∞

∞→z

n

n nf

límzdzzF

Siendo: [ ] [ ] [ ]

[ ] [ ] [ ]⎪⎩

⎪⎨⎧

−=Δ

−=∇

+

n1nn

1nnn

ffffff

Identidad de Parseval

[ ] [ ] ( )∫ ωω⎟⎠⎞

⎜⎝⎛

ω⋅ω

π=∑

γ

−∞

−∞=d1GF

j21gf 1

nnn

[ ] ( )∫ ωω⎟⎠⎞

⎜⎝⎛

ω⋅ω

π=∑

γ

−∞

−∞=d1FF

j21f 1

n

2

n

Transformada de Fourier de una Secuencia Sea x[n] una señal discreta absolutamente integrable para ∞<<−∞ n . Se define la Transformada de Fourier de la secuencia (TFS) de x[n] como:

( ) [ ]{ } [ ]∑+∞

−∞=

−⋅=ℑ=n

njj enxnxeX ωω (5)

La expresión (5) se caracteriza por ser una señal continua de la variable ω (a pesar de haber partido de una secuencia) y es periódica en ω de período 2π. Esta característica particular de la TFS, permite obtener su expresión de antitransformación mediante la Serie Exponencial de Fourier, siendo los coeficientes de la serie, la señal x[n].

[ ] ( )∫−

π

ωω ωπ

de·eXnx njj

21 , con ∞<<−∞ n (6)

Al igual que la Transformada Z, la TFS tiene una serie de propiedades que permiten su cálculo en forma eficiente, principalmente cuando se trabaja con la respuesta en frecuencia de un filtro digital, es decir, la representación gráfica de su respuesta de amplitud y fase en función de ω. Las propiedades que se muestran a continuación, son las básicas para trabajar con la TFS en filtros digitales FIR e IIR.

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

Propiedades TFS

[ ] ( )∫

π

ωω ωπ

de·eF njj

21nf ( ) [ ]∑

+∞

−∞=

−⋅=n

njenx ωωjeF

1 [ ] [ ]n22n11 fafa + )e(Fa)e(Fa jj ωω2211 +

2 [ ]0nnf m ( ) 0njj e·eF ωω m

3 [ ] nje·nf 0ω± ( )( )0ωωmjeF

4 [ ] [ ] [ ] [ ] [ ]∑∞

−∞=

−=∗=i

inh·ixnhnxny ( ) ( ) ( )ωωω jjj eHeXeY ⋅=

Relación entre TFS y TZB Existe una relación entre la Transformada de Fourier de una Secuencia y la Transformada Z Bilateral. Si la ROC de la TZB de una secuencia x[n] contiene al círculo de radio unidad en el plano complejo Z, entonces se puede demostrar que:

( ) ( ) ωω

jezBj zHeH

== con πωπ ≤≤− y ROCe j ∈ω de HB(z) (7)

Filtros Digitales Un filtro digital puede ser definido como la transformada Z de un sistema lineal e invariante al desplazamiento (SLID). Considerando que todo SLID puede ser representado mediante una ecuación en diferencias lineal de orden n:

[ ] [ ] [ ] [ ] [ ] [ ] [ ] [ ]MnxbnxbnxbnxbNnyanyanyanya MN −++−+−+=−++−+−+ LL 2121 210210 (8)

Transformando miembro a miembro (8) y considerando las propiedades de la TZ:

( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )zXzbzXzbzXzbzXbzYzazYzazYzazYa MN

NN

−−−−−− ++++=++++ LL 22

110

22

110

( ) ( )( ) N

N

MN

zazazaazbzbzbb

zXzYzH

−−−

−−−

++++

++++==

L

L2

21

10

22

110 (9)

La expresión (9) es la transferencia general de un filtro digital IIR (Infinite Impulse Response), también conocida como filtro ARMA (Auto Regresive Moving Average). En el caso que 0321 ===== Naaaa L , la transferencia del filtro IIR queda:

( ) ( )( ) M

NMMMM

N

zabzbzbzb

azbzbzbb

zXzYzH

0

22

110

0

22

110 ++++

=++++

==−−−−− LL (10)

La expresión (10) es la transferencia de un filtro digital denominado FIR (Finite Impulse Response), también conocido como filtro AR (Auto Regresive). Características generales de los filtros FIR • Respuesta Finita al Impulso h[n], es decir [ ] 0≠nh para 1121 −+=≤≤ NNNnN , donde

si 01 ≥N el filtro FIR será causal.

• Su respuesta en frecuencia estará dada por ( ) [ ]{ } [ ]∑=

−⋅=ℑ=2

1

N

Nn

njj enhnheH ωω

• La Transformada Z de un filtro FIR de orden N está formada por N polos ubicados en el origen de coordenadas del plano complejo Z y N ceros ubicados en cualquier zona del plano Z.

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

• La fase de los FIR es siempre lineal. • La relación entre la frecuencia angular continua Ω y el ángulo discreto ω es lineal

siendo sT

ωΩ = .

• Debido a que los FIR tienen respuesta finita al impulso, prácticamente (en tiempo real), el filtrado de señales se realiza con la operación de convolución en el tiempo o por medios de la FFT en el dominio frecuencial.

• Al estar todos sus polos en el origen, carecen de realimentaciones de la salida, lo que los hace insensibles al ruido por redondeo. Hay que tener en cuenta que el ruido por de cuantificación puede ser crítico según la longitud de palabra que se utilice para diseñar los coeficientes del filtro FIR.

• Los filtros FIR se diseñan según la ubicación de sus ceros, o mediante ventanas de observación temporal.

Características generales de los filtros IIR • h[n] tiene un número infinito de muestras.

• La respuesta en frecuencia está dada por ( )∑

=

=

= N

k

kjk

M

k

kjk

j

ea

ebeH

0

0

ω

ω

ω .

• El orden del filtro (N polos), determina el número previo de muestras de la salida que se necesitan almacenar y realimentar en el filtro.

• Los filtros IIR se implementan prácticamente mediante ecuaciones en diferencias de orden N que determinan la ubicación de los polos y ceros del filtro.

• Son de fácil implementación para 6≤N . • La fase de los filtros IIR es alineal. Sin embargo para máxs ff >> , la relación de fase

es aproximadamente lineal. • Los filtros IIR se diseñan clásicamente a partir de filtros analógicos mediante la

transformada bilineal, que relaciona la frecuencia compleja S con la variable compleja z.

Estabilidad de los filtros digitales Un sistema discreto se dice estable si ante una entrada acotada en amplitud, la salida del mismo también está acotada en amplitud. Este concepto llevado al plano complejo Z y haciendo uso de la relación entre TFS y TZB indica que:

“Un filtro digital (FIR o IIR) será estable si la ROC de su Transformada Z incluye al círculo de radio unidad, es decir ωjez = . Esto equivale a decir que para filtros causales, los polos de su transferencia deben estar dentro del círculo de radio unitario”.

Los filtros FIR siempre serán estables ya que tienen todos sus polos en el origen de coordenadas del plano Z, en cambio los filtros IIR pueden llegar a ser inestables si el módulo de sus polos queda fuera de 1=z . Diseño de Filtros IIR mediante Transformada Bilineal El diseño de los filtros IIR se basa en el conocimiento de la respuesta en frecuencia

( )sH de filtros analógicos. En consecuencia, se debe encontrar una transformación conforme que transforme el plano complejo Ωσ jS += en el plano complejo jyxZ += .

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

La función de variable compleja que realiza esta transformación es la Transformada Bilineal y está dada por:

( )1

1

112

+−

==zz

Tzfs

s

(11)

Esta transformación, mapea el semiplano izquierdo 0≤σ , del plano complejo S en el círculo de radio unidad 1≤z del plano complejo Z, asegurando que cualquier filtro analógico estable y causal (todos sus polos a la izquierda del eje jΩ), se encuentren dentro del círculo de radio unidad en el plano Z, condición esencial de todo filtro digital causal para ser estable. Para analizar la relación entre la frecuencia angular Ω del plano complejo S y el ángulo ω del plano complejo Z, se reemplaza ωjez = en la expresión (11) obteniéndose:

22

22

2

2

1

1 2112

112

112

ωω

ωω

ω

ω

ω

ω

ωω

Ωσjj

jj

j

j

sj

j

sezsezs ee

ee

e

eTe

eTz

zTz

zT

jsjj −

==−

+

−=

+−

=+−

=+−

=+=

⎟⎠⎞

⎜⎝⎛=⇒⎟

⎠⎞

⎜⎝⎛=

⎟⎠⎞

⎜⎝⎛

⎟⎠⎞

⎜⎝⎛

=+=2

22

2

2

22 ωΩωω

ω

Ωσ tgT

tgT

jcos

sen

Tjjs

sss

(12)

De la expresión (12), puede observarse la relación alineal entre la frecuencia angular continua Ω y el ángulo ω. Sin embargo, para frecuencias de muestreo de varios órdenes de magnitud de las señales a filtrar (el filtro a diseñar), la relación es aproximadamente lineal ya que ( ) xxtg ≈ para 1<<x , y ello ocurre cuando estamos a más de una década del polo dominante del filtro a diseñar. La relación lineal que se obtiene ante estas

frecuencias de muestreo es ss

fT

⋅== ωωΩ , exactamente igual a la relación lineal entre Ω

y ω de los filtros digitales FIR. Ejemplo Dado un filtro Pasa Bajos RC de primer orden, se pide encontrar el filtro digital IIR correspondiente mediante el uso de la transformada bilineal.

En la figura siguiente, se observa el filtro analógico RC de primer orden:

La ecuación diferencial que modeliza la relación entrada-salida de este filtro está dada por:

( ) ( ) ( )txRC

tyRCdt

tdy 11=+ (13)

Transformando miembro a miembro por Laplace la ecuación (13) se tiene que:

( ) ( ) ( ) ( ) ( )( ) RCs

RCs

RCsXsYsHsX

RCsY

RCssY c

c

c 1 siendo , 1

1

11=

+=

+==⇒=+ Ω

ΩΩ (14)

Si se utiliza la transformación bilineal para encontrar el filtro digital equivalente, se tiene que:

( ) ( ) ( )1

1

112

1

1

112

+

−=

=−

+==⇒

+−

=

zz

Tzc

czfs

ss

ssHzH

zz

Ts

ΩΩ

R

C x(t) y(t)

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

( ) ( ) ( ) ( ) 1

1

2222 −

−+++

=++−

+=

zTTzTT

zTTzTT

)z(Hscsc

scsc

scsc

scsc

ΩΩΩΩ

ΩΩΩΩ

110

110

++

=zaazbb

)z(H , siendo:

⎪⎪⎪⎪

⎪⎪⎪⎪

+−

=

=+

=

+=

22

12

2

1

0

1

0

sc

sc

sc

sc

sc

sc

TT

a

aT

Tb

TT

b

ΩΩ

ΩΩ

ΩΩ

(15)

Como puede apreciarse en la expresión (15), el filtro IIR correspondiente al filtro analógico Pasa Bajos RC, está compuesto por un cero en 10 −=z y un polo ubicado en

sc

scP T

Tz

ΩΩ

+−

=22 , es decir, dentro del círculo de radio unidad.

Diseño de Filtros FIR mediante ventanas El diseño de filtros FIR mediante ventanas se compone por 3 etapas en el diseño:

1. Calcular la respuesta al impulso del filtro ideal deseado, es decir:

[ ] ( )∫−

⋅=π

π

ωω ωπ

deeHnh njjdd 2

1

2. Si la ventana de observación [ ]nWN es de longitud N, la respuesta en frecuencia del filtro ideal deseado debe contener un término lineal de fase (característica de los filtros FIR), como el siguiente filtro Pasa Bajos digital ideal:

( )πωωωωωω

ω

≤≤≤≤−

⎪⎩

⎪⎨⎧

⋅=−

c

ccN

jj

d ,,eeH

01 2

1

3. Crear los coeficientes del filtro digital FIR (coeficientes Nb,,b,b L10 ), multiplicando [ ]nhd por la ventana de observación deseada [ ]nWN .

[ ] [ ] [ ]nWnhnh Nd ⋅= Filtro Ideal Pasa Bajos Digital

( )πωωωωωωα

ω

≤≤≤≤−

⎩⎨⎧ ⋅

=−

c

ccj

jd ,

,eeH

01 , siendo

21−

=Nα (16)

De la respuesta en frecuencia ideal del filtro Pasa Bajos Digital (16), se tiene que:

[ ] ( ) ( )( )

( )c

c

c

c

c

cnj

ededeedeeHnhnj

njnjjnjjdd

ω

ω

αωω

ω

αωω

ω

ωωαπ

π

ωω

απω

πω

πω

π−

− −==⋅=⋅= ∫∫∫ 2

121

21

21

−π −ωc 0 ωc π ω

1 ( )ωj

d eH

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

[ ] ( )( ) ( )[ ] [ ] ( )[ ]

21 ,

21 −

=−=⇒−−

= −−− Nncsinnheenj

nh cc

dnjnj

dcc ααω

πω

απαωαω (17)

Filtro Ideal Pasa Banda Digital

( )casos otros

0

1 21 ωωωωαω ≤≤

⎩⎨⎧ ⋅

=−

,,e

eHj

jd , siendo

21−

=Nα (18)

De la respuesta en frecuencia ideal del filtro Pasa Banda Digital (18), se tiene que:

[ ] ( ) ( ) ( )

⎥⎥⎦

⎢⎢⎣

⎡+=

⎥⎥⎦

⎢⎢⎣

⎡⋅+⋅=⋅= ∫∫∫∫∫ −

−−−

2

1

1

2

2

1

1

221

21

21 ω

ω

αωω

ω

αωω

ω

ωωαω

ω

ωωαπ

π

ωω ωωπ

ωωπ

ωπ

dededeedeedeeHnh njnjnjjnjjnjjdd

[ ]( )

( )( )

( ) ( )( ) ( ) ( ) ( )[ ]αωαωαωαω

ω

ω

αωω

ω

αω

απααπ−−−−−−

−−

−+−−

=⎥⎥⎦

⎢⎢⎣

−+

−= njnjnjnj

njnj

d eeeenjnj

enj

enh 1221

2

1

1

22

121

[ ] ( ) ( )[ ] ( )[ ][ ] ( )[ ]( )

( )[ ]( ) 1

1

11

2

2212 ⇒

−−

−−

−=−−−

−=

απωαωω

απωαωω

αωαωαπ n

nsenn

nsennsennsen

nnhd

[ ] ( )[ ] ( )[ ]2

1 , 11

22 −

=−−−=Nncsinncsinnhd ααω

πω

αωπω (19)

Filtro Ideal Pasa Altos Digital

De la figura anterior, que indica la respuesta en frecuencia de un filtro ideal Pasa Altos, puede apreciarse que es la misma que se obtendría a partir de la respuesta de un filtro ideal Pasa Bajos con una frecuencia de corte cωπω −= desplazado a la derecha en una frecuencia πω =0 . Por otra parte (propiedad 3 de TFS), se tiene que:

[ ] ( )ωjeHnh ↔ [ ] ( )( )00 ωωω mjnj eHenh ↔⋅ ± (20)

En consecuencia, de (20) se tiene que:

[ ] [ ] ( )( )[ ] ( ) ⇒−=⋅−−−

=⋅= 1 pero , πππ αωππ

ωπ jnjc

cnjdLPd eencsinenhnh

[ ] ( ) ( )( )[ ]2

1 , 1 −=−−

−−=

Nncsinnh ccn

d ααωππ

ωπ (21)

Filtro Ideal Elimina Banda Digital

−π −ω2 −ω1 0 ω1 ω2 π ω

1 ( )ωj

d eH

−π −ωc 0 ωc π ω

1 ( )ωj

d eH

−π −ω2 −ω1 0 ω1 ω2 π ω

1 ( )ωj

d eH

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

El filtro Elimina banda ideal puede ser visto como una combinación lineal (suma) de un filtro Pasa Bajos con una frecuencia de corte 1ωω = y un filtro Pasa Altos con una frecuencia de corte 2ωω = . En consecuencia:

( ) ( ) ( ) [ ] [ ] [ ]nhnhnheHeHeH dHPdLPdRBj

HPj

LPj

dRB +=⇒+= ωωω

[ ] ( )[ ] ( ) ( )( )[ ]2

1y , 1 2122

11 −

=<−−−

−+−=Nncsinncsinnh n

dRB αωωαωππ

ωπαωπω (22)

Ventanas de Observación

Tipo de Ventana Función ventana WN[n], 1Nn0 −≤≤

Rectangular 1

Barlett 2

1Nn01N

n2 −≤≤

− para

1Nn2

1N1N

n22 −≤≤−

−− para

Hanning ⎟⎟⎠

⎞⎜⎜⎝

⎛⎟⎠⎞

⎜⎝⎛

−π

−1Nn··2cos15.0

Hamming ⎟⎠⎞

⎜⎝⎛

−π

−1Nn··2cos46.054.0

Blackman ⎟⎠⎞

⎜⎝⎛

−+⎟

⎠⎞

⎜⎝⎛

−−

14080

1250420

Nn··cos.

Nn··cos.. ππ

Kaiser [ ]β

⎥⎥

⎢⎢

⎡⎟⎠⎞

⎜⎝⎛

−−−β

0

2

0

I

1Nn·211·I

Donde I0 es la Función de Bessel modificada de orden cero Características de las Ventanas de Observación

Tipo de Ventana Ancho de Banda de Transición Δω [rad]

Atenuación Mínima en Banda de Transición [dB]

Rectangular N8.1 π 21

Barlett N6.5 π 25

Hanning N2.6 π 44

Hamming N6.6 π 53

Blackman N11π 74

Kaiser (β=4.54) N8.5 π 50

Kaiser (β=5.67) N8.7 π 60

Las tablas anteriores muestras las características temporales y frecuenciales de las ventanas de observación de uso frecuente. La atenuación mínima que se obtiene para cada una de las ventanas, es función del orden del filtro FIR (número de muestras N+1) y en consecuencia, la selectividad aumenta incrementando la cantidad de coeficientes del filtro.

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

Ejemplos de diseño de Filtros Digitales FIR e IIR Primera Parte. Filtros FIR (Finite Impulse Response)

1. Para cada una de las siguientes especificaciones de diseño, se pide implementar los FIR correspondientes mediante una ventana rectangular. En todos los caso el valor de N es 67. Se pide además graficar la respuesta al impulso de cada uno de ellos y la respuesta en frecuencia (lineal y semilogarítmica) para cada uno de ellos verificando su diseño. Utilice para estos gráficos MatLab.

a) Filtro Pasa Bajos con las siguientes características: Frecuencia de Muestreo fs de 8 KHz; Banda de Paso: 0 – 1 KHz.

A partir de los datos del problema, se tiene que:

[ ]rad.ff

ff

s

cc

cc

s 25041

8000100022 2 ππππω

ωπ

====⇒=

De la expresión (17) se tiene que:

[ ] ( )[ ]2

1 , −=−=

Nncsinnh cc

d ααωπω y además [ ] [ ] [ ]NnununWN −−=

En consecuencia los coeficientes del filtro FIR (su respuesta al impulso) serán:

[ ] [ ] [ ] ( )[ ] [ ] [ ]( ) NnununcsinnWnhnh cc

Nd −−⋅−=⋅= αωπω

con 67y 2

1 ,250 =−

== NN.c απω

b) Filtro Pasa Altos con las siguientes características: Frecuencia de Muestreo fs de 8 KHz; Banda de Paso: 3 – ∞ KHz.

A partir de los datos del problema, se tiene que:

[ ]rad.ff

ff

s

cc

cc

s 75043

8000300022 2 ππππω

ωπ

====⇒=

De la expresión (21) se tiene que:

[ ] ( ) ( )( )[ ]2

1 , 1 −=−−

−−=

Nncsinnh ccn

d ααωππ

ωπ y además [ ] [ ] [ ]NnununWN −−=

En consecuencia los coeficientes del filtro FIR (su respuesta al impulso) serán:

[ ] [ ] [ ] ( ) ( )( )[ ] [ ] [ ]( ) 1 NnununcsinnWnhnh ccn

Nd −−⋅−−−

−=⋅= αωππ

ωπ

con 67y 2

1 ,750 =−

== NN.c απω

c) Filtro Pasa Banda con las siguientes características: Frecuencia de Muestreo fs de 8 KHz; Banda de Eliminación Inferior: 0 – 1 KHz; Banda de Paso: 1 – 2 KHz; Banda de Eliminación Superior: 2 – ∞ KHz.

A partir de los datos del problema, se tiene que:

[ ]rad.ff

ff

scc

s 25041

8000100022 2 1

1 ππππωωπ

====⇒=

[ ]rad.ff

ff

scc

s 5021

8000200022 2 2

2 ππππωωπ

====⇒=

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

De la expresión (19) se tiene que:

[ ] ( )[ ] ( )[ ]2

1 , 11

22 −

=−−−=Nncsinncsinnhd ααω

πω

αωπω y además

[ ] [ ] [ ]NnununWN −−=

En consecuencia, los coeficientes del filtro FIR (su respuesta al impulso) serán:

[ ] [ ] [ ] ( )[ ] ( )[ ] [ ] [ ]( ) 11

22 NnununcsinncsinnWnhnh Nd −−⋅⎟

⎞⎜⎝

⎛ −−−=⋅= αωπω

αωπω

con 67y 2

1 ,50 ,250 21 =−

=== NN.. απωπω

d) Filtro Elimina Banda con las siguientes características: Frecuencia de Muestreo fs de 8 KHz; Banda de Paso Inferior: 0 – 1 KHz; Banda de Eliminación: 1 – 2 KHz; Banda de Paso Superior: 2 – ∞ KHz.

A partir de los datos del problema, se tiene que:

[ ]rad.ff

ff

scc

s 25041

8000100022 2 1

1 ππππωωπ

====⇒=

[ ]rad.ff

ff

scc

s 5021

8000200022 2 2

2 ππππωωπ

====⇒=

De la expresión (22) se tiene que:

[ ] ( )[ ] ( ) ( )( )[ ]2

1 , 1 22

11 −

=−−−

−+−=Nncsinncsinnh n

d ααωππ

ωπαωπω y además

[ ] [ ] [ ]NnununWN −−=

En consecuencia los coeficientes del filtro FIR (su respuesta al impulso) serán:

[ ] [ ] [ ] ( )[ ] ( ) ( )( )[ ] [ ] [ ]( ) 1 22

11 NnununcsinncsinnWnhnh n

Nd −−⋅⎟⎠⎞

⎜⎝⎛ −−

−−+−=⋅= αωπ

πωπαω

πω

con 67y 2

1 ,50 ,250 21 =−

=== NN.. απωπω

e) Reduzca el orden N de los filtros y observe como cambian las características de los filtros diseñados. ¿Qué puede concluir al respecto?.

A responder por el alumno en base al análisis de los algoritmos diseñados.

2. Para cada una de las siguientes especificaciones de diseño, se pide implementar los FIR correspondientes mediante la técnica de ventanas. Se pide además graficar la respuesta al impulso de cada uno de ellos y la respuesta en frecuencia (lineal y semilogarítmica) para cada uno de ellos verificando su diseño. Utilice para estos gráficos MatLab. a) Diseñe un filtro Pasa Bajos con las siguientes características: Frecuencia de

Muestreo fs de 8 KHz; Banda de Paso: 0 – 1 KHz; Banda de Eliminación: 1.4 – ∞ KHz; Atenuación en Banda de Eliminación: 50 dB.

A partir de los datos del problema, se tiene que: [ ]Hzf 40010001400 =−=Δ . De la tabla de características de atenuación

(ventanas de observación), se elige una ventana de Hamming, es decir:

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

[ ] ⇒⎟⎠⎞

⎜⎝⎛

−−=

12460540N

n··cos..nWN

π de la tabla de atenuaciones de ventanas:

[ ]rad.ff.Ns

10101

800040022 66 πππΔπωΔ

ωΔπ

====⇒=

66106666

===ππ

ωΔπ

.

..N . Se elige un valor de 67=N .

Por otra parte, al tener una banda de transición desde la banda de paso a la banda de eliminación que no es infinita, se tiene que:

[ ] [ ]rad.ffHzf

s

ccc 30

103

8000120022 1200

214001000 ππππω ====⇒=

+=

De la expresión (17) se tiene que:

[ ] ( )[ ]2

1 , −=−=

Nncsinnh cc

d ααωπω y además [ ] ⎟

⎠⎞

⎜⎝⎛

−−=

12460540N

n··cos..nWN

π

En consecuencia los coeficientes del filtro FIR (su respuesta al impulso) serán:

[ ] [ ] [ ] ( )[ ] 10 ,1

2460540 −≤≤⎥⎦

⎤⎢⎣

⎡⎟⎠⎞

⎜⎝⎛

−−⋅−=⋅= Nn

Nn··cos..ncsinnWnhnh c

cNd

παωπω

con 67y 2

1 ,30 =−

== NN.c απω

b) Diseñe un filtro Pasa Altos con las siguientes características: Frecuencia de Muestreo fs de 10 KHz; Banda de Eliminación: 0 – 3 KHz; Banda de Paso: 3.5 – ∞ KHz; Atenuación en Banda de Eliminación: 40 dB.

A partir de los datos del problema, se tiene que:

[ ]Hzf 50030003500 =−=Δ . De la tabla de características de atenuación (ventanas de observación), se elige una ventana de Hanning, es decir:

[ ] ⇒⎥⎦

⎤⎢⎣

⎡⎟⎠⎞

⎜⎝⎛

−−=

121

21

Nn··cosnWN

π de la tabla de atenuaciones de ventanas:

[ ]rad.ff.Ns

10101

1000050022 26 πππΔπωΔ

ωΔπ

====⇒=

62106626

===ππ

ωΔπ

.

..N . Se elige un valor de 63=N .

Por otra parte, al tener una banda de transición desde la banda de paso a la banda de eliminación que no es infinita, se tiene que:

[ ] [ ]rad.ffHzf

s

ccc 650

10065

10000325022 3250

235003000 ππππω ====⇒=

+=

De la expresión (21) se tiene que:

[ ] ( ) ( )( )[ ]2

1 , 1 −=−−

−−=

Nncsinnh ccn

d ααωππ

ωπ y además [ ] 1

2121

⎥⎦

⎤⎢⎣

⎡⎟⎠⎞

⎜⎝⎛

−−=

Nn··cosnWN

π

En consecuencia los coeficientes del filtro FIR (su respuesta al impulso) serán:

[ ] [ ] [ ] ( ) ( )( )[ ] 10 ,1

21211 −≤≤⎥

⎤⎢⎣

⎡⎟⎠⎞

⎜⎝⎛

−−⋅−−

−−=⋅= Nn

Nn··cosncsinnWnhnh c

cnNd

παωππ

ωπ

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

con 63y 2

1 ,650 =−

== NN.c απω

c) Diseñe un filtro Pasa Banda con las siguientes características: Frecuencia de Muestreo fs de 8 KHz; Banda de Eliminación Inferior: 0 – 0.6 KHz; Banda de Paso: 1 – 2 KHz; Banda de Eliminación Superior: 2.6 – ∞ KHz. Atenuación en las Bandas de Eliminación: 40 dB. Utilice una ventana de Blackman.

A partir de los datos del problema, se tiene que:

[ ]Hzf 40060010001 =−=Δ y [ ]Hzf 600200026002 =−=Δ

De los dos anchos de banda de atenuación, se elige el mínimo, que dará lugar a un mayor número de muestras del filtro FIR a diseñar. A partir de la tabla de características de atenuación de la ventana de Blackman, se tiene que:

[ ] ⇒⎟⎠⎞

⎜⎝⎛

−+⎟

⎠⎞

⎜⎝⎛

−−=

14080

1250420

Nn··cos.

Nn··cos..nWN

ππ de la tabla de atenuaciones de

ventanas:

[ ]rad.ffNs

10101

800040022 11 1 πππΔπωΔ

ωΔπ

====⇒=

11010

1111===

ππ

ωΔπ

.N . Se elige un valor de 111=N .

Por otra parte, no ser las bandas de transición infinitas, se tiene que:

[ ] [ ]rad.ffHzf

s

20102

800080022 800

21000600 1

11 ππππω ====⇒=+

=

[ ] [ ]radffHzf

s

4023

8000230022 2300

226002000 2

22 πππω ===⇒=+

=

De la expresión (19) se tiene que:

[ ] ( )[ ] ( )[ ]2

1 , 11

22 −

=−−−=Nncsinncsinnhd ααω

πω

αωπω y además:

[ ] ⎟⎠⎞

⎜⎝⎛

−+⎟

⎠⎞

⎜⎝⎛

−−=

14080

1250420

Nn··cos.

Nn··cos..nWN

ππ

En consecuencia los coeficientes del filtro FIR (su respuesta al impulso) serán:

[ ] [ ] [ ] ( )[ ] ( )[ ] [ ] 10 ,11

22 −≤≤⋅⎟

⎠⎞

⎜⎝⎛ −−−=⋅= NnnWncsinncsinnWnhnh NNd αω

πωαω

πω con:

[ ] 111y 2

1 ,1

40801

250420 ,4023 ,20 21 =

−=⎟

⎠⎞

⎜⎝⎛

−+⎟

⎠⎞

⎜⎝⎛

−−=== NN

Nn··cos.

Nn··cos..nW. N απππωπω

d) Diseñe un filtro Elimina Banda con las siguientes características: Frecuencia de Muestreo fs de 8 KHz; Banda de Paso Inferior: 0 – 0.6 KHz; Banda de Eliminación: 1 – 2 KHz; Banda de Paso Superior: 2.6 – ∞ KHz. Atenuación en la Banda de Eliminación: 70 dB.

A partir de los datos del problema, se tiene que:

[ ]Hzf 40060010001 =−=Δ y [ ]Hzf 600200026002 =−=Δ

De los dos anchos de banda de atenuación, se elige el mínimo, que dará lugar a un mayor número de muestras del filtro FIR a diseñar. A partir de la tabla de características de atenuación, se elige la ventana de Blackman:

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

[ ] ⇒⎟⎠⎞

⎜⎝⎛

−+⎟

⎠⎞

⎜⎝⎛

−−=

14080

1250420

Nn··cos.

Nn··cos..nWN

ππ de la tabla de atenuaciones de

ventanas:

[ ]rad.ffNs

10101

800040022 11 1 πππΔπωΔ

ωΔπ

====⇒=

11010

1111===

ππ

ωΔπ

.N . Se elige un valor de 111=N .

Por otra parte, no ser las bandas de transición infinitas, se tiene que:

[ ] [ ]rad.ffHzf

s

20102

800080022 800

21000600 1

11 ππππω ====⇒=+

=

[ ] [ ]radffHzf

s

4023

8000230022 2300

226002000 2

22 πππω ===⇒=+

=

De la expresión (22) se tiene que:

[ ] ( )[ ] ( ) ( )( )[ ]2

1y , 1 2122

11 −

=<−−−

−+−=Nncsinncsinnh n

d αωωαωππ

ωπαωπω

y además [ ] ⎟⎠⎞

⎜⎝⎛

−+⎟

⎠⎞

⎜⎝⎛

−−=

14080

1250420

Nn··cos.

Nn··cos..nWN

ππ

En consecuencia los coeficientes del filtro FIR (su respuesta al impulso) serán:

[ ] [ ] [ ] ( )[ ] ( ) ( )( )[ ] [ ] 10 ,1 22

11 −≤≤⋅⎟

⎠⎞

⎜⎝⎛ −−

−−+−=⋅= NnnWncsinncsinnWnhnh N

nNd αωπ

πωπαω

πω

siendo:

[ ] 111y 2

1 ,1

40801

250420 ,4023 ,20 21 =

−=⎟

⎠⎞

⎜⎝⎛

−+⎟

⎠⎞

⎜⎝⎛

−−=== NN

Nn··cos.

Nn··cos..nW. N απππωπω

3. Diseñe un filtro FIR Notch de segundo orden (N=2) que elimine la frecuencia de

ruido de línea de 50 Hz de un Electrocardiógrafo. La frecuencia a la cual se muestrea la señal de ECG es de 250 Hz (más del doble del ancho de banda de una señal de electrocardiograma que es aproximadamente 100 Hz en el humano).

Para diseñar un filtro FIR Notch de segundo orden, sus dos polos tienen que estar en el origen del plano complejo Z, en tanto que los dos ceros complejos conjugados deber estar sobre el círculo de radio unidad. En consecuencia:

[ ]rad.ff

ff

s

s 4052

2505022 2 0

000

ππππωωπ

====⇒=

Los ceros del filtro FIR Notch serán entonces: 010ωjez ±⋅= . Por lo tanto, la respuesta

del filtro en la transformada Z será:

( ) ( ) ( ) ( ) ( )2

02

220201 1200

zcoszzk

zezezk

zzzzzkzH

jj +−=

−⋅−=

−⋅−=

− ωωω

Se desea que a 0=ω la ganancia del filtro Notch sea 1. En consecuencia:

( ) ( )0

0

0 121 1

1121

11ω

ωω

ω

cosk

coskezH j

−=⇒=

+−⇒===

=

Finalmente, se tiene que:

( ) ( ) 20

2

0

1212

1zcoszz

coszH +−

−=

ωω

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

Antitransformando la expresión anterior, se encuentran los coeficientes del filtro digital FIR Notch de segundo orden que elimina la frecuencia de línea en una señal de ECG:

[ ] ( ) [ ] ( ) [ ] ( ) [ ] [ ]radncos

ncos

cosncos

nh 52con ,2

1211

12121

000

0

0

πωδω

δω

ωδω

=−−

+−−

−−

=

4. Diseñe un diferenciador FIR de primer orden si la frecuencia a la cual se quiere

muestrear la señal a derivar es de fs=1000 Hz.

La derivada discreta de una señal digitalizada, se puede expresar como:

[ ] [ ] [ ] [ ] [ ]( )11−−⋅=

−−= nxnxf

Tnxnxny s

s

Si se reemplaza [ ] [ ]ndnx = , se obtendrá la respuesta al impulso del filtro FIR derivador, es decir:

[ ] [ ] [ ]1−⋅−⋅= nfnfnh ss δδ

Transformando la expresión anterior, se obtiene la transferencia del filtro digital:

[ ] ( )z

zfzfzH ss

11 1 −=−⋅= −

Segunda Parte. Filtros IIR (Infinite Impulse Response) En la sección de diseño de filtros IIR mediante Transformada Bilineal, se explicitó el procedimiento utilizado para el cálculo de los coeficientes del filtro digital. En consecuencia, estos ejercicios se encuentran desarrollados íntegramente en Matlab, debido a la complejidad de los cálculos si se realizaran en forma manual. 1. Dada la respuesta en frecuencia de un filtro Pasa Bajos de primer orden RC, se pide

implementarlo en forma digital con un filtro IIR (mediante el uso de la Transformada Bilineal) con las siguientes características: Frecuencia de Muestreo fs=1 KHz y una frecuencia de 3 dB del filtro de 60 Hz.

2. Verifique la correcta implementación del filtro IIR anterior mediante MatLab,

calculando y graficando su respuesta al impulso, su función de Transferencia y graficando la salida temporal y(t) que se obtiene de haber filtrado la señal de entrada ( ) ( ) ( )t3002sent502sen2tx ⋅π+⋅π= con el filtro digital IIR.

3. Diseñe un filtro Pasa Bajos Butterworth IIR suponiendo que se requiere que la

banda de paso sea constante dentro de 1 dB para frecuencias por debajo de 100 Hz y que la banda de atenuación sea mayor que 15 dB para frecuencias superiores a 150 Hz (se recomienda utilizar MatLab para obtener la función de transferencia del filtro pedido). La frecuencia de muestreo que se utiliza para el diseño del filtro es de 1 KHz. Verifique su diseño graficando la respuesta al impulso del filtro como así también su respuesta en frecuencia.

4. Diseñe un filtro Pasa Altos Chebyshev IIR con una frecuencia de –3 dB a 1 KHz y

una banda de atenuación de 50 dB a 0.5 KHz. La frecuencia de muestreo que se utiliza para el diseño del filtro es de 10 KHz. Verifique su diseño graficando la respuesta al impulso del filtro como así también su respuesta en frecuencia.

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

Desarrollos de los ejemplos en lenguaje MatLab Primera Parte. Filtros FIR (Finite Impulse Response)

1. Resultados MatLab. a) Filtro Pasa Bajos con las siguientes características: Frecuencia de Muestreo fs de

8 KHz; Banda de Paso: 0 – 1 KHz. Ventana rectancular con N=67. % Filtro Pasa Bajos FIR con Ventana Rectangular % FIR con su respuesta de frecuencia y fase. Diseño mediante ventana cuadrada % Copyright @2004 % Msc. Ing. Franco Martín Pessana. Universidad Favaloro function G6_1a fs=8000; figure(1) N=67; alfa=(N-1)/2; % Linealidad de fase wc=0.25*pi; n=0:N-1; hn=zeros(size(n)); hn=wc/pi*sinc(wc*(n-alfa)/pi); subplot(221) plot(n,hn); title('Pasa Bajos. h[n]') grid on [H,W]=freqz(hn,1,N); f=W*fs/(2*pi); subplot(222) plot(f,abs(H)); grid on title('Resp. de Amplitud') subplot(223) Hdb=20*log(abs(H)); plot(f,Hdb); grid on title('Resp. de Amplitud (dB)') xlabel('f [Hz]') subplot(224) plot(f,angle(H)); title('Resp. de Fase') grid on xlabel('f [Hz]')

b) Filtro Pasa Altos con las siguientes características: Frecuencia de Muestreo fs de 8 KHz; Banda de Paso: 3 – ∞ KHz. Ventana rectancular con N=67.

% Filtro Pasa Altos FIR con Ventana Rectangular % Copyright @2004 % Msc. Ing. Franco Martín Pessana. Universidad Favaloro function G6_1b fs=8000; figure(1) N=67; alfa=(N-1)/2; n=0:N-1; hn=zeros(size(n)); wc=0.75*pi; hn=zeros(size(n)); expo=(-1).^n; hn=(pi-wc)/pi*sinc((pi-wc)… *(n-alfa)/pi).*expo; subplot(221) plot(n,hn); title('Pasa Altos. h[n]')

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

grid on [H,W]=freqz(hn,1,N); f=W*fs/(2*pi); subplot(222) plot(f,abs(H)); grid on title('Resp. de Amplitud') subplot(223) Hdb=20*log(abs(H)); plot(f,Hdb); grid on title('Resp. de Amplitud (dB)') xlabel('f [Hz]') subplot(224) plot(f,angle(H)); title('Resp. de Fase') grid on xlabel('f [Hz]')

c) Filtro Pasa Banda con las siguientes características: Frecuencia de Muestreo fs

de 8 KHz; Banda de Eliminación Inferior: 0 – 1 KHz; Banda de Paso: 1 – 2 KHz; Banda de Eliminación Superior: 2 – ∞ KHz. Ventana rectancular con N=67.

% Filtro Pasa Banda FIR con Ventana Rectangular % FIR con su respuesta de frecuencia y fase. Diseño mediante ventana cuadrada % Copyright @2004 % Msc. Ing. Franco Martín Pessana. Universidad Favaloro function G6_1c % Filtro FIR Pasa Banda f1=1 KHz y f2=2 KHz fs=8000; figure(1) N=67; % tamaño del filtro FIR alfa=(N-1)/2; % Linealidad de fase n=0:N-1; hn=zeros(size(n)); w1=0.25*pi; w2=0.5*pi; hn=zeros(size(n)); hn=w2/pi*sinc(w2*(n-alfa)/pi)… -w1/pi*sinc(w1*(n-alfa)/pi); subplot(221) plot(n,hn); title('Pasa Banda. H[n]') grid on [H,W]=freqz(hn,1,N); f=W*fs/(2*pi); subplot(222) plot(f,abs(H)); grid on title('Resp. de Amplitud') subplot(223) Hdb=20*log(abs(H)); plot(f,Hdb); grid on title('Resp. de Amplitud (dB)') xlabel('f [Hz]') subplot(224) plot(f,angle(H)); grid on title('Resp. de Fase') grid on xlabel('f [Hz]')

d) Filtro Elimina Banda con las siguientes características: Frecuencia de Muestreo fs de 8 KHz; Banda de Paso Inferior: 0 – 1 KHz; Banda de Eliminación: 1 – 2 KHz; Banda de Paso Superior: 2 – ∞ KHz.

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

% Filtro Elimina FIR con Ventana Rectangular % FIR con su respuesta de frecuencia y fase. Diseño mediante ventana cuadrada % Copyright @2004 % Msc. Ing. Franco Martín Pessana. Universidad Favaloro function G6_1d fs=8000; figure(1) N=67; alfa=(N-1)/2; n=0:N-1; hn=zeros(size(n)); w1=0.25*pi; w2=0.5*pi; expo=(-1).^n; hn=w1/pi*sinc(w1*(n-alfa)/pi)… +(pi-w2)/pi*sinc((pi-w2)… *(n-alfa)/pi).*expo; subplot(221) plot(n,hn); title('Elimina Banda H[n]') grid on [H,W]=freqz(hn,1,N); f=W*fs/(2*pi); subplot(222) plot(f,abs(H)); grid on title('Resp. de Amplitud') subplot(223) Hdb=20*log(abs(H)); plot(f,Hdb); grid on title('Resp. de Amplitud (dB)') xlabel('f [Hz]') subplot(224) plot(f,angle(H)); grid on title('Resp. de Fase') grid on xlabel('f [Hz]')

2. Resultados MatLab.

a) Diseñe un filtro Pasa Bajos con las siguientes características: Frecuencia de Muestreo fs de 8 KHz; Banda de Paso: 0 – 1 KHz; Banda de Eliminación: 1.4 – ∞ KHz; Atenuación en Banda de Eliminación: 50 dB.

% Filtro Pasa Bajos FIR con Ventana Hamming % FIR con su respuesta de frecuencia y fase. Diseño mediante ventana cuadrada % Copyright @2004 % Msc. Ing. Franco Martín Pessana. Universidad Favaloro function G6_2a fs=8000; figure(1) N=67; alfa=(N-1)/2; wc=0.3*pi; n=0:N-1; hn=zeros(size(n)); hn=wc/pi*sinc(wc*(n-alfa)/pi); Wn=hamming(N)'; hn=hn.*Wn; subplot(221) plot(n,hn);

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

title('Pasa Bajos. h[n]') grid on [H,W]=freqz(hn,1,N); f=W*fs/(2*pi); subplot(222) plot(f,abs(H)); grid on title('Resp. de Amplitud') subplot(223) Hdb=20*log(abs(H)); plot(f,Hdb); grid on title('Resp. de Amplitud (dB)') xlabel('f [Hz]') subplot(224) plot(f,angle(H)); title('Resp. de Fase') grid on xlabel('f [Hz]')

b) Diseñe un filtro Pasa Altos con las siguientes características: Frecuencia de Muestreo fs de 10 KHz; Banda de Eliminación: 0 – 3 KHz; Banda de Paso: 3.5 – ∞ KHz; Atenuación en Banda de Eliminación: 40 dB.

% Filtro Pasa Altos FIR con Ventana Hanning % FIR con su respuesta de frecuencia y fase. Diseño mediante ventana cuadrada % Copyright @2004 % Msc. Ing. Franco Martín Pessana. Universidad Favaloro function G6_2b fs=10000; figure(1) N=63; alfa=(N-1)/2; n=0:N-1; hn=zeros(size(n)); wc=0.65*pi; hn=zeros(size(n)); expo=(-1).^n; hn=(pi-wc)/pi*sinc((pi-wc)… *(n-alfa)/pi).*expo; Wn=hanning(N)'; hn=hn.*Wn; subplot(221) plot(n,hn); title('Pasa Altos. h[n]') grid on [H,W]=freqz(hn,1,N); f=W*fs/(2*pi); subplot(222) plot(f,abs(H)); grid on title('Resp. de Amplitud') subplot(223) Hdb=20*log(abs(H)); plot(f,Hdb); grid on title('Resp. de Amplitud (dB)') xlabel('f [Hz]') subplot(224) plot(f,angle(H)); title('Resp. de Fase') grid on xlabel('f [Hz]')

c) Diseñe un filtro Pasa Banda con las siguientes características: Frecuencia de

Muestreo fs de 8 KHz; Banda de Eliminación Inferior: 0 – 0.6 KHz; Banda de

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

Paso: 1 – 2 KHz; Banda de Eliminación Superior: 2.6 – ∞ KHz. Atenuación en las Bandas de Eliminación: 40 dB. Utilice una ventana de Blackman.

% Filtro Pasa Banda FIR con Ventana Blackman % FIR con su respuesta de frecuencia y fase. Diseño mediante ventana cuadrada % Copyright @2004 % Msc. Ing. Franco Martín Pessana. Universidad Favaloro function G6_2c fs=8000; figure(1) N=111; alfa=(N-1)/2; n=0:N-1; hn=zeros(size(n)); w1=0.2*pi; w2=23*pi/40; hn=zeros(size(n)); hn=w2/pi*sinc(w2*(n-alfa)/pi)… -w1/pi*sinc(w1*(n-alfa)/pi); Wn=blackman(N)'; hn=hn.*Wn; subplot(221) plot(n,hn); title('Pasa Banda. H[n]') grid on [H,W]=freqz(hn,1,N); f=W*fs/(2*pi); subplot(222) plot(f,abs(H)); grid on title('Resp. de Amplitud') subplot(223) Hdb=20*log(abs(H)); plot(f,Hdb); grid on title('Resp. de Amplitud (dB)') xlabel('f [Hz]') subplot(224) plot(f,angle(H)); grid on title('Resp. de Fase') grid on xlabel('f [Hz]')

d) Diseñe un filtro Elimina Banda con las siguientes características: Frecuencia de

Muestreo fs de 8 KHz; Banda de Paso Inferior: 0 – 0.6 KHz; Banda de Eliminación: 1 – 2 KHz; Banda de Paso Superior: 2.6 – ∞ KHz. Atenuación en la Banda de Eliminación: 70 dB.

% Filtro Elimina FIR con Ventana Blackmamn % FIR con su respuesta de frecuencia y fase. Diseño mediante ventana cuadrada % Copyright @2004 % Msc. Ing. Franco Martín Pessana. Universidad Favaloro function G6_2d fs=8000; figure(1) N=111; alfa=(N-1)/2; n=0:N-1; hn=zeros(size(n)); w1=0.2*pi; w2=23*pi/40; expo=(-1).^n; hn=w1/pi*sinc(w1*(n-alfa)/pi)+…

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

(pi-w2)/pi*sinc((pi-w2)*… (n-alfa)/pi).*expo; Wn=blackman(N)'; hn=hn.*Wn; subplot(221) plot(n,hn); title('Elimina Banda H[n]') grid on [H,W]=freqz(hn,1,N); f=W*fs/(2*pi); subplot(222) plot(f,abs(H)); grid on title('Resp. de Amplitud') subplot(223) Hdb=20*log(abs(H)); plot(f,Hdb); grid on title('Resp. de Amplitud (dB)') xlabel('f [Hz]') subplot(224) plot(f,angle(H)); grid on title('Resp. de Fase') grid on xlabel('f [Hz]')

3. Diseñe un filtro FIR Notch de segundo orden (N=2) que elimine la frecuencia de

ruido de línea de 50 Hz de un Electrocardiógrafo. La frecuencia a la cual se muestrea la señal de ECG es de 250 Hz (más del doble del ancho de banda de una señal de electrocardiograma que es aproximadamente 100 Hz en el humano).

% Filtro Notch Segundo Orden % FIR con su respuesta de frecuencia y fase. Diseño mediante ventana cuadrada % Copyright @2004 % Msc. Ing. Franco Martín Pessana. Universidad Favaloro function G6_4 fs=250; % Frecuencia de Muestreo f0=50; % Frecuencia de Eliminación figure(1) N=3; % tamaño del filtro FIR n=0:N-1; w0=0.4*pi; % Frecuencia normalizada en el plano Z hn=zeros(size(n)); hn(1)=1/(2*(1-cos(w0))); hn(2)=-cos(w0)/(1-cos(w0)); hn(3)=1/(2*(1-cos(w0))); subplot(221) stem(n,hn); title('Elimina Banda H[n]') grid on [H,W]=freqz(hn,1); f=W*fs/(2*pi); subplot(222) plot(f,abs(H)); grid on title('Resp. de Amplitud') subplot(223) Hdb=20*log(abs(H)); plot(f,Hdb); grid on title('Resp. de Amplitud (dB)') subplot(224) plot(f,angle(H)); grid on title('Resp. de Fase') grid on

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

4. Diseñe un diferenciador FIR de primer orden si la frecuencia a la cual se quiere muestrear la señal a derivar es de fs=1000 Hz.

% Filtro Diferenciador de Segundo Orden % FIR con su respuesta de frecuencia y fase. Diseño mediante ventana cuadrada % Copyright @2004 % Msc. Ing. Franco Martín Pessana. Universidad Favaloro function G6_5 fs=1000; % Frecuencia de Muestreo figure(1) N=2; % tamaño del filtro FIR n=0:N-1; hn=zeros(size(n)); hn(1)=fs; hn(2)=-fs; subplot(221) stem(n,hn); title('Diferenciador H[n]') grid on [H,W]=freqz(hn,1,N); min(abs(H)) f=W*fs/(2*pi); subplot(222) plot(f,abs(H)); grid on title('Resp. de Amplitud') subplot(223) Hdb=20*log(abs(H)); plot(f,Hdb); grid on title('Resp. de Amplitud (dB)') subplot(224) plot(f,angle(H)); grid on title('Resp. de Fase') grid on Segunda Parte. Filtros IIR (Infinite Impulse Response) 1. Dada la respuesta en frecuencia de un filtro Pasa Bajos de primer orden RC, se pide

implementarlo en forma digital con un filtro IIR (mediante el uso de la Transformada Bilineal) con las siguientes características: Frecuencia de Muestreo fs=1 KHz y una frecuencia de 3 dB del filtro de 60 Hz.

% Función que demuestra la salida de un filtro pasa bajos RC, implementado % en forma digital mediante el método de Transformada Bilineal % Se ingresan los vectores del filtro B y A. Se usa Una frecuencia de % muestreo de 1KHz, una señal de entrada correspondiente a la suma de % dos senoidales de 50 y 300 Hz. Se usó una frecuencia de polo en el % filtro de fp=60 Hz. % Copyright @2004 % Msc. Ing. Franco Martín Pessana. Universidad Favaloro function Y=G6_b1() % Definición de las constantes Fs=1000; Fp=60; wp=2*pi*Fp; Ts=1/Fs; t=0:Ts:1-Ts; % 1000 puntos h=figure(1);

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

set(h,'name','Filtro Digital. Transformada Bilineal'); x=2*sin(2*pi*50*t)+sin(2*pi*300*t); figure(1); subplot(221); plot(t(1:200),x(1:200)); title('Señal de Entrada'); ylabel('x(t)'); grid; B=[wp*Ts wp*Ts]; A=[wp*Ts+2 wp*Ts-2]; [H,w]=freqz(B,A,256); F=Fs*w./(2*pi); subplot(222); plot(F,abs(H)) title('Respuesta del Filtro'); grid; subplot(223); semilogy(F,(abs(H))); title('Respuesta del Filtro dB'); ylabel('H(f)'); Y=filter(B,A,x); grid; subplot(224); plot(t(1:200),Y(1:200)); title('Señal de Salida'); ylabel('y(t)'); grid; n=zeros(size(t)); n=0:size(t,2)-1; delta=zeros(size(n)); delta(1)=1; hn=filter(B,A,delta); hn(1:2) figure(2) subplot(221) plot(t(1:50),hn(1:50)); title('Pasa Bajos. h[n]') grid on [H,W]=freqz(hn,1,256); subplot(222) %size(H) %size(F) plot(F,abs(H)); grid on title('Resp. de Amplitud') subplot(223) Hdb=20*log(abs(H)); plot(F,Hdb); grid on title('Resp. de Amplitud (dB)') xlabel('f [Hz]') subplot(224) plot(F,angle(H)); title('Resp. de Fase') grid on xlabel('f [Hz]')

2. Verifique la correcta implementación del filtro IIR anterior mediante MatLab calculando y graficando su respuesta al impulso, su función de Transferencia y graficando la salida temporal y(t) que se obtiene de haber filtrado la señal de entrada ( ) ( ) ( )t3002sent502sen2tx ⋅π+⋅π= con el filtro digital IIR.

3. Diseñe un filtro Pasa Bajos Butterworth IIR suponiendo que se requiere que la

banda de paso sea constante dentro de 1 dB para frecuencias por debajo de 100 Hz y que la banda de atenuación sea mayor que 15 dB para frecuencias superiores a 150 Hz (se recomienda utilizar MatLab para obtener la función de transferencia del filtro pedido). La frecuencia de muestreo que se utiliza para el diseño del filtro es de 1

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

KHz. Verifique su diseño graficando la respuesta al impulso del filtro como así también su respuesta en frecuencia.

% Copyright @2004 % Msc. Ing. Franco Martín Pessana. Universidad Favaloro function G6_b4() % Orden y Frecuencia Natural de Diseño [N,Wn]=BUTTORD(2*pi*100,2*pi*150,1,15,'s') [B,A]=butter(N,Wn,'s'); H=tf(B,A) figure(1) bode(H) Fs=1000; [Numz,Denz]=bilinear(B,A,Fs); [Hd,W]=freqz(Numz,Denz); figure(2) F=Fs*W./(2*pi); subplot(211) plot(F,abs(Hd)); xlabel('Hz') ylabel('Hd') HHd=tf(Numz,Denz,1/Fs) Z=roots(Numz); P=roots(Denz); subplot(212) zplane(Z,P) En la Pantalla observamos N = 6 Wn = 7.086537346688198e+002 Transfer function: 1.266e017 --------------------------------------------------------------------------------------------------------------------- s^6 + 2738 s^5 + 3.748e006 s^4 + 3.253e009 s^3 + 1.882e012 s^2 + 6.905e014 s + 1.266e017 Transfer function: 0.0005135 z^6 + 0.003081 z^5 + 0.007702 z^4 + 0.01027 z^3 + 0.007702 z^2 + 0.003081 z + 0.0005135 ------------------------------------------------------------------------------------------------------------------------------- z^6 - 3.377 z^5 + 5.114 z^4 - 4.329 z^3 + 2.139 z^2 - 0.5805 z + 0.06733

4. Diseñe un filtro Pasa Altos Chebyshev IIR con una frecuencia de –3 dB de 1 KHz y

una banda de atenuación de 30 dB a 0.5 KHz. La frecuencia de muestreo que se utiliza para el diseño del filtro es de 2 KHz. Verifique su diseño graficando la respuesta al impulso del filtro como así también su respuesta en frecuencia.

Procesamiento Digital de Señales Adquisición y Procesamiento de Señales Biológicas

Facultad de Ingeniería y Ciencias Exactas y Naturales

Msc. Ing. Franco Martin Pessana [email protected]

% Copyright @2004 % Msc. Ing. Franco Martín Pessana. Universidad Favaloro function G6_b6() [N,Wn]=CHEB1ORD(2*pi*500,2*pi*1000,1,50,'s'); %[B,A]=BUTTER(N,1,'s'); [B,A]=CHEBY1(N,1,1,'s'); Wc=2*pi*1000; [NUMT,DENT]=lp2hp(B,A,Wc); % Transformación de pasa Bajos a Passa Altos %H=tf(B,A) H=tf(NUMT,DENT) figure(1) bode(H) Fs=10000; % Frecuencia de Muestreo [Numz,Denz]=bilinear(NUMT,DENT,Fs); % Transformada Bilineal para obtener IIR [Hd,W]=freqz(Numz,Denz); figure(2) F=Fs*W./(2*pi); subplot(211) plot(F(1:200),abs(Hd(1:200))); xlabel('Hz') ylabel('Hd') HHd=tf(Numz,Denz,1/Fs) % Filtro Butterworth de 6to orden digital Z=roots(Numz); P=roots(Denz); subplot(212) zplane(Z,P) En la Pantalla observamos: N = 6 Wn = 3.141592653589793e+003 Transfer function: 0.8913 s^6 - 1.808e-012 s^5 - 6.361e-008 s^4 - 5.699e-014 s^3 - 5.022 s^2 + 986.1 s + 4.2e-023 -------------------------------------------------------------------------------------------------------------------------- s^6 + 2.8e004 s^5 + 5.382e008 s^4 + 4.327e012 s^3 + 4.367e016 s^2 + 1.319e020 s + 8.929e023 Transfer function: 0.1931 z^6 - 1.159 z^5 + 2.897 z^4 - 3.863 z^3 + 2.897 z^2 - 1.159 z + 0.1931 ----------------------------------------------------------------------------------------------- z^6 - 2.925 z^5 + 4.155 z^4 - 3.344 z^3 + 1.735 z^2 - 0.5691 z + 0.1409