Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
18.10.2011, 17:30 (Dieser Beitrag wurde zuletzt bearbeitet: 18.10.2011 17:37 von dimitri84.)
wie vermeide ich den Phasenshift bei der Verwendung von Tiefpassfiltern? Ich weiß theoretisch, dass man den Filtern einfach mit einer höheren Grenzfrequenz einmal vorwärts und einmal rückwärts über das Signal laufen lässt. Gibt's das fertig oder muss ich das selbst machen? Wenn selbst machen, wie ist dann die "höhere" Grenzfrequenz? Oder gibt's andere Glättungsverfahren ohne Phasenshift?
Üblich war's mir egal, denn der TP wurde einfach über alle relevanten Signale gelegt. Jetzt geht's nitt und der doch so geringe Phasenshift stört. Ich muss ihn entweder eliminieren oder quantifizieren können.
Tipps?
Sorry im voraus, wenn ich wieder zu schlampig gesucht habe.
Gruß
dimitri
EDIT: Nullphasenfilter - gefunden. Der macht diese vorwärts/rückwärts Geschichte. Gegen eine kleine Diskussion habe ich trotzdem nix ... vielleicht hat jemand schon ein Bsp. oder so. Wie man da die Koeff berechnet.
„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Ein Tiefpass ohne Phasendrehung wäre im Zeitbereich ein Verstoß gegen das Kausalitätsprinzip: Eine Impulsantwort am Ausgang, bevor ein Signal an den Eingang gelegt wurde. Es kann also nicht sein.
Etwas ganz anderes ist bei Offline -Auswertung der Daten gegeben, da gibt es ganz andere Möglichkeiten.
Was Du noch nicht genannt hast: Zeitverlauf in den Frequenzbereich transformieren, Fequenzen oberhalb der Grenzfrequenz abschneiden, Rücktransformation in den Zeitbereich.
18.10.2011, 22:21 (Dieser Beitrag wurde zuletzt bearbeitet: 18.10.2011 22:23 von dimitri84.)
(18.10.2011 21:19 )Lucki schrieb: Ein Tiefpass ohne Phasendrehung wäre im Zeitbereich ein Verstoß gegen das Kausalitätsprinzip: Eine Impulsantwort am Ausgang, bevor ein Signal an den Eingang gelegt wurde. Es kann also nicht sein.
Etwas ganz anderes ist bei Offline -Auswertung der Daten gegeben, da gibt es ganz andere Möglichkjkleiten.
Einverstanden. Aber es handelt sich ja nicht um einen normalen Tiefpass, sondern um ein Verfahren zum Glätten, welches sich Tiefpassfiltern bedient. Diese Vorwärts/Rückwärts Geschichte kannte ich bisher auch nur aus der Theorie und siehe da, das passende VI gibt's tatsächlich. Mit dem Ergebnis des snippets (Init-Eingang vom Filter muss noch verdrahtet werden - vergessen beim ersten Post) bin ich aber garnicht zu frieden. Die Effekte sind kaum in Worte zu fassen ...
Zitat:Was Du noch nicht genannt hast: Zeitverlauf in den Frequenzbereich transformieren, Fequenzen oberhalb der Grenzfrequenz abschneiden, Rücktransformation in den Zeitbereich.
Gibt's da was fertiges? Außerdem frage ich mich ob der Rechenaufwand für ca. 10 Signale mit 1kHz online zu bewerkstelligen ist, und ob ich aus den gefensterten (Hanning...) Blöcken wieder eine schönes kontinuierliches Signal bekomme ganz zu Schweigen.
Ich hab's auf die schnelle so gemacht (keinem weitersagen!): Bodediagramm vom Amplitudengang von Filtern gegoogelt - Da war der passende butterworth dabei - für eine gegebende Grenzfrequenz kann man daraus die resultierende Phasenverschiebung ablesen. Experimentell konnte ich den so ermittelten Versatz ziemlich genau rekonstruieren. Theorie~=Praxis. Bei der Auswertung verschiebe ich einfach die gefilterten Kurven um den ermittelten zeitlichen Shift zurück. Ergbenis ist top ... und mein Gewissen kann damit auch leben. Ma Gucken - ich bleib dran.
„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
19.10.2011, 09:55 (Dieser Beitrag wurde zuletzt bearbeitet: 19.10.2011 12:24 von Lucki.)
Zitat:Was Du noch nicht genannt hast: Zeitverlauf in den Frequenzbereich transformieren, Fequenzen oberhalb der Grenzfrequenz abschneiden, Rücktransformation in den Zeitbereich.
Gibt's da was fertiges? Außerdem frage ich mich ob der Rechenaufwand für ca. 10 Signale mit 1kHz online zu bewerkstelligen ist, und ob ich aus den gefensterten (Hanning...) Blöcken wieder eine schönes kontinuierliches Signal bekomme ganz zu Schweigen.
Etwas Fertiges ist mir leider nicht bekannt, Fenstern geht natürlich nicht, da ja damit der Signalverlauf im Zeibereich völlig verändert wird.
Ein Filter muß immer erst einschwingen, und das heißt, daß der gefilterte Verlauf am Anfang in der Regel Schrott ist. Beim Nullphasenfilter trifft das sogar auf Anfang und Ende zu.
Ich bin immer wieder über die Schnelligkeit erstaunt, mit der eine FFT ausgeführt wird. Über den Rechenaufwand muß man sich da keine Gedanken machen. Allerdings sollte die Anzahl Samples immer 2^N sein, und bei einem vorgebenem Zeitverlauf ist das vielleicht nicht der Fall. Aber trotzdem bestehen Deine Bedenken zu Recht: Bei Samplegrößen 100000 oder mehr kommt man damit sicherlich an eine Grenze. Einem normalen Filter würde das aber nichts ausmachen.
Das Nullphasenfilter kannte ich selbst noch nicht. Es scheint identisch mit einer doppelten Filterung zu sein - einmal in positiver, einmal in negativer Zeitrichtung.
Habs mal für eine einfache Mittelwertbildung probiert. Die Daten haben einen Y-Offset, damit man den Schrott am Anfang und Ende richtig schön sieht.
Die Filterung mit Nullphasenfilter und Mittelwerfilterung Vor-/Rückwärts sollte identisch sein. Ist es am Ende das Verlaufs aber nicht, weiß jetzt auch nicht warum (Differenz zwischen roter und grüner Kurve)
Edit: Hänge mal noch das VI an, falls das jemand interessiert:
Mein Gelaber aus Beitrag #4 mit Amplitudengang usw. bitte irgnorieren - den Phasenshift so zu bestimmen ginge nur, wenn man wüsste was man für ein Eingangsignal (Frequenz) hat.
Ich werd's jetzt so machen wie lucki in seiner ersten Antwort vorgeschlagen hat. Mit FFT. Und zwar offline nach dem Messen.
Mal schauen ...
„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Hmmm ... ich sehe das Betrag/Phase FFT VI, welches mit waveform arbeitet hat garkein iFFT Pandent - d.h. ich muss die urigen FFT VIs nehmen und wesentlich mehr mitdenken :/
„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)