LabVIEWForum.de
Messwerte in eine Datei lesen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenbank & File IO (/Forum-Datenbank-File-IO)
+---- Thema: Messwerte in eine Datei lesen (/Thread-Messwerte-in-eine-Datei-lesen)

Seiten: 1 2 3


Messwerte in eine Datei lesen - tierchen - 15.11.2010 18:19

Hallo,

ich stehe hier leider vor zwei Problemen. Ich möchte gerne Messwerte zweier
Messgeräte von einer seriellen Schnittstelle abwechselnd in eine ASCII Datei (.asc) einlesen. Das
funktioniert eigentlich auch. Erstes Problem: Jedoch bekomme ich nach einer gewissen Zeit immer einen
Fehler. Siehe Bild unten.

Das passiert immer wenn die .asc Datei zw. 430 und 530 kb groß ist.

Hat einer von Euch eine Idee?
Schön wäre es wenn ich alle x- Werte neu anfangen könnte (fäng in der selben Datei wieder bei 0 an),
oder wenn ich alle z.B. 50 Messwerte eine neue Datei anfangen würde und dieses dann zwischen z.B.
Datei 1 und Datei 2 alterniert.

Wollte eigentlich vermeiden das ExpressVI zu verwenden.

Zweites Problem: Wie mache ich das eigentlich mit dem Timestamp. Ich hatte auch gerne die Millisekunden
angezeigt. Momentan sehe ich aber während einer Messung immer nur Stunde, Minute und Sekunde. Ich bräuchte
aber auch die Millisekunden, damit ich überprüfen kann ob die Messwerte auch sauber im 200 ms Sek. - Takt
eingelesen werden.
Verwendete Labview- Version ist 8.6 Studentenversion.

Danke schon mal für die Hilfe


Messwerte in eine Datei lesen - jg - 15.11.2010 19:19

Offtopic2
:profil:LabVIEW 8.4 gibt es nicht.
Tiffs mögen ja in der Mac-Welt weit verbreitet sein, aber als Bild-Format für Browser in der Windows-Welt haben sie sich nicht durchgesetzt. Nimm doch nächstes Mal ein PNG, das wird gleich inline angezeigt.

Zu deinen Fragen:KA, ohne Einsicht in den Sourcecode wären die meisten Antworten ziemliche Raterei. Also VI hochladen, wenn möglich.

Der Fehler kommt aus der VISA-Kommunikation, ich bezweifle, dass er ursächlich mit einen parallelen Datenspeicherung zusammenhängt.

Gruß, Jens


Messwerte in eine Datei lesen - tierchen - 15.11.2010 20:07

Danke für die schnelle Antwort,

Zitat::profil:LabVIEW 8.4 gibt es nicht.

sorry war ein vertippsler *blush*

Zitat:Tiffs mögen ja in der Mac-Welt weit verbreitet sein, aber als Bild-Format für Browser in der Windows-Welt haben sie sich nicht durchgesetzt. Nimm doch nächstes Mal ein PNG, das wird gleich inline angezeigt.

Gab bei mir jedesmal eine Fehlermeldung. Deshalb das .tiff

Zitat:Zu deinen Fragen:KA, ohne Einsicht in den Sourcecode wären die meisten Antworten ziemliche Raterei. Also VI hochladen, wenn möglich.

Der Fehler kommt aus der VISA-Kommunikation, ich bezweifle, dass er ursächlich mit einen parallelen Datenspeicherung zusammenhängt.

1:1 ist das leider nicht möglich... musste die Steuerbefehle und Antworten rausnehmen *sorry* ansonsten hier das VI:


Lv86_img


Danke schonmal.... ich mach das hier noch nicht all zu lange und stehe deswegen hin und wieder bissel dumm da.

LG


Messwerte in eine Datei lesen - jg - 15.11.2010 20:31

Hilfe! Dauerndes File-Open ohne das dazugehörige File-Close! Also entweder du schließt den File nach dem Schreibvorgang jedesmal, oder du reichst die File-Refnum an den nächsten Schleifendurchlauf weiter, wobei du dann nicht wieder den File neu öffnest.

Zwecks Millisekunden, nimm eine andere Zeit zu String Funktion. Z.B. die hier:
[attachment=30610]
Oder "Format Into String"

Gruß, Jens


Messwerte in eine Datei lesen - tierchen - 15.11.2010 21:28

Danke. Werde ich morgen direkt machen.

LG


Messwerte in eine Datei lesen - tierchen - 17.11.2010 09:18

Danke war hilfreich. Habe nur den Timestamp gegen Datum und Zeit mit Sekunden
ermitteln genommen, damit ich hinter jedem Messwert die passende Zeitmarke habe.

Nun mal schauen wie sich das mit dem Fehler so entwickelt. Habe auch das Datei
konsequent schließen mit eingebaut.


Messwerte in eine Datei lesen - Matze - 17.11.2010 09:26

Hallo,

wenn du beim Empfangen den aktuellen Timestamp ermittelst und z.B. in einer Schleife aktualisierst, sollte das problemlos möglich sein:

[attachment=30650]Lv85_img

[attachment=30651]

Sonst bitte das entsprechende VI hochladen, da Raten keinem hilft.


Messwerte in eine Datei lesen - tierchen - 17.11.2010 09:42

Zitat:wenn du beim Empfangen den aktuellen Timestamp ermittelst und z.B. in einer Schleife aktualisierst, sollte das problemlos möglich sein:


Jup sollte auch gehen. Wollte nur noch mehr Schleifen verhindern. Aber mit der oben genannten Änderung funzt es auch *freu*


Messwerte in eine Datei lesen - tierchen - 17.11.2010 18:02

Nabend,

kleines Zwischenupdate: Gebe ich den String als Schleife immer wieder in ein
Ausgabefenster läuft das Programm stabil für die nächste Stunde. Bau ich die
Datei ein, wird weiterhin die Visafehlermeldung gebracht. Könnte sein, dass da dann
irgendetwas überläuft. Daraufhin kommt es zu einem Timeout bei Visa. Mal sehen,
denn die Messwerte sollen nacher auf 2 Arten genutzt werden. Onlineübertragung
mit einem Protokoll und steuerbare Speicherung in eine Datei über eine gewisse
Zeit. Wobei ich ja auch immer noch nicht genau weiss wie ich die Daten online direkt
aus der Schleife befördern kann. Kommt Zeit kommt Rat.


Messwerte in eine Datei lesen - tierchen - 18.11.2010 08:37

Morgen,

habe mich nun entschieden das ganze per UDP zu verschicken
(für die Onlinevariante) und gestern
anhand von Beispielen etwas herumgebastelt. Sprich... ich habe
simulierte Werte (hier mal mit einem Drehregler) an eine andere IP geschickt
(kein LabView Rechner).
Natürlich mit genauer MesszeitSmile. Nur hab ich jetzt zur "richtigen"
implementierung eine Frage. Wie bekomme ich den jeweiligen String aus meiner
Schleife im Programm? Variablen? Gibt es da eine elegante Lösung, wie ich die
Werte da rausnehme? Momentan versuche ich das einfach so in das eine VI mit
hinein zu stecken. Ich hatte auch schon versucht mein ganzes OrginalVI zu einem
SubVi zu machen.... Das verlief aber nicht so ganz korrekt.

Ich hoffe mein Beitrag ist nicht offtopic
LG