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

Eigenfrequenzen ermitteln

 

AugustusOne
Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 26.06.15
Wohnort: ---
Version: 2015b
     Beitrag Verfasst am: 26.06.2015, 19:58     Titel: Eigenfrequenzen ermitteln
  Antworten mit Zitat      
Hallo Leute,

für ein Labor in meinem Studium muss ich mit Matlab arbeiten. Ich hatte zuvor noch nie mit dem Programm zu tun, daher ist das alles für mich völliges Neuland.
Ich habe Messdaten von Beschleunigungssensoren bekommen (Messobjekt wurde mit Impulshammer angeregt) und soll eine Modalanalyse durchführen.
Mittels FFT bin ich mittlerweile soweit, dass ich sämtliche Messungen in den Frequenzbereich überführt habe, diese kann ich auch plotten und dort an den peaks die Eigenfrequenzen ablesen.

Da ich es mit 90 Messungen zu tun habe, würde ich mir diese Arbeit gerne etwas vereinfachen. Mit der Funktion findpeaks erhalte ich leider alle lokalen Maxima, ich möchte jedoch nur jene, die "signifikant" sind.
Habt ihr da einen Tipp für mich?

Ich bin neu hier im Forum, daher hoffe ich, alle Regeln beachtet zu haben und bitte andernfalls um Nachsicht und Korrektur. Smile

Viele Grüße
August
Private Nachricht senden Benutzer-Profile anzeigen


DSP
Forum-Meister

Forum-Meister



Beiträge: 2.117
Anmeldedatum: 28.02.11
Wohnort: ---
Version: R2014b
     Beitrag Verfasst am: 26.06.2015, 20:16     Titel:
  Antworten mit Zitat      
Hallo,

wie sieht denn dein bisheriger Code aus? Diese Angabe ist immer sehr hilfreich. Man kann bei der findpeaks Funktion Parameter zur Begrenzung der Auswahl angeben. Hast du das schon probiert?

Code:

[pks,locs]=findpeaks(data,'NPEAKS',3,'THRESHOLD',100);

% THRESHOLD = Schwellenwert der überschritten werden muss um als Peak zu zählen. Differenz zwischen Peak und Nachbarwert ausschlaggebend.
% NPEAKS = maximale Anzahl der Peaks. Startet allerdings mit dem ersten gefunden, nicht nach der Größe der Peaks sortiert. Dazu müsste man die Peaks sortieren. Das ginge mit der Option 'SORTSTR'
 


Ansonsten wäre nur anzumerken, dass dieses Thema auch ganz gut in den Forumsbereich Signalverarbeitung passen würde.
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.492
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 26.06.2015, 20:23     Titel:
  Antworten mit Zitat      
Hallo,

bei findpeaks gibt es doch verschiedene Möglichkeiten einzustellen, was für dich "signifikant" ist. Was hast du da denn schon versucht?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
AugustusOne
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 15
Anmeldedatum: 26.06.15
Wohnort: ---
Version: 2015b
     Beitrag Verfasst am: 27.06.2015, 18:36     Titel:
  Antworten mit Zitat      
Danke für die beiden Antworten.
Ich habe mich noch einmal intensiver mit findpeaks auseinandergesetzt und habe es jetzt geschafft, dass vernünftige Ergebnisse herauskommen. Ausnahme ist wohl, dass eine Eigenfrequenz bei einer hohen Frequenz nicht genommen wird, obwohl diese im Plot gut zu erkennen ist.

Mein Code sieht so aus:
Code:

[pks, locs] = findpeaks(mreal(:,1),f,'MinPeakHeight',0.255)
 


nun würde ich das ganze gerne in eine Schleife packen, um alle 90 Durchführungen nicht manuell durchführen zu müssen. Mein Ansatz war folgender:

Code:

for i=1:90
    [pks(:,i), locs(i,:)] = findpeaks(mreal(:,i),f,'MinPeakHeight',0.255)
end
 


Das Problem ist jetzt, dass die einzelnen Vektoren für i=1,2,... unterschiedliche Dimensionen haben und damit nicht wie oben angedacht aneinandergereiht werden können. Eine Alternative wäre wohl die Werte alle in einer Reihe aufzulisten ([1 2 3] und [2 1 3] werden zu [1 2 3 2 1 3]), aber ich würde gerne im Nachhinein noch nachvollziehen können aus welcher Messung die Eigenfrequenz stammt.
Private Nachricht senden Benutzer-Profile anzeigen
 
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.