LabVIEWForum.de - Ablaufverzögerung innerhalb einer WHILE-Schleife

LabVIEWForum.de

Normale Version: Ablaufverzögerung innerhalb einer WHILE-Schleife
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich würde gerne innerhalb einer While-Schleife das Schreiben mittels VISA-Write auf die serielle Schnittstelle verzögern. Im Moment wird innerhalb der Schleife eine Eingabe gelesen und quittiert und dann die Daten verarbeitet und abschliessend wieder quittiert. Die beiden Quittierungsvorgänge würde ich gerne zeitlich verzögern (weil die Datenverarbeitung ziemlich schnell geht). Nun habe ich bisher nur Elemente gefunden, mittels derer die Schleifenwiederholung verzögert werden kann.
Daher die Frage: kann man innerhalb einer Struktur den Ablauf überhaupt verzögern oder ist das einfach nicht vorgesehen.

Eine Lösung für mein Problem wäre wohl, das Schreiben in eine separate Schleife auszulagern und über Locals zu triggern und dann die Ausführung der separaten Schleife mittels Time-wait zu verzögern. Sollte schon machbar sein, allerdings macht es das Programm nur (unnötig?) kompliziert...
Hm, das Terminal-Programm aus dem Forum hat mich auf VISA-Wait on Event gebracht. Vllt kann ich das verwenden, muss ich aber wohl bis morgen warten...
' schrieb:Hallo,

ich würde gerne innerhalb einer While-Schleife das Schreiben mittels VISA-Write auf die serielle Schnittstelle verzögern. Im Moment wird innerhalb der Schleife eine Eingabe gelesen und quittiert und dann die Daten verarbeitet und abschliessend wieder quittiert. Die beiden Quittierungsvorgänge würde ich gerne zeitlich verzögern (weil die Datenverarbeitung ziemlich schnell geht). Nun habe ich bisher nur Elemente gefunden, mittels derer die Schleifenwiederholung verzögert werden kann.
Daher die Frage: kann man innerhalb einer Struktur den Ablauf überhaupt verzögern oder ist das einfach nicht vorgesehen.

Eine Lösung für mein Problem wäre wohl, das Schreiben in eine separate Schleife auszulagern und über Locals zu triggern und dann die Ausführung der separaten Schleife mittels Time-wait zu verzögern. Sollte schon machbar sein, allerdings macht es das Programm nur (unnötig?) kompliziert...


Hallo,

ich hoffe das meine kleiner Text und das Bild von Nutzen ist.
Wenn die zeitliche Auflösung im Millisekundenbereich ausreicht (Windows-Zeitgeber) dann ist das im Bild gezeigte
vielleicht eine Lösung.

MfG Harald
Hm, das ist auch eine interessante Lösung.
Meine sieht inzwischen so aus, dass ich ein Sub-VI zum Schreiben gemacht habe, dem ich nur den zu schreibenden String übergebe. In dem Sub-VI ist dann ein Time-Delay eingestellt, so dass er halt nur alle x ms an die Schnitstelle schreiben kann.
Ist mMn nach das beste, weil es genau an das Problem geht. Jeglicher zeitlicher Ablauf ist egal, es kann halt nur alle x ms auf die Schnittstelle geschrieben werden, so dass die dann nicht überfordert ist... wobei die Zeit so hoch ist (800ms), dass ich mir da eh was anderes überlegen muss, weil das viel zu lange dauert.
Referenz-URLs