|
Donpulio |
Forum-Newbie
|
|
Beiträge: 7
|
|
|
|
Anmeldedatum: 07.06.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.06.2010, 11:18
Titel: fft einer Wav Datei
|
|
|
|
|
Hallo
Aufgabe:
Ich arbeite mich in vorhandenen Code ein und bin mir nicht sicher, was an einigen Stellen genau gemacht wird.
Es soll eine Vibration an einer Maschine gemessen werden;dazu wird ein Sensorsignal direkt per Soundkarte als wav file aufgenommen ( Spannung über Zeit).
Diese wav wird nun Fourier-transformiert um dann im Frequenzspektrum angezeigt werden zu können.(Pegel(je nach Normierung in dB) über Frequenz).
Problem:
Nachfolgend poste ich den Code und schreibe meine Fragen unter jede fragwürdige Zeile:
Wenn ich nun die fwave, an dieser Stelle, plotte ergibt sich ein Bild in der komplexen Ebene, müssten es denn nicht reelle Werte sein?
Warum wird das hier so gemacht ? Ist das ein Normierungsstandard ?
Ich weiss, dass es sich hier nicht direkt um spezifische Matlab Probleme, sondern um eher mathematisch-technische Probleme handelt. Jedoch bin ich sehr dankbar über jede Antwort! Vielleicht hat sich der ein oder andere ja schon mit ähnlichen Problemen rumgeschlagen.
Grüße.
|
|
|
|
|
Fourier |
Forum-Guru
|
|
Beiträge: 329
|
|
|
|
Anmeldedatum: 05.04.10
|
|
|
|
Wohnort: Karlsruhe
|
|
|
|
Version: 2009b
|
|
|
|
|
|
Verfasst am: 11.06.2010, 11:24
Titel:
|
|
hallo,
Zitat: |
Wenn ich nun die fwave, an dieser Stelle, plotte ergibt sich ein Bild in der komplexen Ebene, müssten es denn nicht reelle Werte sein? |
dein Spektrum ist nur dann reel wenn dein Zeitsignal reel und gerade ist,
ansonsten ist es imaginärt, also musst du beim ploten abs(fwave) benutzen.
gruss
|
|
|
Donpulio |
Themenstarter
Forum-Newbie
|
|
Beiträge: 7
|
|
|
|
Anmeldedatum: 07.06.10
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 11.06.2010, 13:18
Titel:
|
|
Was meinst du genau mit "wenn das Zeitsignal gerade ist" ??
Also in dem Vektor tauchen nur reelle, aber ungerade Zahlen auf (Bsp: erste Zeile: 40.535711473034276 ) usw.
Es hat also etwas mit der Verarbeitung in Matlab zu tun, dass die fft auf einmal in der komplexen Ebene dargestellt wird ?!
Ist es denn dann wirklich mathematisch korrekt, wenn ich einfach mit dem abs() meiner Fouriertransformierten weiterrechne ??
-> ich habe das gerade mal probiert und das Spektrum abs(fwave) wieder invers transformiert, also ifft(abs(fwave)) , und es kommt was anderes, als meine ursprüngliche wave dabei heraus. Es dürfte also nicht die richtige Darstellung sein, oder ?
Danke!
|
|
|
Fourier |
Forum-Guru
|
|
Beiträge: 329
|
|
|
|
Anmeldedatum: 05.04.10
|
|
|
|
Wohnort: Karlsruhe
|
|
|
|
Version: 2009b
|
|
|
|
|
|
Verfasst am: 11.06.2010, 13:29
Titel:
|
|
also mit gerade meine ich symmetrisch, das wäre zum beispiel ein gerades signal: x=[9 5 2 1 0 1 2 5 9].
aber ich muss mich korregieren fft von einem Signal ist immer komplex.
weil in der fourier trasformation steckt eine multiplikation mit exp(i*....)
also (cos+i*sin), und da dein signal reel ist (nur reele zahlen) und die weden dann mit (cos+i*sin) multipliziert, also kommen komplexe zahlen raus. guck dir die formel der fourier trans. an
und was ist in der realität ein komplexes signal ? das sind 2 reelle signale die getrennt übertragen werden. gehören aber trotzdem zusammen.
was ich damit sagen möchte, wenn du jetzt dein spektrum untersuchen willst, dann musst du entweder reelteil, und imaginärteil getrennt beobachten oder Betrag und Phase getrennt beobachten.
und mit abs(fwave) untersuchst du halt die amplitude, beide aufeinmal geht nicht...
gruss
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|