LabVIEWForum.de
Messwerte über Zeitraum vergleichen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Messwerte über Zeitraum vergleichen (/Thread-Messwerte-ueber-Zeitraum-vergleichen)



Messwerte über Zeitraum vergleichen - quattro888 - 07.05.2019 08:29

Hallo zusammen,

ich bin noch ziemlich unerfahren was LabVIEW betrifft und muss ein Programm für eine Temperaturüberwachung schreiben.

Dabei werden in einem einstellbaren Intervall (z.B. alle 30 Sekunden) Temperaturwerte von einer festgelegten Anzahl Kanäle ausgelesen und als DBL Array ausgegeben.

Nun muss ich eine Funktion einbauen, die die Werteänderung über z.B. 15 Minuten vergleicht. Das Programm soll solange weiterlaufen, bis bei allen Kanälen die Abweichung nach unten und oben über die letzten 15 Minuten kleiner 2° ist.

Leider habe ich keine Ahnung wie ich an genau diesen Wertebereich der letzten 15 Minuten komme und diesen dann auf die Abweichung überprüfe.

Für ein paar Eingebungen wäre ich sehr dankbar Smile

Viele Grüße
quattro


RE: Messwerte über Zeitraum vergleichen - GerdW - 07.05.2019 09:00

Hallo quattro,

schau dir mal die Pt-By-Pt-MinMax-Funktion an…


RE: Messwerte über Zeitraum vergleichen - Trinitatis - 07.05.2019 11:43

Du musst im Grunde nur einen Speicher schaffen, der die Werte der letzten 15 min. beinhaltet. Das erledigen die von Gerd erwähnten Funktionen aus der Palette Signalverarbeitung --> Punkt für Punkt. Wenn deine N Kanäle als 1D-Array von N Werten vorliegen, dann musst du allerdings aufpassen, dass du die Abweichung über die Messzeit und nicht über die Kanäle bestimmst.

Gruß, Marko


RE: Messwerte über Zeitraum vergleichen - quattro888 - 07.05.2019 12:47

Hallo,

vielen Dank für den Hinweis auf diese Funktion. Das hilft mir schon sehr weiter.

Kann ich die Funktion denn auch irgendwie in einer Schleife nutzen oder wird mit jeder Iteration auch eine neue Queue in dem VI erstellt?

Hab gerade echt Probleme mich da reinzudenken Huh

Wie sollte ich sonst die einzelnen Werte aus dem Array bekommen und zur Laufzeit der Prüfung diese MinMax Abfrage durchführen? Habe gerade schon mit ArrayToCluster rumprobiert aber das sieht ziemlich wild aus Blink

Die Größen die ich kenne sind:
- Start- und Endkanal über die ich auch das Datenarray indizieren kann. Das Array selbst hat immer eine Größe von 24, relevant sind jedoch nur die Werte zwischen Start- und Endkanal
- Das Abfrageintervall (30 Sekunden)
- Den (variablen) Zeitraum in welchem der Min- und Max-Wert nicht mehr als diese 2 Grad abweichen dürfen

Danke auf jeden Fall schonmal für die Hilfe. Ich werde direkt mal weiter it dem VI rumprobieren.

VG
quattro


RE: Messwerte über Zeitraum vergleichen - Trinitatis - 07.05.2019 13:24

Diese VIs arbeiten idR mit uninitialisierten Shiftregistern. Dadurch kannst du bei jedem VI-Aufruf auf diesen Inhalt zugreifen.
Du kannst diese VIs natürlich auch in einer Schleife nutzen - musst eben nur aufpassne, dass du die Kanäle nicht durcheinanderhaust.
Du kannst natürlich auch jeden Kanalwert in eine separate LossyQueueu einfügen und deren Inhalte auf zulässige Abweichungen prüfen. Das könnte verständlicher sein für einen Anfänger.

Gruß, Marko


Edit:
hier mal ein kleines Min/Max.-Beispiel