ich habe hier ein Problem und brauche mal eure Unterstützung.
Ich komme mit dem Matlab-Programm nicht immer zurecht.
Nun zur Sache, ich habe die Zeit Verschiebung zwischen zwei aufgenommene versch. Signale (rotes und blaues) ermitteln, in dem ich die Signale mit Matlab darstellte und mit der Data Coursor-Funktion durch die Maus auf dem Graph bzw. auf der X-Achse die verschobene Zeiten markierte (siehe Bild).
Das Problem ist es, diese müssen mit Matlab automatisch bestimmt werden. Daher brauche ich eure Unterstützung und ob es ein Befehl im Matlab gibt, der diese verschobene Zeiten bestimmt.
eine Möglichkeit ist logische Indizierung (logical indexing).
Dazu müssen wir wissen, was du genau suchst. Die Pfeile von unten scheinen die Zeiten zu sein, an denen das blaue Signal negativ wird?
Sind die Pfeile von oben nun die Zeiten, an denen das rote Signal positiv wird oder die, an denen das blaue Signal wieder auf 0 geht?
Grüße,
Harald
Owe
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 14.07.2015, 22:25
Titel:
Hallo Harald,
danke für die Hilfe und deine schnelle Antwort.
Also ich habe zwei Signalverläufe rot und blau ( Jeder Kurvenabstieg (blau) bzw. anstieg (rot) stellt eine Schrittbewegung, da ich diese mittels eines Sensors aufgenommene habe).
Nun will ich jede Zeit haben (ermitteln), die zwischen den Signalen blau und rot (im Bild zwischen zwei Pfeilen) liegen, damit ich die die Zeit-Verschiebung zwischen dem blauen und roten für den ganzen Messverlauf (evtl. bis 1000) bestimmen kann.
Genau so ist das wie du schriebst, die Pfeile von oben sind nun die Zeiten, an denen das rote Signal positiv wird und die von unten sind die Zeiten, an denen das blaue Signal negativ wird.
Übrigens habe ich schon gelesen das "Triggern" bzw. "Schwellenwert" helfen könnte, stimmt das ? Aber ich Weiß nicht wie man das in Matlab programmieren könnte.
wie gesagt: logische Indizierung (logical indexing) anschauen.
Anhand von Plots ist es immer schwierig, da man z.B. nicht sieht, ob ein Signal genau 0 ist oder nur recht nah an 0.
bitte kannst du mir genauer beschreiben (irgendeinen Befehel, Matlab-Funktion), wie ich damit anfange.
Gemesse Werte aus zwei Sensoren (X-Achse beider Signale ist die Zeit und Y-Achse Volumenstorm (blau) und Druck (rot)), wurden mittels Matlab durch Überlagerung beider Signale in einem Plot erstellet (wie man auf dem geposteten Bild sieht).
Die Signale sind recht nah an 0.
ich kann dir hier das Code noch posten.
Bitte um weitere Hilfe !!
bitte kannst du mir genauer beschreiben (irgendeinen Befehel, Matlab-Funktion), wie ich damit anfange.
Dafür gibt es keinen Befehl in dem Sinn, das ist mehr eine Vorgehensweise. Ich habe dir ja extra den englischen Begriff dazugeschrieben, damit du in der Hilfe danach suchen bzw. danach googeln kannst.
https://www.google.de/#q=matlab+logical+indexing
Zitat:
Die Signale sind recht nah an 0.
> 0 oder < 0? Wie nah? Am hilfreichsten wäre ein Datenbeispiel.
Zitat:
ich kann dir hier das Code noch posten.
Das wäre eine gute Idee. Und wie gesagt: Beispieldaten.
Grüße,
Harald
Owe
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 15.07.2015, 10:02
Titel:
Hallo,
danke, danke!!
hier ist ein Datenbeispiel bzw. die gemessene Werte aus zwei Sensoren ( Druck (rot) und Volumenstrom (blau)).
Dann das von mir erstelle Matlab-Code.
Ich muss immer die Zeiten zwischen den Pfeilen bzw. Pfeil nach oben, immer wo das blaue Signal fängt an abzufallen und rot Pfeil nach unten, immer wo das rote Signal fängt anzusteigen an, bestimmen.
Übrigens im Code steht ".lvm", da die Daten waren zunächst in komma Zahlen in einem Textdatei.lvm gespeichert. Hier könnte ich dir die org. Daten in . lvm nicht anhängen (unerlaubt). Daher bekommst du sie als PDF.
hast du dir denn die logische Indizierung inzwischen angesehen?
Grüße,
Harald
Owe
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 15.07.2015, 11:10
Titel:
Ja, klar habe ich auch.
Das Problem ist es, vertehe nicht wie soll ich damit meine Messdaten so einordnen, zu dem Zweck alle Zeiten zwischen den blauen und roten Signalen zu bestimmen ( da ich extrem versch. Messdaten habe).
grundsätzlich würde ich es erst mal mit einem Datensatz versuchen.
Ohne mehr über die Strukturierung der Daten zu wissen, kann man dir bei den "extrem verschiedenen" Messdaten schlecht weiterhelfen.
Grüße,
Harald
Owe
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 15.07.2015, 11:30
Titel:
Ok, aufjeden Fall danke dir !!
Owe
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 15.07.2015, 11:55
Titel:
Hallo Harlad,
eine Frage bitte noch!
kennst du der sog. Schwellenwert in matlab? Vielleicht hilft es mir um alle Zeiten zu bestimmen.
ein Schwellwert ist einfach ein Wert, über / unter dem man "etwas" macht.
Logische Indizierung ist eine Technik, in der man mit Schwellwerten arbeiten kann.
Grüße,
Harald
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
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.