LabVIEWForum.de
Es ist schon wieder der Mittelwert - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenerfassung (DAQ) (/Forum-Datenerfassung-DAQ)
+---- Thema: Es ist schon wieder der Mittelwert (/Thread-Es-ist-schon-wieder-der-Mittelwert)

Seiten: 1 2


Es ist schon wieder der Mittelwert - Sammuel - 24.11.2009 15:18

Hallo,

seit ein paar Tagen ärgere ich mich mit der Mittelwertbildung rum, denn ich bin absoluter Neuling in LabVIEW. Im Forum dachte ich ein paar Seiten gefunden zu haben, aber entweder habe ich sie (noch) nicht verstanden oder das Nachbauen hat auch nichts gebracht.

Ich verstehe absolut nicht, warum meine Mittelwertbildung nicht funktioniert. Ich simuliere meine Werte und möchte von einer gewissen Anzahl jeweils einen Mittelwert haben. Die Anzahl soll einstellbar sein um sie mit dem anderen Graphen zu vergleichen.

Ich dachte ein Array zu nehmen wäre ganz gut und das in einer for-Schleife zu füllen. Das Array übergibt auch die Werte nach Beenden der Schleife (die kleine Glühbirne ist ja echt genial in LabVIEW) aber die Funktion "Array-Elemente-Addieren" nimmt sich nur den ersten Wert des Arrays.

Was ist da los?


Viele Grüße, Sammuel

Lv86_img


Es ist schon wieder der Mittelwert - Andora - 24.11.2009 15:59

Hallo Sammuel,

eine kleine Korrektur aus meiner Sicht.

Lv86_img


Es ist schon wieder der Mittelwert - Sammuel - 24.11.2009 16:24

Ja sehr schön, danke für die schnelle Antwort!

Jetzt wird der Mittelwert gebildet, aber er sieht negative Zahlen als positiv an, bildet also den falschen Mittelwert. Das ist für meine Versuche glaube ich nicht so schlimm, aber trotzdem würde ich gerne wissen warum das so ist. Wo kann ich das im Array einstellen?

Und wofür ist das Shift Register an den Seiten der for-Schleife gut? Oder ist das nur guter Programmierstil?

Gruß,

Sammuel


Es ist schon wieder der Mittelwert - Sammuel - 24.11.2009 17:10

Ne, das ist falsch, da bildet sich leider nicht der Mittelwert.

Ich habe jetzt mal (echt hässlich) ein paar if-Abfragen in meine Schleife gebaut und lasse sie mir auch ausgeben, aber das ist nicht der Mittelwert. Über den Graphen habe drei kleine Felder eingebaut die jeweils den Wert anzeigen.

Warum funktioniert es nicht? Ich kann es mir einfach nicht erklären....

Lv09_img2


Es ist schon wieder der Mittelwert - Sammuel - 24.11.2009 18:32

So, ich habs jetzt anders gelöst. Viel einfacher, jedenfalls wenn es nur um den Mittelwert geht. Für alle Anfänger wie mich sicherlich die einfachste Lösung, einfach die Werte aufeinander zu addieren in der for-Schleife mit dem Schieberegister (Shift-register) und dann durch die Anzahl der Schleifengänge zu teilen.

Für alle Anfänger:
- In der for-Schleife oben links wird eingestellt wie oft diese ausgeführt wird
- Die Null auf der linken Seite des Schieberegisters bedeutet dass die Zählung bei jedem Schleifenbeginn mit Null anfängt.


Trotzdem wüsste ich gerne warum die Version mit dem Array nicht funktioniert hat :-)

Gruß,

Sammuel

Lv86_img


Es ist schon wieder der Mittelwert - Andora - 25.11.2009 08:51

' schrieb:So, ich habs jetzt anders gelöst. Viel einfacher, jedenfalls wenn es nur um den Mittelwert geht. ...

Vorsicht! Aus dem simulierten Signal benutzt du in deinem Programm nur den letzten Wert.Excl


Es ist schon wieder der Mittelwert - Schwand - 25.11.2009 09:18

Ich kann mir dein erstes Programm nicht anschauen, aber vielleicht hast du am Ausgang der Schleife das "Indexing" nicht eingeschaltet?


Es ist schon wieder der Mittelwert - Sammuel - 25.11.2009 12:21

' schrieb:Vorsicht! Aus dem simulierten Signal benutzt du in deinem Programm nur den letzten Wert.Excl


Hmm, aber es werden doch alle Werte aufaddiert und nach Beenden der Schleife übergeben? Als ich eben 3 Durchgänge eingestellt habe, hat es prima funktioniert.... oder täusche ich mich?

Ich bin für jede Hilfe dankbar, besonders weil ich überhaupt nicht weiß warum mein erstes Programm nicht lief Grrr

Viele Grüße,

Sammuel


Es ist schon wieder der Mittelwert - SeBa - 25.11.2009 12:44

Baust du das hier mal nach...

[attachment=22793]


Gruß SeBa


Es ist schon wieder der Mittelwert - Sammuel - 25.11.2009 14:40

Danke SeBa, aber was hat das denn mit meinem eigentlichen Problem zu tun? Und würde man das Array nicht auch in einer Schleife füllen? Ich glaube das array zu füllen ist nicht das Problem, nur das Übergeben des Arrays und die Summe draus klappt nicht.

Mein ursprüngliches Programm hat Andora schon soweit verbessert, dass alle Werte des Arrays übergeben werden, vielen Dank dir nochmal.

Aber gerade hat es aus den Werten -0,478, -1,18 und 0,67 den Mittelwert 0,06 gebildet. Überschlagen müsste er aber ca -0,3 sein. Die Summe aus dem Array funktioniert einfach nicht oder stimmt die Methode mit dem Schieberegister nicht?

Ratlose Grüße,

Sammuel

PS: Ich habe mal ein Bild angehängt, die Case-Abfragen dienen nur dazu mir die Werte bei i=1,2 und 3 zu zeigen.