Escolar Documentos
Profissional Documentos
Cultura Documentos
Especificaes
Aproximaes
Implementaes
Especificaes absolutas
Especificaes relativas
Escala dB =
Consideraes:
Banda de Passagem
Banda de Corte
Banda de Transio
1 = 0,0144
2 = 0,0032
10
Objetivo:
11
Fceis de implementar
Eficientes
TDF pode ser usada em sua implementao
12
14
Abordagem analgica
Abordagem de analgico para digital
Abordagem digital direta
15
....
16
17
1.e-jw
, |w| wc
, wc < |w|
18
19
e = (M - 1)/2
Essa operao chamada de janelamento
20
h[n] = hd[n].w[n]
21
22
23
24
Observaes:
25
26
27
Janela Retangular
Resposta em frequncia
28
29
30
31
32
33
34
Janela de Hanning
35
Janela de Hamming
36
Janela de Blackman
37
38
Janela de Kaiser
39
Janela de Kaiser
40
Janela de Kaiser
41
Janela de Kaiser
O comprimento M
O parmetro
42
Janela de Kaiser
considerando 1 = 2
w = wS - wP
A = -20log10
43
Janela de Kaiser
Janela de Kaiser
45
Janela de Kaiser
Janela de Kaiser
A resposta ao impulso
47
Implementaes no MatLab
48
Funo 1:
function hd = ideal_lp(wc, M)
% Ideal low pass filter
% wc = cutoff frequency
% M = length of the ideal filter
alpha = (M - 1)/2
n = [0:(M-1)];
m = n - alpha + eps;
hd = sin(wc*m)./(pi*m);
Funo 2:
function [db, mag, pha, w] = freqz_m(b, a)
% Versao modificada da funcao freqz
[H, w] = freqz(b, a, 1000, 'whole');
H = (H(1:501))';
w = (w(1:501))';
mag = abs(H);
db = 20*log10((mag + eps)/(max(mag)));
pha = angle(H);
49
Exemplo 1:
50
Exemplo 1:
wp = 0.2*pi; ws = 0.3*pi;
tr_width = ws - wp;
M = ceil(6.6*pi/tr_width) + 1
n = [0:M-1];
wc = (ws + wp)/2;
hd = ideal_lp (wc, M);
w_ham = (hamming(M))';
h = hd.*w_ham;
[db, mag, pha, w] = freqz_m(h, [1]);
delta_w = 2*pi/1000;
Rp = -(min(db(1:wp/delta_w+1)))
As = -round(max(db(ws/delta_w+1:501)))
51
Exemplo 1:
M = 67
alpha = 33
Rp = 0,0394
As = 52
stem(hd)
stem(h)
stem(mag)
stem(w_ham)
52
Exemplo 2:
53
Exemplo 3:
Usando uma janela de Kaiser, projete um filtro rejeitafaixa de comprimento 45 com atenuao na banda de
corte de 60 dB
54
Exemplo 3:
Observe que a largura da banda de transio
no foi dada
Ela ser encontrada a partir do comprimento
M = 45 e do parmetro da janela de Kaiser
Das equaes de projeto da janela de Kaiser,
podemos determinar a partir de As:
55
Exemplo 3:
Vamos agora implementar a janela de Kaiser e
observar a atenuao na banda de corte
M = 45; As = 60; n=[0:M-1];
beta = 0.1102*(As - 8.7)
beta = 5,6533
w_kai = (kaiser(M, beta))';
wc1 = pi/3; wc2 = 2*pi/3;
hd = ideal_lp(wc1, M) + ideal_lp(pi, M) - ideal_lp(wc2, M);
h = hd.*w_kai;
[db, mag, pha, w] = freqz_m(h, [1]);
56
Exemplo 3:
Problema.
Abaixo de 60 dB
57
Exemplo 3:
Observe que, com esse valor, a mnima atenuao da
banda de corte menor que 60 dB (em mdulo)
Assim,
precisamos aumentar para aumentar a
atenuao para 60 dB.
Vamos colocar um acrscimo no valor calculado de
para conseguir uma atenuao maior
Observamos que, assim, a atenuao fica maior que 60
dB na banda de corte
58
Exemplo 3:
Vamos agora implementar a janela de Kaiser e
observar a atenuao na banda de corte
M = 45; As = 60; n=[0:M-1];
beta = 0.1102*(As - 8.7) + 0.3
beta = 5,9533
w_kai = (kaiser(M, beta))';
wc1 = pi/3; wc2 = 2*pi/3;
hd = ideal_lp(wc1, M) + ideal_lp(pi, M) - ideal_lp(wc2, M);
h = hd.*w_kai;
[db, mag, pha, w] = freqz_m(h, [1]);
59
Exemplo 3:
60
62
Ele mais alto perto das fronteiras das bandas e menor quanto
mais distante delas
64
Otimizao
Exemplo:
66
67
68
69
70
Escala Relativa
71
72
Escala Relativa
73
Escala Relativa
74
Escala Relativa
75
Escala Relativa
Ento temos :
76
Observao:
77
78
Filtro de Butterworth
79
Filtro de Butterworth
80
Filtro de Butterworth
Do grfico, podemos observar:
81
Filtro de Butterworth
Sua funo de sistema Ha(s) :
82
Filtro de Butterworth
Para projetar o filtro, precisamos encontrar as
razes e plos da funo do sistema
Os plos so dados por:
83
Filtro de Butterworth
O FPB analgico especificado pelos
parmetros P, S, RP e AS
Assim, a essncia do projeto no caso do filtro
de Butterworth obter a ordem N e a
frequncia de corte dada c
84
Filtro de Butterworth
Assim, dadas essas especificaes, queremos:
85
Filtro de Butterworth
Resolvendo as equaes para N = c, temos:
86
Filtro de Butterworth
Como N deve ser inteiro, ento consideramos:
N = N
87
Filtro de Butterworth
Para satisfazer exatamente as especificaes
do projeto em S:
88
89
Soluo:
90
Soluo:
Podemos escolher c entre esses dois valores, por
exemplo c = 0,5
Temos que projetar um filtro Butterworth com N = 3 e
c = 0,5
Ou seja:
91
Soluo:
Os plos pk da funo anterior podem ser calculados no MatLab
como:
92
Soluo:
Para termos um filtro causal e estvel, usamos os
plos do semi-plano esquerdo:
93
Soluo:
Vamos ajustar o numerador para que o ganho na
frequncia zero seja unitrio
Ou seja, no denominador, quando s = 0, temos:
94
Soluo:
Para transformar o filtro em digital, podemos usar o
mtodo de transformao bilinear
Nele, consideramos:
onde T um parmetro
OBS: Explicao nas notas de aula.
95
Soluo:
No nosso caso, consideramos T = 1:
96
Filtro de Chebyshev
Existem dois tipos de filtros de Chebyshev
97
Filtro de Chebyshev
98
Filtro de Chebyshev
99
Filtro de Chebyshev
100
Filtro de Elptico
Esses filtros apresentam ondulaes na banda
de passagem e de corte
So similares em magnitude a filtros FIR
equirriple
So filtros timos no sentido que eles alcanam
a menor ordem N para as dadas especificaes
So muito difceis de projetar e analisar
101
Filtro de Elptico
A resposta quadrtica de magnitude dada por:
102
Filtro de Elptico
Onde:
1
103
Transformaes em Frequncia
104
Transformaes em Frequncia
105
Transformaes em Frequncia
106
Transformaes em Frequncia
De forma que:
107
Transformaes em Frequncia
108
Transformaes em Frequncia
109
Transformaes em Frequncia
110
111
112
Referncias:
113