LabVIEWForum.de - Messwerte mit Zeitpunkt anzeigen

LabVIEWForum.de

Normale Version: Messwerte mit Zeitpunkt anzeigen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3
Also das Bier hast du klar gewonnenSmile

Habe im Anhang den Programmteil der den String einzeln einliest. Inzwischen ist mir klar was ich brauche, aber ich habe keinen Plan wie ich das programmieren soll!

Gruß Domi
@domi: Hast du in deiner Kindheit ein Trauma mit geraden Linien gehabt?O



Wink
Bis morgen kannst du dir ja mal zu folgenden Dingen was überlegen.

1) Warum beendest du die Schleife bei i=0? Das bedeutet nur ein Schleifendurchlauf.
2) Lass die Lokale Variable von Offset weg und verbinde das direkt... was du da hast bietet die Möglichkeit einer RaceCondition.
3) Poste mal eine Beispiel-Textdatei... das mag dem Verständnis helfen oder nicht... wir werden sehen.
4) Was steht in der Textdatei drin... (siehe 3.). Willst du zeilenweise "Wert;Zeitstempel" auslesen?
5) Was erwartest du als Daten zu bekommen?
6) Gibt es das Read from Spreadsheet VI in deiner Version schon?
7) Wie führst du das Programm aus? Mit dem RunContinous Pfeilen in der Menüleiste?
8) Warum benutzt du immer noch das InitArray VI? Ich sagte doch bereits, das du damit nur ein Array der Länge Eins erzeugst... Ich meine das widerspricht sich doch selbst.

Gute Nacht und Gruß SeBa
1) Warum beendest du die Schleife bei i=0? Das bedeutet nur ein Schleifendurchlauf.
Sonst bekomme ich keine Daten nach der Schleife. Die werden immer erst beim Stop der Schleife ausgegeben.
2) Lass die Lokale Variable von Offset weg und verbinde das direkt... was du da hast bietet die Möglichkeit einer RaceCondition.
Ok, hab ich gemacht!
3) Poste mal eine Beispiel-Textdatei... das mag dem Verständnis helfen oder nicht... wir werden sehen.
Ist im Prinzip eine endlos lange Datei die weder Überschriften noch sonst etwas außer "Wert; Zeitstempel" enthält. Nach diesem Schema:
140; 14.03.2010 18:04:57
140; 14.03.2010 18:06:43
130; 14.03.2010 18:08:31
200; 14.03.2010 18:10:21
130; 14.03.2010 18:12:10
130; 14.03.2010 18:13:58
140; 14.03.2010 18:15:49
130; 14.03.2010 18:17:35
; 14.03.2010 18:21:47
130; 14.03.2010 18:25:22
130; 14.03.2010 18:32:50

4) Was steht in der Textdatei drin... (siehe 3.). Willst du zeilenweise "Wert;Zeitstempel" auslesen?
Jeder Wert soll mit seinem dazugehörigen Zeitstempel im Graph angezeigt werden. Zeit=X-Achse, Wert=Y-Achse.
5) Was erwartest du als Daten zu bekommen?
Im Prinzip ist es mir egal welche Daten ich bekomme. Sie müssen nur angezeigt werden können. Welcher Datentyp dass ist, ist nicht so wichtig denke ich.
6) Gibt es das Read from Spreadsheet VI in deiner Version schon?
Ja gibt es.
7) Wie führst du das Programm aus? Mit dem RunContinous Pfeilen in der Menüleiste?
Ja. Aber auch mit dem "Einzellauf"-Pfeil funktioniert das Programm.
8) Warum benutzt du immer noch das InitArray VI? Ich sagte doch bereits, das du damit nur ein Array der Länge Eins erzeugst... Ich meine das widerspricht sich doch selbst.
Hab ich nun geändert.

Gute nacht, Grüße Domi
Moin moin,

bleiben wir bei der Nummerierung.

1) Eine Schleife die nur einmal ausgeführt wird ist...? Jepp. Überflüssig. Die kannst du auch weglassen.

3) Siehst du, hat geholfen. Ich musste mir keine Werte ausdenken (was ich nämlich gar nicht mag).

5):mellow:Es kann dir doch nicht egal sein, welcher Datentyp dabei rauskommt. Schließlich hast du ein Ziel (-> XY-Graph), welches nur bestimmte Datentype verarbeiten kann. ...(Zeit-)Strings können z.B. nicht einfach als X-Achse herhalten.

6) siehe Anhang

7)ONööö. Dafür ist das nicht gedacht. Die "Neu-Einlesen" Funktionalität ließ mich das schon ahnen. Da gehört eine Haupt-Schleife drumrum. RunOnce lass ich mir noch gefallen, für Programme die sich selbst beenden wenn sie durchgelaufen sind. Aber RunContinous zu benutzten um das Programm am Leben zu halten...Noe

Zwei Beispiele wie man das angehen kann:
[attachment=25481]

Gruß SeBa
Also eine Schleife hab ich jz um das ganze Programm gezogen.
Aber mit deinem Bsp. werden immer noch nur einzelnen Punkte angezeigt. Wie bringe ich alle Punkte auf einmal in den Graph? Oder hab ich beim Nachbauen einen Fehler gemacht?

Gruß Domi
Du hast weder das Eine noch das Andere nachgebaut.

:mellow:Ich habe dich gefragt, ob du das 'Read from Spreadsheet' VI benutzen kannst... deine Antwort war positiv. Nur benutzen, wie ich es im oberen Beispiel gezeigt habe, tust du es nicht.

Im unteren Beispiel zeige ich, wie man eine Textdatei ZEILENWEISE einliest, jede Zeile scannt und per Autoindexing in ein Array überführt, wobei die Einleseschleife per Errorcluster auf das EOF reagiert und sich selbst beendet.

//Nebenbei bemerkt:
Hauptschleifen mit einer Konstanten am Laufen zu halten ist schlecht, da man die SChleife so nicht 'normal' beenden kann.


Gruß SeBa
So, jetzt hab ichs genau so wie im obigen Bsp.. Abgesehen von der kleinen Umgehung wegen dem Zeitstempel. Aber der Übergang nach dem Array indizieren passt noch nicht. Warum?
An der Farbe erkennt man doch schon: Das ReadFromSpreadsheet gibt dir ein ArrayOfDouble aus. Du willst aber ein ArrayOfString haben. Wie du das einstellen musst, kann ich dir nicht sagen, da ich kein LV 7.x habe.

Überzeugst du das Read..VI davon, dir ein ArrayOfString zu geben, hast du gewonnen.


Gruß SeBa
Seiten: 1 2 3
Referenz-URLs