|
|
Auswertung eines Drehzahl Signals |
|
hari96 |
Forum-Newbie
|
|
Beiträge: 6
|
|
|
|
Anmeldedatum: 21.01.16
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 21.01.2016, 18:32
Titel: Auswertung eines Drehzahl Signals
|
|
|
|
|
Hallo Leute,
Ziel:
Momentan versuche ich aus einem Triggersignal die Drehzahlschwankung zu bestimmen.
Hintergrund:
An einer rotierenden Zahnscheibe ist an einer bestimmten Umfangsposition eine Nut angebracht. Beim Rotieren passiert diese Nut eine Sonde, welche dann im Idealfall nur einen Impuls misst. Aufgrund einer hohen Samplingrate von f = 60000 Hz werden jedoch mehrere Impulse pro Umlauf gemessen. Für die Vergleichbarkeit der Werte möchte ich immer den ersten Impuls einer Umdrehung zu verwerten.
Methodik bislang:
ich habe ausgehend vom Mittelwert des Signals versucht das erste Maximum zu finden und dann durch einen von mir gewählten Abstand versucht das nächste Maximum zu suchen usw.. Problematisch war hierbei, dass ich im Verlauf des Triggersignals ab und zu nicht den ersten sondern den zweiten Impuls abgespeichert habe, da der erste Impuls kleiner war als der Mittelwert.
Frage:
Wie kann ich immer den ersten Impuls auslesen?
Zu mir:
Matlabanfänger
Viele Grüße
|
|
|
|
|
DSP |
Forum-Meister
|
|
Beiträge: 2.117
|
|
|
|
Anmeldedatum: 28.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2014b
|
|
|
|
|
|
Verfasst am: 21.01.2016, 19:23
Titel:
|
|
Hallo,
schau dir mal den Befehl
findpeaks
an. Damit lassen sich u.a. lokale Maxima finden, wobei es einige Einstellparameter für eine bedingte Suche gibt, wie Threshold, Minpeakdistance etc.
Gruß DSP
|
|
|
hari96 |
Themenstarter
Forum-Newbie
|
|
Beiträge: 6
|
|
|
|
Anmeldedatum: 21.01.16
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 23.01.2016, 12:49
Titel:
|
|
Hallo DSP,
Danke für den Tipp. Im Anhang befindet sich ein Ausschnitt eines Intervalls des Signals.
Methode 1:
Ich bestimme zuerst den Mittelwert und suche von dort aus den ersten Peak. Mit einer Schrittweite = (Intervall/2) suche ich das nächste Peak auf die selbe Art und Weise. Da die Signaldatei sehr groß ist kann ich nicht genau zu 100% sagen, ob nicht eventuell der erste Peak in einem Intervall unter dem Mittelwert liegt.
Methode 2:
Mit einer for-Schleife 1:intervall:ende suche ich mit findpeaks nach dem ersten Peak. Die Funktion finpeaks sieht dabei wie folgt aus:
findpeaks(signal(1+intervall*j:intervall*i),'MINPEAKHEIGHT',mean(signal),'NPEAKS',1);
Problem hierbei ist, dass er irgendwie nicht immer den ersten Peak erwischt.
Beschreibung: |
|
Download |
Dateiname: |
Signal.PNG |
Dateigröße: |
2.91 KB |
Heruntergeladen: |
452 mal |
|
|
|
DSP |
Forum-Meister
|
|
Beiträge: 2.117
|
|
|
|
Anmeldedatum: 28.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: R2014b
|
|
|
|
|
|
Verfasst am: 23.01.2016, 13:38
Titel:
|
|
Hallo,
kannst du mal bitte ein Testsignal hochladen? Z.B. als *.mat und dann packen.
|
|
|
|
|
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.
|
|