LabVIEWForum.de - Gleichzeitiges Auslesen 2er Geräte über RS-232

LabVIEWForum.de

Normale Version: Gleichzeitiges Auslesen 2er Geräte über RS-232
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich habe folgendes Problem:

Ich habe 2 Meßgeräte, die alle 10 bzw. alle 11 Sekunden automatisch gemessene Werte über die RS-232 senden. Das eine Problem betrifft die Realisierung des Wartens. Da habe ich einfach über den Wert "Bytes at Port" am Eigenschaftsknoten eine Whileschleife erstellt (siehe Anhang). Das funktioniert soweit ganz gut, nur stört mich, dass sich a) das ganze programm (übergeordnete whileschleife) daran aufhält bis denn nun endlich die bytes angekommen sind und b) kann ich bisher nicht 2 schleifen dieses Typs gleichzeitig laufen lassen. Am liebsten wäre mir ja, dass einfach irgendwo im Hintergrund die Meßwerte erfasst werden (z.b. durch Anhang), und asynchron dem Hauptprogramm übergeben werden, z.b. noch mit nem boolschen Wert, falls tatsächlich ein neues Datenpaket ankam. Hat jemand vielleicht einen Denkanstoß für mich?

Grüße, Nils
Verwende doch eine "Producer-Consumer-Loop".

Gruß Markus
klingt ja schon vom namen her wie das was ich mir vorstelle ... wie wird sowas realisiert? google hat mir bisher nicht geholfen.
oder anders: Wie realisiere ich parallel laufende Schleifen die Daten austauschen können?
Indem Du zwei Loops aufs Diagram legst die keinerlei Datenabhängigkeit haben. Das heisst keine Drähte die von der einen Schlaufe zur anderen gehen.

Datenübertragung zu diesen Loops (Konfigurationen, Steuerung (Start/Stop, etc) und daraus heraus (Daten selber, Status) muss über Globals, Funktionelle Globale Variablen VIs (LabVIEW 2 Style Global), oder Queues, etc geschehen.

Rolf Kalbermatter
danke, habe es mit lokalen variablen gelöst
Referenz-URLs