|
|
Eine Periode darstellen und Periodendauer herausfinden |
|
Hansi82 |
Forum-Anfänger
|
|
Beiträge: 18
|
|
|
|
Anmeldedatum: 16.12.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: 2006b,2007a,2008b
|
|
|
|
|
|
Verfasst am: 25.05.2009, 20:15
Titel: Eine Periode darstellen und Periodendauer herausfinden
|
|
|
|
|
Hallo!
Habe gesehen das vor mir schon jemand eine ähnliche Frage gestellt hat. Wollte aber dennoch einen neuen Thread eröffnen, weil meine Fragestellung wahrscheinlich konkreter und weitgehender ist!
Also, ich lese mit Hilfe von Matlab einige Messwerte aus einem Datenlogger aus. Funktioniert auch soweit prima.
Das Messsignal ist Periodisch, kann aber unterschiedliche Formen (Sinus,Rechteck, etc.) annehmen und ein unterschiedliches Puls-Pause-Verhältniss (Duty-Cycle) beinhalten.
Des Weiteren ist in der Regel ein DC-Bias dabei und es kann rauschen enthalten. (siehe Bild)
1. Ist es möglich einen Plot zu generieren, welcher genau eine Periode des Messsignals anzeigt?
2. Ist es möglich die Periodendauer exakt herauszufinden? (Genauigkeit ca. 1%)
Habe bereits mit fft herumgemacht, führt aber denke ich zu keiner befriedigenden Lösung, da ich die fft nicht auf einer Periode loslassen kann.
Bin für jede Hilfe sehr dankbar!
Viele Grüße,
Hans
|
|
|
|
|
Epfi |
Forum-Meister
|
|
Beiträge: 1.134
|
|
|
|
Anmeldedatum: 08.01.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 25.05.2009, 22:17
Titel:
|
|
Also wenn da kein nennenswertes Rauschen auf dem Signal ist würde ich nach Nulldurchgängen mit positiver oder negativer (je nach Wunsch) Steigung suchen.
Wenn das Signal stark rauscht, kommt da aber auch gern mal ziemlicher Mist raus.
|
|
|
Hansi82 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 18
|
|
|
|
Anmeldedatum: 16.12.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: 2006b,2007a,2008b
|
|
|
|
|
|
Verfasst am: 26.05.2009, 06:48
Titel:
|
|
Guten morgen Epfi!
Vielen Dank für deine Antwort.
Problem ist, dass das Signal einen DC-Offset haben kann. Somit wird es keine 0-Durchgänge haben.
Ich könnte mir einen Filter (fda-tool vorhanden) "basteln", allerdings ist auch diese Lösung suboptimal, da durch den Filter wahrscheinlich diverse Dämpfungseffekte zum Signal dazu kommen.
Gibt es nicht zu dem Thema ein Paper oder irgendwelche Algorythmen?
Bin also eher weniger am Code, sondern mehr an der Vorgehensweise interessiert.
Vielen Dank!
Hans
|
|
|
Epfi |
Forum-Meister
|
|
Beiträge: 1.134
|
|
|
|
Anmeldedatum: 08.01.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 26.05.2009, 07:19
Titel:
|
|
Also bei "laufenden" Signalen könnte man eine PLL auf das Signal ansetzen, wobei ich mir gerade nicht ganz sicher bin, dass das bei Signalen mit Offset klappt. Müsste man ein Hochpassfilter davorsetzen, um den Gleichanteil wegzubekommen - aber der macht dann auch die Rechtecksignale kaputt. Grundsätzlich kann man Rechtecksignale aber auf eine PLL geben, die Dinger sind echt robust.
Bei Rechtecksignalen kannst Du ja einfach mal die Ableitung bilden, dann bekommst Du für jeden Signalwechsel eine Spitze und der Gleichanteil ist auch raus.
Noch ne relativ simple Möglichkeit wäre es, das Signal vor dem Auswerten zu verschieben. Und zwar um den Mittelwert (echtzeit-Auswertung geht dann natürlich nur schwer). Nach dem Verschieben schneidet es die Null-Linie. Alternativ kannst Du natürlich auch nach Schnittpunkten mit dem Mittelwert suchen.
|
|
|
Hansi82 |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 18
|
|
|
|
Anmeldedatum: 16.12.08
|
|
|
|
Wohnort: ---
|
|
|
|
Version: 2006b,2007a,2008b
|
|
|
|
|
|
Verfasst am: 28.05.2009, 10:02
Titel:
|
|
Danke für deine Hilfe!
Werde mich mal in die Materie PLL einlesen, scheint mir plausibel zu sein.
Vielen Dank, Empfi!
Grüße Hansi
|
|
|
|
|
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 - 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.
|
|