LabVIEWForum.de - "Ringspeicher" in LabVIEW anlegen

LabVIEWForum.de

Normale Version: "Ringspeicher" in LabVIEW anlegen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

ich habe mal eine Frage und wollte man nach Euren Rat Fragen.
Folgende Situation:
Ich steuere mit LabVIEW ein Hardware an, die zyklisch alle Sekunde Messwerte zurück sendet. Diese Werte müssen in einen Speicher abgelegt werden. Nach 200 Messwerten soll von den Werten der Mittelwert gebildet werden. Dieser Mittelwert soll dann in eine Datei gespeichert werden.
Hat einer von Euch eine Idee, wie das zu realisieren ist?
Weiterhin sollen die Werte überprüft werden. D.h. wenn ein bestimmter Wert auftritt (Fehlerwert) sollen 200 Werte ab dem Auftreten des Fehlers in eine Datei abgespeichert werden.
Das heißt am sinnvollsten wäre es eine Art Ringspeicher anzulegen, in dem immer 400 Messwerte abgelegt werden. Nach 400 Werten muss überprüft werden, ob ein Fehler da war. Wenn nicht müssen die ersten 200 genommen werden und wie oben beschrieben verfahren werden.
Ist ein Fehler aufgetaucht müssen die letzten 200 genommen werden, wie oben beschrieben.
Gibt es eine Möglichkeit so etwas in LV zu realisieren? Wenn ja, wie?
Ich bin leider noch nicht der LV-Fachmann, deswegen meine Frage.
Hoffe, dass mir jemand helfen kann.
Bin für jeden Tipp dankbar.
Vielen Dank schon mal im Voraus!
Gruß Tom
Hallo,

jeden Wert in eine Datei abspeichern, mit jedem aufgenommenen Wert einen Zähler hochzählen lassen und parallel die eingehenden Werte Aufsummieren. Wenn Du 200 Werte hast, einfach durch die gesamt Summe teilen und fertig.
Tritt ein Fehler auf soll die vorhandene Datei überschrieben werden.

Das mit deinem Ringspeicher ist keine gute Idee, was machst Du wenn nach den Werten 4 und 188 ein falscher Wert auftritt?
Du willst Doch exakt 200 Werte nach dem Fehler bewerten oder?
Hi stud,

in Schleifenstrukturen (for, while,...) kannst du Shiftregister benutzen.
Mit Ihnen erhälst du die Möglichkeit über Werte aus dem vorherigen Schleifendurchlauf zu verfügen.
Ein Ringspeicher eben...


Gruß
Oliver
Hi, die Problemstellung ist nicht all zu schwierig,
dennoch hab ich ein paar fragen von denen die
Wege bzw.die Art und weise Abhängig
ist wie ich es lösen würde.

stud schrieb:Hallo zusammen,
Ich steuere mit LabVIEW ein Hardware an, die zyklisch alle Sekunde Messwerte zurück sendet.


Wie ? Welche Schnittstelle (DaqMx? GPIB,TCP/IP etc..)
Was? Gibt es definierte Antwortzeiten?




[quote=stud]Diese Werte müssen in einen Speicher abgelegt werden. Nach 200 Messwerten soll von den Werten der Mittelwert gebildet werden. Dieser Mittelwert soll dann in eine Datei gespeichert werden.
Hat einer von Euch eine Idee, wie das zu realisieren ist?
Weiterhin sollen die Werte überprüft werden. D.h. wenn ein bestimmter Wert auftritt (Fehlerwert) sollen 200 Werte ab dem Auftreten des Fehlers in eine Datei abgespeichert werden.
Referenz-URLs