1. Definieren Sie die Impulsantwort h eines idealen Tiefpasses mit einer normalisierten kritischen Frequenz von 0.15.
2. Definieren Sie die Impulsantwort.
Da ein realisierbarer Filter mit endlicher Länge über eine finite Impulsantwort verfügen muss, wird dieses ideale Ansprechverhalten auf eine handhabbare Anzahl von Ausdrücken verkürzt.
3. Um zu prüfen, wie sich eine direkte Verkürzung ohne Fenster auf den Frequenzgang auswirkt, definieren Sie einen Filter der Länge N, der einfach aus den zentralen N Ausdrücken des idealen Ansprechverhaltens besteht und verschoben wurde, damit der Filter kausal wird.
Legen Sie in diesem Beispiel N auf N2 fest und beobachten Sie, wie sich eine zunehmende Anzahl von Ausdrücken in den unten dargestellten Beispielen auswirkt.
4. Wenden Sie Funktion für das Impulsansprechverhalten auf den Bereich von Ausdrücken an und stellen Sie die resultierende Funktion grafisch dar.
5. Berechnen Sie mithilfe der Funktion gain den Frequenzgang für dieses verkürzte Signal. Definieren Sie jedoch zuerst den Frequenzbereich (Vielfaches der Beispielfrequenz).
6. Erfassen Sie die diskreten Beträge der Funktion gain in einem neuen Array.
7. Ermitteln Sie den maximalen Betrag von G und die zugehörige Frequenz.
Wenn die Anzahl von Ausdrücken N1 = 63 beträgt, dann tritt der maximale Gewinn von 1.083 bei Frequenz freq = 0.134 auf.
Ist die maximale Anzahl von Ausdrücken gleich N2 = 127, dann tritt der maximale Gewinn von 1.092 bei Frequenz freq = 0.142 auf, also näher am Rand der Bandbreite.
Bei Frequenz freq = 0.2 fällt der Gewinn fast auf null. Vergleichen Sie in den folgenden Beispielen den Gewinn bei dieser Frequenz.
8. Stellen Sie die Funktion gain über den definierten Bereich grafisch dar und zeigen Sie die Frequenz, bei der der Betrag am größten ist.
Die Überschwingung am Rand des Durchlassbereichs wird auch als Gibbsches Phänomen bezeichnet. Durch die Erhöhung des Filtergrads N von N1 = 63 auf N2 = 127 wird die Überschwingung näher an den Rand der Bandbreite verschoben, die Amplitude jedoch nicht verringert.
Der Übergang von 1 nach 0 wird schärfer, wenn der Filtergrad N erhöht wird.
Eine Möglichkeit, einen etwas wünschenswerteren Frequenzgang zu erzeugen, besteht darin, die ideale Impulsantwort zu fenstern, sodass der Übergang zu 0 an den Rändern der gefilterten Impulsantwort weicher ist. Fenster werden Ausdruck für Ausdruck mit einem Antwortvektor multipliziert.
Das Dreiecksfenster
Funktion triangular gibt das Dreiecksfenster oder Barlett-Fenster der Breite N zurück.
Das j-te Element des resultierenden Vektors wird angegeben durch:
für
für
1. Wenden Sie die Funktion auf die Filterordnung N an, und plotten Sie den resultierenden Vektor.
2. Berechnen Sie die in einem Fenster dargestellte Impulsantwort.
3. Verwenden Sie die Funktion gain, um den Gewinn dieses Filters in dB mit den Koeffizienten vt bei Frequenz k/1000 zu berechnen und zu plotten.
Das Hanning-Fenster
Die Funktion hanning gibt das Hanning-Fenster der Breite N zurück.
Das k-te Element des resultierenden Vektors wird angegeben durch:
1. Wenden Sie die Funktion auf die Filterordnung N an, und plotten Sie den resultierenden Vektor.
2. Berechnen Sie die in einem Fenster dargestellte Impulsantwort.
3. Verwenden Sie die Funktion gain, um den Gewinn dieses Filters in dB mit dem Koeffizienten vhn bei Frequenz k/1000 zu berechnen und zu plotten.
Die Sperrbereichswelligkeit beträgt etwa -45 dB.
Das Hamming-Fenster
Die Funktion hamming gibt das Hamming-Fenster der Breite N zurück.
Das k-te Element des resultierenden Vektors wird angegeben durch:
1. Wenden Sie die Funktion auf die Filterordnung N an, und plotten Sie den resultierenden Vektor.
2. Berechnen Sie die in einem Fenster dargestellte Impulsantwort.
3. Verwenden Sie die Funktion gain, um den Gewinn dieses Filters in dB mit den Koeffizienten vhm bei Frequenz k/1000 zu berechnen und zu plotten.
Die Sperrbereichswelligkeit beträgt etwa -55 dB.
Das Blackman-Fenster
Die Funktion blackmangibt das Blackman-Fenster der Breite N zurück.
Das k-te Element des resultierenden Vektors wird angegeben durch:
1. Wenden Sie die Funktion auf den Filterordnung N an, und plotten Sie den resultierenden Vektor.
2. Berechnen Sie die in einem Fenster dargestellte Impulsantwort.
3. Verwenden Sie die Funktion gain, um den Gewinn dieses Filters in dB mit den Koeffizienten vb bei Frequenz k/1000 zu berechnen und zu plotten.
Die Sperrbereichswelligkeit beträgt etwa -75 dB.
Das Nuttall-Fenster
Die Funktion nuttallgibt das Nuttall-Fenster der Breite N zurück.
Das k-te Element des resultierenden Vektors wird angegeben durch:
1. Wenden Sie die Funktion auf die Filterordnung N an, und plotten Sie den resultierenden Vektor.
2. Berechnen Sie die in einem Fenster dargestellte Impulsantwort.
3. Verwenden Sie die Funktion gain, um den Gewinn dieses Filters in dB mit dem Koeffizienten vnu bei Frequenz k/1000 zu berechnen und zu plotten.
Die Sperrbereichswelligkeit beträgt etwa -105 dB.
Das verjüngte Rechteckfenster
Die Funktion taprectgibt das verjüngte rechteckige Fenster der Breite N zurück.
Das Fenster ist in der Mitte in einer Höhe von 1 horizontal und verfügt über verjüngte Ränder, die durch Kosinuskurven gebildet werden. Die rechte und die linke Seite haben folgende Werte:
dabei gilt:
und n ist definiert im Bereich 0 bis h.
1. Wenden Sie die Funktion auf die Filterordnung N an, und plotten Sie den resultierenden Vektor.
2. Berechnen Sie die in einem Fenster dargestellte Impulsantwort.
3. Verwenden Sie die Funktion gain, um den Gewinn dieses Filters in dB mit den Koeffizienten vtr bei Frequenz k/1000 zu berechnen und zu plotten.
Das Gaußsche Fenster
Die Funktion gaussian gibt das Gauß-Fenster mit der Breite N und dem Parameter a zurück. Die Zahl a ist eine reelle Zahl, die proportional zur Umkehrung der Gaußschen Varianz ist, und die Bedingung 2 < a < 20 erfüllen muss.
Das k-te Element des resultierenden Vektors wird angegeben durch:
1. Wenden Sie die Funktion auf die Filterordnung N an, und plotten Sie den resultierenden Vektor.
2. Berechnen Sie die in einem Fenster dargestellte Impulsantwort.
3. Verwenden Sie die Funktion gain, um den Gewinn dieses Filters in dB mit den Koeffizienten vg bei Frequenz k/1000 zu berechnen und zu plotten.
Die Sperrbereichswelligkeit beträgt etwa -95 dB.
Das Kaiser-Fenster
Die Funktion kaiser gibt das Kaiser-Fenster mit der Breite N und dem Parameter b zurück. Der Parameter muss 2≤b≤20 genügen.
Das k-te Element des resultierenden Vektors wird angegeben durch:
1. Wenden Sie die Funktion auf die Filterordnung N an, und plotten Sie den resultierenden Vektor.
2. Berechnen Sie die in einem Fenster dargestellte Impulsantwort.
3. Verwenden Sie die Funktion gain, um den Gewinn dieses Filters in dB mit den Koeffizienten vk bei Frequenz k/1000 zu berechnen und zu plotten.
Die Sperrbereichswelligkeit beträgt etwa -75 dB.
Das Tschebyscheff-Fenster
Die Funktion cheby gibt ein Tschebyscheff- oder Equiripple-Fenster der Breite N und dem Parameter b zurück. Der Parameter b legt die maximale Nebenkeulenwelle in dB fest und muss die Bedingung 1 < b erfüllen, wobei in der Regel b > 50 gilt. Dieses Fenster muss eine ungerade Länge haben. Das Tschebyscheff-Fenster wird berechnet, indem die inverse diskrete Fourier-Transformation eines Tschebyscheff-Polynoms bei Punkten am Einheitskreis ausgewertet wird. Weitere Informationen zu diesem Fenster finden Sie unter Programs for Digital Signal Processing (IEEE Press).
1. Wenden Sie die Funktion auf die Filterordnung N an, und plotten Sie den resultierenden Vektor.
2. Berechnen Sie die in einem Fenster dargestellte Impulsantwort.
3. Verwenden Sie die Funktion gain, um den Gewinn dieses Filters in dB mit den Koeffizienten vc bei Frequenz k/1000 zu berechnen und zu plotten.
Die Sperrbereichswelligkeit beträgt etwa -110 dB.
Das Kosinus-verjüngte Fenster
Die Funktion costaper ähnelt der Funktion taprect insofern, als sie ein rechteckiges Fenster mit verjüngten Ausläufern zurückgibt, die einer Kosinuskurve folgen. Sie können jedoch im Parameter a den Prozentanteil des Fensters angeben, der mit einer Kosinuskurve erstellt werden soll. Parameter a sollte einen Wert zwischen 0 und 1 haben. Bei Angabe des Wertes 0 wird ein rechteckiges Fenster zurückgegeben, bei Angabe des Wertes 1 eine erhöhte Kosinuskurve.
Für den verjüngten Teil des Fenster wird der Wert des k. Elements gegeben durch:
wobei M für die Anzahl von Fensterelementen steht, die in einen der Ausläufer fallen, und durch a-N gegeben ist:
1. Wenden Sie die Funktion auf die Filterordnung N an, und plotten Sie den resultierenden Vektor.
2. Berechnen Sie die in einem Fenster dargestellte Impulsantwort.
3. Verwenden Sie die Funktion gain, um den Gewinn dieses Filters in dB mit den Koeffizienten vrc bei Frequenz k/1000 zu berechnen und zu plotten.
Die Sperrbereichswelligkeit beträgt etwa -20 dB.
Referenzen
S. Lawrence Marple, Jr., Digital Spectral Analysis with Applications, Prentice-Hall (1987).
Lawrence R. Rabiner und Bernard Gold, Theory and Application of Digital Signal Processing, Prentice-Hall, Inc. (1975).
T. W. Parks und C. S. Burrus, Digital Filter Design, Wiley-Interscience (1987).