Anda di halaman 1dari 46

Francisco Jos de Oliveira Restivo

Anbal Joo de Sousa Ferreira


Departamento de Engenharia Electrotcnica e de Computadores
Faculdade de Engenharia da Universidade do Porto

Processamento Digital de Sinal


Aulas Prticas
Ano Lectivo 2004/05

Outubro de 2004
Processamento Digital de Sinal 2004/05

Este conjunto de problemas foi utilizado nas aulas prticas da disciplina de Processamento Digital de Sinal da
FEUP ao longo dos ltimos anos.
Em cada ano, foram acrescentados novos problemas, de acordo com a evoluo do programa da disciplina, e
mantidos a maioria dos anteriores, para facilitar aos alunos o estudo.
Esto assinalados com um * os problemas resolvidos na turma prtica de um dos autores no ano lectivo de
2004/05.

Os autores

2004 F. J. Restivo / A. J. Ferreira 2 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

Aula n 1

* Problema 1
Considere o sistema discreto
x( n) + 2 x( n 1) + x( n 2)
y( n) = .
4
a. Determine a sua resposta impulsional h(n).
b. Determine a sua resposta em frequncia H(e j ).
c. Determine a sua resposta y(n) entrada x(n) = [0.5, 1, 1, 0.5].
1
d. Determine a sua resposta y(n) entrada x ( n ) = cos( n + ).
2 3
Soluo:
a. h(n) = [0.25, 0.5, 0.25]
1 + cos j
b. H(e j ) = e
2
c. y(n) = [0.5, 1, 1, 0.5] * [0.25, 0.5, 0.25]=[0.125, 0.5, 0.875, 0.875, 0.5, 0.125]

j 1 j 2
d. H( e 2
e )=
2
1 1 1 1
y( n) = cos( n + ) = cos( ( n 1) + )
2 2 3 2 2 2 3

* Problema 2
A resposta impulsional de um sistema discreto H

h(n) = 2-n u(n) .

Determine e represente graficamente a sua resposta y(n) entrada


x(n) = u(n) - u(n-10) .

Soluo:
+ min(n ,9 )
y( n) = x (k ) h( n k ) = 2 ( n k ) = 2 n 2k
k = 0 k 9 k =0
n k 0

y(n)= 0, n < 0
2-2-n, 0 n 9
(2-2-10)2-(n-10), n > 9
Um programa Matlab muito simples
n=[0:20];
h=2.^(-n);
x=[ones(1,10) zeros(1,11)];
y=conv(h,x);
subplot(2,1,1); stem(n,y(1:21))
permite obter uma representao grfica deste sinal discreto

2004 F. J. Restivo / A. J. Ferreira 3 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

1.5

0.5

0
0 2 4 6 8 10 12 14 16 18 20

Problema 3
Determine a resposta impulsional do sistema discreto
y(n) = 0.3x(n) + 0.7y(n-1) .
Soluo:
h(n) = 0.3.0.7nu(n) .

Problema 4
Considere os seguintes sistemas discretos
a. y(n) = 0.1x(n) + 0.1x(n-1)+0.1x(n-2)++0.1x(n-9)
b. y(n)=0.1x(n)-0.1x(n-10)+y(n-1).
Detemine a sua resposta impulsional e classifique-os quanto recursividade e ao comprimento da resposta
impulsional.
Soluo:
Ambos os sistemas tm a resposta impulsional (porqu?)
h(n) = 0.1[u(n)-u(n-10)].
Assim, so ambos do tipo FIR, sendo o primeiro um sistema no recursivo e o segundo um sistema recursivo.

* Problema 5
Uma escola ensina um nico curso com a durao de um ano.
Sejam x(n) o nmero de alunos admitidos no ano n e y(n) o nmero de alunos que frequenta o ano n, e
suponha que todos os anos 20% dos alunos reprovam e que um aluno prescreve ao fim de trs inscries.
a. Escreva a equao s diferenas que regula este sistema discreto.
b. Determine e interprete a sua resposta impulsional h(n).
Soluo:
a. Frequentam o ano n os alunos admitidos, mais 20% dos alunos que frequentaram o ano anterior, menos
os admitidos h trs anos e que reprovaram trs vezes
y(n) = x(n) + 0.2y(n-1) 0.23x(n-3)
ou ento os admitidos no ano n mais 20% dos admitidos no ano n-1 mais 20% de 20% dos admitidos
no ano n-2
y(n) = x(n) + 0.2x(n-1) + 0.04x(n-2).
b. A resposta impulsional deste sistema
h(n) = [1 0.2 0.04].

2004 F. J. Restivo / A. J. Ferreira 4 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

Se num determinado ano entrarem os primeiros 1000 alunos, e no entrarem mais nos anos seguintes (a
entrada um impulso), frequentaro a escola nesse ano, 1000 alunos, no ano seguinte, 200, no terceiro
ano, 40, e os oito que reprovam, prescrevem (e a escola encerra...).

Problema 6 (O&S, 2.3)


Classifique os sistemas seguintes no que respeita estabilidade, causalidade, linearidade e invarincia
translaco:
a. y(n) = g(n)x(n) , em que g(n) conhecido d. y(n) = x(n n 0)
n e. y(n)=e x(n)
b. y(n ) = x (k ) f. y(n) = ax(n) + b
k= n0
g. y(n) = x(-n)
n +n 0
c. y( n) = x( k) h. y(n) = x(n) + 3u(n+1)
k =n n 0

Soluo:
Estabilidade Causalidade Linearidade Invarincia translaco
a. sim, se |g(n)| for limitado sim sim no
b. no no sim no
c. sim no sim sim
d. sim no sim sim
e. sim sim no sim
f. sim, se a e b finitos sim no no
g. sim no sim no
h. sim sim no no

Problema 7 (O&S, 2.11)


Determine a resposta ao degrau unitrio do sistema com resposta impulsional

h(n) = a -n u(-n), 0 < a < 1 .

Soluo:
+ min(n ,0 )
y( n) = h ( k ) x ( n k ) = a k = a k
k = k 0 k =
n k 0

a n
y(n)= ,n 0
1 a
1
,n > 0
1 a

2004 F. J. Restivo / A. J. Ferreira 5 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

Aula n 2

* Problema 1
a. Determine a resposta impulsional h(n) e a resposta em frequencia H(e j ) de um filtro de mdia de
comprimento 5
x( n) + x( n 1) + x (n 2) + x ( n 3) + x( n 4)
y( n) =
5
b. Escreva um programa em Matlab que represente graficamente o mdulo e a fase de H(ej).
Soluo:
a. h(n) = [0.2, 0.2, 0.2, 0.2, 0.2]
5 5
sen senc
j 1 + e j + e 2 j + e 3j + e 4 j 1 1 e 5j 2 e 2 j = 2 e 2 j ,
H( e ) = = =
5 5 1 e j
5sen senc
2 2
ou, de outro modo,

1 + e j + e 2 j + e 3j + e 4 j 1 + 2 cos() + 2 cos(2) 2 j
H( e j ) = = e
5 5
b. w=0:2*pi/256:2*pi-2*pi/256;
H=(sinc(5*w/(2*pi))./sinc(w/(2*pi))).*exp(-2*j.*w);
subplot(2,1,1); plot(w,abs(H)); axis([0 2*pi 0 1]);
subplot(2,1,2); plot(w,angle(H)); axis([0 2*pi -pi pi]);

0.8

0.6

0.4

0.2

0
0 1 2 3 4 5 6

-2

0 1 2 3 4 5 6

* Problema 2
Determine e represente graficamente a resposta impulsional h(n) de um filtro passa baixo ideal com frequencia
superior de corte = 0.5 rad .
Soluo:
0 .5


1 1 1 j0.5n 2 jsen( 0. 5n ) 0.5 0.5n
h ( n) = e j n d = (e e j 0. 5n ) = = senc
2 2 jn 2 jn
0 .5

em que

2004 F. J. Restivo / A. J. Ferreira 6 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

sen ( x)
senc( x) =
x

0.2

0.15

0.1

0.05

-0.05
-20 -15 -10 -5 0 5 10 15 20

Problema 3
a. Se a transformada de Fourier de h(n) for H(ej), qual a transformada de Fourier de (-1)nh(n)?
b. Determine a resposta impulsional h(n) de um filtro passa alto ideal com frequncia inferior de corte
0.75 rad.
Soluo:
+ + +
a.
n =
( 1) n h( n) e j n =
n =
e jn h( n) e j n = h( n) e
n =
j( ) n
= H ( e j( ) )

h uma translaco de rad


b. trs possibilidades:
i) a partir da definio
1. 25
( 1) n

1 1 1 j1.25n 1 1 j 0. 25n n
h ( n) = e j n d = (e e j0.75n ) = (e e j0.25n ) e j n = senc
2 2 jn 2 jn 4 4
0 .75

ii) verificando que o filtro pedido se obtem por uma translaco de da resposta em frequncia de um
filtro passa baixo ideal com frequncia superior de corte 0.25 rad, e utilizando o resultado da alnea
anterior, obtem-se directamente

( 1) n n
h ( n) = senc
4 4
iii) ou ainda notando que o filtro pedido se obtem subtraindo do filtro identidade um filtro passa baixo
ideal com frequncia superior de corte 0.75 rad
3 3n
h ( n) = ( n) senc .
4 4
Podemos verificar facilmente que se trata da mesma soluo. No grafico a seguir representam-se as
t 3 3t
funes senc e senc cuja amo stragem em t=n, a menos do factor (1) n na primeira e da
4 4 4
parcela ( n) na segunda, coincide

0.5

-0.5

-1
-10 -8 -6 -4 -2 0 2 4 6 8 10

O programa Matlab utilizado foi

2004 F. J. Restivo / A. J. Ferreira 7 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

clf
n=-10:10; t=-10:0.1:10;
h1=((-1).^n).*sinc(n/4)/4; ha1=sinc(t/4)/4;
subplot(2,1,1); stem(n,h1);
hold on; subplot(2,1,1); plot(t,ha1); grid on
h2=-3*sinc(3*n/4)/4 + [zeros(1,10) ones(1,1) zeros(1,10)];
ha2=-3*sinc(3*t/4)/4;
subplot(2,1,1); stem(n,h2);
hold on; subplot(2,1,1); plot(t,ha2); grid on

* Problema 4


a. Determine a resposta impulsional do filtro passa banda ideal com banda de passagem , rad.
4 2
b. Usando Matlab, e considerando apenas os 128 termos mais significativos de h(n), represente
graficamente a magnitude da resposta em frequncia do filtro.
Soluo:
a. Usando o resultado do problema 2., e atendendo a que o filtro pedido se pode obter subtraindo a um
filtro passa baixo com frequncia superior de corte /2 um filtro passa baixo com frequncia superior de
corte /4
1 n 1 n
h ( n) = senc senc .
2 2 4 4
b. A representao grafica poder-se-ia fazer do seguinte modo
n=-64:1:63;
h=0.5*sinc(n/2)-0.25*sinc(n/4);
[H,F]=freqz(h,[1],256);
subplot(2,1,1); plot(F/pi,abs(H)); % frequencia normalizada

1.5

0.5

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

Problema 5
A parte real da transformada de Fourier de um sinal discreto x(n) real e causal
XR(e j ) = 1 + cos() .
Determine a sua parte imaginria.
Soluo:

e j + e j
1 + cos() = 1 + [0.5, 1, 0.5] parte par de x(n)
2
x(n) = [1, 1] [-0.5, 0, 0.5] parte mpar de x(n) XI(e j ) = -jsen()

Problema 6
Considere a seguinte associao de sistemas discretos

2004 F. J. Restivo / A. J. Ferreira 8 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

x(n) h 2(n)=nu(n) y(n)


+

h 1(n)=(n-1)

a. Determine a resposta impulsional h(n) e a resposta em frrequncia H(e j ) do sistema global.


b. Determine a equao s diferenas que relaciona y(n) com x(n).
c. Determine quantas operaes de adio e multiplicao reais so necessrias para produzir uma
amostra sada.
Soluo:
a. h(n)=[(n)+ (n-1)]* nu(n)= nu(n)+ n-1u(n-1)

[
H(e j )= 1+ e j ]1 1e j
=
1 + e j
1 e j
b. y(n)=x(n)+x(n-1)+y(n-1)
c. 2 multiplicaes, 2 adies e duas posies de memria.

Problema 7 (O&S, 2.51)

A resposta impulsional de um sistema discreto LI dada por h(n) = n u(n), com ||<1.


j n
a. Determine y1 (n) , a resposta do sistema entrada x1 (n) = e 2 .


b. Com base na alnea anterior, determine y 2 (n) , a resposta do sistema entrada x 2 (n) = cos( n) .
2

j n
c. Determine y 3 (n) , a resposta do sistema entrada x 3 (n) = e 2 u( n) .

d. Como se comparam y 3 (n) e y1 (n) para valores elevados de n?

Soluo:
+


j n j n 1
a. H(e )= e =
n =0 1 e j

j ( n jarctg)
jarctg
1 j n 1 j n e j n e 2
y1 ( n) = e 2 = e 2 = e 2 =
j
1 + j 1+2 1+ 2
1 e 2

1 j 2 n 1 j 2 n
b. x 2 ( n) = e + e
2 2

1 1 j n 1 1 j n 1 1 j n 1 1 j n
y 2 ( n) = e 2 + e 2 = e 2 + e 2
2 j
2 j
2 1+ j 2 1 j
1 e 2 1 e 2

2004 F. J. Restivo / A. J. Ferreira 9 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05


j ( n arctg ) j ( n jarctg) cos( n jarctg )
1 e jarctg j 2 n 1 e jarctg j 2 n 1 e 2 1e 2
2
y 2 ( n) = e + e = + =
2 1+2 2 1+ 2 2 1+2 2 1+ 2 1+ 2
(poderamos ter escrito este resultado imediatamente, usando a noo de resposta em frequncia)
c. (aqui, no podemos usar esta noo... porqu?)

0, n<0
n
j ( n k) j ( n k ) j ( n +1 )


y 3 ( n) = ke 2 = k
e 2 = j n 1 n +1 e 2 1 ( j ) n +1 j 2 n
e 2 = e , n0
k 0
n k 0
k= 0
j
1 + j
1 e 2

1 ( j ) n +1 j 2 n
y 3 ( n) = e u (n )
1 + j

d. Para valores elevados de n, as duas respostas confundem-se (aps terminar o fenmeno transitrio)

2004 F. J. Restivo / A. J. Ferreira 10 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

Aula n 3

* Problema 1
Crie um ficheiro .m de comandos Matlab que execute as seguintes operaes:
- solicita que o utilizador fornea um valor inteiro N atravs do teclado (comprimento de um sinal),
- constri o vector linha, n , com os inteiros 0, 1, , N-1,

- cria o vector linha h = n com = 0.95 exp( j / 3 ) ,

- representa graficamente o valor absoluto do vector h , usando para graduar o eixo das abcissas o
vector n ; acrescente tambm os comandos seguintes:
xlabel('n \rightarrow');
ylabel('Magnitude \rightarrow');
legend('Envolvente')
title('Exponencial Complexa');
(Obs: use sempre um comando pause; depois de um comando plot ou stem )
- inicializa uma nova janela grfica atravs do comando figure(2); esta figura ser posteriormente
dividida para representar trs grficos na horizontal (i.e. dividir-se- numa matriz 31),
- usa o comando stem para representar na faixa superior da figura 2, a parte imaginria do vector h ,
usando para graduar o eixo das abcissas o vector n ;
- cria o vector linha x ,com N elementos e cujos valores no-nulos so dados pela sequncia discreta
u(n-20)-u(n-30),
- usa o comando stem para representar na faixa intermdia da figura 2, o vector x , usando para graduar
o eixo das abcissas o vector n ;
- usa o comando conv para colocar no vector y o resultado da convoluo discreta entre a parte
imaginria do vector h e o vector x ;
- imprime a mensagem Convoluo j efectuada!,
- mostra o resultado dos comandos size(y) e length(y) (critique a diferena),
- usa o comando stem para representar na faixa inferior da figura 2, os primeiros 100 elementos do
vector y atravs do smbolo pentagram, e usando para graduar o eixo das abcissas o vector n ;
- coloca etiquetas adequadas no eixo das abcissas e no das ordenadas da figura 2.
Soluo:
%
% Processamento Digital de Sinal
% EEC4162 2004/2005
% Problema 3.1
% Convoluao discreta
% ajf/fjr
%
N=input('Fornea um valor inteiro: ');
n=[0:1:N-1];
alpha=0.95*exp(j*pi/3);
h=alpha.^n; % produz um vector
figure(1);
plot(n,abs(h));
xlabel('n \rightarrow');
ylabel('Magnitude \rightarrow');

2004 F. J. Restivo / A. J. Ferreira 11 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

legend('Envolvente');
title('Exponencial complexa');
disp ('Prima uma tecla'); pause;
figure(2); subplot(3,1,1);
stem(n,imag(h));
x=[zeros(1, 20) ones(1,10) zeros(1,N-30)];
subplot(3,1,2); stem(n,x);
y=conv(imag(h),x);
disp('Convoluao ja efectuada !');
disp('size(y):'); disp(size(y));
disp('length(y):'); disp(length(y));
len=min(N,100);
subplot(3,1,3); stem(n(1:len),y(1:len),'p');

* Problema 2
Com referncia ao problema anterior, esclarea:
a. Os comandos sum(h.*conj(h)) e h*h' produzem o mesmo resultado, porqu ?
b. Qual a diferenas entre os comandos h*h' e h*h.' ?
c. Onde atrs se usou o comando conv, poder-se-ia ter utilizado o comando filter ?
d. Qual a diferena entre os comandos who e whos ?

2004 F. J. Restivo / A. J. Ferreira 12 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

Aula n 4

Problema 1
Considere um filtro analgico passa baixo elementar do tipo RC, com R = 10 k e C = 2 F.
a. Determine a sua resposta em frequncia Hc (j).
b. Determine a sua resposta impulsional h c (t).
c. Determine a resposta em frequncia do sistema discreto cuja resposta impulsional uma amostragem
de h c (t) a uma frequncia igual a 10 vezes a frequncia de corte do filtro analgico.
d. Determine a respectiva equao s diferenas.
Soluo:

( jC) 1 1
a. H c ( j) = =
R + ( jC) 1 1 + jRC

frequncia angular de corte (RC)-1


t
1 RC
b. h c (t ) = e u( t )
RC
c. frequncia angular de amostragem 10(RC)-1; perodo de amostragem T = RC/5
n RC / 5
RC / 5 RC n
h ( n) = Th c ( nT) = e u( n) = e 5 u( n)
RC 5

(faz-se normalmente h ( n) = Th c ( nT ) para que a amplitude de H( e j ) seja independente da


frequncia de amostragem)
+
n

j 1
H (e ) = e 5 e j n =
5 n =0 5
1 e 5 e j



d. y( n) = x( n) + e 5 y( n 1) = 0.628 x( n ) + 0.533 y( n 1)
5

* Problema 2
Repita o problema anterior, mas admitindo que o que agora pretende que a resposta ao degrau unitrio do
sistema discreto seja uma amostragem com perodo T da resposta ao degrau unitrio do sistema contnuo.
Soluo:
t

d c ( t) = (1 e RC )u ( t)
nT
n
d( n) = u( n) e RC u( n) u( n) e 5 u (n )

pelo que podemos saber a transformada em z de uma entrada, u(n), e da respectiva sada d(n)
1
U(z ) = , | z |> 1
1 z 1

2004 F. J. Restivo / A. J. Ferreira 13 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

1 1
D ( z) = 1

, | z |> 1
1 z
1
1e 5 z
e ento
1 1
1

1z
1e 5 z 1 1 z 1 (1 e 5 ) z 1
D ( z) = = 1
=
, | z |> e 5 (porqu?)
1
1 1
1 z 1 1e 5 z 1e 5 z

A equao s diferenas
y(n) = 0.4665 x(n-1) + 0.5335 y(n-1)
e o diagrama zero-polar pode obter-se atravs de
zplane([0 0.4665][1 -0.5335]);

0.8

0.6

0.4

0.2

-0.2
Imaginary Part
-0.4

-0.6

-0.8

-1

-1 -0.5 0 0.5 1
Real Part

Problema 3
Determine a frequncia mnima a que deve amostrar o sinal contnuo de banda limitada xc (t) = senc2(10t) de
modo a evitar a ocorrncia de aliasing.
Soluo:
O sinal contnuo cuja transformada de Fourier um pedestal de largura 2 M centrado em 0
M


1 1 1 j M t
x( t) = e jt d = (e e j M t ) = M senc( M t ) .
2 2 jt
M

Se a transformada de Fourier de senc(10t) um pedestal de largura 20, a transformada de Fourier de


senc 2(10t) ser um triangulo de largura 40, que deve ser amostrado frequncia angular de amostragem
mnima de 40 rad/s.

Problema 4
Considere os sinais contnuos x1(t) e x2(t), de banda limitada a, respectivamente, 1 e 2 rad/s.
Determine a frequncia mnima de amostragem dos sinais
a. x1(t) + x2(t) ,
b. x1(t) x x2(t) ,

2004 F. J. Restivo / A. J. Ferreira 14 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

c. x1(t) * x2(t) .
Soluo:
a. max( 1, 2)
b. 1 + 2
c. min( 1, 2)

* Problema 5
O sinal discreto x(n), obtido por amostragem com perodo T de um sinal analgico xc (t), tem espectro no nulo
s para || < /2.
Especifique o filtro de reconstruo ideal e compensado que recupera o sinal analgico, usando reconstruo
de ordem zero, com pedestal de largura T.
Soluo:
Reconstruo do impulso unitrio discreto:
h(t) = u(n) u(n T)
Efeito da reconstruo:

T
j T
j
T
j
T
T 2 jsen T T
1e e 2 e 2 j
2 j 2 T j 2
H( j ) = = e 2 = e = Tsenc e
j j j 2
que se representa a seguir para T=1

1.5

0.5

0
-6 -4 -2 0 2 4 6

Filtro de reconstruo ideal e compensado:



H r ( j) = H 1( j ) , se | |
T
0, se no
que igualmente se representa para T=1

1.5

0.5

0
-6 -4 -2 0 2 4 6

* Problema 6
O sinal discreto x(n), obtido por amostragem com perodo T de um sinal analgico xc (t), tem espectro no nulo
s para || < /2.
Suponha que realiza uma interpolao de 1 para 4 do sinal x(n), obtendo o sinal xi(n).

2004 F. J. Restivo / A. J. Ferreira 15 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

a. Esboce um possvel espectro do sinal xi(n).


b. Especifique o filtro de reconstruo ideal e compensado que recupera o sinal analgico a partir de
xi(n), usando reconstruo de ordem zero (com pedestal de largura T/4).
c. Comparando este filtro de reconstruo com o obtido no problema anterior, explique porque os leitores
de discos compactos fazem, em geral, uso de filtros digitais dedicados para fazer interpolao digital?
(um valor comum "8 times oversampling").
Soluo:
A fornecer mais tarde.

Problema 7
Repita a alnea b. do problema anterior, supondo que utiliza a reconstruo de primeira ordem (interpolao
linear).
Soluo:
A fornecer mais tarde.

Problema 8
Considere um sinal dis creto h(n) e a sua transformada em z, H(z).
Determine o sinal discreto cuja transformada em z
a. H(-z) .
b. H(z2) .
Soluo:
+ +
a. H ( z) = h( n)( z) n = (1)n h (n)z n (1)n h(n)
n = n =

+ +
b. H( z 2 ) = h(n)(z 2 ) n = h(n)z 2n h (n / 2), se n par 0, se no
n = n =

Problema 9

z -2
Determine o sinal discreto causal cuja transformada em z H (z ) = .
1 z 5
Soluo:
Basta seguir o seguinte raciocnio

u(n) 1
1 z 1

u(n/5), se n mltiplo de 5 1
0, se no 1 z5

2004 F. J. Restivo / A. J. Ferreira 16 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

u((n-2)/5, se n-2 mltiplo de 5 z 2


0, se no 1 z5

Problema 10
Considere o sistema discreto causal
y(n) = 2x(n) + 0.7y(n-1) - 0.1y(n-2) .
a. Determine a sua funo de transferncia H(z).
b. Represente graficamente, de modo aproximado, a amplitude da sua resposta em frequncia |H(e j )|.
c. Calcule a sua resposta impulsional h(n).
Soluo:

2 2 z2
a. H ( z) = = , | z |> 0.5
1 0. 7z1 + 0. 2z 2 ( z 0. 2)( z 0. 5)

2
b. | H (e j ) = j
|e 0.2 | . | e j 0. 5 |

|H(0)| = 2/(0.8x0.5) = 5 ; |H(1)| = 2/(1.2x1.5) = 1.11

0
-3 -2 -1 0 1 2 3

4z / 3 10 z / 3 4 10
c. H ( z) = + h (n ) = 0.2n u( n) + 0.5n u( n )
z 0. 2 z 0.5 3 3
(ser interessante repetir a resoluo usando o mtodo geral, e verific-la determinando os primeiros
termos de h(n) pelo mtodo da diviso dos polinmios)

Problema 11
Considere o sistema discreto causal com funo de transferncia

1 0.4 z 1
H (z ) = .
1 0.8z 1 + 0.64z 2
a. Localize no plano z os polos e zeros deste sistema e a regio de convergncia de H(z).
b. Calcule a sua resposta impulsional h(n).
c. Determine a equao s diferenas que rege o sistema.
Soluo:

2004 F. J. Restivo / A. J. Ferreira 17 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

0.8

0.6

0.4

0.2

-0.2
Imaginary Part
-0.4

-0.6

-0.8

-1

-1 -0.5 0 0.5 1
Real Part
a.

j
b. = 0. 8e 3

3 n 3 * n
j j ( )
zn (z 0.4) n ( 0.4) ( * ) n ( * 0.4)
h ( n) = (z )(z *) dz = *
+
*
= 2
j 3
2 = 0.8n cos( n) u( n)
3
C

c. y(n) = x(n) 0.4x(n-1) + 0.8y(n-1) 0.64y(n-2)

Problema 12
Os sinais discretos x(n) = 2-nu(n) e w(n) = 3-nu(n) tem transformada em z respectivamente
1 1
X ( z) = , | z |>
1 1 2
1 z
2
e
1 1
W ( z) = , | z |>
1 1 3
1 z
3
e o seu produto x(n)w(n) = 6-nu(n) tem transformada em z
1 1
, | z |>
1 1 6
1 z
6
Derive este resultado utilizando a propriedade da convoluo complexa da transformada z.
Soluo:
Temos de calcular no plano v o integral

1 1 v
1 1 1 1 z 1
v -1dv , | v |> e | |> ,
2j 1 1 z 1 2 v 3
C 1 ( )
2 3 v
com o contorno C satisfazendo as condies impostas pelas regies de convergncia de X(z) e W(z), isto ,
1
<| v |< 3 | z | .
2
Um contorno nessas condies s existir evidentemente se

2004 F. J. Restivo / A. J. Ferreira 18 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

1 1
3 | z |> | z |>
2 6
que ser a regio de convergncia da transformada em z de x(n)w(n).
O integral pode ser calculado pelo mtodo dos resduos, para o que se torna necessrio determinar os polos
da funo integranda
3z
(v 1 )(v 3z) dv , | z |> 6 2 <| v |< 3 | z | ,
1 1 1
2j
C
2
que so 1/2 e 3z.
Como apenas o polo 1/2 se encontra no interior do contorno C, o resduo nesse polo a transformada em z
procurada
3z 1 1
= , | z |> .
1 1 1 6
3z 1 z
2 6

2004 F. J. Restivo / A. J. Ferreira 19 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

Aula n 5

* Problema 1
O sinal contnuo x c ( t) = sin (20t) + cos(40 t) amostrado com perodo de amostragem T. Crie um ficheiro
.m de comandos Matlab que execute as seguintes operaes:
- cria um vector n com os inteiros entre 0 e 49, e cria dois vectores: x1( n) = x c ( nT) com T=1/200, e
x2( n) = x c ( nT) com T=21/200,

- representa os vectores x1(n) e x2(n) em duas faixas da mesma figura, como se ilustra.

Que conclui ? possvel encontrar um outro valor de T que origine um sinal idntico aos obtidos ?
Soluo:
%
% Processamento Digital de Sinal
% EEC4162 2004/2005
% Problema 5.1
% Aliasing
% {ajf,fjr}@fe.up.pt
%
close all;
clear all;

T1=1/200;
T2=21/200;
t=[0:49];
x1 = sin(20*pi*t*T1)+cos(40*pi*t*T1);
x2 = sin(20*pi*t*T2)+cos(40*pi*t*T2);

subplot(2,1,1);
stem(t, x1,'.');
xlabel('n \rightarrow');
ylabel('Amplitude \rightarrow');
subplot(2,1,2);
stem(t, x1,'.');
xlabel('n \rightarrow');
ylabel('Amplitude \rightarrow');
% sao iguais !
% qualquer T=(20*k+1)/200, k inteiro, produz o mesmo resultado

2004 F. J. Restivo / A. J. Ferreira 20 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

* Problema 2
Considere um sistema discreto e causal, do tipo FIR, e com zeros em z0=0.3+j0.4, z0*, 1/z0, e 1/z0*., e tambm em
z1=0.6+j0.8, z1*, e z2=1. Crie um ficheiro .m de comandos Matlab que execute as seguintes operaes:
- cria um vector coluna Z com os zeros do sistema, e um outro vector coluna P com os polos do sistema,
- usa o comando Matlab zp2tf para converter os zeros e polos do sistema para polinmios numerador
e denominador da funo de transferncia do sistema (i.e. a transformada Z):
[num den]=zp2tf(Z, P, 1.0);
- usa o comando Matlab zplane com os vectores num e den para representar os polos e zeros do
sistema no plano Z (introduza o comando pause imediatamente a seguir). De que modo que esta
representao denota a caracterstica de fase linear do sistema ?
- usa o comando Matlab impz com os vectores num e den para colocar no vector h a resposta
impulsional do sistema, e usa de seguida o comando stem para representar esta resposta (introduza o
comando pause imediatamente a seguir). De que modo que esta representao denota a
caracterstica de fase linear do sistema ?
- usa os seguintes comandos:
figure(2)
subplot(2,1,1);
[H, W]=freqz(num, den);
plot(W/pi, 20*log10(abs(H)));
xlabel('Frequencia Normalizada');
ylabel('Amplitude (dB)');
subplot(2,1,2);
plot(W/pi, grpdelay(num, den));
xlabel('Frequencia Normalizada');
ylabel('Atraso de Grupo (amostras)');
pause;
a. O que que estes comandos permitem representar? De que modo que as duas representaes
grficas anteriores permitem j antecipar a representao de atraso de grupo obtida ?
b. Critique a afirmao: o seguinte comando Matlab no decompe o sistema discreto anterior, em sub-
sistemas preservando a caracterstica de fase linear:
[sos, g]=zp2sos(Z, P, 1.0);
Soluo:
%
% Processamento Digital de Sinal
% EEC4162 2004/2005
% Problema 5.2
% Filtro FIR com fase linear
% {ajf,fjr}@fe.up.pt
%
close all;
clear all;

z0=0.3+j*0.4;
z1=0.6+j*0.8;
z2=-1;
Z=[z0 z0' 1/z0 1/z0' z1 z1' z2].';
P=[0 0 0 0 0 0 0].';
[num den]=zp2tf(Z, P, 1.0);

zplane(num, den);

2004 F. J. Restivo / A. J. Ferreira 21 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

pause;

[h, t]=impz(num, den);


stem(t, h);
xlabel('Amostras');
ylabel('Amplitude');
pause;

figure(2)
subplot(2,1,1);
[H, W]=freqz(num, den);
plot(W/pi, 20*log10(abs(H)));
xlabel('Frequencia Normalizada');
ylabel('Amplitude (dB)');
subplot(2,1,2);
plot(W/pi, grpdelay(num, den));
xlabel('Frequencia Normalizada');
ylabel('Atraso de Grupo (amostras)');
% fase linear
% atraso de grupo constante: (N-1)/2
pause;

[sos, g]=zp2sos(Z, P, 1.0);


sos

% desfaz grupo de quatro zeros


% impossivel ter seccoes de segunda ordem com fase linear

Problema 3
Seja um sistema discreto em que x(n) representa o nmero de novos alunos que, no incio do ano n, se
inscreve a uma disciplina e y(n) representa o nmero total de alunos que frequenta essa disciplina no ano n.
Dos alunos que frequentam a disciplina em cada ano, 70% tm aproveitamento.
a. Obtenha a equao s diferenas que caracteriza o sistema.
b. Sendo x(n)=100u(n), para que valor que tende o nmero de alunos a frequentar a disciplina?
c. Repita b., supondo agora que existe um regime de prescries e que um aluno que reprova trs vezes
fica impedido de se inscrever novamente.
Soluo:
a. y( n) = x (n ) + (1 0. 7) y(n 1)

1
b. H ( z) = , |z|>0.3
1 0.3z 1
100 1
Y ( z) = 1
, |z|>1
1 z 1 0.3z 1
100
O teorema do valor final permitir-nos-ia concluir imediatamente que y(n) tende para 143 .
0. 7
Podemos evidentemente calcular y(n)

1 100 z n +1 100 100 . 0. 3n +1 100


y( n) =
2j ( z 1)( z 0.3)
dz = (
0.7
+
0.7
) u( n) =
0.7
(1 0.3 n+1 ) u( n)

c. Agora, a equao s diferenas outra:

2004 F. J. Restivo / A. J. Ferreira 22 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

y( n) = x (n ) + 0.3y( n 1) 0.33 x( n 3)

ou

y( n) = x( n) + 0.3x( n 1) + 0.32 x( n 2)

que tende para 100 + 30 + 9 = 139.

Problema 4
A srie de Fibonacci obtem-se calculando cada termo como a soma dos dois termos anteriores. Os dois
primeiros termos da srie so f(0) = 1 e f(1) = 1. Determine uma expresso geral para o termo de ordem n, f(n),
da srie de Fibonacci.
Soluo:
A srie de Fibonacci a resposta impulsional do sistema causal y(n) = x(n) + y(n-1) + y(n-2) (porqu?).
Usando a transformada z
1
H ( z) = 1
1 z z 2
com polos em

1 1+ 4 1 5
=
2 2
e, usando a frmula integral,
1 1
h ( n) = ((1 + 5 ) n+1 (1 5 ) n+1 ) u( n) .
5 2 n+1
A seguir, temos os 40 primeiros termos desta srie

n f(n) n f(n) n f(n) n f(n)


0 1 10 89 20 10946 30 1346269
1 1 11 144 21 17711 31 2178309
2 2 12 233 22 28657 32 3524578
3 3 13 377 23 46368 33 5702887
4 5 14 610 24 75025 34 9227465
5 8 15 987 25 121393 35 14930352
6 13 16 1597 26 196418 36 24157817
7 21 17 2584 27 317811 37 39088169
8 34 18 4181 28 514229 38 63245986
9 55 19 6765 29 832040 39 102334155

Problema 5
O parque informtico numa dada escola expresso por y(n) computadores utilizveis no final do ano n.
Ao longo de cada ano o nmero de computadores decresce devido a avarias, sendo a taxa anual de avarias de
5% e devido ao abatimento de todos os computadores que completam 3 anos de utilizao.
No incio de cada ano n so adquiridos x(n) computadores novos.
a. Obtenha, justificando, a equao s diferenas que exprime y(n), o nmero de computadores utilizveis
no final do ano n, de acordo com o enunciado.

2004 F. J. Restivo / A. J. Ferreira 23 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

b. Suponha que o parque informtico criado a partir do ano zero com a compra de N computadores
novos no incio de cada ano, obtenha a expresso que exprime y(n) em funo de N e n.
c. Qual dever ser N para que o nmero de computadores utilizveis estabilize em 1000?
Soluo:
a. y(n) = 0.95y(n-1) + x(n) 0.953x(n 3)
ou ento
y(n) = x(n) + 0.95x(n 1) + 0.952x(n 2)
(esta segunda forma evidencia a resposta impulsional finita do sistema: um computador abatido ao
fim de trs anos)
b. x(n) = Nu(n)
y(n) = Nu(n) + 0.95Nu(n 1) + 0.952Nu(n 2)
c. N + 0.95N + 0.952N = 1000 N = 351

Problema 6
Um modelo simplificado de um banco poderia ser o seguinte:
x(n) representa uma transaco mensal, de depsito ou de levantamento, [x(n) positivo se for
depsito e s h uma transaco por ms],
y(n) representa o saldo depois da operao mensal,
mensalmente, h lugar ao pagamento de um juro Ty(n-1), com 0 < T << 1 (do cliente ao banco ou do
banco ao cliente, conforme o saldo for devedor ou credor).
a. Represente por uma equao s diferenas o modelo de funcionamento deste banco. Justifique.
b. Suponha que o seu saldo no ms 1 nulo, que no ms 0 o banco lhe concede um crdito de 100 000 ,
e que a partir do ms 1 deposita regularmente P neste banco, com o objectivo de saldar a dvida ao
fim de 20 anos. Calcule, atravs de uma anlise em z, qual o valor da prestao P a pagar, sabendo que
a taxa de juro mensal de 0.5%.
Soluo:
a. A equao s diferenas ser y(n) = x(n) + (1 + T)y(n-1).
Ao saldo do ms anterior, acresce o juro pago pelo banco e o valor do depsito efectuado.
b. A entrada do sistema (depsito) ser
x(n) = - 100 000(n) + Pu(n-1).
A transformada z permite-nos resolver o problema facilmente:
1
H (z ) = , |z| > 1.005 (o sistema instvel!)
1 1.005 z 1

Pz 1 100000 + (100000 + P) z 1
X ( z ) = 100000 + = , |z| > 1
1 z 1 1 z 1

100000 + (100000 + P )z 1
Y (z ) = , |z| > 1.005
(1 z 1 )(1 1.005 z 1 )

1 100000 z n +1 + (100000 + P) z n
2j
y( n) = dz
( z 1)( z 1. 005)

2004 F. J. Restivo / A. J. Ferreira 24 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

100000 + (100000 + P) 100000 . 1. 005 n+1 + (100000 + P )1.005 n


y( n) = ( + ) u( n)
1 1.005 1. 005 1

P (1 1.005 n )
y( n) = ( 100000 x1.005 n + ) u( n)
0.005
(esta expresso mostra em separado os efeitos da dvida e da sua amortizao).
Para o saldo ser nulo ao fim de 20 anos, y(240)=0, o que d P=716.43 .
Obter-se-ia exactamente este valor usando a funo do Excel PMT(0.5%,240,100000).

* Problema 7
Um banco remunera os seus depsitos taxa de juro de 3% ao ano.
Determine o pagamento mensal que lhe garante que ao fim de 20 anos (240 pagamentos) ter um saldo
acumulado de 100 000 .
Soluo:

0.03
A equao s diferenas ser y( n) = x (n ) + 1 + y( n 1) , em que n um ndice que representa o ms.
12

A resposta entrada P.u(n), em que P a prestao mensal, pode calcular-se atravs de


P 1 400 P 401P
Y( z ) = 1
. 1
= 1
+
1z 1 1.0025 z 1 z 1 1. 0025 z 1

y( n) = (1.0025n .401P 400P )u (n )

Para ao fim de 20 anos o saldo acumulado ser 100 000

100000 = (1.0025240. 401P 400P ) P = 302.92 .

Por curiosidade, podemos ver como evolui o dinheiro entregue e o saldo acumulado ao longo dos 240 meses
4
x 10
10

0
0 50 100 150 200

2004 F. J. Restivo / A. J. Ferreira 25 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

Aula n 6

* Problema 1
Crie um ficheiro .m de comandos Matlab que execute as seguintes operaes:
- usando o comando wavread(), l o ficheiro de udio vega.wav, do tipo .wav (amostrado
frequncia de 44100 Hz),
- desnormaliza as amostra do sinal multiplicando-as pela constante 5000,
- l os valores dos ndices inicial e final da parte do sinal que ir ser processada,
- toca o sinal retido,
- soma ao sinal uma sinusoide pura com a frequncia de 3125 Hz e amplitude 20000,
- mostra e toca o sinal obtido,
- define os coeficientes de um filtro notch de 2 ordem, com polos a 0.95 da origem do plano z e zeros
coincidentes com os polos da sinusoide acrescentada,
- usa o comando zplane para representar os polos e zeros do sistema, e o comando freqz para
representar a resposta em frequncia do sistema,
- aplica o filtro ao sinal corrompido programando explicitamente a equao s diferenas,
- toca o sinal obtido.
Agora esclarea: Os comandos
x = sin(2*pi*[0:999]/100); e
for i=0:999, x(i+1) = sin(2*pi*i/100);end
produzem o mesmo resultado. Qual deles deve ser utilizado? Porqu ?
Soluo:
%
% Processamento Digital de Sinal
% EEC4162 2004/2005
% Problema 5.3
% filtro digital simples para melhorar a qualidade
% de uma sinal de audio corrompido por uma sinusoide
% {ajf,fjr}@fe.up.pt
%
close all;
clear all;

% le o ficheiro audio e mostra o seu comprimento


inpfile='vega.wav';
[data, Fs, nbits]=wavread(inpfile);
data = data*5000;
length(data)
% mostra para seleccionar segmento a processar
plot(data)
end1=input('end1? ')
end2=input('end2? ')
% mostra e toca o segmento seleccionado
datar=data(end1:end2);
dsize=length(datar);
plot(datar)
disp('Prima uma tecla para ouvir o sinal'); pause

2004 F. J. Restivo / A. J. Ferreira 26 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

sound(datar/(1.2*max(abs(datar))),Fs)
% adiciona ruido e mostra e toca sinal corrompido
omega0=2*pi*3125/Fs;
nc=1:dsize;
x=datar+20000*cos(omega0*nc)';
plot(x)
disp('Prima uma tecla para ouvir o sinal com ruido'); pause
sound(x/(2.0*max(abs(x))),Fs)
% define coeficientes do filtro notch de segunda ordem
% e mostra resposta em frequencia
r=0.95; c0=2*cos(omega0); rs=r^2; c0r=r*c0;
zplane([1 -c0 1], [1 -c0r rs])
freqz([1 -c0 1], [1 -c0r rs])
disp('Prima uma tecla para aplicar o filtro notch'); pause
y(1)=0; y(2)=0;
for n=3:end2-end1,
y(n)=x(n)-c0*x(n-1)+x(n-2)+c0r*y(n-1)-rs*y(n-2);
end
plot(y)
disp('Concluido. Prima uma tecla para ouvir o sinal filtrado');
pause
sound(y/(1.2*max(abs(y))),Fs)

Problema 2
Um sistema discreto tem um polo em e um zero em 1/*.
a. Represente graficamente, no plano z, o polo e o zero do sistema.
b. Mostre que o mdulo da resposta em frequncia deste sistema independente de (sistema do tipo
passa tudo).
c. Tente obter uma expresso para a fase da resposta em frequncia.
Soluo:

0.8

0.6

0.4

0.2

-0.2
Imaginary Part
-0.4

-0.6

-0.8

-1

-1 -0.5 0 0.5 1
Real Part
a.
(este o caso geral; h alguns casos particulares)
1
z
b. H( z ) = *
z

2004 F. J. Restivo / A. J. Ferreira 27 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

1
e j j j
* = e e
*
1
H( e j ) = =
e j * j
e *

(h uma soluo grfica, que consiste em mostrar que | * H( z) |= 1 para z = e j )

c. Em termos de fase, e para R

arg( cos jsen + 1)


arg(H( e j )) =
arg(cos + jsen )

tg tg
e como tg( ) =
1 + tgtg

cos + 1 sen
1(
[ ]
)( )
tg arg(H(e j )) = sen cos
cos + 1 sen
+
sen cos

(1 2 )sen
arg(H( e j )) = arctg
2 (1 + 2 ) cos

representado a seguir para = 0.5

-1

-2

-3
-3 -2 -1 0 1 2 3

Problema 3

j j
Considere um sistema do tipo FIR com zeros em 0.8e 3 e 1.25e 3 .
a. Determine a sua funo de transferncia H(z).
b. Determine dois outros sistemas do mesmo tipo e com a mesma amplitude da resposta em frequncia
(diferindo apenas na fase).
Soluo:

j j j j
a. H( z ) = z 4 ( z 0. 8e 3 )( z 0.8e 3 )( z 1. 25e 3 )( z 1. 25e 3 )


H ( z ) = z 4 ( z 2 1.6 cos z + 0.64 )( z 2 2.5 cos z + 1.5625 ) = 1 2.05z -1
+ 3.2025z -2
- 2.05z - 3 + z - 4
3 3

2004 F. J. Restivo / A. J. Ferreira 28 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

(sistema com fase linear)


b. Colocando em srie sistemas do tipo passa tudo e ganho unitrio

j j
1. com zeros em 0.8e 4 e polos em 1.25e 4


j j
H( z ) = 1. 5625 z 4 ( z 0.8e 3 ) 2 ( z 0. 8e 3 ) 2 = 1. 5625 2.5z 1 + 6z 2 1.6z 3 + 0.64 z 4

(sistema com fase mnima)



j j
2. com zeros em 1.25e 4 e polos em 0.8e 4


j j
H( z) = 0. 64z 4 ( z 1.25 e 3 ) 2 ( z 1.25 e 3 )2 = 0.64 1. 6z 1 + 6z 2 2.5z 3 + 1.5625 z 4

(sistema com fase mxima)

* Problema 4
Considere um sistema discreto do tipo FIR, de fase linear, com um zero em 0.3 + j0.4.
a. Determine a sua resposta impulsional h(n).
b. Determine a resposta implsional dos sistemas de fase mnima e fase mxima com magnitude da resposta
em frequncia igual do sistema dado.

Problema 5
Considere o sistema discreto do tipo FIR com zeros em
0.3+j0.4, 0.3-j0.4, (0.3+j0.4)-1, (0.3-j0.4)-1, 0.6+j0.8, 0.6-j0.8, -1.
a. Determine a sua resposta impulsional h(n).
b. Mostre que o sistema de fase linear.
c. Decomponha o sistema numa associao em srie de dois sistemas, cada um deles ainda de fase linear.
Soluo:
a. H(z) = z-7(z - 0.3-j0.4)(z - 0.3+j0.4)(z - (0.3+j0.4)-1)(z - (0.3-j0.4)-1)(z - 0.6-j0.8)(z - 0.6+j0.8)(z + 1)
H(z) = z-7(z2 - 0.6z + 0.25)(z2 2.4z + 4)(z2 1.2z + 1)(z + 1)
H(z) = z-7(z4 - 3z3 + 5.69z2 - 3z + 1)(z3 0.2z2 0.2z + 1)
H(z) = z-7(z7 3.2z6 + 6.09z5 2.538z4 2.538z3 + 6.09z2 3.2z + 1)
h(n) = [1 3.2 6.09 2.538 2.538 6.09 3.2 1]
b. A resposta impulsional simtrica.
c. (ver 3 linha de a))

2004 F. J. Restivo / A. J. Ferreira 29 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

1.5

0.5

7
0

-0.5 Part
Imaginary

-1

-1.5

-2 -1.5 -1 -0.5 0 0.5 1 1.5 2


Real Part

H(z) = z-4(z4 - 3z3 + 5.69z2 - 3z + 1) z-3 (z3 0.2z2 0.2z + 1)

2004 F. J. Restivo / A. J. Ferreira 30 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

Aula n 7

* Problema 1

Considere um sistema causal do tipo FIR com zeros em = 0. 8 exp( j / 3) , , 1 / e 1 / .

a. Interprete a seguinte sequncia de comandos Matlab, que dever escrever num ficheiro do tipo.m .
close all;
clear all;
alfa=0.8*exp(j*pi/3);
raizes=[alfa alfa' 1/alfa 1/(alfa')];
num=poly(raizes);
raizes=[0 0 0 0];
den=poly(raizes);
figure(1);
zplane(num, den);
pause;
figure(2);
[H, W]=freqz(num, den);
plot(W/pi, 20*log10(abs(H)));
xlabel('Frequencia Normalizada');
ylabel('Amplitude (dB)');
pause;
b. Adicione neste ficheiro .m outros comandos Matlab que executem as seguintes operaes:
- representa numa figura 3 a resposta impulsional do sistema,
- constri os vectores filptnum e filptden correspondentes respectivamente ao polinmio
numerador e denominador da funo de transferncia de um filtro passa-tudo de segunda ordem do
tipo

1 1
H( ) =
1 1 1 1

(a multiplicao polinomial conseguida em Matlab atravs do comando conv, efectuando a


convoluo entre as sequncias discretas constitudas pelos coeficientes de cada polinmio).
- obtm o filtro de fase mnima que resulta do filtro FIR indicado, colocando em srie com este um
filtro passa-tudo de segunda ordem e ganho unitrio; isto conseguido programando um valor de
adequado na equao acima e efectuando a multiplicao polinomial:
faseminnum=conv(num, filptnum);
faseminden=conv(den, filptden);
- representa na figura 1 o diagrama zero-polar deste sistema,
- representa na figura 3, os primeiros 5 coeficientes da resposta impulsional do filtro de fase mnima,
- sobrepe na representao da figura 2 a resposta em frequncia do filtro de fase mnima (o que
conclui ?).
- usando um procedimento idntico ao anteriormente seguido, constri um filtro de fase mxima,
- representa na figura 1 o diagrama zero-polar deste sistema,
- representa na figura 3, os primeiros 5 coeficientes da resposta impulsional do filtro de fase mxima,
- sobrepe na representao da figura 2 a resposta em frequncia do filtro de fase mxima (o que
conclui ?).

2004 F. J. Restivo / A. J. Ferreira 31 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

c. Que comando(s) Matlab que usaria para obter o filtro de fase mxima, atravs de, em alternativa ao
procedimento anterior, H FASE max ( z) = z L H FASE min (z 1 ) ?

Problema 2
Considere o sistema discreto causal com a equao s diferenas
y( n) = x( n) 0. 4x( n 1) + 0.8y( n 1) 0.64 y( n 2) .

Escreva num ficheiro do tipo.m comandos Matlab que executem as seguintes funes:
- define nos vectores num e den os polinmios numerador e denominador do sistema dis creto,
- representa o diagrama zero-polar do sistema,
- usa o comando roots()para determinar os polos e zeros (compare com o clculo manual),
- usa o comando;
[resid, polos, dire]=residuez(num, den);
que fornece os vectores resid, polos e dire, cujo contedo dever interpretar e comparar com o
resultado da expanso manual em fraces parciais da funo de transferncia do sistema,
- usa o comando impz() para representar as primeiras 40 amostras da resposta impulsional do sistema,
que dever comparar com o clculo manual da resposta impulsional (vector h) e a representao das
suas primeiras 40 amostras, atravs do comando plot(n,h,'pr') (usando para ndice o vector
n=[0:39];).

* Problema 3
Projecte um filtro digital do tipo passa baixo, com frequncia de corte 1 kHz frequncia de amostragem 10
kHz, a partir de um filtro RC passa baixo elementar
a. Pelo mtodo da invarincia da resposta imulsional.
b. Pelo mtodo da invarincia da resposta ao degrau.
c. Pelo mtodo da transformao bilinear.
d. Represente graficamente as magnitudes das respostas em frequncia dos trs filtros digitais obtidos.
Soluo:
a. A funo de transferncia do filtro analgico prottipo
1
H a ( s) = RC
1
s+
RC
1 1
em que a frequncia angular de corte c = , ou seja, 2 .10 3 = ,e
RC RC
2000
H a ( s) = .
s + 2000

4
O polo em -2000 mapeia-se no plano z em e 2000. 10 =e 5 e obtem-se

4 2000 5 0.628
H( z ) = 10
=
= , | z |> 0.533
1 0.533 z1
1 e 5 z 1 1 e 5 z 1

2004 F. J. Restivo / A. J. Ferreira 32 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

y(n) = 0.628x(n) + 0.533y(n-1) .


b. A resposta ao degrau do filtro analgico prottipo

d a ( t ) = (1 e 2000t ) u( t )

e a resposta ao degrau do filtro digital resultante da transformao



n
d( n) = (1 e 2000. 10 n ) u( n) = (1 e
4
5 ) u( n)

cuja transformada z
1 1
D ( z) =
1 z 1

1 e 5 z 1

pelo que
1 1
1

1 z
5 ) z 1
1 e 5 z 1 (1 e 0. 467 z 1
H ( z) = =
= , | z |> 0. 533
1 1 0.533 z 1
1 e 5 z 1
1 z1
y(n) = 0.467x(n-1) + 0.533y(n-1) .
c. Aplicando a transformao bilinear funo de transferncia do filtro analgico prottipo

2000 (1 + z 1 )
H (z ) = = =
2 1 z 1 1 z 1 10 + (10 ) z 1
+ 2000 10 +
10 4 1+ z 1 1+ z 1
0.239 (1 + z 1 )
H ( z) = , | z |> 0. 522
1 0. 522 z 1
y(n) = 0.239x(n) + 0.239x(n-1) + 0.522y(n-1) .
(note como neste caso surge um zero de H(z) em z=-1)
d. bvio qual qual:

1.2

0.8

0.6

0.4

0.2

0
0 0.5 1 1.5 2 2.5 3

2004 F. J. Restivo / A. J. Ferreira 33 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

Aula n 8

Problema 1
Considere o filtro analgico passa baixo
1
H a (s ) = .
1 + 0. 08s
a. Determine a frequncia de corte c (atenuao igual a 3 dB) deste filtro.
b. Determine o filtro digital que se obtem de Ha(s) pelo mtodo da invarincia da resposta impulsional,
para uma frequncia de amostragem de 10 Hz.
c. Represente graficamente a amplitude da resposta em frequncia deste filtro digital e a do filtro
analgico original, e explique as eventuais diferenas entre ambas.
Soluo:
1 12.5
H a (s ) = = c = 12.5 rad/s Fc = 1.984 Hz
1 + 0.08 s s + 12.5
1.25
H (z ) =
1 e 1.25 z 1

1.5

0.5

0
0 1 2 3 4 5 6

0.8

0.6

0.4

0.2

0
0 1 2 3 4 5 6 7 8 9 10

nota-se um acentuado efeito de aliasing.

* Problema 2
Pretende-se projectar um filtro digital passa-baixo, usando o mtodo da transformao bilinear, a partir de um
filtro de Butterworth, e de tal modo que, frequncia de amostragem de 16 kHz,
- o limite superior da sua banda de passagem seja 2kHz, e a atenuao verificada no exceda 3 db,
- o limite inferior da sua banda de bloqueio seja 4 kHz, e a atenuao verificada seja no mnimo de 40 dB.
Determine a ordem mnima do filtro.

Problema 3
Pretende-se projectar um filtro digital passa-baixo, usando o mtodo da transformao bilinear, a partir de um
filtro de Butterworth de 3 ordem, de tal modo que frequncia de amostragem de 10 kHz a sua frequncia
superior de corte seja de 1 kHz.
a. Determine a frequncia superior de corte do filtro analgico prottipo.

2004 F. J. Restivo / A. J. Ferreira 34 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

b. Localize, no plano z, os polos do filtro digital.


c. Determine a partir de que frequncia a atenuao do filtro digital melhor que 60 dB.
Soluo:
a. De acordo com o enunciado
2 c
c = tg = 20000 tg = 6498 . 4 rad/s
T 2 10
b. Os polos deste filtro esto colocados, no plano s, em
2
j
s 1 = 6498 .4 e s 2,3 = 6498 .4e 3 .

No plano z, teremos ento


2 + sT 2 0.64984
z1 = = = 0. 501
2 sT 2 + 0.64984
2

2 + 0. 64984 e 3 2 0.32492 j0.56278
z 2,3 = 2
= = 0.736 j0. 0639
2 + 0.32492 j0.56278
2 0.64984 e 3
1 6
c. 10log < 60 ( ) > 999999 = 64984
6 6498.4
1+ ( )
6498.4
donde
T
= 2tg 1 = 2.5445 rad
2

Problema 4
Pretende-se projectar um filtro digital passa-banda, do tipo FIR, tal que

0 | |< 400 rad/s


j T
H (e ) 1 400 | | 600 rad/s
0 600 <| | 1000 rad/s

2
para a frequncia angular de amostragem s = = 2000 rad/s .
T
a. Determine a resposta impulsional do filtro analgico prottipo.
b. Determine os coeficientes do filtro digital, utilizando uma janela de Hanning de comprimento 7.
c. Faa um esboo da resposta em frequncia do filtro digital.
Soluo:
a.

1
0.8
0.6
0.4
0.2
0
-1000 -800 -600 -400 -200 0 200 400 600 800 1000

2004 F. J. Restivo / A. J. Ferreira 35 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

H
1 j t 600 400
h c (t) = c ( j )e d = senc(600 t) senc(400 t)
2

b. h ( n) = [0.6senc( 0.6n) 0.4senc( 0.4n) ]w N ( n)

c. Com uma janela rectangular de comprimento 101, teramos a seguinte resposta impulsional e resposta
em frequncia

0.2

0.1

-0.1

-0.2
-50 -40 -30 -20 -10 0 10 20 30 40 50

1.5

0.5

0
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

Com uma janela Hanning de comprimento 7


h(h)=[0 -0.1871 0 0.2 0 0.1871 0].*[0 0.25 0.75 1 0.75 0.25 0]

0.2

0.15

0.1

0.05

-0.05
1 2 3 4 5 6 7

0.35

0.3

0.25

0.2

0.15

0.1
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1

que obviamente uma pssima aproximao da resposta em frequncia pretendida,

Problema 5
Considere um sistema FIR causal, com resposta impulsional h(n) real, de comprimento N e de fase linear do
tipo 1 ( i.e. N mpar e h(N-1-k)=h(k) para 0k(N-1)/2 ). Nestas condies, a sua resposta em frequncia pode
escrever-se H(e j )=A(e j )e -j(-), sendo A(e j ) uma funo real de , e sendo e constantes.
( N1 ) / 2
a. Mostre que A(e j ) pode exprimir-se por A e j = ( ) a(n) cos(n) e relacione a(n) com h(n).
n= 0

2004 F. J. Restivo / A. J. Ferreira 36 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

b. Projectaram-se dois filtros FIR, nas condies do enunciado e com o mesmo comprimento N, do tipo
passa-baixo, com banda passante BP: || [0, 0.42], com banda de transio BT: || ]0.42, 0.58[, e
com banda de corte BC: || [0.58, ], atravs da minimizao dos dois seguintes critrios de erro na
aproximao de H(ej) a uma resposta desejada Hd(ej) :

( ) ( )
2
Critrio 1: 2 = H d e j H e j

{ ( ) ( )}
Critrio 2: MAX{()} = MAX Hd e j H e j , BP BC .

Grfico G1 Grfico G2

1 1

0.8 0.8
Ganho

0.6 Ganho 0.6

0.4 0.4

0.2 0.2

0 0
0 0.2 0.4 0.6 0.8 1 0 0.2 0.4 0.6 0.8 1
Frequncia/ Frequncia/
O mdulo da resposta em frequncia dos dois filtros projectados encontra-se representado nos
grficos G1 e G2.
Indique, justificando, que critrio de projecto ter sido usado para projectar os filtros ilustrados.
c. Com base na informao disponvel, estime o comprimento N dos filtros projectados na alnea anterior.

2004 F. J. Restivo / A. J. Ferreira 37 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

Aula n 9

* Problema 1
Pretende-se projectar um filtro discreto, do tipo passa-banda, com as seguintes especificaes: banda
passante entre 3000 Hz e 6000 Hz, ordem 8, frequncia de amostragem 44100 Hz. Com este objectivo,
projectam-se em ambiente Matlab quatro filtros: Butterworth, Chebychev 1, Chebychev 2, elptico; e
comparam-se as suas caractersticas, atravs do seguinte cdigo:
close all;
clear all;
fs=44100;
fc=[3000/fs 6000/fs];
[b1 a1]=butter(4, fc); % ordem efectiva do filtro: 2N=8
[H1, W]=freqz(b1, a1);
[grpdly1 W]=grpdelay(b1, a1);
% ripple na banda passante = 0.5 dB
[b2 a2]=cheby1(4, 0.5, fc); % ordem efectiva do filtro: 2N=8
[H2, W]=freqz(b2, a2);
[grpdly2 W]=grpdelay(b2, a2);
% ripple nas bandas corte = 25 dB
[b3 a3]=cheby2(4, 25, fc); % ordem efectiva do filtro: 2N=8
[H3, W]=freqz(b3, a3);
[grpdly3 W]=grpdelay(b3, a3);
% ripple na banda passante = 0.5 dB e nas bandas corte = 25 dB
[b4 a4]=ellip(4, 0.5, 25, fc); % ordem efectiva do filtro: 2N=8
[H4, W]=freqz(b4, a4);
[grpdly4 W]=grpdelay(b4, a4);
figure(1);
plot(W/pi*fs/1E3, 20*log10(abs([H1.'; H2.'; H3.'; H4.'])));
xlabel('Frequencia (kHz)');
ylabel('Magnitude (dB)');
axis([0 12 -60 10]);
figure(2);
plot(W/pi*fs/1E3, [grpdly1'; grpdly2'; grpdly3'; grpdly4']);
xlabel('Frequencia (kHz)');
ylabel('Atraso Grupo (amostras)');
axis([0 12 0 150]);
Com base na apreciao das figuras 1 e 2 geradas, diga que traado corresponde a cada tipo de filtro. Se o
critrio de escolha for bandas de transio estreitas e distoro moderada do atraso de grupo (inferior a 100
amostras) que filtro escolheria ?

* Problema 2
Pretende-se projectar um filtro FIR de fase linear, com as seguintes especificaes:
- ordem 128 (comprimento 129),
- banda passante (Hz): [3000 6000],
- bandas de rejeio (Hz): [0 1500] [7500 22050],
- frequncia de amostragem 44100 Hz.
Escreva num ficheiro do tipo.m comandos Matlab que executem as seguintes funes:
- obtm um filtro projectado pelo mtodo da janela (comando fir1) usando uma janela de Hanning,
- obtm um filtro do tipo equiripple (comando remez) (ou firpm).

2004 F. J. Restivo / A. J. Ferreira 38 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

Compare as caractersticas do dois filtros e diga qual escolheria se desejar bandas de transio estreitas.

* Problema 3
Repita o projecto dos filtros indicados anteriormente mas usando agora a ferramenta de projecto fdatool da
toolbox de processamento de sinal do Matlab.

Problema 4
a. Calcule a DFT X(k) do sinal discreto x(n) = [0, 1, 1, 0].
b. Calcule a DFT Y(k) do sinal discreto y(n) = [0, 0, 0, 0, 0, 1, 1, 0], e relacione-a com a anterior.
Soluo:
a. Usando a definio, encontra-se X(k) = [2, -1-j, 0, -1+j].

uma amostragem em k , k=0 .. 3 da transformada de Fourier
2
3
j 2
X ( e j ) = e j + e 2 j = 2 cos e
2
b. Se ao sinal x(n) fossem acrescentados 4 zeros obter-se-ia x8(n) = [0, 1, 1, 0, 0, 0, 0, 0], cuja DFT seria

uma amostragem em k , k=0 .. 7 de da mesma transformada de Fourier X( e j ) .
4

1.8

1.6

1.4

1.2

0.8

0.6

0.4

0.2

0
1 2 3 4 5 6 7 8 9

O atraso circular de 4 unidades, apenas afecta a fase. (de quanto?)

Probl ema 5
Considere o sinal discreto de comprimento 16,
n
x( n) = cos , n = 0,...,15
8
Determine a sua DFT.
Soluo:
O modo mais simples de resolver este problema consiste em escrever (evitar seguir a definio...)
n n
j j
8 +e 8
x[n ] =
e
, n = 0 .. 15
2
e comparar com a expresso da iDFT

2004 F. J. Restivo / A. J. Ferreira 39 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

N 1 2
x[n ] = X[k]e
1 j nk
N
N k =0

S h dois valores de X[k] diferentes de 0, para k=1 e para k=-1+16=15


X[1]= X[15]=8

Problema 6
Considere o sinal discreto x(n)=2-n u(n) e a sua transformada de Fourier X(e j ). Determine o sinal discreto y(n)
de comprimento N cuja DFT
2
j k
Y (k ) = X ( e N ), k = 0,..., N 1 .

Soluo:
Verifica-se aqui o fenmeno do aliasing, e poderamos escrever imediatamente o resultado. Como todas as
amostras, de N em N, vo somar-se
+ +

2 2
( n + rN) 1
y( n) = = 2 n rN
= 2 n , n = 0 .. N-1
r =0 r =0 1 2 N

Fazendo "as contas", temos


+

2 r 1
X( z ) = zr , | z | >
r=0
2

+ 2 rk
j
Y (k ) = 2 r e N

r=0

N 1 + 2 rk + N 1
j
W
1 nk 1 ( r n) k
y(n ) = 2 r e N WN = 2 r N
N k =0 r=0 N r=0 k =0

e como o segundo somatrio vale 0 se n-r0, N, 2N, ... e N se n-r=0, N, 2N, ...
+

2 n rN 1
y( n) = = -N
2 - n , n = 0. ..., N - 1 .
r =0 1-2

Problema 7
A DFT de um sinal discreto x(n) de comprimento N X(k).
Determine a DFT Y(k) do sinal de comprimento MN y( n) = x(n mod N ) , M inteiro.

Soluo:
O sinal y(n) constitudo por M repeties do sinal x(n). Ento
MN 1 M 1 N1 M 1 N1
Y( k ) =
n =0
nk
y( n) WMN =
r = 0 n= 0
y( rN + n) WMN
( rN+ n )k
= y(n )W
r = 0 n= 0
rNk nk
MN W MN

M 1 N 1 M 1 N 1 k k
MX , se k = mltiplo de M

n
Y( k ) = rNk
WMN nk
x( n) W MN = rk
WM x( n ) WN M = M
r =0 n =0 r =0 n =0 0, se no

o resultado esperado: repetir periodicamente num domnio corresponde a inserir zeros no outro domnio.

2004 F. J. Restivo / A. J. Ferreira 40 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

Aula n 10

Problema 1
Pretende-se projectar um sistema discreto utilizando o mtodo da amostragem da resposta em frequncia. O
nmero de amostras de 16, e sabe-se que as nicas amostras diferentes de zero so
H(0) = H(1) = H(15) = 1
H(2) = H(14) = 0.5.
Escreva as equaes s diferenas que realizam este sistema.
Soluo:
O caminho a seguir H(k) h(n) H(z) sistema, utilizando-se a iDFT e a transformada em z

1 N 1
h ( n) =
N k= 0
H( k) WNnk

N 1 N 1 N1 N1 N1
h(n)z n = N H(k )WN nkz n = N H(k ) (WNkz 1)n
1 1
H ( z) =
n= 0 n= 0 k =0 k =0 n =0

1 N1 k 1 N
1 ( WN 1 z N N1
1 W k z 1
z ) H( k)
H ( z) = H(k ) k 1
=
N k =0 1 WN z N k =0 N

O sistema pretendido constitudo pela associao em srie do sistema do tipo no recursivo (FIR)

1 z N
H p (z ) =
N
que um sistema com N zeros igualmente espaados sobre a circunferncia unitria do plano z, em
z k = WNk , k = 0... N 1 , normalmente designado por filtro em pente (comb filter), com o paralelo de N
sistemas do tipo recursivo (IIR)
H( k )
H k ( z) = k 1
, k = 0..N 1
1 WN z

cada um com um polo exactamente em z k = WNk . Cada um destes polos cancelado por um dos zeros do
primeiro sistema, resultando

H ( z) z = W k = H ( k ) .
N

Se H(k) = H(N-k), possvel agrupar os polos conjugados em sistemas de segunda ordem


2 k 1
2 2cos z
H( k) H( k) N
H kk ( z) = + = H( k) .
k 1
1 WN k 1
1 WN 2k 1 2
z z 1 2 cos z +z
N
No caso dado

1 z 16
H p (z ) =
16
1
H 0 ( z) = 1
1 z

2004 F. J. Restivo / A. J. Ferreira 41 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05


2 2 cos z 1
H11(z ) = 8
1 2
1 2 cos z + z
8

1 cos z1
H 22 (z ) = 4
1 2
1 2 cos z + z
4
H( z) = H p ( z)[H 0 ( z) + H11( z) + H 22 ( z)]

a que correspondem as equaes


x( n) x (n 16)
v(n ) =
16
y0 (n ) = v( n) + y0 ( n 1)


y11( n) = 2 v( n) 2 cos v( n 1) + 2 cos y11 (n 1) y11( n 2)
8 8

y22 ( n) = v(n ) cos v( n 1) + 2 cos y22 ( n 1) y22 ( n 2)
4 4
y( n) = y0 ( n ) + y11 (n ) + y 22 (n ) .

Problema 2
Pretende-se filtrar um sinal discreto x(n), de comprimento indeterminado, com um filtro FIR, de comprimento 71,
utilizando a convoluo rpida, pelo mtodo overlap-add.
Determine o comprimento N da FFT raiz 2 que minimiza o nmero de multiplicaes complexas a realizar por
amostra sada. Considere que N no pode exceder 2048 e que pode desprezar as multiplicaes realizadas
para o clculo da DFT da resposta impulsional do filtro.
Soluo:
Analisam-se os cinco comprimentos possveis:

N L n.a n.b n.m m/a


128 58 7 64 1024 17.66
256 186 8 128 2304 12.39
512 442 9 256 5120 11.58
1024 954 10 512 11264 11.81
2048 1978 11 1024 24576 12.42

2004 F. J. Restivo / A. J. Ferreira 42 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

Aula n 11

Problema 1
Faa um diagrama de fluxo para um programa para a FFT, algoritmo de decimao na frequncia, entradas
ordenadas.

Problema 2
a. Recupere a partir da Web (em ftp://ftp.fe.up.pt/pub/Pessoal/Deec/ajf/pds/tpc/fft_.m.txt) o ficheiro
fft_.m.txt e retire a extenso .txt , retendo s o nome fft_.m, de modo a poder invocar em ambiente
Matlab os comandos incluidos neste ficheiro digitando simplesmente fft_ (isto , de modo que o
Matlab reconhea este ficheiro como uma M-file).
b. Analise o conjunto de comandos Matlab contidos no ficheiro fft_.m que ilustram uma possvel
estrutura de clculo da Fast Fourier Transform, pelo algoritmo de decimao no tempo (DIT). De modo
a familiarizar-se com a operao do algoritmo, teste-o considerando as sugestes contidas no
cabealho do ficheiro. Use tambm a funo fft() do ambiente MATLAB para comparar resultados.
c. Copie o ficheiro fornecido para um outro e modifique-o de modo a implementar o algoritmo de
decimao na frequncia. Note que dever produzir os mesmos resultados do algoritmo DIT. Procure
justificar todas as modificaes introduzidas e utilize um procedimento de teste adequado para validar
a sua implementao.
d. Admita que pretende substituir, em cada borboleta, o clculo explcito de funes trigonomtricas pelo
acesso a uma tabela. Conclua sobre qual dever ser o contedo e tamanho da(s) tabela(s)
necessria(s). Procure evitar redundncia de valores.

2004 F. J. Restivo / A. J. Ferreira 43 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

Aula n 12

Problema 1
Considere um sistema linear e invariante com h(n) = anu(n), com |a| < 1.
a. Calcule a funo autocorrelao determinstica da resposta impulsional c HH (n ) = h(n) * h * (-n) .

b. Calcule a funo densidade espectral de energia do sistema |H(e j )|2.


c. Use o teorema de Parseval para calcular a rea sob a funo densidade espectral de energia.
Soluo:
a. Seja f(n) = h *(-n) = h(-n) = a-nu(-n).
Ento
+ + +
c HH ( n ) =
k =
h( k) f ( n k) =
k =
a k u (k )a (n k) u( ( n k)) = a
k =
k
a ( n k) u( k) u( k n)

c HH (n ) = a n a
k 0
2k

k n

e h dois casos
+
a n
a
1
n 0 : c HH ( n ) = a n 2k
= a n =
k =0 1 a 2 1 a 2

+
a 2n an
n 0 : c HH ( n ) = a n
k =n
a 2k = a n
1 a 2
=
1 a 2

que podem ser condensados na expresso

a |n |
c HH ( n) =
1a 2
( uma funo real e par, com um mximo em n=0)

b. c HH ( l) = h(l) * h * ( l) H (e j ) H * ( e j ) = C HH ( e j )

Temos assim duas vias, a directa e calculando a transformada de Fourier de cHH( l )


Primeira via:
+

a
1
H (e j ) = n j n
e =
n = 1 ae j

1 1 1
C HH ( e j ) =| H( e j ) |2 = H( e j ).H * ( e j ) = j j
=
1 ae 1 ae 1 2a cos + a 2
Segunda via:
+ 1 +
a l al
C HH ( e j ) =
l =
c HH ( l) e jl = 1 a
l=
2
e j l + 1a
l =0
2
e jl

+ +

a a e
1
C HH ( e j ) = ( l
e j l + l j l
)
1 a 2
l =1 l =0

2004 F. J. Restivo / A. J. Ferreira 44 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

1 ae j 1 1
C HH ( e j ) = ( j
+ j
)=
1a 2
1 ae 1 ae 1 2a cos + a 2

1 2a cos + a
1 1 1
c. E = F 1 ( C HH (e j )) = C HH (e j ) e j n d = d
l= 0 2 2 2
l =0

que no simples de calcular. O teorema de Parseval permite-nos fazer o clculo noutro domnio
+

| h( n) |
1
| H( e j ) | 2 d = 2
2 n =

+ +

a
1
E= | h( n) | 2 = 2n
= (notar que E=c HH(0)).
n = n =0 1 a 2

Este clculo poderia ter sido realizado utilizando a transformada z e o teorema dos resduos:
1
c HH ( l) = h ( n) * h * ( n) C HH ( z) = H(z ).H * ( )
z*


1 1
c HH (l) = H(z ).H*( * ) zl 1dz
2j z


1 1 1 1 1 1
E = c HH (0) = H(z ).H * ( * ) z 1dz = ( ) * z 1dz , | a |<| z |<| |
2j z 2j 1 az 1
1 az * a
1

1 1 1 1
E = c HH (0) = dz = =
2j z a 1 a *z 1 a a 1 | a |2
*

(s h um polo no interior do contorno)

Problema 2
Considere que a entrada de um filtro diferenciador de primeira ordem, y(n) = x(n) x(n-1), rudo branco de
mdia nula e com funo autocorrelao XX ( l) = 2 ( l) .

a. Determine e represente a funo autocorrelao e a potncia espectral do sinal sada do sistema.


b. Qual a potncia mdia sada do sistema?
c. Que concluso retira dos resultados deste problema sobre a aco do filtro?
Soluo:
a. Seguindo o caminho

XX ( l) XX ( e j ) YY ( e j ) YY (l)

tem-se

XX (e j ) = 2

C HH ( e j ) = H( e j ) H* (e j ) = (1 e j )(1 e j ) = 1 2 cos 1 = 2(1 cos)

YY ( e j ) = C HH ( e j ) XX ( e j ) = 2 2 (1 cos ) (potncia espectral sada)

e j + e j
YY ( e j ) = 2 2 (1 )
2

2004 F. J. Restivo / A. J. Ferreira 45 Problemas das Aulas Prticas


Processamento Digital de Sinal 2004/05

e por simples observao faz-se a inverso da transformada

YY ( l) = 2 2 ( l) 2 (l 1) 2 ( l + 1)

b. A potncia mdia do sinal sada ser

E (| y( n) | 2 ) = YY (0) = 2 2

c. A potncia mdia do sinal sada o dobro da potncia mdia entrada.


Como cada amostra do sinal de sada usa duas amostras consecutivas do sinal de entrada, h uma
correlao entre cada amostra do sinal de sada com as amostras anterior e seguinte.

2004 F. J. Restivo / A. J. Ferreira 46 Problemas das Aulas Prticas