Transcript
Page 1: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Processamento Digital de Sinais

texto de suporte para aulas

Instituto Federal de Educação, CiĂȘncia e Tecnologia - SP

Ricardo Pires - ĂĄrea de EletrĂŽnica

9 de Fevereiro de 2011

ConteĂșdo

1 Introdução 1

2 Sinais de Tempo Discreto 3

2.1 SequĂȘncias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.2 OperaçÔes BĂĄsicas sobre SequĂȘncias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.3 SequĂȘncias BĂĄsicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2.3.1 Impulso de Tempo Discreto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.3.2 Degrau UnitĂĄrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.3.3 SequĂȘncia Exponencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.3.4 SequĂȘncia Senoidal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.3.5 SequĂȘncia Exponencial Complexa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2.4 Amostragem de Sinais de Tempo ContĂ­nuo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3 Sistemas de Tempo Discreto 18

3.1 Sistemas com MemĂłria x Sistemas sem MemĂłria . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.2 Sistemas Lineares x Sistemas NĂŁo Lineares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.3 Sistemas Variantes no Tempo x Sistemas Invariantes no Tempo . . . . . . . . . . . . . . . . . . . 223.4 Sistemas Causais x Sistemas NĂŁo Causais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.5 Estabilidade de Sistemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.6 Sistemas Lineares e Invariantes no Tempo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.6.1 Estabilidade de Sistemas LIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273.6.2 Causalidade de Sistemas LIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.7 EquaçÔes de Diferenças Lineares a Coeficientes Constantes . . . . . . . . . . . . . . . . . . . . . . 293.8 Representação no DomĂ­nio da FrequĂȘncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303.9 Representação de SequĂȘncias por Transformada de Fourier . . . . . . . . . . . . . . . . . . . . . . 333.10 Transformada de Fourier Discreta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

4 Transformada Z 38

4.1 Transformada Z e EquaçÔes de Diferenças . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394.2 CĂĄlculo de Resposta em FrequĂȘncia Usando a Transformada Z . . . . . . . . . . . . . . . . . . . . 41

1 Introdução

Este Ă© um texto de suporte para aulas de Processamento Digital de Sinais. Como tal, ele nĂŁo dispensa o estudoem livros especializados, dentre os quais se destaca [1].

SupÔe-se que, durante as aulas, problemas serão resolvidos com auxílio do software Octave [2].

1

Page 2: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 2

Um sinal Ă© uma grandeza (por exemplo, tensĂŁo elĂ©trica) variando no tempo e que carrega uma informação.Portanto, a tensĂŁo elĂ©trica da tomada nĂŁo Ă© um sinal, enquanto uma onda transmitida por uma emissora derĂĄdio Ă© um sinal. A informação carregada pode ser voz, mĂșsica, o resultado de uma medição (de distĂąncia, develocidade...), imagem etc.

O processamento de sinais consiste na representação, na transformação e na manipulação dos sinais e dainformação que eles contĂȘm. Exemplos: retirada de ruĂ­do de som, compactação de som ou de imagem. Umaclasse importante de aplicaçÔes do Processamento Digital de Sinais Ă© a da interpretação de sinais, a qualconsiste na extração de informaçÔes do sinal sendo processado. Exemplos: num sinal de voz, identificação dapessoa que falou ou do que ela falou. Em sinais de origem geolĂłgica: identificação de minĂ©rios presentes no localde origem dos sinais.

Antes dos anos 1960, o processamento de sinais era feito, quase sempre, em tempo contínuo, por meio decircuitos eletrÎnicos analógicos. O avanço da tecnologia digital, principalmente no aumento da velocidade doscircuitos digitais e em sua miniaturização, fez com que o processamento de sinais tivesse gradualmente suasimplementaçÔes migrando da forma analógica para a digital.

Normalmente, sinais manipulados na forma digital tĂȘm origem analĂłgica. O circuito digital que faz estamanipulação requer uma sequĂȘncia de nĂșmeros codificados em binĂĄrio obtida a partir do sinal analĂłgico original.Esta sequĂȘncia Ă© obtida por amostragem periĂłdica do sinal analĂłgico. O resultado da amostragem Ă© umasequĂȘncia de valores que buscam registrar valores lidos do sinal analĂłgico em determinados instantes, havendoum certo intervalo entre eles. Neste processo, a princĂ­pio, perde-se a informação sobre os valores que estavamno intervalo entre as amostras colhidas.

Como o processamento digital é realizado apenas sobre amostras colhidas em determinados instantes (nãocontinuamente), diz-se que este processamento é de tempo discreto, por oposição ao processamento analógico,o qual é de tempo contínuo. Mas, o processamento em tempo discreto não é necessariamente digital. Håprocessamento em tempo discreto usando-se outras tecnologias, como a de capacitores chaveados.

Dentre as razÔes para a gradual substituição de implementaçÔes analógicas por implementaçÔes digitais parao processamento de sinais, estão a maior flexibilidade das implementaçÔes digitais e sua maior precisão.

A maior flexibilidade da implementação digital reside no fato de que o processamento de um sinal, normal-mente, consiste na realização de cĂĄlculos usando-se os valores que ele sucessivamente assume. Uma implemen-tação analĂłgica, usando resistores, indutores, capacitores e amplificadores, realiza “cĂĄlculos” sobre o sinal naforma de equaçÔes diferenciais. A forma da equação diferencial implementada depende dos parĂąmetros dos com-ponentes do circuito (resistĂȘncias, indutĂąncias, capacitĂąncias, ganhos), do nĂșmero de componentes de cada tipoe da forma pela qual eles sĂŁo interconectados. Assim, sĂł Ă© realizĂĄvel analogicamente um cĂĄlculo que possa serexpresso como uma equação diferencial e para o qual se conheça uma configuração de circuito correspondente.Por outro lado, a implementação digital consiste na realização de cĂĄlculos usando-se, como entrada, a sequĂȘnciade amostras coletadas. Cada amostra estĂĄ codificada como nĂșmero em binĂĄrio. Os cĂĄlculos possĂ­veis, nestecaso, sĂŁo quaisquer cĂĄlculos realizĂĄveis por unidades aritmĂ©ticas digitais: adiçÔes, subtraçÔes, multiplicaçÔes,divisĂ”es, operaçÔes nĂŁo-lineares e quaisquer combinaçÔes destas, em quaisquer ordens. EquaçÔes diferenciaistambĂ©m podem ser aproximadas numericamente por cĂĄlculos na forma digital. Desta forma, uma implemen-tação digital pode substituir uma implementação analĂłgica, desde que a velocidade exigida para os cĂĄlculosesteja dentro do limite de funcionamento da tecnologia digital disponĂ­vel. Por outro lado, muitas sequĂȘncias decĂĄlculos possĂ­veis na forma digital nĂŁo tĂȘm equivalentes na forma analĂłgica.

Quanto Ă  precisĂŁo, uma implementação analĂłgica sofre os efeitos de desvios nos parĂąmetros de seus com-ponentes (resistĂȘncias, capacitĂąncias...) em relação aos valores desejados. Uma implementação digital tem aprecisĂŁo de seus cĂĄlculos dependente, sobretudo, do nĂșmero de bits com que Ă© representada cada amostra e cadaresultado intermediĂĄrio de cĂĄlculo. Quanto maior for este nĂșmero de bits, maior a precisĂŁo (maior resolução). EnĂŁo hĂĄ limite teĂłrico para este nĂșmero de bits. SĂł hĂĄ limite de custo da implementação, de seu tamanho fĂ­sicoe da energia consumida em seu funcionamento. Portanto, quanto Ă  precisĂŁo, a implementação digital tambĂ©mĂ© vantajosa. Basta que se use um nĂșmero suficiente de bits para se representar cada nĂșmero usado nos cĂĄlculoscom a precisĂŁo desejada.

As principais formas de implementação de sistemas de processamento digital de sinais são:

‱ computador de uso genĂ©rico;

‱ circuito integrado (chip) programĂĄvel genĂ©rico (microprocessador ou microcontrolador);

Page 3: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 3

‱ chip programável especial para processamento digital de sinais [3];

‱ chip configurável do tipo FPGA;

‱ circuito integrado de aplicação específica.

2 Sinais de Tempo Discreto

Conforme visto na introdução, um sinal Ă© uma função que carrega informação. Na maioria dos casos, Ă© umagrandeza fĂ­sica cujo valor Ă© função do tempo. Um sinal de tempo contĂ­nuo Ă© definido para um intervalo contĂ­nuode valores de tempo. Usualmente, Ă© chamado de sinal analĂłgico. Um sinal de tempo discreto sĂł Ă© definido paradeterminados instantes, com intervalos entre eles. Assim, eles consistem em sequĂȘncias de nĂșmeros.

A mesma idĂ©ia de continuidade se aplica aos valores assumidos pelo sinal. Um sinal pode assumir valorescontĂ­nuos, como ocorre nos sistemas analĂłgicos, ou pode assumir apenas determinados valores, como ocorreem sistemas digitais. Neste caso, a limitação de valores se deve ao fato de que, representando-se nĂșmeros embinĂĄrio com nĂșmero limitado de bits, somente um nĂșmero finito de valores Ă© representĂĄvel.

2.1 SequĂȘncias

Sinais de tempo discreto sĂŁo sequĂȘncias de nĂșmeros. Uma certa sequĂȘncia x tem, convencionalmente, cada umde seus valores particulares denotado como x[n], em que o n entre colchetes indica a qual valor particular dentroda sequĂȘncia se estĂĄ fazendo referĂȘncia. Por exemplo, x[15] refere-se ao elemento nĂșmero 15 da sequĂȘncia x.Como n Ă© o nĂșmero de um elemento na sequĂȘncia, ou seja, n serve para indicar a posição do elemento em relaçãoaos demais (se Ă© o quinto, o dĂ©cimo etc.), n Ă© sempre inteiro.

Normalmente, uma sequĂȘncia Ă© originada da amostragem periĂłdica de um sinal analĂłgico xa(t). Neste caso,

x[n] = xa(nTa) (1)

em que Ta, intervalo entre a coleta de duas amostras seguidas, Ă© chamado perĂ­odo de amostragem. Seu inverso,fa, Ă© a frequĂȘncia de amostragem.

Embora x[n] se refira a um elemento particular de uma sequĂȘncia, a notação x[n] tambĂ©m Ă© usada para sereferir Ă  sequĂȘncia completa, quando nĂŁo houver ambiguidade.

O grĂĄfico de uma função de domĂ­nio contĂ­nuo y = f(x) deve usar uma linha contĂ­nua para expressarvisualmente a dependĂȘncia entre x e y, conforme a figura 1.

Por outro lado, o gråfico de uma função de domínio discreto y = f [n] deve deixar claro que a função só édefinida para certos valores (aqueles que pertencem ao seu domínio) e indefinida entre estes valores, conformea figura 2.

No software Octave, uma sequĂȘncia Ă© definida como:

octave > x = [11 22 33 44]

em que, aqui, definiu-se uma sequĂȘncia x que possui 4 amostras. Deve-se sempre lembrarque, no Octave, a primeira amostra de uma sequĂȘncia estĂĄ sempre na posição 1. Assim, nesteexemplo, x[1] = 11, x[2] = 22 etc.

2.2 OperaçÔes BĂĄsicas sobre SequĂȘncias

A soma de duas sequĂȘncias a[n] e b[n], por definição, gera uma nova sequĂȘncia s[n] tal que, para qualquer n = i,s[i] = a[i]+b[i]. A tabela 1 dĂĄ exemplos de valores de uma sequĂȘncia a[n], uma sequĂȘncia b[n] e a correspondentesequĂȘncia s[n] = a[n] + b[n].

Page 4: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 4

Figura 1: Gråfico de uma função de domínio contínuo

n a[n] b[n] s[n] = a[n] + b[n]0 2 1 31 -1 6 52 10 -3 73 -3 -9 -124 2,5 7 9,5

Tabela 1: Soma de sequĂȘncias

De maneira similar, o produto de duas sequĂȘncias a[n] e b[n], por definição, gera uma nova sequĂȘncia s[n]tal que, para qualquer n = i, s[i] = a[i] · b[i]. A tabela 2 dĂĄ exemplos de valores de uma sequĂȘncia a[n], umasequĂȘncia b[n] e a correspondente sequĂȘncia s[n] = a[n] · b[n].

O produto de uma sequĂȘncia a[n] por uma constante α gera uma sequĂȘncia s[n] tal que, para qualquer n = i,s[i] = αa[i]. A tabela 3 dĂĄ exemplos de valores de uma sequĂȘncia a[n] e a correspondente sequĂȘncia s[n] = αa[n],para α = 3.

ExercĂ­cio 1Para as sequĂȘncias a[n] e b[n] das tabelas anteriores, qual seria a sequĂȘncia resultante de y[n] = 2a[n] + 3b[n]?

Uma sequĂȘncia y[n] Ă© chamada de versĂŁo atrasada de uma sequĂȘncia x[n] se a relação entre os valores delasfor do tipo y[n] = x[n − n0], em que n0 Ă© um inteiro, correspondente ao atraso de y[n] em relação a x[n]. Atabela 4 dĂĄ exemplos de valores de uma sequĂȘncia x[n] e a correspondente sequĂȘncia y[n] = x[n − n0], para

Page 5: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 5

Figura 2: Gråfico de uma função de domínio discreto

n0 = 1. Nela, o sĂ­mbolo ? indica que o valor de y[n] naquele instante nĂŁo pode ser determinado a partir dosdemais valores da tabela.

O interesse nestas operaçÔes bĂĄsicas se justifica pelo fato de que a maioria dos algoritmos de processamentodigital de sinais consistem na realização de sequĂȘncias destas operaçÔes sobre sequĂȘncias de valores de entrada(medidos ou recebidos).

2.3 SequĂȘncias BĂĄsicas

Na teoria de processamento digital de sinais, sĂŁo definidas certas sequĂȘncias bĂĄsicas fundamentais. Elas sĂŁo: oimpulso de tempo discreto, a sequĂȘncia degrau unitĂĄrio, a sequĂȘncia exponencial e a sequĂȘncia senoidal.

2.3.1 Impulso de Tempo Discreto

O impulso de tempo discreto, denotado ÎŽ[n], Ă© definido como:

ÎŽ[n] =

{

0 para n 6= 01 para n = 0

(2)

e é representado na figura 3.Uma maneira de se ver a função impulso é a de que Ύ[...] só resulta 1 quando seu argumento, ou seja, o

valor dado entre colchetes, for 0. Assim, por exemplo, ή[n− 7] só resulta 1 quando n = 7 e ή[n + 2] só resulta 1quando n = −2.

Exercício 2Desenhe o gráfico de ή[n − 10].

Page 6: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 6

No Octave, pode-se verificar uma soma de sequĂȘncias como:

octave > a = [2 −1 10 −3 2.5]octave > b = [1 6 −3 −9 7]octave > s = a + b

Note que o separador entre a parte inteira e a parte fracionĂĄria de um nĂșmero deve ser digitadocomo um ponto, nĂŁo como vĂ­rgula. Deve-se digitar enter ao final de cada linha. Deve-selembrar que, embora o cĂĄlculo tenha dado o resultado correto (verifique no computador), osoftware considerou os Ă­ndices das sequĂȘncias fornecidas começando em 1.

n a[n] b[n] s[n] = a[n] · b[n]0 2 1 21 -1 6 -62 10 -3 -303 -3 -9 274 2,5 7 17,5

Tabela 2: Produto de sequĂȘncias

Exercício 3Desenhe o gráfico de 7ή[n − 8].

Exercício 4Desenhe o gráfico de 5ή[n + 1] − 3ή[n − 4].

ExercĂ­cio 5Escreva a sequĂȘncia a[n] da tabela 2 como soma de impulsos.

ExercĂ­cio 6Idem para a sequĂȘncia b[n] da tabela 2.

Resolvendo-se os exercĂ­cios anteriores, vĂȘ-se que qualquer sequĂȘncia pode ser escrita como soma de impul-sos. Isto Ă© Ăștil na construção da teoria de Processamento Digital de Sinais. Generalizando-se, portanto, umasequĂȘncia qualquer x[n] pode ser escrita como:

x[n] =∞∑

k=−∞

x[k]ή[n − k] (3)

2.3.2 Degrau UnitĂĄrio

A sequĂȘncia degrau unitĂĄrio, denotada u[n], Ă© definida como:

Page 7: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 7

No Octave, cada sequĂȘncia fornecida como nos exemplos anteriores Ă© vista pelo software comouma matriz que possui uma linha e vĂĄrias colunas. Se se tentar realizar um produto destassequĂȘncias usando-se o operador de produto *, o software indicarĂĄ um erro, porque, para serealizar um produto de duas matrizes, o nĂșmero de colunas da primeira deve ser igual ao nĂșmerode linhas da segunda e cada uma de nossas sequĂȘncias tem apenas uma linha e vĂĄrias colunas.O produto de sequĂȘncias como definido aqui Ă© obtido usando-se o operador .* (ponto asterisco).Como exemplo, o produto das sequĂȘncias a e b das tabelas anteriores Ă© obtido usando-se a. ∗ b.

n a[n] s[n] = 3a[n]0 2 61 -1 -32 10 303 -3 -94 2,5 7,5

Tabela 3: Produto de uma sequĂȘncia por uma constante (neste caso, 3)

u[n] =

{

0 para n < 01 para n ≄ 0

(4)

e Ă© representada na figura 4.

ExercĂ­cio 7Desenhe o grĂĄfico de 3u[n].

Exercício 8Desenhe o gráfico de −2u[n − 3].

Exercício 9Desenhe o gráfico de 3u[n] − 2u[n − 3].

Exercício 10Desenhe o gráfico de u[−n].

Exercício 11Desenhe o gráfico de 5u[3 − n].

Page 8: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 8

Pode-se verificar o produto de uma sequĂȘncia por uma constante como:

octave > a = [2 −1 10 −3 2.5]octave > s = 3 ∗ a

n x[n] y[n] = x[n − 1]0 2 ?1 -1 22 10 -13 -3 104 2,5 -3

Tabela 4: Uma sequĂȘncia y[n] atrasada de uma unidade de tempo em relação a uma sequĂȘncia x[n].

Exercício 12Desenhe o gráfico de 7u[n + 2] − 5u[3 − n].

2.3.3 SequĂȘncia Exponencial

A sequĂȘncia exponencial tem a forma:

x[n] = Aαn (5)

em que A e α sĂŁo constantes reais.A figura 5 mostra o grĂĄfico de uma sequĂȘncia exponencial com A = 3, α = 0, 7 e n indo de 1 a 10.

Pode-se visualizar o grĂĄfico da sequĂȘncia exponencial da figura 5 usando-se os comandos:

octave : 1 > n = [1 : 10]octave : 2 > A = 3octave : 3 > alfa = 0.7octave : 4 > seqExpo = A ∗ alfa. ∧ noctave : 5 > stem(n, seqExpo)octave : 6 > title(â€Čexponencialâ€Č)octave : 7 > axis([0 11 0 3])

O comando 1 gera uma sequĂȘncia de 1 a 10, a qual serve como a sĂ©rie de instantes de amostragemconsiderados. Os comandos 2 e 3 definem os valores das constantes. O comando 4 calcula osvalores da sequĂȘncia exponencial. Nele, o operador .∧ gera uma sequĂȘncia elevando o mesmovalor alfa, sucessivamente, Ă s potĂȘncias de 1 a 10 contidas em n. O comando 5 gera o grĂĄfico,no estilo de tempo discreto. O comando 6 define um tĂ­tulo para o grĂĄfico. Finalmente, ocomando 7 ajusta as escalas dos eixos.

2.3.4 SequĂȘncia Senoidal

A sequĂȘncia senoidal tem a forma:

x[n] = A cos(ω0n + φ0) (6)

Page 9: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 9

Figura 3: Gråfico da função impulso de tempo discreto

em que A, ω0 e φ0 sĂŁo constantes. A Ă© a amplitude da senoide, ω0 Ă© sua frequĂȘncia angular, medida em radianos,e φ0 Ă© sua fase inicial.

A figura 6 mostra o grĂĄfico de uma sequĂȘncia senoidal com A = 10, ω0 = π4 , φ0 = 0 e n indo de 1 a 20.

No Octave, a função cosseno Ă© digitada, simplesmente, como cos. A função seno Ă© digitadacomo sin. A constante π Ă© digitada como pi. Assim, na geração do grĂĄfico senoidal da figura 6,usou-se a sequĂȘncia de comandos:

octave > n = [1 : 20]octave > A = 10octave > omega0 = pi/4octave > phi0 = 0octave > x = A ∗ cos(omega0 ∗ n + phi0)

além de comandos de ajuste de escala, de título e do comando stem, como no caso exponencial.

ExercĂ­cio 13Gere e visualize sequĂȘncias senoidais com o Octave, variando suas amplitudes, suas frequĂȘncias e suas fasesiniciais.

Page 10: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 10

Figura 4: Gråfico da função degrau unitårio

ExercĂ­cio 14Gere uma senoide com ω0 = 0 e uma outra com ω0 = 2π, mantendo os demais parĂąmetros. Compare osresultados. Faça o mesmo com uma senoide com ω0 = π

4 e uma outra com ω0 = 9π4 . Interprete.

Pode-se ver que, em tempo discreto, a frequĂȘncia ω0 = 0 equivale a ω0 = 2π. O mesmo ocorre com o parω0 = π

2 e ω0 = 5π2 . Em geral, qualquer frequĂȘncia angular ω que esteja fora da faixa 0 < ω < π equivale a

uma frequĂȘncia que esteja nesta faixa. Isto acontece porque, para n inteiro, cos{(π + ∆)n} = cos{πn + ∆n}equivale a cos{(π −∆)n} = cos{πn−∆n}, em que ∆ Ă© uma frequĂȘncia angular, em radianos. Assim, qualquerfrequĂȘncia que esteja acima de π por ∆ rad equivale a uma frequĂȘncia que esteja abaixo de π por ∆ rad. Omesmo fenĂŽmeno ocorre em torno de qualquer frequĂȘncia que seja mĂșltipla inteira de π.

A figura 7 mostra, esquematicamente, as equivalĂȘncias de frequĂȘncias em tempo discreto. Nela, Ă© indicadauma certa frequĂȘncia ωx, na faixa entre 0 e π. Uma frequĂȘncia equivalente a esta Ă© 2π − ωx, na faixa entre π e2π. A prĂłxima equivalente Ă© 2π + ωx, na faixa entre 2π e 3π. A prĂłxima Ă© 4π − ωx, na faixa entre 3π e 4π, eassim por diante.

ExercĂ­cio 15Com o auxĂ­lio da figura 7 e do Octave, verifique as trĂȘs prĂłximas equivalĂȘncias da frequĂȘncia ω0 = π

4 . Para isto,calcule estas frequĂȘncias equivalentes e gere valores de amostras de x[n] = cos(ωn), para n indo de 1 a 12 e ωassumindo cada uma daquelas frequĂȘncias.

O fato de haver esta equivalĂȘncia entre frequĂȘncias Ă© muito importante em processamento digital de sinais.Ele implica que uma sequĂȘncia de amostras colhidas periodicamente de uma senoide de baixa frequĂȘncia podeser igual a uma sequĂȘncia de amostras colhidas de uma senoide de frequĂȘncia mais alta. Neste caso, observando-se as amostras, nĂŁo seria possĂ­vel se descobrir de qual senoide elas teriam sido colhidas. Para se evitar este

Page 11: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 11

Figura 5: GrĂĄfico de sequĂȘncia exponencial

problema, deve-se tomar o cuidado de sĂł se amostrarem sinais analĂłgicos cujas frequĂȘncias estejam numa faixalimitada, equivalendo Ă  faixa de tempo discreto de 0 a π. Desta forma, observando-se as amostras de umasenoide, deduz-se qual era a frequĂȘncia desta senoide: sĂł pode ser uma frequĂȘncia da primeira faixa, jĂĄ quenĂŁo havia senoides de outras faixas no processo. Assim, nĂŁo hĂĄ frequĂȘncias equivalentes e, portanto, nĂŁo hĂĄambiguidade. Para que isto seja possĂ­vel, antes da amostragem, o sinal a ser amostrado Ă© aplicado a um filtroanalĂłgico passa-baixas, cuja saĂ­da sĂł terĂĄ frequĂȘncias da primeira faixa. Esta saĂ­da, entĂŁo, pode ser amostrada,sem que haja ambiguidade na interpretação das amostras. Esta condição para que nĂŁo haja ambiguidadena amostragem foi publicada em 1928 pelo engenheiro sueco Harry Theodor Nyqvist (mais conhecido comoNyquist) e pelo engenheiro estadunidense Claude Elwood Shannon. Ela serĂĄ estudada na seção 2.4.

2.3.5 SequĂȘncia Exponencial Complexa

A sequĂȘncia exponencial complexa tem a forma:

x[n] = Aej(ω0n+φ0) (7)

em que A, constante real, Ă© a amplitude da sequĂȘncia, j =√−1, ω0 Ă© a frequĂȘncia angular, em radianos, e φ0 Ă©

a fase inicial, tambĂ©m em radianos.Para se estudar esta sequĂȘncia, deve-se lembrar que:

ejx = cos x + jsen x (8)

A equação 8 Ă© chamada fĂłrmula de Euler. Foi publicada pelo matemĂĄtico suíço Leonhard Paul Euler em1748. Nela, x Ă© um nĂșmero real. Como x Ă© argumento de funçÔes trigonomĂ©tricas, ele pode ser visto comoum Ăąngulo (em radianos). Para cada valor de x, vĂȘ-se que o membro direito da equação 8 fornece um nĂșmerocomplexo, cuja parte real vale cos x e cuja parte imaginĂĄria vale jsen x. Assim, dado um valor de x, ejx podeser representado como um ponto no plano complexo, conforme a figura 8. O Ăąngulo entre o eixo real e a linhaque liga este ponto Ă  origem Ă© x radianos. O mĂłdulo de ejx Ă© sempre 1, independentemente do valor de x(verifique). Assim, o mĂłdulo de Aejx Ă© A.

Page 12: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 12

Figura 6: GrĂĄfico de sequĂȘncia senoidal

ExercĂ­cio 16Represente e+j π

3 no plano complexo, anotando suas coordenadas.

ExercĂ­cio 17Represente e−j π

4 no plano complexo, anotando suas coordenadas.

ExercĂ­cio 18Represente e+jπ no plano complexo, anotando suas coordenadas.

ExercĂ­cio 19Represente 5e+j π

6 no plano complexo, anotando suas coordenadas.

ExercĂ­cio 20Represente 7e+j 7π

6 no plano complexo, anotando suas coordenadas.

Page 13: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 13

4π 3π

2π 3π

2π π

0 π

ωx

...

Figura 7: EquivalĂȘncias entre frequĂȘncias em tempo discreto

ℜ

ℑ

cos x

sen x

x

ejx

Figura 8: Representação de ejx no plano complexo

ExercĂ­cio 21Represente −4e+j 11π

6 no plano complexo, anotando suas coordenadas.

Da fórmula 8, obtém-se:

cos x =1

2(e+jx + e−jx) (9)

Exercício 22Prove a validade da equação 9.

Da fórmula 8, obtém-se, também:

sen x =1

2j(e+jx − e−jx) (10)

Exercício 23Prove a validade da equação 10.

Page 14: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 14

Como ejx, com um valor fixo para x, pode ser representado como um ponto no plano complexo, o valor ejωt,com t (tempo) aumentando continuamente, pode ser representado, no plano complexo como um ponto girandosobre uma circunferĂȘncia centrada na origem, com raio unitĂĄrio (conforme a figura 9), jĂĄ que, com o aumentode t, o Ăąngulo ωt aumenta, mas a distĂąncia do ponto ejωt Ă  origem continua sendo 1. A frequĂȘncia de giro desteponto Ă© constante, de ω ( rad

s). Assim, uma grandeza fĂ­sica variando de forma senoidal, como, por exemplo,

uma tensĂŁo elĂ©trica v(t) = cos(ωt), poderia ser considerada como a projeção horizontal do ponto giratĂłrio ejωt,com o valor desta projeção sendo o valor instantĂąneo desta tensĂŁo. Uma tensĂŁo senoidal com outra amplitude,v(t) = A cos(ωt), seria representada como a projeção horizontal do ponto giratĂłrio Aejωt, o qual gira sobre umacircunferĂȘncia de raio A. Esta projeção horizontal Ă© denotada ℜ{ejωt}. (O operador ℜ{} fornece a parte realde seu argumento.) A projeção vertical Ă© denotada ℑ{ejωt}. (O operador ℑ{} fornece a parte imaginĂĄria deseu argumento.)

ℜ

ℑ

cos(ωt)

sen(ωt)

ωt

ejωt

Figura 9: Representação de ejωt no plano complexo, com t variando continuamente

Da equação 9, pode-se visualizar de outra forma uma grandeza senoidal no plano complexo, conforme afigura 10. Neste caso, o ponto correspondente a cos(ωt), marcado com um x na figura, Ă© dado pela mĂ©dia dasposiçÔes de e+jωt e de e−jωt. (Verifique que a equação 9, de fato, contĂ©m a mĂ©dia daqueles dois pontos sobre acircunferĂȘncia.) A mĂ©dia das posiçÔes dos pontos estĂĄ sempre sobre o eixo real, jĂĄ que as projeçÔes verticais dosdois pontos se anulam. A soma das partes reais resulta 2 cos(ωt). Como a mĂ©dia, para os dois pontos, consistena metade desta soma, esta mĂ©dia vale cos(ωt). Assim, a equação 9 nos leva a visualizar uma grandeza do tipocos(ωt) como a mĂ©dia das posiçÔes de dois pontos girando em sentidos contrĂĄrios em torno da origem do planocomplexo. Deve-se visualizar que, enquanto os dois pontos giram sobre a circunferĂȘncia, sua mĂ©dia (x) oscilasobre o eixo real, entre as abscissas +1 e -1.

Exercício 24Interprete geometricamente a equação 10.

ExercĂ­cio 25Represente geometricamente, no plano complexo, a posição de e+j π

4t e a de e−j π

4t, para t = 1s, t = 2s e t = 3s.

Em cada caso, indique a posição do ponto mĂ©dio entre e+j π

4t e e−j π

4t.

Page 15: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 15

ℜ

ℑ

cos(ωt)

sen(ωt)

ωt

ejωt

−sen(ωt)

−ωt

e−jωt

Figura 10: Representação de cos(ωt) no plano complexo, com t variando continuamente

Quando o sinal senoidal Ă© de tempo discreto, com a forma cos(ωn), com n inteiro, n crescendo com o tempo,tĂȘm-se, como no caso contĂ­nuo, aqueles dois pontos girando sobre a circunferĂȘncia, com cos(ωn), novamente,sendo a mĂ©dia entre as posiçÔes dos dois pontos. PorĂ©m, os pontos giratĂłrios, agora, sĂŁo: e+jωn e e−jωn, comn avançando “aos saltos”, ao invĂ©s de avançar continuamente como ocorria com o t contĂ­nuo. Cada salto destescorresponde a uma variação de ω no Ăąngulo do segmento que liga um ponto giratĂłrio Ă  origem do plano. Assim,com o aumento discreto (de um em um) de n, e+jωn salta de um ponto a outro sobre a circunferĂȘncia de raiounitĂĄrio, conforme a figura 11. Na figura, Ă© indicada a posição ocupada pelo ponto giratĂłrio quando n = 1 e asprĂłximas posiçÔes que serĂŁo ocupadas por este ponto, quando n avançar atĂ© o valor 5. Com o passar do tempo,o ponto dĂĄ voltas sobre a circunferĂȘncia, mas sempre dando saltos entre as posiçÔes sucessivas que ocupa. Oponto e−jωn tambĂ©m anda sobre a circunferĂȘncia, aos saltos, mas em sentido contrĂĄrio. A posição mĂ©dia entreos dois pontos, a qual corresponde a cos(ωn), faz um movimento de vai e vem sobre o eixo real, tambĂ©m aossaltos. A figura 6 Ă© um grĂĄfico que pode ser interpretado como representando as posiçÔes sucessivas ocupadaspelo ponto mĂ©dio sobre o eixo real.

ExercĂ­cio 26Represente, no plano complexo, as sucessivas posiçÔes ocupadas pelo ponto 3e+j π

4n, para 0 < n < 8.

ExercĂ­cio 27Represente, no plano complexo, as sucessivas posiçÔes ocupadas pelo ponto e+j π

3n, para 0 < n < 12.

ExercĂ­cio 28Represente, no plano complexo, as sucessivas posiçÔes ocupadas pelo ponto e−j π

3n, para 0 < n < 12.

Page 16: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 16

ℜ

ℑ

cos(ωn)

sen(ωn)

ωn

ejωn

b

b

b

b

b

Figura 11: Representação de e+jωn no plano complexo, com n variando de forma discreta

ExercĂ­cio 29Represente, no plano complexo, as sucessivas posiçÔes ocupadas pelo ponto mĂ©dio de e+j π

4n e de e−j π

4n, para

0 < n < 8. Com base neste grĂĄfico, desenhe o grĂĄfico de cos(π4 n) × n

2.4 Amostragem de Sinais de Tempo ContĂ­nuo

Normalmente, sinais a serem processados em tempo discreto sĂŁo originĂĄrios da amostragem periĂłdica de sinaisde tempo contĂ­nuo. É possĂ­vel a reconstrução exata de um sinal de tempo contĂ­nuo a partir de suas amostras,se forem respeitadas certas condiçÔes.

Como jå se disse neste texto, em tempo discreto, hå maior flexibilidade para o processamento de sinaisdo que em tempo contínuo. Assim, são comuns técnicas de processamento de sinais originalmente de tempocontínuo realizadas em tempo discreto, com uma conversão final dos resultados obtidos em tempo discreto devolta ao tempo contínuo. Estas técnicas usam como uma de suas primeiras etapas a amostragem dos sinais detempo contínuo envolvidos.

A amostragem periĂłdica Ă© a tĂ©cnica mais usada para se obter uma representação de um sinal de tempocontĂ­nuo a ser processado em tempo discreto. Ela consiste em se obterem amostras de um certo sinal xc(t) aintervalos regulares, formando-se a sequĂȘncia de amostras x[n] segundo a relação:

x[n] = xc(nTa) (11)

em que n Ă© o nĂșmero da amostra, sempre inteiro, podendo assumir valores desde −∞ a +∞ e Ta Ă© o chamadoperĂ­odo de amostragem, o qual Ă© o intervalo de tempo entre a obtenção de duas amostras seguidas de xc(t).O inverso de Ta Ă© a chamada frequĂȘncia de amostragem, fa = 1

Ta

. Esta indica quantas amostras de xc(t)sĂŁo obtidas por segundo.

Na figura 12, vĂȘ-se um diagrama de blocos de um amostrador, o qual recebe o sinal de tempo contĂ­nuo xc(t) efornece a sequĂȘncia de amostras x[n]. As chaves ch1 e ch2 sĂŁo implementadas como transistores operando comochaves. Quando ch1 se fecha, o valor de tensĂŁo correspondente a xc(t) no instante do fechamento Ă© registradocomo tensĂŁo de carga do capacitor C. Em seguida, ch1 Ă© aberta, congelando-se a leitura feita por C. ch2 Ă©,entĂŁo, fechada, fazendo-se com que o conversor analĂłgico-digital leia a amostra de tensĂŁo registrada em C e

Page 17: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 17

faça sua conversĂŁo para digital, gerando uma amostra digitalizada de saĂ­da x[n]. Terminada a obtenção destaamostra digitalizada, este ciclo se repete. O papel de ch1 Ă© o de obter uma amostra instantĂąnea de xc(t) e decolocĂĄ-la em C. ch1 Ă© aberta em seguida, para que, durante a conversĂŁo A/D, a tensĂŁo em C nĂŁo varie. As duaschaves nunca ficam fechadas simultaneamente, para que todas as conversĂ”es A/D ocorram com valores fixos detensĂŁo Ă  entrada do conversor. O ritmo de fechamento e de abertura das chaves Ă© a frequĂȘncia de amostragem,fa. O conversor A/D deve ser rĂĄpido o suficiente para fazer uma conversĂŁo em tempo menor do que o perĂ­odode amostragem Ta. Assim, uma limitação de velocidade de operação de um amostrador corresponde Ă  rapidezcom que seu conversor A/D consegue operar. Esta pode ser a limitação do sistema completo de processamentodigital de sinais, ou seja, o amostrador pode ser o “gargalo” do sistema.

xc(t) x[n]ch1 ch2

Cconversor

A/D

Figura 12: Diagrama de blocos de um amostrador

Na seção 2.3.4, viu-se que, em tempo discreto, senoides cujas frequĂȘncias estĂŁo fora da faixa de 0 a πsĂŁo sempre equivalentes a senoides cujas frequĂȘncias estĂŁo dentro desta faixa. Assim, pode acontecer de umasenoide de tempo contĂ­nuo com uma frequĂȘncia angular de ω1 ser amostrada e suas amostras serem interpretadaserroneamente como sendo de uma outra senoide, cuja frequĂȘncia Ă© ω2, ω2 6= ω1. Para se evitar esta ambiguidade,antes de se fazer a amostragem, deve-se garantir que xc(t) nĂŁo contenha frequĂȘncias equivalentes entre si. NaprĂĄtica, isto consiste em se fazer com que o espectro de xc(t) sĂł possa conter frequĂȘncias de 0 atĂ© um certo valorlimite fmax, o qual corresponde Ă  frequĂȘncia angular π de tempo discreto. Desta forma, qualquer frequĂȘncia detempo contĂ­nuo corresponderĂĄ a uma Ășnica frequĂȘncia de tempo discreto e vice-versa. Se esta restrição nĂŁo fosserespeitada, haveria alguma frequĂȘncia de tempo contĂ­nuo equivalente a uma frequĂȘncia de tempo discreto maiordo que π, a qual seria equivalente a uma frequĂȘncia mais baixa e, assim, haveria ambiguidade de interpretação.xc(t), entĂŁo, deve ter espectro limitado a baixas frequĂȘncias. Se um sinal de tempo contĂ­nuo a ser amostrado nĂŁosatisfizer a esta condição, ele deverĂĄ, antes da amostragem, sofrer filtragem analĂłgica passa-baixas. O resultadodesta filtragem, entĂŁo, poderĂĄ ser entregue ao amostrador. O filtro analĂłgico passa-baixas que desempenhaesta função Ă© chamado, usualmente, de filtro anti-aliasing, sendo o termo inglĂȘs aliasing traduzido, Ă s vezes,como rebatimento, devido ao fato de que altas frequĂȘncias podem ser “rebatidas” para uma faixa mais baixa doespectro se este cuidado nĂŁo for tomado.

Para se saber qual Ă© a maior frequĂȘncia permitida no espectro de xc(t) sem que haja ambiguidade deinterpretação das amostras (ou seja, sem que haja rebatimento), deve-se lembrar que a maior frequĂȘncia nĂŁoambĂ­gua em tempo discreto Ă© ωmax = π rad. Uma senoide com esta frequĂȘncia tem a forma x[n] = A cos(πn).Para n = 0, o Ăąngulo πn = π0 = 0. x[0], entĂŁo, vale A. Para n = 1, o Ăąngulo πn = π1 = π. x[1], entĂŁo,vale −A. Para n = 2, o Ăąngulo πn = π2 = 2π, que Ă© um Ăąngulo equivalente a 0 rad. x[2], entĂŁo, vale A.Para n = 3, o Ăąngulo πn = 3π Ă© equivalente a π. x[3], entĂŁo, vale −A. Assim, conforme n aumenta de 1em 1, o Ăąngulo se alterna entre 0 e π, ciclicamente. Pode-se ver isto como se, ao se girar continuamente nociclo trigonomĂ©trico, sĂł fossem amostrados os pontos cujos Ăąngulos fossem 0 e π. SĂł sĂŁo amostrados, entĂŁo,dois pontos por ciclo. Portanto, partindo-se da frequĂȘncia angular zero, a maior frequĂȘncia angular de tempodiscreto sem ambiguidade, que Ă© a frequĂȘncia ω = π rad, Ă© aquela que corresponde a dois pontos por volta nociclo trigonomĂ©trico. Sabe-se que, em tempo discreto, qualquer frequĂȘncia angular maior do que ω = π radequivale a alguma frequĂȘncia angular menor do que ω = π rad. Assim, a maior frequĂȘncia angular nĂŁo ambĂ­guaa partir de ω = 0 rad Ă© aquela para a qual sĂŁo coletadas duas amostras por volta no ciclo trigonomĂ©trico. Emtempo contĂ­nuo, a frequĂȘncia que corresponde a esta ω = π rad de tempo discreto Ă© aquela para a qual, tambĂ©m,sĂŁo coletadas duas amostras por ciclo, ou seja, duas amostras por perĂ­odo. Sendo o perĂ­odo de amostragemTa, duas amostras seguidas sĂŁo coletadas num tempo igual a 2Ta. Isto corresponde a uma frequĂȘncia fmax detempo contĂ­nuo de

Page 18: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 18

fmax =1

2Ta

=fa

2(12)

em que fa Ă© a frequĂȘncia de amostragem. Esta fmax, entĂŁo, Ă© a mĂĄxima frequĂȘncia, a partir da frequĂȘncia iguala zero, da qual se podem extrair amostras sem ambiguidade de frequĂȘncia com perĂ­odo de amostragem de Ta. Asituação crĂ­tica da amostragem, entĂŁo, Ă© aquela em que se coletam duas amostras por perĂ­odo do sinal de tempocontĂ­nuo. Se forem coletadas menos do que duas amostras por perĂ­odo, haverĂĄ ambiguidade na interpretaçãodo sinal amostrado. Neste caso, as componentes de frequĂȘncias mais altas do sinal serĂŁo confundidas comcomponentes de frequĂȘncias mais baixas, na forma dada na figura 7. O critĂ©rio de amostragem de Nyquist,entĂŁo, estabelece que a mĂ­nima frequĂȘncia fa a ser usada na amostragem deve ser tal que se coletem, ao menos,duas amostras de cada perĂ­odo da componente de maior frequĂȘncia do sinal de tempo contĂ­nuo a ser amostrado.Isto equivale a se dizer que a fa deve ser de, pelo menos, o dobro da maior frequĂȘncia presente no espectro dosinal de tempo contĂ­nuo a ser amostrado, ou seja,

fa = 2fmax (13)

Sendo respeitado o critĂ©rio de amostragem de Nyquist, entĂŁo, fica estabelecida uma relação entre valores defrequĂȘncia de tempo contĂ­nuo e seus valores correspondentes em tempo discreto. A maior frequĂȘncia de tempodiscreto Ă© ω = π rad. A maior frequĂȘncia permitida de tempo contĂ­nuo, fmax, entĂŁo, equivale a ω = π rad.Assim, pode-se montar a regra de trĂȘs:

f (Hz) ↔ ω (rad)

fmax ↔ π (14)

ExercĂ­cio 30Se um sistema de processamento digital de sinais trabalhar com amostragem a 10kHz, qual serĂĄ a mĂĄximafrequĂȘncia permitida para o espectro do sinal a ser amostrado? Qual serĂĄ a frequĂȘncia de tempo contĂ­nuocorrespondente a ω = π

4 rad de tempo discreto?

ExercĂ­cio 31Se um sistema de processamento digital de sinais trabalhar com amostragem a 500kHz, qual serĂĄ a mĂĄximafrequĂȘncia permitida para o espectro do sinal a ser amostrado? Qual serĂĄ a frequĂȘncia de tempo contĂ­nuocorrespondente a ω = π

2 rad de tempo discreto?

ExercĂ­cio 32No projeto de um filtro digital, deseja-se que a f = 60Hz seja correspondente a ω = π

2 rad. Qual deverĂĄ ser afrequĂȘncia de amostragem? Qual deverĂĄ ser o limite de frequĂȘncia do sinal a ser amostrado?

3 Sistemas de Tempo Discreto

Um sistema de tempo discreto obtĂ©m uma sequĂȘncia de saĂ­da y[n] a partir de uma sequĂȘncia de entrada x[n].Ele calcula cada amostra de saĂ­da a partir de uma ou mais amostras de entrada e, possivelmente, a partir deamostras de saĂ­da anteriores.

Page 19: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 19

Usando-se o Octave, podem-se gerar arquivos de som no formato wave, por meio do co-mando wavwrite, o qual assume, se nĂŁo lhe for especificado, que a taxa de amostragem Ă©de 8000amostras

s. Eis um exemplo:

octave > fAmostr = 8000octave > duracaoSegundos = 5octave > numAmostras = fAmostr ∗ duracaoSegundosoctave > n = [1 : numAmostras]octave > nt = nâ€Č

octave > sinal = cos(pi/8 ∗ nt)octave > wavwrite(sinal, ”som.wav”)

A linha nt = nâ€Č obtĂ©m a matriz nt como sendo a transposta da matriz n (o apĂłstrofo Ă© ooperador que obtĂ©m a transposta). Como n Ă© uma matriz linha, nt Ă© uma matriz coluna. Aexecução desta linha Ă© necessĂĄria, porque o arquivo wave deve conter uma coluna de amostraspor canal de som. Neste exemplo, hĂĄ apenas um canal, o qual contĂ©m o som correspondentea uma sequĂȘncia senoidal de amostras, contidas na matriz coluna chamada sinal. Uma matrizcontendo N colunas conteria, entĂŁo, N canais de som. Finalmente, aqui, o comando wavwritecoloca a matriz sinal no arquivo som.wav, o qual pode ser “ouvido” usando-se algum programausual para a execução de arquivos de som.

Diz-se, entĂŁo, que a sequĂȘncia de saĂ­da Ă© obtida como uma transformação da sequĂȘncia de entrada, usando-sea notação:

y[n] = T{x[n]} (15)

Como um exemplo de sistema, tem-se o sistema atrasador, o qual implementa a equação:

y[n] = x[n − n0], −∞ < n < +∞ (16)

na qual n0 Ă© o valor de atraso entre a sequĂȘncia de entrada e a de saĂ­da. A tabela 4 mostra um exemplode resultado y[n] obtido por um sistema atrasador, com atraso unitĂĄrio (n0 = 1), que teria recebido aquelasequĂȘncia x[n] Ă  sua entrada. Uma implementação fĂ­sica deste atrasador, como um sistema digital, dada nafigura 13, deve ter um registrador acionado por sinal de relĂłgio (clock). Enquanto uma nova amostra x[n]jĂĄ estiver na entrada do sistema, a amostra de entrada anterior, x[n − 1], ainda estarĂĄ na saĂ­da, por ter sidomemorizada no ciclo de funcionamento anterior. Assim, cada sequĂȘncia de entrada aparece na saĂ­da, mas comatraso. A cada pulso de clock, uma nova amostra de entrada Ă© lida, substituindo a anteriormente memorizada.Assim, a saĂ­da Ă© atualizada. Enquanto isto, uma amostra de entrada ainda mais nova deve chegar Ă  entrada,vinda, possivelmente, de um amostrador. Este processo se repete, a cada pulso de clock. A cada instante, hĂĄuma amostra Ă  entrada, ainda nĂŁo memorizada, e uma amostra mais antiga Ă  saĂ­da, jĂĄ memorizada.

Um outro exemplo comum de sistema é o de média móvel. Ele tem este nome, por apresentar, à saída, umvalor correspondente à média das N amostras de entrada mais recentes, sendo N definido pelo projetista. Estamédia é móvel, porque, com o passar do tempo, o grupo de amostras de entrada que se submeterå ao cålculoda média muda, jå que, com o passar do tempo, muda o grupo das amostras mais recentes. Para, por exemplo,N = 4, a equação implementada por este sistema é:

y[n] =1

4{x[n] + x[n − 1] + x[n − 2] + x[n − 3]} (17)

VĂȘ-se que, para calcular cada amostra de saĂ­da, este sistema precisa ter Ă  sua disposição as quatro amostras deentrada mais recentes (a atual e trĂȘs anteriores). Por isto, ele precisa de trĂȘs registradores: um para memorizarx[n−1], um para x[n−2] e um para x[n−3]. Estes trĂȘs registradores devem ser interligados em sĂ©rie, formandoum registrador de deslocamento composto por trĂȘs registradores com vĂĄrios bits cada. (O nĂșmero de bits decada registrador pode ser, por exemplo, 16. Isto depende da precisĂŁo com que trabalha o sistema.)

Page 20: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 20

registrador

x[n − 1]

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

clock

Figura 13: Implementação digital de um atrasador

ExercĂ­cio 33Desenhe um diagrama de blocos para o sistema de mĂ©dia mĂłvel anterior, usando trĂȘs registradores, somadorescom dois operandos cada e um multiplicador.

ExercĂ­cio 34Dada a tabela 5, com valores de uma certa sequĂȘncia de entrada x[n], calcule a sequĂȘncia de saĂ­da que seriaproduzida por este sistema de mĂ©dia mĂłvel. Verifique, com o auxĂ­lio do Octave, que este sistema gera umasequĂȘncia de saĂ­da que tem forma semelhante Ă  da sequĂȘncia de entrada, porĂ©m, sem variaçÔes abruptas.

Pelo resultado obtido no exercĂ­cio 34, percebe-se que uma utilidade do sistema de mĂ©dia mĂłvel Ă© recebervalores medidos de um processo fĂ­sico do qual nĂŁo se esperam variaçÔes abruptas e diminuir o efeito destasvariaçÔes abruptas, antes de se entregarem estas amostras para um sistema que as analisarĂĄ. Isto ocorre, porexemplo, em medição de temperatura em grandes cĂąmaras, onde nĂŁo se espera que a temperatura possa variarrapidamente, ou na medição do nĂ­vel de combustĂ­vel no tanque de um automĂłvel, onde nĂŁo se esperam variaçÔesabruptas de nĂ­vel. Um transdutor faz a medição continuamente, entregando o resultado a um amostradorperiĂłdico. Este entrega as amostras analĂłgicas medidas a um conversor analĂłgico-digital. Estas amostrasdigitalizadas podem estar “contaminadas” por efeitos indesejĂĄveis, como ruĂ­do, no caso da cĂąmara, ou balanço,no caso do tanque de combustĂ­vel. O ruĂ­do ou o balanço introduzem, na sequĂȘncia de amostras, desvios emrelação aos valores verdadeiros das grandezas que se desejaram medir. A saĂ­da do sistema de mĂ©dia mĂłvelprocura seguir, preferencialmente, as lentas variaçÔes da grandeza medida em relação Ă s rĂĄpidas variaçÔescausadas pelo ruĂ­do ou pelo balanço. Se a sequĂȘncia medida fosse aplicada diretamente a um mostrador (deponteiro ou digital), este oscilaria rapidamente, dificultando sua leitura. A aplicação da sequĂȘncia de saĂ­dado sistema de mĂ©dia mĂłvel ao mostrador proporciona maior estabilidade do valor apresentado, facilitando sualeitura, alĂ©m de refletir melhor a realidade da grandeza de interesse.

Neste exemplo, o sistema de mĂ©dia mĂłvel calculou a mĂ©dia das Ășltimas quatro amostras de entrada. NaprĂĄtica, um tal sistema pode usar dezenas ou centenas das Ășltimas amostras de entrada no cĂĄlculo da mĂ©dia,suavizando muito, desta forma, o efeito de variaçÔes abruptas. Mas, o uso de mais amostras de entrada tem,como efeito indesejado, aumento no hardware necessĂĄrio para implementar o sistema (ou maior tempo de cĂĄlculoem implementaçÔes em software).

A seguir, sĂŁo apresentadas definiçÔes Ășteis relacionadas a sistemas de tempo discreto.

Page 21: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 21

n x[n] y[n]

0 81 82 83 204 95 86 97 98 69 910 911 912 1013 1014 615 1016 1017 1018 1719 1020 1021 922 1023 1024 1125 10

Tabela 5: Tabela para o exercĂ­cio 34.

3.1 Sistemas com MemĂłria x Sistemas sem MemĂłria

Um sistema com memória é aquele que deve usar algum tipo de elemento de memorização, como registradores(no caso de implementação em hardware) ou variåveis (no caso de implementação em software), por precisarde valores de entrada ou de saída anteriores para calcular cada amostra de saída. O sistema atrasador e o demédia móvel são deste tipo.

Um sistema sem memória, para calcular a amostra de saída em um certo instante, só usa a amostra deentrada do mesmo instante. Como ele não precisa de amostras passadas, não precisa de memória. Exemplo:um sistema que calculasse o negativo de cada amostra que lhe viesse à entrada, y[n] = −x[n]. (Normalmente,sistemas de processamento digital de sinais lidam com valores negativos usando a representação binária emcomplemento de dois.) Uma realização deste sistema em hardware usaria apenas lógica combinatória, semregistradores.

3.2 Sistemas Lineares x Sistemas NĂŁo Lineares

Se um sistema for linear, dada uma constante K e dada uma sequĂȘncia x[n],

T{Kx[n]} = KT{x[n]} (18)

e, dadas as sequĂȘncias x1[n] e x2[n]:

T{x1[n] + x2[n]} = T{x1[n]} + T{x2[n]} (19)

Disto decorre que, dadas constantes K1 e K2,

Page 22: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 22

T{K1x1[n] + K2x2[n]} = K1T{x1[n]} + K2T{x2[n]} (20)

Assim, os sistemas lineares seguem o princĂ­pio da superposição: para se calcular o efeito, na saĂ­da, daaplicação de uma soma de sequĂȘncias Ă  entrada, basta que, inicialmente, calculem-se os efeitos de cada entradaindividualmente e que, finalmente, somem-se estes efeitos Ă  saĂ­da.

Como exemplos de sistemas lineares, tĂȘm-se o atrasador e o sistema de mĂ©dia mĂłvel.Qualquer sistema que nĂŁo respeite a equação 20 Ă© nĂŁo linear.

ExercĂ­cio 35Verifique que o sistema que implementa y[n] = {x[n]}2 nĂŁo Ă© linear.

Sempre que possĂ­vel, deve-se procurar projetar sistemas lineares, devido Ă  maior facilidade de se lidarmatematicamente com eles do que com os nĂŁo lineares.

3.3 Sistemas Variantes no Tempo x Sistemas Invariantes no Tempo

Um sistema variante no tempo Ă© tal que, para ele, existe pelo menos uma sequĂȘncia de entrada x1[n] para aqual ele fornece uma certa y1[n] e que, se, Ă  sua entrada, for aplicada uma entrada x2[n] que seja uma versĂŁoatrasada de x1[n], x2[n] = x1[n−n0], sua saĂ­da nĂŁo serĂĄ uma versĂŁo atrasada de y1[n], ou seja, y2[n] 6= y1[n−n0].

Pode ocorrer de um sistema variante no tempo calcular suas amostras de saída de forma variável com otempo. Por exemplo, se um sistema calcular sua saída usando y[n] = m0x[n]+m1x[n− 1], sendo os coeficientesm0 e m1 variáveis com o tempo, ele será um sistema variante no tempo. Neste caso, poderia acontecer de, porexemplo, no instante n = 0, m0 = 3 e m1 = 7 e, mais tarde, no instante n = 1, m0 = 13 e m1 = 2.

Um sistema variante no tempo pode ter atĂ© mesmo a forma de calcular sua saĂ­da variando no tempo. Porexemplo, ele poderia passar um tempo usando a expressĂŁo y[n] = m0x[n]+m1x[n− 1] e, depois, poderia passara usar y[n] = m0x[n] + m1x[n − 1] + m2x[n − 2].

Exercício 36Demonstre que o sistema que implementa a equação y[n] = x[2n] é variante no tempo.

Um sistema invariante no tempo Ă© tal que, se for aplicada a ele uma sequĂȘncia de entrada x1[n] para aqual ele forneça uma certa y1[n], se, Ă  sua entrada, for aplicada uma x2[n] que seja uma versĂŁo atrasada dex1[n], x2[n] = x1[n−n0], sua saĂ­da serĂĄ, simplesmente, uma versĂŁo atrasada de y1[n], ou seja, y2[n] = y1[n−n0],com atraso igual ao de x2[n] em relação a x1[n]. Para que isto ocorra, o sistema deverĂĄ calcular cada amostrade saĂ­da usando sempre a mesma forma de cĂĄlculo, todo o tempo (mesma equação e mesmos coeficientes).

Exercício 37Verifique que o sistema de média móvel é invariante no tempo.

Sistemas invariantes no tempo sĂŁo de tratamento matemĂĄtico mais simples do que os variantes no tempo.

3.4 Sistemas Causais x Sistemas NĂŁo Causais

Um sistema causal é aquele que calcula a amostra de saída em cada instante usando apenas valores de entradado mesmo instante, de instantes anteriores ou valores de saída anteriores. Exemplo de equação de um sistemacausal: y[n] = 1

2x[n] − 14x[n − 2] + 1

8y[n − 1].

Page 23: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 23

Um sistema não causal calcula a amostra de saída em um certo instante usando alguma amostra de entradaou de saída futura. Exemplo de equação de um sistema não causal: y[n] = 1

2x[n] − 14x[n + 2] + 1

8y[n − 1]. (Nocálculo da saída atual, ele usa uma entrada futura.)

Sistemas não causais não podem funcionar em tempo real, jå que, para calcular cada valor de saída, elesteriam de adivinhar algum valor futuro de entrada ou de saída. Porém, quando se projeta um sistema deprocessamento digital de sinais, pode ocorrer de o projetista descobrir que a equação que o sistema deveriaimplementar para satisfazer às especificaçÔes do projeto deveria ser do tipo não causal. Neste caso, para seobter um sistema realizåvel, estas especificaçÔes deveriam ser alteradas, substituídas por outras que permitissema obtenção de um sistema causal que as satisfizesse. Isto ocorre, por exemplo, no projeto de um filtro passa-baixas ideal, tanto em tempo contínuo quanto em tempo discreto. Um tal filtro seria não causal. (Ele seråestudado adiante.) Assim, não pode ser realizado. Mas, bons filtros, com características parecidas com a doideal, podem ser realizados.

Exercício 38O sistema de média móvel definido pela equação 17 é causal? Por que?

Exercício 39Escreva a equação de um sistema de média móvel não causal.

3.5 Estabilidade de Sistemas

Um sistema Ă© estĂĄvel, no sentido entrada limitada, saĂ­da limitada, se e somente se, para qualquer sequĂȘnciade entrada com valores limitados recebida, ele produzir uma sequĂȘncia de saĂ­da com valores limitados. Assim,se:

|x[n]| ≀ Lx < ∞, ∀n (21)

com Lx sendo o limite dos valores absolutos da sequĂȘncia x[n], entĂŁo:

|y[n]| ≀ Ly < ∞, ∀n (22)

com Ly sendo o limite dos valores absolutos da sequĂȘncia y[n]. Note que o valor de Lx nĂŁo precisa ser igual aode Ly.

Exercício 40O sistema de média móvel definido pela equação 17 é eståvel? Por que?

ExercĂ­cio 41O sistema definido pela equação y[n] = x[n] + y[n − 1] Ă© estĂĄvel? Por que?

3.6 Sistemas Lineares e Invariantes no Tempo

Devido Ă  relativa facilidade de tratamento matemĂĄtico que possuem, os sistemas de maior interesse em proces-samento digital de sinais sĂŁo os lineares invariantes no tempo (ou seja, os que sĂŁo tanto lineares quanto

Page 24: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 24

invariantes no tempo). SerĂŁo referenciados, neste texto, como sistemas LIT.Um sistema LIT pode ter seu comportamento completamente caracterizado pela sua resposta ao impulso,

chamada de resposta impulsiva, simbolizada como h[n].

ExercĂ­cio 42Qual Ă© a resposta impulsiva do sistema que implementa a equação y[n] = x[n − 2]?

ExercĂ­cio 43

Qual Ă© a resposta impulsiva do sistema de cĂĄlculo de mĂ©dia mĂłvel, que implementa y[n] = 14{x[n] + x[n − 1] +

x[n − 2] + x[n − 3]}?

Para se compreender este fato, suponha que um certo sistema LIT, chamado aqui de sistema X, tenhaa resposta impulsiva hipotĂ©tica dada na tabela 6. (Suponha que todos os valores de h[n] em instantes nĂŁotabelados sejam nulos.) Isto significa que, se, Ă  entrada do sistema X, for aplicada uma Ășnica amostra nĂŁo nulano instante zero, com valor unitĂĄrio (ou seja, a entrada Ă© o impulso, ÎŽ[n]), o sistema apresentarĂĄ, Ă  saĂ­da, asequĂȘncia h[n] dada na tabela 6.

n ÎŽ[n] h[n]

-2 0 0-1 0 00 1 31 0 52 0 23 0 14 0 05 0 0

Tabela 6: Valores não nulos da resposta impulsiva hipotética de um certo sistema X

Suponha, agora, que ao sistema X, seja aplicada a sequĂȘncia de entrada dada na tabela 7.

n x[n]

-2 0-1 00 41 52 -23 104 05 0

Tabela 7: Valores nĂŁo nulos de uma certa sequĂȘncia de entrada aplicada ao sistema X

O problema, entĂŁo, Ă© calcular-se a sequĂȘncia de saĂ­da, y[n], causada pela aplicação, ao sistema X, dasequĂȘncia de entrada x[n] dada na tabela 7.

Para se resolver este problema, explora-se o fato de que o sistema X Ă© LIT, usando-se as seguintes etapas:

1. DecompĂ”e-se a sequĂȘncia de entrada x[n] em vĂĄrias sequĂȘncias, cada uma contendo somente uma amostranĂŁo nula, conforme a tabela 8. Verifique que x[n] = x0[n] + x1[n] + x2[n] + x3[n].

Page 25: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 25

2. Calcula-se a resposta do sistema X para cada uma destas sequĂȘncias simples, de xo[n] a x3[n], sendoaplicadas Ă  sua entrada. A resposta do sistema a x0[n] serĂĄ chamada y0[n], a resposta a x1[n] serĂĄ y1[n]etc.

3. Devido à linearidade do sistema (equação 19), sua resposta a x[n] = x0[n]+x1[n]+x2[n]+x3[n] serå igualà soma das respostas individuais, y[n] = y0[n] + y1[n] + y2[n] + y3[n].

n x[n] x0[n] x1[n] x2[n] x3[n]

-2 0 0 0 0 0-1 0 0 0 0 00 4 4 0 0 01 5 0 5 0 02 -2 0 0 -2 03 10 0 0 0 104 0 0 0 0 05 0 0 0 0 0

Tabela 8: Decomposição de uma sequĂȘncia de entrada x[n] em vĂĄrias sequĂȘncias

Para se calcular cada resposta individual no item 2, explora-se a linearidade e a invariĂąncia no tempo dosistema.

Iniciando-se pelo cĂĄlculo de y0[n], como ele Ă© a resposta do sistema X Ă  entrada x0[n] = 4ÎŽ[n], por linearidade,y0[n] = 4h[n]. Ou seja, como x0[n] Ă© um impulso multiplicado por 4, a saĂ­da que x0[n] causa Ă© 4 vezes a saĂ­dacausada pelo impulso, a qual Ă© a resposta impulsiva, h[n]. Este resultado Ă© mostrado na tabela 9.

n xo[n] h[n] y0[n] = 4h[n]

-2 0 0 0-1 0 0 00 4 3 121 0 5 202 0 2 83 0 1 44 0 0 05 0 0 0

Tabela 9: Resposta y0[n] do sistema X Ă  sequĂȘncia x0[n]

No cĂĄlculo de y1[n], que Ă© a resposta a x1[n], deve-se notar que x1[n] = 5ÎŽ[n − 1], ou seja, x1[n] equivalea um impulso atrasado e multiplicado por 5. Pela linearidade, a resposta a este impulso multiplicado por 5deve ser igual Ă  h[n] multiplicada por 5. Mas, como este impulso estĂĄ com atraso unitĂĄrio, deve-se nĂŁo sĂłmultiplicar h[n] por 5, mas, tambĂ©m, atrasĂĄ-la em uma unidade em n. Assim, a resposta a x1[n] = 5ÎŽ[n − 1]serĂĄ y1[n] = 5h[n − 1], conforme a tabela 10.

Seguindo-se a mesma lĂłgica, a resposta a x2[n] = −2ÎŽ[n − 2] Ă© y2[n] = −2h[n − 2], conforme a tabela 11.A resposta a x3[n] = 10ÎŽ[n − 3] Ă© y3[n] = 10h[n − 3], conforme a tabela 12.Finalmente, a resposta y[n] Ă  entrada x[n] Ă© calculada como y[n] = y0[n] + y1[n] + y2[n] + y3[n], conforme a

tabela 13.

ExercĂ­cio 44Seguindo o procedimento anterior, calcule a resposta y[n] fornecida pelo sistema X anterior quando ele recebera entrada x[n] dada na tabela 14.

Page 26: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 26

n x1[n] h[n] y1[n] = 5h[n − 1]

-2 0 0 0-1 0 0 00 0 3 01 5 5 152 0 2 253 0 1 104 0 0 55 0 0 0

Tabela 10: Resposta y1[n] do sistema X Ă  sequĂȘncia x1[n]

n x2[n] h[n] y2[n] = −2h[n − 2]

-2 0 0 0-1 0 0 00 0 3 01 0 5 02 -2 2 -63 0 1 -104 0 0 -45 0 0 -2

Tabela 11: Resposta y2[n] do sistema X Ă  sequĂȘncia x2[n]

O procedimento aqui apresentado para o cĂĄlculo da sequĂȘncia de saĂ­da de um sistema LIT pode ser gener-alizado como:

y[n] = . . . + x[0]h[n] + x[1]h[n − 1] + x[2]h[n − 2] + x[3]h[n − 3] + . . .

⇒ y[n] =

∞∑

k=−∞

x[k]h[n − k] (23)

⇒ y[n] = x[n] ∗ h[n]

A operação que calcula y[n] a partir de x[n] e de h[n], dada pela equação 23, é chamada de convolução

de x[n] com h[n]. Portanto, pode-se dizer que um sistema LIT realiza uma convolução de sua entrada com suaresposta impulsiva. O símbolo usado para a operação convolução é o asterisco.

A convolução é uma operação comutativa, ou seja,

x[n] ∗ h[n] = h[n] ∗ x[n] (24)

Assim, se, para um sistema LIT, forem trocados, entre si, os papĂ©is da entrada e da resposta impulsiva, suasequĂȘncia de saĂ­da nĂŁo se alterarĂĄ. Isto pode ser verificado, usando-se a mudança de variĂĄveis m = n − k naequação 23:

Page 27: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 27

n x3[n] h[n] y3[n] = 10h[n − 3]

-2 0 0 0-1 0 0 00 0 3 01 0 5 02 0 2 03 10 1 304 0 0 505 0 0 206 0 0 10

Tabela 12: Resposta y3[n] do sistema X Ă  sequĂȘncia x3[n]

n y0[n] y1[n] y2[n] y3[n] y[n]

-1 0 0 0 0 00 12 0 0 0 121 20 15 0 0 352 8 25 -6 0 273 4 10 -10 30 344 0 5 -4 50 515 0 0 -2 20 186 0 0 0 10 107 0 0 0 0 0

Tabela 13: Resposta y[n] do sistema X composta pelas respostas individuais anteriores

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

⇒ y[n] =

∞∑

k=−∞

x[k]h[n − k]

⇒ y[n] =

∞∑

m=−∞

x[n − m]h[m]

⇒ y[n] =

∞∑

m=−∞

h[m]x[n − m]

⇒ y[n] = h[n] ∗ x[n] (25)

3.6.1 Estabilidade de Sistemas LIT

A estabilidade de sistemas foi definida na seção 3.5. No projeto de um sistema de processamento digital desinais, Ă© importante que se garanta que o sistema obtido seja estĂĄvel, porque um sistema instĂĄvel pode ter seusvalores de saĂ­da crescendo sem limites, mesmo com os valores da sequĂȘncia de entrada mantidos numa faixalimitada. Como um sistema de processamento digital de sinais representa cada valor manipulado usando umnĂșmero finito de bits, um sistema instĂĄvel, com o tempo, poderia começar a tentar apresentar, Ă  saĂ­da, valoresque estivessem fora de sua faixa de valores representĂĄveis. A partir deste momento, ele passaria a cometer erros,fornecendo valores errados Ă  saĂ­da e, possivelmente, usando estes valores errados nos seus prĂłximos cĂĄlculos (nocaso de ele usar valores de saĂ­da anteriores para calcular a saĂ­da atual).

Para se encontrar a condição necessåria para que um sistema LIT seja eståvel, parte-se da equação 25,aplicando-a ao cålculo do módulo de cada amostra de saída:

Page 28: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 28

n x[n]

-2 0-1 00 31 -12 203 54 35 0

Tabela 14: SequĂȘncia de entrada para o exercĂ­cio 44

No Octave, a função conv calcula a convolução de duas sequĂȘncias. Para que ela seja realizadasobre as duas sequĂȘncias do exemplo mostrado nesta seção, deve-se seguir o procedimento:

octave > h = [3 5 2 1]octave > x = [4 5 − 2 10]octave > y = conv(h, x)

Aqui, foi dada, pelo usuĂĄrio, a resposta impulsiva, h[n], e a entrada, x[n]. O Octave, entĂŁo,calculou a convolução daquelas duas sequĂȘncias. Deve-se lembrar que os Ă­ndices usados peloOctave começam em 1, enquanto que, no exemplo desta seção, começavam em 0. PorĂ©m, asequĂȘncia de valores da saĂ­da fica correta, embora deslocada, no tempo, em relação Ă  destetexto.

|y[n]| =

∣

∣

∣

∣

∣

∞∑

m=−∞

h[m]x[n − m]

∣

∣

∣

∣

∣

≀∞∑

m=−∞

|h[m]||x[n − m]| (26)

Na equação 26, se a sequĂȘncia x[n] tiver valores limitados, cujos mĂłdulos nĂŁo superarem um certo valor Lx,ter-se-ĂĄ:

|y[n]| ≀∞∑

m=−∞

|h[m]||x[n − m]| ≀∞∑

m=−∞

|h[m]|Lx = Lx

∞∑

m=−∞

|h[m]| (27)

Assim, para que y[n] tenha valores limitados, deve-se ter:

∞∑

m=−∞

|h[m]| < ∞ (28)

ExercĂ­cio 45Usando-se a condição 28, verifique se o sistema que implementa a equação y[n] = x[n − 2] Ă© estĂĄvel.

ExercĂ­cio 46

Usando-se a condição 28, verifique se o sistema que implementa a equação y[n] = 14{x[n] + x[n− 1] + x[n− 2] +

x[n − 3]} Ă© estĂĄvel.

Page 29: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 29

ExercĂ­cio 47Usando-se a condição 28, verifique se o sistema LIT cuja resposta impulsiva Ă© dada na tabela 6 Ă© estĂĄvel. Casopositivo, se a sequĂȘncia Ă  sua entrada tiver valores limitados a 3, qual serĂĄ o mĂłdulo do maior valor possĂ­vel Ă sua saĂ­da?

ExercĂ­cio 48Qual Ă© a resposta impulsiva do sistema dado pela equação y[n] = x[n] + y[n− 1]? Ele Ă© estĂĄvel? Caso positivo,se a sequĂȘncia Ă  sua entrada tiver valores limitados a 3, qual serĂĄ o mĂłdulo do maior valor possĂ­vel Ă  sua saĂ­da?(Considere que y[n] = 0 para n < 0.)

ExercĂ­cio 49

Qual Ă© a resposta impulsiva do sistema dado pela equação y[n] = x[n]+ 12y[n−1]? Ele Ă© estĂĄvel? Caso positivo,

se a sequĂȘncia Ă  sua entrada tiver valores limitados a 3, qual serĂĄ o mĂłdulo do maior valor possĂ­vel Ă  sua saĂ­da?(Considere que y[n] = 0 para n < 0.)

3.6.2 Causalidade de Sistemas LIT

Um sistema LIT é causal se sua resposta impulsiva começar no instante zero ou após o instante zero. Se aresposta impulsiva começar antes do instante zero, o sistema não é causal.

Se, num projeto, for obtido um sistema S1 nĂŁo causal, se sua resposta impulsiva h1[n] começar num certoinstante ni, com −∞ < ni < 0, serĂĄ possĂ­vel obter-se um novo sistema S2, com comportamento semelhante aode S1, porĂ©m causal, fazendo-se com que a resposta impulsiva h2[n] seja uma versĂŁo atrasada de h1[n], de talforma que h2[n] comece no instante zero ou depois de zero.

ExercĂ­cio 50Se um sistema tiver em sua resposta impulsiva, como Ășnicas amostras nĂŁo nulas, h[−2] = 3, h[0] = 10 eh[1] = −2, como poderia ser a resposta impulsiva de um sistema causal semelhante a ele?

A utilidade desta técnica consiste em se obter um sistema realizåvel em tempo real (causal) a partir de umsistema não realizåvel em tempo real (não causal). O efeito negativo da aplicação desta técnica é o sistemaresultante ter, em seu funcionamento, um atraso em relação ao sistema original.

Esta tĂ©cnica sĂł pode ser aplicada se a resposta impulsiva do sistema nĂŁo causal começar em um ni 6= −∞.Se esta resposta impulsiva começar em −∞, nĂŁo serĂĄ possĂ­vel a obtenção de um sistema causal semelhanteapenas por atraso da resposta impulsiva.

3.7 EquaçÔes de Diferenças Lineares a Coeficientes Constantes

Uma tal equação é da forma:

N∑

k=0

aky[n − k] =M∑

k=0

bkx[n − k] (29)

com os ak e bk constantes. Assim, uma equação desta forma representa um cålculo envolvendo amostras deentrada e de saída de vårios instantes, cada uma delas multiplicada por uma constante.

Um exemplo de equação de diferenças linear a coeficientes constantes é:

Page 30: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 30

3y[n] + 5y[n − 1] = 4x[n] − 10x[n − 2] + x[n − 5] (30)

na qual, no membro da esquerda, estĂŁo amostras da saĂ­da, de dois instantes, cada uma multiplicada por umcoeficiente constante e, no membro da direita, estĂŁo trĂȘs amostras de entrada, de instantes diferentes, cada umamultiplicada por um coeficiente.

A maioria dos sistemas de processamento digital de sinais sĂŁo projetados para implementar equaçÔes destetipo, porque, se y[n] = 0 para todos os instantes anteriores Ă  aplicação da primeira amostra x[n] 6= 0, estasequaçÔes correspondem a sistemas lineares e invariantes no tempo, sendo fĂĄceis de se tratar matematicamentee de se realizar em hardware ou em software. Sua realização em hardware exige apenas elementos de memĂłria(para guardar amostras passadas de entrada e de saĂ­da), multiplicadores e somadores. Em software, bastaque estejam disponĂ­veis variĂĄveis em nĂșmero suficiente para a memorização das amostras passadas e estejamdisponĂ­veis operaçÔes de multiplicação e de adição.

Na pråtica, é comum que estas equaçÔes sejam escritas isolando-se y[n] no membro da esquerda, para quefique explícita a forma de se calcular cada amostra de saída a partir de amostras de saída anteriores e dasamostras de entrada. Assim, a equação 30 fica:

y[n] = −5

3y[n − 1] +

4

3x[n] − 10

3x[n − 2] +

1

3x[n − 5] (31)

Exercício 51Se um sistema implementar a equação

y[n] =1

2y[n − 1] + x[n] (32)

qual serĂĄ sua sequĂȘncia de saĂ­da, para 0 ≀ n ≀ 8, se y[n] = 0 para n < 0 e se as Ășnicas amostras nĂŁo nulas dex[n] forem x[0] = 200 e x[1] = 100?

Um sistema que, para calcular cada amostra de saĂ­da, sĂł utilize amostras de entrada (atual e anteriores)tem resposta impulsiva com duração finita, ou seja, a partir de um certo instante, todas as amostras de h[n]sĂŁo nulas. Este tipo de sistema Ă© chamado sistema FIR, da sigla em inglĂȘs para resposta impulsiva com

duração finita, finite impulse response.Um sistema que tenha resposta impulsiva com duração infinita, ou seja, resposta impulsiva que nunca

se estabiliza em zero, Ă© chamado sistema IIR, de infinite impulse response. Para que um sistema seja IIR, eledeve calcular cada amostra de saĂ­da usando alguma amostra de saĂ­da anterior.

3.8 Representação no DomĂ­nio da FrequĂȘncia

Se um sistema LIT receber, Ă  sua entrada, uma sequĂȘncia senoidal, ele fornecerĂĄ, Ă  saĂ­da, uma sequĂȘncia tambĂ©msenoidal, com a mesma frequĂȘncia que a da entrada, mas podendo ter outra amplitude e outra fase. Assim, daentrada para a saĂ­da, neste caso, o sistema mantĂ©m a forma e a frequĂȘncia do sinal.

Para se verificar isto, deve-se lembrar que uma sequĂȘncia senoidal, A cos(ωn), pode ser escrita como A2 (e+jωn+

e−jωn). EntĂŁo, para se calcular a saĂ­da fornecida pelo sistema LIT quando sua entrada for uma senoide, usando-se a linearidade, podem-se calcular suas saĂ­das para e+jωn, para e−jωn, somarem-se estes resultados e, finalmente,multiplicar-se esta soma por A

2 .Partindo-se da equação 25 da convolução e usando-se, como entrada, x[n] = e+jωn, tem-se:

Page 31: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 31

y[n] =∞∑

m=−∞

h[m]x[n − m]

⇒ y[n] =

∞∑

m=−∞

h[m]e+jω(n−m)

⇒ y[n] =

∞∑

m=−∞

h[m]e+jωne−jωm

⇒ y[n] = e+jωn

(

∞∑

m=−∞

h[m]e−jωm

)

(33)

Assim, vĂȘ-se que a saĂ­da y[n] tem a mesma forma e+jωn da entrada, estando esta multiplicada pelo fatorentre parĂȘnteses, o qual Ă© um nĂșmero complexo. O mĂłdulo deste nĂșmero complexo determina a alteração naamplitude da senoide da entrada para a saĂ­da. O Ăąngulo deste nĂșmero complexo determina a defasagem entreas senoides de entrada e de saĂ­da. Desta forma, o valor entre parĂȘnteses Ă© a chamada resposta em frequĂȘncia

do sistema LIT, simbolizada por H(ejω):

H(ejω) =∞∑

m=−∞

h[m]e−jωm (34)

Com isto, uma forma de se caracterizar um sistema LIT Ă© por meio de sua resposta em frequĂȘncia , a qualespecifica como o sistema reage a cada possĂ­vel senoide aplicada Ă  sua entrada, em termos de modificação, daentrada para a saĂ­da, da amplitude e da fase desta senoide.

Nos parĂĄgrafos anteriores, jĂĄ estĂĄ calculada y[n] para entrada e+jωn. Se a entrada for e−jωn (outra compo-nente do cosseno, A cos(ωn) = A

2 (e+jωn + e−jωn)), seguindo-se procedimento semelhante ao anterior, obtĂ©m-se

y[n] =

∞∑

m=−∞

h[m]x[n − m]

⇒ y[n] =

∞∑

m=−∞

h[m]e−jω(n−m)

⇒ y[n] =∞∑

m=−∞

h[m]e−jωne+jωm

⇒ y[n] = e−jωn

(

∞∑

m=−∞

h[m]e+jωm

)

(35)

Assim, por linearidade, para se obter a resposta de um sistema LIT a uma senoide do tipo A cos(ωn) =A2 (e+jωn + e−jωn), soma-se sua resposta para e+jωn, dada em (33), com sua resposta a e−jωn, dada em (35) emultiplica-se, finalmente, esta soma por A

2 . Isto resulta:

y[n] =A

2

{

e+jωn

(

∞∑

m=−∞

h[m]e−jωm

)

+ e−jωn

(

∞∑

m=−∞

h[m]e+jωm

)}

(36)

JĂĄ foi visto que a primeira somatĂłria de (36) Ă©, usualmente, escrita como H(ejω) (resposta em frequĂȘncia).Como H(ejω) Ă© um nĂșmero complexo, pode ser escrito como:

H(ejω) = |H(ejω)|∠H(ejω) (37)

Para qualquer sequĂȘncia h[n] de nĂșmeros reais, a segunda somatĂłria de (36) tem o mesmo mĂłdulo daprimeira somatĂłria, mas tem fase oposta. Assim, a segunda somatĂłria Ă© o complexo conjugado da primeira.

Page 32: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 32

EntĂŁo, indicando-se a fase da primeira somatĂłria como ejφ, a fase da segunda somatĂłria serĂĄ e−jφ. Usando-seestes fatos, a equação 36 pode ser reescrita como:

y[n] =A

2{e+jωn|H(ejω)|ejφ + e−jωn|H(ejω)|e−jφ} (38)

Desta equação, pode-se verificar que, realmente, quando a entrada de um sistema LIT for senoidal, sua saĂ­datambĂ©m o serĂĄ, com a mesma frequĂȘncia, mas podendo ter outra amplitude e outra fase:

y[n] =A

2{e+jωn|H(ejω)|ejφ + e−jωn|H(ejω)|e−jφ}

⇒ y[n] = |H(ejω)|A2{e+jωnejφ + e−jωne−jφ}

⇒ y[n] = |H(ejω)|A2{e+j(ωn+φ) + e−j(ωn+φ)}

⇒ y[n] = |H(ejω)|A cos(ωn + φ) (39)

Para que faça sentido o uso da informação sobre a resposta em frequĂȘncia de um sistema LIT, deve-se terinformação detalhada sobre como Ă© a sequĂȘncia de entrada do sistema em termos de frequĂȘncias, ou seja, deve-se supor que a sequĂȘncia de entrada seja formada por uma sobreposição de senoides, com vĂĄrias frequĂȘncias,amplitudes e fases, mesmo que esta sequĂȘncia de entrada nĂŁo tenha sido formada fisicamente desta maneira.

Como exemplo de aplicação, um filtro passa-baixas Ă© um sistema que tem uma resposta em frequĂȘncia comatenuação das senoides de frequĂȘncias altas em relação Ă s senoides de frequĂȘncias baixas. Ele permite quesenoides de baixas frequĂȘncias “passem” de sua entrada para sua saĂ­da mais facilmente do que senoides defrequĂȘncias altas.

ExercĂ­cio 52Calcule e interprete a resposta em frequĂȘncia de um sistema atrasador que implemente y[n] = x[n − 2].

ExercĂ­cio 53Calcule e interprete a resposta em frequĂȘncia de um sistema de mĂ©dia mĂłvel que implemente

y[n] =1

2(x[n] + x[n − 1])

Simule seu funcionamento com o Octave.

ExercĂ­cio 54Calcule e interprete a resposta em frequĂȘncia de um sistema de mĂ©dia mĂłvel que implemente

y[n] =1

4(x[n] + x[n − 1] + x[n − 2] + x[n − 3])

Simule seu funcionamento com o Octave.

ExercĂ­cio 55Usando a equação 34, verifique que a resposta em frequĂȘncia Ă© periĂłdica em frequĂȘncia, com perĂ­odo de 2π.

Page 33: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 33

Uma sequĂȘncia de comandos que pode ser usada para se ver um grĂĄfico do mĂłdulo e um grĂĄficoda fase de H(ejω) do exercĂ­cio 53 Ă©:

octave1 > h = 1/2 ∗ [1 1]octave2 > [H,w] = freqz(h)octave3 > plot(w, abs(H))octave4 > plot(w, angle(H))

O comando 1 define a resposta impulsiva do sistema. O comando 2 faz com que seja calculadaa resposta em frequĂȘncia deste sistema e que seu resultado seja memorizado em dois vetores:H e w. O vetor w, que tem o papel de ω, memoriza as frequĂȘncias angulares, em radianos,para as quais a resposta em frequĂȘncia foi calculada. O vetor H memoriza os valores de H(ejω)correspondentes Ă s frequĂȘncias de w. O comando 3 faz com que seja apresentado o grĂĄfico domĂłdulo (abs) de H(ejω). Finalmente, o comando 4 faz com que seja apresentado o grĂĄfico dafase (angle) de H(ejω).

Como a resposta em frequĂȘncia Ă© periĂłdica em frequĂȘncia, com perĂ­odo de 2π, basta que ela seja especificadanum intervalo de frequĂȘncias com largura de 2π. A resposta para qualquer frequĂȘncia fora deste intervalo Ă© igualĂ  resposta para alguma frequĂȘncia dentro dele. Usualmente, ela Ă© especificada para o intervalo 0 ≀ ω < 2π oupara −π < ω ≀ π. Como exemplo, a resposta em frequĂȘncia de um filtro passa-baixas Ă© mostrada na figura 14.

|Hfpb(ejω)|

1

−ωc ωc−π π

Figura 14: Resposta em frequĂȘncia de um filtro passa-baixas

3.9 Representação de SequĂȘncias por Transformada de Fourier

Em tempo contĂ­nuo, a decomposição de um sinal em senoides Ă© feita usando-se a sĂ©rie de Fourier ou a transfor-mada de Fourier, apresentada em livros de Circuitos ElĂ©tricos e de Sistemas de Comunicação, tais como [4]. Deforma semelhante, sequĂȘncias podem ser representadas por uma transformada de Fourier adaptada ao tempodiscreto.

A transformada de Fourier de tempo discreto Ă© definida como:

X(ejω) =

∞∑

n=−∞

x[n]e−jωn (40)

em que x[n] Ă© a sequĂȘncia a ser transformada, ω Ă© uma frequĂȘncia angular e X(ejω) Ă© o resultado da transformadapara esta ω. X(ejω) Ă© uma função que informa, para cada ω, com que intensidade e com que fase uma senoidecom frequĂȘncia ω estĂĄ presente na sequĂȘncia x[n]. X(ejω) Ă© chamada de espectro de x[n].

Para se entender por que a expressĂŁo 46 “revela” quais frequĂȘncias estĂŁo presentes numa certa sequĂȘnciax[n], supĂ”e-se que uma certa sequĂȘncia a ser analisada seja:

x[n] = 3ej π

2n + 3e−j π

2n + 5ej π

3n + 5e−j π

3n, 0 ≀ n < 12 (41)

Page 34: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 34

e que x[n] = 0 fora deste intervalo. Nesta expressĂŁo para x[n], podem-se identificar dois cossenos: um comω = π

2 e o outro com ω = π3 . (Lembre-se de como o cosseno pode ser escrito como combinação de exponenciais

complexas.)SupĂ”e-se, entĂŁo, que alguĂ©m que nĂŁo conheça esta expressĂŁo para x[n], mas que conheça a sua sequĂȘncia de

valores numĂ©ricos (eles podem ter sido medidos) queira descobrir quais sĂŁo as senoides que formam esta x[n].Para se descobrir se a x[n] de (41) tem uma componente do tipo ejωn com, por exemplo, ω = π

2 , calcula-sea expressĂŁo 46 usando-se aquela x[n] e ω = π

2 , obtendo-se:

X(ej π

2 ) =∑

∞

n=−∞x[n]e−j π

2n

⇒ X(ej π

2 ) =∑11

n=0(3ej π

2n + 3e−j π

2n + 5ej π

3n + 5e−j π

3n)e−j π

2n

⇒ X(ej π

2 ) =∑11

n=0(3ej π

2ne−j π

2n + 3e−j π

2ne−j π

2n + 5ej π

3ne−j π

2n + 5e−j π

3ne−j π

2n)

⇒ X(ej π

2 ) =∑11

n=0(3ej π

2n−j π

2n + 3e−j π

2n−j π

2n + 5ej π

3n−j π

2n + 5e−j π

3n−j π

2n)

⇒ X(ej π

2 ) =∑11

n=0(3ej0n + 3e−jπn + 5e−j π

6n + 5e−j 5π

6n)

⇒ X(ej π

2 ) =∑11

n=0(3 + 3e−jπn + 5e−j π

6n + 5e−j 5π

6n)

⇒ X(ej π

2 ) =∑11

n=0 3 +∑11

n=0 3e−jπn +∑11

n=0 5e−j π

6n +

∑11n=0 5e−j 5π

6n

⇒ X(ej π

2 ) = 36 + 3∑11

n=0 e−jπn + 5∑11

n=0 e−j π

6n + 5

∑11n=0 e−j 5π

6n

⇒ X(ej π

2 ) = 36 + 0 + 0 + 0

⇒ X(ej π

2 ) = 36 (42)

ExercĂ­cio 56Por que, ao final do cĂĄlculo feito em (42), as trĂȘs Ășltimas somatĂłrias resultaram 0?

Em (42), viu-se que, quando se procurou em x[n] uma exponencial complexa que tivesse a frequĂȘncia ω = π2 ,

as somatĂłrias relacionadas a componentes de outras frequĂȘncias resultaram 0, enquanto a somatĂłria relacionadaĂ  prĂłpria componente ω = π

2 resultou 36. Este valor 36 estĂĄ relacionado Ă  presença de uma componente comω = π

2 em x[n]. De fato, a sequĂȘncia exponencial com frequĂȘncia ω = π2 estĂĄ presente em x[n] com comprimento

12 (a sequĂȘncia sĂł era nĂŁo nula para 0 ≀ n < 12). O resultado 36 veio de uma somatĂłria de 12 valores iguaisa 3. Assim, neste caso, o coeficiente 3 da exponencial complexa de frequĂȘncia ω = π

2 Ă© revelado como sendo3612 = 3. Portanto, a aplicação da transformada de Fourier Ă  x[n] permite que seja revelado o coeficiente de ej π

2n

em x[n].Se ej π

2n estivesse presente com maior duração dentro de x[n], o resultado obtido para X(ej π

2 ) seria propor-cionalmente maior. Por exemplo, se ej π

2n estivesse presente em x[n] com duração de 24 instantes (ao invés de

12), X(ej π

2 ) resultaria 72 (ao invĂ©s de 36). Mas, o coeficiente de ej π

2n continuaria sendo revelado como tendo o

valor 3, jĂĄ que 7224 = 3. Portanto, o resultado da transformada de Fourier para uma dada frequĂȘncia depende nĂŁo

só do coeficiente da exponencial complexa correspondente dentro de x[n], mas depende, também, da duraçãodesta exponencial complexa dentro de x[n].

ExercĂ­cio 57Calcule X(ej π

3 ) para a x[n] dada em (41). Interprete o resultado.

O que faz com que a transformada de Fourier consiga revelar a presença de uma certa exponencial complexaejωxn dentro de uma sequĂȘncia Ă© que a multiplicação desta exponencial por e−jωxn resulta ejωxne−jωxn = 1,como visto em (42). E a somatĂłria destes valores 1 cresce ao longo da duração da sequĂȘncia. Por outro lado,para frequĂȘncias diferentes da procurada, o expoente de e nĂŁo se anula. Neste caso, a somatĂłria de valores destaexponencial complexa ao longo da duração da sequĂȘncia oscila, ao invĂ©s de crescer continuamente.

Page 35: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 35

A sequĂȘncia x[n] pode ser recuperada a partir de X(ejω) usando-se a transformada inversa de Fourier,definida como:

x[n] =1

2π

∫ π

−π

X(ejω)ejωn dω (43)

A demonstração de que a equação 43 Ă© a transformação inversa da equação 46 Ă© apresentada em [1].Da equação 43, vĂȘ-se que a resposta impulsiva h[n] de um sistema Ă© a transformada inversa de Fourier da

resposta em frequĂȘncia deste sistema.A equação 43 permite que se calcule a sequĂȘncia de amostras x[n] cuja transformada de Fourier Ă© uma certa

X(ejω) conhecida. Isto Ă© usado em processos de compactação de dados. Se uma longa sequĂȘncia de amostrasfor formada por umas poucas componentes senoidais, pode ser vantajoso se armazenar em uma memĂłria digitaluma descrição de X(ejω), ao invĂ©s de se memorizarem os prĂłprios valores lidos das amostras, x[n]. NestatĂ©cnica, entĂŁo, primeiro Ă© lida e memorizada a longa sequĂȘncia de amostras x[n]. Em seguida, Ă© calculada atransformada de Fourier de x[n]. Os resultados desta X(ejω), entĂŁo, sĂŁo memorizados e as amostras originaisx[n] sĂŁo descartadas. Se for necessĂĄrio recuperar-se x[n], basta que se calcule a transformada inversa de X(ejω),usando-se a equação 43.

Uma aplicação popular da transformada de Fourier Ă© a codificação de som no formato MP3 [5]. NestatĂ©cnica, uma sequĂȘncia de amostras de som x[n] a ser compactada Ă© subdividida em subsequĂȘncias x1[n], x2[n]etc., que duram, cada uma, uma fração de segundo. Cada uma destas subsequĂȘncias sofre uma transformadade Fourier, resultando X1(e

jω), X2(ejω) etc. O resultado da transformada de Fourier de cada trecho indica

o conteĂșdo em frequĂȘncias deste trecho. SĂŁo, entĂŁo, removidas as componentes com frequĂȘncias inaudĂ­veis decada trecho. E, ainda, em cada trecho, Ă© identificada a senoide com maior energia. As senoides que nĂŁo seriamaudĂ­veis no mesmo trecho devido Ă  presença simultĂąnea desta senoide muito mais forte tambĂ©m sĂŁo removidas.EntĂŁo, para cada trecho, sĂŁo memorizadas, no domĂ­nio da frequĂȘncia, apenas as senoides remanescentes. Nestamemorização, ainda Ă© usada uma tĂ©cnica genĂ©rica de compactação de arquivos digitais.

O Teorema da Convolução se aplica a sequĂȘncias e a suas transformadas de Fourier, ou seja, se

x[n]F−→ X(ejω)

e

h[n]F−→ H(ejω)

(em que a notaçãoF−→ representa a transformada de Fourier), se uma sequĂȘncia y[n] for o resultado da convolução

destas x[n] e h[n], ou seja,

y[n] =

∞∑

k=−∞

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

entĂŁo

Y (ejω) = X(ejω)H(ejω)

ou seja, convolução no domĂ­nio do tempo corresponde a multiplicação no domĂ­nio de frequĂȘncia. Uma demon-stração deste teorema Ă© apresentada em [1].

3.10 Transformada de Fourier Discreta

A transformada de Fourier discreta Ă© uma transformada de Fourier calculada apenas para sequĂȘncias x[n] deduração finita. É muito comum que se refiram a ela pela sua sigla em inglĂȘs, DFT. Ela Ă© chamada de “discreta”porque apresenta o resultado da transformada de Fourier apenas para um nĂșmero finito de frequĂȘncias e nĂŁopara todos os valores de frequĂȘncia, como acontece com a transformada de Fourier contĂ­nua. O nĂșmero defrequĂȘncias para as quais a DFT apresenta resultados Ă© igual ao nĂșmero de valores de x[n] usados no cĂĄlculo destatransformada. Por exemplo, se a sequĂȘncia x[n] a ser transformada tiver apenas 10 valores, a DFT fornecerĂĄ uma

Page 36: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 36

sequĂȘncia contendo, tambĂ©m, 10 valores. Estes valores gerados pela DFT sĂŁo amostras igualmente espaçadasem frequĂȘncia do espectro contĂ­nuo de x[n].

A DFT tem grande utilidade pråtica, por ser, em geral, de cålculo mais råpido do que um cålculo analíticoda transformada de Fourier contínua e, mesmo assim, fornecer amostras exatas do espectro contínuo do sinaltransformado. Quanto menos amostras de uma x[n] forem usadas no cålculo da DFT, maior serå a rapidez destecålculo, mas serão obtidas menos amostras do espectro. Inversamente, se muitas amostras de x[n] forem usadasno cålculo da DFT, maior serå o trabalho nos cålculos, mas se obterå uma melhor visualização do espectro(mais amostras dele).

A DFT Ă© definida como:

X[k] =N−1∑

n=0

x[n]e−j 2π

Nkn (44)

em que x[n] Ă© a sequĂȘncia de duração finita a ser transformada e X[k] Ă© o resultado da transformação. X[k] Ă©uma sequĂȘncia que contĂ©m amostras uniformemente espaçadas, em frequĂȘncia, do espectro X(ejω) de x[n]. Adiferença de frequĂȘncia angular entre duas amostras seguidas de X(ejω) contidas em X[k] Ă© de 2π

N, em que N Ă©

o nĂșmero de amostras da sequĂȘncia x[n] usadas no cĂĄlculo de X[k]. Assim, por exemplo, se N = 10, a diferençade frequĂȘncia angular entre amostras de X(ejω) contidas em X[k] serĂĄ de 2π

10 . EntĂŁo, para N = 10, X[0] tem ovalor de X(ejω) para ω = 0 2π

10 = 0 rad. X[1] tem o valor de X(ejω) para ω = 1 2π10 = 2π

10 rad e assim por diante,atĂ© X[9], que tem o valor de X(ejω) para ω = 9 2π

10 rad. Para k = 10, o valor obtido para X[k], X[10], seria ode X(ejω) para ω = 10 2π

10 = 2π rad, o qual equivale ao valor obtido para ω = 0 rad, X[0], jĂĄ que X(ejω) Ă©periĂłdico em frequĂȘncia, com perĂ­odo de 2π. Por isto, sĂł sĂŁo de interesse os valores de X[k] em nĂșmero igualao nĂșmero de amostras de x[n] usadas no cĂĄlculo. Valores de X[k] fora da faixa de interesse sĂŁo sempre iguaisa valores de X[k] normalmente calculados.

A figura 15 Ă© um grĂĄfico do mĂłdulo da transformada de Fourier contĂ­nua de uma sequĂȘncia, apresentadoem linha contĂ­nua, sobreposto ao grĂĄfico do mĂłdulo da DFT da mesma sequĂȘncia, apresentado como hastes.A sequĂȘncia utilizada nesta transformação tinha comprimento de oito amostras, tendo as quatro primeirasamostras o valor 1 e as quatro Ășltimas o valor 0. (Esta sequĂȘncia nĂŁo Ă© mostrada na figura.) Como a sequĂȘnciaa ser transformada tinha oito amostras, com a DFT, obtiveram-se oito amostras de seu espectro contĂ­nuo. VĂȘ-se,na figura 15, que os resultados da DFT coincidem com os do espectro contĂ­nuo.

A transformada de Fourier discreta inversa Ă© calculada como:

x[n] =1

N

N−1∑

k=0

X[k]ej 2π

Nkn (45)

Aqui, X[k] Ă© um espectro discreto conhecido. x[n] Ă© a sequĂȘncia correspondente a este espectro. N Ă© ocomprimento de x[n] e Ă©, assim, o nĂșmero de valores nĂŁo redundantes de X[k].

Atualmente, a DFT Ă© calculada, para longas sequĂȘncias, em programas de computador e em circuitos inte-grados, usando-se algoritmos rĂĄpidos chamados de FFT (do inglĂȘs “Fast Fourier Transform” ou Transformada

RĂĄpida de Fourier). A FFT usa recursĂŁo e se aproveita do fato de que fatores do tipo ej 2π

Nkn sĂŁo periĂłdicos

em k e em n, evitando, com isto, que eles sejam recalculados muitas vezes. Resultados parciais de fatoresdeste tipo jĂĄ calculados sĂŁo reaproveitados ao mĂĄximo. Cita-se o matemĂĄtico Gauss como um dos primeiros adescrever a FFT, em 1805 [1].

A FFT de uma dada sequĂȘncia x Ă© calculada usando-se o comando fft(x). O resultado Ă© umasequĂȘncia com o mesmo comprimento de x, contendo amostras do espectro de x.

Page 37: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 37

-1

0

1

2

3

4

5

-1 0 1 2 3 4 5 6 7

mod

ulo

do e

spec

tro

omega(rad)

Figura 15: MĂłdulo de uma DFT e de uma transformada de Fourier contĂ­nua da mesma sequĂȘncia

ExercĂ­cio 58No Octave, gere uma sequĂȘncia de instantes, com o comandooctave> n=[0:11]Em seguida, especifique uma frequĂȘncia ω = π

2 , comoctave> omega=pi/2EntĂŁo, gere uma senoide, com (usando x minĂșsculo)octave> x=cos(omega*n)Calcule e memorize a FFT de x com (usando X maiĂșsculo)octave> X=fft(x)Visualize o mĂłdulo desta FFT comoctave> stem(n,abs(X))Interprete o resultado.

ExercĂ­cio 59No exercĂ­cio anterior, o eixo x do grĂĄfico mostrava os instantes n. Modifique a escala do eixo x, para que elapasse a mostrar ω, com os comandos:octave> eixox=2*pi/12*noctave> stem(eixox,abs(X))Verifique os valores de ω em que ficaram as raias nĂŁo nulas do espectro.

Page 38: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 38

ExercĂ­cio 60Repita o procedimento anterior para: ω = π

4 , ω = π8 e ω = π. Interprete os resultados.

ExercĂ­cio 61Repita o procedimento anterior para sequĂȘncias mais longas, para mais instantes, usando o programa para oOctave:

n=[0:99];omega=input("omega=");x=cos(omega*n);X=fft(x);eixox=2*pi/100*n;stem(eixox,abs(X))

para vĂĄrios valores de ω. Interprete os resultados.

ExercĂ­cio 62Verifique o espectro de uma sequĂȘncia x que consista numa soma de duas senoides, com diferentes frequĂȘnciase diferentes amplitudes.

A FFT inversa de um espectro discreto X Ă© calculada usando-se o comando ifft(X). O resultadoĂ© uma sequĂȘncia temporal com o mesmo comprimento de X, a qual Ă© a sequĂȘncia de amostrascujo espectro discreto Ă© X.

4 Transformada Z

A transformada Z é uma generalização da transformada de Fourier. Uma de suas utilidades é ter notação maissimples do que a transformada de Fourier. Outra utilidade é a de facilitar a visualização de propriedades desistemas de tempo discreto.

A transformada de Fourier foi definida na seção 3.9 como:

X(ejω) =

∞∑

n=−∞

x[n]e−jωn (46)

Na definição da transformada Z, troca-se a expressĂŁo ejω da transformada de Fourier por uma variĂĄvel complexaz, obtendo-se:

X(z) =∞∑

n=−∞

x[n]z−n (47)

Na definição da transformada Z, z Ă© uma variĂĄvel complexa que pode assumir qualquer valor. Quanto Ă expressĂŁo ejω, ela tambĂ©m Ă© um nĂșmero complexo, mas sĂł pode assumir valores cujo mĂłdulo valha 1. Assim,a transformada de Fourier e a transformada Z sĂł coincidem quando o mĂłdulo da variĂĄvel z for restrito a 1.

Page 39: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 39

De forma similar Ă  usada com a transformada de Fourier, uma notação usada para se indicar um par formadopor uma sequĂȘncia e sua transformada Z Ă©:

x[n]Z−→ X(z) (48)

ExercĂ­cio 63Qual Ă© a transformada Z da sequĂȘncia dada na tabela 14?

VĂȘ-se que a transformada Z de uma sequĂȘncia apresenta cada valor desta sequĂȘncia multiplicado pela variĂĄvelz elevada ao negativo do instante daquele valor na sequĂȘncia.

ExercĂ­cio 64Qual Ă© a transformada Z de uma versĂŁo atrasada da sequĂȘncia do exercĂ­cio anterior (considere atraso unitĂĄrio)?

VĂȘ-se que atrasar uma sequĂȘncia em uma unidade de tempo corresponde a multiplicĂĄ-la por z−1 no domĂ­nioz. AtrasĂĄ-la de k unidades de tempo corresponde a multiplicĂĄ-la por z−k. AdiantĂĄ-la corresponde a multiplicĂĄ-lapor z elevada a um expoente positivo, cujo valor Ă© o nĂșmero de unidades de tempo de adiantamento.

ExercĂ­cio 65Se a transformada Z de uma sequĂȘncia x[n] for chamada de X(z), qual serĂĄ a transformada Z da sequĂȘncia12x[n − 3]?

ExercĂ­cio 66Se a transformada Z de uma sequĂȘncia x[n] for chamada de X(z), qual serĂĄ a transformada Z da sequĂȘnciax[n] − 1

3x[n − 1] + 12x[n − 3]?

ExercĂ­cio 67Se a transformada Z de uma sequĂȘncia x[n] for chamada de X(z) e a transformada Z de uma sequĂȘncia y[n] forchamada de Y (z), qual serĂĄ a transformada Z da equação y[n] = x[n] − 1

3x[n − 1] + 12x[n − 3] − 1

10y[n − 2]?

4.1 Transformada Z e EquaçÔes de Diferenças

Conforme visto na seção 3.7, muitos sistemas de tempo discreto são projetados para implementar equaçÔes dediferenças do tipo:

N∑

k=0

aky[n − k] =M∑

k=0

bkx[n − k] (49)

A transformada Z da equação 49 é:

Page 40: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 40

∑N

k=0 akz−kY (z) =∑M

k=0 bkz−kX(z)

⇒ Y (z)(∑N

k=0 akz−k) = X(z)(∑M

k=0 bkz−k)

⇒ H(z) = Y (z)X(z) =

P

M

k=0bkz−k

P

N

k=0akz−k

(50)

em que H(z) Ă© a função de transferĂȘncia do sistema, no domĂ­nio z.

ExercĂ­cio 68Qual Ă© a função de transferĂȘncia no domĂ­nio z do sistema que implementa

y[n] = x[n] − 1

3x[n − 1] +

1

2x[n − 3] − 1

10y[n − 2] ?

ExercĂ­cio 69Qual Ă© a função de transferĂȘncia no domĂ­nio z do sistema que implementa

y[n] = x[n] − 1

3x[n − 1] +

1

2x[n − 3] ?

A H(z) de um sistema que implementa uma equação de diferenças pode ser escrita de forma que seunumerador e seu denominador apareçam como produtos de fatores do tipo (z − k), com k sendo um nĂșmerocomplexo constante. Escrita desta forma, a H(z) revela diretamente seus zeros e seus polos. Um zero de H(z)Ă© um valor de z que faz com que a H(z) assuma valor zero. Assim, um zero Ă© um valor de z que faz com queo numerador de H(z) assuma valor zero. Um polo de H(z) Ă© um valor de z que faz com que a H(z) assumavalor tendendo a infinito. Assim, um polo Ă© um valor de z que faz com que o denominador de H(z) assumavalor zero.

ExercĂ­cio 70Quais sĂŁo os zeros e os polos da função de transferĂȘncia dada abaixo?

H(z) =(z − 0, 5)(z + 0, 5)

z(z − 0, 8)

Escreva uma equação de diferenças correspondente.

ExercĂ­cio 71Quais sĂŁo os zeros e os polos da função de transferĂȘncia dada abaixo?

H(z) =1 + 0, 1z−1 − 0, 12z−2

1 − 0, 6z−1 + 0, 25z−2

Escreva uma equação de diferenças correspondente.

Page 41: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 41

Para se obterem as raízes de um polinîmio p(x), por exemplo, p(x) = x2 − 5x + 6, deve-sefornecer este polinîmio montando-se um vetor com seus coeficientes, usando-se:octave > p = [1 − 5 6]e deve-se, em seguida, usar o comando roots:octave > roots(p)

ExercĂ­cio 72Escreva uma equação de diferenças cuja H(z) tenha um Ășnico zero em 0,8 e tenha dois polos, em ±0, 7i.

Exercício 73Escreva uma equação de diferenças cuja H(z) tenha zeros em ±0, 8 e tenha polos em 0, 5 ± 0, 7i.

Para se obter um polinĂŽmio p(x) que possua certas raĂ­zes, por exemplo, 2 e 3, deve-se montarcom elas um vetor, usando-se:octave > raizes = [2 3]e deve-se, em seguida, usar o comando poly :octave > poly(raizes)O resultado serĂĄ a sequĂȘncia de coeficientes de um polinĂŽmio que possua as raĂ­zes fornecidas. Noresultado, o coeficiente dado mais Ă  esquerda Ă© o do termo de maior expoente. Neste exemplo,o resultado Ă©:1 − 5 6o que significa que um polinĂŽmio cujas raĂ­zes sĂŁo 2 e 3 Ă©x2 − 5x + 6

4.2 CĂĄlculo de Resposta em FrequĂȘncia Usando a Transformada Z

Sabe-se que a transformada Z, H(z), e a transformada de Fourier, H(ejω), coincidem quando |z| = 1, jĂĄ que|ejω| = 1 para qualquer valor de ω. Para qualquer valor de ω, ejω Ă© um nĂșmero complexo com mĂłdulo igual a1 e com Ăąngulo igual a ω. Assim, para se avaliar H(ejω) para algum valor de ω, pode-se calcular ejω para esteω, fazer-se z igual a este valor de ejω e avaliar-se H(z) para este valor de z.

ExercĂ­cio 74Dada a função de transferĂȘncia:

H(z) =(z − 0, 5)(z + 0, 5)

z(z − 0, 8)

Qual Ă© seu mĂłdulo e qual Ă© sua fase para ω = 0? E para ω = π2 ? E para ω = π?

Pelo que se vĂȘ no exercĂ­cio anterior, para se calcular aquela H(z) em vĂĄrias frequĂȘncias, calcula-se

H(ejω) =(ejω − 0, 5)(ejω + 0, 5)

ejω(ejω − 0, 8)

naquelas frequĂȘncias.

Page 42: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 42

Esta H(z) tem dois fatores correspondentes a seus zeros e dois fatores correspondentes a seus polos. Umdos fatores correspondentes a um zero Ă© (z − 0, 5). Ele corresponde a um zero em +0, 5. Para um dado valorde z, o valor deste fator, obviamente, Ă© a diferença entre o valor de z e o valor 0, 5, ou seja, Ă© a diferençaentre o valor de z e o zero do fator. Por exemplo, para ω = 0, z = ej0 = 1, este termo assumirĂĄ o valor(z − 0, 5) = 1 − 0, 5 = 0, 5. E, para ω = π

2 , z = ej π

2 = j, (z − 0, 5) = j − 0, 5. Neste Ășltimo caso, o mĂłdulo do

fator Ă© |j − 0, 5| =√

0, 52 + 12 =√

1, 25. Este mĂłdulo Ă© igual ao comprimento da linha pontilhada da figura 16,na qual kz representa o valor do zero deste fator. VĂȘ-se que o comprimento desta linha Ă© igual ao da linhatracejada, a qual liga z = j ao zero de valor 0, 5. Em geral, para uma dada frequĂȘncia ω, o mĂłdulo de um fatordo tipo (z − kz), em que kz Ă© um zero do sistema, Ă© igual Ă  distĂąncia entre z = ejω e kz. A fase Ξz deste fatortambĂ©m estĂĄ indicada na figura.

ℜ

ℑplano complexo

kz

ω = π2 (z = j)j − kz

ΞzΞz

|j − kz|

raio unitĂĄrio

Figura 16: Visualização do efeito de um zero kz em H(z), para ω = π2

ExercĂ­cio 75Usando a representação de um zero do sistema no plano complexo, calcule, usando desenhos, o mĂłdulo e a fasedo fator (z − 0, 5) para ω = 0, ω = π

2 e ω = π.

ExercĂ­cio 76Usando a representação de um zero do sistema no plano complexo, calcule, usando desenhos, o mĂłdulo e a fasedo fator (z + 0, 5) para ω = 0, ω = π

2 e ω = π.

VĂȘ-se que, quanto maior for a distĂąncia do ponto ejω a um zero do sistema, maior serĂĄ a contribuição destezero para o ganho. Assim, no projeto de um sistema, devem-se colocar zeros prĂłximos Ă  circunferĂȘncia unitĂĄria

Page 43: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 43

(ou sobre ela) nas frequĂȘncias para as quais se desejar baixo valor de ganho e vice-versa.O efeito de um polo sobre o mĂłdulo e a fase de H(z) pode ser visualizado de maneira semelhante Ă  do efeito

de um zero. Mas, como o fator de um polo estĂĄ no denominador de H(z), quando ejω estiver prĂłximo a umpolo, o ganho correspondente serĂĄ grande e vice-versa. TambĂ©m por estar no denominador, o polo nĂŁo deverĂĄestar sobre a circunferĂȘncia unitĂĄria, pois isto levaria a uma divisĂŁo por zero no cĂĄlculo do ganho (o ganhotenderia a infinito).

O Ăąngulo correspondente a um polo, obtido na forma da figura 16, contribuirĂĄ para H(z) com o oposto deseu sinal, jĂĄ que ele Ă© um Ăąngulo que estĂĄ no denominador de um nĂșmero complexo.

Exercício 77Usando a representação de um polo do sistema no plano complexo, calcule, usando desenhos, o módulo e a fasedo fator 1

(z+0,8) para ω = 0, ω = π2 e ω = π.

Exercício 78Usando a representação de um polo do sistema no plano complexo, calcule, usando desenhos, o módulo e a fasedo fator 1

zpara ω = 0, ω = π

2 e ω = π.

ExercĂ­cio 79Um certo sistema tem, como zeros, z1 = 1, z2 = 0, 8j e z3 = −0, 8j. Seus polos sĂŁo: p1 = −0, 2, p2 = −0, 2+0, 3je p2 = −0, 2 − 0, 3j. Esboce seu diagrama de zeros e polos no plano complexo. Esboce o grĂĄfico do mĂłdulo deseu ganho em frequĂȘncia. Este sistema tem caracterĂ­stica passa-baixas? Passa-altas?

A seguinte sequĂȘncia de comandos permite a visualização do mĂłdulo do ganho do sistema doexercĂ­cio 79.

octave > z1 = 1;octave > z2 = 0.8j;octave > z3 = −0.8j;octave > p1 = −0.2;octave > p2 = −0.2 + 0.3j;octave > p3 = −0.2 − 0.3j;octave > zrs = [z1 z2 z3];octave > pls = [p1 p2 p3];octave > numerador = poly(zrs);octave > denominador = poly(pls);octave > [H,w] = freqz(numerador, denominador);octave > plot(w, abs(H))

Assim, para se obter um sistema com uma determinada caracterĂ­stica de resposta em frequĂȘncia, devem-secolocar zeros prĂłximos Ă s frequĂȘncias para as quais se deseja ganho pequeno e polos prĂłximos Ă s frequĂȘnciaspara as quais se deseja ganho grande. Escolhidos os zeros e os polos, podem-se construir os polinĂŽmios donumerador e do denominador de H(z). Com a H(z) preparada desta forma, pode-se escrever a equação dediferenças correspondente. E, finalmente, tendo-se a equação de diferenças, pode-se implementar o sistema emhardware ou em software.

Page 44: IFSP (Prof. Ricardo Pires) - Process Amen To Digital de Sinais

Ricardo Pires - Processamento Digital de Sinais 44

ReferĂȘncias

[1] OPPENHEIM,A.V., SCHAFER,R.W.Discrete-Time Signal ProcessingPrentice-Hall, 1989

[2] http://www.octave.org, acessado em 23/12/2008

[3] http://www.ti.com, acessado em 26/12/2008

[4] CARLSON,A.B.; CRILLY,P.; RUTLEDGE,J.Communication SystemsMcGraw-Hill, 2001

[5] http://www.mp3-converter.com/mp3codec, acessado em 17/05/2009