LabVIEWForum.de
Glättung Hysteresekurve durch Mittelwertbildung - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Signaldarstellung (/Forum-Signaldarstellung)
+---- Thema: Glättung Hysteresekurve durch Mittelwertbildung (/Thread-Glaettung-Hysteresekurve-durch-Mittelwertbildung)

Seiten: 1 2


Glättung Hysteresekurve durch Mittelwertbildung - 123mibu - 21.02.2012 12:37

Hallo LabView Gemeinde,

ich bin ganz neu im Forum und auch ganz frisch in LabView eingestiegen. Außer einer einfachen Temperatur- und Druckmessung habe ich noch keine Erfahrung, aber ich finde LabView eine tolle Software und will mich mehr damit beschäftigen.

Im Rahmen meiner Werkstudententätigkeit wurde ich nun vor die Aufgabe gestellt ein sehr komplexes bestehendes Blockdiagramm zu verbessern. Im Speziellen geht es darum eine Hysteremessung zu verbessern und auszuwerten.
Dabei wird bei einem durch ein PWM Signal angetriebenen Spindeltrieb der Hub über den Steuerstrom aufgetragen. Der Hub wird durch ein im E-Motor befindlichen Spannungssensor ermittelt. Der Steuerstrom durch eine Stromzange, die an der Stromversorgung des Motors befestigt wird.
Das funktioniert auch alles wunderbar, nur durch das PWM Signal ergibt sich der im Bild gezeigte Graph. Dieser ist zur Bewertung von Störungen unbrauchbar. Eine Linearisierung mit einem Filter, wie schon vorhanden ist, würde Störungen einfach wegbügeln. (Zur Veranschauung sind zwei Graphen, einmal mit, einmal ohne Störung angehängt)

Meine Idee ist jetzt den Verlauf durch eine Mittelwertbildung zu glätten. Ich stell mir vor z.B. immer 5-10 Werte aus dem 1D Array rauszuziehen, daraus einen Mittelwert zu bilden und in ein neues 1D Array zu schreiben. Dann die nächsten Werte aus dem ersten Array holen, wieder Mittelwert bilden und in das neue Array als 2. Wert schreiben. Damit würde ich dann den Graph zeichnen.
Mich würde nun interessieren, ob es ein entsprechendes VI gibt oder ob man sich selbst was bauen muss? Leider hab ich in der Array Bibliothek nichts passendes gefunden.
Später will ich dann was bauen, dass eine Fehlermeldung ausgegeben wird, wenn der fließende Mittelwert um einen bestimmten Betrag vom Gesamtmittelwert abweicht.

Vielen Dank schonmal für eure Hilfe! Und nehmt es mir bitte nicht böse, wenn das alles total unsinnig ist Wink


RE: Glättung Hysteresekurve durch Mittelwertbildung - jg - 21.02.2012 12:46

Mean PtByPt

Gruß, Jens


RE: Glättung Hysteresekurve durch Mittelwertbildung - GerdW - 21.02.2012 12:47

Hallo 123,

dann schau dir das mal an: Mean PtByPt...

Zitat:Leider hab ich in der Array Bibliothek nichts passendes gefunden.
Die Array-Palette enthält grundlegende Array-FUnktionen. Du dagegen willst "Signale verarbeiten"...


RE: Glättung Hysteresekurve durch Mittelwertbildung - 123mibu - 21.02.2012 12:54

Danke für die schnelle Antwort.
Ich kenne dieses VI und hab es damit auch schon versucht, nur das Problem ist ja, dass ich keine einzelnen Signale habe, sondern ein 1D Array. Gibt es vielleicht eine Möglichkeit aus dem Array wieder einzelne Signale zu erzeugen, die ich dann über das VI laufen lassen kann? Und anschließend wieder ein Array bilden? Macht das Sinn?


RE: Glättung Hysteresekurve durch Mittelwertbildung - GerdW - 21.02.2012 12:56

Hallo 123,

Zitat:Gibt es vielleicht eine Möglichkeit aus dem Array wieder einzelne Signale zu erzeugen, die ich dann über das VI laufen lassen kann?
Eine autoindizierende FOR-Loop vielleicht? Schon mal den Link in meiner Signatur beachtet?


RE: Glättung Hysteresekurve durch Mittelwertbildung - 123mibu - 21.02.2012 14:51

Danke für die Infos. Ich werde gleich mal versuchen es umzusetzen.


RE: Glättung Hysteresekurve durch Mittelwertbildung - Lucki - 21.02.2012 14:57

Ich sehe ehrlich gesagt gar keinen großen Unterschied zwischen gestörtem und ungestörtem Verlauf. Zumindest sind die "hochfrequenten" Schwankungen in beiden Diagrammen gleich groß - und nur diese würde man ja durch Mittelwertbildung verringern. Hast Du vielleicht ein falsches Diagramm gepostet?


RE: Glättung Hysteresekurve durch Mittelwertbildung - 123mibu - 21.02.2012 15:32

Sehr gut, denn genau das ist ja was ich will Wink Also die hochfrequenten Schwankungen ausbügeln, damit ich Ausbrüche, wie in Diagramm 2 gezeigt, besser registrieren kann. Diese Ausbrüche in der Hysteresekurve kamen zustande, indem ich einfach händisch einen Wiederstand auf die ein- bzw. ausfahrende Spindel draufgegeben habe. Dadurch kam es zu einem Stromanstieg. Später soll dann ein Toleranzband diese Ausbrüche erkennen und eine Fehlermeldung ausgeben. Wie das geschehen soll weiß ich jetzt noch nicht.


RE: Glättung Hysteresekurve durch Mittelwertbildung - 123mibu - 27.02.2012 13:52

Jetzt hab ich nochmal eine Frage zu der Mittelwertbildung, speziell zum Schreiben von Arrays.

Nachdem ich in einer FOR Schleife aus z.B. 10 Werten einen Mittelwert habe wird ja ein neues Array gebildet und nach und nach der neue Mittelwert reingeschrieben. Ich möchte aber, dass die Gesamtanzahl der Elemente aus dem Array nach der Mittelwertbildung gleich der Anzahl der Elemente vor der Mittelwertbildung ist.
Das soll so geschehen: Ist ein Mittelwert aus 10 Werten gebildet, wird dieser auch 10 mal in das neue Array geschrieben. Anschließend wird eine neuer Mittelwert aus 10 Werten gebildet und im Array an die ersten 10 Werte drangehängt und so weiter.

Ich hab irgnedwie keine Idee, wie ich das machen könnte?!


RE: Glättung Hysteresekurve durch Mittelwertbildung - jg - 27.02.2012 13:57

Ich verweise nochmal auf Beitrag #2 und #3:
http://www.labviewforum.de/Thread-Glaettung-Hysteresekurve-durch-Mittelwertbildung?pid=133955#pid133955

Gruß, Jens