Filterdesign mit Matlab

Hallo zusammen,

ich hoffe, hier bin ich richtig. Ich stehe gerade vor dem Problem, daß ich ein frequenzabhängiges Filter auf einzelne Kanäle eines SIgnales anwenden will. Das Problem: ich kenne nur die Frequenzantwort des Filters und die auch nur als Schar von 4 Kurven, deren Zwischenwerte ich mir zur Zeit schon durch Interpolation 'erschleiche'. Bisher hole ich mir das Signal per FFT in die Frequenzdomäne und multipliziere dort mit meinem H(f). Es folgt die Rücktransformation. Solange mein (Test-)Filter auch nur aus 1en besteht, klappt das auch (ich übernehme 'einfach' die Phase des Originalsignals). Wenn ich aber nur die Amplituden mit dem bekannten H(f) multipliziere und zusammen mit der Originalphase wieder ein komplexes Spektrum daraus baue, um es dann per iFFT 'zurückzuholen' bekomme ich verständlicherweise /seltsame/ Ergebnisse.

Wie kann ich jetzt aber den Phasenverlauf des Filters gewinnen? Ich habe mittlerweile den "Filter Designer" von Matlab gefunden und bin mir unschlüssig, ob mir das Tool was bringt. Kann ich dort den Frequenzverlauf des Filters einlesen und mir einen entsprechenden phasenneutralen Filter ausspucken lassen? Gibt es Alternativtools oder gar ein Standardverfahren? Ichbin für jeden Tipp dankbar.

So weit

mark

Reply to
Mark Rossi
Loading thread data ...

X-No-Archive: Yes

begin quoting, Mark Rossi schrieb:

Auf was?

Meinten Sie: Amplitudenfrequenzgang?

Also den Frequenzgang des Betrags der Übertragungsfunktion?

Dann stell Dir die mal mit doppelt-logarithmischer Achsen dar, vielleicht bringt das eine "Erleuchtung".

"Frequenzy domain" heißt auf deutsch "Frequenzbereich" und stellt einen Gegensatz zu "Zeitbereich" dar.

Signal?

Klar.

Gar nicht. Entweder ist es ein minimalphasiges System, dann geht es mit dem Satz von Bode, oder eben nicht, dann geht es nicht.

Man kann zu einem gegebenen Amplitudenfrequenzgang natürlich ein minimalphasiges System finden, aber es wäre deutlich sinnvoller, anders zu ermitteln, was das Filter denn tun soll - evtl. _soll_ es ja auch verzögern. Ohne Kontext schwierig ...

Du könntest aber auch aus Testsignalen und den zugehörigen Filterantworten im Zeitbereich das Filter synthetisieren, da steckt dann der vollständige Phasengang, also die komplexe Filterfunktion, drin.

Kannst Du die Angelegenheit vielleicht mal ein bißchen detaillierter beschreiben? Vielleicht gibt es Standardlösungen.

Gruß aus Bremen Ralf

Reply to
Ralf Kusmierz

Hallo Mark,

MatLab war fuer mich bisher immer Overkill und auch zu teuer. Es gibt eine Menge Alternativen. Da ich jedoch meist analoge Filter entwickle und dazu das Standardwerk (Williams: "Electronics Filter Design Handbook") benutze, kann ich Dir nur einen Link als Beispiel geben:

formatting link
Darin ist auch ein Verweis mit Link zu Tony Fisher's "mkfilter" Software. Ich habe aber, wie gesagt, keinerlei Erfahrung mit diesen Programmen.

HTH.

Gruesse, Joerg

formatting link

Reply to
Joerg

PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.