Você está na página 1de 152

Universidade Presbiteriana Mackenzie

Curso de Engenharia Elétrica

Processamento Digital de Sinais

Notas de Aula

Prof. Marcio Eisencraft

Segundo semestre de 2007


Universidade Presbiteriana Mackenzie
Curso de Engenharia Elétrica

Processamento Digital de Sinais

TEORIA

Prof. Marcio Eisencraft

Segundo semestre de 2007


Processamento Digital de Sinais – Aula 1T – Professor Marcio Eisencraft – fevereiro 2007

Aula 1T - Sinais de tempo discreto


Operações com seqüências
Bibliografia
HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 40-46.
MITRA, Sanjit K. Digital signal processing: a computer-based approach. 2nd ed. Boston: McGraw-Hill,
c2001. 866 p. : il. ; 24 cm ISBN 0072321059. Páginas 44 – 49.

1. Sinais de tempo discreto


Ö Um sinal de tempo discreto é basicamente um sinal que está definido apenas

em instantes isolados de tempo. Conseqüentemente, um sinal de tempo dis-


creto pode ser descrito por uma seqüência de números.
Ö Nesta aula, aprenderemos um pouco mais sobre a representação deste tipo de

sinal e como realizar operações com eles.


Ö Os sinais de tempo discreto são representados pela notação x[n] em que n só

está definido para números inteiros. Cada um dos elementos do sinal x é


chamado de amostra. Vejamos alguns exemplos:

(a) x[n] = n , − 6 ≤ n ≤ 6
2

Este sinal é constituído das seguintes amostras


{x[n]} = {36,25,16,9,4,1,0,1,4,9,16,25,36} . A figura a seguir mostra um gráfico deste

sinal:
stem(-6:6, (-6:6).^2);

1
Processamento Digital de Sinais – Aula 1T – Professor Marcio Eisencraft – fevereiro 2007

A segunda amostra deste sinal é x[−5] = 25 . Este sinal tem 6 − (−6) + 1 = 13 amos-
tras.
(b) y[n] = (0,9) n , n ∈ N
As amostras deste sinal são { y[ n]] = {1;0,9;0,81;0,729;0,6561;...} . A figura a seguir
mostra as 50 primeiras amostras deste sinal.
Repare que este é um sinal com infinitas amostras e, por exemplo, y[0] = 1 .
stem (0:50, (0.9).^(0:50))

• Os exemplos acima mostram que um sinal de tempo discreto pode ser uma
seqüência de comprimento finito ou infinito. Além disso, um sinal de compri-
mento finito definido no intervalo N1 ≤ n ≤ N 2 tem comprimento ou duração:

N = N 2− N1 + 1 .

• Dentre as seqüências de comprimento infinito, destacamos as seqüências


chamadas causais definidas somente para n ≥ 0 e as seqüências anticausais de-
finidas para n < 0 . Por exemplo, a seqüência do exemplo anterior é causal.

Exercício
1. (CARLSON, 1998; p. 44) Um sinal é chamado de simplesmente definido
(“simply-defined”) se ele é representado por uma única equação e é chamado

2
Processamento Digital de Sinais – Aula 1T – Professor Marcio Eisencraft – fevereiro 2007

de definido por partes (“piecewise defined”) se é representado por um con-


junto de equações cada uma válida num intervalo de tempo diferente. Sendo
assim, esboce os sinais de tempo discreto definidos pelas seguintes equações.
Indique também se eles são definidos por partes.

⎪n − 1, n < 3

x[n] = ⎨− 3, 3 ≤ n < 6
(a) x[n] = e 0, 25n , − ∞ ≤ n ≤ ∞ (b) ⎪ n
⎪5 − , n ≥ 6
⎩ 3

(n + 1)
(c) x[n] = 2 , −∞ ≤ n ≤ ∞
⎧n 2 − 1, n ≥ 0
(d) x[n] = ⎨
n +1 ⎩0, n < 0

⎧1 (1 + n ), n ≥ 0
(e) x[n] = ⎨
⎩1 (1 − n ), n < 0

1.1. Operações com seqüências


• Sistemas de tempo discreto são entidades que transformam uma ou mais se-
qüências de entrada em uma ou mais seqüências de saída. A figura a seguir
mostra esquematicamente um sistema de tempo discreto cuja entrada é a se-
qüência x[ n] e a saída é a seqüência y[n] .

• O conceito de sistemas é um dos mais importantes no curso de Engenharia


Elétrica e é explorado em várias disciplinas. Aqui, nos preocuparemos princi-
palmente com a parte operacional de sistemas de tempo discreto, ou, em outras
palavras, em como eles operam.

3
Processamento Digital de Sinais – Aula 1T – Professor Marcio Eisencraft – fevereiro 2007

• Quase todo sistema de tempo discreto pode ser decomposto em um conjunto


de operações básicas entre seqüências que serão estudadas a seguir.

1.1.1. Produto
• A operação produto entre duas seqüências x[ n] e y[n] , representada por
w1 [n] = x[n] ⋅ y[n] , consiste em multiplicar, para cada valor de n as amostras das

seqüências x[ n] e y[n] .
• Esquematicamente, esta operação é representada pelo símbolo mostrado a se-
guir. Esta operação também é chamada de modulação na área de telecomuni-
cações.

1.1.2. Soma
• A operação soma entre duas seqüências x[ n] e y[n] , representada por
w2 [n] = x[n] + y[n] , consiste em somar, para cada valor de n as amostras das se-

qüências x[ n] e y[n] .
• Esquematicamente, esta operação é representada pelo símbolo mostrado a se-
guir que é chamado de somador.

4
Processamento Digital de Sinais – Aula 1T – Professor Marcio Eisencraft – fevereiro 2007

1.1.3. Multiplicação por escalar


• Nesta operação, um novo sinal é gerado multiplicando-se cada amostra da
seqüência x[n] pelo escalar A : w3 [n] = Ax[n] .

• Esquematicamente temos:

• Esta operação também é chamada de ganho.

Exercício
2. (MITRA, 2001; p. 106) Considere as seguintes seqüências de comprimento 7
definidas para − 3 ≤ n ≤ 3 :
x[n] = {3; − 2; 0; 1; 4; 5; 2}

y[n] = {0; 7; 1; − 3; 4; 9; − 2} .
w[n] = {− 5; 4; 3; 6; − 5; 0; 1}

Determine as seguintes seqüências:


(a) u[n] = x[n] + y[n] (b) v[n] = x[n] + w[n] (c) s[n] = y[n] − w[n]
(d) r [n] = 4,5 y[n] .

1.1.4. Deslocamento no tempo


• A última operação de que trataremos por enquanto é o deslocamento no tem-
po (“time-shifting”). A relação entre a saída e a entrada nesta operação é
w4 [n] = x[n − N ]

em que N é um inteiro. Se N > 0 esta é uma operação de atraso e se N < 0 esta


é uma operação de avanço. O dispositivo que implementa a operação de atraso
de uma amostra é chamado de atraso unitário e seu símbolo é mostrado a se-
guir.

5
Processamento Digital de Sinais – Aula 1T – Professor Marcio Eisencraft – fevereiro 2007

• A explicação do por que deste símbolo será dada mais tarde quando estudar-
mos Transformadas z.

Exercícios
3. Um sinal de tempo discreto x[ n] , definido para todo n inteiro é dado por
x[n] = 2n + 1 . Ele é passado por um atrasador, obtendo-se o sinal w[n] = x[n − 1] .

Descreva as amostras para 0 ≤ n ≤ 10 dos sinais x[ n] e w[n] e escreva uma fórmu-


la fechada para as amostras do sinal w[n] .

4. Desenhe um diagrama de blocos que programe a seguinte operação sobre o


sinal x[n] :
y[ n] = x[ n] + 0,5 x[ n − 1] + 0,75 x[ n − 2]

5. (MITRA, 2001; p. 47) Descreva uma formula para o sinal y[n] obtido do fil-
tro mostrado em diagrama de blocos na figura a seguir:

6
Processamento Digital de Sinais – Aula 2T – Professor Marcio Eisencraft – fevereiro 2007

Aula 2T - Classificação de sinais


Bibliografia
HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 40-46.
OPPENHEIM, Alan V.; WILLSKY, Alan S.; NAWAB, S. Hamid. Signals & systems. 2nd. ed. Upper Sad-
dle River, New Jersey: Prentice-Hall, c1997. 957 p. ISBN 0138147574. Páginas 1-14

1.2 Classificação de sinais


• Nas aulas anteriores, vimos que um sinal, de forma geral é uma função (con-
tínua ou discreta) do tempo. Veremos agora como podemos classificar os si-
nais segundo alguns critérios como simetria, periodicidade e energia.
• Em cada caso, veremos as definições para sinais de tempo contínuo e discre-
to.

1.2.1 Classificação baseada na simetria


1.2.1.1 Sinais de tempo contínuo
• Um sinal de tempo contínuo é dito par se ele satisfizer a condição
x(− t ) = x(t ) para todo t

• Um sinal de tempo contínuo é dito impar se ele satisfizer a condição


x(− t ) = − x(t ) para todo t

• Assim, os sinais pares são simétricos com relação ao eixo vertical ou origem
dos tempos enquanto que os sinais ímpares são antisimétricos em relação à o-
rigem dos tempos.
• Os sinais x(t ) = t 2 e x(t ) = t 3 são exemplos de sinal par e ímpar respectivamen-
te. O gráfico destes sinais está mostrado a seguir.

1
Processamento Digital de Sinais – Aula 2T – Professor Marcio Eisencraft – fevereiro 2007

• Qualquer sinal x(t ) pode ser decomposto numa soma de dois outros sinais, um
par x p (t ) e outro ímpar xi (t ) , ou seja,

x(t ) = x p (t ) + xi (t ) , (1)

com x p (− t ) = x p (t ) e xi (− t ) = − xi (t )
• Trocando t por − t na expressão (1), temos:
x(− t ) = x p (− t ) + xi (− t ) = x p (t ) − xi (t ) (2)

• Resolvendo o sistema (1)-(2) para x p (t ) e xi (t ) , chega-se a:

1
xp ( t ) = ( x( t ) +x( −t ) )
2
1
xi ( t ) = ( x( t ) −x( −t ) )
2

1.2.1.2 Sinais de tempo discreto


• De forma análoga ao que foi feito em tempo contínuo, definimos sinais de
tempo discreto par e ímpar como:
Sinal par:
x[− n ] = x[n] para todo n .

Sinal ímpar:
x[− n] = − x[n] para todo n .

• Demonstra-se também, de forma análoga ao que foi feito antes, que qualquer
sinal pode ser decomposto em uma componente par e numa componente ím-
par.

x p [n ] = (x[n ] + x[− n ])
1
2
xi [n ] = ( x[n ] − x[− n ])
1
2
• A figura seguinte mostra exemplos de sinais de tempo discreto par e ímpar.

2
Processamento Digital de Sinais – Aula 2T – Professor Marcio Eisencraft – fevereiro 2007

Exercícios
1. (1041) (MITRA, 2001; p.106) Determine a componente par e ímpar das se-
qüências a seguir definidas no intervalo − 3 ≤ n ≤ 3 :
(a) x[n] = {3; − 2; 0; 1; 4; 5; 2}
(b) y[n] = {0; 7; 1; − 3; 4; 9; − 2}
(c) w[n] = {− 5; 4; 3; 6; − 5; 0; 1}

1.2.2 Classificação quanto à periodicidade


1.2.2.1 Sinais de tempo contínuo
• Um sinal x(t ) é dito periódico quando satisfizer a condição x(t ) = x(t + T ) para
todo t e T é uma constante positiva.
• O menor valor de T que satisfaz esta condição é chamado de período funda-
mental de x(t ) .
• O inverso do período fundamental é a freqüência fundamental, que, quando o
período é medido em segundos, é dada em Hertz (Hz).

1
f =
T
• Também definimos a freqüência angular do sinal, medida em radianos por
segundo como:

ω=
T
3
Processamento Digital de Sinais – Aula 2T – Professor Marcio Eisencraft – fevereiro 2007

• Quando o sinal não apresenta um período mínimo T é chamado de aperiódi-


co.

Exercício
2. (HAYKIN, 2000; p. 37) A figura a seguir mostra uma onda triangular. Qual é
a freqüência fundamental desta onda? Expresse a freqüência fundamental em
unidades de Hz ou rad/s.

1.2.2.2 Sinais de tempo discreto


• A classificação de sinais em sinais periódicos e aperiódicos apresentada até
agora se aplica a sinais de tempo contínuo. Consideraremos a seguir o caso de
sinais de tempo discreto.
• Diz-se que um sinal de tempo discreto x[n] é periódico se ele satisfizer a con-
dição
x[n] = x[n + N ] para todos os números inteiros n ,
em que N é um número inteiro positivo.
• O menor valor de N que satisfaz a definição anterior é chamado de período
fundamental do sinal de tempo discreto x[n] . A freqüência angular fundamen-
tal ou, simplesmente, freqüência fundamental de x[n] é definida por:


Ω=
N ,
4
Processamento Digital de Sinais – Aula 2T – Professor Marcio Eisencraft – fevereiro 2007

a qual é medida em radianos.


• Lembre-se: O período de um sinal de tempo discreto é obrigatoriamente um
número inteiro. Assim, sua freqüência angular fundamental Ω não pode as-
sumir qualquer valor.

Exercício
3. (HAYKIN, 2000; p. 78) Determine se os seguintes sinais são periódicos. Se
forem periódicos, encontre o período fundamental.
(a) x[n] = (− 1)n
(b) x[n] descrito na figura a seguir.

1.2.3 Sinais de energia e potência


1.2.3.1 Sinais de tempo contínuo
• Em sistemas elétricos, um sinal pode representar uma tensão ou uma corrente.
Considere uma tensão v(t ) aplicada a um resistor de resistência R , produzindo
uma corrente i(t ) . A potência instantânea dissipada no resistor é definida por

v 2 (t )
p(t ) = ou p (t ) = Ri (t )
2
R
• Vemos assim que a potência instantânea p(t ) é proporcional à amplitude do
sinal elevada ao quadrado. Além do mais, para R = 1Ω , vemos que a potência
p(t ) é exatamente igual à amplitude ao quadrado do sinal.

5
Processamento Digital de Sinais – Aula 2T – Professor Marcio Eisencraft – fevereiro 2007

• Baseado nisso, em análise de sinais, costuma-se definir a potência instantânea


de um sinal x(t ) como:

p(t ) = x 2 (t )
• Lembrando que a energia é o produto da potência pelo tempo, costuma-se de-
finir a energia total do sinal x(t ) como:


x (t )dt = ∫ x 2 (t )dt .
T
E = lim ∫ 2 2
T →∞ −T 2 −∞

• Também definimos a potência média de um sinal como

P = lim ∫ T x (t )dt .
1 T2 2
T →∞ T − 2

• Para sinais periódicos, podemos calcular a potência média tomando a média


apenas num período ao invés de tomar todo o eixo dos tempos. Para um sinal
periódico de período fundamental T , temos:

P = ∫ T x (t )dt .
1 T2 2
T − 2
• A raiz quadrada da potência média P é chamada de valor médio quadrático
(rms – root-mean-square) do sinal x(t ) .

1.2.3.2 Sinais de tempo discreto


• No caso de um sinal de tempo discreto x[n] , as integrais anteriores são substi-
tuídas pelas somas correspondentes. Dessa forma, a energia total de x[n] é de-
finida por:

E= ∑ x [n]
n = −∞
2

e sua potência média é definida por:

6
Processamento Digital de Sinais – Aula 2T – Professor Marcio Eisencraft – fevereiro 2007

N
x 2 [n] .
1
P = lim
N →∞ 2 N + 1

n=− N

• Novamente, para um sinal periódico, basta tomarmos a média de um período


para o cálculo da potência média. Assim, para o caso de um sinal x[n] com pe-
ríodo fundamental N ,
N −1

∑ x [n] .
1
P= 2

N n =0

• Um sinal é chamado de sinal de energia se e somente se a energia total do


sinal satisfizer a condição
0< E <∞.
• Um sinal é chamado de sinal de potência se e somente se a potência média do
sinal satisfizer a condição

0 < P < ∞.
• Pode-se mostrar que as classificações de energia e potência de sinais são mu-
tuamente exclusivas. Em especial, um sinal de energia tem potência média ze-
ro enquanto que um sinal de potência tem energia infinita.

Exercícios
4. (HAYKIN, 2000; p. 39) Qual a energia total do pulso retangular mostrado na
figura a seguir?

Resposta: A 2T1

5. (HAYKIN, 2000; p. 39) Qual é a potência média da onda quadrada mostrada


na figura a seguir?

7
Processamento Digital de Sinais – Aula 2T – Professor Marcio Eisencraft – fevereiro 2007

Resposta: 1

6. (HAYKIN, 2000; p. 40) Qual é a potência média da onda triangular mostrada


a seguir?

Resposta: 1/3

7. (HAYKIN, 2000; p. 40) Qual a energia total do sinal de tempo discreto mos-
trado a seguir?

8. (HAYKIN, 2000; p. 40) Qual a potência média do sinal periódico de tempo


discreto mostrado na figura a seguir?

8
Processamento Digital de Sinais - Aula 3T – Professor Marcio Eisencraft – julho 2006

Aula 3T - Seqüências Típicas


Bibliografia
HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 46-59.
OPPENHEIM, Alan V.; WILLSKY, Alan S.; NAWAB, S. Hamid. Signals & systems. 2nd. ed. Upper Sad-
dle River, New Jersey: Prentice-Hall, c1997. 957 p. ISBN 0138147574. Páginas 14-38.

1.3 Algumas seqüências básicas


• Nesta aula serão definidos e estudados alguns sinais básicos em tempo discre-
to. Estes sinais serão utilizados durante todo o restante do curso para construir
sinais mais complicados e estudar a resposta de sistemas a eles.
• Estudaremos os sinais de tempo discreto impulsivo, degrau, exponencial e
senoidal.

1.3.1 Sinal impulso


• A versão de tempo discreto do impulso, comumente notada por δ [n] é defini-
da por:
⎧1, n=0
δ [n] = ⎨ .
⎩0, n≠0

• A figura a seguir mostra um gráfico do sinal δ [n] .

1
Processamento Digital de Sinais - Aula 3T – Professor Marcio Eisencraft – julho 2006

• Para representar um impulso no instante n = k , basta escrevermos δ [n − k ] . Por


exemplo, a figura a seguir representa o sinal δ [n − 3].

Exercício
1. Esboce os seguintes sinais:
(a) a[n] = 2δ [n] (b) b [ n ] = 2δ [ n ] + 3δ [ n − 1 ] + 0, 5δ [ n − 2 ]

• Um sinal de tempo discreto arbitrário pode ser representado como uma soma
ponderada de impulsos. Por exemplo, o sinal a seguir:

pode ser expresso por


x[n] = 0,5δ [n + 2] + 1,5δ [n − 1] − δ [n − 2] + δ [n − 4] + 0,75δ [n − 6] .

2
Processamento Digital de Sinais - Aula 3T – Professor Marcio Eisencraft – julho 2006

Exercício
2. Expresse os seguintes sinais como somas ponderadas de funções impulsivas.

1.3.2 Sinal degrau


• A versão em tempo discreto da função degrau, comumente denotada por u[n]
é definida por:
⎧1, n≥0
u[n] = ⎨
⎩0, n<0

• A figura a seguir mostra um gráfico do sinal u[n] .

3
Processamento Digital de Sinais - Aula 3T – Professor Marcio Eisencraft – julho 2006

Exercícios
3. (1022) Esboce o seguinte sinal:
w[n] = u[n] − u[n − 3]

4. (HAYKIN; VEEN, 2001; p. 56) Um sinal de tempo discreto x[n] é definido


por:
⎧1, 0≤n≤9
x[n] = ⎨
⎩0, caso contrário

Usando u[n] descreva x[n] como a superposição de duas funções degrau.

1.3.3 Sinais exponenciais


• Em tempo discreto, um sinal exponencial real é dado por:
x[n ] = Br n ,

com B e r constantes reais.


• A figura a seguir mostra exemplos de sinais exponenciais de tempo discreto.

4
Processamento Digital de Sinais - Aula 3T – Professor Marcio Eisencraft – julho 2006

• Se 0 < r < 1 o sinal é decrescente. Se r > 1 o sinal é crescente. Vemos também


que se r < 0 , um sinal exponencial de tempo discreto assume valores (+,-) que
se alternam.

Exercícios
5. (1021) Calcule a energia e a potência do sinal x[n] = (0,8)n u[n] e verifique se
ele é um sinal de energia ou de potência.

1.3.4 Sinais senoidais


• A versão de tempo discreto de um sinal senoidal é escrita como

x[n] = A cos(Ωn + φ ) (1)


• O período de um sinal de tempo discreto é medido em amostras. Desta forma,
para que x[n] seja periódico com um período de N amostras, ele deve satisfa-
zer a condição x[n] = x[n + N ] para todo n e para algum N inteiro.
• Calculando x[n + N ], temos

x[n + N ] = A cos(Ωn + ΩN + φ ) (2)


• Assim, a condição para que x[n] = x[n + N ] é:
ΩN = 2πm radianos
ou
2πm
Ω= radianos/amostra m, N inteiros. (3)
N
• Assim, um sinal senoidal de tempo discreto será periódico se e somente se sua
freqüência angular Ω puder ser escrito na forma da Equação 3, com m, N in-
teiros.
• É importante notar que, diferentemente dos sinais senoidais de tempo contí-
nuo, nem todos os sinais senoidais de tempo discreto com valores arbitrários
de Ω são periódicos. Especificamente, para que o sinal senoidal de tempo dis-

5
Processamento Digital de Sinais - Aula 3T – Professor Marcio Eisencraft – julho 2006

creto descrito na Eq. (1) seja periódico, a freqüência angular Ω deve ser um
múltiplo na forma de razão de 2π, como indica a Eq. (3).
π
• A figura a seguir ilustra o sinal senoidal x[n] = cos⎛⎜ n ⎞⎟ . Tente calcular o perí-
⎝6 ⎠

odo deste sinal e confira com a figura.

Exercícios
6. (1021) Determine se os seguintes sinais de tempo discreto são periódicos. Se
o forem, determine o seu período fundamental:

(a) x[n] = 3 cos⎛⎜ ⎞


13
πn + 45 o ⎟
⎝ 20 ⎠

(b) x[n ] = cos( 2πn )

6
Processamento Digital de Sinais – Aula 4T – Professor Marcio Eisencraft – março 2007

Aula 4T - Sistemas de tempo discreto

Classificação
Bibliografia
HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 59-70.
LATHI, Bhagwandas Pannalal. Signal processing and linear systems. California: Berkeley, c1998. 734 p.
ISBN 0941413357. Páginas 562-572.

2. Sistemas de tempo discreto no domínio do tempo

Em aulas passadas já foi discutido o conceito de sistema. Foi visto que um


sistema é uma interconexão de operações que transforma um sinal de entrada
em um sinal de saída. Neste curso, abordam-se particularmente os sistemas
em que os sinais são de tempo discreto. Estes sistemas são chamados de sis-
temas de tempo discreto.

• Matematicamente, se expressa um sistema por um operador. Por exemplo,


para dizer que um sinal y[n] é a saída de um sistema H cuja entrada é x[n] es-
creve-se:

y[n] = H [x[n]]
Em diagrama de blocos:

x[n] y[n]
H

Exercícios

1. (LATHI, 1998; p. 572) Uma média móvel é usada para detectar a tendência
de uma variável que flutua muito rapidamente como as médias do mercado
de ações. Uma variável pode flutuar (para cima ou para baixo) diariamente,
mascarando a sua tendência de longo prazo.

1
Processamento Digital de Sinais – Aula 4T – Professor Marcio Eisencraft – março 2007

Podemos obter a tendência de longo prazo suavizando ou tomando a mé-


dia dos N últimos valores da variável. Para o mercado de ações, podemos con-
siderar uma média móvel de 3 dias y[n] como sendo a média dos valores de fe-
chamento do mercado de ações dos últimos três dias, x[n] , x[n − 1] e x[n − 2] .

(a) Escreva a equação de diferenças relacionando y[n] com a entrada x[n] .

(b) Usando elementos de atraso, faça um diagrama de blocos deste filtro de mé-
dia móvel.

2. (LATHI, 1998; p. 611) Resolva a seguinte equação iterativamente (primeiros


três termos apenas):

y[n] − 0,6 y[n − 1] − 0,16 y[n − 2] = 0 com y[− 1] = 25 , y[− 2] = 0 .

3. (LATHI, 1998; p. 611) Resolva a seguinte equação iterativamente (primeiros


três termos apenas):

y[n + 2] + 3 y[n + 1] + 2 y[n] = x[n + 2] + 3x[n + 1] + 3x[n]

com x[n] = 3 n u[n], y[-1] = 3 e y[-2] = 2 .

4. (LATHI, 1998; p. 571) A saída de uma caixa registradora y[n] representa o


preço total de n itens passados pela caixa. A entrada x[n] é o preço do n -
ésimo item.

(a) Escreva a equação de diferenças relacionando y[n] a x[n] .

(b) Esquematize a realização deste sistema usando APENAS UM elemento de


atraso.

2
Processamento Digital de Sinais – Aula 4T – Professor Marcio Eisencraft – março 2007

2.1 Classificação de sistemas

2.1.1 Memória

• Diz-se que um sistema possui memória se sua saída depende de valores pas-
sados ou futuros do sinal de entrada. A extensão temporal de valores passados
dos quais a saída depende define quão longe a memória se estende no passado.

• Em contrapartida, diz-se que um sistema é sem memória se seu sinal de saída


depende somente do valor presente do sinal de entrada.

• Por exemplo, o sistema de média móvel do Exercício 1 descrito pela relação


entrada-saída:

y[n] =
1
(x[n] + x[n − 1] + x[n − 2])
3

tem memória, uma vez que o valor do sinal de saída y[n] no instante n depende
do valor atual e de dois valores passados do sinal de entrada x[n] .

• Por outro lado, um sistema descrito pela relação:

y[n ] = x 2 [n]

é sem memória uma vez que o valor do sinal de saída y[n] no tempo n depende
apenas do valor atual do sinal de entrada x[n] .

2.1.2 Causalidade

• Diz-se que um sistema é causal se o valor atual do sinal de saída depender


somente dos valores presentes e/ou passados do sinal de entrada. Em contrapar-
tida, o sinal de saída de um sistema não-causal depende de valores futuros do
sinal de entrada.

• Por exemplo, o sistema de média móvel já descrito,

3
Processamento Digital de Sinais – Aula 4T – Professor Marcio Eisencraft – março 2007

y[n] =
1
(x[n] + x[n − 1] + x[n − 2])
3

é causal. Por outro lado, o sistema de média móvel descrito por:

y[n] =
1
(x[n + 1] + x[n] + x[n − 1])
3

é não-causal uma vez que o sinal de saída y[n] depende de um valor futuro do
sinal de entrada, a saber, x[n + 1] .

2.1.3 Invariância no tempo

• Diz-se que um sistema é invariante no tempo se um retardo de tempo ou a-


vanço de tempo do sinal de entrada levar a um deslocamento idêntico no sinal de
saída. Isto implica que um sistema invariante no tempo reage de maneira idênti-
ca, não importa quando o sinal de entrada seja aplicado. Dizendo com outras
palavras, as características de um sistema invariante no tempo não se modificam
com o tempo. Caso contrário, diz-se que o sistema é variante no tempo.

• Por exemplo, o sistema y[n] = 2 x[n − 1] é invariante no tempo. Já o sistema


y[n ] = r n x(n ) é variante no tempo.

2.1.4 Linearidade

• Dizemos que um sistema é linear quando são válidos os princípios da super-


posição e da homogeneidade explicados a seguir. Caso contrário, o sistema é
chamado não-linear.

4
Processamento Digital de Sinais – Aula 4T – Professor Marcio Eisencraft – março 2007

A. Princípio da superposição

Seja um sistema y[n] = H [x[n]] e sejam y1 [n] a resposta à entrada x1 [n] e y 2 [n] a
resposta à entrada x2 [n]. Um sistema satisfaz o princípio da superposição se,
quando aplicamos a ele a entrada x S [n] = x1 [n] + x 2 [n] sua saída é y S = y1 [n] + y 2 [n].

B. Princípio da homogeneidade

Seja um sistema y[n] = H [x[n]] e seja y1 [n] a resposta à entrada x1 [n] . Um sistema
satisfaz ao princípio da homogeneidade se quando aplicamos a ele a entrada
x H [n] = ax1 [n] , a ∈ R * , sua saída é y H [n] = ay1 [n] .

• Assim, para verificar se um sistema é linear é necessário testar as duas condi-


ções acima.

Exercícios

5. (1021) Um sistema linear e invariante no tempo tem a seguinte resposta à


entrada x[n] = δ [n] (resposta impulsiva):

Faça um esboço da saída y[n] deste sistema quando a entrada é:


(a) x[n] = 3δ [n]
(b) x[n] = δ [n − 2]
(c) x[n] = 2δ [n] + 0,5δ [n − 1]

5
Processamento Digital de Sinais – Aula 4T – Professor Marcio Eisencraft – março 2007

6. (1031) Um sistema de tempo discreto é definido pela seguinte equação de


diferenças:
y[n] = x[n](1 − x[n − 1])

(a) Este sistema é causal? Justifique.


(b) Este sistema tem memória? Justifique.
(c) Este sistema é linear? Justifique.
(d) Este sistema é invariante no tempo? Justifique.
(e) Determine iterativamente a resposta ao degrau deste sistema ( x[n] = u[n] ) para
0 ≤ n ≤ 5.
(f) Repita o item (e) para x[n] = u[n − 2]. .
(g) Repita o item (e) para x[n] = 3u[n].
Resp: (f) y[n] = {0; 0; 1; 0; 0; 0}, 0 ≤ n ≤ 5 ; (g) y[n] = {3; − 6; − 6; − 6; − 6; − 6}, 0 ≤ n ≤ 5

6
Processamento Digital de Sinais – Aula 5T – Professor Marcio Eisencraft – agosto 2007

Aula 5T – Representação de sistemas LIT:


A soma de convolução
Bibliografia
HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 85-99.
OPPENHEIM, Alan V.; WILLSKY, Alan S.; NAWAB, S. Hamid. Signals & systems. 2nd. ed. Upper Sad-
dle River, New Jersey: Prentice-Hall, c1997. 957 p. ISBN 0138147574. Páginas 74-90.

2.2. Sistemas LIT – A soma de convolução


ƒ Os sistemas mais utilizados em quase todas as áreas da Engenharia são os
sistemas lineares invariantes no tempo (abreviadamente, LIT ou LTI em in-
glês).
ƒ O principal motivo para esta preferência é que este tipo de sistema fica to-
talmente caracterizado pela sua resposta impulsiva, ou seja, pela saída do sis-
tema quando colocamos em sua entrada o sinal impulso unitário δ [n] . Em ou-
tras palavras, se soubermos a resposta de um sistema LIT a uma entrada im-
pulsiva, saberemos calcular sua resposta para qualquer entrada.
ƒ Veja, por exemplo, o exercício a seguir (Exercício 6 da aula 4T).

Exercício
1. (1021) Um sistema linear e invariante no tempo tem a seguinte resposta à en-
trada x[n] = δ [n] (resposta impulsiva):

Faça um esboço da saída y[n] deste sistema quando a entrada é:


(a) x[n] = 3δ [n]
1
Processamento Digital de Sinais – Aula 5T – Professor Marcio Eisencraft – agosto 2007

(b) x[n] = δ [n − 2]
(c) x[n] = 2δ [n] + 0,5δ [n − 1]

• Resumindo, como qualquer sinal x[n] pode ser descrito como uma soma pon-
derada de impulsos, sendo o sistema LIT e conhecendo a resposta a um im-
pulso, poderemos determinar a saída devida a qualquer entrada x[n] .
• Se a entrada de um sistema linear for expressa como uma superposição pon-
derada de impulsos deslocados no tempo, a saída será uma superposição
ponderada da resposta do sistema a cada impulso deslocado no tempo. Se o
sistema for também invariante no tempo, a resposta do sistema a um impulso
deslocado no tempo será uma versão deslocada no tempo da resposta do sis-
tema a um impulso. Por isso, a saída de um sistema LIT é dada por uma su-
perposição ponderada de respostas ao impulso deslocadas no tempo.
• Essa superposição é chamada de soma de convolução.
• Na aula de hoje analisaremos este fato e suas conseqüências em detalhes.

2.2.1 A soma de convolução


• Considere um sinal qualquer x[n] . Sabemos que

x[n]δ [n] = x[0]δ [n]


Ou seja, a multiplicação de um sinal x[n] por um impulso δ [n] resulta num im-
pulso de intensidade x[0]δ [n] . A figura seguinte ilustra este produto.

2
Processamento Digital de Sinais – Aula 5T – Professor Marcio Eisencraft – agosto 2007

• Generalizando esta expressão podemos dizer que


x[n]δ [n − k ] = x[k ]δ [n − k ]
• Ou seja, a multiplicação de um sinal por um impulso deslocado no tempo re-
sulta em um impulso deslocado no tempo com amplitude dada pelo valor no
instante em que o impulso ocorre. Esta propriedade nos permite expressar
x[n] como a seguinte soma de impulsos deslocados no tempo:

x[n] = K + x[− 2]δ [n + 2] + x[− 1]δ [n + 1] + x[0]δ [n] + x[1]δ [n − 1] + x[2]δ [n − 2] + K

• De forma mais concisa, podemos escrever:



x[n] = ∑ x[k ]δ [n − k ]
k = −∞
(1)

Exercícios
2. Escreva o sinal x[n] da figura anterior como uma soma ponderada de impul-
sos.

3. Esboce o seguinte sinal s[n] = 5δ [n + 2] + 2δ [n + 1] + 1,5δ [n] + δ [n − 1] .

• Vamos analisar agora a saída de um sistema LIT a uma entrada x[n] descrita
pela equação (1) acima.

x[n] y[n]
H

• Vamos chamar de H o operador que representa a operação realizada por este


sistema e de h[n] a resposta deste sistema a um impulso, ou seja,

y[n] = H [x[n ]]
h[n] = H [δ [n]] (2)

• Sendo assim, para uma entrada qualquer x[n] podemos escrever usando as
Equações (1) e (2):

3
Processamento Digital de Sinais – Aula 5T – Professor Marcio Eisencraft – agosto 2007

⎡ ∞ ⎤
y[n] = H [x[n]] = H ⎢ ∑ x[k ]δ [n − k ]⎥
⎣ k = −∞ ⎦
• Levando-se em conta que o sistema é linear, podemos aplicar a superposição
e a homogeneidade para aplicar o operador a cada uma das parcelas da soma-
tória. Obtemos assim:
∞ ∞
y[n] = ∑ H [x[k ]δ [n − k ]] = ∑ x[k ]H [δ [n − k ]]
k = −∞ k = −∞

• Utilizando agora o fato de que o sistema é invariante no tempo, temos que a


resposta a um impulso atrasado de k amostras é a saída impulsiva atrasada
de k amostras, ou seja, H [δ [n − k ]] = h[n − k ] . Assim, concluímos que:

y[n] = ∑ x[k ]h[n − k ] (3)
k = −∞

• Desta forma vemos realmente que a resposta de um sistema LIT qualquer é


dada por uma soma ponderada da resposta impulsiva deslocada no tempo. Ou
seja, ela é totalmente descrita pela entrada e pela resposta impulsiva.
• A somatória da Eq. (3) é chamada de soma de convolução e representada pe-
lo símbolo *, ou seja,

x[n] ∗ h[n] = ∑ x[k ]h[n − k ]
k = −∞

• A Figura 1 a seguir do (HAYKIN; VEEN, 2001) ilustra o processo de convo-


lução. A figura (a) descreve a resposta ao impulso de um sistema LIT arbitrá-
rio. Na figura (b) a entrada é representada como uma soma de impulsos pon-
derados e deslocados no tempo p k [n] = x[k ]δ [n − k ] . A saída do sistema associ-
ada a cada pulso p k [n] é

v k [n] = x[k ]h[n − k ]

4
Processamento Digital de Sinais – Aula 5T – Professor Marcio Eisencraft – agosto 2007

Figura 1 – A soma de convolução (HAYKIN; VEEN, 2001).

5
Processamento Digital de Sinais – Aula 5T – Professor Marcio Eisencraft – agosto 2007

• Ou seja, v k [n] é obtida deslocando-se, no tempo, a resposta impulsiva de k


unidades e multiplicando-se por x[k ] . A saída y[n] em resposta à entrada x[n]
é obtida somando-se todas as seqüências v k [n] :

y[n ] = ∑ v [n] k
k = −∞

• Assim, somamos para cada valor de n os valores ao longo do eixo k indica-


dos no lado direito da figura (b).

Exercício
4. (HAYKIN; VEEN, 2001; p. 88) Suponha que um sistema H LIT tenha a
resposta ao impulso:
⎧1, n = ±1

h[n] = ⎨2 n=0
⎪0,
⎩ caso contrário

Determine a resposta deste sistema em resposta à entrada


⎧2, n=0
⎪3, n =1

x[n] = ⎨
⎪− 2, n=2
⎪⎩0, caso contrário

• No exercício acima, encontramos todos os v k [n] e depois somamos para todos


os valores de k para determinarmos y[n] . Esta abordagem é muito eficaz
quando a entrada tem curta duração, de forma que somente um pequeno nú-
mero de sinais v k [n] precisa ser determinado. Quando a entrada tem uma du-
ração longa, um número muito grande, possivelmente infinito de sinais v k [n]
precisa ser avaliado antes que y[n] possa ser encontrado.
• Uma abordagem mais interessante é olharmos novamente para a equação

y[n] = ∑ x[k ]h[n − k ]
k = −∞

6
Processamento Digital de Sinais – Aula 5T – Professor Marcio Eisencraft – agosto 2007

e imaginarmos que n está fixo. Desta forma, para calcularmos a saída num certo
instante n0 precisaríamos calcular:
∞ ∞
y[n0 ] = ∑ x[k ]h[n 0 − k] = ∑ x[k ]h[− (k − n )]
0 (4)
k = −∞ k = −∞

o que consiste em somar todos os elementos do sinal wn [k ] = x[k ]h[− (k − n0 )] ou 0

seja, do produto do sinal de entrada pela resposta impulsiva do sistema invertida


no tempo e deslocada de n0 unidades.

• Os exercícios seguintes devem ilustrar este enfoque.

Exercícios
5. Encontre a resposta nos instantes n = 1 e n = 2 para o sistema e para a entrada
do Exercício 4 usando a abordagem discutida acima.

6. (HAYKIN; VEEN, 2001, p. 91) Um sistema LIT tem resposta ao impulso:


n
⎛3⎞
h[n] = ⎜ ⎟ u[n]
⎝4⎠

Determine a saída do sistema nos instantes n = −5 , n = 5 e n = 10 quando a entra-


da for x[n] = u[n] .
[ ]
RESP: y[− 5] = 0 , y[5] = 3,288 , y 10 = 3,831

7. Escreva uma fórmula para wn [k ] para o Exercício anterior e encontre y[n] pa-
ra todo n .
⎧⎛ 3 ⎞ k − n ⎧ ⎛ ⎛ 3 ⎞ n +1 ⎞
RESP:
⎪⎜ ⎟ , 0 ≤ k ≤ n ⎪4⎜1 − ⎜ ⎟ ⎟, n ≥ 0
wn [k ] = ⎨⎝ 4 ⎠ , y[n] = ⎨ ⎜⎝ ⎝ 4 ⎠ ⎟⎠
⎪0 ⎪
⎩ , caso contrário ⎩0, caso contrário

• Este último exercício sugere que, em geral, podemos determinar y[n] para to-
do n sem avaliarmos a Eq. (4) para um número infinito de deslocamentos
distintos no tempo n . Isto é realizado identificando-se os intervalos de n nos
quais wn [k ] tem a mesma forma funcional. Depois, precisamos somente ava-
liar a Eq. (4) usando o wn [k ] associado com cada intervalo. Muitas vezes é

7
Processamento Digital de Sinais – Aula 5T – Professor Marcio Eisencraft – agosto 2007

muito útil traçarmos graficamente tanto x[k ] como h[n − k ] quando determi-
namos wn [k ] e identificamos os intervalos apropriados de deslocamento no
tempo. Resumindo:
1. Trace graficamente x[k ] e h[n − k ] como uma função da variável independente
k . Para determinar h[n − k ] , primeiramente reflita h[k ] em torno de k = 0 para

obter h[− k ] e depois desloque h[− k ] de − n no tempo.


2. Inicie com o deslocamento de tempo n grande e negativo.
3. Escreva a forma funcional para wn [k ] .
4. Aumente o deslocamento no tempo n até que a forma funcional para wn [k ] se
modifique. O valor de n no qual ocorre a modificação define o fim do inter-
valo corrente e o início de um novo intervalo.
5. Admitamos que n esteja no novo intervalo. Repita os passos 3 e 4 até que to-
dos os intervalos de deslocamento no tempo n e as formas funcionais para
wn [k ] sejam identificados. Isto usualmente implica em aumentar n até um

número positivo muito grande.


6. Para cada intervalo de deslocamento no tempo n , some todos os valores de
wn [k ] correspondente para obter y[n] neste intervalo.

Exercícios
8. (HAYKIN; VEEN, 2001, p. 93) Um sistema LIT tem a resposta ao impulso
dada por:
h[n] = u[n] − u[n − 10]

Determine a saída deste sistema quando a entrada for o pulso retangular definido
como
x[n] = u[n − 2] − u[n − 7]

8
Processamento Digital de Sinais – Aula 5T – Professor Marcio Eisencraft – agosto 2007

⎧0, n<2
RESP: ⎪n − 1, 2≤n≤6
⎪⎪
[ ]
y n = ⎨5, 6 < n ≤ 11
⎪16 − n, 12 ≤ n ≤ 16

⎪⎩0, n > 16

9. (HAYKIN; VEEN, 2001, p. 95) Admitamos que a entrada x[n] para um sis-
tema H do tipo LIT seja dada por x[n] = α n {u[n] − u[n − 10]} e que a resposta ao
impulso do sistema seja dada por h[n] = β n u[n] em que 0 < β < 1 . Encontre a
saída deste sistema.




RESP: ⎪
⎪0, n<0
⎪ n +1
⎪ 1 - ⎛⎜ α ⎞⎟
⎪⎪ ⎜β ⎟
y[n] = ⎨β n ⎝ ⎠ , 0≤n≤9
⎪ ⎛α ⎞
1 - ⎜⎜ ⎟⎟
⎪ ⎝β ⎠

⎪ ⎛α ⎞
10

⎪ 1 - ⎜⎜ ⎟⎟
⎪β n ⎝ β ⎠ , n>9
⎪ ⎛α ⎞
⎪ 1 - ⎜⎜ ⎟⎟
⎪⎩ ⎝β ⎠

10. (HAYKIN; VEEN, 2001, p. 96) Admitamos que a entrada de um sistema LIT
com resposta ao impulso h[n] = α n {u[n − 2] − u[n − 13]} seja
x[n] = 2{u[n + 2] − u[n − 12]}. Encontre a saída y[n] .
⎧0, n<0

RESP:
⎪ n+2
⎪ 2α 1 - α(- n -1
,
) 0 ≤ n ≤ 10 .
⎪ 1 - α -1
⎪ 12
⎪ 2α 1 - α
y[n] = ⎨
( -11
), 11 ≤ n ≤ 13
⎪ 1-α
-1

(
⎪ 2α 12 1 - α n - 24 ) 14 ≤ n ≤ 23
⎪ ,
⎪ 1 - α -1
⎪⎩0, n ≥ 24

9
Processamento Digital de Sinais – Aula 5T – Professor Marcio Eisencraft – agosto 2007

11. (HAYKIN; VEEN, 2001, p. 97) Suponha que a entrada x[n] e a resposta ao
impulso h[n] de um sistema H do tipo LIT sejam dadas por:
x[n] = −u[n] + 2u[n − 3] − u[n − 6]
h[n] = u[n + 1] − u[n − 10]

Encontre a saída deste sistema, y[n] .


⎧0, n < −1
⎪− n - 2, -1≤ n <1
RESP: ⎪ .
⎪n - 4, 2≤n<4

y[n] = ⎨0, 4≤n<9
⎪n − 9 9 ≤ n ≤ 11

⎪− n + 15 12 < n ≤ 15
⎪0, n ≥ 15

12. (HAYKIN; VEEN, 2001, p. 97) Considere um sistema LIT com resposta ao
impulso:
⎧1
⎪ , 0≤n≤3
h[n] = ⎨ 4
⎪⎩0, caso contrário

Encontre uma expressão que relacione diretamente uma entrada arbitrária x[n] à
saída deste sistema, y[n] .
1
RESP: y [n ] = ( x [ n ] + x [ n − 1 ] + x [ n − 2 ] + x [ n − 3 ]) .
4

10
Processamento Digital de Sinais – Aula 7T – Professor Marcio Eisencraft – julho 2006

Aula 7T – Propriedades da resposta ao impulso


Bibliografia
HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 108-120.
OPPENHEIM, Alan V.; WILLSKY, Alan S.; NAWAB, S. Hamid. Signals & systems. 2nd. ed. Upper Sad-
dle River, New Jersey: Prentice-Hall, c1997. 957 p. ISBN 0138147574. Páginas 103-116.

2.3 Propriedades da representação da resposta ao impulso para sistemas


LIT
• Vimos nas últimas aulas que a resposta ao impulso de um sistema LIT o ca-
racteriza completamente. Desta forma, apenas olhando a resposta impulsiva,
deve ser possível descobrir se um sistema LIT é causal ou tem ou não memó-
ria e o resultado da interconexão desses sistemas. Esse será o assunto desta
aula.

2.3.1 Conexão paralela de sistemas LIT


• Consideremos a seguinte conexão paralela de sistemas LIT em que h1 [n] e
h2 [n] são as respostas impulsivas de cada sistema:

Figura 1 – Conexão paralela de sistemas

• A saída desta conexão de sistemas y[n] é a soma das saídas de cada sistema:

y[n] = y1 [n] + y 2 [n] = x[n] ∗ h1 [n] + x[n] ∗ h2 [n]


• Usando a representação da convolução por somatórias, podemos escrever que

1
Processamento Digital de Sinais – Aula 7T – Professor Marcio Eisencraft – julho 2006

∞ ∞
y[n] = ∑ x[k ]h [n − k ] + ∑ x[k ]h [n − k ] ⇒
1 2
k = −∞ k = −∞
∞ ∞
y[n] = ∑ x[k ](h [n − k ] + h [n − k ]) = ∑ x[k ]h[n − k ]
1 2
k = −∞ k = −∞

sendo h[n] =h1 [n] + h2 [n] . Ou seja, tudo se passa como se a resposta impulsiva do
sistema equivalente ao da Figura 1 fosse o da Figura 2 a seguir:

Figura 2 – Sistema equivalente ao da Figura 1

• A resposta ao impulso de dois sistemas conectados em paralelo é a soma das


respostas individuais ao impulso.
• Uma outra forma de enxergar esse fato é dizer que a convolução possui a
propriedade distributiva:

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

2.3.2 Conexão em cascata de sistemas


• Consideremos agora a conexão em cascata de dois sistemas LIT ilustrada na
Figura 3 a seguir.

Figura 3 – Conexão em cascata de sistemas LIT

• Chamamos de z[n] a saída do primeiro sistema e a entrada para o segundo


sistema da conexão em cascata. Podemos expressar a saída em termos de z[n]
como

2
Processamento Digital de Sinais – Aula 7T – Professor Marcio Eisencraft – julho 2006


y[n ] = z[n]∗ h2 [n] = ∑ z[k ]h [n − k ]
2 (1)
k = −∞

• Porém, z[k ] é a saída do primeiro sistema e é expressa em termos de x[k ] co-


mo:

z[k ] = x[k ] ∗ h1 [k ] = ∑ x[l]h [k − l]
1 (2)
l = −∞

• Substituindo (2) em (1), temos:



⎛ ∞ ⎞
y[n] = ∑ ⎜ ∑ x[l]h1 [k − l]⎟h2 [n − k ]
k = −∞ ⎝ l = −∞ ⎠

• Trocando a ordem das somatórias em (3) e fazendo m = k − l , temos:


∞ ∞
⎡ ∞ ∞

y[n] = ∑ x[l] ∑h1 [k − l]h2 [n − k ] = ∑ x[l]⎢ ∑h1 [m]h2 [n − l − m]⎥ (3)
l=−∞ k =−∞ l=−∞ ⎣m=−∞ ⎦
• A somatória interna é identificada como a convolução de h1 [n] com h2 [n] ava-
liada em n − l . Ou seja, se definirmos h[n] = h1 [n] ∗ h2 [n] , então,

∑ h [m]h [n − l − m] = h[n − l]
m = −∞
1 2 (4)

• Substituindo (4) em (3), obtemos:



y[n ] = ∑ x[l]h[n − l] = x[n]∗ h[n]
l = −∞

• Conseqüentemente, a resposta ao impulso de dois sistemas LIT conectados


em cascata é a convolução das respostas impulsivas individuais. A conexão
em cascata é equivalente em termos de entrada-saída ao sistema único repre-
sentado pela resposta ao impulso h[n] , como mostra a Figura 4.

Figura 4 – Sistema equivalente ao da Figura 3

• Matematicamente, este resultado significa que a soma de convolução satisfaz


as propriedades associativa e comutativa:

3
Processamento Digital de Sinais – Aula 7T – Professor Marcio Eisencraft – julho 2006

{x[n] ∗ h1 [n]}∗ h2 [n] = x[n] ∗ {h1 [n] ∗ h2 [n]}


h1 [n] ∗ h2 [n] = h2 [n] ∗ h1 [n]

Exercício
1. (HAYKIN; VEEN, 2001; p.110) Considere a interconexão de sistemas LIT
descrita na figura a seguir. A resposta de cada sistema é dada por
h1 [n] = u[n]
h2 [n] = u[n + 2] − u[n]
h3 [n] = δ [n − 2]
h4 [n] = α n u[n]

Encontre a resposta ao impulso do sistema global, h[n] .

2.3.3 Sistemas sem memória


• Já vimos que a saída de um sistema sem memória depende somente da entra-
da atual. A pergunta que tentaremos responder agora é: como identificar um
sistema LIT sem memória apenas olhando sua resposta impulsiva? Ou como
deve ser a resposta impulsiva de um sistema LIT sem memória?
• Explorando-se a propriedade comutativa da convolução, a saída de um siste-
ma LIT pode ser expressa como

y[n] = h[n] ∗ x[n] = ∑ h[k ]x[n − k ] .
k = −∞

• Para que este sistema seja sem memória, y[n] deve depender somente de x[n]
e não de x[n − k ] para k ≠ 0 . Conseqüentemente, um sistema LIT de tempo

4
Processamento Digital de Sinais – Aula 7T – Professor Marcio Eisencraft – julho 2006

discreto é sem memória se, e somente se, h[k ] = cδ [k ] , em que c é uma cons-
tante arbitrária.
• Assim, a condição de ausência de memória impõe fortes restrições na forma
da resposta ao impulso. Todos os sistemas LIT sem memória realizam multi-
plicação escalar com a entrada.

2.3.4 Sistemas causais


• Já vimos que a saída de um sistema causal depende somente dos valores pas-
sados ou presentes da entrada. Vamos ver agora como isso se reflete na res-
posta impulsiva de sistemas LIT.
• Escrevemos a soma de convolução como:

y[n] = ∑ h[k ]x[n − k ]
k = −∞

• Os valores passados e atuais da entrada x[n] , x[n − 1] , x[n − 2] ,..., são associa-
dos com índices k ≥ 0 na soma de convolução, enquanto que os valores futu-
ros da entrada x[n + 1] , x[n + 2],... são associados com índices k < 0 .
• Conseqüentemente, para um sistema causal, teremos h[k ] = 0 para k < 0 .

Exercício
2. (HAYKIN; VEEN, 2001, p. 113) Um sistema de tempo discreto tem a res-
posta ao impulso:
h[n] = a n u[n + 2]

Este é um sistema causal? Tem memória?

2.3.5 Resposta ao degrau


• A resposta de um sistema LIT a um degrau caracteriza como o sistema res-
ponde a mudanças repentinas na entrada.

5
Processamento Digital de Sinais – Aula 7T – Professor Marcio Eisencraft – julho 2006

• A resposta ao degrau é facilmente expressa em termos da resposta ao impul-


so usando-se a convolução, supondo-se que a entrada seja uma função de-
grau.
• Admitamos que um sistema tenha a resposta ao impulso h[n] e denote a res-
posta ao degrau como s[n] . Teremos:

s[n ] = h[n] ∗ u[n] = ∑ h[k ]u[n − k ]
k = −∞

• Como u[n − k ] = 0 para k > n e u[n − k ] = 1 para k ≤ n , temos:


n
s[n] = ∑ h[k ]
k = −∞

• Ou seja, a resposta ao degrau é a soma corrente da resposta ao impulso.

Exercício
3. (HAYKIN; VEEN, 2001, p. 116) Encontre a resposta ao degrau de um siste-
ma de tempo discreto com resposta ao impulso:
h[n ] = (− a ) u[n ]
n

2.3.6 Sistemas invertíveis e desconvolução


• Um sistema é invertível se a entrada do sistema puder ser recuperada a partir
de sua saída.
• Isso implica a existência de um sistema inverso que toma a saída do sistema
original como sua entrada e produz a entrada do sistema original.
• A Figura 5 a seguir descreve a cascata de um sistema LIT que tem resposta
ao impulso h[n] com um sistema inverso LIT que tem resposta ao impulso
h −1 [ n ] .

Figura 5 – Cascata de um sistema LIT com seu sistema inverso.

6
Processamento Digital de Sinais – Aula 7T – Professor Marcio Eisencraft – julho 2006

• O processo para recuperar x[n] de h[n] ∗ x[n] é denominado desconvolução,


uma vez que ele corresponde a inverter ou desfazer a operação de convo-
lução.
• Um sistema inverso tem saída x[n] em resposta a entrada y[n] = h[n] ∗ x[n] e
desta forma resolve o problema da desconvolução.
• A desconvolução e os sistemas inversos desempenham um papel impor-
tante em muitos problemas de processamento de sinais e sistemas.
• Um problema comum é o de inverter ou equalizar a distorção introduzida
por um sistema não ideal.
• Por exemplo, considere o uso de um modem de alta velocidade para co-
municar-se por meio de linhas telefônicas. A distorção causada pela rede
telefônica impõe graves restrições à taxa em que as informações podem
ser transmitidas; desta forma um equalizador é incorporado ao modem. O
equalizador inverte a distorção da rede telefônica e permite que taxas de
dados muito mais altas sejam atingidas. Neste caso, o equalizador repre-
senta um sistema inverso para a rede telefônica.
• A relação entre a resposta ao impulso de um sistema h[n] e o sistema in-
verso correspondente h −1 [n] pode ser obtida notando-se que
( )
x[n] ∗ h[n] ∗ h −1 [n] = x[n]

• Isto implica que

h[n] ∗ h −1 [n] = δ [n] (5)

• Em muitas aplicações de equalização, um sistema inverso exato pode ser di-


fícil de encontrar ou implementar. A determinação de uma solução aproxi-
mada para a Equação (5) muitas vezes é suficiente nesses casos.

7
Processamento Digital de Sinais – Aula 7T – Professor Marcio Eisencraft – julho 2006

Exercício
4. (HAYKIN; VEEN, 2001, p. 114) Considere projetar um sistema de tempo
discreto para eliminar a distorção associada com um eco indesejável num
problema de transmissão de dados. Suponha que o eco seja representado co-
mo atenuação por uma constante a e um retardo correspondente a uma uni-
dade de tempo na seqüência de entrada. Daí, o sinal recebido distorcido, y[n] ,
ser expresso em termos do sinal transmitido x[n] como:
y[n] = x[n] + ax[n − 1]

Encontre um sistema inverso causal que recupere x[n] de y[n] .


h −1 [n] = (− a ) u[n ]
n
RESP:

8
Processamento Digital de Sinais – Aula 8T – Professor Marcio Eisencraft – abril 2007

Aula 8T – Representação por equações de diferenças para sistemas LIT


Bibliografia
HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 120-132.
LATHI, Bhagwandas Pannalal. Signal processing and linear systems. California: Berkeley, c1998. 734 p.
ISBN 0941413357. Páginas 573 – 578.

2.4. Representação por equações de diferenças para sistemas LIT


• Uma outra forma de representar um sistema de tempo discreto linear e inva-
riante no tempo (LIT) é através de equações de diferenças.
• De uma forma geral, temos:
a1 y[n] + a 2 y[n − 1] + L + a N +1 y[n − N ] = b1 x[n] + b2 x[n − 1] + K + bM +1 x[n − M ] ou
N M

∑a k +1 y [ n − k ] = ∑ bk +1 x [ n − k ] (1)
k =0 k =0

• O número N , correspondente ao número máximo de valores da saída que


devem ser guardados para o cálculo das futuras saídas do sistema é chamado
de ordem da equação de diferenças.
• Um exemplo de equação de diferenças de segunda ordem é

y[n ] + y[n − 1] + y[n − 2] = x[n ] + 2 x[n − 1]


1
4
• Esta equação poderia representar a relação entre os sinais de entrada e saída
de um sistema que processa dados em um computador, por exemplo. Neste
caso a ordem é N = 2 porque a equação de diferenças envolve y[n − 2] , impli-
cando uma memória máxima na saída do sistema igual a dois.
• As equações de diferenças são facilmente reorganizadas para se obter formu-
las para computar a saída corrente do sistema a partir do sinal de entrada e
das saídas passadas.
• Por exemplo, a equação anterior pode ser reescrita como:

y[n ] = x[n ] + 2 x[n − 1] − y[n − 1] − y[n − 2]


1
4

1
Processamento Digital de Sinais – Aula 8T – Professor Marcio Eisencraft – abril 2007

Iniciando com n = 0 podemos obter a saída avaliando a seqüência das equações


1
y[0] = x[0] + 2 x[−1] − y[−1] − y[−2]
4
1
y[1] = x[1] + 2 x[0] − y[0] − y[−1]
4
1
y[2] = x[2] + 2 x[1] − y[1] − y[0]
4
1
y[3] = x[3] + 2 x[2] − y[2] − y[1]
4
M
• Em cada equação, a saída corrente é computada a partir da entrada e dos va-
lores passados da saída. Para começarmos este processo no instante n = 0 ,
devemos conhecer os dois valores passados mais recentes da saída y[− 1] e
y[− 2] . Estes valores são conhecidos como condições iniciais.

• As condições iniciais reúnem todas as condições sobre o passado do sistema


que são necessárias para se computar as saídas futuras. Note que, em geral, o
número de condições iniciais necessárias para determinar a saída é igual à
ordem do sistema.

2.4.1. A notação operacional


• Em equações de diferenças é comum utilizar-se de uma notação operacional
parecida com a que foi vista em Circuitos Elétricos para equações diferenci-
ais (Transformada de Laplace).
• Utilizaremos o operador z −1 para denotar a operação de atrasar uma seqüên-
cia de uma unidade de tempo. Assim
z −1 f [n] ≡ f [n − 1]
z − 2 f [n] ≡ f [n − 2]
L
z − k f [n] ≡ f [n − k ]

• Assim, uma equação de diferenças da forma:

y[n] − ay[n − 1] = x[n]


pode ser escrita como

2
Processamento Digital de Sinais – Aula 8T – Professor Marcio Eisencraft – abril 2007

y[n] − az −1 y[n] = x[n]


ou
(1 − az )y[n] = x[n]
−1

• A equação de segunda ordem

y[n − 1] + y[n − 2] = x[n]


1 1
y[n] +
4 16
pode ser expressa como

y[n ] + z y[n ] + z − 2 y[n ] = x[n ]


1 −1 1
4 16

ou
⎛ 1 −1 1 − 2 ⎞
⎜1 + z + z ⎟ y[n ] = x[n ]
⎝ 4 16 ⎠

• Uma equação geral


a1 y[n] + a2 y[n − 1] + K a N +1 y[n − N ] = b1 x[n] + b2 x[n − 1] + KbM +1 x[n − M ]

Pode ser expressa como


(a1 ) ( )
+ a 2 z −1 + a 3 z −2 + K + a N +1 z − N y[n ] = b1 + b2 z −1 + b3 z −2 + K + bM +1 z − M x[n ]

ou
[ ]
Q z −1 y[n ] = P z −1 x[n ] [ ]
em que Q[z −1 ] e P[z −1 ] são os operadores polinomiais de grau N e M

[ ]
Q z −1 = a1 + a 2 z −1 + a3 z −2 + K + a N +1 z − N
P[z ] = b
−1
1 + b2 z −1 + b3 z − 2 + K + bN +1 z − N

Exercícios
1. (LATHI, 1998, p. 611) Resolva iterativamente (apenas os primeiros três ter-
mos) e escreva as seguintes equações com a notação operacional:
(a) y[n] − 0,5 y[n − 1] = 0 , com y[− 1] = 10
(b) y[n] + 2 y[n − 1] = x[n] com x[n] = e − n u[n] e y[− 1] = 0 .

3
Processamento Digital de Sinais – Aula 8T – Professor Marcio Eisencraft – abril 2007

2.4.2. A resposta à entrada zero ou resposta natural


• Vamos tentar encontrar uma solução para a equação de diferenças (1) quando
a entrada é x[n] = 0 . Esta é conhecida como resposta à entrada nula ou res-
posta natural do sistema e será representada por y 0 [n] .

• Assim, temos
[ ]
Q z −1 y0 [n] = 0
ou
(a1 )
+ a 2 z −1 + a 3 z −2 + K + a N +1 z − N y 0 [n ] = 0

ou

a1 y 0 [n] + a 2 y 0 [n − 1] + K + a N +1 y 0 [n − N ] = 0 (2)

• Já vimos que podemos resolver esta equação de forma recursiva. Porém, o-


lhando atentamente para a equação acima, podemos determinar y 0 [n] de uma
maneira mais eficiente.
• Esta equação mostra que uma combinação linear de y 0 [n] e versões atrasadas
dela resultam zero para todo n . Isto só é possível se y 0 [n] e suas versões atra-
sadas tiverem a mesma forma.
• Uma função exponencial γ n tem essa propriedade:

γ n−m = γ − mγ n
Esta equação mostra que uma versão atrasada de γ n é a própria γ n multiplicada
por uma constante.
• Assim, uma solução da equação (2) deve ser da forma:

y 0 [n ] = cγ n (3)

• Para encontrar c e γ substituímos esta solução na Equação (2). A Equação


(3) implica

4
Processamento Digital de Sinais – Aula 8T – Professor Marcio Eisencraft – abril 2007

z −1 y 0 [n] = y 0 [n − 1] = cγ n −1
z − 2 y 0 [n] = y 0 [n − 2] = cγ n − 2
L
z − N y 0 [n] = y 0 [n − N ] = cγ n − N
• Substituindo estes resultados na Equação (2) temos:
a1 y 0 [n] + a 2 y 0 [n − 1] + K + a N +1 y 0 [n − N ] = 0 ⇔

a1cγ n + a 2 cγ n −1 + K + a N +1cγ n − N = 0 ⇔

(
c a1 + a 2 γ −1 + K + a N +1γ − N γ n = 0 ) (4)

• Assumindo γ ≠ 0 e c ≠ 0 (excluindo as soluções triviais), a Eq. (4) é satisfeita


quando

a1 + a2γ −1 + K + a N +1γ − N = 0

[ ]
Q γ −1 = 0 (5)
• A solução proposta cγ n (Eq. (3)) está correta desde que γ satisfaça a Equa-
ção (5). Para resolvê-la, multiplicamos os dois membros por γ N obtendo:

a1γ N + a2γ N −1 + K + a N +1 = 0 (6)


que é um polinômio de grau N que tem N soluções γ 1 , γ 2 ,..., γ N .

c1γ 1 , c2γ 2 ,...,


n n
• Desta forma a Eq. (2) também terá N soluções da forma

cN γ N . Neste caso, pode-se mostrar que a solução geral é uma combinação


n

linear das N soluções. Assim,

y0 [n ] = c1γ 1n + c2γ 2n + L + c N γ Nn
em que γ 1 , γ 2 ,..., γ N são as soluções da Eq. (5) e c1 , c2 ,..., c N são constantes ar-
bitrárias determinadas a partir de N condições auxiliares, geralmente dadas na
forma de condições iniciais.
• O polinômio Q[γ −1 ] é chamado de polinômio característico do sistema e a

equação Q γ
−1
[ ]
= 0 é chamada de equação característica do sistema.

5
Processamento Digital de Sinais – Aula 8T – Professor Marcio Eisencraft – abril 2007

• Além disso, as raízes γ 1 , γ 2 ,..., γ N da equação característica são chamadas de


raízes características ou valores característicos (ou autovalores) do sistema.
• As exponenciais γ in ( i = 1,2,K N ), são os modos naturais ou modos caracterís-
ticos do sistema.
• Na discussão, assumimos que o sistema tem n raízes características diferen-

c1γ 1 ,
n
tes γ 1 , γ 2 ,..., γ N com correspondentes modos característicos

c2γ 2 ,..., cN γ N .
n n

• Se duas ou mais raízes coincidirem (raízes repetidas), a forma dos modos ca-
racterísticos é modificada.
• Da mesma forma como em equações diferenciais, se uma raiz γ se repete r
vezes (raiz de multiplicidade r ), os modos característicos correspondente a
estas raízes são γ n , nγ n , n 2 γ n ,..., n r −1γ n .
• Assim, se um sistema tem raízes características γ 1 , γ 2 ,..., γ N sendo que γ 1
tem multiplicidade r , sua resposta natural é:
y 0 [n ] = c1γ 1n + c 2 nγ 1n + c3 n 2 γ 1n + K + c r n r γ rn + c r +1γ rn+1 + c r + 2 γ rn+ 2 + K + c n γ nn

• Outro problema que não foi abordado é o que acontece quando as raízes ca-
racterísticas são complexas.
• Logicamente, se a equação de diferenças tem coeficientes reais, as raízes
complexas só podem aparecer em pares conjugados. As raízes complexas
podem ser tratadas exatamente como raízes reais, no entanto é possível eli-
minar os números complexos trabalhando com soluções reais.

• Primeiramente, expressamos as raízes complexas γ e γ * na forma polar. Se


γ é o módulo de γ e β sua fase, então:

γ = γ e jβ e γ * = γ e − jβ
• A resposta à entrada nula é então dada por

6
Processamento Digital de Sinais – Aula 8T – Professor Marcio Eisencraft – abril 2007

y 0 [n] = c1γ n + c 2 γ * ( ) n

= c1 γ e jβn + c 2 γ e − jβn
n n

• Para um sistema real, c1 e c2 precisam ser conjugados de forma que y 0 [n]


seja uma função real de n . Assim, seja
c jθ c
c1 = e e c 2 = e − jθ
2 2
Desta forma,

y 0 [n] =
c
2
γ
n
[e (
j βn +θ )
+ e − j ( βn +θ ) ]
= c γ cos(β n + θ )
n

• Nesta solução c e θ deverão ser obtidos das condições iniciais.

Exercício
2. (2022) Encontre a resposta natural para a seguinte equação de diferenças:
y[n + 2] − 1,3 y[n + 1] + 0,4 y[n] = x[n] + x[n − 1]

Considere como condições iniciais y 0 [0] = 5 e y 0 [1] = 7 .

3. (2021) Calcule a resposta natural y 0 [n] do sistema de tempo discreto repre-


sentado pela equação de diferenças
y[n] − 10 y[n − 1] + 25 y[n − 2] = 5 x[n − 1] , y 0 [− 1] = 3 , y 0 [− 2] = 2 .

4. (2021) Calcule e esboce a resposta natural y 0 [n] do sistema de tempo discreto


representado pela equação de diferenças

y[n] + 16 y[n − 2] = 5 x[n − 1] , y 0 [− 1] = − , y 0 [− 2] =


1 1
.
2 2 4 2

2.4.3. Resposta forçada e resposta total de um sistema LIT


• Já vimos em aulas anteriores que a resposta de um sistema LIT a uma entrada
x[n] é dada por

7
Processamento Digital de Sinais – Aula 8T – Professor Marcio Eisencraft – abril 2007


y[n] = x[n] ∗ h[n] = ∑ x[k ]h[n − k ]
k = −∞

em que h[n] é a resposta impulsiva do sistema.


• Esta resposta, obtida quando as condições iniciais do sistema são nulas, é
conhecida como resposta forçada do sistema à entrada x[n] .
• No caso geral em que temos condições inicias e uma entrada não nula,
podemos usar sobreposição e escrever:

y[n] = y 0 [n] + x[n] ∗ h[n]

Exercício
5. (2022) Dado o sistema:
y[n] − 0,9 y[n − 1] = x[n] − x[n − 1]

com condição inicial y 0 [− 1] = 2 . Pede-se para n ≥ 0 ,


(a) Determine iterativamente os cinco primeiros pontos da resposta deste sis-
tema à entrada x[n] = 2 − n u[n] .
(b) Determine a resposta natural deste sistema.
(c) Determine a resposta impulsiva deste sistema (Dica: lembre-se, para cal-
cular resposta impulsiva, consideramos condições iniciais nulas).
(d) Determine a resposta forçada deste sistema para x[n] = 2 − n u[n] . (Dica: lem-
bre-se, para calcular resposta forçada, consideramos condições iniciais nu-
las).
(e) Determine a resposta completa deste sistema para a entrada x[n] = 2 − n u[n] e
compare com os pontos obtidos no item (a).

8
Processamento Digital de Sinais – Aula 9T – Professor Marcio Eisencraft – abril 2007

Aula 9T - Resposta de sistemas LIT a exponenciais complexas


Bibliografia
ƒ OPPENHEIM, Alan V.; WILLSKY, Alan S.; NAWAB, S. Hamid. Signals & systems. 2nd. ed. Upper Sad-
dle River, New Jersey: Prentice-Hall, c1997. 957 p. ISBN 0138147574. Páginas 182-186.
ƒ HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 116-120.

3. Análise de Fourier de sinais de tempo discreto


3.1. Resposta de sistemas LIT discretos a exponenciais complexas
• Quando estudamos sistemas LIT é interessante representar sinais como com-
binações lineares de sinais básicos que possuem as seguintes propriedades:
o O conjunto de sinais básicos pode ser usado para construir uma
grande e útil classe de sinais.
o A resposta de um sistema LIT a cada sinal deve ser simples o sufi-
ciente em estrutura para nos permitir uma representação convenien-
te para a resposta do sistema a qualquer sinal construído como uma
combinação linear dos sinais básicos.
• Um exemplo de conjunto de sinais básicos que já usamos é {δ [n − k ], k ∈ Z }
que leva à representação da saída pela soma de convolução.
• Outro conjunto com características importantes é o conjunto {z n } em que z é
um número complexo.
• A importância das exponenciais complexas no estudo de sistemas LIT vem
do fato de que a resposta de um sistema LIT a uma entrada exponencial com-
plexa é a mesma exponencial complexa apenas com uma mudança de ampli-
tude; isto é,

z n → H ( z )z n
em que o fator de amplitude complexa H (z ) será em geral uma função da variá-
vel complexa z .

1
Processamento Digital de Sinais – Aula 9T – Professor Marcio Eisencraft – abril 2007

• Um sinal para o qual a saída de um sistema é uma constante (possivelmente


complexa) vezes a entrada é chamada de autofunção do sistema e o fator de
amplitude é chamado de autovalor do sistema.
• Vamos mostrar que as seqüências exponenciais complexas são autofunções
de sistemas LIT de tempo discreto.
• Suponha que um sistema LIT com resposta impulsiva h[n] tenha como entra-
da a seqüência

x[n] = z n , (1)
em que z é um número complexo.
• A saída do sistema pode ser determinada através da soma de convolução
∞ ∞ ∞
y[n ] = ∑ h[k ]x[n − k ] = ∑ h[k ]z n−k
=z n
∑ h[k ]z −k
(2)
k = −∞ k = −∞ k = −∞

• Desta expressão, vemos que se a entrada x[n] é a exponencial complexa dada


pela Equação (1), então, assumindo que a somatória no segundo membro de
(2) converge, a saída é a mesma exponencial complexa multiplicada por uma
constante que depende do valor de z . Isto é,

y[n] = H ( z )z n (3)
em que

H (z ) = ∑ h[k ]z −k
. (4)
k = −∞

• Consequentemente, as exponenciais complexas são autofunções dos sistemas


LIT de tempo discreto. A constante H (z ) para um valor específico de z é o
autovalor associado à autofunção z n .
• Para a análise de sistemas LIT, a utilidade da decomposição de sinais mais
gerais em termos de autofunções pode ser visto através de um exemplo.
• Seja x[n] uma combinação linear de três exponenciais complexas, isto é:

x[n ] = a1 z1n + a 2 z 2n + a 3 z 3n .

2
Processamento Digital de Sinais – Aula 9T – Professor Marcio Eisencraft – abril 2007

• Pela propriedade da autofunção, a resposta de cada uma separadamente é:


a1 z1n → a1 H ( z1 )z1n
a 2 z 2n → a 2 H ( z 2 )z 2n ,
a3 z 3n → a3 H ( z 3 )z 3n
e pela propriedade da superposição, teremos:
y[n ] = a1 H ( z1 )z1n + a 2 H ( z 2 )z 2n + a 3 H ( z 3 )z 3n .

• De forma mais geral, a Equação (3) em conjunto com a propriedade da su-


perposição mostra que a representação de sinais como uma combinação line-
ar de exponenciais complexas leva a uma expressão conveniente para a res-
posta de um sistema LIT.
• Especificamente, se a entrada de um sistema LIT for representada por uma
combinação linear de exponenciais complexas, isto é, se:

x[n] = ∑ a k z kn , então a saída será


k

y[n] = ∑ ak H (zk )zkn .


k

• Em outras palavras, se a entrada de um sistema LIT é representada por uma


combinação linear de exponenciais complexas, a saída também pode ser re-
presentada como uma combinação linear dos mesmos sinais exponenciais
complexos. Cada coeficiente desta representação da saída é obtido como o
produto do respectivo coeficiente da entrada a k e o autovalor do sistema
H ( z k ) associado à autofunção z kn .

• Este fato é uma forte motivação para estudarmos a representação de um dado


sinal como uma soma de exponenciais complexas. Como obter esta represen-
tação? Quais sinais podem ser escritos assim. É o que veremos nas próximas
aulas quando estudaremos a representação de sinais de tempo discreto por sé-
ries de Fourier.

3
Processamento Digital de Sinais – Aula 9T – Professor Marcio Eisencraft – abril 2007

Exercícios
1. (OPPENHEIM; WILLSKY; NAWAB, 1997, p.185 modificado) Considere
um sistema LIT cuja saída seja a entrada atrasada de três amostras, ou seja,
y[n ] = x[n − 3] .

Pede-se:
n

(a) Determine diretamente a saída do sistema quando a entrada for x[n] = ⎛⎜ ⎞⎟ .


1
⎝2⎠

(b) Determine a resposta impulsiva do sistema.


(c) Obtenha H (z ) utilizando a definição (4).
n

(d) Determine a saída do sistema à entrada x[n] = ⎛⎜ ⎞⎟ usando o item (c).


1
⎝2⎠

(e) Determine a saída do sistema à entrada x[n] = cos(4n ) + cos(7n ) .

2. Considere um sistema LIT com resposta impulsiva h[n] = ⎛⎜ ⎞⎟ u[n] . Usando as


1
⎝ 3⎠

propriedades de autofunções determine a saída deste sistema quando a entra-


da for:
(a) x[n] = (1)n
(b) x[n] = (2)n
(c) x[n] = 1 + (2)n
π
(d) x[n] = cos⎛⎜ n ⎞⎟
⎝4 ⎠

3. (MITRA, 2001, p. 277) Mostre que a função a[n] = z n em que z é uma cons-
tante complexa é uma autofunção de um sistema LIT de tempo discreto. Seria
v[n] = z n u[n] também uma autofunção de um sistema LIT?

4
Processamento Digital de Sinais – Aula 11T – Professor Marcio Eisencraft – abril 2007

Aula 11T – Série de Fourier de tempo discreto


Bibliografia
ƒ OPPENHEIM, Alan V.; WILLSKY, Alan S.; NAWAB, S. Hamid. Signals & systems. 2nd. ed. Upper Sad-
dle River, New Jersey: Prentice-Hall, c1997. 957 p. ISBN 0138147574. Páginas 211-221.
ƒ HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 168-178.

3.2. Representação em séries de Fourier para sinais de tempo discreto peri-


ódicos
• No curso de Análise de Sinais, estudam-se formas de representar um sinal de
tempo contínuo como uma soma de senóides ou exponenciais.
• Aqui discutiremos algo similar para sinais de tempo discreto. Nosso enfoque
é parecido com o que foi usado para sinais de tempo contínuo.
• Primeiro representaremos um sinal x[n] periódico como uma série de Fourier
formada por uma exponencial (ou senóide) de tempo discreto e suas harmô-
nicas. A seguir estenderemos esta representação para um sinal aperiódico
x[n] considerando x[n] como o caso limite de um sinal periódico com o perí-

odo se aproximando do infinito.


ƒ Um sinal periódico com período N 0 = 6 é mostrado na figura seguinte.

ƒ Você já deve saber que um sinal de tempo contínuo periódico de período T0


pode ser representado como uma série trigonométrica de Fourier consistindo

de uma senóide com freqüência fundamental ω 0 = e todas as suas harmô-
T0

1
Processamento Digital de Sinais – Aula 11T – Professor Marcio Eisencraft – abril 2007

nicas (senóides cujas freqüências são múltiplos inteiros de ω 0 ). A forma ex-


ponencial da série de Fourier consiste nas exponenciais e j 0t , e ± jω t , e ± j 2ω t ,
0 0

e ± j 3ω0t ,...

ƒ Vamos tentar fazer um paralelo para sinais de tempo discreto. A freqüência



de uma senóide de período N 0 é Ω 0 = . Assim, um sinal periódico de tem-
N0

po discreto com período N 0 pode ser representado por uma série de Fourier

de tempo discreto com freqüência fundamental Ω 0 = e suas harmônicas.
N0

ƒ Assim como em tempo contínuo, podemos usar uma forma trigonométrica ou


exponencial para as séries de Fourier. Devido à sua compacidade e facilidade
de manipulação matemática, a forma exponencial é preferível à trigonométri-
ca.
ƒ Por esta razão passaremos a forma trigonométrica e iremos direto para a for-
ma exponencial das séries de Fourier de tempo discreto.
ƒ A série de Fourier exponencial consiste nas exponenciais e j 0 n , e ± jΩ n , 0

e ± j 2Ω 0 n ,..., e ± jkΩ 0 n ,... e assim por diante.

ƒ Em princípio haveria um número infinito de harmônicas, como no caso con-


tínuo. Porém isso não acontece porque as exponenciais de tempo discreto cu-
jas freqüências estão separadas por 2π são idênticas já que

e j (Ω ± 2π )n = e jΩn e ± j 2πn = e jΩn


ƒ A conseqüência deste resultado é que a k -ésima harmônica é idêntica à har-
mônica k + N 0 .
ƒ Para demonstrar isto, seja g k a k -ésima harmônica e ± jkΩ n . Então 0

g k + N 0 = e j (k + N 0 )Ω 0 n = e j (kΩ 0 n + 2πn ) = e jkΩ 0 n = g k


e

g k = g k + N 0 = g k + 2 N 0 = L = g k + rN 0

2
Processamento Digital de Sinais – Aula 11T – Professor Marcio Eisencraft – abril 2007

ƒ Assim, a primeira harmônica é idêntica à harmônica ( N 0 + 1 ), a segunda har-


mônica é idêntica à harmônica ( N 0 + 2 ) e assim por diante.
ƒ Em outras palavras, existem apenas N 0 harmônicas independentes e estas fi-
cam sobre um intervalo de 2π (porque as harmônicas estão separadas por

Ω0 = ).
N0

ƒ Podemos escolher estas N 0 harmônicas independentes como e jkΩ n com 0

0 ≤ k ≤ N 0 − 1 ou sobre − 1 ≤ k ≤ N 0 − 2 ou sobre 1 ≤ k ≤ N 0 ou qualquer outra

escolha conveniente. Qualquer um desses conjuntos terá as mesmas harmôni-


cas apenas em ordem diferente.
ƒ Vamos tomar a primeira possibilidade 0 ≤ k ≤ N 0 − 1 . Esta escolha correspon-
de às exponenciais e jkΩ n para k = 0, 1, 2,..., N 0 − 1 . A série de Fourier para
0

um sinal periódico com período N 0 x[n] consiste destas N 0 harmônicas e po-


de ser expressa como
N0 −1

x[n] = ∑ ak e jkΩ0n com Ω 0 = (1)
k =0 N0

ƒ Pode-se mostrar (ver referências) que os termos a k podem ser calculados


como
N 0 −1
1
ak =
N0
∑ x[n]e
n =0
− jkΩ 0 n

Assim, temos uma representação em séries de Fourier de tempo discreto de um


sinal periódico de período N 0 :
N0 −1
x[n] = ∑ ak e jkΩ0n (2)
k =0

em que
N 0 −1
1
ak =
N0
∑ x[n]e
n =0
− jkΩ 0 n
e Ω0 =

N0
. (3)

3
Processamento Digital de Sinais – Aula 11T – Professor Marcio Eisencraft – abril 2007

ƒ A série de Fourier consiste de N 0 componentes

a0 , a1e jΩ 0 n , a 2e j 2Ω 0 n , K, a N 0 −1e j ( N 0 −1)Ω 0 n


ƒ A freqüência dessas componentes são zero, Ω 0 , 2Ω 0 ,..., (N 0 − 1)Ω 0 em que

Ω0 = .
N0

ƒ A amplitude da k -ésima harmônica é a k . Podemos fazer um gráfico desta


quantidade a k em função de Ω . Este gráfico é chamado de espectro de Fou-
rier de x[n] e nos dá, de uma só vez, uma figura com as magnitudes das vá-
rias harmônicas de x[n] .
ƒ Em geral, os coeficientes de Fourier a k são complexos e podem ser represen-
tados na forma polar como:

ak = ak e j∠ak
ƒ O gráfico de ak por Ω é chamado de espectro de amplitude e o de ∠a k por
Ω é chamado de espectro de ângulo (ou fase). Estes dois gráficos juntos são

os espectros em freqüência de x[n] .


ƒ Conhecendo estes espectros, podemos reconstruir ou sintetizar x[n] de acordo
com a Equação (2). Assim, o espectro de Fourier (ou de freqüência), que é
uma forma alternativa de descrever o sinal x[n] é em todos os sentidos equi-
valente (em termos de informação) ao gráfico de x[n] em função de n .
ƒ O espectro de Fourier de um sinal constitui a descrição no domínio da fre-
qüência de x[n] em contraste com a descrição no domínio do tempo, em que
x[n] é especificado em função do tempo n .

ƒ Estes resultados são muito similares à representação de um sinal periódico de


tempo contínuo por uma série de Fourier exponencial exceto que, em geral, o
espectro de um sinal de tempo contínuo é infinito e consiste de um número
infinito de componentes exponenciais (harmônicas). O espectro de um sinal

4
Processamento Digital de Sinais – Aula 11T – Professor Marcio Eisencraft – abril 2007

de periódico de tempo discreto, em contraste tem no máximo N 0 componen-


tes.
• Note que se φ [r ] é uma função de r periódica de período N 0 então
N 0 −1

∑ φ [r ] = ∑ φ [r ]
r =0 r = N0
(4)

em que r = N 0 indicam a soma sobre qualquer N 0 valores consecutivos de r .

• Isto ocorre porque o lado direito da Equação (4) é a soma de todos os N 0 va-
lores consecutivos de φ [r ]. Como φ [r ] é periódica, esta soma precisa ser a
mesma independentemente de onde a começamos.
• Por outro lado, e − jkΩ n é periódica com período N 0 por que:
0

e − jkΩ0 (n+ N0 ) = e − jkΩ0n e − j 2πk = e − jkΩ0n


• Sendo assim, se x[n] é periódica de período N 0 , x[n]e − jkΩ n também é periódi- 0

ca de período N 0 .

• Desta forma, segue da Equação (4) que a k também é periódica de período N 0


assim como a k e jkΩ n . Assim, por causa da propriedade (4) podemos reescrever
0

as Equações (2) e (3) como:


x[n] = ∑a e k
jkΩ 0 n
(5)
k = N0

1
e ak =
N0
∑ x[n]e
n= N0
− jkΩ 0 n
(6)

• Se fizermos um gráfico de a k para todos os valores de k (ao invés de apenas


para 0 ≤ k ≤ N 0 − 1 ), veremos que o espectro de a k é periódico com período
N 0 . Além disso, a Equação (5) mostra que x[n] pode ser sintetizada não ape-

nas pelas N 0 exponenciais correspondentes a 0 ≤ k ≤ N 0 − 1 , mas por quais-


quer N 0 exponenciais sucessivas neste espectro, começando em qualquer va-
lor de k (positivo ou negativo).
• Por esta razão, costuma-se representar o espectro a k para todos os valores de
k (e não apenas no intervalo 0 ≤ k ≤ N 0 − 1 ).

5
Processamento Digital de Sinais – Aula 11T – Professor Marcio Eisencraft – abril 2007

• Mesmo assim, precisamos lembrar que para sintetizar x[n] precisamos adi-
cionar apenas N 0 componentes sucessivas.

• As componentes espectrais a k estão separadas pela freqüência Ω 0 = e e-
N0

xiste um total de N 0 componentes se repetindo periodicamente sobre o eixo


Ω . Assim, na escala da freqüência Ω , a k se repete a cada intervalo de 2π.

• As equações (7) e (8) mostram que tanto x[n] quanto seu espectro a k são pe-
riódicos e ambos têm exatamente o mesmo número de componentes ( N 0 ) em
um período. O período de x[n] é N 0 e o de a k é 2π radianos.

• A Equação (8) mostra que a k é complexo em geral e a − k é o conjugado de a k


se x[n] é real. Assim,

ak = a− k e ∠ak = −∠a− k
sendo assim, ak é uma função par e ∠a k é uma função ímpar de k .

Exercícios
1. (3022) Seja o seguinte sinal de tempo discreto periódico:

(a) Qual o período N 0 e a freqüência fundamental deste sinal Ω 0 ?


(b) Calcule os coeficientes da série de Fourier a k deste sinal para 0 ≤ k ≤ N 0 − 1 .
(c) Esboce o espectro de módulo e de fase para este sinal.

2. (3021) Dado o sinal de tempo discreto periódico a seguir:

6
Processamento Digital de Sinais – Aula 11T – Professor Marcio Eisencraft – abril 2007

(a) Determine o seu período N 0 e sua freqüência fundamental Ω 0 .


(b) Determine os coeficientes da série de Fourier de tempo discreto (SFTD) ak

para 0 ≤ k ≤ N 0 − 1 .

7
Processamento Digital de Sinais – Aula 12T – Professor Marcio Eisencraft – julho 2006

Aula 12T – Propriedades das séries de Fourier de tempo discreto


Bibliografia
• OPPENHEIM, Alan V.; WILLSKY, Alan S.; NAWAB, S. Hamid. Signals & systems. 2nd. ed. Upper Sad-
dle River, New Jersey: Prentice-Hall, c1997. 957 p. ISBN 0138147574. . Páginas 221-226.
• HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 202-240.

3.3. Propriedades das séries de Fourier de tempo discreto


• Na aula passada, definimos a série de Fourier de sinais de tempo discreto e
vimos como obtê-la.
Representação em séries de Fourier de tempo discreto de um sinal periódico de
período N 0 :

x[n] = ∑ k
a e jkΩ 0 n

k = N0

em que

∑ x[n]e
1 − jkΩ0 n
ak = e Ω0 =

.
N0 n= N0 N0

• Vimos também que a k é complexo em geral e a − k é o conjugado de a k se


x[n] é real, ou seja, para sinais x[n] vale:

ak = a− k e ∠ak = −∠a− k
sendo assim, ak é uma função par e ∠a k é uma função ímpar de k .

• Existem muitas semelhanças entre as propriedades de séries de Fourier de


tempo discreto e contínuo. Além disso, várias podem ser inferidas a partir de
propriedades da transformada de Fourier de tempo discreto (a ser estudada
em Análise de Sinais II). Assim, apresentaremos a seguir as propriedades de
tempo discreto que nos interessam discutindo apenas as mais importantes.
Uma discussão mais detalhadas das propriedades será feita nos cursos de A-
nálise de Sinais.

1
Processamento Digital de Sinais – Aula 12T – Professor Marcio Eisencraft – julho 2006

3.3.1. Relação de Parseval para sinais periódicos de tempo discreto


• A relação de Parseval para sinais periódicos de tempo discreto é dada por

x[n] =
1
∑ ∑ ak
2 2

N n= N k= N

em que a k são os coeficientes da série de Fourier de x[n] e N é o período.

• O lado esquerdo da relação de Parseval é a potência média em um período do


sinal periódico x[n] . Da mesma forma, a k
2
é a potência média na k -ésima

harmônica componente de x[n] .


• Assim, a relação de Parseval estabelece que a potência média de um sinal pe-
riódico é igual à soma das potências médias em todas as suas componentes
harmônicas.

Figura 1 – Propriedades das séries de Fourier de tempo discreto (OPPENHEIM;


WILLSKY; NAWAB, 1997).

2
Processamento Digital de Sinais – Aula 12T – Professor Marcio Eisencraft – julho 2006

Exercícios
1. (OPPENHEIM; WILLSKY; NAWAB, 1997, p. 216) Considere o sinal:
⎛ 2π ⎞ ⎛ 2π ⎞ ⎛ 4π π⎞
x[n] = 1 + sin ⎜ n ⎟ + 3 cos⎜ n ⎟ + cos⎜ n+ ⎟.
⎝ 9 ⎠ ⎝ 9 ⎠ ⎝ 9 2⎠

Determine as componentes da série de Fourier deste sinal e esboce seu espectro.

2. (OPPENHEIM; WILLSKY; NAWAB, 1997, p. 218) Considere o seguinte


sinal retangular periódico com período N 0 = 32 . Determine as componentes
da série de Fourier deste sinal e esboce seu espectro.

2π π
Neste caso N 0 = 32 e Ω 0 = = . Desta forma,
32 16
π
x[n] = ∑a e
jk n
16
k
k = 32

em que
π
[ ]
1 − jk n
ak = ∑
32 n= 32
x n e 16
(*)

Por facilidade, vamos escolher o intervalo − 16 ≤ n < 15 para a somatória (*)


apesar de que qualquer outro intervalo de mesmo tamanho (32 pontos) ser-
visse.
π
1 15
[ ]
− jk n
ak = ∑
32 n=−16
x n e 16

Mas x[n] = 1 para − 4 ≤ n ≤ 4 e 0 para os outros valores de n . Portanto,

3
Processamento Digital de Sinais – Aula 12T – Professor Marcio Eisencraft – julho 2006
π
1 4 − jk 16 n
ak = ∑e
32 n=−4
π
−j k
Esta é uma progressão geométrica com razão e 16
. Assim,
πk 9
⎡ 4πk −j ⎤ ⎡ j 416πk −j
πk 5

1 ⎢ 16 1 − e
j 16
⎥ 1 ⎢e − e 16 ⎥
ak = e = =
32 ⎢ −j
πk ⎥
32 ⎢ −j
πk ⎥
⎢⎣ 1− e 16 ⎥⎦ ⎢⎣ 1 − e 16 ⎥⎦
0 , 5πk
−j ⎡ j 4,165πk −j
πk 4 , 5
⎤ ⎛ 4,5πk ⎞
e 16
⎢e − e 16 ⎥ sin ⎜ ⎟
1 ⎣ ⎦ 1 ⎝ 16 ⎠
= =
32 − j 0,165πk ⎡ j 0,165πk −j
0 , 5πk
⎤ 32 ⎛ 0,5πk ⎞
e ⎢ e − e 16
⎥ sin ⎜ ⎟
⎣ ⎦ ⎝ 16 ⎠

⎛ 1 ⎞ sin (4,5kΩ 0 )
=⎜ ⎟
⎝ 32 ⎠ sin (0,5kΩ 0 )
π
com Ω 0 = .
16
Este resultado é mostrado na figura a seguir. Repare que neste exemplo a k é
real o que é esperado já que x[n] é par (ver tabela da Figura 1).

ak

3. (OPPENHEIM; WILLSKY; NAWAB, 1997, p.225) Suponha que sejam da-


das as seguintes informações sobre a seqüência x[n] :
a. x[n] é periódica com período N 0 = 6 .
5
b. ∑ x[n] = 2 .
n =0

7
c. ∑ (− 1) x[n] = 1
n=2
n

4
Processamento Digital de Sinais – Aula 12T – Professor Marcio Eisencraft – julho 2006

d. x[n] tem a menor potência por período dentro do conjunto de sinais


que satisfazem as três condições anteriores.
Determine x[n] .

4. (OPPENHEIM; WILLSKY; NAWAB, 1997, p. 250) Um sinal de tempo dis-


creto periódico x[n] assume valores reais e tem período fundamental N = 5 .
Os coeficientes não nulos da série de Fourier de x[n] são
π π
j j
a 0 = 1 , a 2 = a −∗ 2 = e 4
, a 4 = a −∗4 = 2e 3 .
Expresse x[n] na forma

x[n] = A0 + ∑ Ak sin (Ω k n + φ k ) .
k =1

5. (OPPENHEIM; WILLSKY; NAWAB, 1997, p. 252) Seja x[n] um sinal real e

ímpar com período N = 7 e coeficientes de Fourier a k . Dado que


a15 = j , a16 = 2 j , a17 = 3 j ,

determine os valores de a 0 , a −1 , a −2 e a −3 .

5
Processamento Digital de Sinais – Aula 13T – Professor Marcio Eisencraft – julho 2006

Aula 13T – Filtros de tempo discreto


Bibliografia
OPPENHEIM, Alan V.; WILLSKY, Alan S.; NAWAB, S. Hamid. Signals & systems. 2nd. ed. Upper Sad-
dle River, New Jersey: Prentice-Hall, c1997. 957 p. ISBN 0138147574. Páginas 231-239.
HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417.Páginas 260-268.

3.5. Filtros de tempo discreto


ƒ Em uma variedade de aplicações, é de interesse mudar as amplitudes relati-
vas das componentes em freqüência de um sinal ou talvez eliminar algumas
componentes em freqüência inteiramente, processo conhecido como filtra-
gem.
ƒ Sistemas LIT que mudam a forma do espectro são freqüentemente chamados
de filtros modeladores em freqüência.
ƒ Sistemas que são projetados para passar algumas freqüências essencialmente
não distorcidas e atenuar significativamente ou eliminar outras são conheci-
dos como filtros seletivos em freqüência.
ƒ Como vimos na aula passada, os coeficientes da série de Fourier da saída de
um sistema LIT são os da entrada multiplicados pela resposta em freqüência
do sistema.

⎛ j N2π k ⎞ jk ⎛⎜⎜ N2π ⎞⎟⎟ n


y[n] = ∑ ak H ⎜ e 0 ⎟ e ⎝ 0 ⎠
⎜ ⎟ .
k = N0 ⎝ ⎠
ƒ Conseqüentemente, a filtragem pode ser convenientemente conseguida atra-
vés do uso de sistemas LIT com uma resposta em freqüência conveniente-
mente escolhida e métodos no domínio da freqüência provêem as ferramentas
ideais para estudar esta importante classe de aplicações.
ƒ Nesta aula e na próxima, daremos uma primeira olhada neste assunto através
de alguns exemplos.

1
Processamento Digital de Sinais – Aula 13T – Professor Marcio Eisencraft – julho 2006

3.5.1. Filtros modeladores em freqüência


ƒ Uma aplicação em que filtros modeladores de freqüência são freqüentemente
encontrados é sistemas de áudio.
ƒ Por exemplo, filtros LIT são tipicamente incluídos em tais sistemas para
permitir que o ouvinte mude a energia relativa em baixas freqüências (gra-
ves) e altas freqüências (agudos).
ƒ Estes filtros correspondem a sistemas LIT cujas respostas em freqüência po-
dem ser mudadas manipulando controles de tons.
ƒ Também em sistemas de áudio de alta-fidelidade, um filtro muito conhecido
como equalizador é freqüentemente incluído para pré-amplificar e compensar
as características de resposta em freqüência dos alto-falantes.
ƒ De forma geral, estes estágios de filtragem cascateados são freqüentemente
chamados de circuito de equalização do sistema de áudio.
ƒ A Figura 1 a seguir mostra os três estágios de um circuito equalizador para
um conjunto particular de alto-falantes.
ƒ Filtros LIT de tempo discreto encontram um grande conjunto de aplicações.
ƒ Muitas destas envolvem o uso de sistemas de tempo discreto, implementados
usando processadores digitais de propósito gerais ou específicos para proces-
sar sinais de tempo contínuo, um assunto que será discutido em disciplinas
futuras.
ƒ Além disso, a análise de informações de séries temporais, incluindo dados
demográficos e seqüências de dados econômicos como médias de mercado
de ações envolvem o uso de filtros de tempo discreto.
ƒ Freqüentemente as variações de longo prazo (que correspondem a freqüên-
cias mais baixas) têm um significado diferente das variações de curto prazo
(que correspondem às altas freqüências) e é útil estudar estas componentes
separadamente.
ƒ Rearranjando os pesos relativos destas componentes é tipicamente feito utili-
zando-se filtros de tempo discreto.

2
Processamento Digital de Sinais – Aula 13T – Professor Marcio Eisencraft – julho 2006

Figura 1 – Magnitudes das respostas em freqüência de circuitos equalizadores para uma série
particular de alto-falantes, mostrado numa escala de 20 log H que é conhecida como escala

decibel (dB). (a) Filtro de baixas-freqüências controlado por uma chave de duas posições; (b)
limites de freqüência superiores e inferiores de um filtro de freqüência continuamente ajustá-
vel; (c) resposta em freqüência fixa do estágio de equalização (OPPENHEIM; WILLSKY;
NAWAB, 1997).

3
Processamento Digital de Sinais – Aula 13T – Professor Marcio Eisencraft – julho 2006

3.5.2. Filtros seletivos em freqüência


ƒ Filtros seletivos em freqüência é uma classe de filtros especificamente proje-
tada para selecionar aproximadamente algumas faixas de freqüências e rejei-
tar outras.
ƒ Por exemplo, se ruído numa gravação de áudio está numa faixa de freqüên-
cias mais alta do que música ou voz ele pode ser removido usando filtros se-
letivos em freqüência.
ƒ Uma outra importante aplicação de filtros seletivos em freqüência são os sis-
temas de comunicações. Como será discutido em disciplinas futuras, a base
da modulação em amplitude (AM) é a transmissão de informação de muitas
fontes diferentes simultaneamente pondo a informação de cada canal em uma
banda de freqüências diferente e extraindo os canais individuais no receptor
usando filtros seletivos em freqüência.
ƒ Filtros seletivos em freqüência para separar os canais individuais e filtros
modeladores em freqüência (como o equalizador da Figura 1) para ajustar a
qualidade do som formam a maior parte de qualquer receptor de rádio ou te-
levisão doméstico.
ƒ A figura a seguir mostra os tipos de filtros seletivos em freqüência de tempo
discreto.

Figura 2 – Filtros seletivos em freqüência de tempo discreto ideais: (a) passa-


baixas; (b) passa-altas; (c) passa-bandas.

4
Processamento Digital de Sinais – Aula 13T – Professor Marcio Eisencraft – julho 2006

Exercícios
1. Considere o seguinte sistema média móvel já analisado em aulas anteriores:

y[n ] = (x[n] + x[n − 1]) .


1
2
Para este sistema, pede-se:
(a) a resposta impulsiva h[n] ;
(b) a função de sistema H (z ) ;
(c) a resposta em freqüência H (e jΩ )
(d) faça um gráfico do módulo e da fase de H (e jΩ ) para − π ≤ Ω ≤ π .
(e) este filtro é passa-altas ou passa-baixas?

2. Considere um sistema LIT com resposta impulsiva


⎧1, 0≤n≤2

h[n] = ⎨− 1, − 2 ≤ n ≤ −1
⎪0
⎩ caso contrario

Dado que a entrada do sistema é



x[n ] = ∑ δ [n − 4k ] ,
k = −∞

determine os coeficientes da série de Fourier da saída y[n] .

5
Processamento Digital de Sinais – Aula 14T – Professor Marcio Eisencraft – abril 2007

Aula 14T – Exemplos de filtros de tempo discreto


Bibliografia
OPPENHEIM, Alan V.; WILLSKY, Alan S.; NAWAB, S. Hamid. Signals & systems. 2nd. ed. Upper Sad-
dle River, New Jersey: Prentice-Hall, c1997. 957 p. ISBN 0138147574. Páginas 244-249.
HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 260-268.

3.6. Exemplos de filtros de tempo discreto descritos por equações de diferen-


ças
ƒ Filtros descritos por equações de diferenças são muito usados na prática por-
que podem ser eficientemente implementados em sistemas digitais de propó-
sito geral ou específico.
ƒ Sistemas LIT de tempo discreto descritos por equações de diferenças podem
ser recursivos e ter resposta impulsiva infinita (sistemas IIR) ou ser não re-
cursivo e ter resposta impulsiva finita (sistemas FIR).
ƒ Estas duas classes têm conjuntos diferentes de vantagens e desvantagens em
termos de facilidade de implementação e em termos de ordem do filtro ou a
complexidade requerida para atingir os objetivos desejados.
ƒ Nesta aula nos limitaremos a alguns exemplos simples de filtros recursivos e
não recursivos, deixando a análise e compreensão mais detalhada destes sis-
temas para cursos posteriores.

3.6.1. Filtros de tempo discreto recursivos de primeira ordem


ƒ Filtros descritos por:

y[n] − ay[n − 1] = x[n] .


Exercício
1. Para o sistema acima, pede-se:
(a) a resposta em freqüência H (e jΩ ).
(b) a resposta impulsiva;
(c) a resposta ao degrau;
(d) o intervalo de valores para a para o qual o sistema é estável.

1
Processamento Digital de Sinais – Aula 14T – Professor Marcio Eisencraft – abril 2007

(e) Usando o Matlab, esboce o módulo e a fase da resposta em freqüência para


a = 0,6 e a = −0,6 .

3.6.2. Filtros de tempo discreto recursivos de primeira ordem


ƒ A forma geral de uma equação de diferenças não recursiva FIR é
M
y[n ] = ∑ b x[n − k ] .
k
k =− N

ƒ Isto é, a saída y[n] é uma média ponderada dos (N + M + 1) valores de x[n] de


x[n − N ] até x[n + M ] com os pesos dados pelos coeficientes bk .

ƒ Sistemas com esta forma podem ser usados para cumprir um grande número
de objetivos de filtragem, incluindo filtragem seletiva em freqüência.
ƒ Um exemplo freqüentemente usado deste tipo de filtro é o filtro média móvel
em que a saída y[n] para qualquer n - por exemplo, n0 - é a média dos valo-
res de x[n] nas vizinhanças de n0 .
ƒ A idéia básica é que tomando a média dos valores localmente, componentes
de alta freqüência (rápidas) da entrada serão amenizadas e as variações de al-
ta freqüência permanecerão. Assim, este filtro corresponde a uma suavização
ou filtragem passa-baixas da seqüência original. Um exemplo simples com
dois pontos foi visto na aula passada.
ƒ Um exemplo um pouco mais complexo é o filtro média móvel com três pon-
tos que tem a seguinte relação entrada-saída:

y[n ] = (x[n − 1] + x[n] + x[n + 1]) .


1
3
Exercício
2. Para o sistema acima, pede-se:
(a) a resposta impulsiva;
(b) a resposta em freqüência;
(c) Esboce H (e jΩ ) no intervalo − 2π ≤ Ω ≤ 2π .

2
Processamento Digital de Sinais – Aula 14T – Professor Marcio Eisencraft – abril 2007

3. (OPPENHEIM; WILLSKY; NAWAB, p. 261) Considere um sistema LIT de


tempo discreto S cuja resposta em freqüência é:
⎧ π
⎪⎪1, Ω ≤ 8
( )
H e jΩ =⎨
⎪0, π < Ω < π
⎪⎩ 8

Mostre que se a entrada x[n] para este sistema tiver período N = 3 , a saída y[n]
só tem um coeficiente da série de Fourier não nulo por período.

4. (OPPENHEIM; WILLSKY; NAWAB, p. 260) Considere um sistema LIT de


tempo discreto e causal cuja entrada x[n] e a saída y[n] são relacionadas pela
seguinte equação de diferenças:

y[n] − y[n − 1] = x[n]


1
4
Encontre a representação por séries de Fourier da saída y[n] para cada uma das
seguintes entradas:
3π ⎞
(a) x[n ] = sin ⎛⎜ n⎟
⎝ 4 ⎠
π π
(b) x[n] = cos⎛⎜ n ⎞⎟ + 2 cos⎛⎜ n ⎞⎟
⎝4 ⎠ ⎝2 ⎠

3
Processamento Digital de Sinais – Aula 15T – Professor Marcio Eisencraft – novembro 2007

Aula 15T – A Transformada de Fourier de tempo discreto (TFTD)


Propriedades e resposta no domínio da freqüência de sistemas LIT
Bibliografia
ƒ HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 188-196.
ƒ OPPENHEIM, Alan V.; WILLSKY, Alan S.; NAWAB, S. Hamid. Signals & systems. 2nd. ed. Upper Sad-
dle River, New Jersey: Prentice-Hall, c1997. 957 p. (Prentice-Hall signal processing series) ISBN
0138147574. Páginas 358-367.

3. 7 A Transformada de Fourier de tempo discreto (TFTD)


• A transformada de Fourier de tempo discreto (TFTD ou DTFT) H (e j Ω ) de um
sinal de tempo discreto h[n] é definida por

H (e jΩ
)= ∑ h [ n ]e − jΩn (1)
n =−∞

• Como já vimos na aula passada, H (e j Ω ) representa um sinal periódico com


período 2π .
• A transformada inversa de Fourier é definida por
π
1
h [n ] = ∫ H (e jΩ )e jΩnd Ω
2π (2)
−π

• O par (1) e (2) pode ser aplicado a seqüências quaisquer, desde que:

∑ h[n] < ∞
n = −∞

• O par (1) e (2) é conhecido por par DTFT em que (1) é a análise e (2) é a sín-
tese.

Exercícios
1. (HAYKIN; VEEN, 2001, p. 191) Encontre a TFTD da seqüência x[n] = α n u[n]
com α real e sendo α < 1 .

2. (HAYKIN; VEEN, 2001, p. 194) Encontre a TFTD inversa de:

1
Processamento Digital de Sinais – Aula 15T – Professor Marcio Eisencraft – novembro 2007

⎪1, Ω ≤ W

H (e j Ω ) = ⎪


⎪ 0, W < Ω <π

3. (HAYKIN ; VEEN, 2001, p. 195) Encontre a TFTD de x[n] = δ [n] .

4. (HAYKIN; VEEN, 2001, p. 195) Encontre a TFTD inversa de X (e j Ω ) = δ ( Ω ) ,

−π < Ω < π .

5. Encontre a TFTD inversa de X (e j Ω ) = 2 cos ( 2Ω ) .

⎧1, n = ±2
Resposta: x[n] = ⎨ .
⎩0, caso contrário

⎧2 n , 0≤n≤9
6. Encontre a TFTD de x[n] = ⎨ .
⎩0, caso contrário

1 − 210 e − j 10Ω
Resposta: X (e j Ω ) = .
1 − 2e − jΩ

3.8 Propriedades da TFTD


• Uma propriedade muito importante da TFTD é a que transforma convolução
no domínio do tempo em multiplicação no domínio da freqüência. Ou seja, se
c[n] = a[n] ∗ b[n] , então C (e jΩ ) = A (e jΩ ) B (e jΩ ) .

• Isto pode ser escrito como


TFTD
a [ n ] ∗ b [ n ] ←⎯⎯⎯ → A (e j Ω ) B (e j Ω )

• Já vimos que a resposta de um sistema LIT à entrada x[n] é dada por


y[n ] = x[n] ∗ h[n] , sendo h[n] a resposta impulsiva deste sistema.

• Já vimos também que H (e j Ω ) = TFTD { h [ n ] } é a chamada resposta em freqüên-


cia do sistema. Desta forma, usando a propriedade vista, pode-se escrever:

Y (e j Ω ) = X (e j Ω ) H (e j Ω ) .

2
Processamento Digital de Sinais – Aula 15T – Professor Marcio Eisencraft – novembro 2007

• Este importante resultado é resumido na figura a seguir.

Figura 1 – A TFTD e os sistemas LIT (NABARRETE).

3
Universidade Presbiteriana Mackenzie
Curso de Engenharia Elétrica

Processamento Digital de Sinais

PRÁTICA

Prof. Marcio Eisencraft

Segundo semestre de 2007


Processamento Digital de Sinais – Aula 1P – Professor Marcio Eisencraft – agosto 2007

Aula 1P - Apresentação do curso


Exemplos de Aplicação de PDS
Bibliografia
HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 21-33.
GIROD, Bernd; RABENSTEIN, Rudolf; STENGER, Alexander. Sinais e sistemas. Porto Alegre: LTC -
Livros Técnicos e Científicos, c2003. 340 p. ISBN 8521613644. Páginas 1-3.

1. Sinais e processamento de sinais


1.1. Sinais
Ö Um sinal é uma função, geralmente do tempo, que carrega algum tipo de informação.
Ö Exemplos de sinais:
(a) Sinal triangular

(b) Sinal senoidal

(c) Variação da temperatura de uma sala durante um dia

1
Processamento Digital de Sinais – Aula 1P – Professor Marcio Eisencraft – agosto 2007

(d) Sinal de voz

(e) Cotação do dólar a cada meia hora durante um dia

(f) Número de e-mails que chegaram à sua caixa de entrada verificada a cada meia hora.

2
Processamento Digital de Sinais – Aula 1P – Professor Marcio Eisencraft – agosto 2007

(g) Sinal binário

1.2. Classificação de sinais


Como vimos nos exemplos anteriores, os sinais podem assumir as mais diversas for-
mas. A seguir, veremos duas formas muito importantes de se classificar sinais.

1.2.1. Sinais de tempo contínuo e de tempo discreto


Sinais de tempo contínuo – são sinais que estão definidos em todos os pontos de um intervalo

real. O sinal s é representado matematicamente como s(t ), t ∈ R . Exemplos: variação da


temperatura em um dia; sinal de voz.
Sinais de tempo discreto – são sinais que estão definidos apenas em instantes isolados de tem-
po. Geralmente, estes sinais só têm valores definidos para instantes de tempo inteiros. O sinal

x é representado matematicamente por x[n], n ∈ Z . Exemplos: valor do índice BOVES-


PA a cada uma hora.
ƒ Neste curso nos ocuparemos principalmente dos sinais de tempo discreto.

1.2.2. Sinais analógicos e digitais


Sinais analógicos – um sinal é chamado de analógico quando pode assumir qualquer valor em
um intervalo. Exemplo: potência fornecida por uma usina no decorrer de um dia.
Sinais digitais – um sinal é chamado de digital quando só pode assumir um número finito de
valores diferentes. Exemplo: sinal binário.

3
Processamento Digital de Sinais – Aula 1P – Professor Marcio Eisencraft – agosto 2007

Exercício
1. Classifique todos os sinais mostrados nas figuras anteriores em sinais de tempo discreto
ou tempo contínuo; analógicos ou digitais.

1.3. Processamento de sinais


• Já dissemos que um sinal é uma função que carrega algum tipo de informação. Geralmente,
é interessante conseguir extrair esta informação do sinal. É isto o que nossos ouvidos fa-
zem, por exemplo, ao reconhecer uma música ou voz ou o que nossos olhos fazem na ob-
servação de um quadro.
• Esta extração de informações é chamada de processamento de sinais.
• Em nosso curso enfocaremos algumas técnicas básicas envolvidas no processamento de
sinais de tempo discreto uma das áreas da engenharia que mais tem se desenvolvido nas úl-
timas décadas.
• Sem essas técnicas não existiriam muito do que se conhece hoje em áreas como:
o Multimídia (DVD, CD-ROM, transmissão de áudio e vídeo de alta resolução);
o Biomedicina (ultra-sonografia, eletrocardiogramas);
http://www.ecglibrary.com/

o Sensoriamento remoto;
http://www.ltid.inpe.br

4
Processamento Digital de Sinais – Aula 1P – Professor Marcio Eisencraft – agosto 2007

o Telecomunicações móveis (CDMA, TDMA);


o Projeto de controle de motores de precisão para indústrias
o Controle de terremotos
http://www.iris.washington.edu

Exercícios
2. Classifique os seguintes sinais em:
• Tempo discreto ou tempo contínuo
• Analógico ou digital

5
Processamento Digital de Sinais – Aula 2P – Professor Marcio Eisencraft –agosto 2007

Aula 2P - Comandos básicos do Matlab aplicados a PDS


Bibliografia
ƒ HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 71-76.
ƒ MITRA, Sanjit K. Digital signal processing: a computer-based approach. 2nd ed. Boston: McGraw-Hill,
c2001. 866 p. : il. ; 24 cm ISBN 0072321059. Páginas 70-76.

1. Introdução
O Matlab é uma ferramenta muito útil no estudo de problemas e no desenvolvimento
de projetos em Engenharia sendo utilizado em universidades e empresas ao redor do mundo.
Na área de Engenharia Elétrica e, mais precisamente, em Processamento de Sinais
vem adquirindo um caráter quase fundamental.
O principal motivo deste sucesso é a utilização maciça de vetores e matrizes para re-
presentar dados de uma forma simples (Matlab = Matrix Laboratory). Esta forma de repre-
sentação praticamente elimina a necessidade de utilização de laços FOR ou WHILE simplifi-
cando e acelerando muito os programas. EM OUTRAS PALAVRAS, EM MATLAB, SEM-
PRE QUE POSSÍVEL (OU SEJA, QUASE SEMPRE!) NÃO UTILIZE LAÇOS FOR OU
WHILE!
O objetivo desta aula é (re) ver alguns conceitos básicos de programação em Matlab.
Durante o curso veremos muitos outros detalhes técnicos.
Lembre-se: sempre que você ficar na dúvida sobre a utilização de um comando, a fun-
ção <help comando> pode lhe ajudar.

2. Gerando vetores
2.1. O operador :
O operador : é utilizado para gerar e acessar elementos de um vetor.
Vetor = valor inicial: passo: valor final
Quando o passo é unitário, ele pode ser omitido.
• Exemplos de utilização
A. gerar um vetor x com os números inteiros de zero a cinco
>> x = 0:5
x =
0 1 2 3 4 5

b. gerar um vetor y indo de 0 a 1 com passo de 0.1.

1
Processamento Digital de Sinais – Aula 2P – Professor Marcio Eisencraft –agosto 2007

>> y = 0:0.1:1
y =
0 0.1000 0.2000 0.3000 0.4000 0.5000
0.6000 0.7000 0.8000 0.9000 1.0000

c. mostrar o segundo elemento do vetor x


>> x(2)
ans =
1

Exercício
1. Gerar um vetor x de números pares de 0 a 50.
Comandos:

2.2. A função linspace


A função linspace é uma forma prática de se gerar vetores quando sabemos quan-
tos pontos ele deve ter.
Vetor = linspace (valor inicial, valor final, no. de pontos)
• Exemplos de utilização
A. Gere um vetor de 1000 pontos com valores entre zero e 1 igualmente espaçados.
>> v = linspace(0,1,1000);
b. Repita o exercício anterior, mas com os valores em ordem decrescente.
>> v = linspace(1,0,1000);
Exercício
2. Gere um vetor x de 5000 pontos com valores entre 0 e 2*pi.
Comandos:

2.3. Vetores especiais


Existem vetores pré-definidos pelo Matlab e que são muito úteis. Dois deles são o o-
nes(num.linhas, num.colunas) e o zeros(num.linhas, num. Colunas)
que geram, como os nomes dizem, vetores constituídos de uns e de zeros respectivamente.
• Exemplos de aplicação
A. Gere um vetor constituído de 10 zeros.
2
Processamento Digital de Sinais – Aula 2P – Professor Marcio Eisencraft –agosto 2007

>> x = zeros(1,10)
x =
0 0 0 0 0 0 0 0 0 0

b. Gere um vetor constituído por 5000 uns.


>> y = ones(1,5000);

Exercício
3. Gere uma matriz 2x2 constituída por zeros.
Comandos:

2.4. Concatenação de vetores


Uma ferramenta muito interessante do Matlab é a possibilidade de combinar vetores
para formar outros (concatenar vetores). Veja os seguintes exemplos.
• Exemplos de aplicação:
A. Gere um vetor de cinco zeros seguidos por cinco uns.
>> vector = [zeros(1,5) ones(1,5)]
vector =
0 0 0 0 0 1 1 1 1 1
B. Gere um vetor contendo os números inteiros entre zero e 10 em ordem crescente seguidos
pelos mesmos em ordem decrescente.
>> x = [0:10 10:-1:0]
x =
0 1 2 3 4 5 6 7 8 9 10
10 9 8 7 6 5 4 3 2 1 0

Exercício
4. Construa um vetor constituído pelos números pares de 0 a 10 seguido pelos números ím-
pares de 0 a 10.
Comandos:

3
Processamento Digital de Sinais – Aula 2P – Professor Marcio Eisencraft –agosto 2007

2.5. Operações entre vetores


O Matlab permite somar (+), subtrair (-), multiplicar (.*) , dividir (./) vetores. Essas
operações são realizadas elemento a elemento e só podem ser aplicadas entre vetores de mes-
mo comprimento.
Além disso, quase todas as suas funções (trigonométricas, exponenciais e outras) po-
dem ser aplicadas a um vetor sendo que elas operam também elemento a elemento.

• Exemplos de aplicação

a. Sendo x = [2 3 7] e y = [0 -1 3] escreva a resposta de cada um desses coman-


dos executados no Matlab.

I) x + y [2 2 10]
ii) x – y [2 4 4]
iii) x.*y [0 -3 21]

b. Como gerar a partir do vetor x = 0:0.001:1 um vetor com números de 1 a 11?


V = 10*x+1

Exercício
5. Sendo x = [2.1 -2 3] e y = [0 -1 3], escreva o vetor resultante das seguintes
operações:
i) x+y ii) x-y iii) 3*x iv) x.*y

v) x./y vi) y.^2 vii) x.^y


Respostas:

3. Gráficos
Uma outra característica muito interessante do Matlab para um engenheiro é a facili-
dade de se construir gráficos complicados com ele de uma maneira muito simples. Os dois
comandos mais utilizados são:
4
Processamento Digital de Sinais – Aula 2P – Professor Marcio Eisencraft –agosto 2007

plot(vetor.abscissa, vetor.ordenada, ‘modo’);


stem(vetor.abscissa, vetor.ordenada);
O comando plot traça um gráfico colocando seu primeiro argumento no eixo hori-
zontal e seu segundo argumento no eixo vertical. A “string” ‘modo’ indica a forma como o
gráfico será traçado. Veja help plot para mais detalhes.
Stem traça um gráfico da seqüência em seu segundo argumento como palitos com
círculos no valor dos dados usando seu primeiro argumento como abscissa. Veja os exemplos.

• Exemplos de aplicação
a. Faça um gráfico da função y = sin(x) para x ∈ [0,4π ]
>> x = linspace(0,4*pi,5000);
>> y = sin(x);
>> plot(x,y)

b. Faça um gráfico da função y = x 2 para x ∈ Z ,−5 ≤ x ≤ 5 .


>> x = -5:5;
>> y = x.^2;
>> stem(x,y)

5
Processamento Digital de Sinais – Aula 2P – Professor Marcio Eisencraft –agosto 2007

Alguns comandos interessantes:


I) grid – coloca linhas de grade no gráfico
ii) title – permite acrescentar um título ao gráfico
iii) xlabel - permite acrescentar um título no eixo das abscissas
iv) ylabel - permite acrescentar um título no eixo das ordenadas
v) hold on – não apaga o gráfico atual antes de fazer o seguinte

Exercícios
π π
( ) ( )
2 2
6. Faça um gráfico de y [ n ] = sin n e z [ n ] = cos n para −30 ≤ n ≤ 30 na
12 12
mesma figura. O gráfico de y [ n ] deverá ficar em azul e o de z [ n ] em vermelho.
Comandos:

4. Scripts
ƒ Até este ponto, todas as nossas interações com o Matlab têm sido através da linha de co-
mando. Entramos comandos ou funções na linha de comando e o Matlab interpreta nossa
entrada e toma a ação apropriada. Este é o modo de operação preferencial quando nossa
sessão de trabalho é curta e não repetitiva.
ƒ No entanto, o real poder do Matlab para análise e projeto de sistemas vêm da sua habili-
dade de executar uma longa seqüência de comandos armazenados num arquivo. Estes ar-
quivos são chamados de arquivos-M porque seus nomes têm a forma nomearq.m.
ƒ Um script é um tipo de arquivo-M. Scripts são arquivos-textos comuns e podem ser cria-
dos usando um editor de texto.
ƒ Um script é uma seqüência de comandos e funções comuns usados na linha de comando.
Um script é invocado na linha de comando digitando-se o nome do arquivo. Scripts po-
dem invocar outros scripts. Quando um script é invocado, o Matlab executa os comandos
e funções no arquivo como se eles tivessem sido digitados diretamente na linha de co-
mando.

6
Processamento Digital de Sinais – Aula 2P – Professor Marcio Eisencraft –agosto 2007

ƒ O script opera sobre as variáveis do espaço de trabalho.


ƒ Suponha por exemplo que desejemos fazer um gráfico da função y (t ) = sin αt em que α
é uma variável que queremos variar.
ƒ Usando o editor de texto do Matlab (basta ditar edit na linha de comando), podemos
escrever um script chamado plotdata.m como mostrado a seguir.
% Este e um script para fazer um grafico da funcao y = sin(alfa*t)
% O valor de alfa precisa existir no espaco de trabalho antes
% de se chamar este script
t = 0:0.01:1;
y = sin(alfa*t);
plot(t,y);
xlabel ('tempo(s)');
ylabel('y(t) = sin(\alpha t)');
grid on;
ƒ É importante salvar o scritpt no mesmo diretório em que se está trabalhando na linha de
comando. Caso contrário, ao tentar executar o script o Matlab não encontrará o arquivo e
exibirá uma mensagem de erro. Este erro é muito comum quando estamos começando a
trabalhar com scripts.
ƒ Uma vez digitado e salvo é muito fácil utilizar o script. Veja os exemplos a seguir:
>> alfa = 50;
>> plotdata

>> alfa = 10;


>> plotdata

7
Processamento Digital de Sinais – Aula 2P – Professor Marcio Eisencraft –agosto 2007

ƒ Ao escrever scripts é sempre interessante utilizar comentários, linhas que começam com
%. Se você escrever linhas de comentário antes do começo das instruções do script Ao
utilizar o comando help nomearq o Matlab apresenta estas linhas na tela. Por exem-
plo,
>> help plotdata
Este e um script para fazer um grafico da funcao y = sin(alfa*t)
O valor de alfa precisa existir no espaco de trabalho antes
de se chamar este script

5. Funções
ƒ Assim como os scripts, as funções definidas pelo usuário estão entre os recursos mais im-
portantes e utilizados do Matlab. Uma função é um script que recebe um ou mais parâme-
tros do teclado e pode devolver um ou mais parâmetros ou executar uma tarefa.
ƒ O formato de uma função no Matlab é o seguinte
function [outarg1, outarg2,...] = fname(inarg1, inarg2,...)
% Um comentário
% Mais um comentário
....
(código executável)
....
ƒ fname é o nome da função criada e deve ser o nome do arquivo m em que foi gravado o
arquivo. inarg1, inarg2,... são os argumentos de entrada e outarg1, ou-
targ2,... são os argumentos de saída.
ƒ A seguir damos um exemplo bastante simples de função. A função somateste recebe
dois argumentos a, b e retorna a soma deles.
function res = somateste(a,b);
%Funcao para somar dois numeros a e b
res = a+b;
ƒ Uma vez que você tenha salvado este arquivo como somateste no diretório corrente,
você pode usá-lo como nos exemplos a seguir:
>> somateste(2, 4)
ans =
6
>> a = 5;
>> b = -3;
>> res = somateste(a,b)
8
Processamento Digital de Sinais – Aula 2P – Professor Marcio Eisencraft –agosto 2007

res =
2
Exercícios
7. (a) Digite o script plotdata da página 7 e gere os gráficos dos exemplos subseqüentes.
(b) Reescreva o script plotdata visto acima de forma que ele seja uma função que re-
cebe a variável alfa. Ou seja, escreva uma função que faça um gráfico da função
y (t ) = sin αt no intervalo 0 ≤ t ≤ 1 e α é um parâmetro escolhido pelo usuário. Por e-
xemplo, o comando:
>> plotdada(50)
deve gerar o gráfico

Resposta (listagem):

8. Gere um vetor de 100 valores aleatórios com distribuição uniforme no intervalo [0,1] .
Dica: use a função rand (não sabe como usar? Para que serve o help?).
Comandos:

9. (1022) Escreva uma seqüência de comandos do Matlab que forneça um vetor contendo
100 valores aleatórios uniformemente distribuídos no intervalo -1 a 1 e que faça um gráfi-
co deste sinal.
Comandos:

9
Processamento Digital de Sinais – Aula 2P – Professor Marcio Eisencraft –agosto 2007

10. (1031) Escreva uma seqüência de comandos Matlab que gere um gráfico do sinal
⎛π ⎞
x[n] = cos⎜ n ⎟ + 0,2r [n] onde r [n ] é um vetor de números aleatórios com distribuição
⎝8 ⎠
uniforme entre -1 e 1. Faça 0 ≤ n ≤ 99 . (Dica: use o comando rand).
Comandos:

11. (1032) Escreva uma função Matlab chamada pulso2graf cujas entradas sejam dois
números inteiros a e b com a < b . A função deverá fazer o gráfico de um pulso com
amplitude 2 no intervalo a ≤ n ≤ b . O gráfico deve começar em a − 2 e terminar em
b+2.
Por exemplo, ao digitarmos:
>> pulso2graf(2,8);
devemos obter a figura

Listagem da função:

10
Processamento Digital de Sinais – Aula 3P – Professores Marcio Eisencraft – agosto 2007

Aula 3P - Geração de seqüências no Matlab


Bibliografia
ƒ MITRA, Sanjit K. Digital signal processing: a computer-based approach. 2nd ed. Boston: McGraw-Hill,
c2001. 866 p. : il. ; 24 cm ISBN 0072321059. Páginas 6-11.
Ö INGLE, Vinay K.; PROAKIS, John G. Digital signal processing using Matlab. Pacific Grove; Albany:
Brooks/Cole, c2000. 418 p. ISBN 0534371744. Páginas 7-20.

1. Introdução
• Foi visto nas aulas teóricas que os objetos sobre os quais trabalhamos na área de Proces-
samento Digital de Sinais são os sinais de tempo discreto. Estes sinais podem ser vistos
como uma simples seqüência de números.
• Na Aula 2P, por outro lado, foi visto que um dos principais recursos do Matlab é trabalhar
de forma muito simples e intuitiva com seqüências (ou vetores).
• Na aula de hoje, são estudados alguns exemplos de como gerar seqüências (especialmente
as seqüências básicas vistas na Aula 3T) usando o Matlab. Em outras aulas de prática será
explorado o que se pode fazer com essas seqüências no Matlab.

2. Gerando sinais no Matlab


• Como já foi visto, o Matlab é uma ótima ferramenta para representar sinais de tempo con-
tínuo e discreto.
• Quando se está interessado em gerar sinais de tempo contínuo, usa-se como abscissa veto-
res com espaçamento entre amostras bem pequeno, simulando um intervalo de tempo con-
tínuo. Por exemplo, t=0:0.001:1.
• Quando se está interessado em gerar sinais de tempo discreto, usa-se como abscissa vetores
com espaçamento unitário entre amostras. Por exemplo, n=0:100.

2.1. Funções degrau e impulso


• Foi visto na Aula 2P que para gerar uma seqüência de M uns no Matlab, usa-se o comando
ones(1,M) e para gerar uma seqüência de M zeros, usamos o comando zeros(1,M).
Podem-se usar esses dois comandos para gerar os sinais impulso e degrau.
• Por exemplo, para gerar um sinal degrau estendendo-se de n=-50 a n = 49 usamos a
seqüência de comandos:
>> n = -50:49;
>> u = [zeros(1,50) ones(1,50)];
>> stem(n,u);
1
Processamento Digital de Sinais – Aula 3P – Professores Marcio Eisencraft – agosto 2007

• Para gerar um impulso de tempo discreto de amplitude unitária utiliza-se:


>> delta = [zeros(1,50) 1 zeros(1,49)];
>> stem(n,delta);

• Sinais degrau deslocados no tempo podem ser utilizados para descrever pulsos retangula-
res. Por exemplo, a seguinte seqüência de comandos gera um pulso retangular centralizado
na origem.
>> n = -50:50;
>> u1 = [zeros(1,40) ones(1,61)];
>> u2 = [zeros(1,61) ones(1,40)];
>> pulso = u1-u2;
>> subplot(3,1,1); stem(n,u1);
>> subplot(3,1,2); stem(n,u2);
>> subplot(3,1,3); stem(n,pulso);

2
Processamento Digital de Sinais – Aula 3P – Professores Marcio Eisencraft – agosto 2007

• Você entendeu o que o comando subplot faz? Se não, use o help.

Exercício
1. Um pulso retangular x[n] é definido por

⎧8, 0 ≤ n ≤ 10
x[n] = ⎨
⎩0, caso contrário

Faça um gráfico deste pulso no Matlab no intervalo − 20 ≤ n ≤ 20 .


RESOLUÇÃO (comandos Matlab utilizados):

2. (INGLE; PROAKIS, 2000, p.13) (1041) Escreva comandos Matlab para gerar gráficos de
cada um dos seguintes sinais nos intervalos indicados:
(a) x[n] = 2δ [n + 2] − δ [n − 4] , − 5 ≤ n ≤ 5 .

(b) x[n] = n(u[n] − u[n − 10]) + 10e −0,3(n −10 ) (u[n − 10] − u[n − 20]) , 0 ≤ n ≤ 20 .
RESOLUÇÃO (comandos Matlab utilizados):

3
Processamento Digital de Sinais – Aula 3P – Professores Marcio Eisencraft – agosto 2007

2.2. Sinais exponenciais


• Vejamos alguns exemplos de geração de sinais exponenciais usando o Matlab.
• Para fazer um gráfico do sinal x[n ] = (0,85) basta executarmos os seguintes comandos:
n

>> n = -20:20;
>> x = (0.85).^n;
>> stem(n,x);

• Repare na segunda linha a utilização do .^ já que n trata-se de um vetor.

Exercício
3. Faça uma rotina (arquivo .m) chamado expgraf em Matlab cuja entrada seja um núme-
ro real a. Este programa deverá fazer o gráfico de x[n] = a n , para 0 ≤ n ≤ 10 . Por exem-
plo, ao digitarmos:
>> expgraf(0.5);
deveremos obter o gráfico

RESOLUÇÃO:

4
Processamento Digital de Sinais – Aula 3P – Professores Marcio Eisencraft – agosto 2007

2.3. Sinais senoidais


• As funções sin e cos podem ser usadas para criar sinais senoidais de tempo discreto.
⎛π ⎞
Por exemplo, para gerar o sinal x[n] = 2 cos⎜ n ⎟ , usamos a seqüência de comandos:
⎝6 ⎠
>> n = -20:20;
>> Omega = pi/6;
>> x = 2*cos(Omega*n);
>> stem(n,x);

• Lembrando do que Foi visto na Aula 3T, um sinal senoidal de tempo discreto
x[n] = A sin(Ωn + φ ) é periódico de período fundamental N se existir um N inteiro posi-
2πm
tivo tal que Ω = , com m inteiro. Aplicando esta condição ao exemplo anterior, ve-
N
mos que ele é periódico de período N = 12 o que é confirmado pelo gráfico acima.

Exercícios
4. Faça em uma mesma figura (use subplot) os gráficos dos sinais x[n] = cos(0,75πn ) e

y[n] = cos(1,25πn ) . Compare os gráficos obtidos. O gráfico deve conter dois períodos dos
sinais.
RESOLUÇÃO (comandos Matlab utilizados e comentários):

5
Processamento Digital de Sinais – Aula 3P – Professores Marcio Eisencraft – agosto 2007

5. Faça uma rotina (arquivo .m) cosgraf em Matlab cuja entrada seja os números reais A
⎢ 6π ⎥
e Ω . Este programa deverá fazer o gráfico de x[n] = A cos(Ωn ) , para 0 ≤ n ≤ ⎢ ⎥ . Por
⎣Ω⎦
exemplo, ao se digitar:
>> cosgraf(1,pi/6);
deve-se obter o gráfico

RESOLUÇÃO (comandos Matlab utilizados e comentários):

6. A função a seguir calcula a soma das amostras de um sinal x[n].


%Programa para calcular a soma das amostras de um sinal
function s = soma(x),
s = sum(x);
Implemente este programa no Matlab e teste-o para os seguintes sinais:
(a) x = ones(1,30);
(b) x = 2*ones(1,30);
RESPOSTAS:

7. Modifique o programa do exercício anterior para que ele calcule a energia de um sinal
x[n].
RESPOSTAS (Programa e resultados)

6
Processamento Digital de Sinais – Aula 4P – Professor Marcio Eisencraft - agosto 2007

Aula 4P - Exemplos de sistemas no Matlab


Bibliografia
ƒ HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 61-70.
ƒ MATSUMOTO, Élia Yathie. Simulink 5. São Paulo: Érica, 2003. 204 p.: il. ; 25 cm ISBN 8571949379.

¾ O objetivo desta aula é reforçar o conteúdo visto na Aula 4T, ou seja, sistemas (ou filtros)
de tempo discreto e sua classificação. Além disso, veremos uma maneira de implementar
estes filtros no Matlab usando o pacote simulink. Em aulas futuras, veremos formas
mais eficientes de implementações de filtros digitais no Matlab.
¾ Através dos exemplos, ilustraremos um conceito muito importante em PDS: filtros FIR
(resposta impulsiva finita) e IIR (resposta impulsiva infinita). Um filtro é dito FIR se sua
resposta ao impulso unitário tem um número finito de amostras não nulas. Um filtro é dito
IIR se sua resposta ao impulso unitário possui um número infinito de amostras.

Exercícios
1. (Um multiplicador) Dado o filtro a seguir:

y[n] = 4 x[n] , pede-se:


(a) Calcule as 5 primeiras amostras para n ≥ 0 da resposta impulsiva deste filtro, ou seja, para
x[n] = δ [n] .

(b) Desenhe um diagrama de blocos que represente este filtro;

(c) implemente este filtro como um diagrama de blocos no simulink;

(d) Rode o filtro no Matlab usando como entrada um impulso x[n] = δ [n] . Faça 0 ≤ n ≤ 50 e
obtenha um gráfico de y[n] . Este filtro tem resposta impulsiva finita (FIR) ou infinita (IIR)?

1
Processamento Digital de Sinais – Aula 4P – Professor Marcio Eisencraft - agosto 2007

2. (Um filtro FIR) Dado o filtro a seguir:

y[n] = x[n] − 0,5x[n − 1] + 0,7 x[n − 2]


(a) Calcule as 5 primeiras amostras para n ≥ 0 da resposta impulsiva deste sinal, ou seja, para
x[n] = δ [n] .

(b) Desenhe um diagrama de blocos que represente este filtro;

(c) implemente este filtro como um diagrama de blocos no simulink;

(d) Rode o filtro no Matlab usando como entrada um impulso x[n] = δ [n] . Faça 0 ≤ n ≤ 50 e
obtenha um gráfico de y[n] . Este filtro tem resposta impulsiva finita (FIR) ou infinita (IIR)?

3. (Um filtro IIR) Dado o filtro a seguir:

y[n] = 0,5 y[n − 1] + 0,4 x[n]


com condição inicial y[− 1] = 0 .
(a) Calcule as 5 primeiras amostras para n ≥ 0 da resposta impulsiva deste sinal, ou seja, para
x[n] = δ [n] .

(b) Desenhe um diagrama de blocos que represente este filtro;

2
Processamento Digital de Sinais – Aula 4P – Professor Marcio Eisencraft - agosto 2007

(c) implemente este filtro como um diagrama de blocos no simulink;

(d) Rode o filtro no Matlab usando como entrada um impulso x[n] = δ [n] . Faça 0 ≤ n ≤ 50 e
obtenha um gráfico de y[n] . Este filtro tem resposta impulsiva finita (FIR) ou infinita (IIR)?

4. Implemente o seguinte diagrama de blocos que utiliza o arquivo voz.wav que está dis-
ponível na pasta da disciplina. Descreva o resultado da simulação e verifique o que ocorre
ao se alterar os parâmetros do diagrama de blocos.

3
Processamento Digital de Sinais – Aula 5P – Professor Marcio Eisencraft – agosto 2007

Aula 5P – Amostragem
Senóides de tempo discreto
Bibliografia
ƒ HAYKIN, Simon; VAN VEEN, Barry. Sinais e sistemas. Porto alegre: Bookman, 2001. 668 p. : il. (algu-
mas ISBN 8573077417). Páginas 283-309.
ƒ LATHI, B. P. Signal processing and linear systems. New York: Oxford University Press, c1998. 850 p. :
il. ; 27 cm ISBN 0195219171. Páginas 546-559.

1. Introdução
• Uma senóide de tempo discreto genérica pode ser expressa como C cos(Ωn + θ ) , em que
C é sua amplitude, Ω é sua freqüência (em radianos por amostras) e θ é sua fase (em ra-
⎛π π⎞
dianos). A figura a seguir mostra senóide de tempo discreto cos⎜ n + ⎟ .
⎝ 12 4⎠

• Uma observação básica. Como cos(− x ) = cos( x ) ,

cos(− Ωn + θ ) = cos(Ωn − θ )

Assim, tanto cos(− Ωn + θ ) quanto cos(Ωn − θ ) tem a mesma freqüência ( Ω ). Assim, a fre-

qüência de cos(Ωn + θ ) é Ω .

1
Processamento Digital de Sinais – Aula 5P – Professor Marcio Eisencraft – agosto 2007

Exercício
1. Use o Matlab para fazer a figura anterior. Ou seja, escreva uma seqüência de comandos
⎛π π⎞
que gere o gráfico de cos⎜ n + ⎟ .
⎝ 12 4⎠
RESPOSTA: (Comandos e comentários)

2. Senóides de tempo contínuo amostradas resultam em senóides de tempo discreto


• Uma senóide de tempo contínuo cos(ωt ) amostrada a cada T segundos fornece uma se-
qüência de tempo discreto cujo n -ésimo elemento (em t = nT ) é cos(ωnT ) . Assim, o si-
nal amostrado y[n] é dado por:
y[n] = cos(ωnT )
em que Ω = ωT .
= cos Ωn
• Claramente, uma senóide de tempo contínuo cos ωt amostrada a cada T segundos forne-
ce a senóide de tempo discreto cos(Ωn ) em que Ω = ωT .
• Superficialmente, pode parecer que uma senóide de tempo discreto é uma senóide de tem-
po contínuo apresentada com bolinhas. No entanto, como veremos as propriedades das se-
nóides de tempo discreto são muito diferentes das de tempo contínuo.
• No caso contínuo, o período de uma senóide pode assumir qualquer valor; inteiro, fracio-
nário, ou mesmo irracional. Os sinais de tempo discreto, por outro lado, só são especifica-
dos em valores inteiros de n . Assim, o período precisa ser um inteiro (em termos de n )
ou um múltiplo inteiro de T (em termos da variável contínua t ).

Exercício
⎛π ⎞
2. Seja o sinal de tempo contínuo x(t ) = cos⎜ t ⎟ .
⎝6 ⎠
(a) Qual o período deste sinal? Faça um gráfico deste sinal para − 30 ≤ t ≤ 30 usando o
Matlab.

2
Processamento Digital de Sinais – Aula 5P – Professor Marcio Eisencraft – agosto 2007

(b) Agora suponha que você amostre este sinal com um período de amostragem T = 1 .
Escreva o sinal de tempo discreto resultante y[n] . Qual o período deste sinal? Usando o
Matlab faça um gráfico deste sinal sem apagar o anterior (use o comando hold).
RESPOSTA: (Resolução, comandos e comentários).

3. Seja o sinal de tempo contínuo x(t ) = cos(t ) .


(a) Qual o período deste sinal? Faça um gráfico deste sinal para − 30 ≤ t ≤ 30 usando o
Matlab.
(b) Agora suponha que você amostre este sinal com um período de amostragem T = 1 .
Escreva o sinal de tempo discreto resultante y[n] . Qual o período deste sinal? Usando o
Matlab faça um gráfico deste sinal para − 30 ≤ n ≤ 30 sem apagar o anterior (use o co-
mando hold).
RESPOSTA: (Resolução, comandos e comentários):

3. Algumas peculiaridades das senóides de tempo discreto


• Existem duas propriedades inesperadas das senóides de tempo discreto que as distingue de
seus parentes de tempo contínuo.
1. Uma senóide de tempo contínuo é sempre periódica independentemente de
sua freqüência ω . Mas uma senóide de tempo discreto cos Ωn é periódica
Ω
apenas se Ω é igual a 2π vezes um número racional ( é um número ra-

cional).
2. Uma senóide de tempo contínuo cos ωt tem uma forma de onda única para
cada valor de ω . Já a senóide cos Ωn não tem uma forma de onda única
para cada valor de Ω . De fato, senóides de tempo discreto com freqüências
separadas por múltiplos de 2π são idênticas. Assim, uma senóide

3
Processamento Digital de Sinais – Aula 5P – Professor Marcio Eisencraft – agosto 2007

cos Ωn = cos(Ω + 2π )n = cos(Ω + 4π )n = K . Agora vamos examinar cada


uma destas peculiaridades.

Exercício
⎛π ⎞
4. Usando o comando subplot faça os gráficos de x1 [n] = cos⎜ n + 0,1⎟ ,
⎝8 ⎠
⎛⎛ π ⎞ ⎞ ⎛ 17 ⎞
x 2 [n] = cos⎜⎜ ⎜ + 2π ⎟n + 0,1⎟⎟ = cos⎜ πn + 0,1⎟ e
⎝⎝ 8 ⎠ ⎠ ⎝8 ⎠

⎛⎛ π ⎞ ⎞ ⎛ 15 ⎞
x3 [n] = cos⎜⎜ ⎜ − 2π ⎟n + 0,1⎟⎟ = cos⎜ − πn + 0,1⎟ . Calcule os períodos dos 3 sinais e
⎝⎝ 8 ⎠ ⎠ ⎝ 8 ⎠
compare.
RESPOSTA: (Resolução, comandos e comentários):

4. Nem todas as senóides de tempo discreto são periódicas


• Um sinal de tempo discreto x[n] é dito periódico de período N 0 se

x[n] = x[n + N 0 ]

para algum inteiro positivo N 0 . O menor N 0 que satisfaz esta equação é o período de x[n] .
A figura a seguir mostra um exemplo de sinal periódico de período 6.

• Se um sinal cos Ωn é periódico de período N 0 , então:

cos Ωn = cos(Ω(n + N 0 ))
= cos(Ωn + ΩN 0 )

4
Processamento Digital de Sinais – Aula 5P – Professor Marcio Eisencraft – agosto 2007

• Este resultado é possível somente se ΩN 0 é um múltiplo inteiro de 2π , isto é:

ΩN 0 = 2πm m inteiro

ou

Ω m
=
2π N 0
• Como tanto m quanto N 0 são inteiros, a equação acima implica que a senóide cos Ωn é

Ω
periódica apenas se for um número racional. Neste caso, o período N 0 é dado por:

⎛ 2π ⎞
N 0 = m⎜ ⎟ (1)
⎝Ω⎠

⎛ 2π ⎞
• Para calcular N 0 , precisamos escolher o menor valor de m que fará m⎜ ⎟ um intei-
⎝Ω⎠

4π ⎛ 2π ⎞ 17
ro. Por exemplo, se Ω = , então o menor valor de m que fará m⎜ ⎟=m um
17 ⎝Ω⎠ 2
inteiro é 2. Assim,
2π 17
N0 = m = 2 = 17 .
Ω 2
• Usando um argumento similar, podemos mostrar que esta discussão também se aplica
à exponencial de tempo discreto e jΩn . Assim, a exponencial de tempo discreto e jΩn é pe-
Ω
riódica apenas se é um número racional. †

5. Explicação física para a relação de periodicidade


• Qualitativamente, este resultado pode ser explicado lembrando que a senóide de tempo
discreto cos Ωn pode ser obtida por amostragem de uma senóide de tempo contínuo
cos Ωt com intervalo de amostragem T = 1 . Isto é, cos Ωt amostrada em t = 0, 1, 2, 3,....

Isto significa que cos Ωt é a envoltória de cos Ωn . Como o período de cos Ωt é , e-
Ω


Podemos também demonstrar este ponto observando que se e jΩn é periódico de período N 0 , então:
e jΩn = e jΩ (n + N 0 ) = e jΩn e jΩN 0 .

Este resultado só é possível se ΩN 0 = 2πm ( m inteiro) Esta equação leva à Equação (1).

5
Processamento Digital de Sinais – Aula 5P – Professor Marcio Eisencraft – agosto 2007


xistem amostras (elementos) de cos Ωn em um ciclo desta envoltória. Este número
Ω
pode ser inteiro ou não.
⎛π ⎞ ⎛ 4π ⎞
• A figura seguinte mostra três senóides cos⎜ n ⎟ , cos⎜ n ⎟ e cos(0,8n ) .
⎝4 ⎠ ⎝ 17 ⎠
⎛π ⎞
• O primeiro gráfico mostra cos⎜ n ⎟ para o qual cabem exatamente 8 amostras em ca-
⎝4 ⎠
⎛ 2π ⎞ ⎛π ⎞
da período de sua envoltória ⎜ = 8 ⎟ . Assim, cos⎜ n ⎟ repete-se a cada ciclo de sua
⎝Ω ⎠ ⎝4 ⎠
⎛π ⎞
envoltória. Claramente cos⎜ n ⎟ é periódica com período 8.
⎝4 ⎠
⎛ 4π ⎞
• Por outro lado, o segundo gráfico, que mostra cos⎜ n ⎟ , tem uma média de
⎝ 17 ⎠

= 8,5 amostras (um número não inteiro) em um ciclo de sua envoltória. Portanto, o
Ω
segundo ciclo da envoltória não será idêntico ao primeiro ciclo. Mas existem 17 amostras
(um número inteiro) em dois ciclos da envoltória. Assim, o padrão torna-se repetitivo a
⎛ 4π ⎞
cada dois ciclos da envoltória. Portanto, cos⎜ n ⎟ também é periódico, mas seu período
⎝ 17 ⎠
é 17 (dois ciclos de sua envoltória).

6
Processamento Digital de Sinais – Aula 5P – Professor Marcio Eisencraft – agosto 2007

• Esta observação indica que um sinal cos Ωn é periódico somente se podemos encaixar
um número inteiro ( N 0 ) de amostras em m número inteiro de ciclos de sua envoltória.


Como o período da envoltória é concluímos que
Ω

⎛ 2π ⎞
N 0 = m⎜ ⎟
⎝ Ω ⎠
que é exatamente a equação a que tínhamos chegado.
Ω
• Se é irracional, é impossível encaixar um número inteiro ( N 0 ) de amostras em um

número inteiro ( m ) de ciclos da envoltória e o padrão nunca se torna repetitivo. Por e-
xemplo, a senóide cos(0,8n ) no terceiro gráfico da figura acima tem uma média de 2,5π
amostras (um número irracional) por ciclo da envoltória e o padrão não pode ser feito re-
petitivo sobre um número inteiro ( m ) de ciclos da envoltória; assim cos(0,8n ) não é peri-
ódico.

Exercícios

5. Reproduza no Matlab a figura da página 6.


RESPOSTA: (Resolução, comandos e comentários):

6. Os fonoaudiólogos usam um equipamento chamado audiômetro para testar a audição de


deficientes auditivos. Basicamente, este aparelho reproduz um tom dado pela senóide
sin (2πf ) para f entre 100Hz e 3000Hz.
Escreva um programa (seqüência de comandos) Matlab que produza um tom na fre-
qüência f que dure 5s:
(a) f = 500 Hz (b) f = 700 Hz (c) f = 1100 Hz (d) f = 1300 Hz.
RESPOSTA: (Comandos e comentários)

7
Processamento Digital de Sinais – Aula 6P – Professor Marcio Eisencraft – setembro 2007

Aula 6P – Aplicações da soma de convolução


Bibliografia
ƒ HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 85-99.
ƒ OPPENHEIM, Alan V.; WILLSKY, Alan S.; NAWAB, S. Hamid. Signals & systems. 2nd. ed. Upper
Saddle River, New Jersey: Prentice-Hall, c1997. 957 p. ISBN 0138147574. Páginas 74-90.

Exercícios sobre soma de convolução


1. Um sistema LIT tem a resposta ao impulso dada por
j[p] = w[p] − w[p − 10]
Determine a saída deste sistema quando a entrada for o pulso retangular definido como
z[p] = w[p − 2] − w[p − 7]

RESOLUÇÃO

2. Obtenha novamente o resultado do Exercício 1 utilizando o comando conv do Matlab.


COMANDOS UTILIZADOS:

1
Processamento Digital de Sinais – Aula 6P – Professor Marcio Eisencraft – setembro 2007

3. Um sistema LIT tem resposta ao impulso


p
⎛3⎞
j[p] = ⎜ ⎟ w[p]
⎝4⎠
Determine a saída do sistema {[p] quando a entrada for z[p] = w[p] .
RESOLUÇÃO

Aplicações
4. Um sistema de média móvel é um sistema que calcula a média dos P últimos valores da
entrada com o objetivo de “suavizar” o sinal de saída, ou seja, diminuir suas variações.
Ele pode ser expresso por:
1
{[p ] = (z[p] + z[p − 1] + z[p − 2] + … + z[p − P ])
P +1
(a) Calcule a resposta impulsiva para o sistema média móvel com P = 4 , ou seja, para:
1
{[p] = (z[p] + z[p − 1] + z[p − 2] + z[p − 3] + z[p − 4])
5
RESOLUÇÃO

2
Processamento Digital de Sinais – Aula 6P – Professor Marcio Eisencraft – setembro 2007

(b) Utilizando convolução, calcule a resposta deste sistema à entrada z[p] = w[p] − w[p − 3] .
RESOLUÇÃO

(c) Agora repita o item (b) utilizando o comando conv.


COMANDOS UTILIZADOS:

(d) Utilize agora como a entrada uma senóide de tempo discreto com período P = 15 e
definida de 0 a 100 somada a um ruído branco gaussiano com desvio-padrão 0,3 (use o
comando r = 0.3*randn(1,101)). Verifique e interprete a saída utilizando o comando
conv. (Coloque numa mesma figura a entrada e a saída. Use subplot).
COMANDOS UTILIZADOS E INTERPRETAÇÃO

(e) Como você poderia melhorar a filtragem do item (d)?


RESPOSTA

5. O arquivo eletro1.m contém amostras obtidas de um eletrocardiograma no site


physionet.org. Estes pontos podem ser carregados para uma variável x1 no Matlab
estando no diretório correto e usando o comando:
>> x1 = load(‘eletro1.m’);
Pede-se:

3
Processamento Digital de Sinais – Aula 6P – Professor Marcio Eisencraft – setembro 2007

(a) Verifique o comprimento do vetor x1 utilizando o comando whos e faça um gráfico deste
sinal.
(b) Obtenha a resposta impulsiva de um filtro média móvel do Exercício 1 para P = 49 .
(c) Utilize o comando conv e a resposta impulsiva da letra (b) para obter uma versão
“suavizada” do sinal visto na letra (a). Usando subplot, obtenha um gráfico do sinal
original e de sua versão suavizada na mesma figura. Comente sobre os resultados obtidos.
COMANDOS UTILIZADOS E RESPOSTAS (USE O VERSO TAMBÉM).

4
Processamento Digital de Sinais – Aula 7P – Professor Marcio Eisencraft – setembro 2006

Aula 7P - Questões da prova P1

1. (HSU, 2004, p. 31) (2,0) Um sinal de tempo discreto x [ n ] é mostrado na figura a seguir. Faça

o gráfico de cada um dos seguintes sinais:


(a) x [ n − 2] ; (b) x [ 2n ] ; (c) x [ − n ] ; (d) x [ − n + 2]

2.5

2
x[n]

1.5

0.5

0
-2 -1 0 1 2 3 4 5 6
n

2. (HAYKIN; VEEN, 2001, p. 81) Determine se os seguintes sinais são periódicos. Se o forem,
encontre o período fundamental:

(a) (0,5) x [ n ] = cos 15 πn (8 )


(b) (0,5) x [ n ] = cos 15 πn (7 )

(c) (0,5) x n =
[ ]
∑ { δ [ n − 3k ] + δ [ n − k 2 ]}
k =−∞

3. (HSU, 2004, p. 43) Calcule a energia e a potência dos seguintes sinais e classifique-os em
sinal de energia, sinal de potência ou nenhum dos dois.

(a) (1,0) x [ n ] = ( −0,5 ) u [ n ]


n

1
Processamento Digital de Sinais – Aula 7P – Professor Marcio Eisencraft – setembro 2006

(b) (1,0) x [ n ] = u [ n ] .

4. (PROAKIS; MANOLAKIS, 1996, p. 137) Os seguintes pares entrada-saída foram observados


durante a operação de um sistema linear:

{ }↔ { 1; 2 ; − 1; }
H
x 1 [n ] = − 1; 2; 1 y 1 [n ] = 0; 1
↑ ↑

{ 1; − 1 }↔ = { − 1; 1; 0 ; }
H
x 2 [n ] = −1 y 2 [n ] 2
↑ ↑

{ 0; 1} = { 1; 2 ; 1 }
H
x 3 [n ] = 1; ↔ y 3 [n ]
↑ ↑

(a) (1,0) Determine a resposta impulsiva do sistema.


(b) (0,5) O que se pode afirmar sobre a invariância no tempo deste sistema? JUSTIFIQUE.

{
5. (INGLE; PROAKIS, 2000, p. 35) Seja x[n] = 1; − 2; 4; 6; − 5; 8; 10 . Obtenha e

}
faça um gráfico das seguintes seqüências no intervalo −10 ≤ n ≤ 10 .
(a) (1,0) x1 [n] = 3 x[n + 2] + x[n − 4] − 2 x[n ]

(b) (1,0) x 2 [ n ] = 20,5n x [ n ] + cos ( 0,1πn ) x [ n + 2 ]

2
Processamento Digital de Sinais – Aula 8P – Professores Marcio Eisencraft – setembro 2007

Aula 8P - Simulando equações de diferenças no Matlab


ƒ HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Página 149.
ƒ INGLE, Vinay K.; PROAKIS, John G. Digital signal processing using Matlab. Pacific Grove; Albany:
Brooks/Cole, c2000. 418 p. ISBN 0534371744. Páginas 29-35.

O Matlab permite a resolução de equações de diferenças com a utilização dos comandos


filter e filtic.
Seja a equação de diferenças
a 1 y[n] + a 2 y[n - 1] + … + a N +1 y[n - N ] = b1 x[n] + b 2 x[n - 1] + ... + b O +1 x[n - M] .

Primeiramente, vamos considerar que as condições iniciais são nulas. Neste caso, para resol-
vê-la no Matlab, usamos o comando:
y = filter(B, A, x);
O vetor B contém os elementos d1 , d2 , … dO +1 e o vetor A contém os elementos c1 , c 2 , … c O +1 .
O vetor x contém os pontos do sinal de entrada.
Por exemplo, para encontrar os 20 primeiros pontos de {[p] , solução da equação de diferen-
ças {[p ] − 0,5 {[p − 1] = z[p] para z[p] = w[p] e condições iniciais nulas, usamos a seguinte se-
qüência de comandos:
>> n = 0:19;
>> x = ones(1,20);
>> B = [1];
>> A = [1 -0.5];
>> y = filter(B,A,x);
>> stem(n,y);
No caso de condições iniciais não nulas, usamos o comando filtic para transformar as
condições [ {[− 1], {[− 2], … , {[− P ]] nas condições iniciais usadas pelo comando filter.
Seja por exemplo, resolver o mesmo problema proposto anteriormente só que com condição
inicial {[− 1] = 2 . Usamos o seguinte conjunto de instruções:
>> n = 0:19;
>> x = ones(1,20);
>> B = [1];
>> A = [1 -0.5];
>> zi = filtic(B,A,[2]);
>> y = filter(B,A,x, zi);

1
Processamento Digital de Sinais – Aula 8P – Professores Marcio Eisencraft – setembro 2007

>> stem(n,y);

Exercícios
1. Seja a equação de diferenças
{[p ] − 0,5 {[p − 1] = z[p]
Para 0 ≤ p ≤ 19
(a) Calcule a resposta impulsiva deste sistema (use iterações).
RESOLUÇÃO:

(b) Calcule a resposta impulsiva usando o comando filter do Matlab.


COMANDOS E COMENTÁRIOS:

(c) Calcule a resposta ao degrau deste sistema usando convolução.


RESOLUÇÃO:

(d) Calcule a resposta ao degrau deste sistema usando filter.


COMANDOS E COMENTÁRIOS:

⎛π ⎞
(e) Calcule a resposta deste sistema para a entrada z[p] = sin ⎜ p ⎟ e condições inicias nulas
⎝3 ⎠
usando o comando conv do Matlab.
COMANDOS E COMENTÁRIOS:

2
Processamento Digital de Sinais – Aula 8P – Professores Marcio Eisencraft – setembro 2007

(f) Repita o item (e) usando filter.


COMANDOS E COMENTÁRIOS:

2. No p -ésimo semestre, z[p] estudantes matriculam-se num curso que requer certo livro
texto. A editora vende {[p] cópias novas do livro no semestre p . Em média, um quarto
dos estudantes com livros em condições de vendas revende seus livros ao final do semes-
tre e a vida útil do livro é três semestres.
(a) Escreva a equação de diferenças relacionando {[p] , os novos livros vendidos pela editora
com z[p] , o número de estudantes matriculados no p -ésimo semestre, assumindo que cada
estudante compra um livro.
(b) Sendo o número de alunos num semestre sempre igual a 48 ( z[p] = 48w[p] ) quantos livros
esta editora deverá vender por semestre, depois de passado o transitório?
RESOLUÇÃO:

O comando Matlab y = impz(B,A,n) pode ser usado para computar as primeiras N a-


mostras da resposta impulsiva do sistema LIT discreto da equação:
a 1 y[n] + a 2 y[n - 1] + … + a N +1 y[n - N ] = b1 x[n] + b 2 x[n - 1] + ... + b O +1 x[n - M] .
O programa Matlab a seguir computa e faz um gráfico da resposta impulsiva descrita pela e-
quação:
{[p ] − 0,4 {[p − 1] + 0,75 {[p − 2] = 2,2403 z[p ] + 2,4908 z[p − 1] + 2,2403 z[p − 2] .
%Programa para exercícios seguintes
%Computa a resposta impulsiva h

3
Processamento Digital de Sinais – Aula 8P – Professores Marcio Eisencraft – setembro 2007

clf;
‘N = 40;
B = [2.2403 2.4908 2.2403];
A = [1 -0.4 0.75];
h = impz(B,A,N);
%Faz um grafico da resposta impulsiva
stem(0:N-1,h);
xlabel('indice temporal n'); ylabel('Amplitude');
title('Resposta impulsiva');grid;

3. (MITRA, 1999, p.26) Rode o programa acima e gere a resposta impulsiva para o sistema
de tempo discreto da equação dada acima.
COMANDOS E COMENTÁRIOS:

4. (MITRA, 1999, p.26) Modifique o programa acima para gerar as primeiras 45 amostras da
resposta impulsiva do seguinte sistema LIT causal:
{[p ] + 0,71 {[p − 1] − 0,46 {[p − 2] − 0,62 {[p − 3] = 0,9 z[p ] − 0,45 z[p − 1] + 0,35 z[p − 2] + 0,002 z[p − 3]
COMANDOS E COMENTÁRIOS:

.
5. (MITRA, 1999, p.27) Escreva um programa Matlab que gere a resposta impulsiva do sis-
tema LIT do exercício anterior usando o comando filter; compute e faça um gráfico
das primeiras 40 amostras. Compare com o resultado obtido no Exercício 4.
COMANDOS E COMENTÁRIOS:

4
Processamento Digital de Sinais – Aula 9P – Professores Marcio Eisencraft – setembro 2007

Aula 9P - Exemplos simples de processamento de voz


Bibliografia
ƒ INGLE, Vinay K.; PROAKIS, John G. Digital signal processing using matlab. Pacific Grove: Brooks :
Cole Publishing, c2000. 418 p. : il. ; 24 cm ISBN 0534371744. Páginas 7-20.
ƒ HANSELMAN, Duane C; LITTLEFIELD, Bruce. MATLAB 6: curso completo. São Paulo: Prentice Hall,
c2003. 676 p. ISBN 8587918567. Página 375.

ƒ Vamos ver agora uma possível aplicação dos conhecimentos que obtivemos até agora num
caso mais prático. O processamento de sinais de voz.
ƒ Para isso, serão disponibilizados para os alunos os arquivos de áudio voz.wav e tes-
te.wav.
ƒ Começaremos carregando o sinal no Matlab. Estando no diretório correto, fazemos:
>> [voz, fs, nbits] = wavread('voz.wav');
>> voz = voz';
ƒ Com estes comandos, o vetor voz conterá as amostras do arquivo voz.wav. A variável fs
contém a freqüência em que o sinal foi amostrado (Hz ou amostras/s) e a variável nbits
contém o número de bits utilizado para representar cada amostra.
ƒ Digitando whos podemos ver que o vetor voz é composto por 60000 amostras. Para “to-
carmos” o sinal no alto-falante do PC usamos o comando sound(<variável>,
<freqüência de amostragem>). Por exemplo, podemos fazer:
>> sound(voz,fs)

Atividades (nos espaços coloque os comandos Matlab utilizados e comentários sobre os


resultados obtidos)
1. Qual a freqüência de amostragem do sinal de voz voz.wav?
Resposta e comentários:

2. Se ele é composto por 60000 amostras, qual a duração em segundos deste sinal?
Resposta e comentários:

3. Utilizando o comando sound tente tocá-lo com um valor de fs diferente. O que aconte-
ce? Explique o que você ouviu.
Resposta e comentários:

1
Processamento Digital de Sinais – Aula 9P – Professores Marcio Eisencraft – setembro 2007

4. Obtenha um gráfico do vetor voz.


Resposta e comentários:

5. Obtenha um vetor vozmet contendo apenas os 30000 primeiros pontos de voz. Faça um
gráfico e toque o sinal vozmet.
Resposta e comentários:

6. Obtenha um vetor (chame-o, por exemplo, de vozinvert) que contenha as amostras do ve-
tor voz só que de traz pra frente. Toque-o usando sound. Faça um gráfico deste sinal.
Resposta e comentários:

7. Vimos que a potência de um sinal pode ser obtida fazendo-se uma média dos valores da
potência instantânea r[p] = z 2 [p] . Isto pode ser obtido no Matlab com o comando:
>> p = sum(voz.^2)/length(voz)
Qual a potência do sinal voz?
Resposta e comentários:

8. Para gerar um ruído com 60000 pontos e potência Pruido, pode ser usado o comando:
>> ruido = sqrt(Pruido)*randn(1,60000);
Gere um ruído com potência Pruido = 1 e ouça o resultado. Modifique a potência do ruí-
do e observe o que ocorre.
Resposta e comentários:

9. Um dos conceitos mais utlizados em processamento digital de sinais e telecomunicações é


o de relação sinal-ruído (SNR = signal to noise ratio) que é a razão entre a potência do si-
nal e a potência do ruído num certo sinal. Por exemplo, se quisermos gerar um som que
tenha SNR = 5, podemos usar o seguinte script:

2
Processamento Digital de Sinais – Aula 9P – Professores Marcio Eisencraft – setembro 2007

% SCRIPT noise.m – gera um sinal de voz somado a ruido com


% SNR fixa
[voz,fs,nbits] = wavread('voz.wav');
voz = voz';
SNR = 5;
Psinal = sum(voz.^2)/length(voz);
Pruido = Psinal/SNR;
ruido = sqrt(Pruido)*randn(1,60000);
vozr = voz+ruido;
sound(vozr,fs)
Modifique o script acima para gerar sons com SNR igual a 100, 50, 20, 10, 2, 1, 0,1 e 0. Des-
cubra até que nível de SNR a mensagem ainda é inteligível.
Resposta e comentários:

"
"
10. Um filtro FIR pode ser utilizado para obtermos um efeito de eco acústico. Se o sinal é
amostrado a 8kHz, por exemplo, o seguinte filtro gera um eco de 0,5s.
{ [ p ] = z [ p ] + 0, 7 z [ p − 4000] .

Este filtro pode ser utilizando o comando filter. Obtenha e ouça o resultado da aplicação
deste filtro ao sinal teste.wav. Para lê-lo no Matlab, use o comando:
>> [x, fs] = wavread(‘teste.wav’);
Resposta e comentários:

11. Escreva uma função que tenha como formato


function [y] = eco(x,fs,N,alfa)
que recebe um sinal guardado na variável x e implementa e toca o sinal com eco
{ [ p ] = z [ p ] + cz [ p − P ] .

Teste seu programa para o arquivo teste.wav do exercício anterior.


Resposta e comentários:

3
Processamento Digital de Sinais– Aula 10P – Professor Marcio Eisencraft – setembro 2007

Aula 10P – Modelagem, predição e síntese de voz


Bibliografia
ƒ STONICK, Virginia L. Labs for signals and systems: using MATLAB. Boston; Albany: PWS, c1996. 143 p.
ISBN 0534938086.. Páginas 57-68.
ƒ BURRUS, C. Sidney, Oppenheim, Alan V., Parks, Thomas W., Schafer, Ronald W., Schuessler, Hans W. Com-
puter-based exercises for signal processing using Matlab 5. Upper Saddle River: Prentice-Hall, c1998. 404 p. :
il. ; 28 cm ISBN 0137890095. Páginas 329-350.

1. Fundamentos de sinais de voz


Fisicamente, a voz é produzida quando o ar dos pulmões excita o sistema de trato vocal mos-
trado na Figura 1.
O trato vocal se comporta como uma cavidade ressonante de forma que o sinal que emana
pela boca é uma soma ponderada de versões atrasadas do sinal vocal original mais as excita-
ções. O modelo em tubos do trato vocal é mostrado nas Figuras 2 e 3.
Os diferentes tipos de sons da voz podem ser divididos de forma simplificada em dois grupos:
os sons vocálicos e os sons fricativos ou não-vocálicos.
Uqpu"xqeânkequ: são produzidos usando uma seqüência de impulsos como entrada; o período
fundamental desta seqüência determina a tonalidade (“pitch”). Por exemplo, vogais são sons
vocálicos; quando se diz “a”, pode-se sentir a vibração das cordas vocais.

Figura 1 – Detalhes do trato vocal. (SENDA, 2005).


1
Processamento Digital de Sinais– Aula 10P – Professor Marcio Eisencraft – setembro 2007

Uqpu"pçq/xqeânkequ: são produzidos usando ruído branco como entrada. Estes sons geralmen-
te são gerados por um fluxo turbulento de ar pela boca, por exemplo, quando se pronuncia
“sh”.
Assim, o modelo em tempo discreto da produção de voz é mostrado na Figura 4.

2. Modelagem de voz em tempo discreto

Um modelo em equações de diferenças para o trato vocal pode ser desenvolvido como se se-
gue.
Como cada amostra de sinal de voz é muito relacionada com as anteriores, o valor da amostra
atual de voz pode ser estimado como uma combinação linear das anteriores.

Figura 2 – Modelo do trato vocal. (SENDA, 2005).

2
Processamento Digital de Sinais– Aula 10P – Professor Marcio Eisencraft – setembro 2007

Figura 3 – Modelo em tubos do trato vocal. (BURRUS et al., 1998).

Figura 4 – Modelo em diagrama de blocos da geração da fala humana (BURRUS et al., 1998).

r
uˆ[p] = ∑ α k u[p − k ]
(1)
k =1
O sinal û[p] é a estimação do sinal de voz u[p] para a p -ésima amostra. O erro entre o sinal
original e o estimado é:

g[p] = u[p] − uˆ[p] (2)

3
Processamento Digital de Sinais– Aula 10P – Professor Marcio Eisencraft – setembro 2007

4 Modelo de predição
A combinação das duas equações acima leva a um modelo por equações de diferenças da pre-
dição do processo de fala:
r
u[p] − ∑ α k u[p − k ] = g[p] (3)
k =1

Este modelo de predição é usado em telecomunicações para aumentar o número de sinais de


voz que podem ser transmitidos por um canal.
Se os coeficientes α k são conhecidos pelo transmissor e pelo receptor, então apenas o erro

precisa ser transmitido e o sinal de voz pode ser tgeqpuvtwîfq no receptor utilizando a equa-
ção de diferenças acima.
No transmissor u[p] é a entrada do filtro de predição e g[p] é a saída. No receptor a situação é
a inversa.
A transmissão do sinal de erro resulta em economia substancial da banda de transmissão.
A Figura 5 mostra um exemplo de sinal predito, o erro e a reconstrução para um sinal de voz
u[p] .

1
original

-1
0 1 2 3 4 5 6 7 8
1 x 10
4
Predicao

-1
0 1 2 3 4 5 6 7 8
1 x 10
4
Erro de predicao

-1
0 1 2 3 4 5 6 7 8
1 x 10
4
Reconstruido

-1
0 1 2 3 4 5 6 7 8
4
x 10

Figura 5 – Exemplo de predição e reconstrução de um sinal de voz.


4
Processamento Digital de Sinais– Aula 10P – Professor Marcio Eisencraft – setembro 2007

5 Modelo de síntese
Pode-se modificar o mesmo modelo básico de predição de voz para usar em síntese de voz.
u [p] que imita o sinal de voz original, podemos substituir o
Se o objetivo for criar um sinal ~
erro g[p] por um sinal de entrada z[p] multiplicado por um ganho I .
Usando a mesma forma da equação de diferenças do modelo de predição, Eq. (3), resulta o
seguinte modelo de síntese:
r
u [p] − ∑α k ~
~ u [p − k ] = Iz[p] . (4)
k =1

Tipicamente, os coeficientes α k mudam a cada 10-20ms conforme o trato vocal muda para

produzir sons diferentes. Veja a Figura 6.

Figura 6 – Segmentação do sinal de voz (STONICK; BRADLEY, 1996).

Na síntese aplica-se uma seqüência de excitação conveniente para que naquele intervalo de
tempo seja gerada uma seqüência de sons adequada.

6 Transmissão de voz
Uma linha telefônica normal opera simplesmente amostrando a voz de uma pessoa, digitali-
zando as amostras com 8 bits e transmitindo estes bits para o receptor, onde novamente é
convertido em voz.

5
Processamento Digital de Sinais– Aula 10P – Professor Marcio Eisencraft – setembro 2007

Um método alternativo é realizar a análise e predição como resumido anteriormente, digitali-


zar o sinal de erro e transmitir o sinal de erro digital resultante e coeficientes da predição line-
ar.
Por que fazer isso?
Voz normal necessita de 8 bits x 8 kHz = 64000 bits por segundo para ser transmitido.
Suponha que o sinal de erro possa ser digitalizado com 4 bits ao invés de 8 e que cada coefi-
ciente seja representado com 16 bits.
Então, para transmitir a mesma quantidade de informação é necessário 4bits x 8kHz + 16 x 10
coeficientes x 100 blocos de dez milisegundos por segundo = 48000 bits por segundo – 75%
da taxa anterior.
Se for utilizado apenas 1 bit de quantização para o sinal de erro, 24000 bits por segundo são
necessários – 37,5% da taxa anterior.

7 Atividades
1. Assuma que você tem um sinal de voz digitalizado com uma amostragem de 8kHz. Se este
sinal for quebrado em segmentos de 20ms, quantas amostras NS existem por bloco?

2. Se 1 segundo deste sinal estiver num vetor Matlab, quantos blocos de 20ms NBLKS podem
ser obtidos?

3. Suponha que se deseje usar como entrada para seu modelo de voz sintética um trem de impul-
sos unitários igualmente espaçados e que gostaríamos que o pitch fosse 200Hz. Se a voz foi
amostrada a 8kHz, quantas amostras devem ser colocadas por período, ou seja, quanto vale
P em:

z[p ] = ∑ δ [p − kP ] , 0 ≤ p < PU .
k =0

6
Processamento Digital de Sinais– Aula 10P – Professor Marcio Eisencraft – setembro 2007

4. Como devem ser definidos os vetores a e b usados como entrada do filter em termos de
α k e I para criar equações de diferenças que realizem as seguintes operações:
(a) fornecer û[p] como saída quando u[p] é a entrada. (predição)
(b) fornecer g[p] como saída quando u[p] é a entrada. (erro de predição)
u [p] como saída quando x [ n ] é a entrada. (síntese)
(c) fornecer ~

5. A função sintetizavoz2 gera uma voz sintética a partir dos coeficientes α k e um trem

de impulsos com freqüência fundamental dada por pitch ou um ruído branco gaussiano.
Seu formato é:
%[SYNTHimp, SYNTHnoise] = sintetizavoz2(nomarq,NS,pitch, NP);
% Sintetiza voz com sequencia de impulsos e ruido gaussiano
% nomarq - nome do arquivo .wav (entre aspas simples)
% NS - numero de amostras por bloco
% pitch - frequencia fundamental da sequencia de impulsos
% NP - numero de coeficientes utilizados na predicao
% SYNTHimp - voz sintetizada com impulsos
% SYNTHnoise - voz sintetizada com ruído
Teste este programa utilizando o arquivo aula5.wav. Utilize NS=160, NP = 10 e um pitch
de 50Hz. Verifique o que ocorre ao se mudar estes parâmetros.

7
Processamento Digital de Sinais– Aula 10P – Professor Marcio Eisencraft – setembro 2007

Em seguida, repita para o arquivo teste.wav. Tente encontrar um valor de pitch mais adequa-
do para este sinal. Repita para os arquivos show.wav e chinelo.wav que possuem muitos
fricativos.
Grave um sinal de voz e tente gerar uma voz sintética com o pitch mais adequando para a sua
voz.

6. O programa predivoz fornece tem a seguinte estrutura:


% [X2,E, RECON] = predivoz(nomarq,NS,NP);
% nomarq - nome do arquivo .wav (entre aspas simples)
% NS - numero de amostras por bloco
% NP - numero de coeficientes utilizados na predicao
% X2 - sinal obtido com a predicao
% E - erro de predicao
% RECON - Sinal reconstruido no receptor
Teste o programa para o sinal aula5.wav usando blocos com NS=160, NP = 10. Explique
os resultados obtidos e verifique o que ocorre ao se modificar estes parâmetros.

7. O programa predivozquant simula a quantização do sinal de erro que é enviado ao recep-


tor.
% [RECON] = predivozquant(nomarq,NS,NP, Nbits);
% nomarq - nome do arquivo .wav (entre aspas simples)
% NS - numero de amostras por bloco
% NP - numero de coeficientes utilizados na predicao
% Nbits - numero de bits utilizados na quantizacao do erro
% RECON - Sinal reconstruido no receptor
Utilizando novamente o arquivo aula5.wav e as mesmas configurações da Atividade 7, verifi-
que qual a menor quantidade de bits que devem ser utilizados na quantização do erro de predição
de forma que o sinal possa ser recuperado de forma integral no receptor. Calcule, neste caso, a
taxa necessária de transmissão.

8
Processamento Digital de Sinais– Aula 11P – Professor Marcio Eisencraft – setembro 2007

Aula 11P – Exemplos de processamento de imagem


Bibliografia
ƒ STONICK, Virginia L. Labs for signals and systems: using MATLAB. Boston; Albany: PWS, c1996. 143 p.
ISBN 0534938086. Páginas 69-80.
ƒ GONZALEZ, Rafael C.; WOODS, Richard E. Processamento de imagens digitais. São Paulo: Edgard Blücher,
2000. 509p. : il. ; 24 cm ISBN 8521202644.

1. Introdução
Imagens digitais são formadas por “pontos” ou rkzgnu (Rkevwtg" gngogpvu). Colocando estes
pontos suficientemente próximos uns dos outros, as imagens são vistas na tela do computador
ou impressas como se fossem contínuas.
Em um computador digital, o brilho e a informação de cor de cada pixel são codificados por
um número ou, equivalentemente, um elemento de uma matriz. A localização de cada ponto
da matriz é indexada por dois inteiros, isto é, Z (3,4 ) identifica o valor do pixel localizado na
matriz Z na terceira linha e na quarta coluna.
Usualmente os valores nas matrizes são inteiros de 0 a 2 p − 1 , em que p é o número de bits
usado para representar o brilho de cada pixel. Por exemplo, considere uma imagem preta e
branca em que a luminância, ou brilho, para cada pixel é armazenada usando 8 bits. Neste ca-
so, o brilho relativo de cada pixel pode ser representado por um de 256 níveis possíveis, cha-
mados de níveis de cinza. Usualmente o preto é codificado como 0 e o branco como 255.
A informação de cores para os pixels de uma imagem é codificada como inteiros armazena-
dos em matrizes separadas. No Matlab, as imagens são armazenadas como matrizes de intei-
ros e a informação de cor – como cada valor de pixel é mapeado para certa cor – é armazena-
da separadamente.

2 Borrando e dando nitidez a uma imagem


O borrão em ima imagem causada pelo movimento pode ser representado por um sistema
linear. O movimento faz com que cada pixel em uma imagem contenha informação dos P
"pixels" anteriores na mesma linha. Um modelo simples de borrão horizontal é:
1 p
1
{ (n , p ) = ∑ z(n , p ) = P (z(n , p ) + z(n , p − 1) + … + z(n , p − P + 1)) . (1)
P m = p − P +1

1
Processamento Digital de Sinais– Aula 11P – Professor Marcio Eisencraft – setembro 2007

A equação (1) representa um filtro FIR e pode ser implementado utilizando-se o comando
filter como feito nas aulas anteriores.
A representação de imagens no Matlab e o seu processamento são ilustrados nas atividades
seguintes.

Atividades
A. Trabalhando com uma imagem
Nesta atividade exploraremos como imagens são mostradas e representadas como matrizes no
Matlab. A informação de cores é codificada em uma eqnqtocr (tabela de cores a ser usada). Ima-
gens podem ser armazenadas em arquivos imagen_name.mat e carregadas usando o comando
load image_name.
O Matlab tem uma série de imagens padrões disponível.
1. Digite load clown e verifique as variáveis carregadas digitando whos
>> whos
Name Size Bytes Class
X 200x320 512000 double array
caption 2x1 4 char array
map 81x3 1944 double array
Foram criadas três variáveis: caption (guarda as informações de cabeçalho da imagem), map
(informação de cores), x (guarda a informações de intensidade da imagem).

2. Olhe alguns elementos do vetor x (por exemplo, digite x(65:75, 100:110)). Os valores
na matriz devem ser inteiros. Quantos bits estão sendo usados na codificação?
RESPOSTA:

3. Para mostrar a imagem, digite image(X). Você deve ver o palhaço numa janela, apesar de
sua cor parecer não-natural.

2
Processamento Digital de Sinais– Aula 11P – Professor Marcio Eisencraft – setembro 2007

20

40

60

80

100

120

140

160

180

200
50 100 150 200 250 300

4. Para obter as cores corretas, digite colormap(map). Agora o palhaço deve aparecer nas
cores corretas.

20

40

60

80

100

120

140

160

180

200
50 100 150 200 250 300

5. Para aumentar o brilho da imagem, pode-se utilizar o comando brighten(beta) sendo


beta um número entre -1 e 1. Números maiores que zero resultam numa imagem mais bri-
lhante e menores do que zero numa imagem mais escura. Por exemplo,
>> brighten(.7)

20

40

60

80

100

120

140

160

180

200
50 100 150 200 250 300

3
Processamento Digital de Sinais– Aula 11P – Professor Marcio Eisencraft – setembro 2007

6. Podem-se utilizar operações matriciais normalmente para trabalhar com imagens. Por exem-
plo, transpor a matriz implica na transposição da imagem. Para colocar a imagem de ponta
cabeça, basta inverter a ordem das linhas da matriz.
X1 = X';
X2 = X(end:-1:1,:);
figure(1);
subplot(221); image(X1);
subplot(222); image(X2);
colormap(map);image(X(end:-1:1, :))
colormap(map);

7. Gere a imagem a seguir:

COMANDOS UTILIZADOS:

8. Podemos selecionar um pedaço da imagem, pegando algumas linhas e colunas da matriz. Por
exemplo, o olho esquerdo do palhaço pode ser obtido usando:
Xolho = X(50:100, 150:250);
image(Xolho);
colormap(map);
4
Processamento Digital de Sinais– Aula 11P – Professor Marcio Eisencraft – setembro 2007

10

15

20

25

30

35

40

45

50
10 20 30 40 50 60 70 80 90 100

Obtenha uma ampliação do nariz do palhaço.


COMANDOS UTILIZADOS:

9. Usando o comando filter e a Equação 1 podemos borrar a imagem na horizontal e na ver-


tical usando os seguintes comandos:
N = 25;
Yvert = filter(ones(1,N)/N,1, X);
subplot(221);image(Yvert);
colormap(map);
Yhori = filter(ones(1,N)/N,1, X');
Yhori = Yhori';
subplot(222);image(Yhori);colormap(map);

5
Processamento Digital de Sinais– Aula 11P – Professor Marcio Eisencraft – setembro 2007

10. A imagem pode ser aproximadamente recuperada utilizando um filtro inverso. Por exemplo,
para desfazer o borrão vertical, usamos:
Yvolta = filter(1, ones(1,N)/N, Yvert);
subplot(223);image(Yvolta);colormap(map);

Desfaça o efeito na imagem Yhori.


COMANDOS UTILIZADOS:

B. Imagem no fomato jpeg


O formato jpeg é um dos mais utilizados para codificação de imagens. O comando [X] = i-
mread(FILENAME,’jpeg’) pode ser utilizado para importar uma imagem neste formato
para o Matlab. É gerado um vetor X tridimensional com os componentes RGB da imagem. A
matriz X(:,:,1) contém a informação do vermelho (“red”), a matriz X(:,:,2) a informa-
ção do verde e a matriz X(:,:,3) a informação do azul (“blue”).
O comando IMWRITE(A,FILENAME,’jpeg’) grava a matriz A no arquivo FILENA-
ME.jpg .
Muitos outros formatos são possíveis. Leia o help dos comandos acima para mais informações.
A seguinte seqüência de comandos lê a figura moinho.jpg e mostra suas componentes:
X = imread('moinho.jpg','jpeg');
Xred = X(:,:,1);

6
Processamento Digital de Sinais– Aula 11P – Professor Marcio Eisencraft – setembro 2007

Xgreen = X(:,:,2);
Xblue = X(:,:,3);
subplot(221);image(X); title('moinho.jpg');
subplot(222);image(Xred); title('Componente red');
subplot(223);image(Xgreen); title('Componente green');
subplot(224);image(Xblue); title('Componente blue');

moinho.jpg Componente red

200 200

400 400

600 600

800 800

1000 1000

1200 1200
200 400 600 800 200 400 600 800

Componente green Componente blue

200 200

400 400

600 600

800 800

1000 1000

1200 1200
200 400 600 800 200 400 600 800

Num arquivo jpeg, as cores podem ser trabalhadas separadamente. Por exemplo, os seguintes
comandos aumentam a intensidade do verde da imagem. Tente outras configurações de cores.
X = imread('moinho.jpg','jpeg');
Xred = X(:,:,1);
Xgreen = X(:,:,2);
Xblue = X(:,:,3);
Xgreennovo = double(Xgreen)*3;
Xrednovo = double(Xred);
Xbluenovo = double(X(:,:,3));
Xnovo(:,:,1) = uint8(Xrednovo);
Xnovo(:,:,2) = uint8(Xgreennovo);
Xnovo(:,:,3) = uint8(Xbluenovo);
subplot(221);image(X); title('moinho.jpg');
subplot(222);image(Xnovo); title('Cores modificadas');

7
Processamento Digital de Sinais– Aula 11P – Professor Marcio Eisencraft – setembro 2007

C. O que está escrito?


A seguinte foto foi tirada de uma placa com o carro em movimento. Ela esta armazenada no ar-
quivo testeplacaverm.mat

50

100

150

200

250

300

350

400

450

500
200 400 600 800 1000 1200

Carregue esta imagem e, usando as técnicas aprendidas, identifique o que está escrito na placa.
RESPOSTA E COMANDOS UTILIZADOS:

8
Processamento Digital de Sinais – Aula 12P – Professor Marcio Eisencraft – outubro 2007

Aula 12P- Questões da prova P2

1. (PROAKIS; MANOLAKIS, 1996, p. 139) (2,0) Calcule a convolução y [ n ] = x [ n ] ∗ h [ n ]


do seguinte par de sinais:
⎧⎪1, n = −2, 0,1
⎪⎪
x [ n ] = ⎪⎨ 2, n = −1
⎪⎪
⎪⎪ 0, caso contrário
⎪⎩
h [n ] = δ [n ] − δ [n − 1] + δ [n − 4 ] + δ [n − 5 ]

2. (OPPENHEIM; WILLSKY; YOUNG; 1983, p. 129)


(a) (0,5) Considere a interconexão de sistemas LIT mostrada na figura a seguir. Expresse a res-
posta impulsiva global h [ n ] em termos de h1 [ n ] , h2 [ n ] , h3 [ n ] , h4 [ n ] e h5 [ n ] .

h2 [ n ]

x [n ] + y [n ]
h1 n
[ ] + +

-
h3 [ n ] h4 [ n ]

h5 [ n ]

(b) (1,0) Determine h [ n ] quando

h1 [ n ] = 4
2()
1 n
{ u [ n ] − u [ n − 3 ]}

h2 [ n ] = h3 [ n ] = ( n + 1 ) u [ n ]
h4 [ n ] = δ [ n − 1 ]
h5 [ n ] = δ [ n ] − 4δ [ n − 3 ]
(c) (0,5) Esboce a resposta do sistema da parte (b) se x [ n ] for o sinal mostrado a seguir.

1
Processamento Digital de Sinais – Aula 12P – Professor Marcio Eisencraft – outubro 2007

2.5

1.5

x[n]
0.5

-0.5

-1

-1.5
-6 -4 -2 0 2 4 6 8
n

3. (OPPENHEIM; WILLSKY; YOUNG; 1983, p. 148) (1,5) Considere o sistema LIT inicial-
mente em repouso (condições iniciais nulas) e descrito pela equação de diferenças:
y[n ] + 2 y[n − 1] = x[n] + 2 x[n − 2] .
Encontre a resposta deste sistema à entrada mostrada na figura a seguir resolvendo a equação de
diferenças recursivamente para − 2 ≤ n ≤ 7 .

4. (PROAKIS; MANOLAKIS, 1996, p. 307) (1,5) Determine a seqüência de saída do sistema


com resposta impulsiva

( )un
n
1
h n =
[ ] [ ]
2

2
Processamento Digital de Sinais – Aula 12P – Professor Marcio Eisencraft – outubro 2007

n

quando sua entrada é a seqüência exponencial complexa x n = Ae [ ] 2 .

5. Considere um sistema LTI com a resposta impulsiva dada por h1[n] = (0.9) n u[n] .
a) (0,5) Escreva os comandos para fazer um gráfico da resposta impulsiva no intervalo
0 ≤ n ≤ 40
b) (0,5) Escreva os comandos para calcular e fazer um gráfico da resposta do sistema para a
entrada degrau unitário x[n] = u[n] no intervalo 0 ≤ n ≤ 20
c) (0,5) Escreva os comandos para calcular a resposta do sistema para o pulso retangular
x[n] = u[n] − u[n − 10] e fazer um gráfico no intervalo 0 ≤ n ≤ 20
d) (0,5) Considerando o sistema anterior em cascata com o sistema 2, descrito por
⎧⎪ x [n / 2], se n par
y[n ] = ⎪⎨ ,
⎪⎪ 0, se n ímpar

conforme figura a seguir, escreva comandos para calcular e fazer gráfico da saída global do
sistema para entrada pulso retangular x[n] = u[n] − u[n − 10] no intervalo 0 ≤ n ≤ 20 .

x [n ] y [n ]
Sistema 1 Sistema 2

3
Processamento Digital de Sinais – Aula 13P – Professor Marcio Eisencraft – abril 2007

Aula 13P –Séries de Fourier de tempo discreto usando o Matlab


Bibliografia
ƒ HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 240-241.
ƒ INGLE, Vinay K.; PROAKIS, John G. Digital signal processing using Matlab. Pacific Grove; Albany:
Brooks/Cole, c2000. 418 p. ISBN 0534371744. Páginas 117-121.

• A série de Fourier de tempo discreto (SFTD) é a única representação de Fourier que tem
valores discretos tanto no tempo como em freqüência e, consequentemente, é adequada
para implementação direta no Matlab. Os comandos fft e ifft podem ser usados para
avaliar a SFTD.
• Dado um vetor x de comprimento P que representa um período de um sinal com período
P , z[p] , o comando:
>> a = fft(x)/N
produz um vetor a de tamanho P que contém os coeficientes da SFTD, c m .

• O Matlab supõe que os somatórios nas equações que definem a SFTD vão de 0 a P − 1 ,
de forma que os primeiros elementos de x e a correspondem a z[0] e c 0 , respectivamen-

te, enquanto os últimos elementos correspondem a z[P − 1] e c P −1 .

• Similarmente, dados os coeficientes da SFTD num vetor a, o comando:


>> x = ifft(x)*N
produz um vetor x que representa um período para a forma de onda no tempo.
• Tanto fft quanto ifft são computadas utilizando-se um algoritmo eficiente numerica-
mente ou târkfq denominado vtcpuhqtocfc"târkfc"fg"Hqwtkgt. O desenvolvimento deste
algoritmo será estudado em disciplinas posteriores.

Exercícios
1. Considere o seguinte sinal periódico:

1
Processamento Digital de Sinais – Aula 13P – Professor Marcio Eisencraft – abril 2007

(a) Calcule, usando as fórmulas vistas em aula, os coeficientes da série de Fourier deste sinal
c m para 0 ≤ m ≤ P 0 − 1 .

RESOLUÇÃO:

(b) Use o Matlab para confirmar os resultados do item (a).


Comandos e comentários:

2. (a) Calcule os coeficientes da série de Fourier do sinal


⎛π 3π ⎞
z[p] = 1 + sin ⎜ p + ⎟.
⎝ 12 8 ⎠
(b) Confirme seu resultado utilizando o Matlab.
RESOLUÇÃO:

2
Processamento Digital de Sinais – Aula 13P – Professor Marcio Eisencraft – abril 2007

3. (OPPENHEIM; WILLSKY; NAWAB, 1997, p. 218) Considere o seguinte sinal retangular


periódico com período P 0 = 32 . Use o Matlab para determinar as componentes da série
de Fourier deste sinal e esboce seu espectro.

RESOLUÇÃO:

4. (HAYKIN; VEEN, 2000, p.241) Determine os coeficientes da SFTD para o sinal periódi-
co descrito a seguir. Utilize o Matlab para conferir seus resultados.

RESOLUÇÃO:

3
Processamento Digital de Sinais – Aula 14P – Professor Marcio Eisencraft – setembro 2007

Aula 14P –Resposta em freqüência de filtros digitais


Bibliografia
ƒ HAYKIN, Simon S.; VAN VEEN, Barry. Sinais e sistemas. Porto Alegre: Bookman, 2001. 668 p. ISBN
8573077417. Páginas 264-266.
ƒ INGLE, Vinay K.; PROAKIS, John G. Digital signal processing using Matlab. Pacific Grove; Albany:
Brooks/Cole, c2000. 418 p. ISBN 0534371744. Páginas 53-60.

ƒ Veremos nesta aula exemplos de cálculos de resposta em freqüência usando o Matlab.


Lembrando as aulas teóricas, definimos a hwpèçq"fg"ukuvgoc<

J (| ) = ∑ j[m ]|
m = −∞
−m

e a tgurquvc"go"htgs°ípekc"como

( ) = ∑ j[m ]g

lΩ − l Ωm
J g .
m = −∞

ƒ Vimos também que para uma entrada


⎛ 2π ⎞
lm ⎜⎜ ⎟p
z[p] =

∑c g
m = P0
m
⎝ P0 ⎠

a resposta de um sistema LIT é dada por:

⎛ l P2π m ⎞ lm ⎛⎜⎜ P2π ⎞⎟⎟ p


{[p] = ∑ cm J ⎜ g 0 ⎟ g ⎝ 0 ⎠ ,
⎜ ⎟
m = P0 ⎝ ⎠
ou seja, os coeficientes da série de Fourier do sinal de entrada ficam multiplicados pela res-
posta em freqüência do sistema.

ƒ O comando freqz do Matlab pode ser utilizado para se obter a resposta em freqüência de
um dado sistema definido pela equação de diferenças:
a 1 y[n] + a 2 y[n - 1] + … + a N +1 y[n - N ] = b1 x[n] + b 2 x[n - 1] + ... + b O +1 x[n - M] .

Definindo os vetores B=[b1 b2 ... bM+1] e A=[a1 a2 ... aN+1] da mesma for-
ma como foi feito para o comando filter, o comando
>>[H,W] = freqz(B,A,N);

1
Processamento Digital de Sinais – Aula 14P – Professor Marcio Eisencraft – setembro 2007

retorna N pontos da resposta em freqüência do filtro no intervalo [0, π ] .


Para obtermos um gráfico do módulo desta resposta, por exemplo, podemos fazer:
>> plot(W,abs(H));
É comum utilizar-se
>> plot(W/pi,abs(H));
para que o gráfico fique mais fácil de ser lido (normalizado com relação a π ).

Exercícios
1. Considere o seguinte sistema de tempo discreto conhecido como fkhgtgpekcfqt de 1ª or-
dem:
1
{[p] = (z[p] − z[p − 1]) .
2
Para este sistema, pede-se:
(a) a resposta impulsiva j[p] ;

(b) a função de sistema J ( | ) .

( )
(c) a resposta em freqüência J g lΩ .

( )
(d) faça um gráfico do módulo e da fase de J g lΩ para − π ≤ Ω ≤ π .

2
Processamento Digital de Sinais – Aula 14P – Professor Marcio Eisencraft – setembro 2007
(e) este filtro é passa-altas ou passa-baixas?

(f) utilizando o comando freqz faça um gráfico no Matlab do módulo da resposta em fre-
qüência deste filtro e compare com o resultado do item (a).

2. A seguinte equação de diferenças representa um filtro IIR passa-baixas do tipo chamado


Filtro de Chebyshev:
{[p] − 0,7820 {[p − 1] + 1,2872 {[p − 2] − 0,7822 {[p − 3] + 0,4297 {[p − 4] − 0,1234 {[p − 5] = 0,032 z[p] +
+ 0,1608 z[p − 1] + 0,3217 z[p − 2] + 0,3217 z[p − 3] + 0,1683z[p − 4] + 0,03217 z[p − 5]

Para este filtro pede-se:


( )
(a) Obtenha no Matlab o módulo da resposta em freqüência J g lω deste filtro.

(b) Qual a sua freqüência de corte? Ou seja, a partir de qual freqüência a resposta em freqüên-
cia deste filtro cai abruptamente?

(c) Digite e execute o seguinte uetkrv. Explique os gráficos obtidos e os sons ouvidos.
%Exemplo de Filtro Passa-Baixas Chebyshev

fa = 2000; %frequencia de amostragem


n = 0:3*fa-1; %numero de pontos = senoides vao tocar por 3 segundos
f1 = 200; %frequencia do Tom 1
f2 = 800; %frequencia do Tom 2
x1 = sin(2*pi*f1*n/fa); % Amostragem - x1[n] = sin(0.2*pi*n);
x2 = sin(2*pi*f2*n/fa); % Amostragem - x2[n] = sin(0.8*pi*n);

%Coeficientes do filtro
B = [0.0322 0.1608 0.3217 0.3217 0.1608 0.0322];
A = [1.0000 -0.7820 1.2872 -0.7822 0.4297 -0.1234];

3
Processamento Digital de Sinais – Aula 14P – Professor Marcio Eisencraft – setembro 2007
y1 = filter(B,A,x1); %Filtragem
y2 = filter(B,A,x2); %Filtragem

% Ouvindo os sinais - O seguinte comando gera nos autofalantes os si- %


nais x1 e x2 seguido de 0.5 segundo de silencio e a seguir o sinal y1 % e
y2 - saidas do filtro
sound([x1 zeros(1,0.5*fa-1) y1 zeros(1,0.5*fa-1)],fa);
sound([x2 zeros(1,0.5*fa-1) y2],fa);

%Graficos
figure(1); title('Senoide de 200Hz)');
subplot(211); plot(0:100,x1(1:101)); ylabel('x_1[n]');%Sinal de entrada
subplot(212); plot(0:100,y1(1:101)); ylabel('y_1[n]');%Sinal de saida
figure(2); title('Senoide de 800Hz)');
subplot(211); plot(0:100,x2(1:101)); ylabel('x_2[n]');%Sinal de entrada
subplot(212); plot(0:100,y2(1:101)); ylabel('y_2[n]');%Sinal de saida

Você também pode gostar