WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Fourier Transormation

 

Rob

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.01.2009, 09:57     Titel: Fourier Transormation
  Antworten mit Zitat      
hallo allerseits
ich habe ein paar schwierigkeiten ein Signal im Frequenzbereich darzustellen nachdem ich es im Zeitbereich geplottet habe.
das ist meine erste Erfahrung mit der FFT deshalb wuste ich nicht zurecht was ich als erstes machen sollte denn ich habe eigentlich keine Funktion sondern möchte das geplottete Signal im Zeitbereich in Frequenzbereich plotten
mein code sieht folgendermassen aus
load ('MPISO_Z_0008','Data1_Vibration','Data1_time_Vibration');
x1=Data1_Vibration;
y1=Data1_time_Vibration;
plot(x1,y1);
mit dem Befehl fft habe ich es versucht aber da ich keine Angaben über die Amplitude ,Abtastzeit und Abtastfrequenz habe wusste ich nicht wie ich vorgehen sollte
kann mir jemand mit einem Ratschlag oder einem Beispiel helfen
ich danke euch im voraus


Maddy
Ehrenmitglied

Ehrenmitglied



Beiträge: 494
Anmeldedatum: 02.10.08
Wohnort: Greifswald
Version: ---
     Beitrag Verfasst am: 19.01.2009, 10:27     Titel:
  Antworten mit Zitat      
Wenn du es im Zeitbereich geplottet hast, kannst du doch durch Abzählen der Punkte in einem Zeitintervall einfach die Samplefrequenz bestimmen.
Normieren kannst du die FFT dann über die Summe aller Werte im Zeitbereich. Beispiele für die FFT findest du über die Boardsuche.
_________________

>> why
The computer did it.
Private Nachricht senden Benutzer-Profile anzeigen
 
Rob

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.01.2009, 10:47     Titel: Fourier Transformation
  Antworten mit Zitat      
zuerst danke ich dir für deine Antwort .Nehmen wir an dass ich ein Messung von 120sec habe .kannst du mir eventuell ein beispiel schicken wie ich die summe aller werte eigeben kann .
danke dir
 
dib0r
Forum-Guru

Forum-Guru


Beiträge: 413
Anmeldedatum: 09.05.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.01.2009, 10:59     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
da ich keine Angaben über die Amplitude ,Abtastzeit und Abtastfrequenz habe


Für die Frequenzdarstellung ist die Amplitude eigentlich nicht so wichtig.
Abtastzeit und Abtastfrequenz stellt das selbe dar, das eine ist nur das Inverse vom anderen (Ts = 1/Fs; Fs = 1/Ts)

Die Abtastfrequenz musst du wissen oder errechnen können, sonst hat die Frequenzdarstellung keinen Sinn!
Beispiel: Du willst wissen wiviele Autos pro Sekunde über die Autobahn fahren. Deine Messstation liefert dir folgenden Output: [1 12 3 9 5 17 0 5 10 7]
Falls du nun nicht weisst, in welchem Zeitintervall die Daten gemessen werden, kannst du mit denen nichts anfangen (69 Autos / 10 Stunden, 69 Autos / 10 Sekunden, 69 Autos / Sekunde ?).

Da dir allerdings ein Zeitvektor gegeben ist, kannst du daraus ganz einfach die Abtastfrequenz berechnen:
Code:
Fs = 1/mean(Data1_time_Vibration);


Beispiel:
Code:
t = 0:0.003:2*pi; % Zeitvektor
Fs = 1/mean(t); % Abtastfrequenz
s = 3*sin(2*t) + 0.4 * cos(100*t); % Signal
spec = abs(fft(s)); % Spektrum

figure;
plot(t,s);
figure;
plot([0 Fs*[1:length(spec)-1]],spec);


Deine Spitzen im Spektrum sind nun bei ca. 0.64 und 31.84 Hz. Wenn du dir 2*Fs und 100*Fs (wie im Signal angegeben) ausgeben lässt, siehst du, dass dies mit den Werten im Spektrum übereinstimmt.


MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
dib0r
Forum-Guru

Forum-Guru


Beiträge: 413
Anmeldedatum: 09.05.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.01.2009, 11:02     Titel: Re: Fourier Transformation
  Antworten mit Zitat      
Hallo,

sry schon mal für Doppelpost (jajajajaja ^^).

Rob hat Folgendes geschrieben:
zuerst danke ich dir für deine Antwort .Nehmen wir an dass ich ein Messung von 120sec habe .kannst du mir eventuell ein beispiel schicken wie ich die summe aller werte eigeben kann .
danke dir


Code:
s = rand(10000,1); % Signal
T = 120; % Länge des Signals in Sekunden
Fs = length(s)/T; % Abtastfrequenz in Hertz


MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
Rob

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.01.2009, 14:41     Titel: Fourier Trasformation
  Antworten mit Zitat      
Super Danke hier habe ich übrigens meine Grafik im Zeitbereich vielleicht kannst du nachvollziehen was ich vorhin gemeint habe
danke vielmals

figure2.JPG
 Beschreibung:

Download
 Dateiname:  figure2.JPG
 Dateigröße:  48.94 KB
 Heruntergeladen:  981 mal
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 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.