aula pds

44

Upload: wellison-rodrigues

Post on 08-Nov-2015

233 views

Category:

Documents


9 download

DESCRIPTION

PDS

TRANSCRIPT

  • Processamento Digital de Sinais

    texto de suporte para aulas

    Instituto Federal de Educao, Cincia e Tecnologia - SP

    Ricardo Pires - rea de Eletrnica

    16 de Agosto de 2013

    Contedo

    1 Introduo 1

    2 Sinais de Tempo Discreto 3

    2.1 Sequncias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    2.2 Operaes Bsicas sobre Sequncias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

    2.3 Sequncias Bsicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    2.3.1 Impulso de Tempo Discreto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

    2.3.2 Degrau Unitrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    2.3.3 Sequncia Exponencial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    2.3.4 Sequncia Senoidal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

    2.3.5 Sequncia Exponencial Complexa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

    2.4 Amostragem de Sinais de Tempo Contnuo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

    3 Sistemas de Tempo Discreto 19

    3.1 Sistemas com Memria x Sistemas sem Memria . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

    3.2 Sistemas Lineares x Sistemas No Lineares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

    3.3 Sistemas Variantes no Tempo x Sistemas Invariantes no Tempo . . . . . . . . . . . . . . . . . . . 22

    3.4 Sistemas Causais x Sistemas No Causais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    3.5 Estabilidade de Sistemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    3.6 Sistemas Lineares e Invariantes no Tempo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

    3.6.1 Estabilidade de Sistemas LIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

    3.6.2 Causalidade de Sistemas LIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

    3.7 Equaes de Diferenas Lineares a Coecientes Constantes . . . . . . . . . . . . . . . . . . . . . . 29

    3.8 Representao no Domnio da Frequncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

    3.9 Representao de Sequncias por Transformada de Fourier . . . . . . . . . . . . . . . . . . . . . . 33

    3.10 Transformada de Fourier Discreta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

    4 Transformada Z 38

    4.1 Transformada Z e Equaes de Diferenas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

    4.2 Clculo de Resposta em Frequncia Usando a Transformada Z . . . . . . . . . . . . . . . . . . . . 41

    1 Introduo

    Este um texto de suporte para aulas de Processamento Digital de Sinais. Como tal, ele no dispensa o

    estudo em livros especializados, dentre os quais se destaca [1].

    Supe-se que, durante as aulas, problemas sero resolvidos com auxlio do software Octave [2].

    1

  • Ricardo Pires - Processamento Digital de Sinais 2

    Um sinal uma grandeza (por exemplo, tenso eltrica) variando no tempo e que carrega uma informao.

    Portanto, a tenso eltrica da tomada no um sinal, enquanto uma onda transmitida por uma emissora de

    rdio um sinal. A informao carregada pode ser voz, msica, o resultado de uma medio (de distncia, de

    velocidade...), imagem etc.

    O processamento de sinais consiste na representao, na transformao e na manipulao dos sinais e da

    informao que eles contm. Exemplos: retirada de rudo de som, compactao de som ou de imagem. Uma

    classe importante de aplicaes do Processamento Digital de Sinais a da interpretao de sinais, a qual

    consiste na extrao de informaes do sinal sendo processado. Exemplos: num sinal de voz, identicao da

    pessoa que falou ou do que ela falou. Em sinais de origem geolgica: identicao de minrios presentes no local

    de origem dos sinais.

    Antes dos anos 1960, o processamento de sinais era feito, quase sempre, em tempo contnuo, por meio de

    circuitos eletrnicos analgicos. O avano da tecnologia digital, principalmente no aumento da velocidade dos

    circuitos digitais e em sua miniaturizao, fez com que o processamento de sinais tivesse gradualmente suas

    implementaes migrando da forma analgica para a digital.

    Normalmente, sinais manipulados na forma digital tm origem analgica. O circuito digital que faz esta

    manipulao requer uma sequncia de nmeros codicados em binrio obtida a partir do sinal analgico original.

    Esta sequncia obtida por amostragem peridica do sinal analgico. O resultado da amostragem uma

    sequncia de valores que buscam registrar valores lidos do sinal analgico em determinados instantes, havendo

    um certo intervalo entre eles. Neste processo, a princpio, perde-se a informao sobre os valores que estavam

    no intervalo entre as amostras colhidas.

    Como o processamento digital realizado apenas sobre amostras colhidas em determinados instantes (no

    continuamente), diz-se que este processamento de tempo discreto, por oposio ao processamento analgico,

    o qual de tempo contnuo. Mas, o processamento em tempo discreto no necessariamente digital. H

    processamento em tempo discreto usando-se outras tecnologias, como a de capacitores chaveados.

    Dentre as razes para a gradual substituio de implementaes analgicas por implementaes digitais para

    o processamento de sinais, esto a maior exibilidade das implementaes digitais e sua maior preciso.

    A maior exibilidade da implementao digital reside no fato de que o processamento de um sinal, normal-

    mente, consiste na realizao de clculos usando-se os valores que ele sucessivamente assume. Uma implemen-

    tao analgica, usando resistores, indutores, capacitores e amplicadores, realiza clculos sobre o sinal na

    forma de equaes diferenciais. A forma da equao diferencial implementada depende dos parmetros dos com-

    ponentes do circuito (resistncias, indutncias, capacitncias, ganhos), do nmero de componentes de cada tipo

    e da forma pela qual eles so interconectados. Assim, s realizvel analogicamente um clculo que possa ser

    expresso como uma equao diferencial e para o qual se conhea uma congurao de circuito correspondente.

    Por outro lado, a implementao digital consiste na realizao de clculos usando-se, como entrada, a sequncia

    de amostras coletadas. Cada amostra est codicada como nmero em binrio. Os clculos possveis, neste

    caso, so quaisquer clculos realizveis por unidades aritmticas digitais: adies, subtraes, multiplicaes,

    divises, operaes no-lineares e quaisquer combinaes destas, em quaisquer ordens. Equaes diferenciais

    tambm podem ser aproximadas numericamente por clculos na forma digital. Desta forma, uma implemen-

    tao digital pode substituir uma implementao analgica, desde que a velocidade exigida para os clculos

    esteja dentro do limite de funcionamento da tecnologia digital disponvel. Por outro lado, muitas sequncias de

    clculos possveis na forma digital no tm equivalentes na forma analgica.

    Quanto preciso, uma implementao analgica sofre os efeitos de desvios nos parmetros de seus com-

    ponentes (resistncias, capacitncias...) em relao aos valores desejados. Uma implementao digital tem a

    preciso de seus clculos dependente, sobretudo, do nmero de bits com que representada cada amostra e cada

    resultado intermedirio de clculo. Quanto maior for este nmero de bits, maior a preciso (maior resoluo). E

    no h limite terico para este nmero de bits. S h limite de custo da implementao, de seu tamanho fsico

    e da energia consumida em seu funcionamento. Portanto, quanto preciso, a implementao digital tambm

    vantajosa. Basta que se use um nmero suciente de bits para se representar cada nmero usado nos clculos

    com a preciso desejada.

    As principais formas de implementao de sistemas de processamento digital de sinais so:

    computador de uso genrico; circuito integrado (chip) programvel genrico (microprocessador ou microcontrolador);

  • Ricardo Pires - Processamento Digital de Sinais 3

    chip programvel especial para processamento digital de sinais [3]; chip congurvel do tipo FPGA; circuito integrado de aplicao especca.

    2 Sinais de Tempo Discreto

    Conforme visto na introduo, um sinal uma funo que carrega informao. Na maioria dos casos, uma

    grandeza fsica cujo valor funo do tempo. Um sinal de tempo contnuo denido para um intervalo contnuo

    de valores de tempo. Usualmente, chamado de sinal analgico. Um sinal de tempo discreto s denido para

    determinados instantes, com intervalos entre eles. Assim, eles consistem em sequncias de nmeros.

    A mesma idia de continuidade se aplica aos valores assumidos pelo sinal. Um sinal pode assumir valores

    contnuos, como ocorre nos sistemas analgicos, ou pode assumir apenas determinados valores, como ocorre

    em sistemas digitais. Neste caso, a limitao de valores se deve ao fato de que, representando-se nmeros em

    binrio com nmero limitado de bits, somente um nmero nito de valores representvel.

    2.1 Sequncias

    Sinais de tempo discreto so sequncias de nmeros. Uma certa sequncia x tem, convencionalmente, cadaum de seus valores particulares denotado como x[n], em que o n entre colchetes indica a qual valor particulardentro da sequncia se est fazendo referncia. Por exemplo, x[15] refere-se ao elemento nmero 15 da sequnciax. Como n o nmero de um elemento na sequncia, ou seja, n serve para indicar a posio do elemento emrelao aos demais (se o quinto, o dcimo etc.), n sempre inteiro.

    Normalmente, uma sequncia originada da amostragem peridica de um sinal analgico xa(t). Neste caso,

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

    em que Ta, intervalo entre a coleta de duas amostras seguidas, chamado perodo de amostragem. Seu inverso,fa, a frequncia de amostragem.

    Embora x[n] se rera a um elemento particular de uma sequncia, a notao x[n] tambm usada para sereferir sequncia completa, quando no houver ambiguidade.

    O grco de uma funo de domnio contnuo y = f(x) deve usar uma linha contnua para expressarvisualmente a dependncia entre x e y, conforme a gura 1.

    Por outro lado, o grco de uma funo de domnio discreto y = f [n] deve deixar claro que a funo s denida para certos valores (aqueles que pertencem ao seu domnio) e indenida entre estes valores, conforme

    a gura 2.

    No software Octave, uma sequncia denida como:

    octave > x = [11 22 33 44]

    em que, aqui, deniu-se uma sequncia x que possui 4 amostras. Deve-se sempre lembrarque, no Octave, a primeira amostra de uma sequncia est sempre na posio 1. Assim, neste

    exemplo, x[1] = 11, x[2] = 22 etc.

    2.2 Operaes Bsicas sobre Sequncias

    A soma de duas sequncias a[n] e b[n], por denio, gera uma nova sequncia s[n] tal que, para qualquern = i, s[i] = a[i] + b[i]. A tabela 1 d exemplos de valores de uma sequncia a[n], uma sequncia b[n] e acorrespondente sequncia s[n] = a[n] + b[n].

  • Ricardo Pires - Processamento Digital de Sinais 4

    Figura 1: Grco de uma funo de domnio contnuo

    n a[n] b[n] s[n] = a[n] + b[n]0 2 1 3

    1 -1 6 5

    2 10 -3 7

    3 -3 -9 -12

    4 2,5 7 9,5

    Tabela 1: Soma de sequncias

    De maneira similar, o produto de duas sequncias a[n] e b[n], por denio, gera uma nova sequncia s[n]tal que, para qualquer n = i, s[i] = a[i] b[i]. A tabela 2 d exemplos de valores de uma sequncia a[n], umasequncia b[n] e a correspondente sequncia s[n] = a[n] b[n].

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

    Exerccio 1

    Para as sequncias a[n] e b[n] da tabela 1, qual seria a sequncia resultante de y[n] = 2a[n] + 3b[n]?

    Uma sequncia y[n] chamada de verso atrasada de uma sequncia x[n] se a relao entre os valores delasfor do tipo y[n] = x[n n0], em que n0 um inteiro, correspondente ao atraso de y[n] em relao a x[n]. Atabela 4 d exemplos de valores de uma sequncia x[n] e a correspondente sequncia y[n] = x[n n0], para

  • Ricardo Pires - Processamento Digital de Sinais 5

    Figura 2: Grco de uma funo de domnio discreto

    n0 = 1. Nela, o smbolo ? indica que o valor de y[n] naquele instante no pode ser determinado a partir dosdemais valores da tabela.

    O interesse nestas operaes bsicas se justica pelo fato de que a maioria dos algoritmos de processamento

    digital de sinais consistem na realizao de sequncias destas operaes sobre sequncias de valores de entrada

    (medidos ou recebidos).

    2.3 Sequncias Bsicas

    Na teoria de processamento digital de sinais, so denidas certas sequncias bsicas fundamentais. Elas so:

    o impulso de tempo discreto, a sequncia degrau unitrio, a sequncia exponencial e a sequncia senoidal.

    2.3.1 Impulso de Tempo Discreto

    O impulso de tempo discreto, denotado [n], denido como:

    [n] =

    {0 para n 6= 01 para n = 0

    (2)

    e representado na gura 3.

    Uma maneira de se ver a funo impulso a de que [...] s resulta 1 quando seu argumento, ou seja, ovalor dado entre colchetes, for 0. Assim, por exemplo, [n 7] s resulta 1 quando n = 7 e [n+2] s resulta 1quando n = 2.

    Exerccio 2

    Desenhe o grco de [n 10].

  • Ricardo Pires - Processamento Digital de Sinais 6

    No Octave, pode-se vericar uma soma de sequncias 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 fracionria de um nmero deve ser digitado

    como um ponto, no como vrgula. Deve-se digitar enter ao nal de cada linha. Deve-se

    lembrar que, embora o clculo tenha dado o resultado correto (verique no computador), o

    software considerou os ndices das sequncias fornecidas comeando em 1.

    n a[n] b[n] s[n] = a[n] b[n]0 2 1 2

    1 -1 6 -6

    2 10 -3 -30

    3 -3 -9 27

    4 2,5 7 17,5

    Tabela 2: Produto de sequncias

    Exerccio 3

    Desenhe o grco de 7[n 8].

    Exerccio 4

    Desenhe o grco de 5[n+ 1] 3[n 4].

    Exerccio 5

    Escreva a sequncia a[n] da tabela 2 como soma de impulsos.

    Exerccio 6

    Idem para a sequncia b[n] da tabela 2.

    Resolvendo-se os exerccios anteriores, v-se que qualquer sequncia pode ser escrita como soma de impul-

    sos. Isto til na construo da teoria de Processamento Digital de Sinais. Generalizando-se, portanto, uma

    sequncia qualquer x[n] pode ser escrita como:

    x[n] =

    k=

    x[k][n k] (3)

    2.3.2 Degrau Unitrio

    A sequncia degrau unitrio, denotada u[n], denida como:

  • Ricardo Pires - Processamento Digital de Sinais 7

    No Octave, cada sequncia fornecida como nos exemplos anteriores vista pelo software como

    uma matriz que possui uma linha e vrias colunas. Se se tentar realizar um produto destas

    sequncias usando-se o operador de produto *, o software indicar um erro, porque, para se

    realizar um produto de duas matrizes, o nmero de colunas da primeira deve ser igual ao nmero

    de linhas da segunda e cada uma de nossas sequncias tem apenas uma linha e vrias colunas.

    O produto de sequncias como denido aqui obtido usando-se o operador .* (ponto asterisco).

    Como exemplo, o produto das sequncias a e b das tabelas anteriores obtido usando-se a. b.

    n a[n] s[n] = 3a[n]0 2 6

    1 -1 -3

    2 10 30

    3 -3 -9

    4 2,5 7,5

    Tabela 3: Produto de uma sequncia por uma constante (neste caso, 3)

    u[n] =

    {0 para n < 01 para n 0 (4)

    e representada na gura 4.

    Exerccio 7

    Desenhe o grco de 3u[n].

    Exerccio 8

    Desenhe o grco de 2u[n 3].

    Exerccio 9

    Desenhe o grco de 3u[n] 2u[n 3].

    Exerccio 10

    Desenhe o grco de u[n].

    Exerccio 11

    Desenhe o grco de 5u[3 n].

  • Ricardo Pires - Processamento Digital de Sinais 8

    Pode-se vericar o produto de uma sequncia 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 2

    2 10 -1

    3 -3 10

    4 2,5 -3

    Tabela 4: Uma sequncia y[n] atrasada de uma unidade de tempo em relao a uma sequncia x[n].

    Exerccio 12

    Desenhe o grco de 7u[n+ 2] 5u[3 n].

    2.3.3 Sequncia Exponencial

    A sequncia exponencial tem a forma:

    x[n] = An (5)

    em que A e so constantes reais.A gura 5 mostra o grco de uma sequncia exponencial com A = 3, = 0, 7 e n indo de 1 a 10.

    Pode-se visualizar o grco da sequncia exponencial da gura 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 sequncia de 1 a 10, a qual serve como a srie de instantes de amostragem

    considerados. Os comandos 2 e 3 denem os valores das constantes. O comando 4 calcula os

    valores da sequncia exponencial. Nele, o operador . gera uma sequncia elevando o mesmovalor alfa, sucessivamente, s potncias de 1 a 10 contidas em n. O comando 5 gera o grco,no estilo de tempo discreto. O comando 6 dene um ttulo para o grco. Finalmente, o

    comando 7 ajusta as escalas dos eixos.

    2.3.4 Sequncia Senoidal

    A sequncia senoidal tem a forma:

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

  • Ricardo Pires - Processamento Digital de Sinais 9

    Figura 3: Grco da funo impulso de tempo discreto

    em que A, 0 e 0 so constantes. A a amplitude da senoide, 0 sua frequncia angular, medida em radianos,e 0 sua fase inicial.

    A gura 6 mostra o grco de uma sequncia senoidal com A = 10, 0 =pi4 , 0 = 0 e n indo de 1 a 20.

    No Octave, a funo cosseno digitada, simplesmente, como cos. A funo seno digitada

    como sin. A constante pi digitada como pi. Assim, na gerao do grco senoidal da gura 6,usou-se a sequncia de comandos:

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

    alm de comandos de ajuste de escala, de ttulo e do comando stem, como no caso exponencial.

    Exerccio 13

    Gere e visualize sequncias senoidais com o Octave, variando suas amplitudes, suas frequncias e suas fases

    iniciais.

  • Ricardo Pires - Processamento Digital de Sinais 10

    Figura 4: Grco da funo degrau unitrio

    Exerccio 14

    Gere uma senoide com 0 = 0 e uma outra com 0 = 2pi, mantendo os demais parmetros. Compare osresultados. Faa o mesmo com uma senoide com 0 =

    pi4 e uma outra com 0 =

    9pi4 . Interprete.

    Pode-se ver que, em tempo discreto, a frequncia 0 = 0 equivale a 0 = 2pi. O mesmo ocorre com o par0 =

    pi2 e 0 =

    5pi2 . Em geral, qualquer frequncia angular que esteja fora da faixa 0 < < pi equivale a

    uma frequncia que esteja nesta faixa. Isto acontece porque, para n inteiro, cos{(pi + )n} = cos{pin + n}equivale a cos{(pi )n} = cos{pinn}, em que uma frequncia angular, em radianos. Assim, qualquerfrequncia que esteja acima de pi por rad equivale a uma frequncia que esteja abaixo de pi por rad. Omesmo fenmeno ocorre em torno de qualquer frequncia que seja mltipla inteira de pi.

    A gura 7 mostra, esquematicamente, as equivalncias de frequncias em tempo discreto. Nela, indicada

    uma certa frequncia x, na faixa entre 0 e pi. Uma frequncia equivalente a esta 2pi x, na faixa entre pi e2pi. A prxima equivalente 2pi + x, na faixa entre 2pi e 3pi. A prxima 4pi x, na faixa entre 3pi e 4pi, eassim por diante.

    Exerccio 15

    Com o auxlio da gura 7 e do Octave, verique as trs prximas equivalncias da frequncia 0 =pi4 . Para isto,

    calcule estas frequncias equivalentes e gere valores de amostras de x[n] = cos(n), para n indo de 1 a 12 e assumindo cada uma daquelas frequncias.

    O fato de haver esta equivalncia entre frequncias muito importante em processamento digital de sinais.

    Ele implica que uma sequncia de amostras colhidas periodicamente de uma senoide de baixa frequncia pode

    ser igual a uma sequncia de amostras colhidas de uma senoide de frequncia mais alta. Neste caso, observando-

    se as amostras, no seria possvel se descobrir de qual senoide elas teriam sido colhidas. Para se evitar este

  • Ricardo Pires - Processamento Digital de Sinais 11

    Figura 5: Grco de sequncia exponencial

    problema, deve-se tomar o cuidado de s se amostrarem sinais analgicos cujas frequncias estejam numa faixa

    limitada, equivalendo faixa de tempo discreto de 0 a pi. Desta forma, observando-se as amostras de umasenoide, deduz-se qual era a frequncia desta senoide: s pode ser uma frequncia da primeira faixa, j que

    no havia senoides de outras faixas no processo. Assim, no h frequncias equivalentes e, portanto, no h

    ambiguidade. Para que isto seja possvel, antes da amostragem, o sinal a ser amostrado aplicado a um ltro

    analgico passa-baixas, cuja sada s ter frequncias da primeira faixa. Esta sada, ento, pode ser amostrada,

    sem que haja ambiguidade na interpretao das amostras. Esta condio para que no haja ambiguidade

    na amostragem foi publicada em 1928 pelo engenheiro sueco Harry Theodor Nyqvist (mais conhecido como

    Nyquist) e pelo engenheiro estadunidense Claude Elwood Shannon. Ela ser estudada na seo 2.4.

    2.3.5 Sequncia Exponencial Complexa

    A sequncia exponencial complexa tem a forma:

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

    em que A, constante real, a amplitude da sequncia, j =1, 0 a frequncia angular, em radianos, e 0

    a fase inicial, tambm em radianos.

    Para se estudar esta sequncia, deve-se lembrar que:

    ejx = cosx+ jsenx (8)

    A equao 8 chamada frmula de Euler. Foi publicada pelo matemtico suo Leonhard Paul Euler em

    1748. Nela, x um nmero real. Como x argumento de funes trigonomtricas, ele pode ser visto comoum ngulo (em radianos). Para cada valor de x, v-se que o membro direito da equao 8 fornece um nmerocomplexo, cuja parte real vale cosx e cuja parte imaginria vale jsenx. Assim, dado um valor de x, ejx podeser representado como um ponto no plano complexo, conforme a gura 8. O ngulo entre o eixo real e a linha

  • Ricardo Pires - Processamento Digital de Sinais 12

    Figura 6: Grco de sequncia senoidal

    que liga este ponto origem x radianos. O mdulo de ejx sempre 1, independentemente do valor de x(verique). Assim, o mdulo de Aejx A.

    Exerccio 16

    Represente e+jpi

    3no plano complexo, anotando suas coordenadas.

    Exerccio 17

    Represente ejpi

    4no plano complexo, anotando suas coordenadas.

    Exerccio 18

    Represente e+jpi no plano complexo, anotando suas coordenadas.

    Exerccio 19

    Represente 5e+jpi

    6no plano complexo, anotando suas coordenadas.

  • Ricardo Pires - Processamento Digital de Sinais 13

    4pi 3pi

    2pi 3pi

    2pi pi

    0

    pi

    x

    .

    .

    .

    Figura 7: Equivalncias entre frequncias em tempo discreto

    O programa a seguir gera um grco contendo duas senoides de frequncias diferentes, mas

    equivalentes em tempo discreto para a taxa de amostragem escolhida. V-se que as amostras

    coletadas (em vermelho) so iguais nas duas senoides.

    octave > close all %Fecha janelas.octave > clear all %Limpa variaveis.octave > t = [0 : 0.01 : 10]; %Serie que simula tempo contnuo.octave > w1 = pi/4; %Uma das frequencias equivalentes.octave > w2 = 7 pi/4; %Frequencia equivalente anterior.octave > xc1 = cos(w1 t); %Primeira senoide.octave > xc2 = cos(w2 t); %Segunda senoide.octave > plot(t, xc1, b); %Gera grafico em azul.octave > hold on %Mantem grafico anterior quando o proximo for gerado.octave > plot(t, xc2, g); %Gera grafico em verde.octave > n = [0 : 10]; %Gera serie de ndices para tempo discreto.octave > x = cos(w1 n); %Senoide de tempo discreto.octave > stem(n, x, r) %Grafico das amostras, em vermelho.

    Exerccio 20

    Represente 7e+j7pi

    6no plano complexo, anotando suas coordenadas.

    Exerccio 21

    Represente 4e+j 11pi6 no plano complexo, anotando suas coordenadas.

    Da frmula 8, obtm-se:

    cosx =1

    2(e+jx + ejx) (9)

  • Ricardo Pires - Processamento Digital de Sinais 14

    n = [1 : numAmostras]octave > nt = n

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

    A linha nt = n obtm a matriz nt como sendo a transposta da matriz n (o apstrofo ooperador que obtm a transposta). Como n uma matriz linha, nt uma matriz coluna. Aexecuo desta linha necessria, porque o arquivo wave deve conter uma coluna de amostras

    por canal de som. Neste exemplo, h apenas um canal, o qual contm o som correspondente

    a uma sequncia senoidal de amostras, contidas na matriz coluna chamada sinal. Uma matrizcontendo N colunas conteria, ento, 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 execuo de arquivos de som.

    3 Sistemas de Tempo Discreto

    Um sistema de tempo discreto obtm uma sequncia de sada y[n] a partir de uma sequncia de entradax[n]. Ele calcula cada amostra de sada a partir de uma ou mais amostras de entrada e, possivelmente, a partirde amostras de sada anteriores.

    Diz-se, ento, que a sequncia de sada obtida como uma transformao da sequncia de entrada, usando-se

    a notao:

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

  • Ricardo Pires - Processamento Digital de Sinais 20

    Como um exemplo de sistema, tem-se o sistema atrasador, o qual implementa a equao:

    y[n] = x[n n0], < n < + (16)na qual n0 o valor de atraso entre a sequncia de entrada e a de sada. A tabela 4 mostra um exemplode resultado y[n] obtido por um sistema atrasador, com atraso unitrio (n0 = 1), que teria recebido aquelasequncia x[n] sua entrada. Uma implementao fsica deste atrasador, como um sistema digital, dada nagura 13, deve ter um registrador acionado por sinal de relgio (clock). Enquanto uma nova amostra x[n]j estiver na entrada do sistema, a amostra de entrada anterior, x[n 1], ainda estar na sada, por ter sidomemorizada no ciclo de funcionamento anterior. Assim, cada sequncia de entrada aparece na sada, mas com

    atraso. A cada pulso de clock, uma nova amostra de entrada lida, substituindo a anteriormente memorizada.

    Assim, a sada 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 no memorizada, e uma amostra mais antiga sada, j memorizada.

    registrador

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

    clock

    Figura 13: Implementao digital de um atrasador

    Um outro exemplo comum de sistema o de mdia mvel. Ele tem este nome, por apresentar, sada, um

    valor correspondente mdia das N amostras de entrada mais recentes, sendo N denido pelo projetista. Estamdia mvel, porque, com o passar do tempo, o grupo de amostras de entrada que se submeter ao clculo

    da mdia muda, j que, com o passar do tempo, muda o grupo das amostras mais recentes. Para, por exemplo,

    N = 4, a equao 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 sada, este sistema precisa ter sua disposio as quatro amostras de

    entrada mais recentes (a atual e trs anteriores). Por isto, ele precisa de trs registradores: um para memorizar

    x[n1], um para x[n2] e um para x[n3]. Estes trs registradores devem ser interligados em srie, formandoum registrador de deslocamento composto por trs registradores com vrios bits cada. (O nmero de bits de

    cada registrador pode ser, por exemplo, 16. Isto depende da preciso com que trabalha o sistema.)

    Exerccio 33

    Desenhe um diagrama de blocos para o sistema de mdia mvel anterior, usando trs registradores, somadores

    com dois operandos cada e um multiplicador.

    Exerccio 34

    Dada a tabela 5, com valores de uma certa sequncia de entrada x[n], calcule a sequncia de sada que seriaproduzida por este sistema de mdia mvel. Verique, com o auxlio do Octave, que este sistema gera uma

    sequncia de sada que tem forma semelhante da sequncia de entrada, porm, sem variaes abruptas.

  • Ricardo Pires - Processamento Digital de Sinais 21

    n x[n] y[n]

    0 8

    1 8

    2 8

    3 20

    4 9

    5 8

    6 9

    7 9

    8 6

    9 9

    10 9

    11 9

    12 10

    13 10

    14 6

    15 10

    16 10

    17 10

    18 17

    19 10

    20 10

    21 9

    22 10

    23 10

    24 11

    25 10

    Tabela 5: Tabela para o exerccio 34.

    Pelo resultado obtido no exerccio 34, percebe-se que uma utilidade do sistema de mdia mvel receber

    valores medidos de um processo fsico do qual no se esperam variaes abruptas e diminuir o efeito destas

    variaes abruptas, antes de se entregarem estas amostras para um sistema que as analisar. Isto ocorre, por

    exemplo, em medio de temperatura em grandes cmaras, onde no se espera que a temperatura possa variar

    rapidamente, ou na medio do nvel de combustvel no tanque de um automvel, onde no se esperam variaes

    abruptas de nvel. Um transdutor faz a medio continuamente, entregando o resultado a um amostrador

    peridico. Este entrega as amostras analgicas medidas a um conversor analgico-digital. Estas amostras

    digitalizadas podem estar contaminadas por efeitos indesejveis, como rudo, no caso da cmara, ou balano,

    no caso do tanque de combustvel. O rudo ou o balano introduzem, na sequncia de amostras, desvios em

    relao aos valores verdadeiros das grandezas que se desejaram medir. A sada do sistema de mdia mvel

    procura seguir, preferencialmente, as lentas variaes da grandeza medida em relao s rpidas variaes

    causadas pelo rudo ou pelo balano. Se a sequncia medida fosse aplicada diretamente a um mostrador (de

    ponteiro ou digital), este oscilaria rapidamente, dicultando sua leitura. A aplicao da sequncia de sada

    do sistema de mdia mvel ao mostrador proporciona maior estabilidade do valor apresentado, facilitando sua

    leitura, alm de reetir melhor a realidade da grandeza de interesse.

    Neste exemplo, o sistema de mdia mvel calculou a mdia das ltimas quatro amostras de entrada. Na

    prtica, um tal sistema pode usar dezenas ou centenas das ltimas amostras de entrada no clculo da mdia,

    suavizando muito, desta forma, o efeito de variaes abruptas. Mas, o uso de mais amostras de entrada tem,

    como efeito indesejado, aumento no hardware necessrio para implementar o sistema (ou maior tempo de clculo

    em implementaes em software).

    A seguir, so apresentadas denies teis relacionadas a sistemas de tempo discreto.

  • Ricardo Pires - Processamento Digital de Sinais 22

    3.1 Sistemas com Memria x Sistemas sem Memria

    Um sistema com memria aquele que deve usar algum tipo de elemento de memorizao, como reg-

    istradores (no caso de implementao em hardware) ou variveis (no caso de implementao em software), por

    precisar de valores de entrada ou de sada anteriores para calcular cada amostra de sada. O sistema atrasador

    e o de mdia mvel so deste tipo.

    Um sistema sem memria, para calcular a amostra de sada em um certo instante, s usa a amostra de

    entrada do mesmo instante. Como ele no precisa de amostras passadas, no precisa de memria. 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 representao binria em

    complemento de dois.) Uma realizao deste sistema em hardware usaria apenas lgica combinatria, sem

    registradores.

    3.2 Sistemas Lineares x Sistemas No Lineares

    Se um sistema for linear, dada uma constante K e dada uma sequncia x[n],

    T {Kx[n]} = KT {x[n]} (18)e, dadas as sequncias 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,

    T {K1x1[n] +K2x2[n]} = K1T {x1[n]}+K2T {x2[n]} (20)Assim, os sistemas lineares seguem o princpio da superposio: para se calcular o efeito, na sada, da

    aplicao de uma soma de sequncias entrada, basta que, inicialmente, calculem-se os efeitos de cada entrada

    individualmente e que, nalmente, somem-se estes efeitos sada.

    Como exemplos de sistemas lineares, tm-se o atrasador e o sistema de mdia mvel.

    Qualquer sistema que no respeite a equao 20 no linear.

    Exerccio 35

    Verique que o sistema que implementa y[n] = {x[n]}2 no linear.

    Sempre que possvel, deve-se procurar projetar sistemas lineares, devido maior facilidade de se lidar

    matematicamente com eles do que com os no 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 sequncia de entrada x1[n] paraa qual ele fornece uma certa y1[n] e que, se, sua entrada, for aplicada uma entrada x2[n] que seja uma versoatrasada de x1[n], x2[n] = x1[nn0], sua sada no ser uma verso atrasada de y1[n], ou seja, y2[n] 6= y1[nn0].

    Pode ocorrer de um sistema variante no tempo calcular suas amostras de sada de forma varivel com o

    tempo. Por exemplo, se um sistema calcular sua sada usando y[n] = m0x[n]+m1x[n 1], sendo os coecientesm0 e m1 variveis 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 sada variando no tempo. Por

    exemplo, ele poderia passar um tempo usando a expresso y[n] = m0x[n]+m1x[n 1] e, depois, poderia passara usar y[n] = m0x[n] +m1x[n 1] +m2x[n 2].

    Exerccio 36

    Demonstre que o sistema que implementa a equao y[n] = x[2n] variante no tempo.

  • Ricardo Pires - Processamento Digital de Sinais 23

    Um sistema invariante no tempo tal que, se for aplicada a ele uma sequncia de entrada x1[n] para aqual ele fornea uma certa y1[n], se, sua entrada, for aplicada uma x2[n] que seja uma verso atrasada dex1[n], x2[n] = x1[nn0], sua sada ser, simplesmente, uma verso atrasada de y1[n], ou seja, y2[n] = y1[nn0],com atraso igual ao de x2[n] em relao a x1[n]. Para que isto ocorra, o sistema dever calcular cada amostrade sada usando sempre a mesma forma de clculo, todo o tempo (mesma equao e mesmos coecientes).

    Exerccio 37

    Verique que o sistema de mdia mvel invariante no tempo.

    Sistemas invariantes no tempo so de tratamento matemtico mais simples do que os variantes no tempo.

    3.4 Sistemas Causais x Sistemas No Causais

    Um sistema causal aquele que calcula a amostra de sada em cada instante usando apenas valores de

    entrada do mesmo instante, de instantes anteriores ou valores de sada anteriores. Exemplo de equao de um

    sistema causal: y[n] = 12x[n] 14x[n 2] + 18y[n 1].Um sistema no causal calcula a amostra de sada em um certo instante usando alguma amostra de entrada

    ou de sada futura. Exemplo de equao de um sistema no causal: y[n] = 12x[n] 14x[n+ 2] + 18y[n 1]. (Noclculo da sada atual, ele usa uma entrada futura.)

    Sistemas no causais no podem funcionar em tempo real, j que, para calcular cada valor de sada, eles

    teriam de adivinhar algum valor futuro de entrada ou de sada. Porm, quando se projeta um sistema de

    processamento digital de sinais, pode ocorrer de o projetista descobrir que a equao que o sistema deveria

    implementar para satisfazer s especicaes do projeto deveria ser do tipo no causal. Neste caso, para se

    obter um sistema realizvel, estas especicaes deveriam ser alteradas, substitudas por outras que permitissem

    a obteno de um sistema causal que as satiszesse. Isto ocorre, por exemplo, no projeto de um ltro passa-

    baixas ideal, tanto em tempo contnuo quanto em tempo discreto. Um tal ltro seria no causal. (Ele ser

    estudado adiante.) Assim, no pode ser realizado. Mas, bons ltros, com caractersticas parecidas com a do

    ideal, podem ser realizados.

    Exerccio 38

    O sistema de mdia mvel denido pela equao 17 causal? Por que?

    Exerccio 39

    Escreva a equao de um sistema de mdia mvel no causal.

    3.5 Estabilidade de Sistemas

    Um sistema estvel, no sentido entrada limitada, sada limitada, se e somente se, para qualquer

    sequncia de entrada com valores limitados recebida, ele produzir uma sequncia de sada com valores limitados.

    Assim, se:

    |x[n]| Lx

  • Ricardo Pires - Processamento Digital de Sinais 24

    com Ly sendo o limite dos valores absolutos da sequncia y[n]. Note que o valor de Lx no precisa ser igual aode Ly.

    Exerccio 40

    O sistema de mdia mvel denido pela equao 17 estvel? Por que?

    Exerccio 41

    O sistema denido pela equao y[n] = x[n] + y[n 1] estvel? Por que?

    3.6 Sistemas Lineares e Invariantes no Tempo

    Devido relativa facilidade de tratamento matemtico que possuem, os sistemas de maior interesse em

    processamento digital de sinais so os lineares invariantes no tempo (ou seja, os que so tanto lineares

    quanto invariantes no tempo). Sero 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].

    Exerccio 42

    Qual a resposta impulsiva do sistema que implementa a equao y[n] = x[n 2]?

    Exerccio 43

    Qual a resposta impulsiva do sistema de clculo de mdia mvel, 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 hipottica dada na tabela 6. (Suponha que todos os valores de h[n] em instantes notabelados sejam nulos.) Isto signica que, se, entrada do sistema X , for aplicada uma nica amostra no nulano instante zero, com valor unitrio (ou seja, a entrada o impulso, [n]), o sistema apresentar, sada, asequncia h[n] dada na tabela 6.

    n [n] h[n]

    -2 0 0

    -1 0 0

    0 1 3

    1 0 5

    2 0 2

    3 0 1

    4 0 0

    5 0 0

    Tabela 6: Valores no nulos da resposta impulsiva hipottica de um certo sistema X

    Suponha, agora, que ao sistema X , seja aplicada a sequncia de entrada dada na tabela 7.

  • Ricardo Pires - Processamento Digital de Sinais 25

    n x[n]

    -2 0

    -1 0

    0 4

    1 5

    2 -2

    3 10

    4 0

    5 0

    Tabela 7: Valores no nulos de uma certa sequncia de entrada aplicada ao sistema X

    O problema, ento, calcular-se a sequncia de sada, y[n], causada pela aplicao, ao sistema X , dasequncia 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. Decompe-se a sequncia de entrada x[n] em vrias sequncias, cada uma contendo somente uma amostrano nula, conforme a tabela 8. Verique que x[n] = x0[n] + x1[n] + x2[n] + x3[n].

    2. Calcula-se a resposta do sistema X para cada uma destas sequncias 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 (equao 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 0

    0 4 4 0 0 0

    1 5 0 5 0 0

    2 -2 0 0 -2 0

    3 10 0 0 0 10

    4 0 0 0 0 0

    5 0 0 0 0 0

    Tabela 8: Decomposio de uma sequncia de entrada x[n] em vrias sequncias

    Para se calcular cada resposta individual no item 2, explora-se a linearidade e a invarincia no tempo do

    sistema.

    Iniciando-se pelo clculo de y0[n], como ele a resposta do sistemaX entrada x0[n] = 4[n], por linearidade,y0[n] = 4h[n]. Ou seja, como x0[n] um impulso multiplicado por 4, a sada que x0[n] causa 4 vezes a sadacausada pelo impulso, a qual a resposta impulsiva, h[n]. Este resultado mostrado na tabela 9.

    No clculo 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 5

    deve ser igual h[n] multiplicada por 5. Mas, como este impulso est com atraso unitrio, deve-se no smultiplicar h[n] por 5, mas, tambm, 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 lgica, 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.

  • Ricardo Pires - Processamento Digital de Sinais 26

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

    -2 0 0 0

    -1 0 0 0

    0 4 3 12

    1 0 5 20

    2 0 2 8

    3 0 1 4

    4 0 0 0

    5 0 0 0

    Tabela 9: Resposta y0[n] do sistema X sequncia x0[n]

    n x1[n] h[n] y1[n] = 5h[n 1]-2 0 0 0

    -1 0 0 0

    0 0 3 0

    1 5 5 15

    2 0 2 25

    3 0 1 10

    4 0 0 5

    5 0 0 0

    Tabela 10: Resposta y1[n] do sistema X sequncia x1[n]

    Exerccio 44

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

    O procedimento aqui apresentado para o clculo da sequncia de sada 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 operao que calcula y[n] a partir de x[n] e de h[n], dada pela equao 23, chamada de convoluode x[n] com h[n]. Portanto, pode-se dizer que um sistema LIT realiza uma convoluo de sua entrada com suaresposta impulsiva. O smbolo usado para a operao convoluo o asterisco.

    A convoluo uma operao comutativa, ou seja,

    x[n] h[n] = h[n] x[n] (24)Assim, se, para um sistema LIT, forem trocados, entre si, os papis da entrada e da resposta impulsiva, sua

    sequncia de sada no se alterar. Isto pode ser vericado, usando-se a mudana de variveis m = n k naequao 23:

  • Ricardo Pires - Processamento Digital de Sinais 27

    n x2[n] h[n] y2[n] = 2h[n 2]-2 0 0 0

    -1 0 0 0

    0 0 3 0

    1 0 5 0

    2 -2 2 -6

    3 0 1 -10

    4 0 0 -4

    5 0 0 -2

    Tabela 11: Resposta y2[n] do sistema X sequncia x2[n]

    n x3[n] h[n] y3[n] = 10h[n 3]-2 0 0 0

    -1 0 0 0

    0 0 3 0

    1 0 5 0

    2 0 2 0

    3 10 1 30

    4 0 0 50

    5 0 0 20

    6 0 0 10

    Tabela 12: Resposta y3[n] do sistema X sequncia x3[n]

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

    y[n] =

    k=

    x[k]h[n k]

    y[n] =

    m=

    x[nm]h[m]

    y[n] =

    m=

    h[m]x[nm]

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

    3.6.1 Estabilidade de Sistemas LIT

    A estabilidade de sistemas foi denida na seo 3.5. No projeto de um sistema de processamento digital de

    sinais, importante que se garanta que o sistema obtido seja estvel, porque um sistema instvel pode ter seus

    valores de sada crescendo sem limites, mesmo com os valores da sequncia de entrada mantidos numa faixa

    limitada. Como um sistema de processamento digital de sinais representa cada valor manipulado usando um

    nmero nito de bits, um sistema instvel, com o tempo, poderia comear a tentar apresentar, sada, valores

    que estivessem fora de sua faixa de valores representveis. A partir deste momento, ele passaria a cometer erros,

    fornecendo valores errados sada e, possivelmente, usando estes valores errados nos seus prximos clculos (no

    caso de ele usar valores de sada anteriores para calcular a sada atual).

    Para se encontrar a condio necessria para que um sistema LIT seja estvel, parte-se da equao 25,

    aplicando-a ao clculo do mdulo de cada amostra de sada:

    |y[n]| =

    m=

    h[m]x[nm]

    m=

    |h[m]||x[nm]| (26)

  • Ricardo Pires - Processamento Digital de Sinais 28

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

    -1 0 0 0 0 0

    0 12 0 0 0 12

    1 20 15 0 0 35

    2 8 25 -6 0 27

    3 4 10 -10 30 34

    4 0 5 -4 50 51

    5 0 0 -2 20 18

    6 0 0 0 10 10

    7 0 0 0 0 0

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

    n x[n]

    -2 0

    -1 0

    0 3

    1 -1

    2 20

    3 5

    4 3

    5 0

    Tabela 14: Sequncia de entrada para o exerccio 44

    Na equao 26, se a sequncia x[n] tiver valores limitados, cujos mdulos no superarem um certo valor Lx,ter-se-:

    |y[n]|

    m=

    |h[m]||x[nm]|

    m=

    |h[m]|Lx = Lx

    m=

    |h[m]| (27)

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

    m=

    |h[m]|

  • Ricardo Pires - Processamento Digital de Sinais 29

    No Octave, a funo conv calcula a convoluo de duas sequncias. Para que ela seja realizada

    sobre as duas sequncias do exemplo mostrado nesta seo, 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 usurio, a resposta impulsiva, h[n], e a entrada, x[n]. O Octave, ento,calculou a convoluo daquelas duas sequncias. Deve-se lembrar que os ndices usados pelo

    Octave comeam em 1, enquanto que, no exemplo desta seo, comeavam em 0. Porm, a

    sequncia de valores da sada ca correta, embora deslocada, no tempo, em relao deste

    texto.

    Exerccio 47

    Qual a resposta impulsiva do sistema dado pela equao y[n] = x[n] + y[n 1]? Ele estvel? Caso positivo,se a sequncia sua entrada tiver valores limitados a 3, qual ser o mdulo do maior valor possvel sua sada?

    (Considere que y[n] = 0 para n < 0.)

    Exerccio 48

    Qual a resposta impulsiva do sistema dado pela equao y[n] = x[n]+ 12y[n 1]? Ele estvel? Caso positivo,se a sequncia sua entrada tiver valores limitados a 3, qual ser o mdulo do maior valor possvel sua sada?

    (Considere que y[n] = 0 para n < 0.)

    3.6.2 Causalidade de Sistemas LIT

    Um sistema LIT causal se sua resposta impulsiva comear no instante zero ou aps o instante zero. Se a

    resposta impulsiva comear antes do instante zero, o sistema no causal.

    Se, num projeto, for obtido um sistema S1 no causal, se sua resposta impulsiva h1[n] comear num certoinstante ni, com < ni < 0, ser possvel obter-se um novo sistema S2, com comportamento semelhante aode S1, porm causal, fazendo-se com que a resposta impulsiva h2[n] seja uma verso atrasada de h1[n], de talforma que h2[n] comece no instante zero ou depois de zero.

    Exerccio 49

    Se um sistema tiver em sua resposta impulsiva, como nicas amostras no 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 tcnica consiste em se obter um sistema realizvel em tempo real (causal) a partir de um

    sistema no realizvel em tempo real (no causal). O efeito negativo da aplicao desta tcnica o sistema

    resultante ter, em seu funcionamento, um atraso em relao ao sistema original.

    Esta tcnica s pode ser aplicada se a resposta impulsiva do sistema no causal comear em um ni 6= .Se esta resposta impulsiva comear em , no ser possvel a obteno de um sistema causal semelhanteapenas por atraso da resposta impulsiva.

    3.7 Equaes de Diferenas Lineares a Coecientes Constantes

    Uma tal equao da forma:

  • Ricardo Pires - Processamento Digital de Sinais 30

    Nk=0

    aky[n k] =Mk=0

    bkx[n k] (29)

    com os ak e bk constantes. Assim, uma equao desta forma representa um clculo envolvendo amostras deentrada e de sada de vrios instantes, cada uma delas multiplicada por uma constante.

    Um exemplo de equao de diferenas linear a coecientes constantes :

    3y[n] + 5y[n 1] = 4x[n] 10x[n 2] + x[n 5] (30)na qual, no membro da esquerda, esto amostras da sada, de dois instantes, cada uma multiplicada por um

    coeciente constante e, no membro da direita, esto trs amostras de entrada, de instantes diferentes, cada uma

    multiplicada por um coeciente.

    A maioria dos sistemas de processamento digital de sinais so projetados para implementar equaes deste

    tipo, porque, se y[n] = 0 para todos os instantes anteriores aplicao da primeira amostra x[n] 6= 0, estasequaes correspondem a sistemas lineares e invariantes no tempo, sendo fceis de se tratar matematicamente

    e de se realizar em hardware ou em software. Sua realizao em hardware exige apenas elementos de memria

    (para guardar amostras passadas de entrada e de sada), multiplicadores e somadores. Em software, basta

    que estejam disponveis variveis em nmero suciente para a memorizao das amostras passadas e estejam

    disponveis operaes de multiplicao e de adio.

    Na prtica, comum que estas equaes sejam escritas isolando-se y[n] no membro da esquerda, para queque explcita a forma de se calcular cada amostra de sada a partir de amostras de sada anteriores e das

    amostras de entrada. Assim, a equao 30 ca:

    y[n] = 53y[n 1] + 4

    3x[n] 10

    3x[n 2] + 1

    3x[n 5] (31)

    Exerccio 50

    Se um sistema implementar a equao

    y[n] =1

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

    qual ser sua sequncia de sada, para 0 n 8, se y[n] = 0 para n < 0 e se as nicas amostras no nulas dex[n] forem x[0] = 200 e x[1] = 100?

    Um sistema que, para calcular cada amostra de sada, s utilize amostras de entrada (atual e anteriores)

    tem resposta impulsiva com durao nita, ou seja, a partir de um certo instante, todas as amostras de h[n]so nulas. Este tipo de sistema chamado sistema FIR, da sigla em ingls para resposta impulsiva com

    durao nita, nite impulse response.

    Um sistema que tenha resposta impulsiva com durao innita, ou seja, resposta impulsiva que nunca

    se estabiliza em zero, chamado sistema IIR, de innite impulse response. Para que um sistema seja IIR, ele

    deve calcular cada amostra de sada usando alguma amostra de sada anterior.

    3.8 Representao no Domnio da Frequncia

    Se um sistema LIT receber, sua entrada, uma sequncia senoidal, ele fornecer, sada, uma sequncia

    tambm senoidal, com a mesma frequncia que a da entrada, mas podendo ter outra amplitude e outra fase.

    Assim, da entrada para a sada, neste caso, o sistema mantm a forma e a frequncia do sinal.

    Para se vericar isto, deve-se lembrar que uma sequncia senoidal, A cos(n), pode ser escrita como A2 (e+jn+

    ejn). Ento, para se calcular a sada fornecida pelo sistema LIT quando sua entrada for uma senoide, usando-se a linearidade, podem-se calcular suas sadas para e+jn, para ejn, somarem-se estes resultados e, nalmente,multiplicar-se esta soma por

    A2 .

    Partindo-se da equao 25 da convoluo e usando-se, como entrada, x[n] = e+jn, tem-se:

  • Ricardo Pires - Processamento Digital de Sinais 31

    y[n] =

    m=

    h[m]x[nm]

    y[n] =

    m=

    h[m]e+j(nm)

    y[n] =

    m=

    h[m]e+jnejm

    y[n] = e+jn(

    m=

    h[m]ejm

    )(33)

    Assim, v-se que a sada y[n] tem a mesma forma e+jn da entrada, estando esta multiplicada pelo fatorentre parnteses, o qual um nmero complexo. O mdulo deste nmero complexo determina a alterao na

    amplitude da senoide da entrada para a sada. O ngulo deste nmero complexo determina a defasagem entre

    as senoides de entrada e de sada. Desta forma, o valor entre parnteses a chamada resposta em frequncia

    do sistema LIT, simbolizada por H(ej):

    H(ej) =

    m=

    h[m]ejm (34)

    Com isto, uma forma de se caracterizar um sistema LIT por meio de sua resposta em frequncia , a qual

    especica como o sistema reage a cada possvel senoide aplicada sua entrada, em termos de modicao, da

    entrada para a sada, da amplitude e da fase desta senoide.

    Nos pargrafos anteriores, j est calculada y[n] para entrada e+jn. Se a entrada for ejn (outra compo-nente do cosseno, A cos(n) = A2 (e

    +jn + ejn)), seguindo-se procedimento semelhante ao anterior, obtm-se

    y[n] =

    m=

    h[m]x[nm]

    y[n] =

    m=

    h[m]ej(nm)

    y[n] =

    m=

    h[m]ejne+jm

    y[n] = ejn(

    m=

    h[m]e+jm

    )(35)

    Assim, por linearidade, para se obter a resposta de um sistema LIT a uma senoide do tipo A cos(n) =A2 (e

    +jn + ejn), soma-se sua resposta para e+jn, dada em (33), com sua resposta a ejn, dada em (35) e

    multiplica-se, nalmente, esta soma por

    A2 . Isto resulta:

    y[n] =A

    2

    {e+jn

    (

    m=

    h[m]ejm

    )+ ejn

    (

    m=

    h[m]e+jm

    )}(36)

    J foi visto que a primeira somatria de (36) , usualmente, escrita como H(ej) (resposta em frequncia).Como H(ej) um nmero complexo, pode ser escrito como:

    H(ej) = |H(ej)|H(ej) (37)Para qualquer sequncia h[n] de nmeros reais, a segunda somatria de (36) tem o mesmo mdulo da

    primeira somatria, mas tem fase oposta. Assim, a segunda somatria o complexo conjugado da primeira.

  • Ricardo Pires - Processamento Digital de Sinais 32

    Ento, indicando-se a fase da primeira somatria como ej, a fase da segunda somatria ser ej. Usando-seestes fatos, a equao 36 pode ser reescrita como:

    y[n] =A

    2{e+jn|H(ej)|ej + ejn|H(ej)|ej} (38)

    Desta equao, pode-se vericar que, realmente, quando a entrada de um sistema LIT for senoidal, sua sada

    tambm o ser, com a mesma frequncia, mas podendo ter outra amplitude e outra fase:

    y[n] =A

    2{e+jn|H(ej)|ej + ejn|H(ej)|ej}

    y[n] = |H(ej)|A2{e+jnej + ejnej}

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

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

    Para que faa sentido o uso da informao sobre a resposta em frequncia de um sistema LIT, deve-se ter

    informao detalhada sobre como a sequncia de entrada do sistema em termos de frequncias, ou seja, deve-

    se supor que a sequncia de entrada seja formada por uma sobreposio de senoides, com vrias frequncias,

    amplitudes e fases, mesmo que esta sequncia de entrada no tenha sido formada sicamente desta maneira.

    Como exemplo de aplicao, um ltro passa-baixas um sistema que tem uma resposta em frequncia com

    atenuao das senoides de frequncias altas em relao s senoides de frequncias baixas. Ele permite que

    senoides de baixas frequncias passem de sua entrada para sua sada mais facilmente do que senoides de

    frequncias altas.

    Exerccio 51

    Calcule e interprete a resposta em frequncia de um sistema atrasador que implemente y[n] = x[n 2].

    Exerccio 52

    Calcule e interprete a resposta em frequncia de um sistema de mdia mvel que implemente

    y[n] =1

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

    Simule seu funcionamento com o Octave.

    Exerccio 53

    Calcule e interprete a resposta em frequncia de um sistema de mdia mvel que implemente

    y[n] =1

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

    Simule seu funcionamento com o Octave.

    Exerccio 54

    Usando a equao 34, verique que a resposta em frequncia peridica em frequncia, com perodo de 2pi.

  • Ricardo Pires - Processamento Digital de Sinais 33

    Uma sequncia de comandos que pode ser usada para se ver um grco do mdulo e um grco

    da fase de H(ej) do exerccio 52 :

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

    O comando 1 dene a resposta impulsiva do sistema. O comando 2 faz com que seja calculada

    a resposta em frequncia deste sistema e que seu resultado seja memorizado em dois vetores:

    H e w. O vetor w, que tem o papel de , memoriza as frequncias angulares, em radianos,para as quais a resposta em frequncia foi calculada. O vetor H memoriza os valores de H(ej)correspondentes s frequncias de w. O comando 3 faz com que seja apresentado o grco domdulo (abs) de H(ej). Finalmente, o comando 4 faz com que seja apresentado o grco dafase (angle) de H(ej).

    Como a resposta em frequncia peridica em frequncia, com perodo de 2pi, basta que ela seja especicadanum intervalo de frequncias com largura de 2pi. A resposta para qualquer frequncia fora deste intervalo igual resposta para alguma frequncia dentro dele. Usualmente, ela especicada para o intervalo 0 < 2pi oupara pi < pi. Como exemplo, a resposta em frequncia de um ltro passa-baixas mostrada na gura 14.

    |Hfpb(ej)|

    1

    c cpi pi

    Figura 14: Resposta em frequncia de um ltro passa-baixas

    3.9 Representao de Sequncias por Transformada de Fourier

    Em tempo contnuo, a decomposio de um sinal em senoides feita usando-se a srie de Fourier ou a

    transformada de Fourier, apresentada em livros de Circuitos Eltricos e de Sistemas de Comunicao, tais

    como [4]. De forma semelhante, sequncias podem ser representadas por uma transformada de Fourier adaptada

    ao tempo discreto.

    A transformada de Fourier de tempo discreto denida como:

    X(ej) =

    n=

    x[n]ejn (40)

    em que x[n] a sequncia a ser transformada, uma frequncia angular eX(ej) o resultado da transformadapara esta . X(ej) uma funo que informa, para cada , com que intensidade e com que fase uma senoidecom frequncia est presente na sequncia x[n]. X(ej) chamada de espectro de x[n].

    Para se entender por que a expresso 40 revela quais frequncias esto presentes numa certa sequncia

    x[n], supe-se que uma certa sequncia a ser analisada seja:

    x[n] = 3ejpi

    2n + 3ej

    pi

    2n + 5ej

    pi

    3n + 5ej

    pi

    3n, 0 n < 12 (41)

  • Ricardo Pires - Processamento Digital de Sinais 34

    e que x[n] = 0 fora deste intervalo. Nesta expresso para x[n], podem-se identicar dois cossenos: um com = pi2 e o outro com =

    pi3 . (Lembre-se de como o cosseno pode ser escrito como combinao de exponenciais

    complexas.)

    Supe-se, ento, que algum que no conhea esta expresso para x[n], mas que conhea a sua sequncia devalores numricos (eles podem ter sido medidos) queira descobrir quais so as senoides que formam esta x[n].

    Para se descobrir se a x[n] de (41) tem uma componente do tipo ejn com, por exemplo, = pi2 , calcula-sea expresso 40 usando-se aquela x[n] e = pi2 , obtendo-se:

    X(ejpi

    2 ) =

    n= x[n]ej pi

    2n

    X(ej pi2 ) =11n=0(3ej pi2 n + 3ej pi2 n + 5ej pi3 n + 5ej pi3 n)ej pi2 n X(ej pi2 ) =11n=0(3ej pi2 nej pi2 n + 3ej pi2 nej pi2 n + 5ej pi3 nej pi2 n + 5ej pi3 nej pi2 n) X(ej pi2 ) =11n=0(3ej pi2 nj pi2 n + 3ej pi2 nj pi2 n + 5ej pi3 nj pi2 n + 5ej pi3 nj pi2 n) X(ej pi2 ) =11n=0(3ej0n + 3ejpin + 5ej pi6 n + 5ej 5pi6 n) X(ej pi2 ) =11n=0(3 + 3ejpin + 5ej pi6 n + 5ej 5pi6 n) X(ej pi2 ) =11n=0 3 +11n=0 3ejpin +11n=0 5ej pi6 n +11n=0 5ej 5pi6 n X(ej pi2 ) = 36 + 311n=0 ejpin + 511n=0 ej pi6 n + 511n=0 ej 5pi6 n X(ej pi2 ) = 36 + 0 + 0 + 0 X(ej pi2 ) = 36 (42)

    Exerccio 55

    Por que, ao nal do clculo feito em (42), as trs ltimas somatrias resultaram 0?

    Em (42), viu-se que, quando se procurou em x[n] uma exponencial complexa que tivesse a frequncia = pi2 ,as somatrias relacionadas a componentes de outras frequncias resultaram 0, enquanto a somatria relacionada

    prpria componente = pi2 resultou 36. Este valor 36 est relacionado presena de uma componente com = pi2 em x[n]. De fato, a sequncia exponencial com frequncia =

    pi2 est presente em x[n] com comprimento

    12 (a sequncia s era no nula para 0 n < 12). O resultado 36 veio de uma somatria de 12 valores iguaisa 3. Assim, neste caso, o coeciente 3 da exponencial complexa de frequncia = pi2 revelado como sendo3612 = 3. Portanto, a aplicao da transformada de Fourier x[n] permite que seja revelado o coeciente de e

    j pi2n

    em x[n].Se ej

    pi

    2nestivesse presente com maior durao dentro de x[n], o resultado obtido para X(ej

    pi

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

    pi

    2nestivesse presente em x[n] com durao de 24 instantes (ao invs de

    12), X(ejpi

    2 ) resultaria 72 (ao invs de 36). Mas, o coeciente de ejpi

    2ncontinuaria sendo revelado como tendo o

    valor 3, j que

    7224 = 3. Portanto, o resultado da transformada de Fourier para uma dada frequncia depende no

    s do coeciente da exponencial complexa correspondente dentro de x[n], mas depende, tambm, da duraodesta exponencial complexa dentro de x[n].

    Exerccio 56

    Calcule X(ejpi

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

    O que faz com que a transformada de Fourier consiga revelar a presena de uma certa exponencial complexa

    ejxn dentro de uma sequncia que a multiplicao desta exponencial por ejxn resulta ejxnejxn = 1,como visto em (42). E a somatria destes valores 1 cresce ao longo da durao da sequncia. Por outro lado,

    para frequncias diferentes da procurada, o expoente de e no se anula. Neste caso, a somatria de valores destaexponencial complexa ao longo da durao da sequncia oscila, ao invs de crescer continuamente.

  • Ricardo Pires - Processamento Digital de Sinais 35

    A sequncia x[n] pode ser recuperada a partir de X(ej) usando-se a transformada inversa de Fourier,denida como:

    x[n] =1

    2pi

    pipi

    X(ej)ejn d (43)

    A demonstrao de que a equao 43 a transformao inversa da equao 40 apresentada em [1].

    Da equao 43, v-se que a resposta impulsiva h[n] de um sistema a transformada inversa de Fourier daresposta em frequncia deste sistema.

    A equao 43 permite que se calcule a sequncia de amostras x[n] cuja transformada de Fourier uma certaX(ej) conhecida. Isto usado em processos de compactao de dados. Se uma longa sequncia de amostrasfor formada por umas poucas componentes senoidais, pode ser vantajoso se armazenar em uma memria digital

    uma descrio de X(ej), ao invs de se memorizarem os prprios valores lidos das amostras, x[n]. Nestatcnica, ento, primeiro lida e memorizada a longa sequncia de amostras x[n]. Em seguida, calculada atransformada de Fourier de x[n]. Os resultados desta X(ej), ento, so memorizados e as amostras originaisx[n] so descartadas. Se for necessrio recuperar-se x[n], basta que se calcule a transformada inversa de X(ej),usando-se a equao 43.

    Uma aplicao popular da transformada de Fourier a codicao de som no formato MP3 [5]. Nesta

    tcnica, uma sequncia de amostras de som x[n] a ser compactada subdividida em subsequncias x1[n], x2[n]etc., que duram, cada uma, uma frao de segundo. Cada uma destas subsequncias sofre uma transformada

    de Fourier, resultando X1(ej), X2(e

    j) etc. O resultado da transformada de Fourier de cada trecho indicao contedo em frequncias deste trecho. So, ento, removidas as componentes com frequncias inaudveis de

    cada trecho. E, ainda, em cada trecho, identicada a senoide com maior energia. As senoides que no seriam

    audveis no mesmo trecho devido presena simultnea desta senoide muito mais forte tambm so removidas.

    Ento, para cada trecho, so memorizadas, no domnio da frequncia, apenas as senoides remanescentes. Nesta

    memorizao, ainda usada uma tcnica genrica de compactao de arquivos digitais.

    O Teorema da Convoluo se aplica a sequncias e a suas transformadas de Fourier, ou seja, se

    x[n]F X(ej)

    e

    h[n]F H(ej)

    (em que a notao

    F representa a transformada de Fourier), se uma sequncia y[n] for o resultado da convoluodestas x[n] e h[n], ou seja,

    y[n] =

    k=

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

    ento

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

    ou seja, convoluo no domnio do tempo corresponde a multiplicao no domnio de frequncia. Uma demon-

    strao deste teorema apresentada em [1].

    3.10 Transformada de Fourier Discreta

    A transformada de Fourier discreta uma transformada de Fourier calculada apenas para sequncias x[n] dedurao nita. muito comum que se reram a ela pela sua sigla em ingls, DFT. Ela chamada de discreta

    porque apresenta o resultado da transformada de Fourier apenas para um nmero nito de frequncias e no

    para todos os valores de frequncia, como acontece com a transformada de Fourier contnua. O nmero de

    frequncias para as quais a DFT apresenta resultados igual ao nmero de valores de x[n] usados no clculo destatransformada. Por exemplo, se a sequncia x[n] a ser transformada tiver apenas 10 valores, a DFT fornecer uma

  • Ricardo Pires - Processamento Digital de Sinais 36

    sequncia contendo, tambm, 10 valores. Estes valores gerados pela DFT so amostras igualmente espaadas

    em frequncia do espectro contnuo de x[n].A DFT tem grande utilidade prtica, por ser, em geral, de clculo mais rpido do que um clculo analtico

    da transformada de Fourier contnua e, mesmo assim, fornecer amostras exatas do espectro contnuo do sinal

    transformado. Quanto menos amostras de uma x[n] forem usadas no clculo da DFT, maior ser a rapidez desteclculo, mas sero obtidas menos amostras do espectro. Inversamente, se muitas amostras de x[n] forem usadasno clculo da DFT, maior ser o trabalho nos clculos, mas se obter uma melhor visualizao do espectro

    (mais amostras dele).

    A DFT denida como:

    X [k] =

    N1n=0

    x[n]ej2pi

    Nkn

    (44)

    em que x[n] a sequncia de durao nita a ser transformada e X [k] o resultado da transformao. X [k] uma sequncia que contm amostras uniformemente espaadas, em frequncia, do espectro X(ej) de x[n]. Adiferena de frequncia angular entre duas amostras seguidas de X(ej) contidas em X [k] de 2pi

    N, em que N

    o nmero de amostras da sequncia x[n] usadas no clculo de X [k]. Assim, por exemplo, se N = 10, a diferenade frequncia angular entre amostras de X(ej) contidas em X [k] ser de 2pi10 . Ento, para N = 10, X [0] tem ovalor de X(ej) para = 0 2pi10 = 0 rad. X [1] tem o valor de X(e

    j) para = 1 2pi10 =2pi10 rad e assim por diante,

    at X [9], que tem o valor de X(ej) para = 9 2pi10 rad. Para k = 10, o valor obtido para X [k], X [10], seria ode X(ej) para = 10 2pi10 = 2pi rad, o qual equivale ao valor obtido para = 0 rad, X [0], j que X(e

    j) peridico em frequncia, com perodo de 2pi. Por isto, s so de interesse os valores de X [k] em nmero igualao nmero de amostras de x[n] usadas no clculo. Valores de X [k] fora da faixa de interesse so sempre iguaisa valores de X [k] normalmente calculados.

    A gura 15 um grco do mdulo da transformada de Fourier contnua de uma sequncia, apresentado

    em linha contnua, sobreposto ao grco do mdulo da DFT da mesma sequncia, apresentado como hastes.

    A sequncia utilizada nesta transformao tinha comprimento de oito amostras, tendo as quatro primeiras

    amostras o valor 1 e as quatro ltimas o valor 0. (Esta sequncia no mostrada na gura.) Como a sequncia

    a ser transformada tinha oito amostras, com a DFT, obtiveram-se oito amostras de seu espectro contnuo. V-se,

    na gura 15, que os resultados da DFT coincidem com os do espectro contnuo.

    A transformada de Fourier discreta inversa calculada como:

    x[n] =1

    N

    N1k=0

    X [k]ej2pi

    Nkn

    (45)

    Aqui, X [k] um espectro discreto conhecido. x[n] a sequncia correspondente a este espectro. N ocomprimento de x[n] e , assim, o nmero de valores no redundantes de X [k].

    Atualmente, a DFT calculada, para longas sequncias, em programas de computador e em circuitos inte-

    grados, usando-se algoritmos rpidos chamados de FFT (do ingls Fast Fourier Transform ou Transformada

    Rpida de Fourier). A FFT usa recurso e se aproveita do fato de que fatores do tipo ej2pi

    Nkn

    so peridicos

    em k e em n, evitando, com isto, que eles sejam recalculados muitas vezes. Resultados parciais de fatoresdeste tipo j calculados so reaproveitados ao mximo. Cita-se o matemtico Gauss como um dos primeiros a

    descrever a FFT, em 1805 [1].

    A FFT de uma dada sequncia x calculada usando-se o comando t(x). O resultado umasequncia com o mesmo comprimento de x, contendo amostras do espectro de x.

  • Ricardo Pires - Processamento Digital de Sinais 37

    -1

    0

    1

    2

    3

    4

    5

    -1 0 1 2 3 4 5 6 7

    modu

    lo d

    o es

    pect

    ro

    omega(rad)

    Figura 15: Mdulo de uma DFT e de uma transformada de Fourier contnua da mesma sequncia

    Exerccio 57

    No Octave, gere uma sequncia de instantes, com o comando

    octave> n=[0:11]

    Em seguida, especique uma frequncia = pi2 , comoctave> omega=pi/2

    Ento, gere uma senoide, com (usando x minsculo)octave> x=cos(omega*n)

    Calcule e memorize a FFT de x com (usando X maisculo)octave> X=t(x)

    Visualize o mdulo desta FFT com

    octave> stem(n,abs(X))

    Interprete o resultado.

    Exerccio 58

    No exerccio anterior, o eixo x do grco mostrava os instantes n. Modique a escala do eixo x, para que elapasse a mostrar , com os comandos:octave> eixox=2*pi/12*n

    octave> stem(eixox,abs(X))

    Verique os valores de em que caram as raias no nulas do espectro.

  • Ricardo Pires - Processamento Digital de Sinais 38

    Exerccio 59

    Repita o procedimento anterior para: = pi4 , =pi8 e = pi. Interprete os resultados.

    Exerccio 60

    Repita o procedimento anterior para sequncias mais longas, para mais instantes, usando o programa para o

    Octave:

    n=[0:99];

    omega=input("omega=");

    x=cos(omega*n);

    X=t(x);

    eixox=2*pi/100*n;

    stem(eixox,abs(X))

    para vrios valores de . Interprete os resultados.

    Exerccio 61

    Verique o espectro de uma sequncia x que consista numa soma de duas senoides, com diferentes frequnciase diferentes amplitudes.

    A FFT inversa de um espectro discreto X calculada usando-se o comando it(X). O resultado uma sequncia temporal com o mesmo comprimento de X , a qual a sequncia de amostrascujo espectro discreto X .

    4 Transformada Z

    A transformada Z uma generalizao da transformada de Fourier. Uma de suas utilidades ter notao

    mais simples do que a transformada de Fourier. Outra utilidade a de facilitar a visualizao de propriedades

    de sistemas de tempo discreto.

    A transformada de Fourier foi denida na seo 3.9 como:

    X(ej) =

    n=

    x[n]ejn (46)

    Na denio da transformada Z, troca-se a expresso ej da transformada de Fourier por uma varivel complexaz, obtendo-se:

    X(z) =

    n=

    x[n]zn (47)

    Na denio da transformada Z, z uma varivel complexa que pode assumir qualquer valor. Quanto expresso ej , ela tambm um nmero complexo, mas s pode assumir valores cujo mdulo valha 1. Assim,a transformada de Fourier e a transformada Z s coincidem quando o mdulo da varivel z for restrito a 1.

  • Ricardo Pires - Processamento Digital de Sinais 39

    De forma similar usada com a transformada de Fourier, uma notao usada para se indicar um par formado

    por uma sequncia e sua transformada Z :

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

    Exerccio 62

    Qual a transformada Z da sequncia dada na tabela 14?

    V-se que a transformada Z de uma sequncia apresenta cada valor desta sequncia multiplicado pela varivel

    z elevada ao negativo do instante daquele valor na sequncia.

    Exerccio 63

    Qual a transformada Z de uma verso atrasada da sequncia do exerccio anterior (considere atraso unitrio)?

    V-se que atrasar uma sequncia em uma unidade de tempo corresponde a multiplic-la por z1 no domnioz. Atras-la de k unidades de tempo corresponde a multiplic-la por zk. Adiant-la corresponde a multiplic-lapor z elevada a um expoente positivo, cujo valor o nmero de unidades de tempo de adiantamento.

    Exerccio 64

    Se a transformada Z de uma sequncia x[n] for chamada de X(z), qual ser a transformada Z da sequncia12x[n 3]?

    Exerccio 65

    Se a transformada Z de uma sequncia x[n] for chamada de X(z), qual ser a transformada Z da sequnciax[n] 13x[n 1] + 12x[n 3]?

    Exerccio 66

    Se a transformada Z de uma sequncia x[n] for chamada de X(z) e a transformada Z de uma sequncia y[n] forchamada de Y (z), qual ser a transformada Z da equao y[n] = x[n] 13x[n 1] + 12x[n 3] 110y[n 2]?

    4.1 Transformada Z e Equaes de Diferenas

    Conforme visto na seo 3.7, muitos sistemas de tempo discreto so projetados para implementar equaes

    de diferenas do tipo:

    Nk=0

    aky[n k] =Mk=0

    bkx[n k] (49)

    A transformada Z da equao 49 :

  • Ricardo Pires - Processamento Digital de Sinais 40

    Nk=0 akz

    kY (z) =M

    k=0 bkzkX(z)

    Y (z)(Nk=0 akzk) = X(z)(Mk=0 bkzk) H(z) = Y (z)

    X(z) =M

    k=0bkz

    k

    N

    k=0akzk

    (50)

    em que H(z) a funo de transferncia do sistema, no domnio z.

    Exerccio 67

    Qual a funo de transferncia no domnio z do sistema que implementa

    y[n] = x[n] 13x[n 1] + 1

    2x[n 3] 1

    10y[n 2] ?

    Exerccio 68

    Qual a funo de transferncia no domnio z do sistema que implementa

    y[n] = x[n] 13x[n 1] + 1

    2x[n 3] ?

    A H(z) de um sistema que implementa uma equao de diferenas pode ser escrita de forma que seunumerador e seu denominador apaream como produtos de fatores do tipo (z k), com k sendo um nmerocomplexo 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 innito. Assim, um polo um valor de z que faz com que o denominador de H(z) assumavalor zero.

    Exerccio 69

    Quais so os zeros e os polos da funo de transferncia dada abaixo?

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

    z(z 0, 8)Escreva uma equao de diferenas correspondente.

    Exerccio 70

    Quais so os zeros e os polos da funo de transferncia dada abaixo?

    H(z) =1 + 0, 1z1 0, 12z21 0, 6z1 + 0, 25z2

    Escreva uma equao de diferenas correspondente.

  • Ricardo Pires - Processamento Digital de Sinais 41

    Para se obterem as razes de um polinmio p(x), por exemplo, p(x) = x2 5x + 6, deve-sefornecer este polinmio montando-se um vetor com seus coecientes, usando-se:

    octave > p = [1 5 6]e deve-se, em seguida, usar o comando roots :

    octave > roots(p)

    Exerccio 71

    Escreva uma equao de diferenas cuja H(z) tenha um nico zero em 0,8 e tenha dois polos, em 0, 7i.

    Exerccio 72

    Escreva uma equao de diferenas cuja H(z) tenha zeros em 0, 8 e tenha polos em 0, 5 0, 7i.

    Para se obter um polinmio p(x) que possua certas razes, 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 sequncia de coecientes de um polinmio que possua as razes fornecidas. No

    resultado, o coeciente dado mais esquerda o do termo de maior expoente. Neste exemplo,

    o resultado :

    1 5 6o que signica que um polinmio cujas razes so 2 e 3

    x2 5x+ 6

    4.2 Clculo de Resposta em Frequncia 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 nmero complexo com mdulo 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.

    Exerccio 73

    Dada a funo de transferncia:

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

    z(z 0, 8)Qual seu mdulo e qual sua fase para = 0? E para = pi2 ? E para = pi?

    Pelo que se v no exerccio anterior, para se calcular aquela H(z) em vrias frequncias, calcula-se

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

    ej(ej 0, 8)naquelas frequncias.

  • 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 diferena entre o valor de z e o valor 0, 5, ou seja, a diferenaentre 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 = pi2 , z = ej

    pi

    2 = j, (z 0, 5) = j 0, 5. Neste ltimo caso, o mdulo dofator |j 0, 5| =

    0, 52 + 12 =

    1, 25. Este mdulo igual ao comprimento da linha pontilhada da gura 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 frequncia , o mdulo de um fatordo tipo (z kz), em que kz um zero do sistema, igual distncia entre z = ej e kz. A fase z deste fatortambm est indicada na gura.

    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 caracterstica de resposta em frequncia, devem-se

    colocar zeros prximos s frequncias para as quais se deseja ganho pequeno e polos prximos s frequncias

    para as quais se deseja ganho grande. Escolhidos os zeros e os polos, podem-se construir os polinmios do

    numerador e do denominador de H(z). Com a H(z) preparada desta forma, pode-se escrever a equao dediferenas correspondente. E, nalmente, tendo-se a equao de diferenas, pode-se implementar o sistema em

    hardware ou em software.

  • Ricardo Pires - Processamento Digital de Sinais 44

    Referncias

    [1] OPPENHEIM,A.V., SCHAFER,R.W.

    Discrete-Time Signal Processing

    Prentice-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 Systems

    McGraw-Hill, 2001

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

    IntroduoSinais de Tempo DiscretoSequnciasOperaes Bsicas sobre SequnciasSequncias BsicasImpulso de Tempo DiscretoDegrau UnitrioSequncia ExponencialSequncia SenoidalSequncia Exponencial Complexa

    Amostragem de Sinais de Tempo Contnuo

    Sistemas de Tempo DiscretoSistemas com Memria x Sistemas sem MemriaSistemas Lineares x Sistemas No LinearesSistemas Variantes no Tempo x Sistemas Invariantes no TempoSistemas Causais x Sistemas No CausaisEstabilidade de SistemasSistemas Lineares e Invariantes no TempoEstabilidade de Sistemas LITCausalidade de Sistemas LIT

    Equaes de Diferenas Lineares a Coeficientes ConstantesRepresentao no Domnio da FrequnciaRepresentao de Sequncias por Transformada de FourierTransformada de Fourier Discreta

    Transformada ZTransformada Z e Equaes de DiferenasClculo de Resposta em Frequncia Usando a Transformada Z