LabVIEWForum.de
Ereignis "Wertänderung" verzögern - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Ereignis "Wertänderung" verzögern (/Thread-Ereignis-Wertaenderung-verzoegern)



Ereignis "Wertänderung" verzögern - aw - 11.08.2016 14:03

Hallo liebe LV-Gemeinde,

ich komme gerade an einem Punkt nicht weiter und bräuchte einen kleinen Denkanstoß. Und zwar habe ich ein VI mit dem man Positionen auf einem Wafer anfahren kann, wahlweise nur die manuell ausgewählten oder alle in einer Datei gegebenen Positionen. Es besteht jedoch die Möglichkeit, die Prozedur vorzeitig zu unterbrechen (STOP-Button). Da ich mit lokalen Variablen dieses Buttons zum Beenden der FOR-Schleifen arbeite, muss dieser nach dem benutzerdefinierten Eingriff erst wieder auf FALSE gestellt werden um ihn erneut nutzen zu können (Latch funktioniert ja nicht). Deshalb habe ich ihn in eine Ereignisstruktur gepackt, die dies gewährleisten soll (siehe VI (LV 2015)/Screenshot). Allerdings schaltet der Wert momentan auf FALSE zurück, bevor das TRUE überhaupt am Bedingungsanschluss der FOR-Schleife ankommt. wie lässt es sich realisieren, das der Wert erst nach Beendigung der Schleife zurückgesetzt wird?

Danke im Voraus für Eure Lösungsvorschläge.


RE: Ereignis "Wertänderung" verzögern - Morpheus - 11.08.2016 14:57

Hallo

Du könntest zum Beispiel den Stop-Button (erst) am Ende der FOR-Schleife zurück setzen und nicht schon in der Event-Struktur.

Gruss
Chris


RE: Ereignis "Wertänderung" verzögern - Freddy - 11.08.2016 15:59

Da die While Schleifen unabhängig von einander arbeiten ist nicht gewährleistet, dass die Variable erst nach der Änderung gelesen wird.
Ich würde das mit Queues lösen. Da ist die Abhängigkeit leichter zu realisieren.

Gruß
Freddy


RE: Ereignis "Wertänderung" verzögern - Trinitatis - 11.08.2016 16:08

(11.08.2016 14:03 )aw schrieb:  wie lässt es sich realisieren, das der Wert erst nach Beendigung der Schleife zurückgesetzt wird?

Hallo,

der ganze Aufbau ist etwas suboptimal. Eine elegante Möglichkeit, eine Schleife mit einem Warteprozess abzubrechen ist, einen Melder einzubauen.
Dann kann deine Wartezeit auch ´ne halbe Stunde betragen - du könntest trotzdem jederzeit abbrechen. Das geht in deiner Version nicht, weil die WAIT-Funktion nicht abbrechbar ist.

Gruß, Marko