Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
Hallo zusammen,
ich habe einen sinusartigen Signalverlauf (Messung eines Moments das sich leicht ändern kann), von dem ich gerne die maximalen Ausschläge bestimmen würde. Ich habe dies zuerst mit dem Express-VI "Amplituden- und Pegelmessung" gemacht und habe mitlerweile den Baustein "Signalverlauf - Minimum Maximum" verbaut. Das ganze funktioniert auch ganz zufriedenstellend, allerdings nur bis zu einer Frequenz von ca. 6Hz. Bei allen Frequenzen unter diesem Wert fängt das Maximum an mit dem Hauptsignal zu schwingen. Hat vielleicht jemand einen Tipp wie ich die Maxima auch bei kleinen Frequenzen bestimmen kann??? Meine Vermutung ist, dass das Betrachtete Intervall dieser Bausteine zu klein ist hierfür. Ich habe aber auch keine Möglichkeit gefunden es zu verändern.
So wird's wohl sein... Diese Funktion bestimmt das lokale, nicht das globale Maximum. Normalerweise nimmt man dafür z.B. das VI "Array Max & Min". Ich glaube aber nicht, dass das auch bei Signalverläufen funktioniert. Da ich diese noch nie verwendet habe (und bestimmt auch meine Finger davon lasse), kenne ich mich auch nicht mit deren Erzeugung zu Testzwecken aus. Von daher wär's nett, wenn du mal ein lauffähiges(!) VI posten kannst, mit dem ich testen kann...
Ich habe auch die englische Version, so dass ich gar nicht richtig weiß, was das "Signalverlauf - Minimum Maximum" ist. Ich habe aber bei den Signalverläufen mehrere VIs gefunden, die was mit Amplitude und Level im Namen haben. Bei alles kannst du einstellen, wieviele Punkte angesehen werden sollen bzw. ob du dir die Peaks merken willst, d.h. das globale Max bestimmst...
Habe gerade die Original-Datei hier zu Hause nicht zur Hand, habe aber einen Vereinfachten Ablauf fertig gemacht. Hierbei habe ich festgestellt das die ganze sache noch schlimmer wird wenn die Anzahl der Abtastwerte reduziert wird. Hier im Bsp. steht sie bei 100, am Prüfstand sollte sie aber bei 10 liegen. Optimum wäre halt wenn die Max Kurve sich aus Geraden zwischen den Maxima zusammensetzt, und das auch bei 1 Hz.
' schrieb:Diese Funktion bestimmt das lokale, nicht das globale Maximum. Normalerweise nimmt man dafür z.B. das VI "Array Max & Min". Ich glaube aber nicht, dass das auch bei Signalverläufen funktioniert. Da ich diese noch nie verwendet habe (und bestimmt auch meine Finger davon lasse), kenne ich mich auch nicht mit deren Erzeugung zu Testzwecken aus.
Signalverläufe sind Waveforms...und die Funktion "Waveform Min+Max" macht nichts anderes, als aus dem "Waveform-Cluster" (Y-Array, t0, dt) das Wertearray zu extrahieren und mit "Array Min+Max" zu untersuchen.
@monoceros:
Du kannst Waveforms / Signalverläufe bedenkenlos verwenden! Da ist überhaupt nix dran auszusetzen! Das ist nix anderes, als ein Double-Array von Messwerten mit zusätzlichen "Timing-Informationen"...diese müsstest du dir immer selber mitnehmen/erzeugen, wenn du nur das Y-Werte-Array verwendest! Zusätzlich kannst du noch weitere Informationen mitgeben, diese können als "Attributes" einer Kurve zugeordnet werden...damit kannst du z.b. "innerhalb der Kurve" einen eindeutigen Namen vergeben!
Was anderes ist der DDT (Dynamic Data Type). Das ist sowas wie "Express-VI's als Kurve"...davon lass ich auch komplett die Finger, weil man nicht so richtig nachvollziehen kann, wie das funktioniert und wann genau da welche Wandlung passiert und weil man einfach zu wenig Einfluss auf die Kurven hat...Bäh...Pfui!
Gruß
Achim
"Is there some mightier sage, of whom we have yet to learn?"
"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
06.11.2007, 07:38 (Dieser Beitrag wurde zuletzt bearbeitet: 02.12.2007 15:10 von jg.)
' schrieb:Habe gerade die Original-Datei hier zu Hause nicht zur Hand, habe aber einen Vereinfachten Ablauf fertig gemacht.
Hi Christian,
wie ich im Post vorher schon gesagt habe, halte ich von dem DDT rein gar nichts...Versuch's mal so, wie hier im Beispiel!
Verwende für deine reale Datenerfassung möglichst auch Waveforms oder "normale" Y-Werte-Arrays, und nicht den DDT! Wie man das beim DAQ-Assistant umstellt, weiß ich jetzt grade auch nicht...ich hab den Assistant aber auch noch nie verwendet, sondern "immer" selber programmiert...ausgehend von den zahlreichen DAQ-Beispielen im Example Finder...always a good place to start! Siehe Beispiel "Waveform Min Max Example" , Suchbegriff "waveforms"....
Was ist denn nun der Unterschied zwischen Waveforms, Signalverläufen und DDT? Nach deinem Post, Achim, verstehe ich das so, dass Signalverlauf nur die Übersetzung des englischen Begriffs Waveform ist. Dann wäre mir der Unterschied klar und dann habe ich die Signalverläufe/ Waveforms auch schon angewendet: Waveforms sind braune Leitungen, DDTs blaue.
Wenn die beiden aber nicht das gleiche meinen, dann stehe ich vor einem Rätsel...
' schrieb:Was ist denn nun der Unterschied zwischen Waveforms, Signalverläufen und DDT? Nach deinem Post, Achim, verstehe ich das so, dass Signalverlauf nur die Übersetzung des englischen Begriffs Waveform ist. Dann wäre mir der Unterschied klar und dann habe ich die Signalverläufe/ Waveforms auch schon angewendet: Waveforms sind braune Leitungen, DDTs blaue.
Wenn die beiden aber nicht das gleiche meinen, dann stehe ich vor einem Rätsel...
Waveform = Signalverlauf: braun
DDT (Dynamic Data Type) = vergewaltigte Waveform: blau
"Is there some mightier sage, of whom we have yet to learn?"
"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Schonmal vielen Dank für die Antworten. Dein Beispiel funktioniert so wie ich es mir vergestellt habe, jetzt muß ich es nurnoch schaffen das ganze mit echten Signalen zu füttern die nicht aus dem DAQ-Express-VI kommen. Ich habe das schon oft versucht, da hier im Forum oft von den Express-VIs abgeraten wird, bin aber leider nie zu den Ergebnissen gekommen die ich wollte (Das Signal mit so vielen Werten/Zeiteinheit zu erfassen, dass der Kurvenverlauf auch bei größeren Frequenzen noch sehr detailiert (runder Verlauf und nicht abgehackt) zu erkennen ist). Hier habe ich mit dem Assi die besten Ergebnisse erzielt. Dazu kommt noch, dass ich von den ganzen Beispielen im Example-Finder nur ca.4 ausführen kann, da der Rest nicht mit meiner Messkarte (PCI-6010) funktioniert, was das Erlernen des Umgangs mit den "nicht Express-VIs" erschwert. Dann werde ich mich wohl wieder auf die Suche nach Beispielen oder gescheiten Dokumentationen im Netz begeben und hoffe eine Lösung oder wenigstens Tipps die in die richtige Richtung führen zu finden.
Gruß
Christian
06.11.2007, 14:31 (Dieser Beitrag wurde zuletzt bearbeitet: 02.12.2007 15:10 von jg.)
Hallo nochmal,
könnte mir vielleicht jemand einen Tipp geben wie ich ohne Express-VI die Signale so erfassen kann, das sie mit dem Min-Max VI funktionieren. Ich habe mal ein VI erstellt nachdem ich mir einige Beispiele zur Datenerfassung angeschaut habe, aber leider funktioniert es nicht. Muß ich etwas besonderes einstellen wenn das Signal wie ein Sinus schwingt?? Ich habe hier wieder das Problem das erst oberhalb 18Hz das ganze funktioniert
Gruß
Christian
(VI LV 8.2)
06.11.2007, 16:03 (Dieser Beitrag wurde zuletzt bearbeitet: 02.12.2007 15:10 von jg.)
' schrieb:Ich habe hier wieder das Problem das erst oberhalb 18Hz das ganze funktioniert
Ich kann grad keine richtiges Signal anlegen, aber so wie ich das sehe, musst du eine "Point-by-Point"-Analyse durchführen...Guck mal, ob das geänderte VI im Beispiel was nützt...evtl. musst du mit den Point-by-Point-Operationen noch spielen...