FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: der_da am 18 Mai 2017, 09:32:58

Titel: DOIF Temperaturanstieg innerhalb eines Zeitraums erkennen
Beitrag von: der_da am 18 Mai 2017, 09:32:58
Hallo liebe Forumsteilnehmer/innen.

Ich möchte gern meine Beschattungssteuerung ein wenig erweitern. In diversen Räumen habe ich Thermometer installiert, die die Raumtemperatur messen und es gibt auch ein Außenthermometer. Bisher wird die Beschattung (Herunterfahren der Rollläden) dadurch ausgelöst, dass eine bestimmte Außentemperatur erreicht werden muss, und dann je nach Uhrzeit die Rollläden der entsprechenden Hausseite geschlossen werden.
Nun ist es aber so, dass z.B. auf der Ostseite die Temperaturen in den Räumen durch intensive Sonneneinstrahlung bereits stark ansteigen, obwohl die Außentemperatur noch nicht wirklich heiß ist. Deshalb war meine Überlegung, den steilen Anstieg der Raumtemperatur zu verwenden, um das Beschatten auszulösen.
Doch wie kann man sinnvollerweise in FHEM abbilden, dass die Temperatur innerhalb der letzten z.B. 15 Minuten um > 1K gestiegen ist?
Und da ich viel mit DOIF arbeite, wäre ein Lösungsvorschlag damit sehr schön.  :)
Titel: Antw:DOIF Temperaturanstieg innerhalb eines Zeitraums erkennen
Beitrag von: Otto123 am 18 Mai 2017, 10:42:52
Hi,

als Idee: DOIF kennt verschiedene Zeitsteuerungen, Du könntest alle 15 minuten was triggern.
Bei userReadings gibt es den modifier
Zitatdifference: das Reading wird auf die Differenz zw. dem aktuellen und dem vorherigen Wert gesetzt.
Also einfach den Sensor im userReadings alle 15 min abfragen.

Gruß Otto
Titel: Antw:DOIF Temperaturanstieg innerhalb eines Zeitraums erkennen
Beitrag von: Morgennebel am 18 Mai 2017, 12:13:09
Hi,


ich habe den Anstieg- oder die Veränderungsrate oder den Veränderungswinkel zwischen zwei Werten schon häufiger gesucht, aber nie eine elegante Lösung gefunden.

Daher eine Frage an die Profis: könnte eventuell jemand mit genügend Perl-Kenntnissen ein Modul ähnlich wie dewpoint entwickeln, dem vier Parameter übergeben werden:


Und als Rückgabewert gibt es die Steigung - z.B. als [-1, +1] oder [-90°,+90°] Werte.

Diese Funktion liese sich z.B. nutzen mit Temperaturfühlern (Heizungssteuerung, Mischersteuerung), Wetter (Regen, Wind) oder Füllständen. Steigt z.B. die Vorlauftemperatur mit >30° (Winkel, nicht C°) per Meßintervall an, liesse sich vorher gegensteuern . Oder wird der Wind schnell stärker, reagiere umgehend und fahre die Markisen ein... usw.

Ciao, -MN
Titel: Antw:DOIF Temperaturanstieg innerhalb eines Zeitraums erkennen
Beitrag von: Per am 18 Mai 2017, 16:22:02
Ein Modul ist dafür "oversized", eine einfache Funktion in 99_myUtils tuts da auch.
Wichtig hier ist nur, dass du dir, falls du keine konstante Zeit nutzt, den Zeitpunkt der letzten Messung nicht zu zeitig überschreibst.

Bei DOIF kannst du z.B. auch das state-Attr dafür nutzen. Dann zeigt dir der state immer den aktuellen Anstieg an.