LabVIEWForum.de
Anfängerproblem: Wert aus While-Schleife raustunneln - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Anfängerproblem: Wert aus While-Schleife raustunneln (/Thread-Anfaengerproblem-Wert-aus-While-Schleife-raustunneln)



Anfängerproblem: Wert aus While-Schleife raustunneln - sominu - 22.11.2004 18:30

Hallo Leute,
ich habe jetzt ein Programm geschrieben, in dem ich an der seriellen Schnittstelle den Takt eines Durchflussmessers auslese und in l/h umrechne. Hierbei soll alle 5s der Durchfluss aktualisiert werden. Das funktioniert auch schon einwandfrei. Der Programmteil zum Erzeugen dieses Ergebnisses befindet sich in einer While-Schleife.

Jetzt möchte ich mit einer Schleife, die sich ausserhalb dieser While-Schleife befindet jede Sekunde diesen und noch andere Werte zusammenfassen und in eine Datei schreiben. Dieser Teil funktioniert auch, jedoch kriege ich aus der Durchfluss-Schleife den Wert für den Durchfluss nicht raus.

Wenn man, während das Programm läuft, die "Leitung" misst, ist der Wert in der Schleife vorhanden, aber ausserhalb der Schleife ist kein Wert zu messen (es wird "0" angezeigt, grau hinterlegt). Wie also kriege ich einen Ergebniswert aus einer Schleife raus? Ich habe einen ganz normalen Tunnel an der Schleife.

Ich hoffe man versteht, was ich meine. Evtl. kann ich morgen das File posten.

mfg
somi


Anfängerproblem: Wert aus While-Schleife raustunneln - Oliver Listing - 23.11.2004 10:27

Hi sominu,

LabVIEW ist eine Datenflußgesteuerte Programmiersprache.
D.h. erst wenn deine Meßschleife abgearbeitet ist, wir der letzte Wert aus dem Tunnel heraus weitergegeben. Alle anderen Funktionen, die diesen Wert verarbeiten sollen warten somit solange, bis der Wert da, d.h. deine Schleife beendet ist.

Willst du wirklich zwischen zwei Schleifen, die parallel laufen sollen Daten austauschen, so mußt du entweder eine Lokal Variable, eine Queue oder einen ähnlichen meachnismus dafür nutzen.

Wenn dein Programm größer wird, würde ich eine Queue nehmen und die Hirachie ändern, d.h. die Meßschleife in eine Unterfunktion (Sub-VI) programmieren, die entweder direkt oder dynamisch aufgerufen wird.

Bei Fragen oder Unklarheiten poste doch noch einmal.

Gruß
Oliver

P.s. ergänze doch bitte dein Profil wenigstens um die verwendete LabVIEW-Version/en - Danke


Anfängerproblem: Wert aus While-Schleife raustunneln - sominu - 23.11.2004 14:14

Hi Oliver,
das mit der lokalen Variable hat jetzt geklappt. DankeBig Grin

/E: Profil ergänzt: LV7.1Wink