HowTo: Schimmelvermeidung - Richtig Lüften und Entfeuchten

Begonnen von peterk_de, 30 November 2014, 01:19:38

Vorheriges Thema - Nächstes Thema

peterk_de

Hallo zusammen,

@herrmann, danke für das Lob, freut mich dass ich mich für deine unermüdliche Arbeit etwas revanchieren konnte :-)

@hauswart nein. das ist nur als Beispiel gedacht. Ich nutze das in der 99_myUtils, um mir alle für's Lüften interessanten Werte zu berechnen. Spannend sind dabei insb. vielleicht folgende Zeilen:



      my $wandTemp = wallSurfaceTemp($innenTemp,$aussenTemp,0.68);      # Wandtemperatur innen. K-faktor anpassen!
      my $wandHumidity = shiftRelHumidity($innenTemp, $innenHum, $wandTemp);  # Rel. Luftfeuchtigkeit in Wandnähe
      my $aussenHumidityEqInnen = shiftRelHumidity($aussenTemp, $aussenHum, $innenTemp);  # Welche Luftfeuchtigkeit Innen nach vollst. Durchlüften wäre
      my $schimmelfreiMaxHum = schimmelfreiMaxHum($wandTemp); # Max. Rel. Luftfeuchte in Wandnähe, ab der es Schimmelt
     
      my $schimmelGefahr = ($wandHumidity > $schimmelfreiMaxHum); #Wahrheitswert: True bei Schimmelgefahr, false wenn nicht.
      my $luftZuTrocken = (!$schimmelGefahr && ($innenHum < 40));  #Wahrheitswert: True bei zu geringer Luftfeuchte
      my $lueftenSenktLuftfeuchte = ($innenHum > $aussenHumidityEqInnen); #Wahrheitswert: True wenn Lüften zu trockenerer Luft führt
     
      my $entfeuchterAn = ($schimmelGefahr && ($innenHum > 51)) && !$etwasOffen; #Wahrheitswert für Entfeuchtersteuerung: Anschalten (=true) wenn Schimmelgefahr und Entfeuchter wirtschaftl. arbeitet (min. 50% rH)
      my $entfeuchterAus = (($wandHumidity < ($schimmelfreiMaxHum - 3)) || ($innenHum < 50)) || $etwasOffen; #Wahrheitswert für Entfeuchtersteuerung: Ausschalten (=true) mit Hysterese von 3% rH
     
      my $luftfeuchteOeffnenEmpfohlen    = ($schimmelGefahr &&  $lueftenSenktLuftfeuchte) || ($luftZuTrocken && !$lueftenSenktLuftfeuchte); # Wahrheitswert: Sollte bez. Luftfeuchte gelüftet werden?
      my $luftfeuchteSchliessenEmpfohlen = ($schimmelGefahr && !$lueftenSenktLuftfeuchte) || ($luftZuTrocken && $lueftenSenktLuftfeuchte);  # Wahrheitswert: Darf bez. Luftfeuchte NICHT gelüftet werden?


Wenn man die 5 Variablen

- $innenTemp
- $aussenTemp
- $innenHum
- $aussenHum und
- $etwasOffen (true oder false, je nachdem, ob ein fenster offen ist)

per ReadingsVal(...) befüllt, wie ich das weiter oben tue, bekommt man mit diesen Codezeilen so ziemlich alles, was man für's Lüften braucht an Variablen. Habs oben mal kommentiert, was die vielen aus erstaunlicherweise nur 5 Werten berechneten Variablen bedeuten. Man braucht dazu natürlich die im Eingangsposting aufgeschriebenen Funktionen.
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

peterk_de

Anlässlich des neuen Interesses habe ich oben mal aufgeräumt, nen Wiki-Account beantragt, womit ich den Artikel auch mal auf stand bringen werde, und auch noch eine neue Funktion gebastelt, die vielleicht auch nützlich ist:

schimmelfreiMinTemp - unter welcher Temperatur es im Raum schimmelt, gegeben Raumtemperatur und Luftfeuchte - also sozusagen nicht der Dewpoint, sondern der "Schimmelpoint" ;-) Das hab ich fix numerisch gelöst, weil ich zu faul war, die Formel umzustellen, aber wir haben ja 2017 und 1GHz-Raspberrys und so ;)
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

Spezialtrick

Hallo Peter,

wollte gerade die neue Funktion testen, bekomme jedoch einen Fehler beim speichern der myUtils:

Bareword "false" not allowed while "strict subs" in use at ./FHEM/99_myUtils.pm line 73.

Viele Grüße!
FHEM - Debmatic - Zigbee2MQTT - Homekit

peterk_de

Argh, wie ich perl liebe. Hab ich oben korrigiert, probier mal nochmal, sorry.
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

Spezialtrick

Nun gehts!  :)

Steht das neue Userreadings "schlimmelfreiMinTemp" in Abhängigkeit zu den anderen Userreadings oder reicht es wenn man "schlimmelfreiMinTemp" ergänzt und die anderen Userreadings auf dem alten Stand belässt?
FHEM - Debmatic - Zigbee2MQTT - Homekit

peterk_de

Nein, für das brauchst du eigentlich nur die ganzen Funktionen in den myUtils sowie die rohe Raumluftfeuchte und Raumtemperatur. Kann man also auch "Stand alone" verwenden.
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

Spezialtrick

Nun erhalte ich noch einen weiteren Fehler für der Userreadings "schlimmelfreiMinTemp":

Error evaluating BZ.Klimasensor userReading schlimmelfreiMinTemp: syntax error at (eval 23333) line 1, at EOF

So siehts bei mir aus:

schlimmelfreiMinTemp { sprintf("%.1f",schlimmelfreiMinTemp(ReadingsVal("BZ.Klimasensor","temperature",15),ReadingsVal("BZ.Klimasensor","humidity",100),100) },
FHEM - Debmatic - Zigbee2MQTT - Homekit

peterk_de

Da fehlte ne Klammer am Ende:


schimmelfreiMinTemp { sprintf("%.1f",schlimmelfreiMinTemp(ReadingsVal("BZ.Klimasensor","temperature",15),ReadingsVal("BZ.Klimasensor","humidity",100),100)) },


Ich hoffe jetzt haben wir alle Schusselfehler von mir gefunden :-D
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

Spezialtrick

Zitat von: peterk_de am 12 März 2017, 14:04:43
Ich hoffe jetzt haben wir alle Schusselfehler von mir gefunden :-D

Nun siehts sehr gut aus und das Reading meldet eine Temperatur.

Meinst du, dass es Sinn machen würde, den Vergleich von "schlimmelfreiMinTemp" und "wandTemp" in das All in One Reading "schimmelGefahr" einzubauen oder wäre es besser hierfür ein zusätzliches Reading vorzusehen? Letzteres hätte wohl den Vorteil, dass man unterscheiden könnte, ob zu Heizen oder zu Lüften ist.  ???
FHEM - Debmatic - Zigbee2MQTT - Homekit

peterk_de

Also das bisherige Reading "schimmelGefahr" ist vom Ergebnis her (ja/nein) mit dem Vergleich von "schimmelfreiMinTemp größer wandTemp" identisch (bis auf Rundungsfehler ;-). Nur der Rechenweg ist anders (es werden die rel. Feuchten verglichen und keine Temperaturen). Kannst du leicht prüfen und stimmt hoffentlich immer ^^.

Die Unterscheidung, ob Heizen oder Lüften kannst du damit allein nicht treffen. Dazu brauchst du noch das Reading "lueftenMoeglich". Z.B.: Wenn schimmelGefahr und LueftenMoeglich, dann Lueften, sonst Heizen (oder entfeuchten). Weil Heizen hilft bei Schimmelgefahr im Prinzip immer, Lüften aber nur, wenn die Luft draußen absolut trockener ist als drinnen.
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

Hauswart

Zitat von: peterk_de am 12 März 2017, 09:22:48
Anlässlich des neuen Interesses habe ich oben mal aufgeräumt, nen Wiki-Account beantragt, womit ich den Artikel auch mal auf stand bringen werde, und auch noch eine neue Funktion gebastelt, die vielleicht auch nützlich ist:
Daumen hoch. Freue mich schon auf die fertige Lösung.
1. Installation:
KNX, Tasmota (KNX), Sonos, Unifi

2. Installation:
HM-CFG-USB, Unifi (, SIGNALduino 868, MySensors, SIGNALduino 433)

peterk_de

So, ist jetzt oben alles fertig. Habe den Artikel ein wenig umstrukturiert - jetzt leistet er auch in "nicht kritischen" Räumen Hilfe :)

@herrmannj, du hast mich indirekt auf eine Idee gebracht ... die TechemHKV sind doch eigentlich DER perfekte Sensor für Oberflächentemperaturen.. Und der Preis .... ich hab grad 18 gebrauchte für 30 Euro (!) bei ebay bekommen ... ;D ;D ;D

Wenn sie da sind, werde ich mal berichten, wie sie sich als Wandtemperaturmesser schlagen ...
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...

herrmannj


cmonty14

Hallo!

Ich habe mir vom "Lüftungsbüro Berlin" ein Lüftungs-Konzept für meine Eigentumswohnung erstellen lassen.
Dieses Konzept sieht für das Badezimmer (~ 6m^2) nur ein feuchtegesteuerte Abluft vor.

Frage:
Wenn ich die Möglichkeiten der hier vorgestellten Lösung "Richtig Lüften und Entfeuchten" ausschöpfe, welches Gerät zum Be-/Entlüften sollte ich dann im Badezimmer verbauen?

THX

peterk_de

Hi c.monty,

das sind ein bisschen wenig Angaben, um das sagen zu können. Wie sieht denn grob das Lüftungskonzept aus? Hast du Kältebrücken im Bad? (Wärmebildkamera oder Infrarotthermometer leihen)?

Pauschal gilt: Ohne Kältebrücken (also insbes. z.B. bei innenliegenden Bädern) ist gegen eine alleinige Regelung per Raumluftfeuchtigkeit prinzipiell nichts einzuwenden. Zielwert < 70% (oder besser, anhand der Raumtemperatur ermittelt wie oben beschrieben) und fertig.
FHEM auf Ubuntu-VM / 2xNUC Proxmox Cluster
UI: HomeKit, TabletUI, Grafana
IOdevs: 2xHueBridge, RaspiMatic-CCU, CUL868, 2xHarmonyHub, 6xRaspi-Roomnode mit CO2, VOC und lepresenced
Devices: 107xHomematic(IP), 96xPhilips Hue, 17xTECHEM, 12xBTLE, 8xSONOS, 2xHomeConnect, 1xShelly 3em, 1xNanoleaf ...