Filtr o nieskończonej odpowiedzi impulsowej: Różnice pomiędzy wersjami

Przejdź do nawigacji Przejdź do wyszukiwania
m
drobne techniczne, drobne redakcyjne
(drobne redakcyjne)
m (drobne techniczne, drobne redakcyjne)
'''Filtr o nieskończonej odpowiedzi impulsowej''' ('''IIR''' filter {{ang.|infiniteInfinite impulseImpulse response, IIRResponse}}) – rodzaj [[filtr cyfrowy|filtru cyfrowego]], który w odróżnieniu od filtrów [[Filtr o skończonej odpowiedzi impulsowej|FIR]] jest układem rekursywnym. IIR oznacza nieskończoną odpowiedź impulsową (w polskiej literaturze stosowany jest również skrót NOI). Znaczy to tyle, że reakcja na pobudzenie o skończonym czasie trwania jest teoretycznie nieskończenie długa. Jest to efektem występowania pętli sprzężenia zwrotnego widocznej na schemacie blokowym (porównaj ze schematem filtru FIR).
: [[Plik:Schemat IIR 2.svg|center|Filtr IIR]]
 
[[Plik:Schemat IIR 2.svg|center|Filtr IIR]]
 
Na powyższym schemacie moduły <math>z^{-1}</math> oznaczają opóźnienie sygnału o jedną próbkę, natomiast <math>a_{i}</math> oraz <math>b_{i}</math> są współczynnikami filtru.
[[transmitancja operatorowa|Transmitancję]] filtru IIR można opisać:
: <math>H(z) = \frac{Y(z)} {X(z)}</math>
gdzie:
gdzie: Y(z) – transformata Z wyjścia, X(z) – transformata Z wejścia
: <math>Y(z)</math> – transformata Z wyjścia,
 
gdzie: Y(z) – transformata Z wyjścia, <math>X(z)</math> – transformata Z wejścia
lub po rozpisaniu wzorów na wielomiany opisujące bieguny i zera:
: <math>H(z) = \frac{a_{0}+a_{1}z^{-1}+...+a_{p}z^{-p}} {1-(b_{0}z^{-1}+...+b_{q}z^{-q})}</math>
Rozważmy działanie filtru o nieskończonej odpowiedzi impulsowej na prostym przykładzie. Załóżmy, że chcemy estymować średni koszt użytkowania energii elektrycznej na podstawie rachunku za prąd z bieżącego miesiąca <math>x(n)</math> oraz oszacowanej wartości z poprzedniego miesiąca <math>y(n-1)</math>:
 
: <math>y(n) = \frac{y(n-1) + x(n)}{2} = 0{,}5\cdot y(n-1) + 0{,}5 \cdot x(n) </math>
gdzie:
 
: <math>n</math> – numer miesiąca,
gdzie: <math>n</math> jest numerem miesiąca, <math>x(n)</math> wartością rachunku za bieżący miesiąc, <math>y(n)</math> oszacowaną wartością w bieżącym miesiącu, a <math>y(n-1)</math> oszacowaniem wartości średniej w poprzednim miesiącu.
: <math>x(n)</math> – wartość rachunku za bieżący miesiąc,
: <math>y(n)</math> – oszacowana wartość w bieżącym miesiącu,
: <math>y(n-1)</math> – oszacowanie wartości średniej w poprzednim miesiącu.
 
Dla <math>n=1</math>, pojawia się problem brzegowy, ponieważ nie dysponujemy oszacowaniem <math>y(0)</math> - przyjmiemy, że <math>y(0)=0</math>. Przykładowo:
: <math>y(21) = 0{,}5\cdot x(21) + 0{,}5 \cdot y(10) = 0{,}5 \cdot 1224 + 0{,}5 \cdot 270 = 19{,}512</math>
 
: <math>y(12) = 0{,}5\cdot x(12) + 0{,}5 \cdot y(01) = 0{,}5 \cdot 2412 + 0{,}5 \cdot 027 = 1219{,}5</math>
 
<math>y(2) = 0{,}5\cdot x(2) + 0{,}5 \cdot y(1) = 0{,}5 \cdot 12 + 0{,}5 \cdot 27 = 19{,}5</math>
 
Wartości kolejnych próbek wejściowych <math>x(n)</math> (rachunków) oraz szacowanych wartości średnich <math>y(n)</math> przedstawiono w tabeli:
 
:{| class="wikitable" style="text-align:center"
|! width="80px" | <math>n</math>
|! width="30px" | 1
|! width="30px" | 2
|! width="30px" | 3
|! width="30px" | 4
|! width="30px" | 5
|! width="30px" | 6
|! width="30px" | 7
|! width="30px" | 8
|! width="30px" | 9
|! width="30px" | 10
|! width="30px" | 11
|! width="30px" | 12
|-
|! <math>x(n)</math>
| 24
| 27
| 0
|-
|! <math>y(n)</math>
| 12
| 19,5
 
Wykres próbek wejściowych <math>x(n)</math> oraz wyjściowych <math>y(n)</math> przedstawiono na wykresie poniżej (sygnał określony jest tylko dla dyskretnych wartości <math>n</math>, natomiast linie pomagają zaobserwować trend sygnału):
: [[FilePlik:Przykład filtru NOI.svg|600px|Przykładowy uśredniający filtr NOI]]
 
[[File:Przykład filtru NOI.svg|600px|Przykładowy uśredniający filtr NOI]]
 
Podobnie jak poprzednio, na podstawie przykładu można wysnuć następujące wnioski:
 
Realizację filtru przestawiono na rysunku poniżej:
: [[FilePlik:Noi diag ex.svg|300px|Przykładowy uśredniający filtr NOI]]
 
[[File:Noi diag ex.svg|300px|Przykładowy uśredniający filtr NOI]]
 
== Zobacz też ==

Menu nawigacyjne