LabVIEWForum.de
Vergleich der letzten Werte im Array - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Vergleich der letzten Werte im Array (/Thread-Vergleich-der-letzten-Werte-im-Array)



Vergleich der letzten Werte im Array - Juliana90 - 04.03.2013 12:46

Ich habe ein kleines Problem, und zwar möchte gerne wissen wenn die letzten Array-Werte in einem bestimmten Bereich liegen.
Mein vi führt eine mathematische Operation aus, das Ergebnis nähert sich immer weiter dem Wert 0,42 an. Ich möchte
gerne ein true ausgeben, wenn sich die letzten 5 Werte des Arrays zwischen 0,40 und 0,44 befinden. Wie ist das zu realisieren?


RE: Vergleich der letzten Werte im Array - GerdW - 04.03.2013 12:51

Hallo Juliana,

man sollte prüfen, ob die letzten 5 Werte innerhalb des gewünschten Bereiches liegen:
[attachment=43790]


RE: Vergleich der letzten Werte im Array - Juliana90 - 04.03.2013 18:49

Das sieht schon sehr gut aus, gibt es auch eine Möglichkeit eines prozentualen Vergleichs? Z.B. ob die letzten 5 Arraywerte alle
innerhalb von 3% liegen? Oder alternativ ein Vergleich, ob der Mittelwert der letzten 5 Arraywerte weniger als 3% vom aktuellen Wert abweicht?


RE: Vergleich der letzten Werte im Array - Trinitatis - 04.03.2013 18:54

Wie isses denn so mit dem guten alten Dreisatz,
das könntst du jetzt glatt selbst hinbekommen.

Gruß, Marko


RE: Vergleich der letzten Werte im Array - Juliana90 - 04.03.2013 19:51

Den mathematischen Teil kriege ich gerade noch hin, aber ich stehe mit den arrays in labview auf Kriegsfuß.
Sobald ich den Ausgang des arrays verbinde, lautet der Datentyp 1D-Array. Dann hängt es spätestens daran,
zu vergleichen ob der letzte Wert kleiner ist als 0,97 x dem aktuellen Wert. Könnte mir vielleicht jemand
einen Lösungsansatz oder ein knappes vi zeigen?


RE: Vergleich der letzten Werte im Array - Trinitatis - 04.03.2013 20:48

(04.03.2013 19:51 )Juliana90 schrieb:  Sobald ich den Ausgang des arrays verbinde, lautet der Datentyp 1D-Array.

Was hättest du denn erwartet?!

Wenn du dir das VI von Gerd zusammenbaust, in dem das Array ja rückwärts zusammengebaut wird, dann kannst du doch genau dort, wo die ersten 5 Elemente (durch die Drehung also die letzten 5) ausgewertet werden alles mögliche abprüfen. Wenn du diese Prüfung polymorph programmierst, dann bekommst du ein Bool-Array, das du dann genauer untersuchen kannst, z.B. verodern.




Gruß, Marko


RE: Vergleich der letzten Werte im Array - GerdW - 04.03.2013 20:53

Hallo Juliana,

was ist so schwierig an Array-Rechnungen? Sie funktionieren doch genauso wie mit Skalaren:
[attachment=43792]


RE: Vergleich der letzten Werte im Array - Juliana90 - 04.03.2013 23:34

Lieben Dank schonmal für eure Hilfe. Leider steckt irgendwo im vi ein Fehler. Ich habe beide Möglichkeiten ausprobiert, aber es haut einfach nicht hin.
Ob man die Abweichung auf 3, 10 oder 30 Prozent stellt, die Auswertung stimmt nicht. Ich wäre sehr dankbar, wenn ihr den Fehler in meinem vi korrigieren könnt!


RE: Vergleich der letzten Werte im Array - Clyde - 05.03.2013 07:36

Dein Programm überprüft momentan ob ALLE Werte im Array in dem vorgegeben Bereich liegen und nicht nur die letzten 5.
Außerdem ist zu beachten, dass der Mittelwert nicht genau der Mittelpunkt den vorgegebenen Bereichs ist, sondern pro Schleifendurchlauf schwankt - da sollte man eventuell doch einen festen Wert vorgeben.


RE: Vergleich der letzten Werte im Array - Lucki - 05.03.2013 09:02

Übrigens: Man muss hier gar nicht mit Arrays jonglieren. Man braucht doch nur zu zählen, ob die Bedingung 5 mal hintereinander erfüllt ist:

[attachment=43798] [attachment=43799]