<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=iso-8859-1"><meta name=Generator content="Microsoft Word 14 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.E-MailFormatvorlage17
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=DE link=blue vlink=purple><div class=WordSection1><p class=MsoNormal>Moin,<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>ich habe 38 Stück 1-wire Sensoren an meine volkszähler Installation angeschlossen.<o:p></o:p></p><p class=MsoNormal>Jeder Sensor sendet jede Minute einen Temperaturwert<o:p></o:p></p><p class=MsoNormal>So laufen also jeden Tag 54720 Temperaturwerte in die Datenbank (über die Sinnhaftigkeit möchte ich hier nicht diskutieren).<o:p></o:p></p><p class=MsoNormal>Nun kommt es sporadisch aber auch bei einem Sensor sehr regelmäßig vor, das der ausgelesene Temperaturwert genau 85°C beträgt.<o:p></o:p></p><p class=MsoNormal>Ich kann bei allen Sensoren ausschließen, dass diese jemals tatsächlich genau 85°C messen werden (beim Außentemperatursensor bin ich mir momentan nicht so ganz sicher…. ;-) ).<o:p></o:p></p><p class=MsoNormal>Und selbst wenn doch einer in den Bereich von 85°C kommen würde, dann wäre es beim Temperaturverlauf auch kein Problem, wenn genau 85°C fehlt, aber knapp drüber und drunter die Werte da sind.<o:p></o:p></p><p class=MsoNormal>Das bedeutet, wenn man einfach alle Temperaturwerte von genau 85°C sucht und löscht kann man quasi keinen Datenverlust bekommen.<o:p></o:p></p><p class=MsoNormal>Allerdings deuten diese 85°C ja auf ein Problem mit dem Sensor hin.<o:p></o:p></p><p class=MsoNormal>Deswegen wäre es schade die Information zu verlieren welcher Sensor wann die 85°C gemeldet hat. Darauf möchte ich natürlich auch nicht verzichten.<o:p></o:p></p><p class=MsoNormal>Also folgende Idee:<o:p></o:p></p><p class=MsoNormal>Ein Programm sucht 1x am Tag (meinetwegen auch 2x, 4x) in der Datenbank bei den angegebenen Kanälen (nicht bei allen!) nach 85°C Einträgen.<o:p></o:p></p><p class=MsoNormal>Wenn es einen Wert gefunden hat, dann schreibt das Programm den Kanal, den Wert (…immer 85°C) und den timestamp in eine Datei oder in eine email.<o:p></o:p></p><p class=MsoNormal>Und dann löscht das Programm den Eintrag in der Datenbank.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Das gleiche könnte man auch mit anderen Werten machen, die durch eine Plausibilitätsprüfung aus dem möglichen Raster fallen.<o:p></o:p></p><p class=MsoNormal>z.B. weiß ich ja ungefähr welche Drehzahlen meine Lüfter annehmen können, und welche nicht.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>So hätte man also eine automatisierte Bereinigung von falschen Daten, aber auch einen Hinweis zum Debugging welche Sensoren wann und wie oft rumspinnen.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Nun die Fragen: Wie stell ich das an?<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Lass ich per cronjob auf dem Raspi ein Programm laufen? (ich vermute das ist wohl am sinnvollsten)<o:p></o:p></p><p class=MsoNormal>Lass ich auf einem externen ESP8266 ein Programm laufen?<o:p></o:p></p><p class=MsoNormal>Welche Sprache ist dafür am besten geeignet?<o:p></o:p></p><p class=MsoNormal>Wie programmier ich das?<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Gibt’s noch mehr User die sowas gerne hätten (bedeutet, lohnt sich so eine Entwicklung oder ist das nur nice to have für mich?), oder sind alle wunschlos glücklich?<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Lieben Gruß,<o:p></o:p></p><p class=MsoNormal>Chris<o:p></o:p></p></div></body></html>