1 - ICAD 2013

Download Report

Transcript 1 - ICAD 2013

Przetwarzanie sygnałów
Filtry
dr inż. Michał Bujacz
[email protected]
Godziny przyjęć:
poniedziałek 10:00-11:00
środa 12:00-13:00
„Lodex” 207
Filtry cyfrowe – SOI i NOI
Filtry dzielimy również na:
1
0.8
filtry o skończonej
odpowiedzi impulsowej
(SOI/FIR)
0.6
0.4
0.2
0
tzw. filtry nierekursywne
filtry o nieskończonej
odpowiedzi impulsowej
(NOI/IIR)
0
5
10
15
20
5
10
15
20
1
0.8
0.6
0.4
0.2
tzw. filtry rekursywne
0
0
2
Filtr cyfrowy
y(n) = x(n)  h(n)
Y(z) = X(z).H(z)
M
N
n 1
n2
yk    bnxk  n  1   an  yk  n  1
yk  
b1xk   b2xk  1  b3xk  2  
 a2yk  1  a3 yk  2  a4 yk  3  
Równanie różnicowe filtru
M
N
n 1
n2
yk    bnxk  n  1   an  yk  n  1
*
Jeżeli wszystkie współczynniki a(n) są zerowe to
równanie różnicowe opisuje filtr cyfrowy SOI, w
przeciwnym przypadku filtr NOI
SOI – ang. Finite Impulse Response (FIR)
NOI – ang. Infinite Impulse Response (IIR)
4
Implementacja NOI z pętlą
autoregresji
współczynniki
ruchomej średniej
x(k)
b0
współczynniki
autoregresji
a1=1
z-1
z-1
b1
x(k-1)
a2
z-1
a3
z-1
x(k-M)
y(k-1)
z-1
b2
x(k-2)
y(k)
y(k-2)
z-1
bM
aN
y(k-N)
5
Przekształcenie z
Ogólne równanie różnicowe filtru cyfrowego:
M
N
n 0
n 1
yk    bn xk  n    an  yk  n 
w dziedzinie przekształcenia z można zapisać w
postaci:
zera filtru
M
n
(pierwiastki licznika)
b
z

n
Y z 
H z  
 n 0N
bieguny filtru
X z 
n
1   an z
(pierwiastki
n 1
mianownika)
6
Płaszczyzna z
Zmienną z definiuje się:
z e
j
Im(z)
z=j
radiany
na okres
p
2
f
  2p
fs
r=1
z=-1  =p
fs
f 
2
pulsacja unormowana
względem fs
z=1
0
=2p f  f s Re(z)
3 p
2
z=-j
Filtr jest stabilny gdy bieguny filtru leżą wewnątrz
okręgu jednostkowego.
7
Płaszczyzna z
%MATLAB
zplane(0.2*ones(1,5),1)
0.4π
0.8π
Charakterystyka
amplitudowa
Charakterystyka amplitudowa
1
1
Amplituda
tzw. zero filtru
0.6
0.4
Imaginary part
0.8
0.5
0
-0.5
0.2
-1
0
0
20
40
60
f [Hz]
80
100
-1
-0.5
0
Real part
0.5
1
8
Przykładowy prosty filtr NOI
Rozważmy prosty filtr NOI:
yn  yn 1  xn
Y z 
1
H z  

1
X z  1  z
zero z=0
H z  
a(1)
1
1  z 1
z
z

z z
biegun z=
a(2)=-
9
Magnitude Response (dB)
Prosty filtr NOI
0.5
  0.5
0
5
0
-5
0
0.2
0.4
0.6
0.8
Normalized frequency (Nyquist == 1)
1
0
0.2
0.4
0.6
0.8
Normalized frequency (Nyquist == 1)
1
0
-0.5
-1
-1
-0.5
0
0.5
Real part
1
Phase (degrees)
Imaginary part
1
10
-10
-20
-30
10
Prosty filtr NOI
5
7
x 10
6
5
1
4
0.8
=1.5>1
3
=0.5<1
0.6
2
0.4
1
0.2
0
0
0
5
10
pł. z
0
10
20
pł. z
30
11
Projektowanie filtrów NOI
Metoda bezpośrednia - aproksymacyjna:
%
%
%
%
%
MATLAB
[b,a]=yulewalk(n,f,m)
n – rząd filtru
f – próbki char. częstotl. z zakresu <0,1>
m – dyskretne częstotl. z zakresu <0,1>
f = [0 0.6 0.6 1];
m = [1 1 0 0];
[b,a] = yulewalk(8,f,m);
[h,w] = freqz(b,a,128);
plot(f,m,w/pi,abs(h),'--')
Nieliniowa faza!
Zobacz też ‘zplane(b,a)’
12
Projektowanie filtrów NOI
Metoda niezmienności odpowiedzi impulsowej:
% MATLAB
Wyznacz odpowiedzi impulsowe
tych filtrów
%dolnoprzepustowy Butterwotha
[b,a]=butter(5,0.4)
%pasmowoprzepustowy Czebyszewa typu I
[b,a]=cheby1(4,1,[.4 .7])
%górnoprzepustowy Czebyszewa typu II
[b,a]=cheby2(6,60,.8,’high’)
%pasmowozaporowy eliptyczny
[b,a] = ellip(3,1,60,[.4 .7],’stop’);
13
Porównanie filtrów SOI i NOI
SOI
NOI
 z definicji stabilne
 mogą być niestabilne
 łatwe projektowanie
 bardziej złożone projektowanie
 łatwo zapewnić liniową fazę
 nieliniowa faza
 uzyskanie stromej
 możliwość uzyskiwania bardzo
charakterystyki wymaga
dużego rzędu filtru
 skończoną dokładność
reprezentacji współczynników
filtru nie jest dokuczliwa
stromej charakterystyki przy
niskim rzędzie filtru
 problemy implementacyjne
z uwagi na skończoną
dokładność reprezentacji
współczynników filtru
14