Você está na página 1de 255

Processamento de Sinais

Engenharia Eltrica - 7o perodo


Hlio Marques Sobrinho
hmarx@linuxtech.com.br

http://linuxtech.com.br/downloads

Processamento de Sinais
2015-1

1 / 256

Horrios das aulas

Quarta

19:00 s 20:40

Sexta

19:00 s 20:40

Processamento de Sinais
2015-1

2 / 256

Bibliografia

Referncias
Sinais e Sistemas

Simon Haykin e Barry Van Veen

Sinais e Sistemas Lineares

Bhagawandas P. Lathi

Sinais e Sistemas

Alan V. Oppenheim & Adam S. Willsky

Introduo ao Processamento Digital de Sinais

Jos Alexandre Nalon

E muito mais !

A Internet !

Processamento de Sinais
2015-1

Vejam:
http://bookboon.com
3 / 256

Programa

Introduo

Sinais e sistemas de tempo discreto

Representao em em frequncia

Transformada de Fourier

Resposta em frequncia e Aplicaes de DFT

Sistemas FIR e IIR

Analise espectral de sinais

Transformada Z

Filtros digitais

Projetos de filtros digitais FIR e IIR

Processamento de Sinais
2015-1

4 / 256

Introduo e reviso

Definies

Sistema

Entidade que manipula um ou


mais sinais consequentemente
gerando novos sinais.

Sinal

Uma funo de uma ou mais


variveis veiculando informaes
sobre a natureza de um fenmeno
fsico.

Sinal de entrada

Processamento de Sinais
2015-1

Sinal de sada
Sistema

5 / 256

Exemplos

Sistemas ?

Sinais ?

Processamento de Sinais
2015-1

6 / 256

Aplicaes de processamento de sinais

Processamento de Sinais
2015-1

7 / 256

Aplicaes de processamento de sinais

Controle

Controle e automao industrial

Comunicaes

Transmisso de informaes

Analgica e Digital
Processameno de sinais

Extrao e alterao de sinais

Modulao, Filtros, Melhoramento

Transmisso, Armazenamento, Exibio

Eficiencia e Confiabilidade !

Processamento de Sinais
2015-1

8 / 256

Anlise de sinais biolgicos

Sinais cerebrais : EEG : Eletroencefalografia

Sinais cardiacos : ECG : Eletrocargiografia

Imagens mdicas: Raio X, PET, MRI)

PET : Positron EmitionTomography

MRI : Magnetic Ressonance Imaging

Deteco de atividades anormais

Auxlio aos diagnsticos

Processamento de Sinais
2015-1

9 / 256

PET SCAN

Processamento de Sinais
2015-1

10 / 256

Ondas cerebrais
com ruidos difcieis de interpretar

Processamento de Sinais
2015-1

11 / 256

Exemplo: Imagem jpeg


43K

13K

3.5K

Jpeg usa transfomada de cosseno discreta


(Similar Transformada de Fourier)
JPEG: Joint Photografic Experts

Processamento de Sinais
2015-1

12 / 256

Biometria
Identificao de uma pessoa usando
caracteristicas fisiolgicas
Exemplos

Identificao digital
Reconhecimento facial
Reconhecimento de voz

Processamento de Sinais
2015-1

13 / 256

Processamento de sinal de udio

Cancelamento de ruidos

Filtro adaptativo de rudos

Fones utilizados em cockpits

Efeitos em udio digital

Adiao de efeitos musicais

Atraso, eco e reverberao

Separao de sinal de udio

Separar falas de interferncia

Separar som do vento da msica em carros

Processamento de Sinais
2015-1

14 / 256

Sistema de Comunicao
Sinal da
mensagen

Sinal
recebido

Sinal
transmitido
Transmissor

Canal

Receptor

Estimativa
do sinal da
mensagem
recebido

Atenuao de sinal

Processamento de Sinais
2015-1

15 / 256

Sinal e Rudo

SNR = Signal Noise Ratio

Processamento de Sinais
2015-1

P signal
SNR=
P noise
16 / 256

Algumas distores de sinais

Processamento de Sinais
2015-1

17 / 256

Reviso matemtica - 1
Nmeros e Quantidades
Representao Numrica : Bases numricas
Conjuntos

Discretos ( =+/- 1 )
: 0 .. +
: - .. +
Contnuos( 0 )
: - .. +
: x + j y
x e y
Processamento de Sinais
2015-1

18 / 256

Trigonometria

Seno, Cosseno, Tangente, ...

Processamento de Sinais
2015-1

19 / 256

Crculo e Senoide

Processamento de Sinais
2015-1

20 / 256

Grficos trigonomtricos

Processamento de Sinais
2015-1

21 / 256

Relaes Trigonomtricas - 1
sin (x)=sin ( x)
cos(x) = cos( x)
sin( x)
tan ( x) =
cos( x)
2

sin x + cos x=1

tan (x) = tan ( x)

Processamento de Sinais
2015-1

1
cosec( x)=
sen( x)
1
sec( x)=
cos( x)
1
cotg ( x)=
tan ( x)

tan ( x)+tan ( y)
tan ( x+ y) =
1tan ( x) tan ( y)
tan ( x)tan ( y)
tan ( x y) =
1+tan ( x) tan ( y)
22 / 256

Relaes Trigonomtricas - 2
sin ( x y)=sin ( x)cos( y)cos( x)sin ( y)
cos( x y)=cos( x)cos( y)sin ( x)sin ( y)
1
sin ( x)cos( x) = sin (2x)
2
1cos( x)
( x)
x
tan ( ) =
=sin
2
sin ( x)
1+cos( x)
E muito mais !

Processamento de Sinais
2015-1

23 / 256

Viagem de uma onda senoidal

Processamento de Sinais
2015-1

24 / 256

Comprimento de onda

Processamento de Sinais
2015-1

25 / 256

Dependncia de x e t
y = sin (kx t)

Processamento de Sinais
2015-1

26 / 256

Reviso matemtica - 2
Vetores

Processamento de Sinais
2015-1

Fasores

27 / 256

Tangente

Processamento de Sinais
2015-1

28 / 256

Reviso : Nmeros Complexos


2
2
Z<

Z = x + y
Z=x+ j y
Z 1=a+ j b Z 2=c + j d
Z 1 +Z 2=(a+c)+ j(b+d)

Z 1Z 2=(acbd)+ j(ad+bc)
Conjugado:

Z=x j y

Z 1 +Z 1=2a
2

Z 1Z 1=a +b
Processamento de Sinais
2015-1

1 Z
= 2
Z Z

AB=cos()

BC=sin()
29 / 256

Reviso - Fasores
Senoide :

Z=Z<

Z=Zcos()+ j sin()
( X L X C )
=tan [
]
R
1

Processamento de Sinais
2015-1

30 / 256

Matrizes
Soma de matrizes

Processamento de Sinais
2015-1

32 / 256

Matrizes
Multiplicao de matrizes
Por constante

Multiplicao de matrizes
Por matriz

Processamento de Sinais
2015-1

33 / 256

Limites

Seja S uma sequncia de nmeros reais

x1, x2, x3, x4,

lim(xi) = L quanto maior for o valor de I

Para uma funo f(x) real

Processamento de Sinais
2015-1

34 / 256

Clculo Integral

Seja
y = f (x)

a integral
F(x) =

representa a rea delimitada pela curva do


ponto a at b e a reta real.
F(x) =

Processamento de Sinais
2015-1

= F(b) - F(a)
35 / 256

Integral indefinida

f ( x)dx
Integral imprpria

f ( x)dx

Processamento de Sinais
2015-1

36 / 256

Derivativo ou derivada

Notao de Leibinitz :
Notao de Lagrange :

f'(x)

df
f ' ( x) ou
( x)
dx
Processamento de Sinais
2015-1

37 / 256

Derivativa geomtrica

Processamento de Sinais
2015-1

38 / 256

Algumas regras de derivadas

Processamento de Sinais
2015-1

39 / 256

Regras de derivadas (1/4)


(cf )' =cf '
( f + g)' = f ' + g '

d (c)
=0
dx

( fg )' = f ' g+ fg '

d ( x)
=1
dx

f
f ' g fg '
( )' =
2
g
g

d (cx)
=c
dx

( f g)' =( f ' g) g '


onde ( f g)= f ( g ( x))
Processamento de Sinais
2015-1

d (x )
c1
=cx
c
dx
40 / 256

Regras de derivada (2/4)


1
d( )
1
(x )
x
1
2
=d
=x = 2
dx
dx
x
1
d( c)
c
( x ) c
x
=d
= c+1
dx
dx
x
1
2

1
2

1
2

d ( x) d x
1
1
1
=
= x = x =
dx
dx 2
2
2x
Processamento de Sinais
2015-1

41 / 256

Regras de derivada (3/4)


d (sen( x))
=cos( x)
dx

d (tan ( x))
1
2
=sec ( x)=
2
dx
cos x

d (cos( x))
=sen( x)
dx

d (cosec( x))
=cosec( x)cotg ( x)
dx

d (arcsen ( x))
1
=
2
dx
1 x

d (cotg ( x))
1
2
=cosec ( x)=
2
dx
sen x

d (arccos( x))
1
=
2
dx
1 x

d (sec( x))
=tg ( x) sec( x)
dx

Processamento de Sinais
2015-1

42 / 256

Regras de derivada (4/4)


d (arctg ( x))
1
=
dx
1+ x 2
d (arcsec ( x))
1
=
2
dx
x( x 1)
d (arccotg ( x)) 1
=
2
dx
1+ x

d (senh( x))
(e x +ex )
=cosh ( x)=
dx
2
d (cosh ( x))
(e x +ex )
=senh( x)=
dx
2
d (tanh( x))
2
=sech ( x)
dx

d (sech( x))
d (arccosec ( x))
1
=tanh
(
x)
sech(
x)
=
dx
dx
x ( x 21)
Processamento de Sinais
2015-1

43 / 256

Sinais

Frequncias

Amplitudes

Fases

Processamento de Sinais
2015-1

44 / 256

Frequncias e Harmnicas

Processamento de Sinais
2015-1

45 / 256

Harmnicas acumuladas

Processamento de Sinais
2015-1

46 / 256

Modulao de sinais

Processamento de Sinais
2015-1

47 / 256

Modulaes bsicas

Processamento de Sinais
2015-1

48 / 256

Modulao PSK Phase Shift Keying

Processamento de Sinais
2015-1

49 / 256

Modulao FSK Frequency Shift Keying

Processamento de Sinais
2015-1

50 / 256

Fator de qualidade de sinal

Processamento de Sinais
2015-1

51 / 256

Superposio positiva

Processamento de Sinais
2015-1

52 / 256

Reflexo fixa e livre

Processamento de Sinais
2015-1

53 / 256

Incidncia, Superposio e Reflexo


= massa/comprimento da linha
= densidade da linha

Processamento de Sinais
2015-1

54 / 256

crescente

Processamento de Sinais
2015-1

55 / 256

decrescente

Processamento de Sinais
2015-1

56 / 256

Potncia
dW F.ds
P (t)=
=
=F.v
dt
dt
2

P (t)=v A cos (kx t )


1
2 2
P average = v A
2

Processamento de Sinais
2015-1

57 / 256

Intensidade
P
I=
2
4r

Processamento de Sinais
2015-1

58 / 256

Radiao de som
Vdeo: radiation.mpeg

Processamento de Sinais
2015-1

59 / 256

Radiao de luz

Processamento de Sinais
2015-1

60 / 256

Disperso da luz

Processamento de Sinais
2015-1

61 / 256

Ressonncia

Processamento de Sinais
2015-1

62 / 256

Soma, subtrao de sinais

y1 = sin (k1x1 1t)


y2 = sin (k2x2 2t)
y = y1 +/- y2

Processamento de Sinais
2015-1

63 / 256

Exemplo

Processamento de Sinais
2015-1

64 / 256

Multiplicao de de sinais

y1 = sin (k1x1 1t)


y2 = sin (k2x2 2t)
y = y1 * y2

Processamento de Sinais
2015-1

65 / 256

Algumas ferramentas

Matlab
$3000 a $4000
http://www.mathworks.com/

Scilab
opensource
http://scilab.org

Sage
opensource
http://www.sagemath.org/

Processamento de Sinais
2015-1

66 / 256

Senoidal pura
Y = sin(x)

-->x=[0:0.1:6*%pi];
-->plot(sin(x));

Processamento de Sinais
2015-1

67 / 256

Senoidal e harmnicas pares


Y = sin(x)+sin(2*x)

Processamento de Sinais
2015-1

Y = sin(x)+sin(2*x)+sin(4*x)

68 / 256

Senoidal e harmnicas pares


Y = sin(x)+sin(2*x)+sin(4*x)+sin(6*x)+sin(8*x)+sin(10*x)+sin(12*x)+sin(14*x)

Processamento de Sinais
2015-1

69 / 256

Senoidais e harmnicas pares subtrativas


Y = sin(x)-sin(2*x)-sin(4*x)-sin(6*x)-sin(8*x)-sin(10*x)-sin(12*x)-sin(14*x)

Processamento de Sinais
2015-1

70 / 256

Senoidal pura
Y = sin(x)

-->x=[0:0.1:6*%pi]';
-->plot(sin(x));

Processamento de Sinais
2015-1

71 / 256

Senoidal e harmnicas mpares


Y = sin(x)+sin(3*x)

Processamento de Sinais
2015-1

Y = sin(x)+sin(3*x)+sin(5*x)

72 / 256

Senoidal e harmnicas mpares


Y = sin(x)+sin(3*x)+sin(5*x) + + sin(13*x)

Processamento de Sinais
2015-1

73 / 256

Onda quadrada

Real :

Processamento de Sinais
2015-1

74 / 256

Aproximaes da onda quadrada


1

Senoide pura

Processamento de Sinais
2015-1

Quarta aproximao

75 / 256

Srie de Fourier

Seja a onda quadrada f(x) de comprimento 2L

4
f ( x)=
Processamento de Sinais
2015-1

n=1,3,5,. ..

1
n x
sin(
)
n
L
76 / 256

Sries de Fourier bsicas

Processamento de Sinais
2015-1

77 / 256

Srie simples
Onda dente de serra

Processamento de Sinais
2015-1

78 / 256

Onda dente de serra

Processamento de Sinais
2015-1

79 / 256

Onda triangular

Processamento de Sinais
2015-1

80 / 256

Domnio no tempo x frequncia

Processamento de Sinais
2015-1

81 / 256

Exemplo com 3 frequncias

Processamento de Sinais
2015-1

82 / 256

Transformada de Fourier

Definio:
Seja a Funo integrvel f :

Relaciona as funes
no domnio do tempo
com as funes no
domnio da frequncia

Processamento de Sinais
2015-1

83 / 256

Domnios em frequncia e tempo

Processamento de Sinais
2015-1

84 / 256

Anlise de FFT no Scilab 1/2


-->// FFT Transform
-->N = 100;
-->n = 0:N - 1;
-->w1 = %pi/5;
-->w2 = %pi/10;
-->s1 = cos(w1*n);
-->s2 = cos(w2*n);
-->f = s1 + s2;
-->plot(n, f);

Processamento de Sinais
2015-1

// nmero de elementos do sinal


// 1a frequncia
// 2a frequncia
// 1o componente do sinal
// 2o componente do sinal
// signal

85 / 256

Anlise de FFT no Scilab 2/2


// A Transformada de Fourier do sinal
F = fft(f);

// Calcula a Transformada de Fourier

F_abs = abs(F); // F_abs o valor absoluto de cada elemento de F


-->plot(n, F_abs(F);

Processamento de Sinais
2015-1

86 / 256

FFT com rudos

Processamento de Sinais
2015-1

87 / 256

DFT: Transformada de Fourier Discreta


Lista finita de amostragens igualmente espaadas

Lista de coeficientes de uma combinao finita de senoides

Processamento de Sinais
2015-1

88 / 256

DFT do sinal f
-->// FFT Transform
-->N = 100;
-->n = 0:N - 1;
-->w1 = %pi/5;
-->w2 = %pi/10;
-->s1 = cos(w1*n);
-->s2 = cos(w2*n);
-->f = s1 + s2;
-->plot(n, f);

Processamento de Sinais
2015-1

// nmero de elementos do sinal


// 1a frequncia
// 2a frequncia
// 1o componente do sinal
// 2o componente do sinal
// signal
-->plot(dft(f, 1));

89 / 256

Ondas estacionrias

Processamento de Sinais
2015-1

90 / 256

Sinais, corrente e campo magntico

Processamento de Sinais
2015-1

91 / 256

Energia e Potncia de um sinal


1 2
P (t)=v (t)i (t )= v (t)
R
No intervalo de tempo t1 a t2 :
t2

p(t)dt=
t1

1 2
v (t) dt
R

Potncia mdia no intervalo de t1 a t2 :


t2

t2

1
1
1 2
p(t) dt=
v (t ) dt

(t2t1) t1
(t2t1) t1 R
Processamento de Sinais
2015-1

92 / 256

Energia total

Tempo contnuo

E lim T x(t ) dt = x (t) dt

Tempo discreto
+N

E lim N

x [n] =

n=N

Processamento de Sinais
2015-1

x [n]

N =

93 / 256

Potncia mdia

Tempo contnuo

1
2
P lim T
x (t ) dt

2T

Tempo discreto
+N

1
2
x [n]
P lim N

2N+1 n=N

Processamento de Sinais
2015-1

94 / 256

Transformaes

Varivel independente

Ajuste de controles

Melhoria dos sinais

Eliminao de rudos

Equalizao

...

Processamento de Sinais
2015-1

95 / 256

Exemplos de transformaes

Processamento de Sinais
2015-1

96 / 256

Deslocamento no tempo

Sinais

x(n) e

x(n t0)

Idnticos na forma
Deslocados um em relao ao outro
x(n t0)

Atrasado se t0 positivo

Adiantado se t0 negativo

Exemplos

Radar, sonar, sinais ssmicos, ...

Processamento de Sinais
2015-1

97 / 256

Reflexo no tempo

Sinais

x(n) e

x(-n)

Espelhado em relao a n=0

Processamento de Sinais
2015-1

98 / 256

Escala do tempo
x (t)

x (n t )

x (t / n)

Processamento de Sinais
2015-1

99 / 256

Escala do tempo e deslocamento


x (t )

Processamento de Sinais
2015-1

x ( t +)

100 / 256

Sinais no peridicos

Processamento de Sinais
2015-1

101 / 256

Simetria

Simetria par
Contnuo

Discreto

x(-t) = x(t)

Simetria mpar

x[-n] = x[n]

Deve ser 0 em t = 0 ou n = 0 !

Contnuo

Discreto

x(-t) = -x(t)

x[-n] = -x[n]

Processamento de Sinais
2015-1

102 / 256

Sinais senoidais e exponenciais

Sinal exponencial complexo


x(t) = Ceat
C e a so complexos
A>0

A<0

Sinal exponencial Real


Se C e a so reais
x(t) exponencial real
Processamento de Sinais
2015-1

103 / 256

Sinais senoidais e exponenciais


complexas peridicas

Peridica com perodo T

x(t) = x(t + T)

jw 0

t = e jw

( t + T)

Senoidal

x(t) = A cos(0-t + )

Processamento de Sinais
2015-1

104 / 256

Frequncia fundamental e Perodo


A cos(0-t + ) =

1 > 2 > 3
T1 < T2 < T3

Processamento de Sinais
2015-1

105 / 256

Potncia Mdia
t0

E perodo =e
0

t0
j 0 t 2

dt= 1.dt=T 0
0

1
P perodo = E perodo =1
T0

Processamento de Sinais
2015-1

106 / 256

Soma de 2 sinais
Soma de 2 sinais exponenciais complexos, por exemplo:
j2t

x (t)=e +e

j3t

Colocando a exponecial em evidncia:

x (t)=e

j2.5t

j0.5

(e

+e

j0.5t

Reescrevendo, utilizando a equao de Euler:

x (t)=2 e

j2.5t

ix

e =cos( x)+i sin ( x)

cos(0.5t)

Obtendo o mdulo de x(t) :

x (t )=2cos(0.5t)

Processamento de Sinais
2015-1

107 / 256

Soma de 2 sinais
Forma de onda do sinal

Processamento de Sinais
2015-1

x (t )=2cos(0.5t)

108 / 256

Soma de 2 sinais
Forma de onda do sinal

Processamento de Sinais
2015-1

x (t )=2cos(0.5t)

109 / 256

Senoide pura e sua FFT

Processamento de Sinais
2015-1

110 / 256

Anlise senoides deslocadas /3


-->x=[0:0.2:8*%pi]
-->f1=sin(x)
-->f2=sin(x + %pi/3)
-->plot(f1, blue)
-->plot(f2, green)
-->plot(f1+f2, red)

Processamento de Sinais
2015-1

111 / 256

Transformada de Fourier
-->plot(fft(f1+f2), magenta )

Processamento de Sinais
2015-1

112 / 256

Transformada de Laplace

Seja uma funo f(t)

F(s) a transformada de Laplace de f(t)

S um nmero complexo :

s=+i

Outra notao:

Processamento de Sinais
2015-1

113 / 256

Anlise senoides deslocadas /5


-->x=[0:0.2:8*%pi]
-->f1=sin(x)
-->f2=sin(x + %pi/5)
-->plot(f1, blue)
-->plot(f2, green)
-->plot(f1+f2, red)
-->plot(fft(f1+f2), magenta )

Processamento de Sinais
2015-1

114 / 256

Anlise de seno e cosseno


-->x=[0:0.2:8*%pi]
-->f1=sin(x)
-->f2=cos(x)
-->plot(f1, blue)
-->plot(f2, green)
-->plot(f1+f2, red)
-->plot(fft(f1+f2), magenta )

Processamento de Sinais
2015-1

115 / 256

Sinais exponeciais complexos gerais

Considerando exponencial complexa Ceat


C expresso na forma polar

C =Ce

a expresso na forma retangular

a=r+ jw 0
at

j (r + j 0 )t

Ce =Ce e

Expandindo usando Euler:

rt

=Ce e

j (0t +)

Ce at =Ce rt cos(0 t +)+ jCe rt sin ( 0t +)

Processamento de Sinais
2015-1

116 / 256

Formas de onda
Para r > 0

Para r < 0

Processamento de Sinais
2015-1

117 / 256

Sinais discretos

Processamento de Sinais
2015-1

118 / 256

Sinais senoidais discretos

Processamento de Sinais
2015-1

119 / 256

Sinais crescentes ou decrescentes

Processamento de Sinais
2015-1

120 / 256

Funo impulso unitrio- discreto


=

0, n0

1, n=0
0

u [n]= [nk ]
k=

Intervalo do somatrio

Processamento de Sinais
2015-1

ou

u [n]= [nk ]
k=0

Intervalo do somatrio

121 / 256

Degrau unitrio tempo discreto

u [n]=

0, n<0
1, n0

[n]=u [n]u [n1]


n

Soma cumulativa:

u[n]=

[m]

m=

u[n]= [nk ]
k=

Processamento de Sinais
2015-1

equivalente a

u[n]= [nk ]
k =0

122 / 256

Degrau unitrio tempo contnuo

u (t)=

0, t <0

Discontnua se t = 0 !

1, t >0
u( t )
1

0
t

u (t )= ( )d

Integral cumulativa do impulso unitrio !

(t)
(t )=du
dt
Processamento de Sinais
2015-1

Primeira derivada do degrau unitrio !


123 / 256

Aproximao do degrau unitrio


u(t)
1

Aproximao contnua do degrau unitrio, u(t )


Pulso curto de durao com rea unitria independente de

Processamento de Sinais
2015-1

124 / 256

Impulso unitrio tempo contnuo


Quando 0, (t )tornase mais estreito e mais alto
mantento sua rea unitria .
(t)=lim (t)

Em geral, um Impulso k (t) :

k ( )d =ku(t)

(t)

k (t )
1
k

0
Processamento de Sinais
2015-1

t
125 / 256

Sistemas de tempo contnuo


e de tempo discreto
x(t)

y(t)
Sistema de tempo contnuo

x[t]
y[t]
Sistema de tempo discreto

Processamento de Sinais
2015-1

126 / 256

Exemplo de sistema contnuo


R

Vs

+
-

(V s (t )V c (t ))
i(t )=
R

Processamento de Sinais
2015-1

Vc

dv c (t )
i (t)=C
dt

127 / 256

Exemplo de sistema contnuo


f

dv (t ) 1
= f (t) pv (t )
dt
m

pv

dv (t ) p
1
+ v (t )= f (t )
dt
m
m

Processamento de Sinais
2015-1

128 / 256

Interconexes de sistemas
Entrada

Sada
Sistema 1

Sistema 2

Sistema 1
Entrada

Sada

Sistema 2

Processamento de Sinais
2015-1

129 / 256

Interconexes de sistemas
Sistema 1
Entrada

Sistema 2

'
+

Sistema 4

Sada

Sistema 3

Processamento de Sinais
2015-1

130 / 256

Propriedades de sistemas

Sem memria

y (t )= x (t )

Com memria
n
x (k )

k =

y (n)=

y (n)= x (n1)

1
y (n)= x (t )dt
C

Processamento de Sinais
2015-1

131 / 256

Sistema inverso
y(n)
x(n)

Sistema

Sistema
inverso

w(n) = x(n)

Sistema inversvel => Existe sistema inverso

Processamento de Sinais
2015-1

132 / 256

Exemplos
y(t)

x(t)

Sistema

1)

y (t )=2x (t )

2)

y [n]= x (k )

Processamento de Sinais
2015-1

Sistema
inverso

w(t) = x(t)

1
w (t)= y (t)
2
w [n]= y [n] y [n1]

133 / 256

Sistemas no inversveis
1)

2)

Processamento de Sinais
2015-1

y [n]=0

y (t)= x (t )

134 / 256

Aplicaes

Comunicaes

Codificadores

Transmisso de dados codificados


Privacidade

Transmisso de cdigos de verificao

Integridade
Confiabilidade

Processamento de Sinais
2015-1

135 / 256

Causalidade

A sada em qualquer tempo depende dos


valores de entrada somente nos instantes
presentes e passado.

Sistema no antissipativo

Exemplo
R
Vs

+
-

Processamento de Sinais
2015-1

Vc

136 / 256

Sistemas causais
1)

y (n)= x (k )

2)

y (n)= x (n1)

3)

1
y (t)= i (t) dt
C

Processamento de Sinais
2015-1

137 / 256

Estabilidade
Sistemas estveis:

Pequenas entradas produzem respostas que no so divergentes.

x(t)
y(t)
x(t)

Pndulo estvel
Processamento de Sinais
2015-1

y(t)

Pndulo invertido instvel


138 / 256

Estabilidade
Se a entrada para um sistema estvel limitada
a sada tambm deve ser limitada.

Limite da velocidade: aumento da fora de atrito !

v F
=
m m
Processamento de Sinais
2015-1

F
V=

139 / 256

Linearidade
Sistema com a importante propriedade de superposio
Entrada soma ponderada de sinais
Sada tambm uma soma ponderada de sinais
x1(t)

y1(t)
1

-2

Linear

-1

y2(t)
x2(t) = x1(t-2)

Processamento de Sinais
2015-1

No linear

2
140 / 256

Invarincia no tempo
O comportamento e as caractersticas do
sistema so fixos ao longo do tempo.
Exemplo:
Circuito RC com R e C constantes
Um sistema invariante no tempo se um deslocamento no
tempo do sinal de entrada resulta um deslocamento
idntico no sinal de sada.

x[n] y[n]
ento

Exemplo: sin(x(t))

x[n - t] y[n - t]
Processamento de Sinais
2015-1

141 / 256

Verificao de linearidade
Seja y(t) = x2(t)
E x1(t), x2(t) e x3(t)
Ento
x1(t)-> y1(t) = x21(t)
x2(t)-> y2(t) = x22(t)
x3(t)-> y3(t) = x23(t)

= (ax1(t) + bx2(t))2
= a2x12(t)+b2x22(t) + 2abx1(t)x2(t)
= a2y1(t)+b2y2(t) + 2abx1(t)x2(t)

Especificando x1(t), x2(t), a e b de tal forma que


y3(t) ay1(t)+by2(t)
Exemplo: x1(t) = 1 , x2(t) = 0, a = 2 e b = 0
y3(t) = [2x1(t)]2 = 4
Mas 2y1(t) = 2[x1(t)]2 = 2 logo o sistema no linear
Processamento de Sinais
2015-1

142 / 256

Exerccio
Problema 1.21 do livro Sistemas e Sinais - Oppenheim
Seja o sinal x(t) de tempo contnuo abaixo:
Esboce os sinais:
a) x(t 1)
b) X(2 t)
c) x(2t + 1)
d) x(4 - t/2)

Processamento de Sinais
2015-1

143 / 256

Sistemas lineares discretos


invariante no tempo
Seja o sinal x[n] representado em (a)

E uma sequncia de 5 impulsos unitrios de (b) a (f).


O fator de escala do impulso igual o valor de x[n] no instante da amostra.

Processamento de Sinais
2015-1

144 / 256

Impulsos

Processamento de Sinais
2015-1

145 / 256

Impulsos

Combinao linear de dos impulsos unitrios deslocados [n - k]


A soma das 5 sequncias igual a x[n] para -2 <= n <= 2
+

Siplificando:

x [n ]=

x [k ] [n j ]

k =

Combinao linear de dos impulsos unitrios deslocados [n - k]


Processamento de Sinais
2015-1

146 / 256

Degrau unitrio
x[n] = u[n]
u[k] = 0 para k < 0
u[k] = 1 para k >= 0

u [n]= [nk ]
0

Propriedade seletiva do impulso unitrio de tempo discreto.

Processamento de Sinais
2015-1

147 / 256

Representao por soma de convolues


Entrada arbitrria:

x [n ]

Resposta:

hk [n]

Sada:

y [n]=

x [k ]]hhk [n]

k =
k=

Sistema Linear Invariante no Tempo (LIT)


Deslocado no tempo
hk[n] = h0[n-k]
Soma de convoluo
ou
Soma de superposio

Processamento de Sinais
2015-1

y [n]=

x [k ] h[nk ]

k =

148 / 256

Exerccio
Problema 2.21 do livro Sistemas e Sinais - Oppenheim
Calcule a convoluo y[n] = x[n]*h[n] para os seguintes pares de sinais
a)

b)

x [n ]= u [n]
h[n]=n u [n]
n

x [n]= u[n]
n
h[n]= u[n]
n

c)

1
x [n]= u [n4]
2
h[n]=4n u[2n]

Processamento de Sinais
2015-1

149 / 256

Integral de convoluo
Sistema de tempo discreto
=> Sistema que responde a uma sequncia de inpulsos
Aproximao em degraus

Para um sinal de tempo contnuo

x (t )= x (k ) (tk )
Se se aproxima de 0 :

x (t)=lim x (k ) (t k )

0
e o somatrio se aproxima da integral

x (t)= x () (t )dt
Processamento de Sinais
2015-1

150 / 256

Representao grfica

Processamento de Sinais
2015-1

151 / 256

Propriedades de sistemas LIT

Comutativa
Ou seja, em tempo discreto:
+

x [n ]h [n]=h [n]x [n ]=

h [k ] x [nk ]

k =

E em tempo contnuo:
+

x (t)h(t )=h (t)x (t )= h ( ) x (t ) d

Processamento de Sinais
2015-1

152 / 256

Propriedades de sistemas LIT

Distributiva

x [n](h1 [n]+h2 [n])


=

x [n ]h1 [n]+ x [n ]h 2 [n]

Processamento de Sinais
2015-1

153 / 256

Propriedades de sistemas LIT

Inversveis

Processamento de Sinais
2015-1

154 / 256

Propriedades de sistemas LIT

Causalidade
y[n] no deve depender de x[k] para k > n
h[n] = 0 para n < 0

Processamento de Sinais
2015-1

155 / 256

Propriedades de sistemas LIT

Estabilidade
x [n ] < B , para todo n

h [ k ]<

Processamento de Sinais
2015-1

156 / 256

Sistemas LIT
descrita em equaes diferenciais
dy (t)
+2y (t )=x (t )
dt
Com entrada x(t) = Ke3tu(t)

y (t )= y p (t )+ y h (t )
Soluo particular, equao diferencial homognea

dy (t)
+2y(t)=0
dt
Determinando Y

3Y +2Y=K

Processamento de Sinais
2015-1

y p (t )=Ye
K
Y=
5

3t

Ke
y p (t )=
5

3t

157 / 256

Diagrama de blocos
A equao

Sistema discreto
com memria!

y[n] = -ay[n-1] + bx[n]


Pode ser representada pelo diagrama:
x[n]

y[n]

-a

Processamento de Sinais
2015-1

y[n-1]
158 / 256

Diagrama de blocos
Sistema contnuo

dy (t)
+ay (t )=bx (t)
dt
Reescrita :

Processamento de Sinais
2015-1

1 dy (t) b
y (t)=
+ + x (t)
a dt
a

159 / 256

Diagrama de blocos
Representao dos elementos bsicos
x2(t)

a)

x1(t)
b)

c)

x(t)

x(t)

Processamento de Sinais
2015-1

x 1 (t)+ x 2 (t)

+
a

ax (t )

dx (t )
dt

160 / 256

Resoluo
dy (t)
=bx (t)ay (t)
dt

dy (t )
+ay (t )=bx (t )
dt
Integrando
t

y (t)= [bx ( )ay ( )]d

b/a
x(t)

y(t)

-1/a

Processamento de Sinais
2015-1

(t )
dy
dt
161 / 256

Representao como integrador


t

x ( ) d

x(t)

y(t)

-a
t

y (t)= y (t 0)+ [bx ( )ay ( )] d


t0

y(t0) o valor inicial: memria do integrador.


Processamento de Sinais
2015-1

162 / 256

Exerccio
Represente o diagrama de blocos para os seguintes sistemas

a)

Processamento de Sinais
2015-1

163 / 256

Exerccio
Represente o diagrama de blocos para os seguintes sistemas

b)

Processamento de Sinais
2015-1

164 / 256

Exerccio
Represente o diagrama de blocos para os seguintes sistemas

c)

Processamento de Sinais
2015-1

165 / 256

Funes de singularidade

Impulso unitario de tempo contnuo


(t) e a resposta ao impulso identidade

x (t)= x (t )(t)

Para qualquer sinal

(t)

Ento:

(t)=(t)(t)
Pulso retangular:

r (t)= (t) (t )
Quando 0 impulso unitario.

Processamento de Sinais
2015-1

166 / 256

Interpretaes

Processamento de Sinais
2015-1

167 / 256

Interpretaes

Processamento de Sinais
2015-1

168 / 256

Interpretaes

Processamento de Sinais
2015-1

169 / 256

Impulso unitrio e convoluo


Para suficientemente pequeno, os sinais

(t) , r (t ) , r (t ) (t ) , e r (t )r (t)
Agem todos como impulsos quando aplicados a um sistema LIT.

(t )

pode ser definido como o sinal para o qual :

x (t)= x (t )(t)

Processamento de Sinais
2015-1

(como 0)

170 / 256

Exemplo
Se x(t) = 1, para todo t
1=x (t )= x (t )(t )(t )x (t )
+

( ) x (t ) d

( )d

rea unitria

Processamento de Sinais
2015-1

171 / 256

Outra definio
Sinal arbitrrio

g (t)
Espelhado

g (t)
Convoluo com

(t)

g (t)= g (t )(t)= g (t)()d


Para t = 0

g (0)= g ()()d

Processamento de Sinais
2015-1

172 / 256

Outro exemplo
Considere um sistema LIT onde a sada a derivada da entrada

dx (t )
y (t )=
dt
A resposta a derivada do impulso unitrio

dx (t )
= x (t )u1 (t ) para qualquer sinal x (t )
dt
Segunda derivada de (t)
2x

d (t )
= x (t)u 2 (t )u 2 (t )=u1 (t)u1 (t)
2
dt
A k-sima derivada

Processamento de Sinais
2015-1

u k =u 1 (t)...u1 (t )
173 / 256

Exemplo
Sinal constante

x (t )=1
Temos

(t)
0=dx = x (t)u1 (t)
dt
=

u1 ( )d

Convoluo de

u1 () x (t )d

g (t )com u 1 (t)

g ( t )u1 ()d = g (t)u1 (t )

dg (t)
=g ' (t)
dt

Processamento de Sinais
2015-1

Cont.

174 / 256

Exemplo (continuao)
Para t = 0
+

g '=(0)= g ( )u1 ()d

Processamento de Sinais
2015-1

175 / 256

Exerccio
Sendo:
x(t) a fora aplicada a massa
y(t) o deslocamento da massa
Determine a equao diferencial que relaciona
x(t) com y(t)

Processamento de Sinais
2015-1

176 / 256

Exerccio
K = Coeficiente de elasticidade = 2 N/m
M = Massa = 1 kg
B = Constante de amortecimento = 2 N s/m

Sendo:
x(t) a fora aplicada a massa
y(t) o deslocamento da massa
Determine a equao diferencial que relaciona
x(t) com y(t)

Processamento de Sinais
2015-1

177 / 256

Soluo

Processamento de Sinais
2015-1

178 / 256

Circuitos e diagrama de blocos


Circuito

Processamento de Sinais
2015-1

179 / 256

Diagrama de blocos

Processamento de Sinais
2015-1

180 / 256

Outro sistema
Condiao inicial: Vc = 0

Ri (t)+v 0=vi (t)

1
i(t) dt=v 0 (t)

dv 0 (t)
RC
+v 0 (t )=vi (t)
dt

Processamento de Sinais
2015-1

181 / 256

Resolvendo a equao diferencial


v o (t )= A(1e

t / RC

Valor de regime considerando

v 0 ()=lim t v 0 (t )= A
Aplicando a transformada de Laplace

R.I (s)+v 0 (s)=v i (s)

1
v 0 (s)
( RC )
1
=
=
1
v i (s) RCs+1
s+(
)
RC
Processamento de Sinais
2015-1

I (s)
=v 0 (s)
sC

182 / 256

Diagrama de blocos

Processamento de Sinais
2015-1

183 / 256

Serie de Fourier

Soma de um conjunto de senos e cosenos

Exponenciais complexos

Ver fourier.mpeg
Processamento de Sinais
2015-1

184 / 256

Resposta dos sistemas LIT as


exponenciais complexas
Tempo contnuo

st

H ( s)e

st

Tempo discreto

H ( z) z

Apenas mudana de amplitude.

Processamento de Sinais
2015-1

185 / 256

Exemplo

Sistema LIT de tempo contnuo com resposta


ao impulso h(t)
+

y (t )= h( ) x (t ) d

h()e

Fazendo
Temos

s(t )

y (t)=e

como
st

st

e e

h( )e

s (t )

Convergindo, resulta

y (t)= H (s)e st

onde

H (s)= h()e

Processamento de Sinais
2015-1

186 / 256

Filtros de tempo contnuo em equaes


diferenciais
Filtro passa baixas

dv c (t )
RC
+v c (t )=v s (t )
dt
Resposta em frequncia:

H ( j )
Entrada

Sada

Processamento de Sinais
2015-1

v s (t )=e

j t

v c (t)=H ( jw) e j t
187 / 256

Substituindo vs e vt ...
dv c (t )
RC
+v c (t)=v s (t )
dt
d
jt
jt
jt
RC [ H ( j )e ]+ H ( j )e =e
dt
j t
j t
jt
RC j H ( j )e + H ( j )e =e

1
jt
H ( j )e =
e
1+ RCj
1
ou
H ( j )=
1+ RCj
jt

Processamento de Sinais
2015-1

188 / 256

Filtro passa alta simples


dv r (t)
dv s (t)
RC
=V r (t )=RC
dt
dt
j t
Sendo a entrada: v s (t )=e
E a sada:
Ento:

Processamento de Sinais
2015-1

v r (t)=G ( j )e

jt

j RC
G ( j )=
1+ j RC

189 / 256

Processamento de Sinais
2015-1

190 / 256

Grfico de magnitude

Processamento de Sinais
2015-1

191 / 256

Fase da resposta em frequncia

Processamento de Sinais
2015-1

192 / 256

Outros filtros - 1
He j

Processamento de Sinais
2015-1

< He j

193 / 256

Outros filtros - 2
He j

Processamento de Sinais
2015-1

< He j

194 / 256

Outros filtros

Processamento de Sinais
2015-1

195 / 256

Caractersticas de filtros

Frequncia de corte
Potncia de sada metade da potncia de entrada

Constante de carga em regime transitrio

Frequncia angular de ressonncia

Fator de qualdade de um par de polos ou zeros

Processamento de Sinais
2015-1

196 / 256

Funo de transferncia

v i ( s)

Circuito do Filtro
T(s)

v o ( s)

V0
(S z 1 ).(S z 2 )...(S z m )
T (S )= (S )= A
V1
(S p1 ).(S p2 )...(S p n )

Processamento de Sinais
2015-1

197 / 256

Polos e Zeros
V0
(S z 1 ).(S z 2 )...(S z m )
T (S )= (S )= A
V1
(S p1 ).(S p2 )...(S p n )
Os zeros de um filtro correspondem aos valores de S que
anulam o numerador da funo de transferncia
Os plos do filtro correspondem aos os valores de S que
anulam o denominador de T(S)

Processamento de Sinais
2015-1

198 / 256

Filtro T(s) frequncia angular

Processamento de Sinais
2015-1

199 / 256

Filtro passa alta

Processamento de Sinais
2015-1

200 / 256

Filtro passa banda

Processamento de Sinais
2015-1

201 / 256

Filtro rejeita banda

Processamento de Sinais
2015-1

202 / 256

Circuitos bsicos

Processamento de Sinais
2015-1

203 / 256

Equaes

Processamento de Sinais
2015-1

204 / 256

Equao resumida
1
TS=
S +1

onde

L
= RC =
R

Um nico polo para

S =t

Plano de Argand

Processamento de Sinais
2015-1

205 / 256

Anlise do circuito

v c (t ) v i (t )v c (t )
v 0 (t )
i c (t)=C
=
v 0 (t )+ RC
=v i (t)
t
R
t
Soluo :

v 0 (t )= A . l

t
RC

Soluo particular para degrau unitrio :

Processamento de Sinais
2015-1

v 0 (t)=u(t )
206 / 256

Representao
v 0 (t)=

A.l
0

t
RC

+1

para t0

para t <0

Resposta ao degrau unitrio de um filtro passa baixas

Processamento de Sinais
2015-1

207 / 256

Filtro passa altas

Processamento de Sinais
2015-1

208 / 256

Representao
Resposta ao degrau unitrio de um filtro passa altas

Processamento de Sinais
2015-1

209 / 256

Filtro passivo de 2a ordem

1
SC

1
V0
1
LC
(s)=
= 2
=
V1
1 S L C +SRC +1
R 1
2
R+SL+
S +S +
C
L LC
Processamento de Sinais
2015-1

210 / 256

Forma geral
2
0

T (S )= A .
0
2
2
S +S + 0
Q
1
onde 0 =
( LC )

1 L
Q=
R C

Resolvendo o denominador

0
S +S + 20=0
Q
2

2
0
2

0
Q
S =
Q
2

2
0

dependente de Q

Processamento de Sinais
2015-1

211 / 256

Calculando o fator de qualidade

2
0
2

4 02

0
Q
S =
Q
2
2
0
2
4 0 =0
2
Q

Processamento de Sinais
2015-1

2
0
2

=4

2
0

1
Q=
4
2

1
Q= =0.5
2

212 / 256

No plano de Argand

Processamento de Sinais
2015-1

213 / 256

Singularidades do filtro

Processamento de Sinais
2015-1

214 / 256

Resposta do filtro

Processamento de Sinais
2015-1

215 / 256

Filtros e Transformada de Fourier - 1


Filtro passa-baixas

Processamento de Sinais
2015-1

216 / 256

Filtros e Transformada de Fourier - 2


Filtro passa-altas

Processamento de Sinais
2015-1

217 / 256

Filtros ativos

Filtragem e Amplificao

Ganhos > 1 ( maiores que 0 dB)

Componentes usados:

Amplificadores operacionais
Transistores
FETs,
Vlvulas

Processamento de Sinais
2015-1

218 / 256

Filtro ativo passa baixas de primeira ordem


Plando de Argand

V V
R
i

V V
=
1
R //
SC

Processamento de Sinais
2015-1

V R +
o

i
1

R
2

1
SC

1
SC

V
V

o
i

R
1

R SR C +1
2
1

219 / 256

Anlise do filtro ativo de 1a ordem


vi ( t )
vo ( t ) v ( t )
= C

=
R1
t
R2
o

Dado que

vo( t )
R2
v o ( t ) + R2 C
= vi ( t )
t
R1

v o ( t )=v c ( t )

Soluo v o ( t )= A
Resposta ao degrau

Condio inicial

Tenso de sada

Processamento de Sinais
2015-1

t
R C
2

R2
v o ( t )= u ( t )
e
R1

v o ( t )= A

t
R C
2

v o ( t )=

t
R C
2

R1

t 0
t <0

v c ( 0)=v o ( 0 )= 0

R2

R
1 R 2

0= A 0

R2
R1

A=

R2
R1

Au (t )

220 / 256

Representao

Processamento de Sinais
2015-1

221 / 256

Filtro ativo passa altas de primeira ordem - 1

V i V
V V o
Vi
V o
Vo
R2
SR1 C
=

= A
1
R2
1
R2
Vi
R 1 SR1 C +1
R1 +
R1 +
SC
SC
R2
S

e A=
Funo de transferncia T ( S ) = A
onde = R1 C
R1
S +1
No plano de Argand

Processamento de Sinais
2015-1

222 / 256

Filtro ativo passa altas de primeira ordem - 2


Ganho esttico quando S

R2 S
T ( S =0) =
= 0
R 1 S +1

T ( S ) =

R2
R
S
A
= 2
R1 S +1
R1

Diagrama de Bode

Processamento de Sinais
2015-1

223 / 256

Resposta ao degrau unitrio


v i ( t )v c ( t )
v (t )
= C c

R1
t

v (t)
v c ( t ) + R 1 C c = v i ( t )
t

v (t )
v o ( t )= R 2 C c
t

v c ( t )= A

Tenso nos terminais do capacitor :

Condio inicial

v c ( 0 )= 0

t
R C
1

v c ( t )= A
0

0= A +1

v c ( t )=u ( t )

t
R C
1

+1 t 0
0
t <0
A=1

)u ( t )
Evoluo da tenso no capacitor : v ( t )=( 1

R C
1

Processamento de Sinais
2015-1

224 / 256

Resposta ao degrau unitrio

Processamento de Sinais
2015-1

225 / 256

Filtro passa faixa ativo de 2a ordem

Exemplo : configurao Sallen-Key


Frequncia de ressonncia

R f + R1
1
fr=
2 C 1 C 2 R1 R 2 R f
Ganho na frequncia de ressonncia

R2
G (dB)=20 log (1+ )
R1
Parmetros aconselhados

C 1=C 2 e R 2=2 R 1
Processamento de Sinais
2015-1

226 / 256

Filtro Chebyshev

Filtro com atenuao mais ngreme e maior ripple

G n ()=H n ( j )=
Processamento de Sinais
2015-1

)
1+ T (
0
2

227 / 256

Filtro Butterworth

Filtro com resposta mais plana possivel

Processamento de Sinais
2015-1

228 / 256

Uma implementao
passa baixa de 2a ordem
Para a ordem n :

G n ()=H n ( j )=

2n

(1+ c )

Frequencia de corte: -3dB de ganho


Normalizando (fazendo c= 1) :

Processamento de Sinais
2015-1

1
G n ()=H n ( j )=
2n
(1+ )
229 / 256

Processamento de Sinais
2015-1

230 / 256

Filtro elptico

1
2
G n ()=H n ( j )=
R
()
n
2
1+

Processamento de Sinais
2015-1

231 / 256

Comparao com outros filtros

Processamento de Sinais
2015-1

232 / 256

Usando o Matlab
http://www.mathworks.com/help/dsp/examples/designing-low-pass-fir-filters.html

Processamento de Sinais
2015-1

233 / 256

Projeto de filtro em Matlab


Filtro chebychev simples passa baixas
Fc = 0.4;
N = 100;
% FIR filter order
Hf = fdesign.lowpass('N,Fc',N,Fc);
Hd1 = design(Hf,'window','window',@hamming,
'SystemObject',true);
Hd2 = design(Hf,'window','window',
{@chebwin,50},'SystemObject',true);
hfvt = fvtool(Hd1,Hd2,'Color','White');
legend(hfvt,'Hamming window design',
'Dolph-Chebyshev window design')

Processamento de Sinais
2015-1

234 / 256

Processamento de Sinais
2015-1

235 / 256

Aumentando a ordem do filtro


Hf.FilterOrder = 200;
Hd3 = design(Hf,'window','window',
{@chebwin,50},'SystemObject',true);
hfvt = fvtool(Hd2,Hd3,'Color','White');
legend(hfvt,'Dolph-Chebyshev window design.Order = 100',
...'Dolph-Chebyshev window design. Order = 200')

Processamento de Sinais
2015-1

236 / 256

Processamento de Sinais
2015-1

237 / 256

Controlando a ordem do filtro


ripple e atenuao
N = 100; % Order = 100 -> 101 coefficients
setspecs(Hf,'N,Fc,Ap,Ast',N,Fc,Ap,Ast);
Hd6 = design(Hf,'equiripple','SystemObject',true);
measure(Hd6)
hfvt = fvtool(Hd5,Hd6,'Color','White');
legend(hfvt,...
'Equiripple design, 146 coefficients',...
'Equiripple design, 101 coefficients')

Processamento de Sinais
2015-1

238 / 256

Processamento de Sinais
2015-1

239 / 256

Controlando a regio de transio


setspecs(Hf,'N,Fp,Fst',N,Fp,Fst);
Hd7 = design(Hf,'equiripple','SystemObject',true);
measure(Hd7)
hfvt = fvtool(Hd5,Hd7,'Color','White');
legend(hfvt,...
'Equiripple design, 146 coefficients',...
'Equiripple design, 101 coefficients')

Processamento de Sinais
2015-1

240 / 256

Processamento de Sinais
2015-1

241 / 256

Filtro passa baixas de fase mnima


setspecs(Hf,'Fp,Fst,Ap,Ast',Fp,Fst,Ap,Ast);
Hd13 =
design(Hf,'equiripple','minphase',true,'SystemObject',true);
hfvt = fvtool(Hd5,Hd13,'Color','White');
legend(hfvt,...
'Linear-phase equiripple design',...
'Minimum-phase equiripple design')

Processamento de Sinais
2015-1

242 / 256

Processamento de Sinais
2015-1

243 / 256

Filtro de Kalman

Rudolf E. Klmn
Filtro LQE (Linear Quadratic Estimation)

Algoritimo usando estimativas baseada em amostras.

Operao recursiva em um fluxo ruidoso de dados .

Processamento de Sinais
2015-1

244 / 256

Algoritmo

Processamento de Sinais
2015-1

245 / 256

Diagrama de blocos

Processamento de Sinais
2015-1

246 / 256

Exemplos de Aplicao

Processamento de Sinais
2015-1

247 / 256

Processamento de imagens
Filtro de Kalman

Processamento de Sinais
2015-1

248 / 256

Processamento de imagens
Filtro de Kalman

Processamento de Sinais
2015-1

249 / 256

Processamento de Sinais
2015-1

250 / 256

Usando MATLAB
kalman
Kalman filter design, Kalman estimator
Syntax
[kest,L,P] = kalman(sys,Qn,Rn,Nn)
[kest,L,P] = kalman(sys,Qn,Rn,Nn,sensors,known)
[kest,L,P,M,Z] = kalman(sys,Qn,Rn,...,type)
Description
kalman designs a Kalman filter or Kalman state estimator given a statespace model of the plant and the process and measurement noise
covariance data. The Kalman estimator provides the optimal solution to
the following continuous or discrete estimation problems.

Processamento de Sinais
2015-1

251 / 256

Implementao em C
/*
* KFilter.c
*
* Created: 16-03-2012 19:18:41
* Author: Anyone :) :P
*/
#include <avr/io.h>
typedef struct {
float x[2];

// initial state (location and velocity)

float P[2][2]; // initial uncertainty


float u[2];

// external motion

float F[2][2]; // next state function

// For Prediction
// For Prediction

float H[2];

// measurement function

float R[1];

// measurement uncertainty

float I[2][2]; // identity matrix


} kalman_state;

Processamento de Sinais
2015-1

252 / 256

kalman_state kalman_init()
{
kalman_state result;
// First is position and another is velocity
// Consider [0.0f
//
0.0f];
result.x[0] = 0.0f;
result.x[1] = 0.0f;
// Consider [[1000.0f
0.0f]
//
[
0.0f 1000.0f]];
result.P[0][0] = 1000.0f; result.P[0][1] =
0.0f;
result.P[1][0] =
0.0f; result.P[1][1] = 1000.0f;
// Consider [0.0f
//
0.0f];
result.u[0] = 0.0f;
result.u[1] = 0.0f;
// Consider [[1.0f, 1.0f]
//
[0.0f, 1.0f]];
result.F[0][0] = 1.0f; result.F[0][1] = 1.0f;
result.F[1][0] = 0.0f; result.F[1][1] = 1.0f;
// Consider [1.0f, 0.0f];
result.H[0]
= 1.0f; result.H[1] = 0.0f;
result.R[0]
= 1.0f; //The RAW value is always flickering by? // Consider [1.0f];
// Consider [[1.0f, 0.0f]
//
[0.0f, 1.0f]];
result.I[0][0] = 1.0f; result.I[0][1] = 0.0f;
result.I[1][0] = 0.0f; result.I[1][1] = 1.0f;
return result;
}

Processamento de Sinais
2015-1

253 / 256

void kalman_update(kalman_state* state, float measurement)


{
// y = Z - ( H * x );
// Z - (H0*x0 + H1*x1)
float y = (float)measurement - ( state->H[0]*state->x[0] + state->H[1]*state->x[1] ) ;
//S = H * P * ( H' ) + R;
//
( [H0 H1] * [P00 P01 * [H0 ) + R
//
P10 P11]
H1]
float S = state->H[0]*state->H[0]*state->P[0][0] + state->H[0]*state->H[1]*(state->P[0]
[1]+state->P[1][0]) + state->P[1][1] * state->H[1]*state->H[1] + state->R[0];
//K = P * ( H' ) / S; // or P* H'*inv(S)
float K[2];
//Consider [K0
K1]
// ([P00 P01 * [H0 ) / S
//
P10 P11]
H1]
K[0] = state->P[0][0]*state->H[0]/S+state->P[0][1]*state->H[1]/S;
K[1] = state->P[1][0]*state->H[1]/S+state->P[1][1]*state->H[1]/S;
//x = x + ( K * y );
// ([x0 + [K0 ) * y
x1]
K1]
state->x[0] = state->x[0] + K[0] * y;
state->x[1] = state->x[1] + K[1] * y;
//P = ( I - ( K * H ) ) * P;
//
[I00 I01 - [K0 * [H0 H1] * [P00 P01
//
I10 I11]
K1]
P10 P11]
state->P[0][0]=((state->I[0][0]-K[0]*state->H[0])*state->P[0][0])+((state->I[0][1]-K[0]
state->H[1]) * state->P[1][0]);
state->P[0][1]=((state->I[0][0]-K[0]*state->H[0])*state->P[0][1])+((state->I[0][1]-K[0]
state->H[1]) * state->P[1][1]);
state->P[1][0]=((state->I[1][0]-K[1]*state->H[0])*state->P[0][0])+((state->I[1][1]-K[1]
state->H[1]) * state->P[1][0]);
state->P[1][1]=((state->I[1][1]-K[1]*state->H[1])*state->P[0][1])+((state->I[1][1]-K[1]
state->H[1]) * state->P[1][1] );
}

Processamento de Sinais
2015-1

*
*
*
*

254 / 256

void kalman_predict(kalman_state* state)


{
//state->x = state->F*state->x + state->u ;
// [F00 F01 * [x0 + [u0
// F10 F11]
x1]
u1]
state->x[0] = state->F[0][0]*state->x[0] + state->F[0][1]*state->x[1] + state->u[0];
state->x[1] = state->F[1][0]*state->x[0] + state->F[1][1]*state->x[1] + state->u[1];
//state->P = state->F*state->P*state->F'
// [F00 F01 * [P00 P01 * [F00 F10
F10 F11]
P10 P11]
F01 F11]
state->P[0][0]=state->F[0][0]*(state->F[0][0]*state->P[0][0]+
state->F[0][1]*state->P[1][0])+state->F[0][1] *
(state->F[0][0]*state->P[0][1]+state->F[0][1]*state->P[1][1]);
state->P[0][1]=state->F[1][0]*(state->F[0][0]*state->P[0][0]+
state->F[0][1]*state->P[1][0])+state->F[1][1]*(state->F[0][0]*
state->P[0][1]+state->F[0][1]*state->P[1][1]);
state->P[1][0]=state->F[0][0]*(state->F[1][0]*state->P[0][0]+state->F[1][1]*
state->P[1][0])+state->F[0][1]*(state->F[1][0]*
state->P[0][1]+state->F[1][1]*state->P[1][1]);
state->P[1][1]=state->F[1][0]*(state->F[1][0]*state->P[0][0]+
state->F[1][1]*state->P[1][0])+state->F[1][1]*
(state->F[1][0]*state->P[0][1]+state->F[1][1]*state->P[1][1]);
}

Processamento de Sinais
2015-1

255 / 256

int main(void)
{
unsigned int SensorRAWValue = 0;
kalman_state Kalman = kalman_init();
while(1)
{
// sensor value retrieval
kalman_update(&Kalman,SensorRAWValue);
kalman_predict(&Kalman);
//TODO:: Please write your application code to use Kalman.x[0]
and/or Kalman.x[1]
}
}

Processamento de Sinais
2015-1

256 / 256