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 

Dieses Thema hat akzeptierte Lösungen:

Wie auf abgearbeitete Queue warten



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!

28.09.2017, 08:58
Beitrag #1

mez15 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 60
Registriert seit: Jan 2013

2015 SP1
2013
DE


Deutschland
Wie auf abgearbeitete Queue warten
Hallo Zusammen,

bevor ich lange erzähle, findet ihr im Anhang mein VI. Aktuelle ist es möglich beide Tanks auf Knopfdruck zu befüllen. Wie kann ich nun erreichen, dass der zweite Tank erst befüllt wird, wenn der erste voll ist, auch wenn der User noch während der Befüllung des ersten Tanks die Befüllung des zweiten Tanks auf dem Frontpanel veranlasst?

Ach ja, die Architektur schaut zugegeben kompliziert aus, mit den drei Queue, diese sind aber notwendig.


Angehängte Datei(en)
15.0 .vi  Tank_fuellen.vi (Größe: 23,98 KB / Downloads: 196)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
28.09.2017, 09:32
Beitrag #2

TR61 Offline
LVF-Grünschnabel
*


Beiträge: 15
Registriert seit: Aug 2013

2019
2014
DE


Deutschland
RE: Wie auf abgearbeitete Queue warten
Hallo mez,

meinst du etwa so wie im Anhang?

Grüße
TR


Angehängte Datei(en)
10.0 .vi  Tank_fuellen.vi (Größe: 14,7 KB / Downloads: 192)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.09.2017, 10:05
Beitrag #3

Freddy Offline
Oldtimer
****


Beiträge: 729
Registriert seit: Aug 2008

2019, 2020, 2021
1996
DE

76275
Deutschland
RE: Wie auf abgearbeitete Queue warten
Hallo mez15,
für Deine Frage gibt es viele Lösungen.
Ich gehe davon aus, dass dies nur ein Teil des Programms ist.
Wenn nicht wäre es mit einem Queue besser, da dann die Queue erst weitermacht wenn der Kessel voll ist und das Ereignis des zweiten Kessels geht nicht verloren.

Man kann auch den Schalter des 2. Tanks deaktivieren und mit der Voll Meldung des 1.Tanks wieder aktivieren.

Bei der Lösung von TR muss man den Tanker 2 immer wieder betätigen, sonst vergisst das Programm dieses Ereignis.
Ist das so gewollt? Oder soll wenn die Taste für den 2. Tank aktiviert wurde automatisch gefüllt werden wenn Kessel 1 voll ist?

Da ist auch noch der Stopp Taster, der geht auch nur wenn der Tank voll ist. Wenn Du zwischendurch unterbrechen willst, muss die Tank x LOS Funktion ab und zu unterbrochen werden.

Zunächst solltest Du alle Aktivitäten aufschreiben. Daraus ergibt sich dann eher ein Lösungsweg.

Gruß
Freddy

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.09.2017, 10:08 (Dieser Beitrag wurde zuletzt bearbeitet: 28.09.2017 10:11 von mez15.)
Beitrag #4

mez15 Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 60
Registriert seit: Jan 2013

2015 SP1
2013
DE


Deutschland
RE: Wie auf abgearbeitete Queue warten
Danke für den Lösungsvorschlag. Diese Lösung funktioniert bei dem VI. In meinem realen Beispiel geht es darum, dass in unregelmäßigen Abständen Befehle von mehreren Benutzern an EIN Messgerät gesendet werden. Bei einem Befehl führt das Messgerät einen Scan durch, welcher, abhängig nach der Konfiguration, 2-10 Sekunden dauern kann. Während ein Scanvorgang durchgeführt wird sollte das Messgerät keine neuen Befehle erhalten, sondern diese zwischenspeichern und abarbeiten wenn der Scanvorgang abgeschlossen ist. D.h. die Erzeugerschleife braucht irgendwie Feedback von den Verbraucherschleifen, damit sie weiß wann sie den nächsten zwischengespeicherten Befehl losschicken kann. Ich hätte da schon was im Kopf, jedoch will ich keine Lösung vorwegnehmen ;-)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.09.2017, 10:26
Beitrag #5

Freddy Offline
Oldtimer
****


Beiträge: 729
Registriert seit: Aug 2008

2019, 2020, 2021
1996
DE

76275
Deutschland
RE: Wie auf abgearbeitete Queue warten
Wenn das Messgerät die Queue erst freigibt nach dem der Scan erledigt ist, wird erst dann die nächste Nachricht verarbeitet.
Da kannst Du die Nachrichten asynchron einfach hintereinander schicken.
Da reicht auch eine Queue die von der Ergebnisstruktur gefüttert wird.

Gruß Freddy

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.09.2017, 10:28 (Dieser Beitrag wurde zuletzt bearbeitet: 28.09.2017 10:30 von Lucki.)
Beitrag #6

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Wie auf abgearbeitete Queue warten
Hier der schon von Freddy erwähnte Lösungvorschlag: Der Tankfüllknopf ist deaktiviert, solange er nicht bedient werden darf.

15.0 .vi  Tank_fuellen-WA.vi (Größe: 15,97 KB / Downloads: 193)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.09.2017, 10:33 (Dieser Beitrag wurde zuletzt bearbeitet: 28.09.2017 10:36 von Freddy.)
Beitrag #7

Freddy Offline
Oldtimer
****


Beiträge: 729
Registriert seit: Aug 2008

2019, 2020, 2021
1996
DE

76275
Deutschland
RE: Wie auf abgearbeitete Queue warten
Die andere Lösung beide werden gedrückt aber nur Einer nach dem Anderen wird verarbeitet.


Angehängte Datei(en)
17.0 .vi  Tank_fuellen.vi (Größe: 18,62 KB / Downloads: 232)

15.0 .vi  Tank_fuellen 15.vi (Größe: 11,92 KB / Downloads: 166)

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.09.2017, 10:45 (Dieser Beitrag wurde zuletzt bearbeitet: 28.09.2017 11:17 von TR61.)
Beitrag #8

TR61 Offline
LVF-Grünschnabel
*


Beiträge: 15
Registriert seit: Aug 2013

2019
2014
DE


Deutschland
RE: Wie auf abgearbeitete Queue warten

Akzeptierte Lösung

Hallo mez,

so wie du es beschrieben hast (oder ich es verstanden habe) hört es sich so an als wäre es eine Aufgabe für Semaphor.

In dem VI ist deine erste gestellte Aufgabe nicht gelöst, da die Aufgabenstellung sich m.M.n. etwas geändert hat.

Grüße
TR


Angehängte Datei(en)
10.0 .vi  Tank_fuellen.vi (Größe: 16,46 KB / Downloads: 172)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.09.2017, 12:04
Beitrag #9

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
RE: Wie auf abgearbeitete Queue warten
@Tr61
Bei Deinem VI kann man zwar nicht beide Tanks gleichzeitig befüllen, man kann aber auch Tank 2 zuerst befüllen. Ist das noch im Sinne der Aufgabenstellung?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.09.2017, 12:29
Beitrag #10

TR61 Offline
LVF-Grünschnabel
*


Beiträge: 15
Registriert seit: Aug 2013

2019
2014
DE


Deutschland
RE: Wie auf abgearbeitete Queue warten
(28.09.2017 12:04 )Lucki schrieb:  @Tr61
Bei Deinem VI kann man zwar nicht beide Tanks gleichzeitig befüllen, man kann aber auch Tank 2 zuerst befüllen. Ist das noch im Sinne der Aufgabenstellung?

Hallo und Mahlzeit Lucki,

naja so habe ich es nun mal herausgelesen, dass zwei Schleifen gegeneinander verriegelt werden sollen und da die Queues so bleiben müssen darf sich auch nicht viel am Code ändern.

Irrtümer meinerseits sind nicht ausgeschlossen.Angel_not

Ansonsten wäre die Lösung von Freddy so ziemlich perfekt.

Grüße
TR
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Datum Uhrzeit Queue DeleteAll 8 5.650 24.03.2017 15:47
Letzter Beitrag: GerdW
  TDMS in Queue laden gifo 8 5.458 07.01.2016 16:41
Letzter Beitrag: GerdW
  Fehlercluster via Queue hansi9990 23 14.288 07.08.2015 14:11
Letzter Beitrag: hansi9990
  Queue und (kein) Dataflow NoWay 9 7.342 01.06.2015 11:56
Letzter Beitrag: Kiesch
  Auf Benutzereingabe in einer State-Machine warten, ohne diese zu blockieren Gigantbohne 11 9.323 11.05.2015 17:27
Letzter Beitrag: Gigantbohne
  Notifier und Queue Nattdis 3 6.599 27.11.2014 14:51
Letzter Beitrag: Lucki

Gehe zu: