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 

Bool Werte über Queues



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.07.2019, 11:43
Beitrag #11

maxil Offline
LVF-Grünschnabel
*


Beiträge: 27
Registriert seit: Jun 2019

13.0
2017
DE



RE: Bool Werte über Queues
(02.07.2019 09:28 )MarcoN schrieb:  
(02.07.2019 09:07 )maxil schrieb:  So ich hoffe eine letzte Frage jetzt,

ich habe gehofft, dass sich dadurch ein (annäherndes) realtime Verhalten ergibt, leider dauert es doch einige Zeit, bis die LED leuchtet.
Gibt es da irgendwelche Möglichkeiten es zu beschleunigen?

Pack am besten mal dein VI in den Anhang damit man sich das genau ansehen kann. Grundsätzlich kann man Aufbau mit einer Eventstruktur weniger ressourcenfressend aufbauen als mit einer dauernd abfragenden Casestruktur.

Hallo Marco,

das ist der Teil, um den es geht!


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.07.2019, 11:59
Beitrag #12

MarcoN Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 68
Registriert seit: Mar 2019

2016
2019
DE_EN

562**
Deutschland
RE: Bool Werte über Queues
(02.07.2019 11:43 )maxil schrieb:  
(02.07.2019 09:28 )MarcoN schrieb:  
(02.07.2019 09:07 )maxil schrieb:  So ich hoffe eine letzte Frage jetzt,

ich habe gehofft, dass sich dadurch ein (annäherndes) realtime Verhalten ergibt, leider dauert es doch einige Zeit, bis die LED leuchtet.
Gibt es da irgendwelche Möglichkeiten es zu beschleunigen?

Pack am besten mal dein VI in den Anhang damit man sich das genau ansehen kann. Grundsätzlich kann man Aufbau mit einer Eventstruktur weniger ressourcenfressend aufbauen als mit einer dauernd abfragenden Casestruktur.

Hallo Marco,

das ist der Teil, um den es geht!

Hallo maxil,

ich habe dir mal in den Anhang ein grundsätzliches Bild gepackt wie eine Queue aufgebaut werden sollte. Du hast eine Erzeugerschleife (deine Obere) und eine Verbraucherschleife (deine Untere). Den Stoppbutton darfst du nicht in beide Schleifen packen (wie Jens oben schon beschrieben hat). Es ist auch nicht ratsam bei so vielen Bedienelementen für jeden Vorgang eine Casestruktur zu benutzen. Erstelle dir eine Eventstruktur in die du alle deine Buttons steckst. Die Eventstruktur wartet auf eine Eingabe, die Casestruktur läuft jedes Mal aufs Neue durch.
Ich nehme an, dass du "Leistungsspektrum" in die untere Schleife bekommen möchtest?


Angehängte Datei(en) Thumbnail(s)
   

Gruß
Marco
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.07.2019, 12:21
Beitrag #13

maxil Offline
LVF-Grünschnabel
*


Beiträge: 27
Registriert seit: Jun 2019

13.0
2017
DE



RE: Bool Werte über Queues
Hallo Marco,

die Diagramme werden eigentlich gut dargestellt, das dargestellte VI muss ich noch abändern, habe bisher das Problem, dass die Button extrem verzögert reagieren.
bei den Queues ist mir aber auch gerade aufgefallen, dass wenn ich sie nutze, eine LED ansteuern möchte (zwei sind angeschlossen sowie zwei Button), beide leuchten.
Gibt es da keine Unterscheidung wenn ich mehrere "Element Einfügen" usw. intern verwende?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.07.2019, 12:54 (Dieser Beitrag wurde zuletzt bearbeitet: 02.07.2019 12:56 von MarcoN.)
Beitrag #14

MarcoN Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 68
Registriert seit: Mar 2019

2016
2019
DE_EN

562**
Deutschland
RE: Bool Werte über Queues
(02.07.2019 12:21 )maxil schrieb:  Hallo Marco,

die Diagramme werden eigentlich gut dargestellt, das dargestellte VI muss ich noch abändern, habe bisher das Problem, dass die Button extrem verzögert reagieren.
bei den Queues ist mir aber auch gerade aufgefallen, dass wenn ich sie nutze, eine LED ansteuern möchte (zwei sind angeschlossen sowie zwei Button), beide leuchten.
Gibt es da keine Unterscheidung wenn ich mehrere "Element Einfügen" usw. intern verwende?

Hallo maxil,

die Verzögerung der Buttons kann ich mir nur durch die ganzen Casestrukrturen erklären. Um den lieben Gerd mal zu zitieren: "THINK DATAFLOW" Big Grin
In der unteren Schleife wird vor jedem Case abgefragt ob er du einen Button auf TRUE oder FALSE stehen hast. Desweiteren benutzt du vor den Casestrukturen ein ODER was für mich nicht ganz Sinn ergibt. Ein oder braucht nur ein TRUE um ein TRUE weiterzuleiten. Sprich: Egal welchen Button du drückst, wird immer der TRUE-Case deiner Casestrukturen laufen.

Weiß nicht genau was du mit dem "Element Einfügen" meinst, da ich die englische Version von LV benutze. Wenn du allerdings nicht genau verstehst was in der Schaltung passiert schalte im Blockdiagramm die Highlightfunktion an. (Kleine Glühbirne neben dem "Ausführen"). Dann kannst du dir in Ruhe anschauen was du verdrahtet hast und warum 2 LED leuchten obwohl es nur eine soll.


EDIT: Lad mal die aktuellste Version deines VI´s hoch. Du kannst VI´s auch als Datei hochladen damit sie jeder bearbeiten kann. Bei Bildern ist das sonst bisschen schwierig!

Gruß
Marco
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.07.2019, 12:58
Beitrag #15

maxil Offline
LVF-Grünschnabel
*


Beiträge: 27
Registriert seit: Jun 2019

13.0
2017
DE



RE: Bool Werte über Queues
(02.07.2019 12:54 )MarcoN schrieb:  
(02.07.2019 12:21 )maxil schrieb:  Hallo Marco,

die Diagramme werden eigentlich gut dargestellt, das dargestellte VI muss ich noch abändern, habe bisher das Problem, dass die Button extrem verzögert reagieren.
bei den Queues ist mir aber auch gerade aufgefallen, dass wenn ich sie nutze, eine LED ansteuern möchte (zwei sind angeschlossen sowie zwei Button), beide leuchten.
Gibt es da keine Unterscheidung wenn ich mehrere "Element Einfügen" usw. intern verwende?

Hallo maxil,

die Verzögerung der Buttons kann ich mir nur durch die ganzen Casestrukrturen erklären. Um den lieben Gerd mal zu zitieren: "THINK DATAFLOW" Big Grin
In der unteren Schleife wird vor jedem Case abgefragt ob er du einen Button auf TRUE oder FALSE stehen hast. Desweiteren benutzt du vor den Casestrukturen ein ODER was für mich nicht ganz Sinn ergibt. Ein oder braucht nur ein TRUE um ein TRUE weiterzuleiten. Sprich: Egal welchen Button du drückst, wird immer der TRUE-Case deiner Casestrukturen laufen.

Weiß nicht genau was du mit dem "Element Einfügen" meinst, da ich die englische Version von LV benutze. Wenn du allerdings nicht genau verstehst was in der Schaltung passiert schalte im Blockdiagramm die Highlightfunktion an. (Kleine Glühbirne neben dem "Ausführen"). Dann kannst du dir in Ruhe anschauen was du verdrahtet hast und warum 2 LED leuchten obwohl es nur eine soll.


EDIT: Lad mal die aktuellste Version deines VI´s hoch. Du kannst VI´s auch als Datei hochladen damit sie jeder bearbeiten kann. Bei Bildern ist das sonst bisschen schwierig!


Hi Marco,

die Verzögerung der Button passiert in der oberen Schleife (dort legen sie zuvor), da die Daten des Messgerätes nur alle paar Sekunden abgerufen werden. Mir wurde damals empfohlen, das lesen der Daten in eine
eigene Schleife zu packen, sowie die Abfrage der Buttons.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.07.2019, 13:05
Beitrag #16

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Bool Werte über Queues
(02.07.2019 11:43 )maxil schrieb:  Hallo Marco,

das ist der Teil, um den es geht!
Ist das der richtige Screenshot, da ist keine Queue zu sehen.

UND: Du hast schon wieder eine Datenflußabhängigkeit zwischen deinen beiden Schleifen erzeugt. Die obere Schleife wird erst nach Beendigung der unteren Schleife 1x ausgeführt. Hatte ich schon einmal erwähnt. Willst du das wirklich?

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
02.07.2019, 13:15
Beitrag #17

MarcoN Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 68
Registriert seit: Mar 2019

2016
2019
DE_EN

562**
Deutschland
RE: Bool Werte über Queues
Hallo maxil,

in der oberen Schleife sehe in anhand deines Bildes aber gar keine Buttons Huh
In dem Bild was du hier reingestellt hast sehe ich nur ein SubVI und ein ExpressVI. Eins von beiden wird dann wohl Zeit brauchen oder du hast ein anderes VI vor dir..

Das kannst du ja auch so machen. Die Queue ist im Prinzip ein Puffer. Nur die Buttons ergeben mir deinem ODER keinen Sinn.

Beispiel: Du drückst auf den ersten Button "Kontinuierlich Speichern Signalverlauf". Der Button macht genau die selbe Funktion wie wenn du den Button "Kontinuierlich Speichern Leistungsspektrum" drückst. Verstehst du was ich meine?

Stell einfach mal dein VI hier rein..

Gruß
Marco
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.07.2019, 17:55 (Dieser Beitrag wurde zuletzt bearbeitet: 02.07.2019 17:58 von maxil.)
Beitrag #18

maxil Offline
LVF-Grünschnabel
*


Beiträge: 27
Registriert seit: Jun 2019

13.0
2017
DE



RE: Bool Werte über Queues
Hi Marco,

vielleicht helfen die Bilder zum besseren Verständnis.
Wenn ich hier die Button zum Abbruch der Schleife nicht einbringen kann/soll (Verzögerung bei der Datenübertragung zwischen den Whils), wie kann man dann eine vernünftige
Abbruchbedingung von Hand schaffen auf dem VI?
(02.07.2019 13:05 )jg schrieb:  
(02.07.2019 11:43 )maxil schrieb:  Hallo Marco,

das ist der Teil, um den es geht!
Ist das der richtige Screenshot, da ist keine Queue zu sehen.

UND: Du hast schon wieder eine Datenflußabhängigkeit zwischen deinen beiden Schleifen erzeugt. Die obere Schleife wird erst nach Beendigung der unteren Schleife 1x ausgeführt. Hatte ich schon einmal erwähnt. Willst du das wirklich?

Gruß, Jens

Hi Jens,

nein sollen sie nicht, sie sollen eigentlich parallel laufen bzw. ich hatte vorher alles in einer Schleife und habe die Steuerung (Buttons) auf Anraten in eine separate Schleife gepackt.
Sie soll eigentlich sofort reagieren, wenn eine Benutzerinteraktion erfolgt, während in der oberen z.B. Daten eingelesen werden!


Angehängte Datei(en) Thumbnail(s)
       
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
02.07.2019, 18:30 (Dieser Beitrag wurde zuletzt bearbeitet: 02.07.2019 18:33 von jg.)
Beitrag #19

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Bool Werte über Queues
(02.07.2019 17:55 )maxil schrieb:  Hi Jens,

nein sollen sie nicht, sie sollen eigentlich parallel laufen bzw. ich hatte vorher alles in einer Schleife und habe die Steuerung (Buttons) auf Anraten in eine separate Schleife gepackt.
Sie soll eigentlich sofort reagieren, wenn eine Benutzerinteraktion erfolgt, während in der oberen z.B. Daten eingelesen werden!
Das tun sie aber nicht, da du per Draht eine Abarbeitungsreihenfolge der beiden Schleifen festlegst. LabVIEW 101 Wissen. (s. Links in GerdWs Signatur)

Wir haben dir inzwischen mehrfach entsprechende Bsp. hochgeladen, warum programmierst du das nicht nach? Weitere Beispiele zur Verwendung von Queues findest du im NI Example Finder (sehr zu empfehlen).

Gruß, Jens

P.S.: Screenshots von deinem Frontpanel helfen wenig beim Verständnis, was du eigentlich erreichen willst. Wie wäre es mal mit einem VI-Upload? inkl. genauer Erklärung, was du erreichen willst.

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.07.2019, 06:45
Beitrag #20

MarcoN Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 68
Registriert seit: Mar 2019

2016
2019
DE_EN

562**
Deutschland
RE: Bool Werte über Queues
Hallo maxil,

schau dir mein Bild an. Da siehst du wie du das VI manuell beenden kannst. Die Rechte Schleife überprüft nur ob du noch Daten in deiner Queue hast. Denn wenn du die Schleife sofort beendest gehen dir die Daten die im Puffer liegen sonst verloren.
Versuch mein VI auf deins zu übertragen. Wenn deine Queue läuft kann man zusammen schauen ob man das ganze VI noch schneller machen kann.

Sonst schau dir mal, wie von jg gesagt, die Examples zum Thema Queue an..


Angehängte Datei(en) Thumbnail(s)
   

Gruß
Marco
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
  LabVIEW Queues Schrankwand 3 3.056 14.12.2023 13:41
Letzter Beitrag: Schrankwand
  Queues? flizzer82 14 28.530 23.05.2017 19:58
Letzter Beitrag: jg
  Queues VI übergreifend verwenden mdu 12 15.128 14.03.2015 15:34
Letzter Beitrag: Lucki
  Queues mit FGVs in Polymorphen VI Andre_A 7 6.265 17.05.2014 07:39
Letzter Beitrag: cb
  If Schleife und queues Danjo 4 6.432 27.05.2013 15:14
Letzter Beitrag: jg
  Auf Anzeige (Bool) reagieren (Ereignis) bigwowan11 10 8.724 31.10.2012 11:39
Letzter Beitrag: Kiesch

Gehe zu: