Das Problem ist ein etwas zu feuchter Keller und um das ein wenig in den Griff zu bekommen hab ich mir ein Entfeuchter gekauft, so ne einfache Maschine die eben die Feuchtigkeit aus der Luft nimmt. Die hab ich an eine Steuerbare Steckdose gehängt. Zudem ein automatischer Fensteröffner eingebaut der das Kellerfenster öffnet oder eben schließt. Diverse Sensoren im Keller und Draussen wegen Temperatur und Feuchte.
Mein Hauptziel war den Stromverbrauch zu minimieren deswegen soll die Maschine nur mit genügend PV laufen.
Zudem soll der Lüfter nur an sein wenn das Fenster zu ist und das Fenster nur auf wenn der Taupunkt eine gewisse Differenz von innen zu aussen aufweist. So das ich mir nicht noch mehr Feuchte reinlüfte. Und natürlich soll im Winter der Keller nicht auskühlen und im Sommer nicht zu warm werden. Das sind so die Variablen mit denen ich arbeite.
Das Template um die Feuchte oder in meinem Fall den Taupunkt zu berechnen ist in dem Forum schon irgendwo vorhanden.
Hier nun die Templates die ich nutze:
Code: Alles auswählen
#Überwachung der Fenstersteuerung
- sensor:
- name: Fenstermodus
icon: mdi:window-closed
unique_id: fenstermodus1
state: >
{% if states('sensor.outdoor_temperature') | float > 12 and
states('sensor.outdoor_temperature') | float < 22 and
states('sensor.taupunkt_differenz') | float > 4 %}
Fenster auf
{% elif states('sensor.outdoor_temperature') | float > 22 or
states('sensor.outdoor_temperature') | float < 12 or
states('sensor.taupunkt_differenz') | float < 3 %}
Fenster zu
{% else %}
Hysterese
{% endif %}
Code: Alles auswählen
Überwachung vom Entfeuchter
- sensor:
- name: Lueftermodus
icon: mdi:fan
unique_id: lueftermodus1
state: >
{% if states('sensor.pv_leistung_gesamt') | float > 500 and
states('sensor.humidity_keller') | float > 66 and
states('cover.rl_kellerfenster') == "closed" %}
Lüfter an
{% elif states('sensor.pv_leistung_gesamt') | float < 300 or
states('sensor.humidity_keller') | float < 64 or
states('cover.rl_kellerfenster') == "open"%}
Lüfter aus
{% elif states('sensor.pv_leistung_gesamt') | float < 300 and
states('sensor.humidity_keller') | float > 66 and
states('cover.rl_kellerfenster') == "closed" and
states('sensor.electricity_price_zuhause')| float < 0.15 %}
Lüfter an
{% elif states('sensor.humidity_keller') | float < 64 or
states('cover.rl_kellerfenster') == "open" or
states('sensor.electricity_price_zuhause')| float > 0.15 %}
Lüfter aus
{% else %}
Hysterese
{% endif %}
Code: Alles auswählen
alias: Kellerlüftung
description: ''
trigger:
- platform: state
entity_id: input_boolean.fenster
id: fenster auf
for:
hours: 0
minutes: 0
seconds: 0
from: 'off'
to: 'on'
- platform: state
entity_id: input_boolean.luefter
id: luefter an
for:
hours: 0
minutes: 0
seconds: 0
from: 'off'
to: 'on'
- platform: state
entity_id: input_boolean.fenster
id: fenster zu
for:
hours: 0
minutes: 0
seconds: 0
from: 'on'
to: 'off'
- platform: state
entity_id: input_boolean.luefter
id: luefter aus
for:
hours: 0
minutes: 0
seconds: 0
from: 'on'
to: 'off'
condition: []
action:
- choose:
- conditions:
- condition: trigger
id: fenster auf
sequence:
- service: switch.turn_off
data: {}
target:
entity_id: switch.sd_luftentfeuchter
- delay:
hours: 0
minutes: 0
seconds: 30
milliseconds: 0
- service: cover.set_cover_position
data:
position: 80
target:
entity_id:
- cover.rl_kellerfenster
- conditions:
- condition: trigger
id: fenster zu
sequence:
- service: cover.close_cover
data: {}
target:
entity_id: cover.rl_kellerfenster
- conditions:
- condition: trigger
id: luefter an
sequence:
- service: switch.turn_on
data: {}
target:
entity_id: switch.sd_luftentfeuchter
- conditions:
- condition: trigger
id: luefter aus
sequence:
- service: switch.turn_off
data: {}
target:
entity_id: switch.sd_luftentfeuchter
default: []
mode: restart
Die input_boolean.luefter in der Automation sind mit der Automation verbunden:
Code: Alles auswählen
alias: Schalter Fenster
description: ''
trigger:
- platform: state
entity_id: sensor.fenstermodus
from: Fenster zu
to: Fenster auf
id: Fenster auf
- platform: state
entity_id: sensor.fenstermodus
from: Fenster auf
to: Fenster zu
id: fenster zu
condition: []
action:
- choose:
- conditions:
- condition: trigger
id: Fenster auf
sequence:
- service: input_boolean.turn_on
data: {}
target:
entity_id: input_boolean.fenster
- conditions:
- condition: trigger
id: fenster zu
sequence:
- service: input_boolean.turn_off
data: {}
target:
entity_id: input_boolean.fenster
default:
- condition: state
entity_id: sensor.fenstermodus
state: Fenster auf
- service: input_boolean.turn_on
data: {}
target:
entity_id: input_boolean.fenster
- condition: state
entity_id: sensor.fenstermodus
state: Fenster zu
- service: input_boolean.turn_off
data: {}
target:
entity_id: input_boolean.fenster
mode: single
Code: Alles auswählen
alias: Schalter Lüfter
description: ''
trigger:
- platform: state
entity_id: sensor.lueftermodus
from: Lüfter aus
to: Lüfter an
id: lüfter an
- platform: state
entity_id: sensor.lueftermodus
from: Lüfter an
to: Lüfter aus
id: lüfter aus
condition: []
action:
- choose:
- conditions:
- condition: trigger
id: lüfter an
sequence:
- service: input_boolean.turn_on
data: {}
target:
entity_id: input_boolean.luefter
- conditions:
- condition: trigger
id: lüfter aus
sequence:
- service: input_boolean.turn_off
data: {}
target:
entity_id: input_boolean.luefter
default:
- condition: state
entity_id: sensor.lueftermodus
state: Lüfter an
- service: input_boolean.turn_on
data: {}
target:
entity_id: input_boolean.luefter
- condition: state
entity_id: sensor.lueftermodus
state: Lüfter aus
- service: input_boolean.turn_off
data: {}
target:
entity_id: input_boolean.luefter
mode: single
Bei Fragen gerne melden. Bestimmt war ich irgendwo unklar oder die Codes sind schlecht? Vielleicht hat mir auch jemand ein Tip es besser zu machen?
Viel Spass damit falls es jemand brauchen kann.
Grüße ausm sonnigen Süden.