Você está na página 1de 91

*

*
*
Detalhamento do Programa

1. SINAIS E SISTEMAS DE TEMPO DISCRETO
- sinais de tempo discreto, seqncias, seqncias peridicas
- sistemas de tempo discreto, sistemas lineares invariantes no tempo, propriedades
-somatrios de convoluo, equaes de diferenas a coeficientes constantes

2. ANLISE DE FOURIER DE TEMPO DISCRETO
- Transformada de Fourier de tempo discreto, definio, propriedades
- resposta em freqncia de sistemas lineares invariantes no tempo
- amostragem e reconstruo de sinais analgicos

3. A TRANSFORMADA Z
-Transformada Z bilateral : definio, propriedades, inverso
-funes de transferncia no domnio Z
-solues de equaes de diferenas; diagrama de plos e zeros

4. A TRANSFORMADA DISCRETA DE FOURIER
- a srie discreta de Fourier
- amostragem e reconstruo no domnio Z
- a Transformada discreta de Fourier (TDF), propriedades da TDF
- convoluo linear usando a TDF
- a Transformada rpida de Fourier (FFT)
*
*
*
*
*
Elementos bsicos de um sistema de processamento digital de sinais

A maioria dos sinais encontrados na prtica so analgicos por natureza.
Estes sinais, que possuem uma variao contnua no tempo e na amplitude, so
processados usando sistemas eletrnicos contendo elementos de circuito ativos e
passivos. Esta abordagem conhecida como processamento analgico de sinais - por
exemplo, receptores de rdio e televiso.
O processamento digital de sinais fornece um mtodo alternativo para o
processamento de um sinal analgico. Para realizar o processamento digitalmente,
necessria uma interface entre o sinal analgico e o processador digital. A sada do
conversor A/D um sinal digital que servir de entrada para o processador digital, que
pode ser : Um computador; um microprocessador ou microcontrolador de uso geral;
um microprocessador especializado (DSP); um hardware dedicado ou at mesmo um
chip FPGA (Field-Programmable Gate Array).
Em aplicaes onde a sada do processador digital de sinais deve ser
convertida para a forma analgica, necessrio prover outra interface do domnio
digital para o domnio analgico: o conversor D/A. Entretanto, existem outras
aplicaes prticas onde no necessria a converso D/A, como, por exemplo, no
processamento digital de sinais de radar, pois a informao extrada do sinal (posio
e/ou velocidade da aeronave) pode ser simplesmente visualizada ou impressa.

*
H muitos motivos para preferir o processamento digital ao invs do
analgico. Primeiramente, um sistema digital programvel permite flexibilidade na
reconfigurao do processamento simplesmente mudando-se o programa.
Consideraes de exatido tambm so importantes: tolerncias nos
componentes de circuitos analgicos dificultam ao projetista controlar a exatido do
sistema de processamento. Por outro lado, um sistema digital pode ter a exatido de suas
operaes perfeitamente controlada pelo nmero de bits da palavra ou pelo uso de
aritmtica de ponto flutuante ou ponto fixo. Isso confere aos sinais digitais uma maior
imunidade a rudo durante o processamento.
Sinais digitais podem ser armazenados em meios magnticos sem
deteriorao ou perda de fidelidade, exceto aquela introduzida pela converso A/D. Como
conseqncia, os sinais podem ser transportados e processados off-line em um
laboratrio distante. O processamento digital possibilita igualmente a implementao de
algoritmos e operaes mais sofisticadas (ex.: Cancelador de eco).
Finalmente, um dos fatores mais decisivos o custo. Em muitos casos a
implementao digital de um sistema de processamento de sinais mais barata que sua
contraparte analgica. O custo reduzido deve-se ao fato de que o hardware digital pode
ser mais facilmente integrado (VLSI), ou tambm como resultado da facilidade de
modificaes permitida pela implementao digital.
No entanto, o processamento digital de sinais tem suas limitaes;
principalmente a que se refere velocidade de operao dos conversores A/D e dos
microprocessadores. H sinais analgicos (faixa de microondas) para os quais o estado
da arte do hardware digital ainda est aqum do que seria necessrio.


*
As operaes de processamento digital de sinais podem ser classificadas como sendo
tarefas de anlise ou de filtragem digital conforme ilustra a figura.
Anlise de sinais
So operaes que visam medir propriedades do sinal. Geralmente so realizadas no
domnio da freqncia. Algumas de suas aplicaes so:
Anlise espectral
Reconhecimento de fala e de locutor
Identificao e controle de sistemas (automao e robtica)
Compresso de dados (voz, udio, vdeo)
Radar e Sonar
Extrao de caractersticas de sinais biolgicos

Filtragem de sinais
Este tipo de tarefa caracteriza-se pela estrutura sinal entra-sinal sai. Os sistemas que
desempenham operaes deste tipo so denominados genericamente de filtros.
Usualmente (mas nem sempre) trata-se de uma operao no domnio do tempo.
Algumas das possveis aplicaes so:
Cancelamento de rudo
Cancelamento de interferncia
Separao de bandas espectrais
Formatao do espectro do sinal
Em algumas aplicaes, como sntese de voz, um sinal primeiramente analisado e
suas caractersticas so ento usadas na filtragem digital para produzir a voz.
*
Quanto sua relao com o tempo, os sinais so classificados a grosso modo em
analgicos (contnuos) ou discretos. Um sinal discreto ser denotado por x(n), onde a
varivel n assume valores inteiros e representa instantes discretos no tempo. Trata-
se de uma seqncia numrica representada por uma das seguintes notaes:

onde a seta vertical indica a amostra no instante n=0.
No MATLAB podemos representar uma seqncia de durao finita por um vetor
linha. Entretanto, tal vetor no possui nenhuma informao a respeito da posio n
da amostra. Portanto, uma correta representao de x(n) requer dois vetores, um
para x e outro para n. Por exemplo, a seqncia


pode ser representada no MATLAB por
>> n =[-4,-3,-2,-1,0,1,2,3]; x =[5,-2.3,-1.1,0,1.7,2,-3.5,4.2];
Geralmente, usa-se apenas um vetor quando a seqncia inicia em n=0. Uma
seqncia qualquer de durao infinita no pode ser representada no MATLAB
devido limitao de memria.



),... 1 ( ), 0 ( ), 1 ( ), 2 ( ..., ) ( ) ( x x x x n x n x

2 . 4 , 5 . 3 , 2 , 7 . 1 , 0 , 1 . 1 , 3 . 2 , 5 ) (n x
*
Tipos de seqncias
Vrias seqncias elementares so importantes na anlise de sinais:

1.Impulso unitrio: Para implementar (n-n
0
) no intervalo n
1
n
0
n
2
usaremos a
seguinte funo no MATLAB:

function [x,n] = impulso(n0,n1,n2)
% Gera x(n) = delta(n-n0); n1 <= n,n0 <= n2
% ----------------------------------------------
if((n0 < n1)|(n0 > n2)|(n1 > n2)) error('Use n1<=n0<=n2')
end n = [n1:n2]; x = [(n-n0) == 0];

2. Degrau unitrio: Para implementar u (n-n
0
) no intervalo n
1
n
0
n
2
usaremos a
seguinte funo no MATLAB:
function [x,n] = degrau(n0,n1,n2)
% Gera x(n) = degrau(n-n0); n1 <= n,n0 <= n2
% ----------------------------------------------
if((n0 < n1)|(n0 > n2)|(n1 > n2)) error('Use n1<=n0<=n2')
end n = [n1:n2]; x = [(n-n0) >= 0];




*
Tipos de seqncias

3. Exponencial real: No MATLAB um operador matricial .^ usado para implementar
uma seqncia exponencial real.
Por exemplo, para gerar a seqncia
usamos: >> n = [0:12]; x = (0.8).^n;

4. Exponencial complexa: A funo exp do MATLAB utilizada para gerar seqncias
exponenciais complexas. Exemplo:

No MATLAB fica: >> n = [-5:5]; x = exp((0.2+5j)*n);

5. Senoidal: Uma senide discreta pode ser implementada no MATLAB usando a
funo cos (ou ento sin ).
Por exemplo, para gerar a seqncia senoidal
usamos: >> n = [-25,25]; x = 5*cos(0.08*pi*n+pi/4);
6. Peridica: Usa-se para denotar uma seqncia peridica. Para gerar P
perodos de a partir de um perodo de podemos copiar P vezes. Porm no
MATLAB existe uma maneira mais elegante :
>> xtil = x*ones(1,P) % P colunas de x (x vetor linha)
>> xtil = xtil(:); xtil = xtil; % Concatenao e transposio
12 0 , ) 8 . 0 ( ) ( n n x
n
5 5 , ) (
) 5 2 . 0 (
n e n x
n j
25 25 , ) 4 / 08 . 0 cos( 5 ) ( n n n x
) (
~
n x
) (n x ) (
~
n x ) (n x
*
Operaes sobre seqncias

1. Adio de sinais: implementada facilmente no MATLAB. No entanto, a durao das
seqncias deve ser a mesma. Se forem diferentes, deve-se primeiramente ajustar as
respectivas duraes antes de efetuar a adio dos sinais.

2. Multiplicao de sinais: No MATLAB pode ser implementada por meio do operador
matricial .*. Tambm necessrio ajustar as duraes dos sinais.

3. Deslocamento: A expresso no pode ser implementada
diretamente no MATLAB. Mas se fizermos
poderemos usar a seguinte funo:
function [y,n] = deslocsinal(x,m,n0)
% implementa y(n) = x(n-n0)
% -------------------------
% [y,n] = deslocsinal(x,m,n0)
%
n = m+n0; y = x;

) ( ) ( k n x n y
) ( ) ( m x k m y k m n k n m
*
Operaes sobre seqncias

4. Espelhamento: No MATLAB esta operao implementada usando fliplr():
function [y,n] = espelhar(x,n)
% implementa y(n) = x(-n)
% -----------------------
% [y,n] = espelhar(x,n)
%
y = fliplr(x); n = -fliplr(n);

5. Soma de amostras: implementada no MATLAB por sum(x(n1:n2))

6. Produto de amostras: implementada no MATLAB por prod(x(n1:n2))

7. Energia: A energia de uma seqncia de durao finita pode ser implementada no
MATLAB usando qualquer um dos dois modos possveis:
>> Ex = sum(x.*conj(x)); % usando conjugado de x
>> Ex = sum(abs(x).^2); % usando mdulo de x

8. Potncia do sinal: Pode ser implementada de forma semelhante energia.
*
Sntese de seqncias

Sntese por impulsos: Uma seqncia qualquer pode ser sintetizada como uma soma
ponderada de seqncias impulsivas deslocadas no tempo. Este resultado ser usado
quando estudarmos os sistemas discretos.

Sntese simtrica e anti-simtrica: Uma seqncia complexa qualquer pode ser
decomposta em componente simtrica e anti-simtrica. No MATLAB isso pode ser feito
por meio da seguinte funo:
function [xs, xa, m] = sim_antisim(x,n)
% Decomposio de um sinal complexo em componente simtrica e anti-simtrica
% --------------------------------------------------------------------------
% [xs, xa, m] = sim_antisim(x,n)
%
m = -fliplr(n);
m1 = min([m,n]); m2 = max([m,n]); m = m1:m2;
nm = n(1)-m(1); n1 = 1:length(n);
x1 = zeros(1,length(m));
x1(n1+nm) = x; x = x1;
xs = 0.5*(x + conj(fliplr(x)));
xa = 0.5*(x - conj(fliplr(x)));

*
A srie geomtrica

Uma seqncia exponencial positiva da forma {
n
, n 0} onde
uma constante arbitrria, chamada de srie geomtrica. Em processamento digital
de sinais, a convergncia e a expresso para a somatria desta srie usada em
muitas aplicaes. A condio de convergncia e o valor para o qual a somatria
converge so indicados a seguir:



Tambm necessitamos de uma expresso para a somatria com um
nmero finito de termos:




Estes dois resultados sero usados mais adiante ao longo do curso e so
facilmente obtidos atravs da expresso para a somatria dos termos de uma
progresso geomtrica.



1 para ,
1
1
0 n
n
1 ,
1 ,
1
1
1
0 n
N
N
N
n
*
*
Correlao entre seqncias

Correlao uma operao usada em diversas aplicaes de
processamento digital de sinais. uma medida do grau de similaridade entre duas
seqncias. Sejam duas seqncias reais de energia finita, a correlao
cruzada entre as mesmas ser:




O ndice k chamado de parmetro de intervalo ou deslocamento. O
caso especial onde as duas seqncias so iguais chamado de autocorrelao :




A autocorrelao mede a similaridade entre diferentes alinhamentos de
uma mesma seqncia .
) ( e ) ( n y n x
n
xy
k n y n x k r ) ( ) ( ) (
*
n
xx
k n x n x k r ) ( ) ( ) (
*
*
Sistemas Lineares

Um sistema de tempo discreto matematicamente descrito
como um operador T [] que toma em sua entrada uma seqncia
denominada excitao e a transforma em sua sada em outra seqncia
chamada resposta.

Os sistemas de tempo discreto podem ser amplamente
classificados em lineares e no-lineares. Um sistema linear se e
somente se satisfizer o princpio de superposio:


) ( , ) ( , ,
) ( ) ( ) ( ) (
linear
2 1 2 1
2 2 1 1 2 2 1 1
n x n x a a
n x T a n x T a n x a n x a T
T

*
Sistemas Lineares

A resposta L[ (n - k)] pode ser interpretada como a
resposta de um sistema linear no tempo n excitao de um impulso
unitrio ocorrido no instante k. a chamada resposta impulsiva, denotada
por h (n , k) .

A resposta impulsiva h (n , k) em princpio variante no
tempo, o que na prtica no muito conveniente. Por outro lado, sistemas
com resposta impulsiva invariante no tempo so amplamente utilizados
em processamento digital de sinais.


*
Sistemas Lineares Invariantes no Tempo

Um sistema linear no qual o par excitao-resposta invariante a um
deslocamento k no tempo chamado de sistema linear invariante no tempo (LIT). Para
um sistema LIT a operao de deslocamento pode ser realizada indiferentemente tanto
na excitao como na resposta.

Em um sistema LIT, a resposta impulsiva variante no tempo h (n , k)
torna-se uma funo invariante no tempo h (n - k). A resposta ao impulso de um
sistema LIT dada ento simplesmente por h (n). A operao matemtica que envolve
a excitao e a resposta impulsiva para produzir a sada do sistema chamada
somatria de convoluo e denotada pelo smbolo *.

Portanto um sistema LIT completamente caracterizado no domnio do
tempo por sua resposta impulsiva h (n).
*
Estabilidade

um conceito muito importante na teoria dos sistemas lineares. A
primeira razo para estudar a estabilidade evitar construir sistemas que causem
danos ou operem em regime de saturao. Um sistema dito estvel se qualquer
entrada limitada produzir uma sada limitada. Isso equivale a dizer que um sistema
linear invariante no tempo estvel se e somente se sua resposta impulsiva
absolutamente somvel e, portanto, tende a zero quando se aproxima do infinito :





Causalidade

Este conceito necessrio para termos certeza de que o sistema pode
ser fisicamente realizvel. Um sistema dito causal se a sada no tempo discreto n
0
depende somente das entradas com ndice menores ou iguais a n
0
; isto , a sada
no depende de valores futuros da entrada. Um sistema LIT causal se e somente
se sua resposta impulsiva for igual a zero para ndices menores que zero.


0 ) ( lim ) (
, , ) ( ) (
N n
N
n h n h de Estabilida
y x n x n x
*
Sistemas FIR e sistemas IIR
conveniente subdividir a classe dos sistemas LIT em dois tipos: Aqueles
que tm uma resposta impulsiva de durao finita (FIR - Finite-duration Impulse
Response) e aqueles outros que tm uma resposta impulsiva de durao infinita (IIR -
Infinite-duration Impulse Response). Um sistema FIR tem uma resposta impulsiva igual
a zero fora de um certo intervalo de tempo finito. Sem perda de generalidade, vamos
concentrar nossa ateno em sistemas FIR causais, nos quais




O sistema atua como uma janela que olha somente para as ultimas M amostras do
sinal de entrada a fim de gerar a sada. Ele simplesmente esquece as amostras com
ndice menor que n - M. Por isso dizemos que um sistema FIR tem uma memria finita
com o tamanho de M amostras.
Em contraste, um sistema IIR possui uma memria de durao infinita,
pois sua sada dada pela frmula de convoluo completa:

M
k
k n x k h n y
M n n n h
0
) ( ) ( ) (
a reduz se convoluo de frmula a Ento
e 0 , 0 ) (
0
) ( ) ( ) (
k
k n x k h n y
*
Equaes de diferenas
At este ponto tratamos de sistemas LIT que so caracterizados por sua
resposta impulsiva, que nos permite obter a sada de um sistema para qualquer
seqncia de entrada por meio da somatria de convoluo. Ou seja, a somatria de
convoluo parece ser uma maneira de implementar o sistema. No caso de sistemas
FIR, esta realizao envolve adies, multiplicaes e um nmero finito de espaos de
memria para armazenar as amostras anteriores. Consequentemente, um sistema FIR
pode ser implementado diretamente atravs da somatria de convoluo.
Se o sistema for IIR, entretanto, sua implementao prtica por meio da
convoluo claramente impossvel, pois requereria uma memria de tamanho infinito.
No entanto, um sistema IIR pode ser descrito e implementado na prtica por meio de
uma equao de diferenas. As equaes de diferenas que descrevem um sistema de
tempo discreto so o equivalente das equaes diferenciais que descrevem um sistema
de tempo contnuo. Um sistema LIT discreto pode ser descrito por uma equao de
diferenas a coeficientes constantes na forma:

N
k
k
M
m
m
M
m
m
N
k
k
k n y a m n x b n y
n m n x b k n y a
1 0
0 0
) ( ) ( ) (
: por e equivalent forma de ou
, ) ( ) (
*
Resposta natural e resposta forada

A resposta do sistema ilustrado na transparncia composta por duas
partes. A primeira resultado da condio inicial do sistema. A segunda parte a
resposta do sistema ao sinal de entrada.
Se o sinal de entrada fosse nulo para todo n ento ficaramos apenas com
a primeira parte da resposta, denominada resposta natural, pois depende apenas das
condies iniciais do sistema e no do sinal de entrada.
Se as condies iniciais fossem nulas, o sistema estaria inicialmente sem
memria e teramos apenas a segunda parte da resposta, chamada de resposta
forada pois caso no houvesse entrada tambm no haveria sada.
Em um sistema linear, a resposta completa dada pela soma da resposta
natural e da resposta forada (princpio da superposio) :


) 1 ( y
) ( ) ( ) ( n y n y n y
F N
*
*
Transformada de Fourier de Tempo Discreto (TFTD)
Vimos anteriormente como um sistema discreto linear e invariante no
tempo (LIT) pode ser representado utilizando sua resposta impulsiva, que nos permite
calcular a resposta do sistema qualquer seqncia de entrada, usando o somatrio de
convoluo. Isso possvel devido ao fato de que podemos representar qualquer sinal
discreto por uma combinao linear de impulsos unitrios devidamente escalados e
deslocados no tempo. De maneira similar, poderamos representar qualquer seqncia
como combinao linear de outras seqncias. Entretanto, quando o sistema LIT, uma
destas possveis representaes mostra-se especialmente til: A Transformada de
Fourier de Tempo Discreto (TFTD), que baseada na seqncia exponencial complexa
:

} {
n j
e
radianos. em medida e digital freqncia denominada , real
varivel da complexa e contnua funo uma onde

2
1
) (
: por obtida ser pode inversa mada A transfor
) ( ) (
: por definida (TFTD) Discreto Tempo de
Fourier de da Transforma sua ento ) ( Se
1
j
n j
-
j j
n
n j j
-
e X
d e e X e X F n x
e n x n x F e X
n x
*
Implementao da TFTD no MATLAB
Se o sinal discreto for de durao infinita, o MATLAB no pode ser usado
para calcular diretamente a TFTD a partir da definio. Mas pode ser usado para plotar o
mdulo e a fase (ou parte real e imaginria) da TFTD no intervalo [0, ].
Caso a seqncia tenha durao finita, o MATLAB pode ser usado para
implementar diretamente a TFTD pela sua definio. Para calcular a TFTD em
freqncias igualmente espaadas no intervalo [0, ] podemos fazer uso de uma
operao de multiplicao vetorial:








Esta no a maneira mais elegante de calcular numericamente a TFTD,
pois n
T
k uma matriz N x (M+1) que pode exceder o tamanho limite na Student
Edition do MATLAB para valores grandes de N e M. Mais adiante, quando estudarmos a
Transformada Discreta de Fourier, veremos como implementar algoritmos
computacionalmente mais eficientes por meio da Transformada Rpida de Fourier.



k n x X
k n X x
T
l
j
l
N
l
l
kn M j j
k N
M

j
k n e X n x
M k n x e e X
M k k
M

n n n N n x
k
l k
exp : escrever podemos
e , , ) ( Definindo
,..., 1 , 0 , ) ( Ento
,..., 1 , 0 , e ) ( durao de ) (
1
/
1
*
Propriedades da TFTD

1. Periodicidade : A TFTD peridica em com perodo 2 . Isso
significa que basta analisar um perodo ([0,2 ] ou [- , ]) e no o
domnio inteiro - < < .

2. Simetria : Para seqncias reais, a TFTD conjugada simtrica.
Ou seja, sua parte real e seu mdulo possuem simetria par enquanto
que sua parte imaginria e sua fase possuem simetria mpar. Como
conseqncia, no caso de seqncias reais, basta considerar meio
perodo da TFTD. Geralmente, este perodo escolhido como sendo o
intervalo [0, ] .

*
Propriedades da TFTD

3. Linearidade : A Transformada de Fourier de Tempo Discreto uma transformao
linear e portanto satisfaz o princpio da superposio.
4. Deslocamento no tempo : O deslocamento no domnio do tempo corresponde a uma
mudana de fase na TFTD.
5. Deslocamento em freqncia : A multiplicao por uma exponencial complexa
corresponde a um deslocamento no domnio da freqncia.
6. Espelhamento : O espelhamento (em torno do eixo vertical) corresponde tambm ao
mesmo espelhamento no domnio da freqncia.
7. Conjugao : A operao de conjugao no domnio do tempo corresponde ao
espelhamento e conjugao no domnio da freqncia.
8. Convoluo : A convoluo no domnio do tempo equivale a uma simples
multiplicao das respectivas TFTD. Esta uma das mais teis propriedades, que torna
conveniente a anlise do sistema no domnio da freqncia
9. Diferenciao no domnio da freqncia : A diferenciao no domnio da freqncia
equivale a multiplicar por n o sinal no domnio do tempo.
*
Propriedades da TFTD

10. Multiplicao : Esta propriedade dual da convoluo. O smbolo *
indica convoluo peridica.

11. Energia : A energia de uma dada seqncia pode ser escrita como:
2 1
2 1
2
0
2
2
2
0 , ) (
por dada , banda na ) ( de energia a Portanto
) ( : energia de espectral Densidade
. como conhecida igualdade Esta
reais seqncias para
2
1
) (
2
1
d
n x
e X
Parseval Teorema de
d
e X
E
d e X n x E
x
j
x
j
x
j
x
*
Representao de sistemas LIT no Domnio do Tempo e da
Freqncia

A transformada de Fourier a forma de representao
mais til para os sistemas LIT devido ao resultado mostrado na
transparncia: A seqncia de sada a seqncia exponencial de
entrada multiplicada pela transformada de Fourier da resposta
impulsiva na mesma freqncia da exponencial complexa.

Ou seja, a resposta de um sistema LIT a uma
exponencial complexa tambm uma exponencial complexa com a
mesma freqncia da entrada, porm alterada por um fator
multiplicativo.

*
Resposta em Freqncia de Sistemas LIT

A TFTD da resposta em freqncia de um sistema LIT
denominada Resposta em Freqncia ou Funo de Transferncia.

Se tivermos na entrada uma exponencial complexa, ento a
seqncia de sada ser a exponencial de entrada modificada pela
resposta do sistema na freqncia
0
. Isto justifica a definio de H(e
j
)
como resposta em freqncia porque o fator pelo qual a exponencial
complexa deve ser multiplicada para obter a sada.

Este poderoso resultado pode ser extendido para uma
combinao linear de exponenciais complexas usando o princpio da
superposio.

Em geral, a resposta em freqncia uma funo
complexa, e portanto pode ser representada por sua magnitude e fase,
como veremos a seguir.

*
Resposta a Seqncias Senoidais

Seja a entrada de um sistema LIT cuja
resposta impulsiva . Ento a resposta ser uma outra
senide com a mesma freqncia , com amplitude atenuada ou
amplificada por
e fase deslocada por . Este resultado pode ser
estendido para uma combinao linear de seqncias senoidais.

Esta resposta denominada resposta estacionria a uma
entrada que corresponde a uma senide eterna, porque ela foi aplicada
ao sistema desde . Neste caso no existe resposta transitria,
que ocorreria caso a senide fosse aplicada em um instante de tempo
posterior.


) cos( ) (
0 0
n A n x
) (n h ) (n y
0
0
j
e H
0
j
e H
n
*
Resposta a Seqncias Arbitrrias

Se uma dada seqncia absolutamente somvel for
colocada na entrada de um sistema LIT, a TFTD do sinal na sada poder
ser obtida simplesmente multiplicando-se a resposta em freqncia do
sistema pela TFTD da seqncia de entrada.

O sinal de sada no domnio do tempo poder ser obtido
atravs da TFTD inversa. Porm, isso requer uma operao de
integrao, que no conveniente para ser implementada
computacionalmente (no MATLAB, por exemplo). Como veremos mais
adiante, existe uma abordagem alternativa para o caso de entradas
arbitrrias, usando a transformada Z e expanso em fraes parciais.


*
Resposta em Freqncia a partir de Equaes de Diferenas

Quando um sistema LIT representado pela equao de
diferenas, para encontrar a expresso de sua resposta em freqncia,
deveramos em princpio necessitar da expresso da sua resposta
impulsiva. No entanto, usando como entrada uma exponencial complexa,
podemos facilmente obter a expresso de sua resposta em freqncia a
partir da equao de diferenas, conforme foi mostrado na transparncia.

A expresso da resposta em freqncia assim obtida pode
ser facilmente implementada no MATLAB, a partir dos parmetros da
equao de diferenas, como veremos a seguir.


*
Implementao da Resposta em Freqncia no MATLAB

Na prtica, as equaes de diferenas so de ordem
elevada (maior que 2) e precisamos de um procedimento compacto para
implementar a expresso geral da resposta em freqncia no MATLAB.

Essa implementao pode ser feita por meio de simples
operaes de multiplicao de matrizes. Para isso, vamos calcular a
expresso de em freqncias igualmente
espaadas no intervalo [0, ].

Conforme mostra a transparncia, a resposta em freqncia
assim calculada consiste no vetor H, que pode ser obtido usando a
operao ./ do MATLAB. Este procedimento pode ser facilmente
implementado em uma funo no MATLAB, tendo como entrada os
vetores b e a.
K k e H
j
,..., 1 , 0 em
*
Amostragem de Sinais Analgicos

Na grande maioria das aplicaes de processamento digital
de sinais, o que existe no mundo real um sinal analgico que deve ser
convertido em um sinal discreto por meio das operaes de amostragem
e quantizao. Estes sinais assim discretizados so ento submetidos a
um processador digital de sinais.

Usando a anlise de Fourier, podemos descrever a
operao de amostragem no domnio da freqncia e analisar os seus
efeitos. Assumiremos em nossa abordagem que o nmero de nveis de
quantizao suficientemente grande para que o efeito da quantizao
da amplitude dos sinais discretos possa ser desprezado.

Seja x
a
(t) um sinal analgico absolutamente integrvel. A
sua Transformada de Fourier de tempo contnuo (TFTC) dada pela
expresso de X
a
(j ) conforme mostrada na transparncia, onde a
freqncia analgica em radianos por segundo. A Transformada Inversa
de Fourier de tempo contnuo obtida atravs da integral cuja expresso
( x
a
(t) ) apresentada na transparncia.


*
Amostragem no Domnio da Freqncia

Vamos agora amostrar o sinal contnuo x
a
(t) a cada
intervalo de T
s
segundos a fim de obter o sinal de tempo discreto discreto
x(n), de acordo com a definio da transparncia. Seja X(e
j
) a
Transformada de Fourier de tempo discreto (TFTD) de x(n). Pode ser
mostrado que a TFTD uma somatria de verses de X
a
(j ) deslocadas
em freqncia e escaladas em amplitude e freqncia, conforme a
expresso de X(e
j
) apresentada na transparncia.

As freqncias analgica e digital esto relacionadas por
meio do perodo de amostragem T
s
, enquanto que a freqncia ou taxa
de amostragem dada pelo seu valor inverso, como mostrado na
transparncia.
*
*
Teorema da Amostragem

possvel recuperar a transformada de Fourier X
a
(j ) a partir de X(e
j
)
(ou de maneira equivalente, recuperar o sinal analgico x
a
(t) a partir de suas amostras
x(n) ), se as infinitas rplicas de X
a
(j ) no se sobrepuserem umas s outras para
formar X().

Isso somente ser possvel para sinais analgicos limitados em
freqncia, isto , se existir uma freqncia
0
(em radianos) tal que X
a
(j ) seja zero
para | | >
0
. Em hertz, a freqncia F
0
=
0
/2 chamada de largura de faixa do
sinal x
a
(t).

Podemos ento formular o Teorema da Amostragem (ou Teorema de
Nyquist) para sinais limitados em freqncia :

Um sinal anal gico x
a
(t) com largura de faixa F
0
poder ser
reconstrudo a partir de suas amostras x(n) = x
a
(nT
s
) se a freqnci a de
amostragem F
s
= 1 / T
s
for mai or que duas vezes a largura de faixa F
0
de x
a
(t) :
F
s
> 2F
0
. Caso contrri o, ocorrer aliasi ng (sobreposio das rplicas
espectrais) e ento o sinal analgico x
a
(t) no poder ser recuperado a partir de
suas amostras x(n). A taxa de amostragem F
s
= 2F
0
denominada de taxa de
Nyquist para o sinal x
a
(t).






*
*
Amostragem no MATLAB

Em sentido estrito no possvel analisar sinais analgicos
usando o MATLAB, a menos que seja usada a toolbox Symbolic.
Entretanto, se o sinal x
a
(t) for amostrado a uma taxa muito superior de
Nyquist e durante um tempo suficiente, ento possvel simular
aproximadamente um sinal analgico.

Seja T
s
um perodo de amostragem que obedea ao teorema
de Nyquist. Faamos ento uma super-amostragem do sinal x
a
(t) com um
intervalo t de tal forma que t << T
s
. Ento o vetor x
G
(m) = x
a
(m t) pode
ser usado para simular o sinal analgico x
a
(t). O perodo de amostragem T
s

no deve ser confundido com o intervalo t, que usado unicamente para
representar um sinal analgico no MATLAB.

De forma similar, a transformada de Fourier de tempo contnuo
pode tambm ser aproximada pela expresso de X
a
(j ) apresentada na
transparncia. Esta expresso pode ser implementada no MATLAB de
maneira semelhante TFTD. Podemos ento usar o MATLAB para analisar
o fenmeno da amostragem de sinais analgicos.


*
*
A Transformada Z

Vimos anteriormente que podemos descrever sistemas LIT no
domnio da freqncia por meio da TFTD. Entretanto, h dois problemas com
relao Transformada de Fourier: O primeiro que existem muitos sinais digitais
teis na prtica (tais como o degrau unitrio e a rampa) para os quais a TFTD no
existe. O segundo que a resposta transitria de um sistema devida s condies
iniciais no pode ser obtida por meio da Transformada de Fourier.
Para resolver estes problemas, precisamos utilizar uma extenso da
TFTD denominada Transformada Z. Sua verso bilateral (de - a + ) proporciona
um outro domnio no qual uma grande classe de sinais e sistemas podem ser
analisados, enquanto que sua verso unilateral (de 0 a + ) pode ser usada para
obter a resposta de sistemas submetidos a determinadas condies iniciais.
A Transformada Z bilateral de uma seqncia dada pela expresso
apresentada na transparncia. O conjunto de valores para os quais a Transformada
Z existe chamado de regio de convergncia (RC), definida no plano complexo
em termos da magnitude da varivel complexa z.
A inverso da Transformada Z pode ser obtida por meio da integral
apresentada na transparncia, muito embora esta expresso raramente seja
utilizada na prtica, como veremos mais adiante.
*
Observaes

1. A varivel complexa z chamada de freqncia
complexa, dada por z = |z|e
j
, onde a sua magnitude denominada
atenuao e a varivel que determina a sua fase denominada
freqncia real.

2. A funo |z| = 1 (ou z = e
j
) uma circunferncia de raio
unitrio no plano z, denominada circunferncia unitria. Se a regio de
convergncia (RC) contm a circunferncia unitria, ento a
Transformada Z pode ser calculada para z = e
j
. Portanto, a
Transformada de Fourier de tempo discreto (TFTD) pode ser considerada
como um caso especial da Transformada Z.

3. Como a RC definida em termos da magnitude |z|, o seu
formato o de um anel aberto conforme ilustrado na transparncia. R
x-

pode ser igual a zero e/ou R
x+
pode ser infinito. Se R
x+
< R
x-
, a regio de
convergncia um espao nulo e a Transformada Z no existe.




*
Exemplo 1

A seqncia deste exemplo (ver transparncia) chamada
de positiva pois definida somente para os ndices de tempo maiores que
zero.
Muitas vezes, como neste exemplo, a Transformada Z
uma funo racional, com um polinmio em z no numerador e outro
polinmio no denominador. As razes do numerador so chamadas de
zeros e as razes do denominador so chamadas de plos da
Transformada Z.
Neste exemplo, X
1
(z) possui um zero na origem z = 0 e um
plo em z = a. Portanto, o sinal digital x
1
(n) pode ser representado por
um diagrama de plos e zeros no plano complexo da varivel z, onde os
zeros so denotados por o e os plos por , conforme ilustrado na
figura da transparncia.

*
Exemplo 2

A seqncia deste exemplo (ver transparncia) chamada
de negativa pois definida somente para os ndices de tempo menores
que zero.
A regio de convergncia (sombreada) e o diagrama de
plos e zeros so mostrados na figura. importante observar neste
exemplo e no anterior que, se b = a, ento X
2
(z) = X
1
(z) exceto por suas
respectivas regies de convergncia, ou seja, RC
1
RC
2
. Isto significa
que a RC

uma caracterstica diferenciativa, que garante a unicidade da
Transformada Z . Portanto, de fundamental importncia na anlise de
um sistema.


*
Exemplo 3

A seqncia deste exemplo (ver transparncia) chamada
de bilateral pois definida para todos os ndices de tempo.
Pela figura da transparncia podemos perceber que se a
magnitude |b | < |a |, ento RC
3
seria um espao nulo e a Transformada Z
X
3
(z) no existiria. Se |b | > |a |, ento a regio de convergncia RC
3
|a
| < |z | < |b | e X
3
(z) existe nesta regio (sombreada) conforme mostrado
na figura.
*
Propriedades da Regio de Convergncia (RC)

1. A regio de convergncia sempre limitada por uma
circunferncia, pois a condio de convergncia sempre na magnitude
da varivel complexa z.

2. Um sinal digital que seja nulo para qualquer ndice menor
que um certo valor (n
0
), denominado seqncia direita. Nesse caso, a
RC sempre a regio exterior a uma circunferncia de raio R
x-
(R
x-
< |z| <
). Se n
0
for maior ou igual a zero, ento a seqncia direita tambm
causal.

3. Um sinal digital que seja nulo para qualquer ndice maior
que um certo valor (n
0
), denominado seqncia esquerda. Nesse
caso, a RC sempre a regio interior a uma circunferncia de raio R
x+
(0
< |z| < R
x+
). Se n
0
for menor ou igual a zero, ento a seqncia
esquerda tambm anticausal.




*
Propriedades da Regio de Convergncia (RC)

4. No caso de seqncias bilaterais, a regio de
convergncia sempre um anel aberto, se ele existir.
5. Um sinal digital que seja nulo para n < n
1
e n > n
2
dito de
durao finita. A regio de convergncia para este tipo de sinal o plano
z inteiro. Se n
1
< 0, ento a regio de convergncia no inclui o limite z
. Se n
2
> 0, ento o ponto z = 0 no est includo na regio de
convergncia.
6. A regio de convergncia no pode incluir um plo pois a
Transformada Z tende a infinito nestes pontos.
7. Existe pelo menos um plo na fronteira da regio de
convergncia de uma Transformada Z racional.
8. A regio de convergncia uma regio contgua, isto , a
RC no pode ser composta por partes separadas.
Para processamento de sinais em tempo real, as
seqncias so sempre causais. Nesse caso, as propriedades de maior
interesse so as de nmero 2 e 5.
*
Propriedades da Transformada Z

As propriedades da Transformada z so generalizaes das
propriedades da Transformada de Fourier de Tempo Discreto j
estudadas anteriormente. Apresentamos aqui estas propriedades sem a
respectiva prova de cada uma delas, que pode ser encontrada na
referncia n. 2 da bibliografia indicada.

*
Propriedades da Transformada Z

A ltima propriedade transforma uma operao de convoluo no
domnio do tempo em uma multiplicao entre duas funes. Esta uma propriedade
significativa, sob diferentes aspectos.
Em primeiro lugar, se X
1
(z) e X
2
(z) so polinmios, ento seu produto
pode ser calculado usando-se a funo conv do MATLAB.
Outro uso importante da propriedade de convoluo no clculo da
resposta de um sistema, como veremos mais adiante. Esta interpretao
particularmente til para verificar a expresso da Transformada Z usando o MATLAB.
Como o MATLAB realiza somente processamentos numricos, ele no
pode ser usado para calcular diretamente a expresso da Transformada Z. Vejamos
esta questo mais de perto: Seja x(n) uma seqncia cuja Transformada Z uma
funo racional X(z) , com numerador B(z) e denominador A(z), onde ambos so
polinmios em z
-1
. Se usarmos os coeficientes de B(z) e A(z) como sendo os vetores
b e a na funo filter do MATLAB e excitarmos este filtro com um impulso unitrio
(n) , ento a partir da propriedade n. 8 e usando o fato de que Z [ (n) ] = 1, a sada
do filtro ser x(n) (esta uma abordagem numrica para calcular a Transformada Z
Inversa, veremos as abordagens analticas mais adiante). Podemos ento comparar
esta sada com a seqncia x(n) dada e verificar portanto que X(z) realmente a
transformada de x(n) .


*
Tabela de Transformadas Z

Usando a definio da Transformada Z e suas propriedades,
podemos determinar a Transformada Z das seqncias mais comuns.
Uma lista de algumas destas seqncias e suas respectivas
transformadas e regies de convergncia apresentada na
transparncia.

*
Tabela de Transformadas Z

Usando a definio da Transformada Z e suas propriedades,
podemos determinar a Transformada Z das seqncias mais comuns.
Uma lista de algumas destas seqncias e suas respectivas
transformadas e regies de convergncia apresentada na
transparncia.


*
*
Inverso da Transformada Z

O obteno da Transformada Z Inversa pela definio requer o
clculo da integral sobre uma curva no plano complexo, que em geral um
procedimento razoavelmente complicado.
Felizmente, existe uma abordagem mais prtica, que o mtodo de
expanso em fraes parciais. Este mtodo faz uso da tabela de Transformadas Z
e requer que a funo no domnio Z seja uma funo racional. Esta restrio
geralmente no constitui nenhum problema em processamento digital de sinais.
A idia central advm do fato de que, se X(z) uma funo racional
de z
-1
, ela pode ser expressa como uma soma de fatores de primeira ordem,
usando expanso em fraes parciais. Uma vez realizada a expanso, as
seqncias correspondentes a cada um destes fatores pode ser facilmente obtida
usando a tabela de Transformadas Z.
A expanso em fraes parciais pode tambm ser feita usando
potncias positivas de z. Nesse caso, os resduos obtidos sero diferentes
daqueles obtidos para potncias negativas de z (R
m
R
k
). Tambm a forma
analtica do x(n) obtido normalmente ser diferente para os dois casos (potncias
negativas ou positivas de z), porm elas com certeza sero equivalentes (as
amostras de x(n) sero iguais para os dois casos).
*
Inverso da Transformada Z

O mtodo pode ser resumido da seguinte maneira:
1. Dada a funo racional X(z), se o maior expoente (de z
-1
) do
numerador (M) for maior ou igual ao maior expoente do denominador (N) ,
preciso realizar uma diviso polinomial, a fim de expressar X(z) como
soma de uma parte racional prpria e uma parte polinomial.
2. Realizar uma expanso em fraes parciais da parte racional prpria,
obtendo os resduos conforme ilustrado na transparncia, para os casos
de plos distintos e plos mltiplos. Veremos mais adiante como fazer
isso usando o MATLAB.
3. Escrever a seqncia x(n) resultante conforme mostrado na
transparncia, usando a tabela de Transformadas Z se necessrio.


*
Implementao no MATLAB

Existe uma funo do MATLAB chamada residuez que
pode ser usada para calcular os termos da parte residual e da parte direta
(polinomial) de uma funo racional em z
-1
. O formato de entradas e
sadas desta funo est mostrado na transparncia.
Tendo como entradas os vetores linha b e a, a funo
retorna um vetor coluna R contendo os resduos, outro vetor coluna p
contendo a localizao dos plos e um vetor linha C contendo os termos
diretos. Se existirem plos mltiplos, eles sero repetidos dentro do vetor
p.
Esta mesma funo pode ser usada de maneira inversa:
[b,a]=residuez(R,p,C); com 3 argumentos de entrada e 2 de sada,
converte uma expanso em fraes parciais de volta para a forma
racional, com os correspondentes coeficientes nos vetores linha b e a.
IMPORTANTE: A funo residuez s pode ser usada na
obteno dos resduos para potncias negativas de z!

*
Representao de sistemas no Domnio Z

De maneira semelhante resposta em freqncia H(e
j
),
podemos definir uma funo no domnio Z, H(z), chamada funo de
sistema. No entanto, diferentemente da resposta em freqncia, H(z)
pode existir tambm para sistemas que no so estveis.
A funo de sistema por definio a Transformada Z da
resposta impulsiva. Usando a propriedade de convoluo, a Transformada
Z da sada do sistema dada por Y(z)= H(z)X(z) , sendo que sua regio
de convergncia ser a interseo das regies de convergncia da
seqncia de entrada e da resposta impulsiva, desde que elas se
sobreponham parcialmente.
*
Funo de Sistema a partir da
Representao por Equaes de Diferenas
Quando um sistema linear invariante no tempo (LIT) descrito por uma
equao de diferenas, a funo de sistema H(z) pode ser facilmente obtida. Tomando
a Transformada Z de ambos os lados da equao de diferenas e usando algumas
propriedades, obtemos a funo de sistema na forma racional, conforme ilustrado na
transparncia. Aps uma fatorao, pode-se obter a funo de sistema no formato




onde os z
l
s so os zeros e os p
k
s so os plos do sistema. Portanto, um sistema LIT
pode ser representado no domnio Z por um diagrama de plos e zeros, o que muito
til no projeto de alguns filtros digitais mais simples. Para determinar os zeros e plos
de uma funo racional H(z), podemos usar a funo roots do MATLAB para os
polinmios do numerador e do denominador. Tambm possvel usar o MATLAB para
plotar estas razes no formato de um diagrama de plos e zeros. A funo
zplane(b,a) plota os plos e zeros a partir do vetores linha b e a (coeficientes
polinomiais do numerador e denominador, respectivamente). Outra forma de usar a
mesma funo zplane(z,p) , onde os zeros e plos so colocados nos vetores
coluna z e p. Portanto, preciso prestar ateno ao formato dos argumentos de
entrada para usar adequadamente esta funo do MATLAB.
N
k
k
M
l
l
M N
N
N N N
M
M
M M
p z
z z
z b
a z a z z
b
b
b
z b
z z b
z H
1
1
0
1
1
0 0
1
1
0

*
Funo de Sistema e Resposta em Freqncia

Se a RC de H(z) inclui a circunferncia unitria (z = e
j
),
ento podemos obter a partir da funo de sistema H(z) a resposta em
freqncia (ou funo de transferncia) H(e
j
).
Os fatores do numerador e do denominador (ver
transparncia) podem ser interpretados como vetores no plano complexo,
e portanto podemos calcular a magnitude de H(e
j
) como sendo um
produto das magnitudes dos vetores que tm origem nos zeros de H(z) e
terminam na circunferncia unitria, dividido pelo produto das magnitudes
dos vetores que tm origem nos plos de H(z) e terminam na
circunferncia unitria, escalados por |b
0
|.
De forma similar, a fase da resposta em freqncia pode ser
interpretada como sendo a soma de um fator constante, de um fator de
fase linear e um fator de fase no-linear (soma dos ngulos dos vetores
dos zeros menos a soma dos ngulos dos vetores dos plos).

*
Implementao no MATLAB

Vimos anteriormente como plotar a magnitude e fase da
resposta em freqncia de um sistema, implementando diretamente suas
formas funcionais. Porm, o MATLAB oferece uma funo chamada freqz
para realizar esta operao, que usa a interpretao que acabamos de
ver. Na sua forma mais simples, esta funo chamada por
[H,w]=freqz(b,a,N), que retorna w, o vetor de freqncias N-
dimensional, e o vetor complexo H da resposta em freqncia, tambm
N-dimensional. Os argumentos de entrada da funo so os coeficientes
do numerador e do denominador de H(z), colocados nos vetores b e a,
respectivamente. A resposta em freqncia calculada em N pontos
igualmente espaados em torno da parte superior da circunferncia
unitria.
A segunda forma, [H,w]=freqz(b,a,N,whole), usa N
pontos em torno da circunferncia unitria completa. Existe uma terceira
forma, H=freqz(b,a,w), que retorna a resposta em freqncia
naqueles pontos designados pelo vetor de freqncias w, normalmente
entre 0 e . H ainda uma quarta forma, freqz(b,a,...), sem retornar
nada, que plota em uma figura a magnitude (em dB) e a fase (em graus)
da resposta em freqncia.
*
Estabilidade e Causalidade

Para sistemas LIT, a estabilidade equivalente a ter uma
resposta impulsiva absolutamente somvel, como j foi visto
anteriormente. Se o sistema estvel, isto significa que ele possui uma
resposta em freqncia, o que por sua vez implica que a circunferncia
unitria est contida na regio de convergncia da funo de sistema
(Teorema 2 da transparncia).
Para a causalidade de um sistema LIT necessrio que a
resposta impulsiva seja nula para os ndices de tempo menores que zero
(seqncia causal). Isto implica que a regio de convergncia da funo
de sistema deve estar fora de alguma circunferncia de raio R
h-
. No
entanto, esta no uma condio suficiente pois qualquer seqncia
direita possui uma RC semelhante. Entretanto, se um sistema estvel,
fica fcil verificar sua causalidade examinando sua resposta impulsiva.


*
Soluo de Equao de Diferenas

Mencionamos anteriormente uma forma para a soluo de
equaes de diferenas lineares a coeficientes constantes, que consiste
em encontrar a resposta natural (com condies iniciais e sem sinal de
entrada) e a resposta forada (sem condies iniciais e com sinal de
entrada).
Usando a Transformada Z, podemos agora utilizar um
mtodo para a obteno destas respostas. Alm disso, discutiremos
outras formas para a soluo de equaes de diferenas: Soluo
particular e soluo homognea, resposta transitria e resposta
estacionria.
Em processamento digital de sinais, as equaes de
diferenas geralmente referem-se apenas a ndices de tempo positivos
(sistemas causais). Para este propsito, definimos uma outra verso da
Transformada Z denominada de unilateral (ver transparncia).
Aplicando a propriedade de deslocamento Transformada Z
unilateral, obtemos um resultado (ver transparncia) que nos ser til
para resolver equaes de diferenas sujeitas a condies iniciais no
nulas.

*
Soluo de Equao de Diferenas
Vamos demonstrar um mtodo para solucionar equaes de
diferenas usando um exemplo:


) (
4
1
3
1
3
2
2
1
) (
1 1 1
1
) (
obtemos parciais fraes em Expandindo
1 1 1
2
1
2 1
1
1
) (
temos do, rearranjan e iniciais condies as do Substituin
1
1
) ( ) 1 ( ) 2 (
2
1
) ( ) 1 (
2
3
) (
obtemos to, deslocamen de e propriedad a usando e diferenas
de equao da lados dois aos unilateral Z da Transforma a Aplicando
:
10 ) 2 ( e 4 ) 1 ( iniciais condies as com
) (
4
1
) ( onde
0 , ) ( ) 2 (
2
1
) 1 (
2
3
) ( Resolver
1
4
1
3
1
1
3
2
1
2
1
1
4
1
1 1
2
1
2
2
1
1
4
9
2
2
1
1
2
3
1
1
4
1
1
4
1
2 1 1
n u n y
z z z
z Y
z z z
z z
z z
z
z
z Y
z
z Y z y z y z Y z y z Y
Soluo
y y
n u n x
n n x n y n y n y
n n
n
*
Formas das Solues

No exemplo da transparncia vemos primeiramente a
resposta completa da soluo da equao de diferenas, que pode ser
expressa de diversas formas:

Resposta homognea e resposta particular: A resposta homognea
devido aos plos do sistema e a resposta particular devida aos plos do
sinal de entrada.

Resposta transitria e resposta estacionria: A resposta transitria
devida aos plos que esto no interior da circunferncia unitria,
enquanto que a resposta estacionria devida aos plos que esto na
fronteira da circunferncia unitria (em cima da linha da circunferncia, se
existirem). A resposta correspondente aos plos que esto fora da
circunferncia unitria (se existirem) chama de resposta ilimitada.




*
Formas das Solues

Resposta natural e resposta forada: A resposta natural a resposta do
sistema com condies iniciais e sem sinal de entrada. Pelo exemplo da
transparncia, podemos notar que nesse caso sempre ser possvel
encontrar a expresso (no domnio Z) de uma entrada equivalente s
condies iniciais, X
CI
(z), capaz de gerar a mesma sada devida s
condies iniciais.
A resposta forada a resposta do sistema sem condies
iniciais e com sinal de entrada. No exemplo da transparncia, basta
eliminar a expresso de X
CI
(z) e adicionar a expresso da Transformada
Z correspondente ao sinal de entrada, X(z).

*
Implementao no MATLAB

A funo filter do MATLAB pode ser usada para resolver equaes de
diferenas, dados os seus coeficientes e o sinal de entrada (sem condies iniciais).
Esta funo pode ser tambm utilizada para encontrar a resposta completa quando
esto presentes as condies iniciais. Neste caso a funo funo filter deve ser
chamada por y = filter(b,a,x,xci), onde xci o vetor correspondente
entrada equivalente s condies iniciais (no domnio do tempo). Por exemplo, se
quisssemos usar a funo filter do MATLAB para resolver a equao de
diferenas do exemplo que acabamos que ver, teramos que digitar:
>> a = [1 -1.5 0.5]; b = [1]
>> n = [0:7]; x = (1/4).^n; xci = [1 -2];
>> y = filter(b,a,x,xci);
Entretanto, na prtica muitas vezes as equaes de diferenas so de
ordem elevada, e nesses casos seria extremamente tedioso determinar o vetor xci
analiticamente. Por isso o MATLAB prov uma funo chamada filtic, disponvel no
Signal Processing Toolbox, que pode ser chamada pela linha de comando xci =
filtic(b,a,Y,X), onde Y,X so os vetores correspondentes s condies iniciais
na sua forma direta (ver transparncia). No exemplo anterior teramos:
>> Y = [4, 10]; xci = filtic(b,a,Y); e a resposta seria xci = 1 -2

*
*
A Srie Discreta de Fourier

Vimos anteriormente a definio de uma seqncia
peridica com perodo fundamental N (ver transparncia). Sabemos da
anlise de Fourier que as funes peridicas podem ser sintetizadas
como uma combinao linear de exponenciais complexas cujas
freqncias so mltiplos (ou harmnicas) da freqncia fundamental
(que no nosso caso 2 /N ).
A partir da periodicidade da TFTD no domnio da freqncia,
conclumos que existe um nmero finito de harmnicas, que so { (2
/N)k , k=0,1,...,N-1 }. Portanto, uma seqncia peridica pode ser
expressa na forma indicada na transparncia (equao de sntese), por
meio dos coeficientes da srie de Fourier. A maneira de calcular os
coeficientes dada pela frmula de anlise (ver transparncia).


*
A Transformada Discreta de Fourier (TDF)

A anlise dos sinais discretos no domnio da freqncia
usualmente realizada de forma computacional. Sabemos que a
representao de um sinal discreto no domnio da freqncia feita pela
Transformada de Fourier de Tempo Discreto (TFTD).
No entanto, a TFTD uma funo contnua e portanto no
uma forma computacionalmente eficiente de representao. Vamos
considerar ento uma representao feita por meio da amostragem do
espectro X( ) do sinal discreto x(n) (amostragem no domnio da
freqncia). Este tipo de representao no domnio da freqncia nos
conduzir at a Transformada Discreta de Fourier (TDF), que uma
poderosa ferramenta computacional para a realizao da anlise de sinais
discretos no domnio da freqncia.
Antes de introduzirmos a TDF, vamos considerar a
amostragem da TFTD de uma seqncia x(n) de energia finita.
Suponhamos que amostremos X( ) com um espaamento de
radianos entre amostras sucessivas. Como X( ) peridica com perodo
2 , somente so necessrias amostras no intervalo [0, 2 ]. Por
convenincia, tomaremos N amostras eqidistantes no intervalo [0, 2 ],
ou seja, faremos = 2 /N, obtendo a expresso mostrada na
transparncia.

*
A Transformada Discreta de Fourier

A somatria correspondente amostragem da TFTD pode
ser subdividida em um nmero infinito de somatrias, cada uma delas
contendo N termos (ver transparncia). Trocando o ndice da somatria
interna de n para n - lN e trocando a ordem das somatrias, obtemos o
resultado mostrado na transparncia.
Chegamos a um sinal que obtido pela repetio peridica
de x(n) a cada N amostras, que claramente peridico com perodo
fundamental N.
*
A Transformada Discreta de Fourier

Um sinal peridico pode ser expandido em srie de Fourier
conforme mostrado na transparncia. Comparando as expresses obtidas
para o sinal peridico, chegamos relao indicada na transparncia, que
nos mostra que o sinal peridico pode ser obtido por meio das amostras
da TFTD X( ) do sinal original x(n).
Porm, isto no implica em que podemos recuperar X( ) ou
x(n) a partir das amostras. A fim de chegar a isso, teremos que considerar
a relao entre o sinal peridico e o sinal x(n):


Como o sinal peridico uma extenso de x(n) dada pela
expresso acima, claro que x(n) pode ser recuperado a partir do sinal
peridico desde que no haja aliasing (sobreposio) no domnio do
tempo, ou seja, se a seqncia x(n) for limitada no tempo, ocupando um
intervalo de tempo menor que o perodo N do sinal peridico, conforme
ser ilustrado na prxima transparncia.



l
lN n x n x ) ( ) (
~
*
A Transformada Discreta de Fourier

Na ilustrao da transparncia, sem perda de generalidade,
consideramos uma seqncia de durao finita x(n), que no-nula no
intervalo 0 n L -1. Observamos que, quando N L, o sinal x(n) pode
ser recuperado a partir do sinal peridico sem ambigidade. Por outro
lado, se N < L, no possvel recuperar x(n) a partir de sua extenso
peridica devido ao efeito de aliasing (sobreposio) no domnio do
tempo.
Portanto, conclumos que o espectro de uma seqncia de
durao finita L, pode ser completamente recuperado a partir de suas
amostras nas freqncias
k
= 2 k /N, se tomarmos N L . Para
consegui-lo, basta recuperar x(n) a partir de sua extenso peridica
(conforme expresso da transparncia anterior) e finalmente obter a
TFTD X( ) do sinal original x(n).

*
A Transformada Discreta de Fourier (TDF)

Seja uma seqncia de durao finita x(n), que no-nula
somente no intervalo 0 n L -1. A operao de amostragem (no
domnio da freqncia) de X( ) (TFTD de x(n)) em N ( N > L ) pontos
igualmente espaados, produz uma seqncia X(k) de comprimento N
que denominada Transformada Discreta de Fourier (TDF) de x(n),
conforme expresso da transparncia.
A operao de recuperao de x(n) a partir de X(k)
denominada Transformada Discreta de Fourier Inversa (TDFI) de X(k).
importante notar que necessrio preencher com zeros o
intervalo L n N. Preencher a seqncia { x(n) } com N - L zeros e
calcular a TDF de N pontos resulta em uma melhor representao
(amostragem mais acurada) do espectro X( ).



*
Implementao da TDF e TDFI no MATLAB

Uma implementao conveniente da TDF e TDFI no
MATLAB pode ser feita por meio de multiplicaes de matriz por vetor,
para cada uma das expresses das respectivas transformadas (direta e
inversa), do mesmo modo como usamos anteriormente para implementar
a TFTD.
Sejam x e X os vetores coluna correspondentes s
seqncias x(n) e X(k), respectivamente. Ento a TDF e a TDFI podem
ser calculadas por meio das expresses indicadas na transparncia, onde
W
N
, conforme definida na transparncia, denominada de matriz da
TDF. Para implementar a TDFI, devemos usar a matriz conjugada da
matriz W
N
.
Lembramos no entanto que esta implementao no
computacionalmente eficiente, especialmente para valores grandes de N.
Trataremos desta questo mais adiante quando estudarmos a
Transformada Rpida de Fourier.

*
Propriedades da TDF

Antes de adentrarmos nas propriedades da TDF
propriamente ditas, precisamos estabelecer uma notao para melhor
exprimirmos algumas destas propriedades. Primeiramente, no podemos
esquecer que a TDF somente opera sobre seqncias x(n) de durao
finita, que possuem uma extenso peridica conforme j vimos (ver
transparncia). No entanto, a necessidade de utilizar a somatria torna
incmoda este tipo de notao, por isso definimos a operao mdulo-N e
a operao de janelamento, conforme mostrada na transparncia. Estas
duas operaes nos mostram como passar da seqncia x(n) para a sua
extenso peridica e vice-versa, e nos sero teis para exprimirmos e
compreendermos as propriedades da TDF.



*
Propriedades da TDF

1. Periodicidade: A periodicidade da TDF e da TDFI decorrem imediatamente da
periodicidade da TFTD e do processo de amostragem no domnio da freqncia,
respectivamente.
2. Linearidade: A TDF uma transformao linear e portanto pode-lhe ser aplicado o
princpio da superposio. Observemos no entanto que, se x
1
(n) e x
2
(n) tiverem
duraes N
1
e N
2
respectivamente, ento preciso tomar N
3
= max(N
1
, N
2
) e realizar
TDFs de N
3
pontos para todas as seqncias.
3. Espelhamento circular: Se uma seqncia de N pontos espelhada, ento o
resultado x(-n) pode no ser uma seqncia de N pontos, e por este motivo talvez
no seja possvel calcular sua TDF. Por isso utilizamos a operao mdulo-N no
argumento e assim obtemos o chamado espelhamento circular, conforme mostrado
na transparncia. Para visualizar isso, basta lembrar que as amostras do espectro
que compe a TDF pertencem circunferncia unitria, de modo que as amostras
correspondentes aos ndices k = 0 e k = N se sobrepe, da a denominao circular
para esta e outras propriedades que veremos a seguir.
4. Conjugao: A TDF do conjugado de uma seqncia igual ao conjugado da TDF
submetido operao de espelhamento circular.

*
Propriedades da TDF

5. Simetria de seqncias reais: Se x(n) uma seqncia real, ento o
seu conjugado idntico a ela mesma. Portanto, usando a propriedade
de espelhamento circular teremos que X(k) = X*((-k))
N
. Esta propriedade
chamada de simetria circular conjugada e implica em uma simetria
circular par para a parte real e a magnitude de X(k), e uma simetria
circular mpar para a parte imaginria e a fase de X(k). A principal
conseqncia prtica desta propriedade que basta calcular a TDF at
N/2 para N par ou ento (N - 1)/2 para N mpar.

*
Propriedades da TDF

6. Deslocamento circular no tempo: Se uma seqncia de N pontos for
deslocada em qualquer direo, ento a seqncia resultante no mais estar
no intervalo 0 n N -1. Portanto, precisamos primeiro converter a seqncia
x(n) para a sua extenso peridica e ento fazer o deslocamento, ou seja, o
deslocamento deve ser circular. Este deslocamento circular no domnio do
tempo provoca uma defasagem no domnio da freqncia (ver transparncia).
7. Deslocamento circular no domnio da freqncia: Esta propriedade a dual
da anterior e mostra que a multiplicao de um sinal x(n) por uma exponencial
complexa provoca um deslocamento circular da TDF X(k) no domnio da
freqncia.
8. Convoluo circular: Uma convoluo linear entre duas seqncias de
durao N resultar em uma seqncia mais longa. Mais uma vez teremos que
restringir-nos ao intervalo 0 n N -1 e portanto em lugar de um
deslocamento linear teremos que realizar um deslocamento circular. Uma
operao de convoluo que utiliza um deslocamento deste tipo chamada de
convoluo circular, definida pela expresso indicada na transparncia.
importante observar que o resultado da convoluo circular tambm uma
seqncia de durao N, e o seu efeito no domnio da freqncia
simplesmente a multiplicao das respectivas TDFs.


*
Propriedades da TDF

9. Multiplicao: Esta propriedade a dual da propriedade de convoluo
circular, dada pela expresso da transparncia. Neste caso a convoluo
realizada no domnio da freqncia.
10. Relao de Parseval: Esta relao mostra que a energia total de uma
seqncia pode ser calculada tanto no domnio do tempo quanto no
domnio da freqncia, por meio da sua TDF.

*
Convoluo Linear Usando a TDF

Uma das mais importantes operaes em sistemas lineares
a convoluo linear. De fato, os filtros digitais FIR so geralmente
implementados na prtica usando esta convoluo linear. Por outro lado,
a TDF representa um modo prtico e eficiente (especialmente se usarmos
a sua vero rpida, como veremos mais adiante) de implementar
operaes de sistemas lineares no domnio da freqncia. Entretanto, a
multiplicao das TDFs resultam em uma convoluo circular no domnio
do tempo, e no em uma convoluo linear como desejaramos. Veremos
agora como usar a TDF para realizar uma convoluo linear.
Sejam x
1
(n) e x
2
(n) duas seqncias de duraes N
1
e N
2

respectivamente. Se escolhermos a durao maior para realizar uma
convoluo circular, obteremos uma durao resultante diferente de
(N
1
+N
2
- 1), que seria a durao da seqncia resultante caso fosse
efetuada uma convoluo linear (ver transparncia). Vamos escolher
ento o valor de N = N
1
+N
2
- 1 para realizar a convoluo circular. De
acordo com o desenvolvimento mostrado na transparncia, chegamos
concluso que nesse caso a convoluo circular equivalente
convoluo linear para 0 n N -1.
*
Filtragem Digital FIR Usando a TDF

Seja um sinal x(n) de durao L colocado na entrada de um
filtro digital de resposta impulsiva de durao finita (FIR) de ordem M. O
sinal y(n) na sada do filtro poder ser expresso como a convoluo linear
de x(n) e h(n), onde h(n) a resposta impulsiva do filtro, com durao de
M amostras. A durao de y(n) ser L + M - 1.
Portanto, se multiplicarmos as TDFs de N = L + M - 1
pontos dos sinais x(n) e h(n), obteremos a TDF de y(n), conforme
mostrado na transparncia. Para realizar esta operao, teremos de
aumentar a durao de x(n) e h(n) (preenchendo com zeros) para N
amostras. Como veremos mais adiante, para valores grandes de N, este
mtodo computacionalmente mais eficiente do que realizar diretamente
a convoluo linear.


*
A Transformada Rpida de Fourier (FFT)
A TDF a nica transformada discreta nos dois domnios, do tempo e da
freqncia, e definida para seqncias de durao finita. Por isso ela
computacionalmente implementvel. No entanto, para valores grandes de N , sua
implementao torna-se muito ineficiente. Em 1965, Cooley e Tukey descobriram um
procedimento para reduzir substancialmente o nmero de operaes de clculo
necessrias para realizar a TDF. Isto levou a uma exploso de aplicaes da TDF,
principalmente na rea de processamento digital de sinais. Posteriormente foram
desenvolvidos outros algoritmos eficientes, que ficaram conhecidos como Fast Fourier
Transform - FFT.
Para obter uma amostra da TDF, precisamos fazer N multiplicaes
complexas e (N -1) adies complexas. Para obter a TDF completa, temos portanto de
realizar N
2
multiplicaes complexas e aproximadamente o mesmo nmero de adies
complexas (ver transparncia). Alm disso, preciso armazenar N
2
coeficientes complexos
{ W
N
nk
}. O nmero de operaes matemticas de uma TDF de N pontos cresce
quadraticamente com N, o que torna-se inaceitvel na prtica para valores grandes de N.
Geralmente, o tempo de processamento para uma adio muito menor do que para uma
multiplicao. Portanto, vamos nos concentrar no nmero de multiplicaes complexas,
pois a implementao de cada uma delas requer a realizao de 4 multiplicaes e 2
adies de nmeros reais.
Uma primeira reduo no tempo de processamento pode ser obtida
lembrando a propriedade de simetria da TDF com relao a N /2, conforme mostrado na
transparncia.
*
A Tcnica Dividir e Combinar

A fim de reduzir o crescimento quadrtico do nmero de
operaes matemticas, podemos escolher um valor de N tal que N = LM,
de modo que L
2
+ M
2
<< N
2
para valores grandes de N. Agora dividimos a
seqncia completa em M seqncias de comprimento L, calculamos M
TDFs de L pontos cada uma e combinamos as mesmas em uma TDF de
M pontos. Esta , em linhas gerais, a tcnica dividir e combinar, que
pode ser matematicamente descrita conforme mostra a transparncia.


*
A Tcnica Dividir e Combinar

A tcnica dividir e combinar pode ser implementada em um
procedimento com trs passos, conforme mostrado na transparncia. O
nmero total de multiplicaes complexas, para um valor grande de N,
ser inferior a N
2
.
Este procedimento pode ser repetido mais de uma vez, caso
M ou L no sejam nmeros primos. evidente que, quanto mais divisvel
for o nmero N, mais vezes poder ser aplicada a tcnica dividir e
combinar, e portanto mais computacionalmente eficiente ser este
procedimento. Se N = A

, o algoritmo denominado de base A . Quando
N = A

B

C
. . .
, ento estas decomposies so chamadas de
algoritmos de FFT de bases mistas.

*
Algoritmo de FFT de Base 2

Neste caso, N uma potncia de 2 (N = 2 ) e escolhemos
M = 2 e L = N / 2. A seqncia x(n) ento dividida em duas seqncias,
cada uma com N / 2 pontos. A seqncia g
1
(n) contm as amostras de
ndice par (ver transparncia) enquanto que a seqncia g
2
(n) contm as
amostras de ndice mpar. Obtemos ento a TDF X(k) como composio
das TDFs de g
1
(n) e g
2
(n), conforme mostrado na transparncia. Este
procedimento pode ser repetido vezes, at que tenhamos N seqncias
de um ponto cada uma, e ento calculamos a N TDFs de um ponto e as
combinamos conforme o algoritmo descrito anteriormente. Este processo
chamado de dizimao no tempo, que nos conduz a um nmero total de
multiplicaes complexas igual a Nlog
2
N.
Para valores grandes de N, o nmero de multiplicaes
complexas aproximadamente linear com relao a N, e portanto obtm-
se um algoritmo computacionalmente muito eficiente. Usando a
propriedade de simetria, podemos baixar este nmero para (N /2)log
2
N.

*
Implementao no MATLAB

O MATLAB possui uma funo chamada fft, que calcula a
TDF de um vetor x e pode ser usada conforme indicado na transparncia.
Esta funo escrita em linguagem de mquina e no por meio dos
comandos do MATLAB, (ou seja, no existe o arquivo fft.m) e portanto
sua execuo muito rpida.
Se N for uma potncia de 2, ento um algoritmo de base 2
de alta velocidade empregado. Caso contrrio, o valor de N
decomposto em fatores primos e ento utiliza-se um algoritmo de FFT de
bases mistas, no to veloz quanto o de base 2. Por fim, caso N seja um
nmero primo, ento a funo fft implementada atravs da TDF
convencional, que extremamente ineficiente para valores grandes de N.


*
Convoluo Rpida

A funo conv no MATLAB implementada usando a
funo filter (que escrita em linguagem C) e bastante eficiente
para N < 50. Para valores de N maiores, possvel aumentar a
velocidade da convoluo usando o algoritmo de FFT. Esta tcnica usa a
convoluo circular para implementar a convoluo linear, e a FFT para
implementar a convoluo circular. Esta operao denominada de
algoritmo de convoluo rpida.
Se escolhermos N como uma potncia de 2, ento o
algoritmo passa a ser denominada convoluo de alta velocidade. Para
implement-lo, basta tomar um valor de N adequado conforme mostrado
na transparncia. A Convoluo linear x
1
(n) * x
2
(n) pode ento ser
implementada por meio de 2 FFTs de N pontos, um produto ponto a
ponto de 2 vetores de dimenso N e uma IFFT de N pontos.

Você também pode gostar