LabVIEWForum.de - Lokale Variable in while-Schleife auslesen

LabVIEWForum.de

Normale Version: Lokale Variable in while-Schleife auslesen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,
ich möchte für eine Messung eine bestimmte Zeit lang Daten aufnehmen. Diese Zeitmessung muss aber auch vor Ablauf der Zeit gestoppt werden können. Deshalb habe ich ein Haltzeiten.vi geschrieben, welches es erlaubt bei Stopp=true die Zeitmessung zu beenden. Jetzt geht es darum das ganze ins restliche Messprogramm einzubauen und zu steuern.
Dafür habe ich -wie unten zu sehen- in einer while-Schleife den Stopp-Knopf und in der anderen dessen lokale Variabel. Mein Problem ist nun, dass diese lokale Variabel erst dann wieder neu abgefragt wird, wenn das Haltezeit.vi durchgelaufen ist. Das macht die ganze Sache natürlich sinnlos, da ja während der Zeitmessung gestoppt werden soll.
Hat jemand vielleicht eine Idee wie ich diese lokale Variabel immer auslese, auch wenn das Haltezeit.vi läuft?

Beste Grüße
Io


[attachment=49804]
Hallo io,

entferne doch mal die lokalen Variablen und verdrahte alles direkt in einer Schleife.
Und dann noch eine kleine Wartezeit, um nicht unnötig die CPU zu verbrennen…
Hallo Gerd,

Du meinst den Stopp-Knopf gleich in die untere Schleife setzen (also obere Schleife ganz weg)? Aber dann habe ich immer noch das Problem, dass er den Wert erst nach Durchlaufen des anderen VIs wieder abfragt.
Hallo Io,

Zitat:Aber dann habe ich immer noch das Problem, dass er den Wert erst nach Durchlaufen des anderen VIs wieder abfragt.
Das ist kein Problem, das ist DATAFLOW!
THINK DATAFLOW!

Wenn du den Stopp-Button öfter abfragen willst, muss die Schleife schneller iterieren!

Wenn dein "Haltezeit"-VI 30 Sekunden lang läuft, dann hast du das falsch (für diesen Zweck) programmiert. Lass es doch 60mal 0.5s lang laufen, dann reagiert es schon nach spätestens 500ms auf einen Klick des Stopp-Buttons…
Schon mal vielen Dank für die Antwort.
Habe das jetzt so gelöst, allerdings weiß ich nicht wie ich die von dir oben erwähnte Wartezeit einbauen soll. Hast du da vielleicht einen Tipp?
[attachment=49823]
Hallo Io,

mit dem ElapsedTime-ExpressVI sieht dein VI in etwa so aus:
[attachment=49824]
Super funktioniert einwandfrei. Vielen Dank!
Referenz-URLs