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 in Kombi mit Statemachine



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!

10.02.2011, 07:30
Beitrag #1

RMR Offline
Laborkater
**


Beiträge: 238
Registriert seit: Nov 2008

09f1 - 2010SP1(f4) - 2012SP1f5 - 2014 SP1f10 -2017f3
2009
DE_EN

76437
Deutschland
Queue in Kombi mit Statemachine
Hallo Forum,

ich hätte heute auch mal wieder eine Frage. Wie bindet ihr eine Queue in eine State Machine ein? Ich habe in der State natürlich auch Zustände in denen die Queue nicht ausgelesen wird und es kommt zum "Stau" der Daten. Wie kann ich das elegant lösen? In jeder STate auslesen nur damit sich nichts staut finde ich persönlich unschön.

Ein weiteter Punkt wäre die Kombi von Double und Boolen innerhalb der Queue. Funktionieren tut das, die Daten kommen im Foramt Variant an und ich könnte sie so wieder aufdröseln.
Auch hier die Frage ist das so sinnvoll?

Gibt es irgendeine "Standardlösung" für solche Fälle? Ich denke sowas kommst sicher häufig vor.

Danke & Grüße, Ralf


Angehängte Datei(en) Thumbnail(s)
   

100nF passen immer.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
10.02.2011, 08:42
Beitrag #2

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
RE: Queue in Kombi mit Statemachine
Wer sagt denn, dass du in der Statemachine in einem Zustand immer nur ein Queue-Element auslesen musst? Einfach im Auslesefall alle Elemente der Queue auslesen!

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
10.02.2011, 08:58
Beitrag #3

RMR Offline
Laborkater
**


Beiträge: 238
Registriert seit: Nov 2008

09f1 - 2010SP1(f4) - 2012SP1f5 - 2014 SP1f10 -2017f3
2009
DE_EN

76437
Deutschland
RE: Queue in Kombi mit Statemachine
Hallo Jens,

ok verstehe ich, aber was mache ich, wenn ich in einem Standby-Zustand bin? Also längere Zeit keine Daten auslese. Sobald die Queue voll ist bleibt mir die Producer-Schleife stehen.
Nur Daten in die Queue schreiben wenn ich auch auslese? Könnte an ja über eine Case machen. Finde das aber irgendwie holprig.

Gruß, Ralf

100nF passen immer.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.02.2011, 09:31 (Dieser Beitrag wurde zuletzt bearbeitet: 10.02.2011 10:19 von Lucki.)
Beitrag #4

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: Queue in Kombi mit Statemachine
(10.02.2011 08:58 )RMR schrieb:  aber was mache ich, wenn ich in einem Standby-Zustand bin? Also längere Zeit keine Daten auslese. Sobald die Queue voll ist bleibt mir die Producer-Schleife stehen.
Also falls Du die im Standby produzierten Daten nicht alle brauchst:
Es gibt seit LV2009 zwei verschiedene Funktionen zum Schreiben in die Queue: verlustfrei und verlustbehaftet. Bei Letzterer fliegt das älteste Element einfach raus aus der Queue, wenn sie voll ist. Das Einschreiben wird aber nicht blockiert.
Im anderen Fall, wenn Du alle Daten brauchst, mußt Du eben eine Fehlerbehandlung bei Timeout machen und eine Routine zu Speicherung und Leerung der Queue oder zu was weiß ich einrichten - wenn Du schon den Datenfluß nicht stoppen willst.
Oder anders gesagt: Was im Falle des Überlaufs geschehen soll, kannst nur Du wissen und das müßtest Du hier klar sagen. Wir können nur dabei helfen, wie es gemacht wird.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.02.2011, 10:30
Beitrag #5

RMR Offline
Laborkater
**


Beiträge: 238
Registriert seit: Nov 2008

09f1 - 2010SP1(f4) - 2012SP1f5 - 2014 SP1f10 -2017f3
2009
DE_EN

76437
Deutschland
RE: Queue in Kombi mit Statemachine
Hi Lucki,

hat mir schon sehr viel geholfen. Das "verlustbehaftet" war mir neu und hilft mir wunderbar aus der Klemme.
Ups, Bedankpunkte gibt es ja gar nicht mehr..trotzdem: Vielen Dank.

Keep on rockin´, Ralf

100nF passen immer.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
10.02.2011, 15:21
Beitrag #6

RMR Offline
Laborkater
**


Beiträge: 238
Registriert seit: Nov 2008

09f1 - 2010SP1(f4) - 2012SP1f5 - 2014 SP1f10 -2017f3
2009
DE_EN

76437
Deutschland
RE: Queue in Kombi mit Statemachine
Ich bin nochmal da. Hat jemand eine Idee wie ich diese VARIANT Daten wieder aufgeschlüsselt bekomme? Mit dem VI "Variant nach Daten" funktioniert es leider nicht.

Danke & Gruß, RMR

100nF passen immer.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
10.02.2011, 16:14 (Dieser Beitrag wurde zuletzt bearbeitet: 10.02.2011 16:15 von macmarvin.)
Beitrag #7

macmarvin Offline
CLA
***


Beiträge: 445
Registriert seit: Sep 2006

2014
2004
EN

81373
Deutschland
RE: Queue in Kombi mit Statemachine
Mit Variant to Data funktioniert das schon, nur hast du das (hausgemachte) "Problem", daß du erst noch rausfinden musst ob das aktuelle Element nun ein DBL[] oder in Bool[] ist. Das würde z.B. mit den VariantType Funktionen in der vi.lib gehen. Für den konkreten Fall scheint mir eine stärker getypte Queue (also ohne Variant) sinnvoller. Mach dir z.B. ein typdefed Cluster mit den Paar Dbls und den Bools (jeweils mit Namen) und baue im Producer den Cluster zusammen, verschicke den und der Consumer erhält dann direkt den Cluster ohne große Datenumwandlung.
Hat auch den Vorteil, das du Datentypfehler schon zur Entwicklungszeit erkennst und nicht erst zur Laufzeit.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
11.02.2011, 07:25
Beitrag #8

RMR Offline
Laborkater
**


Beiträge: 238
Registriert seit: Nov 2008

09f1 - 2010SP1(f4) - 2012SP1f5 - 2014 SP1f10 -2017f3
2009
DE_EN

76437
Deutschland
RE: Queue in Kombi mit Statemachine
Ok das werde ich versuchen. Der Varaiant Datentyp war, ist, mir eh nicht sympatisch.
Viele Dank für deine Hilfe.

Keep on rockin´, Ralf

100nF passen immer.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
25.02.2011, 12:04
Beitrag #9

RMR Offline
Laborkater
**


Beiträge: 238
Registriert seit: Nov 2008

09f1 - 2010SP1(f4) - 2012SP1f5 - 2014 SP1f10 -2017f3
2009
DE_EN

76437
Deutschland
RE: Queue in Kombi mit Statemachine
Hallo zusammen.

Nach Urlaub und ein paar anderen Kleinigkeiten ist nun auch diese Kuh vom Eis.
Danke für eure Hilfe.Prost

Falls es noch jemand brauche kann, die Lösung, wie ich es realisiert habe, als Screenshot.

Keep on rockin´, RMR


Angehängte Datei(en) Thumbnail(s)
   

100nF passen immer.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
06.03.2011, 16:32
Beitrag #10

Kiesch Offline
LVF-Stammgast
***


Beiträge: 412
Registriert seit: Mar 2009

2019, 2018, 2016
2009
DE

04519
Deutschland
RE: Queue in Kombi mit Statemachine
Hätte dazu mal ne Anschlussfrage: Da ich in meinem Programm 2VIs miteinander kommunizieren lassen muss und globale Variablen vermeiden wollte habe ich die Kommunikation über eine Queue gelöst.
Gibt es dabei eine elegantere Methode Wertänderungen an der Queue als Event abzugreifen als einfach bei einem Signal aus der Queue (in einer parrallelen Schleife) signalisierend in eine Variable zu schreiben?
Sprich kann man direkt mittels der Queue ein Event auslösen (eleganter eben als über signalisierendes Schreiben in eine Variable).

Gruß Kiesch

Zitat:Märchen und Geschichten werden erzählt am Lagerfeuer, technischen Fakten werden mitgeteilt (oder so). (Genauso wie Software nicht auf einem Server "herumliegt", die ist dort installiert.)
*Zitat: IchSelbst*
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
  Frage zur Architektur: Statemachine und Wait for Events tuhpon 6 4.476 18.03.2024 16:14
Letzter Beitrag: tuhpon
  Statemachine-Projekt… riu14 18 12.411 15.06.2022 13:44
Letzter Beitrag: jg
  Statemachine mit Notifier hulk 5 4.849 14.12.2017 20:02
Letzter Beitrag: Pronet
  Wie auf abgearbeitete Queue warten mez15 11 8.036 28.09.2017 13:02
Letzter Beitrag: TR61
  Statemachine programmieren… Granit 8 10.828 30.04.2017 16:42
Letzter Beitrag: Granit
  Datum Uhrzeit Queue DeleteAll 8 5.623 24.03.2017 15:47
Letzter Beitrag: GerdW

Gehe zu: