Implementacion

Download Report

Transcript Implementacion

Implementacion
Dr. Rogerio
x2 [n]
x[n]
x1[n]  x2 [n]
x1[n]
al x[n]
al
al
al
x[n  1]
x[n]
z 1
y[n]  a1 y[n  1]  a2 y[n  2]  b0 x[n]
b0
H ( z) 
1  a1 z 1  a2 z 2
x[n]
y[n]
b
z 1
a1
z 1
a2
N
M
k 1
k 0
N
M
k 1
k 0
y[n]   ak y[n  k ]   bk x[n  k ]
y[n]   ak y[n  k ]   bk x[n  k ]
x[n]
y[n]
b0
z 1
z 1
x[n  1]
x[n  2]
z 1
x[n  (M  1)]
b1
a1
b2
a2
bM 1
aN 1
z 1
y[n  2]
y[n  ( N  1)]
z 1
z 1
x[n  M ]
y[n 1]
aaNl
bM
Forma Directa I
y[n  N ]
N
M
k 1
k 0
y[n]   ak y[n  k ]   bk x[n  k ]
v[ n ]
v[n]
x[n]
y[n]
b0
z 1
z 1
x[n  1]
x[n  2]
z 1
x[n  (M  1)]
b1
a1
b2
a2
bM 1
aN 1
z 1
y[n  2]
y[n  ( N  1)]
z 1
z 1
x[n  M ]
y[n 1]
bM
aaNl
y[n  N ]
N
M
k 1
k 0
y[ n]   ak y[n  k ]   bk x[n  k ]
M
H  z 
b z
k 0
N
k
k
1   ak z  k
k 1


1
M
k 
H  z     bk z  
N
 k 0
  1  a z k
  k
k 1


H  z 
H1  z 
H2  z








1
M
k 
H  z     bk z  
N
 k 0
  1  a z k
  k
 k 1

H z 
v[n]
x[n]
y[n]
b0
z 1
z 1
x[n  1]
x[n  2]
z 1
x[n  (M  1)]
b1
a1
b2
a2
bM 1
aN 1
z 1
y[n  2]
y[n  ( N  1)]
z 1
z 1
x[n  M ]
y[n 1]
bM
aaNl
al
y[n  N ]
H1  z 






H2  z 
M

V ( z )  H1  z  X ( z )    bk z  k  X ( z )
 k 0





1
V ( z )
Y ( z )  H 2  z V ( z )  
N
 1  a z k 
  k

 k 1

M
H  z 
b z
k
k
k 0
N
1   ak z  k
k 1


1
M
k 

   bk z 
N

 k 0
 1  a z k
  k
k 1



1

H  z 
N
 1  a z k
  k
k 1


H  z 
H2  z 

 M

   bk z  k 
  k 0



H1  z 
solo que ahora


1
W ( z)  H 2  z  X ( z)  
N
 1  a z k
  k
k 1



 X ( z)



M

Y ( z )  H1  z  W ( z )    bk z  k  W ( z )
 k 0







recuerde




1
 X ( z)
W ( z)  H 2  z  X ( z)  
N
 1  a z k 
  k

k 1


X ( z)
W ( z) 
 X ( z )  1  A( z )  W ( z )
1  A( z )

N
x[ n ]
w[n]   ak w[n  k ]  w[n]
k 1
finalmente
M
y[n]   bk w[n  k ]
k 0
w[ n ]
N
M
w[n]   ak w[n  k ]  x[n]
y[n]   bk w[n  k ]
k 1
x[n]
k 0
y[n]
w[n]
b0
z 1
z 1
a1
a2
aN 1
b1
z 1
w[n  ( N  1)]
z 1
aaNl
z 1
w[n  N ]
b2
bM 1
z 1
bM
Forma Directa II o Forma Canónica Directa
y[n]
w[n]
x[n]
b0
z 1
z 1
a1
a2
b1
z 1
z 1
w[n  ( N  1)]
aN 1
z 1
aaNl
b2
bN 1
z 1
w[n  N ]
x[n]
bN
w[n]
y[n]
b0
z 1
a1
a2
b1
z 1
aN 1
b2
bM 1
z 1
al
aN
Forma Canónica
bM
(mínimo número de “delays”)
Diseño de Filtro FIR
Procesamiento Digital de Señales
FiltroS FIR
• Son inherentemente estables.
• Son capaces de tener una fase lineal, es decir
un retraso puramente de tiempo.
• Sin embargo requieren ordenes mayores que
los filtros IIR para alcanzar una respuesta
equivalente.
• Por lo anterior son lentos.
EJEMPLO: Diseñe un filtro ideal pasa-bajas con respuesta de fase cero y una frecuencia
de corte:
a) w1=π/5
b) w2=π/2
• Ideal pasabajas y frecuencia de corte en w1=π/5: Su
respuesta en frecuencia (función de transferencia) debe
ser
-π/5
π/5
• Respuesta de fase cero: Debe ser entonces FIR, es decir
sólo ceros.
• Sabemos que la transformada inversa de Fourier de
tiempo discreto de la función de la figura que representa
el filtro es una función sinc, estrictamente:
h(n) 
1

sen(n )
n
5
n  0
La respuesta anterior es la respuesta al impulso del
filtro
n=20
n=10
n=100
• Este filtro para implementarlo primero debemos acotarlo,
es decir, determinar cuantos términos tomar en
consideración, obviamente cuanto mayor sea el número de
coeficiente, mayor será la aproximación a su respuesta
ideal. Sin embargo mayor número de términos implica
mayor tiempo de procesamiento.
• Por ejemplo si se decide acotarlo a 21 términos, se calculan
los primeros 10 términos, y puesto que la señal es simétrica
par:
h(-10)=h(10)=-7.7963e-018
h(-9)=h(9)=-0.020789
h(-8)=h(8)=-0.037841
h(-7)=h(7)=-0.043247
h(-6)=h(6)=-0.031183
h(-5)=h(5)=7.7963e-018
h(-4)=h(4)=0.046774
h(-3)=h(3)=0.10091
h(-2)=h(2)=0.15137
h(-1)=h(1)=0.1871
h(0)=0.2
• Para calcular el término en n=0 utilizamos la regla de
d 
n 
L´Hopital.
sin( )


dn 
5 
h(0) 
 0.2
d
 n 
dn
n 0
• Finalmente h(n) queda de la siguiente forma:
h( n) 
10
 h(n) (n)
n 10
 h(10) (10)  h(9) (9)...  h(0) (0)...  h(9) (9)  h(10) (10)
• Esta respuesta al impulso representa un sistema no causal,
puesto que su respuesta depende de valores futuros. Esto
resulta en un filtro que no se puede usar en aplicaciones de
tiempo real, aunque en aplicaciones donde se trabaje con
señales previamente almacenadas, sí son útiles.
• Para convertir este filtro en causal, simplemente aplicamos un
desplazamiento de 10 a la respuesta al impulso. Claro está,
que debemos pagar un precio, y el precio es que se convierte
en un filtro de fase lineal y no de fase cero.
• Finalmente para la implementación, obtenemos su
ecuación en diferencias:
h(n)  7.79 1018  (10)  0.020789 (9)...  0.2 (0)...  0.020789 (9)  7.79 1018  (10)
y (n)  7.79 1018 x(10)  0.020789 x(9)...  0.2 x(0)...  0.020789 x(9)  7.79 1018 x(10)
1
1
z
x(n)

z

-10
-2
-7.7e-18
1
1
0.200
-0.0207
1
1
1
z
z
-19
-20
1
-7.7e-1
-0.2
1
1
1
y(n)
• Las respuestas del filtro al simularlo en MatLAb,
tanto en amplitud como en fase es:
1.5
1
0.5
0
0
pi/5
2pi/5
3pi/5
4pi/5
0
pi/5
2pi/5
3pi/5
4pi/5
4
2
0
-2
-4
• La respuesta del filtro al utilizar la herramienta
“fvtool” de MatLAb, es:
Phase Response
Magnitude Response (dB)
0
0
-1
-10
-2
Phase (radians)
Magnitude (dB)
-20
-30
-40
-3
-4
-5
-50
-6
-60
-7
-8
-70
0
0.1
0.2
0.3
0.4
0.5
0.6
Normalized Frequency ( rad/sample)
0.7
0.8
0.9
0
0.1
0.2
0.3
0.4
0.5
0.6
Normalized Frequency ( rad/sample)
Phase Delay
0.7
0.8
0.9
14
16
18
Impulse Response
10.5
0.2
10.4
10.3
10.1
Amplitude
Phase Delay (samples)
0.15
10.2
10
9.9
0.1
0.05
9.8
0
9.7
9.6
-0.05
0
9.5
0
0.1
0.2
0.3
0.4
0.5
0.6
Normalized Frequency ( rad/sample)
0.7
0.8
0.9
2
4
6
8
10
Samples
12
20
Ejemplos de representación de
una función en términos de
polos y ceros
Relacion entre una transformada de
laplace y una transformada continua.
ejemplo
• CONSIDERE LA FUNCION DE TRANSFERENCIA
S 2
G S  
S 1

Si la entrada a este sistema se hace pasar a través
de un muestreador, sera el equivalente a multiplicar
en el dominio S por:
1 e
M S  
S
• AL MULTIPLICAR Y SEPARAR TERMINOS
OBTENEMOS:
ST

M S GS   1  e
ST
G S 
S 2
G1 S  
S S  1
1

SEPARANDO G1(S) EN FRACCIONES PARCIALES
TENEMOS:
S 2
2
1
G1 S  
 
S S  1 S S  1

APLICANDO TRANSFORMADA INVERSA DE LAPLACE:
g1 t   2  e  g1 kt   2  e
t
 kt

APLICANDO TRANSFORMADA Z
2z
z
G1 z  

T
z 1 z  e

HACIENDO T=0.5s
2z
z
z 2  0.213z
G1 z  


z  1 z  0.607 z  1z  0.607
TRANSFORMANDO EN Z LA EXPRESION DE LA
EXPONENCIAL TENEMOS

Z 1 e

ST

z 1

z
DE ESTA FORMA
z  0.213
Gz  
z  0.607