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

Spruenge im Signal erkennen

 

M_CL
Forum-Anfänger

Forum-Anfänger


Beiträge: 13
Anmeldedatum: 14.06.10
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 14.06.2010, 16:39     Titel: Spruenge im Signal erkennen
  Antworten mit Zitat      
Hallo!

Ich brauche Hilfe bei einem MATLAB Code und hoffe, dass jemand eine gute Idee hat.

Gegeben: 2 Signale (Verlauf über ein Zeitintervall von ungefaehr 70 s)

Es wird alle 10 ms der Wert der Signale gemessen und festgehalten. Ich muss nun die Zeitpunkte bestimmen, an denen Sprünge auftreten, die ueber ein definiertes Maß gehen. Diese Sprünge treten nicht zwischen den einzelnen Messungen auf, sondern wiederum über ein gewisses (mir unbekanntes) Intervall.

Was kann man machen?

Besten Dank im Voraus!
Private Nachricht senden Benutzer-Profile anzeigen


AndiBar
Forum-Anfänger

Forum-Anfänger


Beiträge: 10
Anmeldedatum: 24.11.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 17.06.2010, 18:02     Titel:
  Antworten mit Zitat      
Ein paar Fragen zu den Signalen wären vor einer Antwort noch zu klären, du bist etwas sparsam mit Informationen Wink :

a) ist das Signal bis auf die Sprünge relativ (von rauschen mal abgesehen) konstant bei einem Wert? Sollst du quasi nur Impulse fangen, die gleichmäßig stark oberhalb der Grundlinie liegen?

b)oder haben die Signale ausser den Sprüngen noch eine gewisse Drift, die die Grundlinie verschiebt?


im folgenden sei "i" _i_rgendeine Einheit Wink

im ersten Fall reicht eine einfacher Schwellwert. Beispielsweise dümpelt dein Signal normal um +-0i vor sich hin und springt zeitweise auf 70i.
Dann fragst du einfach jeden Messwert ab, ob er >50 ist.

Fall b) ist mithilfe von "diff" gut zu lösen denke ich.

Zitat Doku:
Code:
Y = diff(X) calculates differences between adjacent elements of X.


Hier kommt es dann nicht auf absolute Werte an, sondern nur auf ihre Differenzen zu direkten Nachbarn. Wenn die Sprünge sich länger aufbauen als in 10ms (deiner Abtastzeit) summierst du einfach die Differenzen entsprechend auf.

Grüße, Andi
[/code]
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.