INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Queue sendet Nullen statt nichts



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

02.02.2008, 09:26
Beitrag #1

PhilippDerGrößere Offline
LVF-Grünschnabel
*


Beiträge: 42
Registriert seit: Jan 2008

8.5
2007
de_en

8501
Oesterreich
Queue sendet Nullen statt nichts
Hallo,

Wie oben beschrieben, hab ich folgendes Problem (-> siehe Grafik): Wenn auf dem digitalen Kanal eine 1 gelesen wird, soll die Queue geschickt werden, sonst soll nichts geschehen. Trotzdem wird jedesmal wenn die Schleife durchlaufen wird eine 0 gesendet. Wie kann ich das verhindern? (Es soll nichts hinzugefügt werden)

lg. PHilipp


Die Grafik:
   

Das VI (LV8.5)

Sonstige .vi  DAQmxKraDeh_Sub.vi (Größe: 47,72 KB / Downloads: 224)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
02.02.2008, 10:03
Beitrag #2

cb Offline
LVF-SeniorMod


Beiträge: 1.731
Registriert seit: Feb 2006

2018SP1
2001
EN

40xxx
Deutschland
Queue sendet Nullen statt nichts
' schrieb:Hallo,

Wie oben beschrieben, hab ich folgendes Problem (-> siehe Grafik): Wenn auf dem digitalen Kanal eine 1 gelesen wird, soll die Queue geschickt werden, sonst soll nichts geschehen. Trotzdem wird jedesmal wenn die Schleife durchlaufen wird eine 0 gesendet. Wie kann ich das verhindern? (Es soll nichts hinzugefügt werden)

lg. PHilipp
Die Grafik:
[attachment=38025:DAQmx_Queue.JPG]

Das VI (LV8.5)
[attachment=38026:DAQmxKraDeh_Sub.vi]


HÄ?
da wird doch nichts in die Queue eingefügt. Du fragst im False Case ab, weiviel Elemente in der Queue sind, und da kommt richtigerweise 0 raus, wenn die Q leer ist ???

Wo liest du die Q denn aus? da musst du dann ggf. noch das Timeout Signal mit auswerten, falls du einen Timeout (z.B. 100 ms) eingestellt hast. Wenn innerhalb der Wartezeit dann kein Element in die Q eingefügt wurde das ausgelesen werden kann ist dieses Signal True.

http://www.rotabench.com - rotierende Prüfstände nach dem Baukasten-Prinzip
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.02.2008, 18:09
Beitrag #3

PhilippDerGrößere Offline
LVF-Grünschnabel
*


Beiträge: 42
Registriert seit: Jan 2008

8.5
2007
de_en

8501
Oesterreich
Queue sendet Nullen statt nichts
' schrieb:HÄ?
da wird doch nichts in die Queue eingefügt. Du fragst im False Case ab, weiviel Elemente in der Queue sind, und da kommt richtigerweise 0 raus, wenn die Q leer ist ???

Wo liest du die Q denn aus? da musst du dann ggf. noch das Timeout Signal mit auswerten, falls du einen Timeout (z.B. 100 ms) eingestellt hast. Wenn innerhalb der Wartezeit dann kein Element in die Q eingefügt wurde das ausgelesen werden kann ist dieses Signal True.

Danke, i2dx, für die schnelle Antwort. Sorry, dass ich mich erst so spät wieder melde. Hab das Problem noch immer. Es muss irgendwie am Verbraucher-VI liegen (hab mir die Daten die erzeugt werden angesehen, du hattest recht).

Hab deshalb einen Screenshot vom Verbraucher-VI gemacht. Das Problem tritt übrigens nicht auf, wenn ich das Verbraucher-VI nur halb so oft aufrufe, wie Daten erzeugt wurden. Wartet die Funktion "Element aus Queue entfernen" nicht bis neue Daten drin sind?

Screenshot:
   

lg. Philipp
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
09.02.2008, 21:24
Beitrag #4

cb Offline
LVF-SeniorMod


Beiträge: 1.731
Registriert seit: Feb 2006

2018SP1
2001
EN

40xxx
Deutschland
Queue sendet Nullen statt nichts
' schrieb:Wartet die Funktion "Element aus Queue entfernen" nicht bis neue Daten drin sind?

die Primitive "Dequeue Element" wartet so lange wie mit "Timeout" eingestellt wurde, entweder unendlich lange (-1) oder X Millisekunden. Wenn der Timeout eintritt, dann gibt die Primitive das "Default" Element zurück, und das ist dann halt z.B. ein Double mit dem Wert 0, es gibt in LV keinen "leeren Draht". Desshalb musst du ggf. das Timeout Signal mit auswerten für den Fall "keine Daten vorhanden" ...

http://www.rotabench.com - rotierende Prüfstände nach dem Baukasten-Prinzip
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Konstantes Array mit 5000 Nullen behrangc 1 4.211 29.10.2019 01:09
Letzter Beitrag: GerdW
  Faltung mit Filterkernel -> Ränder nicht mit Nullen füllen thz89 2 3.621 06.10.2017 13:09
Letzter Beitrag: thz89
  Wie auf abgearbeitete Queue warten mez15 11 7.026 28.09.2017 13:02
Letzter Beitrag: TR61
  Datum Uhrzeit Queue DeleteAll 8 4.847 24.03.2017 15:47
Letzter Beitrag: GerdW
  TDMS in Queue laden gifo 8 4.780 07.01.2016 16:41
Letzter Beitrag: GerdW
  Fehlercluster via Queue hansi9990 23 12.230 07.08.2015 14:11
Letzter Beitrag: hansi9990

Gehe zu: