4.6 IIR Filter - Infinite Impulse Response
Im Gegensatz zu FIR-Filtern können IIR-Filter (Infinite Impulse Response) eine unendliche Impulsantwort haben. Sie verwenden Rückkopplung, um die Filterungseigenschaften zu bestimmen, und können daher mit einer geringeren Anzahl von Berechnungen eine hohe Filtergüte erreichen.
4.6.1 Formel
Die allgemeine Gleichung für einen IIR-Filter lautet:
Dabei sind:
- \( y[n] \): Ausgangssignal zum Zeitpunkt \( n \)
- \( x[n] \): Eingangssignal zum Zeitpunkt \( n \)
- \( b_k \): Koeffizienten für das Eingangssignal (Feedforward)
- \( a_j \): Koeffizienten für das Ausgangssignal (Feedback)
- \( M \): Ordnung des Feedforward-Teils
- \( N \): Ordnung des Feedback-Teils
Der erste Term entspricht dabei dem FIR-Anteil (Feedforward-Pfad), während der zweite Term die Rückkopplungskomponente (Feedback-Pfad) darstellt.
Die Formel entspricht folgenden Blockdiagramm:
4.6.2 Eigenschaften
IIR-Filter haben mehrere charakteristische Eigenschaften:
-
Unendliche Impulsantwort: Aufgrund der Rückkopplung kann die Impulsantwort theoretisch unendlich lang sein.
-
Effizienz: IIR-Filter können mit weniger Koeffizienten eine ähnliche Filterleistung wie FIR-Filter erzielen. Typischerweise benötigt man nur 10-20% der Koeffizientenanzahl eines vergleichbaren FIR-Filters.
-
Stabilität: Die Stabilität eines IIR-Filters hängt von den Koeffizienten ab. Ein IIR-Filter ist stabil, wenn alle Pole innerhalb des Einheitskreises in der z-Ebene liegen. Bei ungünstiger Wahl der Koeffizienten kann der Filter instabil werden und aufschaukeln.
-
Kausalität: IIR-Filter sind kausal, d.h. sie verwenden nur aktuelle und vergangene Werte des Eingangs- und Ausgangssignals.
-
Phaseneigenschaften: IIR-Filter haben in der Regel keine lineare Phase, was zu Phasenverzerrungen führen kann. Dies ist ein wichtiger Unterschied zu FIR-Filtern, die mit linearer Phase entworfen werden können.
-
Quantisierungsempfindlichkeit: IIR-Filter sind empfindlicher gegenüber Quantisierungseffekten und Rundungsfehlern bei Festkomma-Implementierungen als FIR-Filter.
4.6.3 Entwurfsmethoden
Für den Entwurf von IIR-Filtern gibt es verschiedene klassische Methoden:
- Butterworth-Filter: Maximal flacher Frequenzgang im Durchlassbereich
- Chebyshev-Filter (Typ I und II): Erlauben Welligkeit im Durchlass- oder Sperrbereich für steilere Flanken
- Elliptische Filter (Cauer): Welligkeit in beiden Bereichen, steilste Flanken bei gegebener Ordnung
- Bessel-Filter: Optimale Gruppenlaufzeit (beste Phaseneigenschaften)
Hinweis: IIR-Filter bilden also im Wesentlichen analoge Filter in der digitalen Domäne nach, indem sie die Übertragungsfunktion eines analogen Filters diskretisieren (z.B. mittels Bilineartransformation).
4.6.4 Einheitskreis und Stabilität
Grundlagen
Die z-Ebene ist eine grafische Darstellung komplexer Zahlen, in der wir die Pole und Nullstellen eines digitalen Filters visualisieren können. Der Einheitskreis (Kreis mit Radius 1 um den Ursprung) spielt dabei eine zentrale Rolle:
- Punkte auf dem Einheitskreis entsprechen verschiedenen Frequenzen
-
Die Position auf dem Einheitskreis bestimmt die Frequenz:
- z = +1 (rechts): DC (0 Hz)
- z = -1 (links): Nyquist-Frequenz (fs/2)
- z = j (oben): fs/4
- z = -j (unten): 3·fs/4
Stabilität von IIR-Filtern
Ein IIR-Filter ist stabil, wenn alle Pole innerhalb des Einheitskreises liegen:
- |z| < 1 für alle Pole → Filter ist stabil
- |z| ≥ 1 für mindestens einen Pol → Filter ist instabil
Nullstellen können überall liegen, auch außerhalb des Einheitskreises, ohne die Stabilität zu beeinträchtigen.
Pole und Nullstellen: Wirkung auf den Frequenzgang
Grundprinzip:
- Nullstellen dämpfen Frequenzen in ihrer Nähe
- Pole verstärken Frequenzen in ihrer Nähe
Nullstellen auf dem Einheitskreis:
- Erzeugen eine starke Dämpfung bei der entsprechenden Frequenz
- Beispiel: Nullstelle bei z = -1 dämpft die Nyquist-Frequenz (Tiefpass)
- Beispiel: Nullstelle bei z = +1 dämpft DC (Hochpass)
Pole nahe dem Einheitskreis:
- Erzeugen Verstärkung/Resonanz bei der entsprechenden Frequenz
- Je näher am Einheitskreis, desto stärker die Verstärkung
- Müssen innerhalb bleiben (Stabilitätsbedingung!)
Filtertypen im Pol-Nullstellen-Diagramm
Tiefpass:
- Nullstellen bei z = -1 (dämpfen hohe Frequenzen)
- Pole bei niedrigen Frequenzen (nahe z = +1)
- Ergebnis: Niedrige Frequenzen werden durchgelassen
Hochpass:
- Nullstellen bei z = +1 (dämpfen niedrige Frequenzen)
- Pole bei hohen Frequenzen (nahe z = -1)
- Ergebnis: Hohe Frequenzen werden durchgelassen
Bandpass:
- Nullstellen bei z = +1 und z = -1 (dämpfen DC und Nyquist)
- Konjugiert komplexes Polpaar bei der Mittenfrequenz
- Ergebnis: Nur ein Frequenzband wird durchgelassen
Notch-Filter (Bandsperre):
- Konjugiert komplexes Nullstellenpaar auf dem Einheitskreis bei der Sperrfrequenz
- Konjugiert komplexes Polpaar nahe den Nullstellen (aber innerhalb!)
- Ergebnis: Schmale Frequenz wird ausgelöscht
Konjugiert komplexe Pole und Nullstellen
Für reelle Filterkoeffizienten (was bei praktischen Filtern immer der Fall ist) gilt:
Pole und Nullstellen mit Imaginärteil müssen immer paarweise auftreten:
- Wenn ein Pol bei z = a + jb liegt, muss auch ein Pol bei z = a - jb existieren
- Dies sind konjugiert komplexe Paare (gespiegelt an der reellen Achse)
Warum?
Nur so bleiben die Filterkoeffizienten reell, wenn wir von der Pol-Nullstellen-Form zurück zur Differenzengleichung rechnen.
Beispiel:
- Bandpass 2. Ordnung: 1 konjugiert komplexes Polpaar (2 Pole)
- Bandpass 4. Ordnung: 2 konjugiert komplexe Polpaare (4 Pole)
Reelle Pole:
- Liegen auf der reellen Achse
- Können einzeln auftreten
- Beispiel: Einfacher Tiefpass 1. Ordnung mit einem Pol bei z = 0.5
Zusammenhang: Filterordnung und Pole
Die Filterordnung gibt die Anzahl der Pole an:
- 1. Ordnung: maximal 1 Pol (muss reell sein)
- 2. Ordnung: 2 Pole (entweder 2 reelle oder 1 konjugiert komplexes Paar)
- 50. Ordnung: 50 Pole (z.B. 25 konjugiert komplexe Paare)
Höhere Ordnung bedeutet:
- Steilere Filterflanken
- Mehr Pole nahe dem Einheitskreis bei der Grenzfrequenz
- Bessere Annäherung an ideale Filter
Merksätze
Stabilität: Alle Pole müssen innerhalb des Einheitskreises liegen (|z| < 1)
Nullstellen dämpfen, Pole verstärken Frequenzen in ihrer Nähe
Nullstellen auf dem Einheitskreis erzeugen starke Dämpfung bei dieser Frequenz
Pole nahe dem Einheitskreis erzeugen Verstärkung/Resonanz bei dieser Frequenz
Konjugiert komplexe Paare: Pole und Nullstellen mit Imaginärteil treten immer paarweise auf (für reelle Filterkoeffizienten)
Position auf dem Einheitskreis = Frequenz: z = +1 (DC), z = -1 (Nyquist), z = j (fs/4)
Filterordnung = Anzahl der Pole
Von Pol-Nullstellen zu Filterkoeffizienten
Der Filter-Design-Prozess läuft typischerweise so ab:
- Spezifikationen definieren (Filtertyp, Grenzfrequenz, Ordnung)
- Pole und Nullstellen berechnen (geometrische Platzierung in der z-Ebene)
- Koeffizienten berechnen (durch Ausmultiplizieren der Faktoren)
- Implementierung (Differenzengleichung mit a- und b-Koeffizienten)
In MATLAB geschieht dies automatisch:
[z, p, k] = butter(4, 0.5); % Schritt 2: Pole (p) und Nullstellen (z)
[b, a] = zp2tf(z, p, k); % Schritt 3: Koeffizienten berechnen
Die Funktion zp2tf (zero-pole to transfer function) wandelt die Pol-Nullstellen-Form in die Koeffizienten-Form um, die für die Implementierung benötigt wird.
4.6.5 Übertragungsfunktion aus PN-Diagramm
TBD

