rho-Filter von rhothron - Digitale Filter

Der letzte Schrei der digitalen Signalverarbeitung ist der Einsatz von digitalen Filtern. Die renommierte Hard- und Software-Firma rhothron bietet ein Programmpaket an, das diese digitalen Filter auf elegante Weise berechnet.

Zumindest nach der Anschaffung eines CD-Players ist man automatisch mit dem Begriff des "digitalen Filters" konfrontiert. Sicher, einfache analoge Filter lassen sich schnell durch ein paar Bauelemente wie Widerstand, Spule, Kondensator und Operationsverstärker realisieren. Doch zeigen diese Filter bei bestimmten Anwendungen deutliche Schwächen auf: ein analoger Filter läßt sich nicht zu 100% reproduzieren (geringe Genauigkeit), so daß in jedem Fall Abgleicharbeiten anfallen. Ebenso problematisch ist die Realisierung von sehr tieffrequenten Filtern (unter I Hz), wie sie z.B. bei der Erdbebenmessung notwendig sind. Hier setzt man heutzutage ausschließlich digitale Filter ein. Sie sind äußerst stabil und lassen sich zudem auch noch digital steuern (dies ist bei analogen Filtern nur mit erheblichem Aufwand möglich). Weiterhin begegnet man den digitalen Filtern in den Bereichen der dig. Sprachverarbeitung sowie der Bildverarbeitung, in der z.B. durch einen Hochpaßfilter Objektumrisse genauer zu erkennen sind. Nachteilig wirkt sich bei den digitalen Filtern allerdings der hohe Schaltungsaufwand aus, der durch die zunehmende Integration jedoch immer weniger ins Gewicht fällt.

Grundbegriffe

Was ist ein digitaler Filter? Gehen wir hier zuerst von einem analogen Filter aus: hierzu stelle man sich einfach ein bestimmtes Eingangssignal, ein Ausgangssignal und einen schwarzen Kasten (Black Box), den Filter mit der frequenzabhängigen Übertragungsfunktion H(f), vor. Dieser liegt zwischen dem Eingangs- und Ausgangssignal. Klar ist, daß diese Black Box mit ihrer Übertragungsfunktion H(f) das Eingangssignal für jede Frequenz in einer bestimmten Art und Weise beeinflußt. Ein Kennwert für diese "Beeinflussung" ist der Grad der Dämpfung für jede Frequenz. Möchte man z.B. ein Ausgangssignal bekommen, das nur aus Frequenzanteilen bis 1 kHz besteht - also einen Tiefpaß (TP) - so muß bei einem idealen TP der Grad der Dämpfung im Durchlaßbereich (bis 1 kHz) eins und im Sperrbereich null sein. Rein rechnerisch ergibt sich also das Ausgangssignal durch die Multiplikation des Eingangssignals mit der Übertragungsfunkhon H(f). Mathematisch (mit p=2Pifj= jOmega) läßt sich beispielsweise ein Filter 2. Ordnung mit H(p) = (a0 + a1 p + a2p2)/(b0 + b1 p + b2p2) beschreiben, wobei die Koeffizienten ax, bx die Filtercharakteristik bestimmen. Realisieren läßt sich solch ein analoger Tiefpaß durch eine sinnvolle Kombination von Widerständen, Kondensatoren, Induktivitäten und Verstärkern. Bei digitalen Filtern treten nun anstelle dieser Bauteile Elemente wie Addierer, Multiplizierer und Verzögerer. Man unterscheidet digitale Filter in zwei Grundtypen: IIR(infinite impuls response)-Filter, die eine Rückkopplungsstruktur haben, und FIR(finite impuls response)- Filter, die keine Rückkopplung besitzen.

Um nun einen digitalen Filter zu berechnen, bedient man sich der Z-Transformation, mit deren Hilfe man vom analogen in den digitalen Bereich gelangt (p=jOmega) wird zu z=exp(p/fa) mit fa = Abtastfrequenz). Mit weiteren Berechnungsmethoden (bilineare Z-Transformation) können dann der digitale Filter bzw. seine Koeffizienten errechnet werden. Heutzutage gibt es für diese Berechnung spezielle digitale Signalprozessoren wie z.B. den 56001 im Falcon, die diese Berechnung nahezu in Echtzeit vornehmen. Doch genug der schwermütigen Theorie, widmen wir uns nun dem Filter-Entwurfsprogramm von rhothron. Das Programm "FIRFILT" erlaubt die Berechnung von digitalen Transversalfilterkoeffizienten (FIR-Filter) auf dem ATARI ST/TT/STE. Das Programm ist voll in GEM eingebunden und läßt sich ausschließlich mit der Maus bedienen. Innerhalb des Programms lassen sich gleichzeitig drei verschiedene Filter bearbeiten.

Im ersten Menüpunkt "Spezifikationen" geben Sie neben Speicher-, Lade-, Druckoperationen und der Neuberechnung eines Filters die Parameter für den Filter ein. Danach erfolgt die Wahl des Filter-Entwurfverfahrens: implementiert sind hier McClellan & Parks, Fitting und Fenster.

Beim McClellan & Parks-Verfahren geben Sie - nach der Wahl des Filters (TP, HP, BP, BS, Differenzierer, Hilbert-Transformator und Vielfachband) - die Charakteristika des Filters ein. Hierzu gehören die Paßband- und Sperrbandgrenzfrequenz in normierter Form, die maximale Durchlaßdämpfung (in dB) sowie die minimale Sperrdämpfung (in dB) bei TP, HP, BS und BP. Beim Differenzierer sind die obere Grenzfrequenz und der relative Fehler, beim Hilbert-Transformator die untere Grenzfrequenz und die Fehlergewichtung und beim Vielfachband die Anzahl der Bänder zu definieren. Ist dies geschehen, erfolgt die Eingabe der Filterlänge. Hier bietet das Programm vorab eine Abschätzung der minimalen Filterlänge an.

Ein Querschnitt durch die vielfältigen Menüs des FILTER-Programms.

Beim Fitting-Verfahren, bei dem zwischen bestimmten Stützstellen, die Sie in Frequenz und Amplitude vorgeben, interpoliert wird, sind softwareseitig folgende Funktionen vorgesehen: lineare Interpolation. kubische Interpolation-M und kubische Interpolation-0 sowie die cosinus-quadrat-Interpolation. Unter "Fenster" kann der Filter neben der Darstellung der Impuls- oder Sprungantwort zusätzlich durch eine Fensterfunktion "geglättet" werden. Erwähnt seien an dieser Stelle nur die wichtigsten wie Kaiser-, Hamming-oder Rechteckfenster.

Der nächste Menüpunkt "Koeffizienten" dient zur Beeinflussung der Filterkoeffizienten. So lassen sich z.B. zwei Filter mit verschiedenen Rechenoperationen (Addieren, Subtrahieren, Multiplizieren, Fenstern, Normieren, Modulieren etc.) verbinden. Diese Werte speichern Sie dann als ASCII-Datei ab, wobei Sie vorher noch eine Quantisierung auf eine bestimmte Wortlänge vornehmen können. Das Format der ASCII-Datei ist bereits so gewählt, daß die errechneten Werte leicht in andere Programme (oder DSPs) übertragbar sind.

Angemerkt sei an dieser Stelle, daß rhothron mehrere eigene digitale Signalprozessorkarten (DSP 56200) entwickelt hat.

In "Filterung" kann der Anwender ein selbst erstelltes Eingangssignal mit dem errechneten Filter filtern, die online mit der Filter-Software Zusammenarbeiten. Allerdings ist - laut rhothron - eine Anpassung des Datenformats an den neuen ATARI-Computer Falcon030 und seinen DSP leider nicht vorgesehen.

Grafikvielfalt

Unter dem Menü Nullstellen geben Sie - je nach Wahl, ob mit maximaler oder minimaler Gruppenlaufzeit - die errechneten Werte in der komplexen Z-Ebene auf den Bildschirm aus. Ebenso berücksichtigten die Programmierer das Abspeichern und Lesen der Nullstellenwerte, so daß die lange Rechenzeit zur Ermittlung dieser Werte nicht bei jeder Anwendung des Programms von neuem anfallt. Die eigentlichen Stärken dieses Programms liegen in der grafischen Darstellung des Filters, wie das nächste Menü "Frequenzgang" deutlich zeigt. Hier ermöglicht das Programm dem Anwender eine Vielzahl von Darstellungsmöglichkeiten. Zuerst geben Sie jedoch die Abtastwerte (128 bis 1024) und den darzustellenden Frequenzbereich ein. Danach stehen folgende Grafiken zum Plot (linear oder in dB) bereit:

Neben der einzelnen Ausgabe der Graphen bietet sich über die Funktion "Verknüpfen" auch die Verbindung zweier Filter über eine mathematische Funktion (Addieren, Subtrahieren. Multiplizieren, Dividieren) zu einem Zielfilter an. Auch bei diesem Menüpunkt können Sie den ermittelten Frequenzgang auf Diskette abspeichern. Der letzte Menüpunkt (Filterung), den die Software bereitstellt, behandelt den eigentlichen Test Ihres Filters. Dazu beaufschlagen Sie den Filter mit einem bestimmten Eingangssignal. Als Test-Eingangssignal befindet sich auf der Programmdiskette bereits eine Tabelle mit Sinuswerten. Allerdings steht es dem Anwender frei, hier eigene Eingangssignale zu verwenden, sofern diese im ASCII-Format vorliegen. Die Ausgabe bzw. die Gegenüberstellung von Ein- und Ausgangssignal erfolgt entweder auf dem Bildschirm oder wiederum als ASCII-Datei auf dem Datenträger. Zum besseren grafischen Vergleich zwischen dem Ein- und Ausgangssignal erfolgt per "Laufzeitkompensation" die Ausgabe der Ein- und Ausgangsfunktion simultan.

Handbuch - nichts für Einsteiger

Das dem Programmpaket beiliegende 32seitige Handbuch behandelt ausführlich alle Funktionen des Programms, die einzelnen Menüs und die Datenverwaltung. Die Autoren erläutern sogar einige mathematische Hintergründe der digitalen Signalverarbeitung. Ungeeignet ist das Handbuch bzw. "Handheft" für all diejenigen, die eine Einführung in die Technik der digitalen Filter erwarten, rhothron verweist zwar auf eine ansehnliche Menge von Fachliteratur, doch würden zumindest einige Seiten mehr an Einführung und Hintergrundwissen den guten Eindruck der Software untermauern.

Zusammenfassung

Die Software an sich ist laufsicher und für die komplexen Berechnungen erstaunlich schnell und effizient programmiert. Durch die vielen verschiedenen Berechnungsmethoden einschließlich der Fensterfunktionen lassen sich nahezu alle gängigen FIR-Filter bzw. ihre Koeffizienten berechnen und durch die flexible Dateigestaltung leicht weiterverarbeiten. Die umfangreiche grafische Darstellung der diversen Funktionen und die Simulation des Filters per selbstdefiniertem Eingangssignal lassen ebenfalls keine Wünsche offen. Anlaß zur Kritik gab eigentlich nur das etwas zu knapp geratene Handbuch, in dem wir uns einige Seiten mehr an Background-Theorie wünschen würden.

Fazit

rho-Filter ist eine solide Software, die auch für den semiprofessionellen Bereich geeignet ist. solange nur FIR-Filter gefordert sind.

Bezugsadresse: rhothron GmbH Entenmühlstr 57 66424 Homburg/Saar Preis: DM 498,-

rho Filter

Positiv:

Negativ:



Links

Copyright-Bestimmungen: siehe Über diese Seite
Classic Computer Magazines
[ Join Now | Ring Hub | Random | << Prev | Next >> ]