INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Signalbearbeitung mittels FFT



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!

25.02.2013, 09:05
Beitrag #1

toda4506 Offline
LVF-Grünschnabel
*


Beiträge: 20
Registriert seit: Aug 2011

2009
2010
DE_EN



Signalbearbeitung mittels FFT
Hallo Zusammen,

ich denke, ich habe einen kleinen Denkfehler in meiner FFT drin. Ich bekomme alle 30s 400 Messwerte. Diese 400 Messwerte stellen eine Signalkurve dar und stammen von einem Sensor. Ich weiß definitiv, dass dieses Signal verrauscht ist. Dieses Rauschen möchte ich herausrechnen, damit ich die eigentlichen Messwerte analysieren kann.
Ich mache momentan eine FFT-Analyse über diese 400 Messwerte. Dazu lege ich zunächst einen Tiefpassfilter über die Messwerte, um die höheren Frequenzanteile zu filtern. Anschließend mache ich meine FFT-Analyse. Als Ergebnis bekomme ich beim Amplitudenspektrum über 1000 Frequenzen. Mir ist klar, dass ich nur die ersten 5-6 Frequenzen interessieren. Wenn ich jetzt mehrere dieser Amplitudenspektren sammle, heißt in ein Array schreibe, und anschließend den Signalverlauf für eine Frequenz anschaue, sehe ich zwar den korrekten Signalverlauf, der allerdings immer noch sehr verrauscht ist. Ich habe mir schon die mittlere Frequenz jedes Spektrums berechnet und von den Amplituden subtrahiert. Dadurch bleiben die besagten 5-6 Nutzfrequenzen zwar übrig. Stelle ich diese wieder als Signalverlauf dar, sehe ich diese wieder verrauscht.
Was ich meine ist, wenn ich mehrere dieser 400 Messwerte sammle (der Sensor verändert sich in der Zeit nicht), müsste ich für die jeweiligen Frequenzen eigentlich den selben Wert für die Amplitude bekommen. Aber dies ist nicht der Fall.
Ich hoffe, ich habe mein Problem verständlich genug beschrieben.

Viele Grüße
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
25.02.2013, 09:16 (Dieser Beitrag wurde zuletzt bearbeitet: 25.02.2013 09:17 von BNT.)
Beitrag #2

BNT Offline
LVF-Freak
****


Beiträge: 744
Registriert seit: Aug 2008

5.0 - 22Q3
1999
EN

64291
Deutschland
RE: Signalbearbeitung mittels FFT
Hi
Hast Du Sprünge in Deinem Signal. Du musst für eine ordentliche FFT periodische Randbedingungen einhalten. Sonst gibt es in der Tat ein kontinuierliches Frequenzspektrum mit (sehr) hohen Frequenzanteilen.

Gruß Holger

NI Alliance Partner & LabVIEW Champion
GnuPG Key: 6C077E71, refer to http://www.gnupg.org for details.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.02.2013, 09:19
Beitrag #3

toda4506 Offline
LVF-Grünschnabel
*


Beiträge: 20
Registriert seit: Aug 2011

2009
2010
DE_EN



RE: Signalbearbeitung mittels FFT
Naja, wie gesagt, zunächst lege ich einen Tiefpassfilter drüber. Und bei der FFT benutze ich ein Hamming Fenster. Was für periodische Bedingungen meinst du sonst?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.02.2013, 09:27 (Dieser Beitrag wurde zuletzt bearbeitet: 25.02.2013 09:29 von Lucki.)
Beitrag #4

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Signalbearbeitung mittels FFT
Kleiner Denkfehler? Das strotzt ja nur so von von Ungereimtheiten:
1) FFT funktioniert nur mit 2^N Messwerten
2) Aus einem Signalverlauf mit 400 Samples bekommt man genau 199 Frequenzen, niemals 1000 wie Du es behauptest. (selbst wenn die 400 Messwerte mit Nullen auf 512 Werte aufgefüllt werden, damit fft möglich ist, waren es dann nur 255 Frequenzen).
3) Aus einem Amplitudenspekrum (ohne die zugehörigen Phasen) kann man niemals den Signalverlauf wieder herstellen, wie Du es ebenfalls behauptest. (höchstens die Autokorrelationsfunktion).
4) Du gehst nicht auf das Problem des Einschwingesn bei Tiefpassfilterung bzw. das Problem der Fensterung bei Spektralanalyse ein.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.02.2013, 09:46
Beitrag #5

toda4506 Offline
LVF-Grünschnabel
*


Beiträge: 20
Registriert seit: Aug 2011

2009
2010
DE_EN



RE: Signalbearbeitung mittels FFT
Hallo Lucki,

Sorry, du hast recht. Es sind tatsächlich "nur" 199 Amplituden. Fehler von mir.
Selbst, wenn ich meine 400 Messwerte quasi künstlich periodifiziere, also das Signal N-mal aneinandergereiht, bekomme ich am Ende dasselbe Ergebnis. Den Tiefpass könnte ich auch weglassen, weil der ebenfalls keinen nennenswerten Effekt auf die FFT hat.
Mir ist schon klar, dass das ich das Zeitsignal nur wieder erhalte, wenn ich das Amplituden- und Phasenspektrum rücktransformiere.
Ich habe aber etwas anderes gemacht. Ich habe das Ergebnis jeder FFT in ein Array geschrieben (die Amplituden). Die nächste FFT habe ich angehängt. So das ein 2D Array entsteht. Nach ca. 130 FFT "Durchgängen" habe ich mir für eine Frequenz die Amplitude herausgelesen und als Signalverlauf dargestellt. Also ich habe eine ganze Spalte dieses 2d Arrays ausgelesen und als Signmalverlauf dargestellt. Als Ergebnis habe ich tatsächlich den Signalverlauf erhalten.
Es gibt in LAbview die Rücktransformationsfunktion für FFT. Wie verwnede ich die Korrekt, um das Phasen und Amplitudenspektrum wieder als Zeitsignal darszustellen?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.02.2013, 10:14 (Dieser Beitrag wurde zuletzt bearbeitet: 04.03.2013 08:25 von Lucki.)
Beitrag #6

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Signalbearbeitung mittels FFT
Die "künstliche Periodisierung" bringt überhaupt nichts, weil FFT ohnehin von einem sich unendlich wiederholendem Signal ausgeht. Mit "Periodisierung der Randbedingungen" meint Holger etwas anderes: Um Sprünge zu vermeiden, sollte die Messdauer das genau Ein-oder Mehrfache der Grund-Periodendauer des Messignals gewählt werden. Dann nämlich hat man bei der unendlichen Periodisierung durch FFT keine Sprünge im Signalverlauf und kann auf Fensterung völlig verzichten.
Der Haken an der Sache ist aber, dass das nicht immer möglich ist. Die Frequenz ist ja nicht unbedingt von vornherein bekannt, sofern es sich überhaupt um ein periodisches Signal handelt.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
25.02.2013, 10:23
Beitrag #7

toda4506 Offline
LVF-Grünschnabel
*


Beiträge: 20
Registriert seit: Aug 2011

2009
2010
DE_EN



RE: Signalbearbeitung mittels FFT
Okay, vielen Dank schonmal für die Hinweise bis jetzt.
Aber wie mache ich nach der FFT weiter, um doch das richtige Messsignal zu erhalten? Da hänge ich gerade etwas.
Die 400 Messwerte sind mit 10ms abgetatstet.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.02.2013, 09:01
Beitrag #8

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
RE: Signalbearbeitung mittels FFT
Hallo toda4506,

deinem ersten Post entnehme ich, dass du einfach nur Rauschen entfernen möchtest. Mit der FFT kannst du zwar ein bisschen rumspielen aber die Aufgabe mit der Eliminierung der hochfrequenten Anteile solltest du alleine dem Tiefpassfilter überlassen. Dass man selbst den Freuqenzbereich manipuliert und anschließend das Ergebnis wieder in der Zeitbereich transformiert ist zwar in der Theorie (oder im Hochschulalltag) denkbar, aber ziemlich unpraktikabel. Also lass einfach mal das Thema FFT erstmal beiseite und spiele lieber mit der Grenzfrequenz/Ordnung vom Filter rum und schau dir an was hinten rauskommt.


Beste Grüße
dimitri

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.02.2013, 10:45
Beitrag #9

toda4506 Offline
LVF-Grünschnabel
*


Beiträge: 20
Registriert seit: Aug 2011

2009
2010
DE_EN



RE: Signalbearbeitung mittels FFT
Hallo dimitri,

nein es geht nicht nur um höhere Frequenzen. Wenn ich Messwerte aufnehme und die Bedingungen alle identisch sind, die Ergebnisse aber schwanken, dann liegt vermutlich ein Rauschen auf dem Signal. Dieses möchte herausbekommen. Wenn die Bedingungen der Messwertaufnahme nur geringfügig ändere, kann ich das wahre Messsignal nicht erkennen, da das Rauschen dieses überlagert. Es geht darum kleine Messsignaländerungen erkennbar zu machen. Habe ich größere Änderungen der Messbedingungen, stört mich das Rauschen ja nicht, weil die Signaländerung groß genug ist. Aber es geht speziell, um die kleinen Änderungen.

Danke
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
26.02.2013, 11:06
Beitrag #10

dimitri84 Offline
Astronaut
*****


Beiträge: 1.496
Registriert seit: Aug 2009

2020 Developer Suite
2009
DE_EN

53562
Deutschland
RE: Signalbearbeitung mittels FFT
Ich verstehe deinen Einwand nicht. Du versuchst mittels FFT und iFFT im Frequenzbereich aufzuräumen. Ich behaupte das geht besser mit Filtern und die FFT solltest du nur zum Betrachten heranziehen. Mehr nicht.

„Sag nicht alles, was du weißt, aber wisse immer, was du sagst.“ (Matthias Claudius)
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Signalbearbeitung im XY-Graph??? wkktukl 9 7.133 24.09.2007 08:01
Letzter Beitrag: wkktukl

Gehe zu: