Plausibilitätsprüfung von Readings

Begonnen von funt4stic, 05 August 2016, 15:29:08

Vorheriges Thema - Nächstes Thema

funt4stic

Hallo,

ich überwache den Wasserstand meines Pumpensumpfs mit einem Ultraschallsensor HC-SR04, der über MySensors an FHEM angebunden ist. Die Messung funktioniert in den meisten Fällen zuverlässig. Allerdings mischen sich regelmäßig Fehlmessungen unter die Ergebnisse.

Zitat2016-08-05_15:15:39 Pumpensumpf1 pegel: 4
2016-08-05_15:15:44 Pumpensumpf1 pegel: 3
2016-08-05_15:15:50 Pumpensumpf1 pegel: 4
2016-08-05_15:16:01 Pumpensumpf1 pegel: 3
2016-08-05_15:16:06 Pumpensumpf1 pegel: 4
2016-08-05_15:16:44 Pumpensumpf1 pegel: 3
2016-08-05_15:16:50 Pumpensumpf1 pegel: 4
2016-08-05_15:17:39 Pumpensumpf1 pegel: 3
2016-08-05_15:17:56 Pumpensumpf1 pegel: 4
2016-08-05_15:18:01 Pumpensumpf1 pegel: 3
2016-08-05_15:18:08 Pumpensumpf1 pegel: 4
2016-08-05_15:18:23 Pumpensumpf1 pegel: 93
2016-08-05_15:18:29 Pumpensumpf1 pegel: 4
2016-08-05_15:18:41 Pumpensumpf1 pegel: 3
2016-08-05_15:18:45 Pumpensumpf1 pegel: 4
2016-08-05_15:19:02 Pumpensumpf1 pegel: 13
2016-08-05_15:19:07 Pumpensumpf1 pegel: 4
2016-08-05_15:19:14 Pumpensumpf1 pegel: 93
2016-08-05_15:19:18 Pumpensumpf1 pegel: 4
2016-08-05_15:19:29 Pumpensumpf1 pegel: 93
2016-08-05_15:19:40 Pumpensumpf1 pegel: 4
2016-08-05_15:20:13 Pumpensumpf1 pegel: 3
2016-08-05_15:20:20 Pumpensumpf1 pegel: 4
2016-08-05_15:20:24 Pumpensumpf1 pegel: 3
2016-08-05_15:20:29 Pumpensumpf1 pegel: 4
2016-08-05_15:20:41 Pumpensumpf1 pegel: 14
2016-08-05_15:20:46 Pumpensumpf1 pegel: 3

Der Wert 93 bedeutet, dass der Sensor keine gültige Messung durchführen konnte. Bei den Werten 13 und 14 handelt es sich um fehlerhafte Messungen, die ich bislang nicht abstellen konnte.

Und jetzt zur eigentlichen Frage...

Gibt es die Möglichkeit, eine Art Plausibilitätsprüfung einzubauen, bevor die Werte ins Filelog geschrieben werden? Ich habe mir das so vorgestellt, dass der Wert 93 generell nicht ins Filelog geschrieben wird und die restlichen Werte nur, wenn sie nicht um mehr als bspw. 2cm vom Vorwert abweichen?

Schonmal Danke fürs Lesen!

Gruß
Jan

dev0

Ein paar Perlkenntnisse vorausgesetzt, könntest Du ein userReading erstellen, das nur Werte akzeptiert, wenn die Bedingungen xyz erfüllt sind.

ht

Sowas kann man auch mit dem Attribut event-aggregator lösen. Als function probiere mal min oder median. Ich habe beides bei mir im Einsatz. Hat allerdings immer einiges an testen gebraucht, um die richtigen Einstellungen (auch für die Zeit) zu finden.
FHEM 5.7, RasPI 2, HomeMatic über HMUSB, JeeLink Clone, Viessmann Heizung

funt4stic

Vielen Dank für die Lösungsansätze. Wenn ich wieder etwas Zeit habe, dann werde ich mich mal daran versuchen und hier berichten.

Gruß
Jan