Autor Thema: Abfrage, ob wert x in zeit y um z% angestiegen ist?  (Gelesen 305 mal)

Offline Klaus0815

  • Full Member
  • ***
  • Beiträge: 441
Abfrage, ob wert x in zeit y um z% angestiegen ist?
« am: 11 November 2018, 00:09:24 »
Ich will endlich meine Badlüftung modernisieren.
Ein normaler Feuchtigkeitssensor kann nicht funktionieren, da es ja auch so im Sommer mal 90% Luftfeuchte hat.
Ständig am Schräubchen drehen habe ich zugegeben auch keine Lust

Feuchtigkeitssensor ist vorhanden, in FHEM integriert, jetzt müsste ich eigentlich ein z.B. notify machen
"Wenn der Wert die letzten 10min um 10% angestiegen ist, dann triggere den Lüfter für 15min"

Gibt es da was fertiges bzw hat so was schon jemand realisiert?

Viele Grüße

Klaus

Offline MAC66666

  • Full Member
  • ***
  • Beiträge: 348
Antw:Abfrage, ob wert x in zeit y um z% angestiegen ist?
« Antwort #1 am: 11 November 2018, 01:43:10 »
Bin ich auch gerade am Fummeln... Wobei meiner tatsächlich fest eingestellt ist.

Es gibt ein Modul namens Dewpoint, leider funktioniert das bei mir noch nicht richtig (Ab und zu mal fehlt das Reading bei mir). Aber der besagte Taupunkt wäre sicher die optimale Grundlage für eine Lüftersteuerung, dann passt es immer, egal wie die Luftfeuchte außen ist, besser als Deine Idee (Die aber auch gut ist)...

Wie es bisher bei mir eigentlich recht zufriedenstellend läuft:

Fest eingestellter Wert (55%), der >Trick ist, den würde ich auch MIT Dewpoint anwenden: Intervall-Lüften, nicht dauerhaft, wenn der Feuchte- bzw. Taupunkt zu hoch ist. Das ist viel effizienter.

Bei mir zum Beispiel wird alle 10 Minuten geprüft, ob ich über 55% liege. Wenn ja, lüfte für 6.30 Minuten.

Damit bekomme ich das Bad "trocken" in ca. 2 Stunden, vileicht wird ab und zu mal noch ein paar Stunden später einmal für 6.30 gelüftet. Vorher, bei dauerhaftem Einschalten des Lüfters, hat das einen halben Tag gedauert, bis die Fenster Tropfenfrei waren. Intervall ist super, habe ich per Zufall festgestellt.
Zusätzlich wird alle 10 Stunden noch mal für ca. 15 Minuten eingeschaltet, wenn die Feuchtigkeit über 53% liegt. Schadet nie, mal im Bad zu lüften ;-)
Klappt komischerweise auch im Sommer mit den Werten ganz gut.

Also wie gesagt, diese Intervalle würde ich noch auf Taupunkt umstellen, sobald das bei mir funktioniert. oder ich muss die Berechnung selbst machen.

Siehe Bild. Ja, heute habe ich mich auch gewaschen, aber im anderen Bad. Bevor hier einer sonst was denkt  ;D In der langen einschaltphase gestern hatte ich was getestet, rest war die Automatik...
« Letzte Änderung: 11 November 2018, 01:45:03 von MAC66666 »
FHEM @ Ubuntu in Windows 2012R2 Hyper-V Core @ AMD FX 6300, Tiered Storage Spaces (Replica @ AMD A4-5000 SSHD),
MAXCube als CUL_MAX (Thermostate)
MAXCube als SlowRF (FS20, wird durch ESPs ersetzt
Einige ESPs mit ESPEasy, zwei GHoma und ein Sonoff Tasmota

Offline connormcl

  • Full Member
  • ***
  • Beiträge: 271
Antw:Abfrage, ob wert x in zeit y um z% angestiegen ist?
« Antwort #2 am: 11 November 2018, 01:52:21 »
Die Unterschiede beim Lüftungseffekt habe ich noch nicht ganz verstanden...

Gibt es da eine physikalische Begründung dafür?

Also, dass wenn man 2 Stunden alle 10 Minuten für 6.5 Minuten lüftet, das Bad trocken wird, aber wenn man Dauerlüftet, das Bad erst nach 12 Stunden trocken wird?

Offline Damian

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5742
Antw:Abfrage, ob wert x in zeit y um z% angestiegen ist?
« Antwort #3 am: 11 November 2018, 09:18:48 »
Die Unterschiede beim Lüftungseffekt habe ich noch nicht ganz verstanden...

Gibt es da eine physikalische Begründung dafür?

Also, dass wenn man 2 Stunden alle 10 Minuten für 6.5 Minuten lüftet, das Bad trocken wird, aber wenn man Dauerlüftet, das Bad erst nach 12 Stunden trocken wird?

Denkbar wäre es schon.

Szenario:  Draußen ist es kalt und nass, im Bad ist warm und sehr feucht. Durch kurz geöffnetes Fenster kommt kalte nasse Luft hinein, gleichzeitig entweicht warme feuchte Luft nach draußen. Nach dem Schließen des Fensters erwärmt sich die kalte Luft (relative Feuchte sinkt) die Feuchtigkeit im Bad nimmt ab.

Beim dauerhaft offenen Fenster kann sich die kalte Luft nicht ausreichend erwärmen, die relative Feuchte bleibt oder fällt nur geringfügig.

So viel zu Theorie. Abgesehen davon kann dauerhaftes Lüften von Wohnräumen im Winter energetisch gesehen nicht sinnvoll sein.

 
Programmierte FHEM-Module: DOIF mit uiTable, DOIF-Perl, THRESHOLD, FHEM-Befehl: IF

Offline Damian

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5742
Antw:Abfrage, ob wert x in zeit y um z% angestiegen ist?
« Antwort #4 am: 11 November 2018, 09:48:27 »
Diese Definition liefert im Status des Devices den Anstieg/Abfall (negativ) in Prozent zwischen zwei aufeinander folgenden Werten.

defmod increase DOIF {set_State(([TH_Bad_HM:humidity]-OldReadingsVal("TH_Bad_HM","humidity",0))/[TH_Bad_HM:humidity]*100)}

Dazu muss beim Sensor hier:TH_Bad_HM das Reading oldreadings gesetzt sein:

attr TH_Bad_HM oldreadings humidity
Das lässt sich mit paar Zeilen zum Schließen/Öffnen eines Fensters erweitern.
« Letzte Änderung: 11 November 2018, 09:57:57 von Damian »
Programmierte FHEM-Module: DOIF mit uiTable, DOIF-Perl, THRESHOLD, FHEM-Befehl: IF

Offline Klaus0815

  • Full Member
  • ***
  • Beiträge: 441
Antw:Abfrage, ob wert x in zeit y um z% angestiegen ist?
« Antwort #5 am: 11 November 2018, 10:59:52 »
Vielen Dank für Eure Vorschläge
An Dewpoint habe ich auch schon gedacht, mir geht es aber nicht um dauerhaft kontrolliertes Lüften eines Kellers, sondern ich will die Feuchtigkeit nach dem Baden / Duschen rausbekommen.

Anbei ein Screenshot wo man den Anstieg sehr gut sieht, es wurde dann manuell der Ventilator zugeschaltet.

Zitat
Diese Definition liefert im Status des Devices den Anstieg/Abfall (negativ) in Prozent zwischen zwei aufeinander folgenden Werten.

Danke Damian,
genau nach so was habe ich gesucht, werde mal damit rumspielen und berichten

Viele Grüße

Klaus

Offline Damian

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5742
Antw:Abfrage, ob wert x in zeit y um z% angestiegen ist?
« Antwort #6 am: 11 November 2018, 11:23:38 »
Und so sieht eine komplette Definition mit Schalten des Fensters aus:

defmod di_test1 DOIF {if ([$SELF:increase] > 10) {fhem_set("window on-for-timer 360")}}
attr di_test1 DOIF_Readings increase:([TH_Bad_HM:humidity]-OldReadingsVal("TH_Bad_HM","humidity",0))/[TH_Bad_HM:humidity]*100

Hier wird ein Reading increase mit dem Anstieg definiert. Bei über 10 % wird das Device "window" mit on-for-timer 6 Minuten auf on gestellt.

Falls das Fenster-Device on-for-timer nicht unterstützt. Kann man im DOIF mit Timern arbeiten:

defmod di_test1 DOIF {if ([$SELF:increase] > 10) {fhem_set("window open");set_Exec("Timer",360,'fhem_set("window close")')}}
attr di_test1 DOIF_Readings increase:([TH_Bad_HM:humidity]-OldReadingsVal("TH_Bad_HM","humidity",0))/[TH_Bad_HM:humidity]*100

hier wird "set window open" ausgeführt und 360 Sekunden später "set window close".

Programmierte FHEM-Module: DOIF mit uiTable, DOIF-Perl, THRESHOLD, FHEM-Befehl: IF

Offline MAC66666

  • Full Member
  • ***
  • Beiträge: 348
Antw:Abfrage, ob wert x in zeit y um z% angestiegen ist?
« Antwort #7 am: 11 November 2018, 11:47:42 »
Die Unterschiede beim Lüftungseffekt habe ich noch nicht ganz verstanden...

Gibt es da eine physikalische Begründung dafür?

Also, dass wenn man 2 Stunden alle 10 Minuten für 6.5 Minuten lüftet, das Bad trocken wird, aber wenn man Dauerlüftet, das Bad erst nach 12 Stunden trocken wird?

Denkbar wäre es schon.

Szenario:  Draußen ist es kalt und nass, im Bad ist warm und sehr feucht. Durch kurz geöffnetes Fenster kommt kalte nasse Luft hinein, gleichzeitig entweicht warme feuchte Luft nach draußen. Nach dem Schließen des Fensters erwärmt sich die kalte Luft (relative Feuchte sinkt) die Feuchtigkeit im Bad nimmt ab.

Beim dauerhaft offenen Fenster kann sich die kalte Luft nicht ausreichend erwärmen, die relative Feuchte bleibt oder fällt nur geringfügig.

So viel zu Theorie. Abgesehen davon kann dauerhaftes Lüften von Wohnräumen im Winter energetisch gesehen nicht sinnvoll sein.

 

Hmm, warum das so ist, wiess ich auch nicht. Es wirkt sich aber tatsächlich so aus, zumindest in meinem Bad. Hat vieleicht auch was mit den Druckverhältnissen zu tun. Man merkt schon, dass der Ventilator wesentlich "freier" dreht, wenn die Tür oder das Fenster geöffnet wird. Vieleicht hilft der häufige Wechsel zwischen Normaldruck und Unterdruck, dass sich die Luftfeuchtigkeit (und/oder Temperatur) besser oder schneller verteilt und daher besser abgeführt werden kann als bei ständigem Unterdruck (Ja ich weiss, Unterdruck gibt es nicht, das heisst negativer Überdruck).

Egal, Klaus löst es ja anders  ;)
FHEM @ Ubuntu in Windows 2012R2 Hyper-V Core @ AMD FX 6300, Tiered Storage Spaces (Replica @ AMD A4-5000 SSHD),
MAXCube als CUL_MAX (Thermostate)
MAXCube als SlowRF (FS20, wird durch ESPs ersetzt
Einige ESPs mit ESPEasy, zwei GHoma und ein Sonoff Tasmota

Offline Klaus0815

  • Full Member
  • ***
  • Beiträge: 441
Antw:Abfrage, ob wert x in zeit y um z% angestiegen ist?
« Antwort #8 am: 11 November 2018, 11:51:04 »
Hallo Damian,

habe erst mal versucht, Dein erstes Beispiel zu verstehen und umzusetzen.

Müsste da nicht ein Reading "Oldreadings" auftauchen?

Anbei ein Screenshot, ganz unten sieht man zwar das increase, aber oben nichts?

Du hast oldreadings ein mal groß, ein mal klein geschrieben, habe auch mal versucht beides groß / beides klein, leider ohne Erfolg

Viele Grüße

Klaus


Offline Damian

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5742
Antw:Abfrage, ob wert x in zeit y um z% angestiegen ist?
« Antwort #9 am: 11 November 2018, 12:04:55 »
Hallo Damian,

habe erst mal versucht, Dein erstes Beispiel zu verstehen und umzusetzen.

Müsste da nicht ein Reading "Oldreadings" auftauchen?

Anbei ein Screenshot, ganz unten sieht man zwar das increase, aber oben nichts?

Du hast oldreadings ein mal groß, ein mal klein geschrieben, habe auch mal versucht beides groß / beides klein, leider ohne Erfolg

Viele Grüße

Klaus

Es ist schon alles Richtig. oldreadings als Attribut ist beim Sensor wichtig, damit die Perlfunktion OldReadingsVal überhaupt einen Wert liefert. oldreading wird nirgendwo zu sehen sein - das sind interne FHEM-Mechanismen.

« Letzte Änderung: 11 November 2018, 12:11:45 von Damian »
Programmierte FHEM-Module: DOIF mit uiTable, DOIF-Perl, THRESHOLD, FHEM-Befehl: IF

Offline Klaus0815

  • Full Member
  • ***
  • Beiträge: 441
Antw:Abfrage, ob wert x in zeit y um z% angestiegen ist?
« Antwort #10 am: Gestern um 10:36:48 »
Irgendwas scheint noch nicht zu stimmen.

Anbei 2 Screenshots - das DOIF müsste meines Erachtens richtig definiert sein?
Habe jetzt aber im DOIF einen Anstieg von 21%

Die schwarzen Punkte bei 100 sind jeweils dort, wo das DOIF ausgelöst hat

(Das der Lüfter so oft auslöst, da lasse ich mir noch was einfallen - so das er gesperrt ist solange er getriggert ist)

Viele Grüße
Klaus


Offline Damian

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5742
Antw:Abfrage, ob wert x in zeit y um z% angestiegen ist?
« Antwort #11 am: Gestern um 10:52:21 »
Naja, 3 % ist schon sehr wenig. Das ist bei 60 % Luftfeuchte eine Änderung von 2 %, das dürfte unter der Toleranzgrenze des Hygrostates liegen.
Programmierte FHEM-Module: DOIF mit uiTable, DOIF-Perl, THRESHOLD, FHEM-Befehl: IF

Offline MAC66666

  • Full Member
  • ***
  • Beiträge: 348
Antw:Abfrage, ob wert x in zeit y um z% angestiegen ist?
« Antwort #12 am: Gestern um 10:56:54 »
das dürfte unter der Toleranzgrenze des Hygrostates liegen.

War dieser Hygrostates nicht ein alter griechicher Philosoph?  ;D

 :-X
FHEM @ Ubuntu in Windows 2012R2 Hyper-V Core @ AMD FX 6300, Tiered Storage Spaces (Replica @ AMD A4-5000 SSHD),
MAXCube als CUL_MAX (Thermostate)
MAXCube als SlowRF (FS20, wird durch ESPs ersetzt
Einige ESPs mit ESPEasy, zwei GHoma und ein Sonoff Tasmota

Offline Klaus0815

  • Full Member
  • ***
  • Beiträge: 441
Antw:Abfrage, ob wert x in zeit y um z% angestiegen ist?
« Antwort #13 am: Gestern um 10:57:34 »
Hallo Damian,

leider liegt es nicht daran, schau mal die blaue Linie im Screenshot, der ist schon sehr genau

Mich wundert auch das im Reading von DOIF  "increase: 21,538..."steht?  Das wären dann 21%

Viele Grüße

Klaus

Offline Damian

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5742
Antw:Abfrage, ob wert x in zeit y um z% angestiegen ist?
« Antwort #14 am: Gestern um 11:07:09 »
Hallo Damian,

leider liegt es nicht daran, schau mal die blaue Linie im Screenshot, der ist schon sehr genau

Mich wundert auch das im Reading von DOIF  "increase: 21,538..."steht?  Das wären dann 21%

Viele Grüße

Klaus

Ich habe gestern bei mir eine ähnliche Lösung für eine "Fenster-Öffnen-Meldung" definiert. Probleme mit ständiger Ansage (> 10) habe ich nicht.

Du kannst auch die beiden Feuchte-Werte protokollieren und selbst nachrechnen.
Programmierte FHEM-Module: DOIF mit uiTable, DOIF-Perl, THRESHOLD, FHEM-Befehl: IF

 

decade-submarginal