Hallo, hier möchte ich mal über Mittelung und Plausibilität von Messwerten sprechen. Meine Hoffnung ist, dass jemand ein elegantes Vorgehen für mein Problem kennt. Ich habe eine zu messende Spannung, auf der immer wieder Störungen sind, die ich nicht per Hardware herausfiltern kann. Um einen guten Messwert zu erhalten mittle ich die Spannung über 16 Messungen. Um meine Genauigkeit aber noch weiter zu erhöhen, möchte ich die Messwerte auf Plausibilität prüfen, sodass die größeren Ausreißer gar nicht erst in den Mittelwert einfließen. Nun könnte ich jeden Messwert mit dem Mittelwert vergleichen und ab einer gewissen Schwelle stattdessen den Mittelwert selbst als Messwert annehmen oder auf den nächsten Messwert warten. Aber so ergibt sich eine gewisse Anfangswert-Problematik. Um die Messwerte vergleichen zu können benötige ich ja zuerst einen Mittelwert. Den kann ich aber nur aus Werten bilden, die ich nicht auf Plausibilität geprüft habe. Woher weiß ich also, dass mein Mittelwert nicht zufällig aus lauter Ausreißern gebildet wurde? Erstmal warten, bis mehrere gleiche Werte vorliegen? Auch dann könnten ja mehrere Ausreißer zufällig den gleichen Wert gehabt haben. Oder vielleicht am Anfang einen größeren Bereich tolerieren, bis ich dem Mittelwert mehr vertrauen kann? Mir fallen viele Wege ein, aber irgendwie wäre alles etwas aufwendig und unübersichtlich im Code oder zu unsicher. Gibt es hierfür einen Königsweg? Wie würdet ihr das Problem lösen? Ich hoffe in diesem Fall war es in Ordnung, dass ich das Thema etwas allgemeiner gehalten habe und nicht auf das ganze Projekt eingegangen bin.
Am Besten die Störungen gar nicht erst entstehen lassen, statt Filtern zu versuchen. Ansonsten wie bei Punktrichtern im Sport? Von 16 Werten jeweils die 2 obersten und untersten Ausreißer verwerfen. Das ganze evtl. dynamisch an die Varianz der Messwerte angepasst. Ein paar weitere Gedanken - Liegen die falschen Werte evtl. auch außerhalb des Möglichen? (Maximale Änderungsrate zu vorherigem Wert, sonstige Max-/Min-Beschränkungen) - Ist eine Plausibilisierung mit anderen Werten möglich? (200 l Füllstand im Wassertank passen z.B. nicht mit 20 Kilo Gewicht zusammen, kann grade am Anfang bei echt versauten Werten helfen) - Mitteln sich die Fehler an sich raus? (ggf. geeigneteres Mittel verwenden) Bevor du anfängst gegen den vorherigen Wert zu plausibilisieren musst du dir auf jeden Fall auch sicher sein, dass der auch passt. Die "Punkrichter-Variante" ist in der Hinsicht unproblematisch, liefert aber sicher nicht das bestmögliche Ergebnis. Stephan
Hallo, > Bernd schrieb: > Ich habe eine zu messende Spannung, auf der immer wieder Störungen sind, was sind das für Störungen? Die Art der Störungen sollte man bei der Auswahl der Filterung berücksichtigen. > die ich nicht per Hardware herausfiltern kann. Um einen guten Messwert > zu erhalten mittle ich die Spannung über 16 Messungen. Warum nicht mehr? Klar, dann bekommt man ewig keine Werte raus. Ist dir Wichtungsfunktion (digitaler Tiefpass) bekannt ? Damit macht man statt abgeschlossner Mitelwerte einen gleitenden MW. >Um meine > Genauigkeit aber noch weiter zu erhöhen, möchte ich die Messwerte auf > Plausibilität prüfen, sodass die größeren Ausreißer gar nicht erst in > den Mittelwert einfließen. Eine wirksame Filterung ist die schon angesprochene Methode, wo von einer Anzahl Messwerte immer die mit den höchsten und den niedrisgten Werten verworfen werden. Ich meine, das nennt sich Medianfilter. > Nun könnte ich jeden Messwert mit dem > Mittelwert vergleichen Ich meine, dass solches Verfahren mal ganz schnell instabil wird und nicht so einrasted, wie du das erwartest. > und ab einer gewissen Schwelle stattdessen den > Mittelwert selbst als Messwert annehmen oder auf den nächsten Messwert > warten. > Wie würdet ihr das Problem lösen? Ich vermute, dass du dazu mehr Infos über die Art der Signale, der Störungen und den Ansprüchen an die Filterung preisgeben mußt. Eine höhere Meßfrequenz und stärkere Mittelwertbildung (Tiefpass) sind aber immer stabil und funktionieren zuverlässig. Gruß Öletronika
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.