Na das eure Kristallkugeln nicht so gut sind muss man mir doch auch sagen.
@macces So schlecht war deine Kristallkugel gar nicht. Auf jeden Fall klappt es jetzt.
Trotzdem hier noch einmal eine genauere Beschreibung des gelösten Problems.
Es geht um das auslesen von Sensordaten.
Deswegen ändert sich das array je nachdem was ich für Daten auslese.
Das ganze ergibt dann als Signalverlaufsdiagramm angezeigt eine mehr oder weniger
schöne Kurve. Und von dieser Kurve hätte ich gerne den maximalen und minimalen Wert,
von dem Zeitraum an, wo ein Schalter aktiviert ist.
Das dass array nur einen Wert hat ist ja klar, aber ich lasse mir ja immer nur 16 bit davon anzeigen.
Und die angezeigten 16 Bit müßten dann immer miteinander verglichen werden.
So stelle ich mir das jedenfalls vor.
Zum Schluss noch einmal ein dickes
DANKE SCHÖN an alle die sich Zeit für mich genommen haben.
' schrieb:Ich hätte das gerne, dass nach einem Knopfdruck das array so lange ausgelesen wird, bis ich den Knopf
noch einmal drücke.
Kann mir da jemand etwas auf die Sprünge helfen?
Für Deine Anforderung gibt es fertige VIs, da muß nichts mehr um das Max/Min-VI herum programmiert werden.
Die Vis sind speziell für für Online-Erfassung über längere Zeit konzipert.
Schwer zu finden:
Signalverarbeitung - Signalverlaufsmessung - Signalverlaufsüberwachung - Spitzenwerterkennung.
Oder:
Signalverarbeitung - Signaloperation - Punkt für Punkt - Signaloperation (Punkt f. P.) - Spitzenwerterkennung.
Es gibt glaube ich noch ein drittes VI für Arrays statt Waveforms (Signalverläufe).
Suche mal selbst danach, bis Dus hast.
' schrieb:Für Deine Anforderung gibt es fertige VIs, da muß nichts mehr um das Max/Min-VI herum programmiert werden.
Die Vis sind speziell für für Online-Erfassung über längere Zeit konzipert.
Schwer zu finden:
Signalverarbeitung - Signalverlaufsmessung - Signalverlaufsüberwachung - Spitzenwerterkennung.
Oder:
Signalverarbeitung - Signaloperation - Punkt für Punkt - Signaloperation (Punkt f. P.) - Spitzenwerterkennung.
Es gibt glaube ich noch ein drittes VI für Arrays statt Waveforms (Signalverläufe).
Suche mal selbst danach, bis Dus hast.
Die VIs hatte ich auch schon gefunden, aber leider immer Probleme mit der Datenkonvertierung.
Ich habe da meine Sensordaten nie so umgewandelt bekommen, dass sie die VIs akzeptieren.
Aber da es jetzt im Endeffekt ohne viel Aufwand läuft, kümmer ich mich erst um die nächsten Probleme.

Einige Schwierigkeiten habe ich leider noch.
Ich habe mal 2 Versionen erstellt mit verschiedenen Vorteilen, die ich gerne alle in einer Version hätte.
Also das Programm soll 3 Möglichkeiten abdecken.
Links messen, rechts messen und die Messdaten löschen.
Die Messwerte sollen gespeichert werden, bis ich sie mit einem Knopfdruck lösche.
Während des betriebes von links nach rechts schalten zu können muss nicht unbedingt funktionieren.
Das Programm Test erfüllt die Bedingungen, nur wenn ich während des laufenden Betriebes von links messen
auf rechts messen schalte ohne zu stoppen, übernimmt er die max und min Werte der anderen Messungen, weil die Werte
direkt in beide Schieberegister geschoben werden.
Dann werden noch die Messwerte gelöscht, wenn man von der einen auf die andere Seite schaltet, da ich die
nicht verbundenen Tunnelausgänge auf den Standartwert zurück setze.
Das zweite Programm Test 2 speichert die Daten, aber ich kann sie nicht mit einem Knopfdruck löschen.
Und ich kann da nicht während des Betriebes von links auf rechts messen schalten.
Hat da auch noch jemand einen guten Rat für mich?
in LabVIEW 8.0 erstellt
[
attachment=16465]
[
attachment=16467]
' schrieb:Das zweite Programm Test 2 speichert die Daten, aber ich kann sie nicht mit einem Knopfdruck löschen.
Und ich kann da nicht während des Betriebes von links auf rechts messen schalten.
Hat da auch noch jemand einen guten Rat für mich?
Ok, einige Sachen schaffe ich auch alleine. Das mit dem löschen funktioniert jetzt.

Hi,
hab dir mal auf die Schnelle was gebastelt.
Keine Ahnung ob das das macht, was du willst. Blicke immer noch nicht so recht durch.
Wie mißt du denn? Was genau brauchst du denn?
So wie das jetzt gebaut ist, speicherst du mit jeder Iteration noch einen zusätzlichen Meßwert. Das wird schnell ein sehr langer Array. Ist das gewollt? Brauchst du die Meßwerte? Oder nur die Maxima? Dann musst du ja keinen Array verwenden. Fragen über Fragen ...

[
attachment=16474]
' schrieb:Hi,
hab dir mal auf die Schnelle was gebastelt.
Keine Ahnung ob das das macht, was du willst. Blicke immer noch nicht so recht durch.
Wie mißt du denn? Was genau brauchst du denn?
So wie das jetzt gebaut ist, speicherst du mit jeder Iteration noch einen zusätzlichen Meßwert. Das wird schnell ein sehr langer Array. Ist das gewollt? Brauchst du die Meßwerte? Oder nur die Maxima? Dann musst du ja keinen Array verwenden. Fragen über Fragen ...
[attachment=44130:Unbenannt_1.vi]
Wow, auf die Idee mit den Clustern wäre ich nicht gekommen. Mit denen habe ich bis jetzt noch nichts gemacht.
Das ist schon ziemlich nah an dem was ich mir vorgestellt habe.
Leider ist da ein kleiner Fehler drin, der wohl auch nicht so gut rüber kam.
Ich habe nur einen Sensor mit dem ich links oder rechts messe.
Die Messung funktioniert indem die Messkurve ausgewertet wird bzw. gibt der aktuelle Wert der Kurve mein aktuelles Messergenis an.
Die Maxima und Minima benötige ich zur Fehlerkorrektur. Quasi muss der Offset zwischen den Werten vom Ergebnis abgezogen werden.
Also brauche ich leider alle Messwerte.
Bei weiteren Fragen einfach fragen, oder die [
attachment=16500] befragen.

Wir scheinen ja beide die eine oder andere Frage offen zu lassen.
dankende Grüße
Markus
' schrieb:hab dir mal auf die Schnelle was gebastelt.
A ganz kleines Bisserl muß ich diese Initialisierung bemeckern:
[
attachment=16511]
Das funktioniert nur, wenn der zu erwartete Maximalwert positiv, der zu erwartende Minimalwert negativ ist, also z.B bei Schwingungen ohne Gleichkomponente. Immer richtig ist es hingegen, den Maximalwert mit "-Inf" und den Minimalwert mit "+Inf" zu initialisieren.
' schrieb:A ganz kleines Bisserl muß ich diese Initialisierung bemeckern:
[attachment=44170:Unbenannt_1d2.png]
Das funktioniert nur, wenn der zu erwartete Maximalwert positiv, der zu erwartende Minimalwert negativ ist, also z.B bei Schwingungen ohne Gleichkomponente. Immer richtig ist es hingegen, den Maximalwert mit "-Inf" und den Minimalwert mit "+Inf" zu initialisieren.
Kvasir hat bestimmt in meinen Programmen gesehen das ich die Werte einfach auf Null gesetzt habe und ist davon ausgegangen das es so richtig ist.
Die Maxima und Minima werden auch immer positive und negative Werte haben, bevor mit ihnen gerechnet wird.
Aber gut das du das geschrieben hast, ich werde das mal im Hinterkopf behalten.
Ich habe das jetzt mal so gelöst.
Da stört mich jetzt nur noch das ich 2 Diagramme habe, aber damit werde ich wohl leben können.
LabVIEW 8.0
[
attachment=16541]