Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Mittelwert über Zeit (https://www.delphipraxis.net/100592-mittelwert-ueber-zeit.html)

Codewalker 1. Okt 2007 07:53


Mittelwert über Zeit
 
Hallo zusammen.

Ich habe da eine Frage an die Mathematiker (Titel ist vielleicht nicht ganz glücklich gewählt).
Ich möchte in regelmäßigen Abständen Messungen von Werten vornehmen und in einer kleinen Statistik u.a. einen Mittelwert der Messergebnisse (handelt sich um Temperaturwerte) anzeigen.

Da das ganze Programm sehr lange unbeaufsichtigt laufen soll, möchte ich möglichst wenig Speicher verbraten und daher nicht alle Werte als Array in den Speicher ziehen und da den Mittelwert errchnen. Meine Frage: Kann man nicht einfach aus dem zuletzt errechneten Mittelwert und dem neu hinzuzufügenden Wert den neuen Mittelwert errechnen, ohne alle Werte kennen zu müssen?

Danke und Grüße

Thomas

kolbaschedder 1. Okt 2007 08:09

Re: Mittelwert über Zeit
 
Hallo,

Dazu gibt es verschiedene Varianten. Was du brauchst ist ein digitaler Filter. Willst du wirklich den Mittelwert ab Start, geht sowas wie

Delphi-Quellcode:
midTempSum := midTempSum +aktTemp;
inc(anzahlMessungen);
midTemp := midTempSum / anzahlMessungen;
oder als reiner Tiefpassfilter



Delphi-Quellcode:
midTemp := midTemp*coffFilter + (1-coffFilter)*aktTemp;
wobei gilt :
Delphi-Quellcode:
0 < coffFilter < 1
umso größer coffFilter, umso langsamer ändert sich die mittlere Temperatur;

ansonsten mal http://de.wikipedia.org/wiki/Digital...alverarbeitung durchstöbern

MfG

Kolbaschedder

Codewalker 1. Okt 2007 08:23

Re: Mittelwert über Zeit
 
Das erste trifft es schon ziemlich, was ich suche. Vielen dank


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:59 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz