Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Bücher:

MATLAB und Simulink: Grundlegende Einführung f. Studenten

Fachkräfte:
weitere Angebote

Partner:


Vermarktungspartner


Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Höchsten Peak, Grundfrequenz

 

Kababär
Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 08.01.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.01.2016, 02:01     Titel: Höchsten Peak, Grundfrequenz
  Antworten mit Zitat      
Hi,

Ich habe ein aperiodisches Signal vorliegen und will mir von diesem Signal den höchsten Peak geben lassen, kennzeichnen im Plot und würde gerne die Grundfrequenz sowie die mittlere Periodenlänge berechnen.
Leider habe ich keine Ahnung wie das anstellen soll und mir fehlt der Zusammenhang zwischen den drei genannten Größen.
Mit findpeaks war ich bisher leider nicht erfolgreich.

Kann mir da wer helfen?
Private Nachricht senden Benutzer-Profile anzeigen


Jan S
Moderator

Moderator


Beiträge: 10.998
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 09.01.2016, 14:56     Titel: Re: Höchsten Peak, Grundfrequenz
  Antworten mit Zitat      
Hallo Kababär,

Bitte poste Deinen Code und erkläre, was "nicht erfolgreich" bedeutet. Stimmten die Ergebnisse nicht mit Deinen erwartungen überein oder hast Du eine Fehlermeldung bekommen? Ein Problem lässt sich viel leichter lösen, wenn man es nicht zunächst erraten muss Wink

So weit ich weiß, haben "aperiodische" Signale keine Periodenlänge, auch damit keine mittlere. Liegt das nicht in der Natur von "aperiodisch"?
Den höchsten Peak findest Du mit "max".

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Kababär
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 08.01.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.01.2016, 15:12     Titel:
  Antworten mit Zitat      
Naja, das Signal an sich habe ich nur in einer .mat als Datensatz vorliegen.
Es handelt sich um ein EKG-Signal. (Ist doch nicht zwingend periodisch?)
Die Frequenz (fs?) beträgt 4000, mein dt(Abtastrate?) beträgt demnach: dt=1/fs.
Hier der Code:

Code:

%============================
% Zeitachse erstellen
%============================

dt = 1/fs;

t = [0:dt:length(EKG)/fs-dt];


%============================
% EKG über die Zeit plotten
%============================

figure('Color', [1,1,1]);
plot(t,EKG);
box on, grid on, hold on;
xlim([min(t) max(t)]);
xlabel('Zeit in Sekunden');
ylabel('Funktionswerte des EKG');
title('Aufgabe 1: Plot eines EKG');


%===========================
% Erzeugen eines Leistungsdichtespektrum
%===========================

[pxx,f] = periodogram(EKG,[],length(EKG),fs,'power');

figure('Color', [1,1,1]);
plot(f,10*log10(pxx));
box on;
xlabel('Frequenz [Hz]');
ylabel('Leistung (dB) / Hz');
 


Jetzt will ich eine Funktion schreiben, die als Parameter das Signal EKG bekommt und eben daraus die 3 Größen berechnen.
Mir fehlt dabei die Vorangehensweise bzw. das Verständnis zu den 3 Größen.
Brauche ich eine FFT? Wenn ja, wie ermittle ich damit die Grundfrequenz, wie die Grundperiode?
Private Nachricht senden Benutzer-Profile anzeigen
 
Kababär
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 8
Anmeldedatum: 08.01.16
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.01.2016, 23:16     Titel:
  Antworten mit Zitat      
Niemand?
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 10.998
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 12.01.2016, 12:04     Titel:
  Antworten mit Zitat      
Hallo Kababär,

Das Problem betrifft nicht direkt Matlab. Es geht zwar darum, dies in Matlab zu implementieren, aber Du hast hauptsächlich Fragen zur Mathematik dahinter. Deshalb ist dieses Forum dafür nicht passend.
Dieses Problem wurde natürlich schon von vielen Leuten bearbeitet und es gibt einen Haufen an Publikationen dazu, z.T. als Papers aber auch als Code. Ich empfehle Dir deshalb Deine Betreuer/Kollegen zu fragen und im Netz und in der Literatur zu suchen. Sowie Du dann weißt, was Du genau berechnen möchtest, sind Fragen zur Implementierung mit Matlab-Befehlen hier wieder pass-genau.

Manchmal hat man allerdings Glück und es liest gerade jemand im Forum, der das gleiche Problem auch hatte. Das ist aber nicht sehr wahrscheinlich.

Viele Grüße, Jan
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
.


goMatlab ist ein Teil des goForen-Labels
goForen.de goMATLAB.de goLaTeX.de


 Impressum  | Nutzungsbedingungen  | Datenschutz  | Werbung/Mediadaten | Studentenversion | FAQ | goMatlab RSS Button RSS


Copyright © 2007 - 2021 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
Partner: LabVIEWforum.de

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.