wyklad5

Transkrypt

wyklad5
Projektowanie, analiza i zastosowanie filtrów
cyfrowych
Projektowanie filtrów FIR
Projektowanie filtrów IIR
Analiza filtrów
Implementacja filtrów
Projektowanie filtrów FIR
b = fir1(N, w, str, hwin) – metoda okien
w – zakres częstotliwości znormalizowanych [0, 1]
str = {low, high, bandpass, stopband}
hwin – funkcja okna, rozmiar N + 1
b = fir2(N, f, A, hwin) – próbkowanie w dziedzinie częstotliwości
f – wektor częstotliwości znormalizowanych - [0:step:1]
A – wektor modułów transmitacji
Projektowanie filtrów FIR
b = firls(N, f, A) – optymalizacja metodą najmniejszych kwadratów
b = firls(N, f, A, str)
str = {differentiator, Hilbert}
b = firpm(N, f, A) – optymalizacja Parksa- McClellana
b = firpm(N, f, A, str)
Projektowanie filtrów IIR
[b, a] = butter(N, w, str) – projekt cyfrowego filtru Butterwortha
str = {low, high, stop} , ‘stop’ dla w =[w1, w2];
[z, p, k] = butter(N, w, str) – wektory zer, biegunów, wzmocnienia
[b, a] = cheby1(N, rp, w,str) – projekt cyfrowego filtru
Czebyszewa
[z, p, k] = cheby1(N, rp, w, str)
[b, a] = cheby2(N, rs, w,str)
[z, p, k] = cheby2(N, rs, w, str)
Projektowanie filtrów IIR
Projekt cyfrowego filtru Czebyszewa
[b, a] = ellip(N, rp, rs, w,str)
[z, p, k] = ellip(N, rs, w, str)
Projektowanie filtrów IIR
Estymacja rzędu i charakterystyki
[N, w] = buttord(wp, ws, rp, rs)
wp – graniczna częstotliwość w paśmie przepustowym
ws – graniczna częstotliwość w paśmie zaporowym
[N, w] = cheb1ord(wp, ws, rp, rs)
[N, w] = cheb2ord(wp, ws, rp, rs)
[N, w] = ellipord(wp, ws, rp, rs)
Projektowanie filtrów FIR i IIR
graficzny interfejs użytkownika - fdatool
charakterystyka ampliudowa i fazowa filtru
Projektowanie filtrów FIR i IIR
graficzny interfejs użytkownika - fdatool
opóźnienie fazowe wprowadzane przez filtr
Projektowanie filtrów FIR i IIR
graficzny interfejs użytkownika - fdatool
odpowiedź impulsowa filtru
Projektowanie filtrów FIR i IIR
graficzny interfejs użytkownika - fdatool
rozmieszczenie zer filtru na okręgu jednostkowym
Analiza filtrów
[h, w] = freqz(b, a, N) – odpowiedź częstotliwościowa filtru
b – współczynniki licznika, a – współczynniki mianownika
w – wektor częstotliwości znormalizowanych - [0,pi]
[h, f] = freqz(b, a, N, fs)
fs – szybkość próbkowania, f – wektor częstotliwości w Hz
Analiza filtrów
Wywołanie funkcji bez wartości - freqz (b, a, N, fs)
Analiza filtrów
wykres zer z i biegunów p w okręgu jednostkowym
zplane(z, p)
[h, t] = impz(b, a, N) – odpowiedź impulsowa (N współczynników)
t = [1,2,3,…N]
[h, t] = impz(b, a, N, fs)
t – skala czasu
Analiza filtrów
Wywołanie funkcji bez wartości - impz(b, a, N, fs)
Analiza filtrów
graficzny interfejs użytkownika
fvtool
Zastosowanie filtrów
y = filter(b, a, x) – filtracja jednowymiarowa
b – współczynniki licznika
a – współczynniki mianownika
y = filter2(b, x) – filtracja dwuwymiarowa
b – macierz współczynników FIR
Zastosowanie filtrów
y = filtfilt(b, a, x) – filtracja zapewniająca
minimalizację fazy
y = fftfilt(h, x, N) – filtracja metodą overlapp / add
y = upfirdn(x, h, p, q) – nadpróbkowanie - p, filtracja FIR - h,
redukcja próbek - q
Zastosowanie filtrów
y = medfilt1(x, N) – jednowymiarowa filtracja medianowa
N – rząd filtru
y = medfilt2(x, [M, N]) – dwuwymiarowa filtracja
medianowa