LabVIEWForum.de - wie geht das als Sub VI

LabVIEWForum.de

Normale Version: wie geht das als Sub VI
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,
ich möchte gerne mit meinen erfassten Werten eine "gleitende" Mittelwertbildung machen, also so eine Art Ringspeicher in dem sich immer die z.B 5 aktuellsten Werte befinden.
Ich habe hierzu ei Test VI, das Zufallswerte generiert, s. Anhang.
[attachment=2678]
Das funktioniert eigentlich sehr gut.
Jetzt möchte ich aber gerne den Programmteil der die Mittelwertbildung macht, also das Array erstellt und aus dem Teilarray die Mittelwertbildung macht als Sub VI umwandeln (Eingang Daten und Anzahl Werte für Mittelwertbildung, Ausgang gemittelte Werte). Das Schieberegister soll im Sub VI laufen.
Wie muss ich das VI ändern damit das geht?

Danke für eure Hilfe.
Gruß Andreas
Hi,

ich kann dein VI leider nicht runterladen...schau halt mal meine Variante an, vielleicht kannst du damit was anfangen!

Gruss
Achim

[attachment=2680]
Hallo Achim,
ich habe hier noch einmal den Bildschirmprint.
[attachment=2682]
Ist dieses VI als Sub Vi unbrauchbar?
Hi,

nein, meiner Meinung nach ist das ok! Allerdings ist mir noch nicht so ganz klar, wie du deine Werte erfasst und dann ans SubVI übergibst...in deinem Beispiel sind ja im Schieberegister nie mehr Werte als du daraus ausschneidest, halt jedesmal vorne ein neuer dazu und hinten einer weg...was passiert mit den alten Werten?

Ich hab mein VI mal ein bisschen optimiert, das wollte ich die ganze Zeit schon machen ;-) Im Gegensatz zu deinem VI ermittle ich nicht die aktuellen n Werte und zeige deren Mittelwert einzeln an, sondern ich glätte quasi meine Kurve, in dem ich um den Wert x herum eine Mittelung durchführe (x-n bis x+n) und dann den Wert x in der Kurve mit dem neu berechneten Mittelwert ersetze. Das mache ich mit jedem Wert x und kriege dadurch ne geglättete Kurve mit genausovielen Messwerten wie die Originalkurve!

Gruss
Achim


[attachment=2760]
Referenz-URLs