LabVIEWForum.de - Samplingkanäle bedingt in Queues

LabVIEWForum.de

Normale Version: Samplingkanäle bedingt in Queues
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

der Betreff ist vielleicht ein bisschen verwirrend, aber ich stehe grade vor folgendem Probelm: Ich erfasse mit einem USB-6008 Spannungswerte für Temperatur und Druck. Die Temperatur soll dabei kontinuierlich aufgezeichnet werden, der Druck nur in einem bestimmten Zeitfenster, wenn die Aufzeichnung freigegeben wurde. Ich wollte dafür eine Producer/Consumer Architektur aufbauen und die Messwerte in Queues legen.

Ich weiß nicht, wie ich in die Datenerfassungsschleife eine Bedingung reinbringen kann, dass die Werte zur Bedingung X in die Queue geschrieben werden. Wenn ich auf einen Melder warte wird die Schleife nur ausgeführt, wenn der Druck gemessen werden soll (und damit die Temperatur nicht kontinuierlich). Deswegen bringe ich die Bedingung im Moment via Melderstatus in die Schleife, was aber imo keine saubere Lösung ist. Könnt ihr mir einen Ansatz nennen, der "richtiger" ist?

Danke und viele Grüße

Electribe

[attachment=37810]
Hallo Electribe,

wäre es nicht wesentlich einfacher, in der Loggingroutine zu entscheiden, was in die Datei gespeichert wird und was nicht?
(21.12.2011 15:16 )GerdW schrieb: [ -> ]wäre es nicht wesentlich einfacher, in der Loggingroutine zu entscheiden, was in die Datei gespeichert wird und was nicht?

Damit würde ich das Problem doch nur verschieben, weil ich an einer anderen Stelle eine Schleife laufen lassen muss in der ich die Daten aus der Queue wieder rausnehme. Der Temperaturwert würde in der Schleife dann kontinuiertlich gelesen und angezeigt werden, aber mit den Daten für den Druck würde ich nicht aus der Schleife "rauskommen"?
Also ich finde die Lösung mit dem Melder/Interrupt/(G)locVar/FGV/etc. mit boolschem Ausgang super... funtioniert das in einer Weise nicht zufriedenstellend?
Referenz-URLs