0% acharam este documento útil (0 voto)
3 visualizações29 páginas

Capitulo 07

O documento aborda o projeto de filtros digitais, classificando-os em FIR e IIR, e descrevendo suas características e aplicações. Discute a importância da resposta temporal e em frequência dos filtros, destacando como diferentes tipos de filtros podem afetar sinais de áudio e imagens. Além disso, apresenta métodos de projeto de filtros FIR, incluindo a técnica de janelamento e a síntese pela série de Fourier.

Enviado por

engenharia
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato DOCX, PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
3 visualizações29 páginas

Capitulo 07

O documento aborda o projeto de filtros digitais, classificando-os em FIR e IIR, e descrevendo suas características e aplicações. Discute a importância da resposta temporal e em frequência dos filtros, destacando como diferentes tipos de filtros podem afetar sinais de áudio e imagens. Além disso, apresenta métodos de projeto de filtros FIR, incluindo a técnica de janelamento e a síntese pela série de Fourier.

Enviado por

engenharia
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato DOCX, PDF, TXT ou leia on-line no Scribd

PROJETO DE FILTROS DIGITAIS

Os filtros digitais podem ser classificados quanto:

 À duração da resposta ao impulso:


o FIR
o IIR
 À realização:
o Transversal – a filtragem é realizada mediante convolução do sinal de
entrada com a resposta ao impulso do filtro;
o Recursiva – a filtragem é implementada mediante equações de
diferenças;
o Em Frequência (filtragem espectral) – mediante produto das respostas
em frequência da entrada e da Função de Transferência do Filtro, com
posterior obtenção da saída via transformada inversa.

FUNDAMENTOS DE FILTROS

Um filtro é um sistema empregado para modificar a distribuição em frequência de um


sinal, de acordo com uma necessidade específica de processamento deste sinal, como
por exemplo sintonizar certa estação de rádio ou eliminar componentes indesejáveis de
um sinal.

Embora o cerne de um filtro seja sua capacidade de modificar a distribuição em


frequência, levando a crer na exclusividade da análise em frequência de filtros, a análise
da resposta temporal de um filtro é importante para certas aplicações, o que conduz a
necessidade de se conhecer a resposta temporal de filtros, principalmente para dois
sinais de entrada de referência, que é a resposta ao impulso e ao degrau unitário.
Figura 1 - Tipos de Resposta de um Filtro

Determinados sinais transportam seu conteúdo de informação associado mais a suas


frequências. Por exemplo, sinais de áudio, onde alterações de fase não implicam em
problemas e, portanto, não são importantes. Neste caso, o desempenho da resposta em
frequência do filtro deve ser priorizado, a fim de que o conteúdo a ser tratado seja
devidamente selecionado.

A título de ilustração, o seguinte código passa um sinal de áudio por um filtro Passa-
1−az
Tudo descrito por H ( z )= , onde a = 0,5.
z−a

Figura 2 - Filtro Passa-Tudo Aplicado a um Áudio em Scilab

Se for traçada a resposta em magnitude deste filtro, será observado que o mesmo não
altera a magnitude do sinal, sendo por isso sua denominação “passa-tudo”. Contudo, se
plotada a fase do filtro, nota-se a mudança em fase imposta pelo mesmo. Todavia, isto
não altera o conteúdo do áudio significativamente a ponto de percebemos diferenças
entre o áudio original e o filtrado, demonstrando a insensibilidade à fase deste tipo de
sinal.
Contudo, há sinais cujo conteúdo de informação está mais associado à forma de onda,
como por exemplo, o sinal de eletrocardiograma ou uma imagem. Nesta situação, é
importante a análise do desempenho da resposta temporal do filtro, para que este não
provoque perda da informação contida na forma de onda.

Para ilustrar tal situação, tomemos a seguinte imagem, no qual é apresentada sua
resposta em frequência em magnitude e fase:

Figura 3 - Resposta em Frequência de uma Imagem

Se resolvemos uniformizar a fase desta imagem, o resultado será:

Figura 4 - Uniformização da Fase para a Imagem Anterior


Pode-se notar que a imagem é completamente perdida sem a preservação da fase. Isto
pode ser comprovado pela seguinte uniformização da magnitude e manutenção da fase
original da imagem:

Figura 5 - Imagem anterior, agora com a uniformização da magnitude e preservação da fase

Naturalmente, a uniformização da magnitude deteriora a imagem, mas a simples


preservação da fase nos permite alguma ideia sobre o que a imagem representa. Se não
modificarmos tão profundamente a magnitude, mas ainda preservando a fase, o
resultado será:

Figura 6 - Alteração da Magnitude e Preservação da Fase na Imagem Anterior


Sendo a fase um componente importante da forma do sinal, comprova-se a sensibilidade
de um sinal do tipo imagem à forma de onda (fase).

O desempenho da resposta temporal pode ser avaliado segundo os seguintes critérios


existentes na resposta ao degrau unitário:

 Razão de Subida
o Lenta – a resposta demora em convergir ao valor de regime permanente
(indesejável);
o Rápida – rápida convergência ao valor de regime permanente (desejável).
 Presença de Overshoot
o Com – presença de sobressinal no regime transitório (indesejável);
o Sem – ausência de sobressinal no regime transitório da resposta
(desejável);
 Variação de Fase
o Linear – existência de uma constante de proporcionalidade entre a fase
da resposta e a fase do sinal de entrada (desejável);
o Não linear – inexistência de uma proporcionalidade constante entre a
fase da resposta e a fase do sinal de entrada (indesejável).

Figura 7 - Desempenho Temporal de um Filtro quanto ao Degrau, Overshoot e Fase

Para caracterizar o desempenho da resposta em frequência, necessitamos conhecer as


partes relevantes desta resposta. Lembrando que em frequência a resposta do sistema
pode ser visto como o produto entre a resposta em frequência do filtro e o
comportamento em frequência do sinal de entrada, idealmente os filtros se
comportariam como janelas retangulares, com amplitude unitária da banda de passagem
e zero na banda de rejeição, apresentando ainda transição abrupta entre estas bandas.
Entretanto, como filtros ideais não são realizáveis, por serem não causais, na prática os
filtros podem ser especificados segundo o comportamento abaixo:

Figura 8 - Principais Regiões de uma Resposta em Frequência

 Banda de passagem: Faixa de frequência permitida pelo filtro;


 Banda de transição: faixa de frequência entre a banda de passagem e a de
rejeição;
 Banda de Rejeição: Faixa de frequência rejeitada ou atenuada pelo filtro;
 Margem na banda de passagem: faixa de tolerância admissível para oscilações
de amplitude na banda de passagem;
 Margem na banda de rejeição: faixa de tolerância admissível para oscilações na
atenuação imposta ao sinal na banda de rejeição.

Estas regiões do filtro dependem do tipo, que pode ser:

 Passa-baixa;
 Passa-alta;
 Passa-faixa;
 Rejeita-faixa.

Há ainda o filtro Passa-tudo, visto anteriormente, cuja principal função tem a ver com a
alteração do comportamento em fase da entrada, sem mudanças na resposta da
magnitude com relação à frequência. Observe ainda que os filtros do tipo passa-baixa e
passa-alta são caracterizados por apenas uma única frequência de corte, ao passo que os
filtros passa-faixa e rejeita-faixa são caracterizados por duas frequências de corte, a
inferior e a superior, respectivamente.
Alguns tipos podem ser obtidos a partir de outros mediante a técnica da inversão
espectral. Por exemplo, é possível obter um filtro passa-alta a partir do projeto de um
filtro passa-baixa. No caso de filtros digitais, isso é possível apenas pela alteração de
sinal dos coeficientes do filtro.

Com isto, podem-se definir as características de desempenho da resposta em frequência.


Esta pode ser, quanto:

 Ao fator de “Roll-off”:
o Lento – taxa de transição mais suave, normalmente indesejada;
o Rápido – transição abrupta, normalmente desejada.
 Oscilação na banda de passagem:
o Ripple – presença de oscilações, sendo indesejado;
o Plano – ausência de oscilações, sendo o comportamento desejado.
 Atenuação na banda de rejeição:
o Pobre – baixa atenuação das bandas a serem rejeitadas (indesejado);
o Boa – grande atenuação das bandas a serem rejeitadas (desejável).

Figura 9 - Desempenho da Resposta em Frequência quanto ao Rolloff, Ripple e Atenuação na


Banda de Rejeição

Tal desempenho é importante para determinadas aplicações. Por exemplo, na


implementação do filtro analógico anti-alias, é desejável um roll-off rápido, a fim de
impor um limite para a frequência superior do sinal a ser amostrado com a taxa
adequada, segundo Nyquist.
Uma vez que os principais fundamentos de filtros foram revistos, passamos ao projeto
dos dois principais tipos de filtros LIT digitais, que são os filtros do tipo FIR e IIR.

FILTRO FIR

Filtros FIR são do tipo Resposta Impulsiva Finita, ou seja, sua resposta ao impulso é
formada por um número finito de termos ou amostras. Uma das características dos
filtros FIR é que eles são basicamente formados pela operação com amostras atuais e
passadas apenas da entrada, sendo assim não realimentados e, portanto, não
apresentando polos, sendo sempre estáveis. Por outro lado, para se conseguir uma boa
performance é necessária uma ordem elevada, o que acarreta em grande custo
computacional, podendo ser desvantajoso quando implementado em um hardware
limitado.

Um exemplo clássico de filtro FIR facilmente implementável é o filtro de média móvel.


Trata-se de um filtro passa-baixa cujos coeficientes do filtro são determinados
dependendo do número de amostras da entrada em que é realizada a média. É um bom
filtro para atenuação de ruído. Para projetar um filtro de média móvel, vemos que a

largura do lóbulo principal da resposta em frequência é dada por . Para então dar
N
certa margem, calcula-se a frequência de corte como sendo ω c =0 , 91 π /N . Então, a
partir de uma dada especificação de corte, basta determinar o comprimento N desejado.

Este filtro, embora do tipo FIR, também pode ser realizado recursivamente através da
seguinte equação:

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

O benefício da implementação recursiva frente a anterior decorre da melhor eficiência


no cômputo do filtro, uma vez se reduz o número de amostras a serem usadas no
cálculo. Outra versão recursiva deste filtro é a versão média móvel exponencial,
também conhecido por EMA (Exponential Moving Average), cuja expressão é

y [ n ] =( 1−α ) ∙ y [ n−1 ] + α ∙ x [n]

onde  é a frequência de corte normalizada desejada. Como pode ser visto, esta
realização é ainda mais interessante que a versão recursiva apresentada anteriormente,
para o caso em que há limitações no processador alvo e/ou memória, haja vista que o
EMA não utiliza a N-ésima amostra da entrada, dispensando sua espera e devido
armazenamento em memória.

Síntese de Filtro FIR pela Série de Fourier

O projeto de um filtro FIR usando o método da série de Fourier é aquele em que a


resposta em magnitude de sua função de transferência aproxima uma resposta desejada.
Basicamente, trunca-se a série de Fourier da resposta desejada, que é infinita, em um
certo limite Q positivo e finito, de forma que esta fica restrita a uma janela retangular
entre –Q e Q. Assim, o filtro realizável ignora a contribuição de termos que estão de
fora desta janela. Quanto maior Q, mais alta é a ordem do filtro e maior a aproximação
com a resposta desejada. Extraindo-se os coeficientes desta série truncada C-Q, C-Q+1, ...,
C-1, C0, C1, ..., CQ-1, CQ, é possível mostrar que estes coincidem com os coeficientes da
resposta impulsiva do filtro na forma hi = CQ-i e N-1=2Q, onde N é o número de termos
da resposta impulsiva ou ordem do filtro. Os coeficientes da resposta ao impulso são
simétricos em torno de hQ, com hQ = C0 e Cn = C-n.

Por exemplo, se pegarmos Q = 5, o filtro terá 11 coeficientes com as seguintes relações:

h 0=h10=C 5

h1=h9=C 4

h2 =h8=C 3

h3 =h7=C 2

h 4=h 6=C 1

h5 =C0

Os coeficientes C são determinados como segue (1 e 2 são as frequências de corte


normalizadas).

sin ⁡(nπ ν 1)
1. Passa baixa: C 0=ν 1 e C n=

−sin ⁡(nπ ν 1)
2. Passa alta: C 0=1−ν 1 e C n=

sin ⁡(nπ ν 2)−sin ⁡( nπ ν 1)
3. Passa faixa: C 0=ν 2−ν 1 e C n=

sin ⁡(nπ ν 1)−sin ⁡(nπ ν 2)
4. Rejeita faixa: C 0=1−(ν ¿¿ 2−ν ¿¿ 1)¿ ¿ e C n=

Técnica de Janelamento

Trata-se de uma técnica de obtenção de um filtro a partir do truncamento e


deslocamento da resposta impulsiva de um filtro ideal, mediante modulação desta
resposta com uma janela, o que torna os coeficientes do filtro FIR causal, com fase
linear.

Seja um filtro passa baixa ideal, cuja resposta em frequência é


{
H LP ( e jω )= 1 ,|ω| ≤ω c
0 , ω c <ω ≤ π

Sua resposta ao impulso será

sin ( ω c ∙ n )
h LP [ n ] = −∞ ≤ n ≤ ∞
π∙n

e portanto não-realizável (não causal). Assim, truncando a resposta ao impulso entre


– M ≤ n ≤ M , obtém-se uma sequência finita não causal de comprimento N=2 M +1 que
quando deslocada para a direita se torna um filtro FIR causal, com fase linear. Este
efeito é conseguido pela modulação com uma função do tipo janela, de forma que a
resposta ao impulso do filtro projetado real fica

sin ( ω c ∙ ( n−M ) )
h^ LP [ n ] =hLP [ n ] ∙ w [ n ] = 0 ≤ n≤ N−1
π ∙ ( n−M )

onde w [n] é uma janela simétrica em relação a M entre 0 ≤ n ≤ N −1.

A resposta em frequência do filtro projetado se torna

H LP ( e )= { H LP ( e )∗W ( e ) } ∙ e
^ jω jω jω − jMω

Os tipos de janelas aplicadas podem variar em:

 Fixas – não é possível parametrizar ripples, tolerâncias para atenuações, etc.


o Retangular w [ n ] = {
1 , 0 ≤ n≤ N −1
0

{
2n N −1
,0 ≤ n ≤
N−1 2
o Bartlett w [ n ] =
2 n N −1
2− , ≤ n ≤ N −1
N −1 2

{ ( N2−1 ) , 0 ≤ n≤ N−1
πn
0 ,5−0 , 5∙ cos
o Hanning w [ n ] =
0 , fora

{ ( N−1 ) , 0 ≤ n≤ N−1
2 πn
0 ,54−0 , 46 ∙ cos
o Hamming w [ n ] =
0 , fora

{ ( N−1 )+ 0.08 ∙cos ( N−1 ) , 0 ≤ n ≤ N −1


2 πn 4 πn
0 , 42−0 , 5 ∙cos
o Blackman w [ n ] =
0 , fora
 Ajustáveis – podem ter parâmetros ajustáveis, como os ripples nas bandas de
passagem e rejeição.
o Dolph-Chebyshev
o Kaiser
O código Scilab abaixo gera a resposta das diferentes janelas apresentadas, conforme
suas especificações:

Figura 10 - Script Scilab para Geração de Funções de Janela

Figura 11 - Tipos de Janelas (conforme script na Figura 10)

Cada janela possui um tipo de resposta em frequência, como pode ser conferido na
ilustração a seguir:

Figura 12 - Resposta em Frequência para Filtros FIR com Diferentes Janelas


Síntese por CAD

Uma técnica eficiente para a síntese de filtros digitais é o uso de uma técnica de projeto
iterativo auxiliado por computador. Para filtros FIR, está disponível o algoritmo Remez,
que produz aproximações equiripple de filtros FIR. A ordem do filtro bem como os
limites das bandas de passagem e rejeição são fixadas e o algoritmo ajusta os
coeficientes até prover a aproximação equiripple. Assim, são minimizadas as
ondulações em ambas bandas de passagem e rejeição. Contudo, a região de transição
não é restrita, o que pode resultar em filtros com esta característica indesejável. Outros
algoritmos se encontram disponíveis, como o de Parks-McClellan.

O projeto de um filtro FIR pelo método de Janelamento no Scilab é feito com a função
wfir, com a seguinte sintaxe:

[wft, wfm, fr] = wfir(ftype, forder, cfreq, wtype, fpar)

Onde:

 wft – vetor com os coeficientes para um filtro de comprimento n;


 wfm – um vetor para a resposta em frequência do filtro;
 fr – vetor de frequências (associado a wfm);
 ftype – tipo do filtro:
o lp – passa-baixa;
o hp – passa-alta;
o bp – passa-faixa;
o sp – rejeita-faixa.
 forder – ordem do filtro;
 cfreq – vetor das frequências de corte normalizadas;
 wtype – tipo de janela empregada:
o re – retangular;
o tr – triangular;
o hm – Hamming;
o hn – Hanning;
o kr – Kaiser;
o ch – Dolph-Chebyshev.
 fpar – compromisso entre a largura do lóbulo principal e a altura dos lóbulos
laterais.

O código Scilab abaixo ilustra o uso desta função no processo de filtragem do sinal.
Figura 13 - Exemplo de projeto de filtro FIR com wfir

Trata-se de um filtro passa baixa FIR usando janela de Hamming, com ordem 33 e
frequência de corte normalizada de 0,2.

Um parâmetro importante para o uso da função Scilab é a determinação da ordem


desejada do filtro. Para o caso de janelas fixas, com o conhecimento das especificações
do filtro, é possível escolher a janela mais apropriada e calcular o seu comprimento
baseado na seguinte tabela:

Janela Amplitude do pico Lóbulo Faixa de Atenuação


lateral principal Transição mínima

Retangula -13 dB 2/N 0,91/N -21 dB


r

Triangular -25 dB 4/N 1,19/N -25 dB

Hanning -31 dB 4/N 2,51/N -44 dB

Hamming -41 dB 4/N 3,14/N -53 dB

Blackman -57 dB 6/N 4,60/N -74 dB

Para a situação de uma janela ajustável, mostraremos, à título de exemplo, as fórmulas


aplicadas para o caso de uma janela de Kaiser. Dadas as seguintes especificações:

 s – atenuação mínima na banda de corte (dB);


 s – ripple na banda de corte;
 p – ripple na banda de passante (dB);
 1 - p – ripple na banda passante.

A relação entre estas é dada pelas seguintes fórmulas:

α p=−20 ∙ log 10 ( 1−δ p ) α s=−20∙ log 10 ( δ s )

Pode-se determinar a frequência de corte e a faixa de transição por:


ω p +ω s ω p−ω s
ωc= ∆f=
2 2π

Com isto, a ordem do filtro pode ser determinada por:

{
α s−7 , 95
α s >21
N= 14 , 36 ∙ ∆ f
0,9222
α s ≤ 21
∆f

Além disso, pode-se implementar um filtro passa alta a partir de um passa baixa que
seja espelho deste passa alta. Por exemplo, usando o Scilab, geramos o seguinte filtro
FIR passa baixa com frequência de corte 0.15 e ordem cinco:

y [ n ] =0.0121092 ∙ x [ n ] +0.1010328 ∙ x [ n−1 ] +0.2 ∙ x [ n−2 ] +0.1010328 ∙ x [ n−3 ] + 0.0121092∙ x [ n−4 ]

Quando a ordem do filtro é ímpar, pode-se facilmente obter a versão passa alta deste
filtro simplesmente invertendo o sinal dos coeficientes laterais e alterando o coeficiente
central de forma que ele seja complementar a um. Em outras palavras, a versão passa
alta com corte em 0.15 será:

y [ n ] =−0.0121092 ∙ x [ n ] −0.1010328 ∙ x [ n−1 ] + 0.8∙ x [ n−2 ] −0.1010328 ∙ x [ n−3 ] −0.0121092 ∙ x [ n−4 ]

Esta maneira de se implementar um filtro a partir de seu espelho se chama Inversão


Espectral e pode ser aplicada, por exemplo, para se obter a versão rejeita faixa, a partir
de um passa faixa. Reforça-se que esta técnica só se aplica a filtros de ordem ímpar.

APROXIMAÇÃO DISCRETA DE SISTEMAS CONTÍNUOS

Sistemas Discretos podem ser concebidos a partir de Sistemas Contínuos através de


formas de aproximação discreta da dinâmica destes sistemas contínuos. Como pode ser
visto na próxima ilustração, há uma correspondência entre diferentes formas de se
representar sistemas contínuos e sistemas discretos. O estabelecimento de uma ponte
que relaciona estes sistemas nos leva a possibilidade de se conceber sistemas digitais a
partir de sistemas analógicos, permitindo aproveitar todo o legado de técnicas de análise
e síntese já conhecidos na concepção de sistemas contínuos, como filtros e
controladores, para o desenvolvimento do software que irá implementar o sistema
discreto.

Contudo, faz-se necessário conhecer como estas aproximações são realizadas e que
limitações impõem a este processo, de forma que esta correspondência seja
transparente, ou seja, não implique em problemas devido ao processo de conversão.
Como será visto, um sistema contínuo absolutamente estável pode não o ser quando
convertido em um sistema discreto.
Todavia, a base para qualquer aproximação proposta é que os sinais discretos nada mais
são que os sinais contínuos tomados em instantes regulares de tempo relacionados com
o período de amostragem. Em outras palavras,

x d [ n ] =x c ( n∙ T s )

y d [ n ]= y c ( n ∙ T s )

Aproximação de Euler por Avanço

Sistemas contínuos possuem sua dinâmica descrita por equações diferenciais. Para
encontrar o correspondente discreto, Aproximam-se as derivadas no domínio contínuo
para t = nTs. A aproximação de Euler por Avanço consiste em aproximar a derivada de
primeira ordem por

d y [ n+1 ]− y d [n]
y c ( n∙ T s )= d
dt T

Figura 14 - Aproximação da Derivada por Euler em Avanço

Nota-se o período de amostragem como fator importante nesta aproximação. Por


exemplo, se tomarmos esta aproximação para certo sistema contínuo de primeira ordem
com constante de tempo , observa-se a seguir a qualidade da aproximação para
diferentes períodos de amostragem, aqui denotados pela relação T/.
Figura 15 - Respostas para Diferentes Relações T/

Tal situação decorre pelo deslocamento do polo discreto em função do período de


amostragem, mesmo que o polo contínuo seja fixo e estável, igual a -1/, pois esta
aproximação realiza o seguinte mapeamento entre os polos contínuos e discretos:

z ∙Y ( z )−Y (z )
s ∙Y ( s ) =
T

Sendo Y (s)≈ Y (z) resulta:

z−1
s=
T

z = 1 +sT

Desta forma, o semiplano esquerdo do plano s, correspondente à região de estabilidade


dos sistemas contínuos, é mapeado em regiões do plano z tanto no interior do círculo
unitário quanto fora deste, podendo levar a existência de polos instáveis no domínio
discreto, dependendo da taxa de amostragem aplicada.

Figura 16 - Mapeamento entre s e z para a Aproximação Euler em Avanço


Assim, outras formas de aproximação se fazem necessárias a fim de evitar problemas de
estabilidade neste processo de conversão.

Aproximação de Euler por Atraso

Neste caso, a aproximação da derivada se dá em relação a uma amostra atrasada,


resultando em:

d y [ n ]− y d [n−1]
y c ( n∙ T s )= d
dt T

O efeito disto é que o mapeamento entre polos no plano s para o plano z é na forma:
−1
Y ( z )−z ∙Y ( z ) 1−z−1
s ∙Y ( s ) = → s=
T T

1
z=
1−sT

Figura 17 - Respostas para Diferentes T/ na Aproximação Euler em Atraso

Fazendo com que os polos existentes no semiplano esquerdo no domínio s tendam a ser
mapeados dentro do círculo unitário no plano z, embora numa região restrita deste
círculo, assegurando a estabilidade quando se porta um sistema contínuo para um
discreto. Isto faz deste mapeamento mais robusto que o anterior, como pode ser visto na
resposta temporal abaixo, para a mesma variação de T/ que a aproximação anterior.
Figura 18 - Mapeamento entre s e z para a Aproximação Euler em Atraso

Regra Trapezoidal

A regra trapezoidal consiste em aproximar a derivada pela geometria do trapézio, o que


confere um refinamento neste processo. Em outras palavras:

(( ) )
y c n−
1
2
T =
y d [ n ] + y d [n−1]
2

d
(( ) )
1
y n− T =
dt c 2
y d [ n ] + y d [n−1]
T

Tal estratégia resulta no seguinte mapeamento entre o plano s e z:

sT
1+
2
z=
sT
1−
2

O que permite mapear integralmente o lado esquerdo do plano s no círculo unitário do


plano z, como visto na figura a seguir.
Figura 19 - Mapeamento entre s e z para Trapezoidal

FILTRO IIR

Filtros IIR são filtros de Resposta Impulsiva Infinita, ou seja, sua resposta ao impulso é
formada por infinitos termos. Isto decorre do fato deste filtro ser realimentado com
amostras passadas da resposta. Provêm filtros de menor ordem e portanto de melhor
performance, principalmente se executados em um hardware com recursos limitados de
memória e processamento. Por outro lado, por serem realimentados, podem ser
instáveis, exigindo avaliação e correção da estabilidade.

O princípio básico para projeto de filtros IIR consiste no mapeamento de um filtro


analógico em um filtro digital, usando técnicas de aproximação discreta de sistemas
contínuos, como mostrado previamente. Por isso, na seção seguinte serão explanados os
principais modelos de filtros analógicos usados como referência para o projeto de filtros
IIR.

Filtros Analógicos

O entendimento das propriedades dos filtros analógicos é importante para um


processamento digital de sinais bem sucedido. Primeiro, porque o processamento digital
de sinais depende da síntese de filtros analógicos para antialias e reconstrução como
etapas pré e pós processamento digital. Segundo, porque DSP consiste na substituição
de hardware por software, como nas técnicas multitaxa. Assim, não é possível substituir
hardware por software sem entendê-lo plenamente. Por último, muito da atividade de
DSP está relacionada ao projeto de filtros digitais, no qual uma das estratégias consiste
em converter para software um filtro analógico correspondente ao desejado.
Os filtros analógicos comumente empregados como modelos para filtros digitais do tipo
IIR são os de Butterworth, Chebyshev tipos I e II, Bessel (filtro Thompson) e
Elíptico. Cada tipo descreve o que o filtro faz, não um arranjo em particular de
resistores, capacitores e outros componentes discretos. Por exemplo, um filtro de Bessel
com seis polos pode ser implementado por diferentes tipos de circuitos, mas que
resguardam características comuns. No entanto, para nossos propósitos, as
características do filtro são mais importantes no que a forma como são construídos.

Contudo, a título de exemplo, mostraremos o projeto de um filtro analógico baseado no


circuito de Sallen-Key modificado. Basicamente, partimos da topologia de um estágio
desta abordagem, configurado como abaixo.

Figura 20 - Circuito Sallen-Key Modificado

Os valores dos parâmetros k1 e k2 dependem do tipo de filtro desejado (Bessel,


Butterworth ou Chebyshev) e da quantidade de polos do filtro, que influenciará na
quantidade de estágios com o bloco básico acima que o filtro terá em cascata. Para
tanto, basta consultar a seguinte tabela.

Polos Bessel Butterworth Chebyshev

Quant. Estágios k1 k2 k1 k2 k1 k2

2 1º 0,1251 0,268 0,1592 0,586 0,1293 0,842

4 1º 0,1111 0,084 0,1592 0,152 0,2666 0,582

2º 0,0991 0,759 0,1592 1,235 0,1544 1,660

6 1º 0,0990 0,040 0,1592 0,068 0,4019 0,537

2º 0,0941 0,364 0,1592 0,586 0,2072 1,448

3º 0,0834 1,023 0,1592 1,483 0,1574 1,846

8 1º 0,0894 0,024 0,1592 0,038 0,5359 0,522


2º 0,0867 0,213 0,1592 0,337 0,2657 1,379

3º 0,0814 0,593 0,1592 0,889 0,1848 1,711

4º 0,0726 1,184 0,1592 1,610 0,1582 1,913

Com as fórmulas e os parâmetros escolhidos da tabela, podemos configurar um filtro


analógico com este modelo. Por exemplo, supondo que desejamos projetar um filtro de
Butterworth de 2 polos e frequência de corte de 1 kHz, os parâmetros são k 1 = 0,1592 e
k2 = 0,586. Arbitrando R1 = 10 k e C = 0,01 F (valores comuns para circuitos com
ampops) R e Rf podem ser calculados como 15,95 k e 5,86 k, respectivamente.
Arredondando estes valores para valores comerciais disponíveis com tolerância de 1%,
teremos R = 15,8 k e Rf = 5,9 k. Todos os componentes devem ter tolerância de 1%
ou melhor.

O tipo de ampop não é crítico, uma vez que a frequência de ganho unitário é mais que
30 a 100 vezes maior que a frequência de corte do filtro. Isto é um requisito fácil de ser
atingido para frequências de corte abaixo de 100 kHz.

Filtro de Chebyshev obtém um excelente roll-off à custa da presença de oscilações


(ripple) na banda de passagem.

Embora difíceis de projetar, o filtro elíptico provê um bom compromisso entre roll-off e
ripple.

Já um filtro de Bessel não apresenta problemas de overshoot ou oscilações em sua


resposta temporal ao degrau. Isto é particularmente desejável para alguns tipos de sinais,
como o de vídeo, pois o overshoot devido ao filtro alteraria o brilho das bordas em
relação ao centro da imagem.

Mapeamento via Derivadas – Diferenças

Uma vez obtida a função de transferência do filtro analógico no domínio s, esta técnica
consiste em realizar a transformação ou substituição de variáveis através de

z +1
s=
T

O exemplo a seguir mostra este mapeamento através do Scilab.


Figura 21 - Mapeamento Derivadas-Diferenças Reversa

Mapeamento via Invariância ao Impulso

Esta técnica consiste em modificar a resposta do filtro analógico no domínio s para o


domínio z via a seguinte substituição

A A
∑ s−sk =∑ 1−e j s kT z−1 k
k

Transformação Bilinear

A transformação bilinear opera pela seguinte substituição de variáveis:


−1
2 1−z
s=
T 1+ z−1

Isto corresponde à técnica de aproximação trapezoidal apresentada anteriormente, cujo


benefício é o mapeamento completo dos polos analógico estáveis para polos estáveis no
domínio z, como já visto. Todavia, a relação entre as frequências angulares contínua e
normalizada é dada por

Ω=
2
T ( )
tan
ω
2

Que é claramente uma relação não linear, conduzindo a um fenômeno conhecido por
warping, que é uma distorção entre a resposta em frequência do filtro analógico e o seu
correspondente discreto. Tal situação limita a fidelidade da resposta do filtro em relação
a seu modelo analógico somente quando se opera sobre a região linear desta relação,
como mostra a figura a seguir.
Figura 22 - Warping

Por tal razão, esta técnica torna impossível mapear estruturas como um diferenciador
analógico para um digital, o que limita sua aplicação.

O exemplo seguinte mostra a transformação bilinear com a aplicação do mapeamento


entre frequência analógica e normalizada para obtenção da função de transferência de
um filtro digital a partir de filtro analógico, empregando o Scilab.

Figura 23 - Transformação Bilinear com Scilab

O Scilab oferece recursos para a obtenção da função de transferência representativa de


um filtro analógico, sobre o qual pode-se posteriormente aplicar os mapeamentos
apresentados anteriormente. Dadas as especificações do filtro, o programa conta com
funções especializadas para obtenção do ganho, polos e zeros, a partir dos quais pode-se
obter facilmente a função de transferência. Adicionalmente, o Scilab oferece funções
capazes de obter a resposta da magnitude em frequência destes modelos de filtros,
permitindo a plotagem e a validação da resposta do filtro.

O exemplo a seguir ilustra a obtenção da função de transferência de um filtro do tipo


Butterworth.
Figura 24 - Obtenção da Função de Transferência de um Filtro LPF Butterworth

Note que para este modelo de filtro basta a ordem e a frequência de corte desejada que a
função zpbutt retorna o ganho e os polos, a partir do qual se obtém a função de
transferência pelo uso das funções polinomiais já apresentadas, conforme ilustrado
acima. O próximo exemplo mostra a obtenção da curva de resposta em frequência de
um filtro de Butterworth.

Figura 25 - Obtenção da Resposta em Frequência de um Filtro Butterworth

A seguir, são apresentados tanto a obtenção da resposta em frequência, quanto a função


de transferência para um filtro Chebyshev Tipo I. Perceba agora a presença do
parâmetro épsilon associado com o ripple na banda de passagem, típico deste filtro.
Figura 26 - Projeto de Filtro Chebyshev I

Igualmente é mostrado abaixo para o caso de um filtro Chebyshev Tipo II, no qual
agora tem-se a oscilação na banda de rejeição como especificação. Notar também que
este filtro agora possui zeros.

Figura 27 - Projeto de Filtro Chebyshev II

Por fim, apresenta-se a seguir a situação envolvendo um filtro elíptico, com suas
especificações típicas.
Figura 28 - Projeto de Filtro Elíptico

Embora os exemplos acima apresentam a obtenção de um filtro analógico, pode-se tirar


proveito dos recursos do Scilab para conseguir a função de transferência do filtro digital
IIR correspondente, a partir do emprego dos recursos polinomiais disponíveis no
programa. O exemplo abaixo ilustra a função de transferência de um filtro digital IIR
com corte de /2 e tolerância na banda de rejeição de 0,05 pelo projeto de um filtro
analógico do tipo Chebyshev I e consequente transformação bilinear aplicada a este.

Figura 29 - Obtenção de Filtro Digital a partir de Analógico via Transformação Bilinear


Importante perceber que a frequência de corte do filtro analógico é conseguida pelo

mapeamento entre as frequências analógicas e normalizadas Ωc =2∙ tan c da


ω
( )
2
1
transformação bilinear, bem como a tolerância é obtida a partir da expressão 2,
1+ ϵ
através do qual repassamos épsilon à função calculado a partir de

ϵ= (√ 0.951 )−1=0.22942.
Contudo, a complexidade das operações anteriores pode ser evitada, pois a
implementação de um filtro IIR usando o Scilab se dá facilmente através da função iir,
cuja sintaxe é

--> [hz] = iir(n, ftype, fdesign, frq, delta)

Onde:

 n – ordem do filtro;
 ftype – tipo de filtro desejado, entre:
o lp – passa baixa;
o hp – passa alta;
o bp – passa faixa;
o sp – rejeita faixa.
 Frq – vetor com as frequências de corte normalizadas;
 Fdesign – modelo de filtro analógico, entre:
o butt – Butterworth;
o cheb1 – Chebyshev tipo 1;
o cheb2 – Chebyshev tipo 2;
o ellip – Elíptico.
 delta – vetor com as tolerâncias para as ondulações (ripples) nas bandas de
passagem e rejeição.

O resultado da chamada da função é uma função de transferência hz definida como um


polinômio racional em z, como ilustra a chamada abaixo.
Figura 30 - Resultado da função iir

O código abaixo ilustra o projeto e a aplicação de um filtro IIR passa baixa de ordem 5,
usando o modelo de um filtro analógico de Chebyshev tipo I.

Figura 31 - Exemplo de projeto e realização de Filtro IIR em Scilab

Como pode ser visto, as especificações do filtro IIR são praticamente diretas, obtidas a
partir da avaliação do problema que se quer atacar, como as frequências de corte, o tipo
de filtro e as tolerâncias requisitadas. Contudo, a definição da ordem não o é, exigindo a
abordagem que será apresentada a seguir, com vistas a estimá-la, a partir das demais
especificações, para cada modelo de filtro possível de ser adotado.

Para um filtro de Butterworth, para uma dada atenuação desejada δ s e limiares de


frequência na banda passante ω p e de rejeição ω s, a ordem do filtro pode ser estimada
por

N=
log 10
( )
1
2
δs
−1

2 ∙ log 10
( )ωs
ωp

Obviamente que se o resultado for fracionado, deve ser arredondado para o inteiro
imediatamente superior. O seguinte fragmento de código Scilab mostra a determinação
da ordem de um filtro de Butterworth.
Figura 32 - Determinação da Ordem de um Filtro de Butterworth com o Scilab

Para um filtro Chebyshev, a ordem pode ser determinada pela seguinte equação:

N=
cosh −1 ( √ A 2−1
ϵ ) =
log 10 ( g+ √ g2−1 )
log 10 ( f + √ f 2−1 )
−1
cosh ( f )


ωs A 2−1
Onde f = e g=
ωp ϵ
2

O seguinte extrato de código Scilab exibe uma forma de realizar este cálculo:

Figura 33 - Determinação da Ordem de um Filtro de Chebyshev via Scilab

Você também pode gostar