LabVIEWForum.de
Nur ein SubVI in Whileschleife soll verzögert werden - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Nur ein SubVI in Whileschleife soll verzögert werden (/Thread-Nur-ein-SubVI-in-Whileschleife-soll-verzoegert-werden)



Nur ein SubVI in Whileschleife soll verzögert werden - mikadm - 12.08.2020 09:50

Hallo,

In miner While-Schleife befindet sich zum einem eine Regelung von Proportionalventilen und zum anderen die Auslesung von analogen Sauerstoffsensoren. Die Whileschleife befindet sich im Abschnitt einer Flachen Sequenzstruktur.
Die Regelung und der Sauerstoffwert sollen durchgängig ohne Verzögerung weiterlaufen. Jedoch möchte ich, dass der Sauerstoffwert alle 20s abgefragt wird und mit einem festgelegten Wert verglichen wird. Je nach Abweichung soll der eingestellte Durchflusswert der Ventile geändert werden.
Ich möchte also das nur das Vergleichs SubVI verzögert ausgeführt wird.

Gibt es eine solche Funktion oder weiß jemand wie ich dieses Problem lösen kann ?

LG
mikadm


RE: Nur ein SubVI in Whileschleife soll verzögert werden - GerdW - 12.08.2020 10:31

Hallo mikadm,

Zitat:Die Whileschleife befindet sich im Abschnitt einer Flachen Sequenzstruktur.
Also eine Loop innerhalb eines Sequenz-Frames, der womöglich wieder innerhalb einer Loop liegt?
Da gibt es doch bestimmt bessere Konstrukte…

Zitat:Die Regelung und der Sauerstoffwert sollen durchgängig ohne Verzögerung weiterlaufen.
Das sollte dann in seiner eigenen Schleife passieren, wo nichts anderes die Iterationen verzögern kann.

Zitat:Jedoch möchte ich, dass der Sauerstoffwert alle 20s abgefragt wird und mit einem festgelegten Wert verglichen wird. Je nach Abweichung soll der eingestellte Durchflusswert der Ventile geändert werden.
Quick&Dirty (!): Auch das in seine eigene Schleife packen und alle 20s iterieren…

Zitat:Ich möchte also das nur das Vergleichs SubVI verzögert ausgeführt wird.
Bitte auf die Wortwahl achten: "verzögert" oder "in regelmäßigen Intervallen"?
Programmieren beginnt schon mit einer möglichst genauen Problembeschreibung…

Zitat:Gibt es eine solche Funktion oder weiß jemand wie ich dieses Problem lösen kann ?
Ich würde dir eine Statemachine ans Herz legen…


RE: Nur ein SubVI in Whileschleife soll verzögert werden - mikadm - 12.08.2020 14:54

Eine eigene Schleife für das entsprechende SubVI hat leider nicht funktioniert. Ich habe es jetzt mit dem Express-VI Verstrichene Zeit und einer Case-Struktur realisiert.