LabVIEWForum.de
Indicator in While-Schleife - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Indicator in While-Schleife (/Thread-Indicator-in-While-Schleife)



Indicator in While-Schleife - Gian Carlo - 26.03.2009 12:03

Hallo Gemeinde,

ich habe folgendes Problem. Mein VI beinhaltet einen Telnet Client, sowie eine eigens konzipierte Combo Box und eine Funktion, die mir aus einem String Zahlen extrahiert. Im Prinzip funktioniert es auch, nur dass die die Zahl aus dem String, die ich als Client vom Server erhalte nur für eine kurze Sekunde angezeigt wird. Danach springt der Indicator erneut auf 0. Ich denke mal es liegt an der While-Schleife, in der diese Funktion liegt, da diese bei neu erhaltenen Daten neu gestartet wird. Wie ich kann ich dies umgehen? Ich möchte, dass die Zahl dauerhaft angezeigt wird und erst wechselt, wenn eine neue Zahl in einem neu-erhaltenem String gefunden wurde.
Es sollte sich selbstverständlich auf "Read Data from telnet connection" beschränken.

Für Hilfe wäre ich sehr dankbar.

Lv85_img


Indicator in While-Schleife - jg - 26.03.2009 22:02

Case-Struktur - nur wenn deine gelesenen Daten nicht leer sind, schreibst du in den Indikator.

Gruß, Jens


Indicator in While-Schleife - Gian Carlo - 01.04.2009 08:50

Vielen Dank für die Antwort, hat geholfen. Jedoch habe ich nun ein ganz anderes Problem. Das VI dient wie gesagt dazu einen Telnet-Client zu simulieren, der dazu genutzt wird Messwerte (Drehzahl und Geschwindigkeit) von einem CarGate (Gateway CAN-Bus zu LAN) in einem Volkswagen PKW zu generieren. Die Verbindung klappt auch, die Messwerte rauschen auch ziemlich schnell an wenn ich auf das Gaspedal drücke.
Ich lasse mir die ankommenden Werte in jeweils ein Textfile schreiben (jeder neue Wert in eine neue Zeile).
Soll dann ungefähr so aussehen:

EngineSpeed (in U/min):
200
234
278
378
usw.

Wenn ich ordentlich aufs Pedal drücke bekomme ich jedoch so etwas:

EngineSpeed (in U/min):
200
234 278 378 456
499 578 589 612 756
usw.

Das Programm fängt also an die Werte in einer Zeile nebeneinander zu schreiben. Auch im Indicator tauchen plötzlich mehrere Zahlenwerte nebeneinander an.
Liegt es an meiner String zu Zahl Extraktionsfunktion? Ist sie vielleicht zu langsam? Ich realisiere dies durch die Funktionen "Extract Numbers.vi" gefolgt von der Funktion "Array to Spreadsheet String".
Könnte mir jemand eine gute Funktion zeigen, mit der man aus einer ankommenden string Nachricht eine Zahl extrahieren kann?


Gruß, Gian Carlo.


Indicator in While-Schleife - jg - 01.04.2009 12:49

Frage ist nochmal hier gestellt und beantwortet:
http://www.LabVIEWforum.de/index.php?showtopic=12484