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 

String zwischenspeichern



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!

27.02.2014, 09:40
Beitrag #1

floeteee Offline
LVF-Neueinsteiger


Beiträge: 5
Registriert seit: Feb 2014

2012
2012
DE



String zwischenspeichern
Hallo Forum!

Ich möchte gerne eine Textdatei in einem bestimmten zeitlichen Abstand auslesen, den String der dabei rauskommt möchte ich gerne so lange zwischenspeichern und anzeigen lassen bis ein neuer String ausgegeben wird. Ich komm einfach nicht auf die Lösung, wie das gehen kann.

Vielen Dank!
Flo


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
27.02.2014, 09:43 (Dieser Beitrag wurde zuletzt bearbeitet: 27.02.2014 09:44 von GerdW.)
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: String zwischenspeichern
Hallo Flo,

wenn man wissen will, was im VI passiert, dann nutzt man Debuggingtools wie Highlighting oder Sonden.

Und wenn man Dinge nur zu bestimmten Zeitpunkten/Bedingungen erledigen will, dann packt man diese Dinge in eine Case-Struktur.

Frage:
Wenn du den String nur alle 10s neu setzen/beschreiben willst, warum machst du das dann in jeder Iteration?

THINK DATAFLOW!

P.S.:
Die Nutzung des AutoCleanup-Tools würde hier nicht schaden.
Warum hast du keine Wartezeit in der Schleife?

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.02.2014, 14:56
Beitrag #3

Trinitatis Offline
LVF-Guru
*****


Beiträge: 1.694
Registriert seit: May 2008

7.1 / 8.0 /2014-1, 18
2002
DE

18055
Deutschland
RE: String zwischenspeichern
Hallo Flo,

noch ein Nachtrag:
Du öffnest in jeder Iteration eine Referenz auf dieselbe Datei, schließt diese aber nicht wieder. Das könnte irgendwann zu Problemen führen.



Gruß, Marko
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
27.02.2014, 22:50
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: String zwischenspeichern
(27.02.2014 09:40 )floeteee schrieb:  ... den String der dabei rauskommt möchte ich gerne so lange zwischenspeichern und anzeigen lassen bis ein neuer String ausgegeben wird.
Aber das macht doch jede Anzeige (und natürlich auch Textanzeige) so: Sie zeigt den Wert (z.B. einen Text) so lange an, bis der durch etwas Aktuelleres überschrieben wird. Da muß man doch nichts extra programmieren...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.02.2014, 10:23
Beitrag #5

floeteee Offline
LVF-Neueinsteiger


Beiträge: 5
Registriert seit: Feb 2014

2012
2012
DE



RE: String zwischenspeichern
Danke für die Antworten!
Bei mir wird aber gar nichts angezeigt, wenn die Case-Struktur mit dem Timer verbunden ist. Es wird nur ein Text-String angezeigt, wenn ich die Case-Struktur mit einem konstanten TRUE verknüpfe.
Gibt es eine andere Möglichkeit, eine Textdatei zyklisch auszulesen?

Vielen Dank,
Flo
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
28.02.2014, 10:27 (Dieser Beitrag wurde zuletzt bearbeitet: 28.02.2014 10:27 von GerdW.)
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: String zwischenspeichern
Hallo Flo,

Zitat:Es wird nur ein Text-String angezeigt, wenn ich die Case-Struktur mit einem konstanten TRUE verknüpfe.
Um es noch einmal in GANZ DEUTLICHEN Worten zu sagen:
Was passiert im FALSE-Case? Welcher Wert wird dann ausgegeben? Wieso erscheint dann kein Text im Indicator?

Und noch einmal:
Wenn etwas nur zu bestimmten Bedingungen getan werden soll, dann erledigt man das innerhalb einer Case-Struktur.
Wenn du nur zu bestimmten Bedingungen einen Text lesen und dessen Darstellung veranlassen willst, dann erledige das innerhalb der Case-Struktur!

THINK DATAFLOW!

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
28.02.2014, 10:44
Beitrag #7

floeteee Offline
LVF-Neueinsteiger


Beiträge: 5
Registriert seit: Feb 2014

2012
2012
DE



RE: String zwischenspeichern
OMG jetzt hab ichs verstanden! Wenn ich alles in die CASE reinpack funktionierts!
Danke
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
03.03.2014, 11:02
Beitrag #8

Kiesch Offline
LVF-Stammgast
***


Beiträge: 412
Registriert seit: Mar 2009

2019, 2018, 2016
2009
DE

04519
Deutschland
RE: String zwischenspeichern
Mal salopp vermutet was das Prob war:

Wenn ich den Knoten richtig deute ist der False Case leer. Die Lösung für das Labview das so nicht ausführen möchte war: Standard wenn nicht verbunden (das ist ein leerer String). Verstriche Zeit misst offenbar nur ob schon so viel Zeit wie angegeben vergangen ist seit dem letzten TRUE und gibt dann TRUE aus (nutze das VI nicht deswegen mal blind geraten).

Was passiert jetzt? Deine Schleife rennt ungebremst, lastet einen Prozessorkern aus und kriegt ab und zu mal ein TRUE in den Case - dann wird dein String gesetzt aufs Bedienelement. Dummerweise rennt die Schleife weiter und dein Verstrichene Zeit gibt jetzt FALSE aus. Damit wird der FALSE Case ausgeführt, der Standardstring "" (also der Leere String) wird ausgegeben und das was vorher im Bedienelement stand sofort überschrieben. (der rennt schneller als du kucken kannst und überschreibt deswegen auch entsprechend schnell).

Was lernen wir daraus: Du hast dein Problem offenbar trotz Unkenntnis des eigentlichen Problems immerhin ganz gut gelöst; denn wenn das Bedienelement im TRUE Case sitzt dann wird es eben nur noch im TRUE Case beschrieben.

Gruß Kiesch

P.S: Ein Wait mit 10 / 100ms (oder was auch immer du gerne hättest) in der Schleife wäre sicher noch sinnvoll. Sonst rennt die wie gesagt ungebremst und lastet einen Prozessorkern aus. Noch besser wäre vermutlich die verstrichene Zeit durch eine Eventstruktur zu ersetzen. Die wartet dann auch wirklich genau deine 10s wenn du die mit dem Timeout verbindest. Sieht dann so aus:

   

Kannste dann auch zu nem beliebigem Zeitpunkt stoppen und läuft nicht als Endlosschleife wie oben *hust*

   


Angehängte Datei(en)
12.0 .vi  String Beispiel.vi (Größe: 6,94 KB / Downloads: 166)

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
  Wert Zwischenspeichern in Subvi Labview User 6 4.998 03.08.2016 15:03
Letzter Beitrag: Lucki
  Daten zwischenspeichern??? Spearmint 15 13.255 02.04.2014 10:36
Letzter Beitrag: JoeCain
  Datensatz mit der Queue-Funktion zwischenspeichern? LV-Fred 4 5.576 17.08.2011 07:31
Letzter Beitrag: LV-Fred
  ?Globale Variable zwischenspeichern? Kirsc 6 7.057 07.07.2011 08:46
Letzter Beitrag: THL
  Wert in Array zwischenspeichern wenn größer/ungleich 0 udcno@AL 10 10.908 18.11.2010 09:20
Letzter Beitrag: M Nussbaumer
  Werte zwischenspeichern für Auswertung VisionaryS 2 4.474 23.01.2009 12:48
Letzter Beitrag: VisionaryS

Gehe zu: