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 

Daten nur bei Anfrage?



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.07.2020, 10:59
Beitrag #1

LV-New Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: Apr 2020

2016
2019
DE



Daten nur bei Anfrage?
Hi,

gibt es eine Möglichkeit, dass Daten nur angelegt werden, wenn die Daten auch wirklich angefragt werden?

Ich habe eine DAQ-Schleife (welche Daten von einem C-DAQ kontinuierlich abfragt mit hohen Abtastraten als auch schnell (kleine Samples-Rate).
Die Daten werden mittels Stream-Funktion in eine TDMS Schleife geschrieben. (Funktioniert super Hopper)
In der Hauptschleife sollen lediglich Digitale Daten von der DAQ Schleife hin und wieder abgefragt werden (Digitale Daten werden nicht in TDMS geschrieben!). Daher möchte ich es ungern mittels "Stream" machen, weil dann dort ja ständig die Daten vom C-DAQ angelegt werden, obwohl sie gar nicht gebraucht werden....
Ich suche quasi ein "Stream auf Anfrage"

Welche Möglichkeiten gäbe es?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
28.07.2020, 12:27
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 16.467
Registriert seit: May 2009

11SP1, 17SP1 (ab und zu 20)
1995
DE_EN

10×××
Deutschland
RE: Daten nur bei Anfrage?
Hallo LV-New,

Zitat:Daher möchte ich es ungern mittels "Stream" machen, weil dann dort ja ständig die Daten vom C-DAQ angelegt werden, obwohl sie gar nicht gebraucht werden....
Ich suche quasi ein "Stream auf Anfrage"
Also keinen Stream, sondern ein Tag (beide ChannelWires)?
Oder statt einer Queue einen Notifier?
Oder gar eine globale/lokale Variable, obwohl die anderen Alternativen sinnvoller sind?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.07.2020, 13:41 (Dieser Beitrag wurde zuletzt bearbeitet: 28.07.2020 14:04 von LV-New.)
Beitrag #3

LV-New Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: Apr 2020

2016
2019
DE



RE: Daten nur bei Anfrage?
Hi Gerd_W,

wenn ich es richtig sehe/verstehe scheint es mit Tag nicht zu gehen.
Denn wenn ich eine Sonde auf Kanal schreiben lege laufen da dennoch Daten rein, obwohl Sie nicht angefordert werden. (Siehe angehangenes Beispiel).
Faktisch sollte er erst die Daten in den Kanal schreiben legen wenn Sie auch angefordert werden....
(Plan ist wie gesagt der DAQ-Schleife keine "Arbeit zu bereiten" wenn sowieso keine Daten benötig werden.)

Es ginge natürlich, dass die eine Schleife einen Befehl zur DAQ-Schleife gibt, "jetzt brauche ich Daten" und man dann ein Stream anlegt und die Daten dann wieder in die andere Schleife nach oben gibt. Aber schön ist das ja auch nicht :-)

An globale Variable hatte ich auch zunächst gedacht, allerdings soll man dies ja vermeiden, soweit habe ich es schon gelernt :-)
Und zum anderen schreibt DAQ ja dann dennoch ständig rein und die andere Schleife ließt lediglich irgendwann mal draus....

Irgendwie beschleicht mich das leise Gefühl, dass das was ich vorhabe gar nicht geht.....

Analogie zur Arbeitswelt wäre faktisch:
DAQ=Arbeiter
andere Schleife=Chef
Arbeiter macht wie immer vorbildlich seine AufgabenBig Grin irgendwann kommt der Chef und fragt an was man zuletzt gearbeitet hat und man gibt sofort eine Antwort.
So wie ich "Tag" aktuell verstehe wäre es so als würde der Arbeiter sich alles auf einen Zettel notieren. Den letzen Wert durchstreichen und einen aktuellen Wert notieren und dann einfach den "aktuellen Wert" immer vorlesen.
Richtig?


Angehängte Datei(en)
16.0 .vi  Tag-stream.vi (Größe: 55,41 KB / Downloads: 11)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.07.2020, 14:40
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 16.467
Registriert seit: May 2009

11SP1, 17SP1 (ab und zu 20)
1995
DE_EN

10×××
Deutschland
RE: Daten nur bei Anfrage?
Hallo LV-New,

Zitat:irgendwann kommt der Chef und fragt an was man zuletzt gearbeitet hat und man gibt sofort eine Antwort.
So wie ich "Tag" aktuell verstehe wäre es so als würde der Arbeiter sich alles auf einen Zettel notieren. Den letzen Wert durchstreichen und einen aktuellen Wert notieren und dann einfach den "aktuellen Wert" immer vorlesen.
Was ist so schlimm daran, dass der Arbeiter immer laut ruft, woran er gerade arbeitet und der Chef das nur dann hört, wenn er in Hörweite ist?
Ein Tag/Notifier merkt sich halt immer nur den letzten (geschriebenen) Wert: danach hattest du doch gefragt, oder?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.07.2020, 15:23 (Dieser Beitrag wurde zuletzt bearbeitet: 28.07.2020 15:23 von LV-New.)
Beitrag #5

LV-New Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: Apr 2020

2016
2019
DE



RE: Daten nur bei Anfrage?
"Was ist so schlimm daran, dass der Arbeiter immer laut ruft, woran er gerade arbeitet und der Chef das nur dann hört, wenn er in Hörweite ist?"
Die anderen Kollegen werden gestört und es sieht danach aus als hätte ich nichts anderes zu tun als rumzuschreihen :-).

Wie gesagt das was ich haben möchte scheint gar nicht zu gehen. Anstatt ständig sich den letzten Wert aufzuschreiben, war die Idee dass er den aktuellen Wert weitergibt, sobald der "Chef" (die andere Schleife) danach gefragt hat
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
29.07.2020, 09:12 (Dieser Beitrag wurde zuletzt bearbeitet: 29.07.2020 09:13 von Achim.)
Beitrag #6

Achim Offline
*****
*****


Beiträge: 4.193
Registriert seit: Nov 2005

20xx
2000
EN

978xx
Deutschland
RE: Daten nur bei Anfrage?
(28.07.2020 13:41 )LV-New schrieb:  Es ginge natürlich, dass die eine Schleife einen Befehl zur DAQ-Schleife gibt, "jetzt brauche ich Daten" und man dann ein Stream anlegt und die Daten dann wieder in die andere Schleife nach oben gibt. Aber schön ist das ja auch nicht :-)

Was ist daran nicht schön? Das neu anlegen?

Dann vielleicht die Alternative: Leg eine Queue an...da wird nichts reingeschrieben, bis der Chef ruft, z.B. über ein Flag oder einen Notifier...Dann legt der Arbeiter einen (oder mehrere) Werte rein...und schon hat sie der Chef auf dem Tisch. Wenn er neue Werte will, muss er halt noch mal rufen!

"Is there some mightier sage, of whom we have yet to learn?"

"Opportunity is missed by most people because it is dressed in overalls and looks like work." (Thomas Edison)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
29.07.2020, 15:41
Beitrag #7

Freddy Offline
Oldtimer
****


Beiträge: 695
Registriert seit: Aug 2008

2019, 2020, NXG 5.0
1996
DE

76275
Deutschland
RE: Daten nur bei Anfrage?
Wenn kein Stream übergeben werden soll, dann musst Du den Stream mit Abbruch verwenden.

Ich habe es in Deinen VI eingebaut. bei False wird alles verworfen, bei True übertragen.

Gruß
Freddy


Angehängte Datei(en) Thumbnail(s)
   

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
30.07.2020, 08:30
Beitrag #8

LV-New Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: Apr 2020

2016
2019
DE



RE: Daten nur bei Anfrage?
Hi, danke für euren vielen Anmerkungen!
Habe es mir heute mal im Detail angeschaut und war erschrocken, das meine Theorie so falsch, in der Praxis war....

Bin ja davon ausgegangen, dass LabVIEW/mein PC doch ganz schön arbeiten müsste wenn ich relativ viele Daten per Stream übergebe.
Aber selbst nach dem ich nun 100 Signale dem "Chef" auf den Tisch lege (per Anforderung) und gleichzeitig noch 1000 Signale per Stream weitergebe an eine andere Stelle (TDMS) habe ich max. 1ms Abweichung zwischen der Kommunikation "Arbeiter (DAQ) und "Chef". - Siehe Anhang!

Oder habe ich da was übersehen?
Danke nochmal für Eure Hilfe!


Angehängte Datei(en)
16.0 .vi  Tag-stream.vi (Größe: 38,94 KB / Downloads: 9)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.07.2020, 09:21
Beitrag #9

GerdW Offline
______________
LVF-Team

Beiträge: 16.467
Registriert seit: May 2009

11SP1, 17SP1 (ab und zu 20)
1995
DE_EN

10×××
Deutschland
RE: Daten nur bei Anfrage?
Hallo LV-New,

Zitat:Aber selbst nach dem ich nun 100 Signale dem "Chef" auf den Tisch lege (per Anforderung) und gleichzeitig noch 1000 Signale per Stream weitergebe an eine andere Stelle (TDMS) habe ich max. 1ms Abweichung zwischen der Kommunikation "Arbeiter (DAQ) und "Chef". - Siehe Anhang!
Bei einem Tag hast du aber keine Historie und damit auch wenig Speicherbedarf - also wenig Aufwand.
Deshalb mein Vorschlag, einfach ständig diesen Tag/Notifier parat zu halten…

Zitat:Bin ja davon ausgegangen, dass LabVIEW/mein PC doch ganz schön arbeiten müsste wenn ich relativ viele Daten per Stream übergebe.
Das solltest du bedenken, wenn du mit einer Queue/Stream arbeitest und der Consumer nicht mit dem Abarbeiten hinterherkommt: das kann dann böse "out of memory"-Fehler geben…

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30.07.2020, 15:41
Beitrag #10

LV-New Offline
LVF-Grünschnabel
*


Beiträge: 22
Registriert seit: Apr 2020

2016
2019
DE



RE: Daten nur bei Anfrage?
Zitat:Bin ja davon ausgegangen, dass LabVIEW/mein PC doch ganz schön arbeiten müsste wenn ich relativ viele Daten per Stream übergebe.
Das solltest du bedenken, wenn du mit einer Queue/Stream arbeitest und der Consumer nicht mit dem Abarbeiten hinterherkommt: das kann dann böse "out of memory"-Fehler geben…

Aus genau dem Grund hatte ich ursprünglich meine Frage gestellt Big Grin

Warum ist der TAG nach deiner Ansicht besser geeignet als der Verlustbehafte Stream? Bei beiden habe ich doch keine Historie und damit weniger Speicherbedarf?!
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
  Dauerhafte Anfrage bei Start und Ausgabe des Signals ezekiel 5 2.942 30.04.2008 07:14
Letzter Beitrag: Lucki

Who read this thread?
12 User(s) read this thread:
MarcoN, GerdW, Freddy, jg, IchSelbst, MScz, LV-New, th13, THL, Achim, TpunktN, Lucki

Gehe zu: