LabVIEWForum.de
Kern Waage - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Instrument IO & VISA (/Forum-Instrument-IO-VISA)
+---- Thema: Kern Waage (/Thread-Kern-Waage)



Kern Waage - Yilhak - 29.06.2016 07:15

Hallo Leute,

ich habe ein extrem großes Problem! Ich will (z.B.)alle 500ms eine Kernwaage abfragen über die RS232 Schnittstelle.
Aktuell misst er etwa ohne das ich etwas einstelle mit ca. 230ms pro Wert. Mit timeLoop in der While-Schleife misst der nur den Anfangswert. Habe alles schon ausprobiert. BITTE UM HILFE. Es soll mir alle 500ms einen Wert zuschicken -> als .txt Datei abgespeichert

Vielen Dank im Voraus!

MfG


RE: Kern Waage - GerdW - 29.06.2016 07:23

Hallo Yilhak,

deine Waage sendet dir Werte mit ihrem eigenen Timing, die kümmert sich nicht um deine Wünsche bzgl. des Abspeicherns…

Zitat:ich habe ein extrem großes Problem!
Die größe des Problems hängt von der Sichtweise ab… Big Grin

Lösung:
Eine Loop holt die Werte von der Waage ab und speichert sie in einem Notifier (oder im einfachste Fall in einem Indicator).
Eine zweite Loop liest den Notifier (oder die lokale Variable) im 500ms-Takt und speichert die Werte in eine Datei.
Damit hast du Datenakquise und Datenspeicherung zeitlich entkoppelt, ohne dass sie sich gegenseitig beeinflussen/stören…
(Der Notifier hat den Vorteil, dass man die beiden Schleifen dann in unterschiedliche VIs auslagern kann!)

Sowas nennt sich Consumer-Producer-Schema und ist ein einfaches und übliches Entwurfsschema für Programme. LabVIEW hat da sogar Beispiel-Projekte im Angebot!

Nachtrag:
Ich bemerke gerade, dass du ja doch ein Kommando "1" an die Waage sendest. Reagiert die Waage auf dieses Kommando mit einem Messwert?
Wenn ja, dann würde es natürlich ausreichen, die Wartezeit in der Schleife zu platzieren…