Hi Johann,
Wie kann man so was machen, ich hab ja nicht endlos vile Variablen zru Verfügung?
kein Problem du brauchst auch nur zwei
Messwert += Neuwert
Messwert /= 2
HTH und Viele Grüße
Jörg
Hi!
HAb folgendes Problem ich ahbe einen sehr stark schwankenden Flüssigkeitsstand, dass Messsignal ist daher auch sehr stark schwankend.
Jetzt möchte ich eine gleitende Mittelwert Bilung mit einem Mega 8 durchführen, weil ich damit die Schwankungen weggemittelt bekomme. Wie kann man so was machen, ich hab ja nicht endlos vile Variablen zru Verfügung?
Gruß Johann!
Hi Johann,
Wie kann man so was machen, ich hab ja nicht endlos vile Variablen zru Verfügung?
kein Problem du brauchst auch nur zwei
Messwert += Neuwert
Messwert /= 2
HTH und Viele Grüße
Jörg
Du kannst natürlich auch über mehrere Stufen mitteln, z.B.:
y(n) = (x(n)+x(n-1)+x(n-2)+x(n-3)) / 4;
Oder
INIT:
Anzahl_messungen = 0
Durchschnitt = 0
Loop
temp = Durchschnitt * Anzahl_messungen + Neue_messung
Anzahl_messungen = Anzahl_messungen + 1 // neuer anzahl
Durchschnitt = temp / Anzahl_messungen // neuer durchs.
...
--> loop
Mit der ganz einfachen Methode klappt nicht gut, das ist noch zuviel Schwankung drin,hatte ich so auch mal in einer Simulation ausprobiert, dass muss glaub ich schon über mehrere Stufen gehen.
Aber das wird dann ja auch schnell eine relativ Resourcen raubende Angelegenheit, mal schauen wie das so klappt. Aber schon mal danke für die Tipps.
Gruß Johann!
Hi Johann,
bedenke bitte, je mehr Stufen mit im Spiel sind, desto träger reagiert der Messwert auf echte Änderungen. Auch dauert es länger, bis der gemittelte Messwert sich dem echten Messwert angenähert hat.
Viele Grüße
Jörg
Ja das läst sich wohl nicht vermeiden, aber da der Flüssigkeitsstand immer hin und her schwappt muss ich da wohl mit Leben, ist aber auch nicht so wichtig, da er sich eher langsam verändert.
Ist dann ja im Grunde eine Sprungfunktion und da kann ich mit einer Totzeit von einer Minute ganz gut Leben.
Gruß Johann
Wie mir scheint, solltest du eher immer den Minimal- und Maximalwert, und zwar strikt paarweise, verwenden. die beiden kannst Du dann mitteln.
Denk dran: wenn du in Zeitintervallen mißt und dann den Durchschnitt rechnest, ist der Tank schon lange leer, bis auch der Durchschnitt runtergeht.
Also ja nicht aufsummieren, sondern immer wieder neu beginnen.
mfg robert
Hallo,
ich weiss nicht, welchen Sensor du verwendest (analog/digital), aber falls es ein analoger ist, könntest du ihn vor dem Digitalisieren einfach Tiefpassfiltern, dann musst du gar nix rechnen
Grüsse, Martin
Das wären die Werte, die die größten Fehler haben, deshalb sollten sie eher bei der Auswertung mit gerinerem Gewicht eingehen oder weggelassen werden. Von einem gleichen Abstand zum gesuchten Wert kann man kaum ausgehen.Wie mir scheint, solltest du eher immer den Minimal- und Maximalwert, und zwar strikt paarweise, verwenden. die beiden kannst Du dann mitteln.
Die Operation gleitene Mittelung ist ja auch nicht komplizierter als die Suche der Extremwerte, die ja immerhin auch gleitend sein müßte.
Grey
Lesezeichen