Seite 1 von 1
Heizplan
Verfasst: Do 19. Mai 2022, 04:07
von Undertaker
Bevor ich mir wieder einen Haufen Arbeit für die Katz mache, frage ich lieber nach. Ich möchte mit meiner Heizungssteuerung auf HA umziehen. Bisher habe ich das so in Homey gemacht:
Eine Variable schaltet je nach Außentemperatur auf Sommer/Winter
Eine weitere Variable gibt je nach Uhrzeit die Temperatur vor
Eine 3 Variable schaltet bei Fenster auf, die Heizkörper ab und bei Fenster zu, wieder auf die Temperatur von Variable 2.
Die Raumtemperatur wird von externen Sensoren gemessen.
Zwei Hue Dimmschalter sind dafür da, die Temperatur manuell zu erhöhen, bzw zu verringern, indem sie die Variable 2 bei jedem Tastendruck jeweils um ein Grad erhöhen bzw senken.
Wie handhabt ihr das ? Für Anregungen bin ich dankbar.
Re: Heizplan
Verfasst: Do 19. Mai 2022, 09:28
von Undertaker
Und gleich die nächste Frage:
Ich habe in einem Raum ein Danfoss Wandthermostat.
Ist es möglich das Wandthermostat mit dem Heizkörperthermostat zu synchronisieren ?
Das heißt, wenn sich die Soll-Temperatur des Danfoss ändert, soll der Thermostat folgen.
Ich hab da im Moment keinen Plan, wie ich das anstellen soll.
Re: Heizplan
Verfasst: Do 19. Mai 2022, 10:47
von Osorkon
Zum Thema Synchronisation Wand Thermostat mit Heizung Thermostat, hier mal ein Bsp.:
Code: Alles auswählen
alias: Küche - Heizung Sync Küche
description: ''
trigger:
- platform: state
entity_id: climate.wandthermostat_kueche
attribute: temperature
condition: []
action:
- service: climate.set_temperature
data_template:
entity_id: climate.heizung_kueche
temperature: |
{{ states.climate.wandthermostat_kueche.attributes.temperature }}
mode: single
Zum Thema Variablen, tue ich mir schwer zu beurteilen ob sie notwendig sind oder nicht. Ohne genau Deinen Ablauf der Automatisierungen zu kennen.
Gruß
Osorkon
Re: Heizplan
Verfasst: Do 19. Mai 2022, 12:55
von Undertaker
Vielleicht bin ich einfach zu dämlich zum Abschreiben ?
Der Wandthermostat soll die Ist-Temperatur des Heizkörperthermostat steuern.
Schau bitte nochmal über meinen Code, bei mir passiert rein gar nichts:
- Screenshot_20220519-123308_Chrome.jpg (201.43 KiB) 808 mal betrachtet
Re: Heizplan
Verfasst: Do 19. Mai 2022, 16:59
von Osorkon
Undertaker hat geschrieben: ↑Do 19. Mai 2022, 12:55
Vielleicht bin ich einfach zu dämlich zum Abschreiben ?
Um das zu beurteilen, fehlt mir leider die passende Qualifikation.
Aber Copy & Paste würde auch gehen.
Und dann nur noch Deine Entitäten anpassen.
Vielleicht kannst Du in Zukunft yaml Schnipsel als Code formatiert posten, das erleichtert eine Fehlersuche ungemein.
Was hast Du für Wandthermostate am Start. Hast Du mal geschaut ob das Attribut temperature bei Dir vorhanden ist, oder die eingestellte Temperatur anders übermittelt wird.
Füge mal das Template in den template editor ein, was kommt da als Ergebnis raus?
Ansonsten schau mal Entwicklungswerkzeuge -> Zustände und suche nach den Thermostat, welche Werte er liefert und welche Attribute.
Der Dienst climate.set_temperature funktioniert aber bei Deinen Heizungthermostaten? Schon mal in Automatisierungen oder Skripts verwenden.
Gruß
Osorkon
Re: Heizplan
Verfasst: Do 19. Mai 2022, 19:49
von Undertaker
Ich werde mich morgen nochmal damit beschäftigen.
Re: Heizplan
Verfasst: Fr 20. Mai 2022, 17:47
von Undertaker
Nochmal ein kleines Feedback.
Ich habe das Devolo Wandthermostat zurück in Homey inkludiert. Anschließend habe ich das Wandthermostat per MQTT wieder zu HA geschickt.
Dein Beispiel hat danach sofort funktioniert.
Ich hab auch ein Problem mit einem Devolo Bewegungsmelder gehabt. Er hat trotz mehrfachen löschen und wieder anmelden unter HA keine Bewegung angezeigt. Per MQTT aus Homey importiert und er funktioniert sofort.
Devolo und HA scheinen sich nicht zu mögen. Egal, es funktioniert jetzt.
Re: Heizplan
Verfasst: Fr 20. Mai 2022, 18:10
von Osorkon
Undertaker hat geschrieben: ↑Fr 20. Mai 2022, 17:47
Devolo und HA scheinen sich nicht zu mögen
Kann ich nicht bestätigen.
Sowohl Heizungsthermostate, Wandthermostate, BM, Türkontkge wie auch Plugs von Devolo laufen bei mir wie geschmiert.
Das tun aber alle andere Z-Wave Geräte auch.
Gruß
Osorkon
Re: Heizplan
Verfasst: Sa 28. Mai 2022, 17:43
von Undertaker
Ich habe mich jetzt an das Thema Heizplan gewagt.
In Homey habe ich meinen eigenen Heizplan erstellt und versuche das gerade mit HA zu duplizieren.
Ein Helfer wird von einer Automatisierung zu bestimmten Zeiten auf eine Nummer gesetzt.
Code: Alles auswählen
alias: Heizplan Temperaturen Test
description: ''
trigger:
- platform: state
entity_id:
- binary_sensor.winter
to: 'on'
condition: []
action:
- choose:
- conditions:
- condition: time
after: '06:00:00'
before: '20:00:00'
sequence:
- service: input_number.set_value
data:
value: 21
target:
entity_id: input_number.heizung_temperaturen
- conditions:
- condition: time
after: '20:00:00'
before: '21:30:00'
sequence:
- service: input_number.set_value
data:
value: 22
target:
entity_id: input_number.heizung_temperaturen
- conditions:
- condition: time
after: '21:30:00'
before: '06:00:00'
sequence:
- service: input_number.set_value
data:
value: 16
target:
entity_id: input_number.heizung_temperaturen
default: []
mode: single
Als 2. , habe ich mir die Fenster auf Geschichte vorgenommen. Mein Ziel ist es, bei Fenster auf die Temperatur auf 8 Grad zu senken. Bei Fenster zu, soll der dann aktuelle Wert des Helfers übernommen werden. Ich bekomme aber diesen Wert nicht unter set.temperature, in meine Thermostate
Code: Alles auswählen
alias: Heizung Fenster auf Test
description: ''
trigger:
- platform: state
entity_id:
- binary_sensor.turkontakt_gruppe_kontakt_alarm
to: 'on'
- platform: state
entity_id:
- binary_sensor.turkontakt_gruppe_kontakt_alarm
to: 'off'
condition: []
action:
- choose:
- conditions:
- condition: state
entity_id: binary_sensor.turkontakt_gruppe_kontakt_alarm
state: 'on'
sequence:
- service: climate.set_temperature
data:
temperature: 8
target:
entity_id:
- climate.heizung_esszimmer
- climate.heizung_wohnzimmer
- conditions:
- condition: state
entity_id: binary_sensor.turkontakt_gruppe_kontakt_alarm
state: 'off'
sequence:
- service: climate.set_temperature
data: {}
target:
device_id:
- 87c83ee97bcbdaa4821040571704b719
- 0f473cc20baed3f1e1681e4140181922
default: []
mode: single
Als Punkt 3, möchte ich, dass die Heizkörper dem Wert des Helfers folgen.
Ich denke vermutlich mal wieder mit dem Homey Gehirn und somit zu kompliziert.
Ich bedanke mich für eure Unterstützung.
Re: Heizplan
Verfasst: Sa 28. Mai 2022, 20:06
von Osorkon
@Undertaker Ich setze meine Thermostate auf den Modus „Aus“ wenn Fenster wird geöffnet. Und auf den Modus „Comfort“ wenn Fenster wieder zu. Sind halt Spirits.
Somit wird immer auf die zuletzt eingestellte Temperatur umgeschaltet. Oder auf die neue, wenn in der Zwischenzeit der Plan die Temperatur geändert hat.
Bezüglich setzen der Temperatur über einen input_number, kann ich Dir mal morgen was reinstellen.
Gruß
Osorkon
Re: Heizplan
Verfasst: Sa 28. Mai 2022, 20:33
von Hamudulu
Hier mal meine Umsetzung von nem Heizplan. Als Helfer hab ich binary Sensoren gebastelt die bei Heizzeit true sind.
Schaut mal drauf...
Hier der Code dazu, hab das für alle Zimmer mit geregeltem Thermostat so umgesetzt.
Code: Alles auswählen
alias: Heizung Bad EG
description: ''
trigger:
- platform: state
entity_id: binary_sensor.se_bad_eg_access_control_window_door_is_open
from: 'off'
to: 'on'
id: Fenster auf
for:
hours: 0
minutes: 0
seconds: 20
- platform: state
entity_id: binary_sensor.se_bad_eg_access_control_window_door_is_open
from: 'on'
to: 'off'
id: Fenster zu
for:
hours: 0
minutes: 0
seconds: 20
- platform: state
entity_id: binary_sensor.heizung_vormittag
id: morgens an
from: 'off'
to: 'on'
- platform: state
entity_id: binary_sensor.heizung_vormittag
id: morgens aus
from: 'on'
to: 'off'
- platform: state
entity_id: binary_sensor.heizung_nachmittag
id: mittags an
from: 'off'
to: 'on'
- platform: state
entity_id: binary_sensor.heizung_nachmittag
id: mittags aus
from: 'on'
to: 'off'
condition:
- condition: state
entity_id: sensor.thermostate_aus
state: 'false'
action:
- choose:
- conditions:
- condition: trigger
id: morgens an
- condition: state
entity_id: binary_sensor.se_bad_eg_access_control_window_door_is_open
state: 'off'
sequence:
- service: climate.set_temperature
data:
temperature: 19
target:
entity_id:
- climate.hz_bad_eg
- conditions:
- condition: trigger
id: morgens aus
sequence:
- service: climate.set_temperature
data:
temperature: 15
target:
entity_id:
- climate.hz_bad_eg
- conditions:
- condition: trigger
id: Fenster auf
sequence:
- service: climate.set_temperature
data:
temperature: 15
target:
entity_id:
- climate.hz_bad_eg
- conditions:
- condition: trigger
id: Fenster zu
- condition: or
conditions:
- condition: state
entity_id: binary_sensor.heizung_vormittag
state: 'on'
- condition: state
entity_id: binary_sensor.heizung_nachmittag
state: 'on'
sequence:
- delay:
hours: 0
minutes: 0
seconds: 15
milliseconds: 0
- service: climate.set_temperature
data:
temperature: 19
target:
entity_id:
- climate.hz_bad_eg
- conditions:
- condition: trigger
id: mittags an
- condition: state
entity_id: binary_sensor.se_bad_eg_access_control_window_door_is_open
state: 'off'
sequence:
- service: climate.set_temperature
data:
temperature: 19
target:
entity_id:
- climate.hz_bad_eg
- conditions:
- condition: trigger
id: mittags aus
sequence:
- service: climate.set_temperature
data:
temperature: 15
target:
entity_id:
- climate.hz_bad_eg
default:
- service: climate.set_temperature
data:
temperature: 16
target:
entity_id:
- climate.hz_bad_eg
mode: restart
Re: Heizplan
Verfasst: So 29. Mai 2022, 06:42
von Undertaker
Ich habe meine Fenster auf Schaltung hin bekommen.
Mein letztes Problem ist die Automatisierung, dass die Ziel-Temperatur der Heizkörper dem Zahlenwert des Helfers folgen. Ich habe keine Idee, wie ich das anstellen soll,
Re: Heizplan
Verfasst: So 29. Mai 2022, 09:54
von Hamudulu
Das ginge vermutlich am besten mit einem Template Sensor.
Als Beispiel hab ich den hier um meinen Gaszähler ab und zu manuell einzustellen wenn er wieder aus dem ruder läuft....
So ähnlich muss das was du vorhast doch auch gehen...
Code: Alles auswählen
- sensor:
- name: "Gaszaehler"
unique_id: gasuhr1
state_class: total_increasing
unit_of_measurement: "m³"
device_class: gas
state: >
{{ states('input_number.gas_manuell')|float(0) | round(2) }}
Re: Heizplan
Verfasst: So 29. Mai 2022, 10:02
von Hamudulu
@Undertaker
Andererseits frag ich mich warum du das so machen willst? Du hast doch alle Möglichkeiten die Temperatur in Lovelace direkt einzustellen ohne Helfer. Beschreib mal bitte warum du das mit einem Helfer machen willst?
Re: Heizplan
Verfasst: So 29. Mai 2022, 12:02
von Osorkon
Hamudulu hat geschrieben: ↑So 29. Mai 2022, 10:02
Andererseits frag ich mich warum du das so machen willst?
Um damit mehrer Heizungthermostate zu steuern, kann es schon Sinn machen.
Undertaker hat geschrieben: ↑Sa 28. Mai 2022, 17:43
Als Punkt 3, möchte ich, dass die Heizkörper dem Wert des Helfers folgen.
Sowas in der Art?
- input_number_steuert_solltemperatur.gif (299.5 KiB) 692 mal betrachtet
Hier als Bsp. folgen 3 Heizungthermostate dem Wert des Input Number.
Code: Alles auswählen
alias: Test - Mehrere Heizungen ansteuern
description: ''
trigger:
- platform: state
entity_id:
- input_number.heizung_soll_temperatur
condition: []
action:
- service: climate.set_temperature
data:
temperature: |
{{ states('input_number.heizung_soll_temperatur') | int }}
target:
entity_id:
- climate.heizung_bad
- climate.heizung_kueche
- climate.heizung_buero
mode: single
Gruß
Osorkon
Re: Heizplan
Verfasst: So 29. Mai 2022, 12:53
von Undertaker
Ich will das so machen, dass ich eine "shoot and forget" Automatisierung für die Heizung habe. Es reicht dann, wenn ich die Temperatur des Helfers ändere und der Rest folgt. Ganz praktisch finde ich es auch, z.B. mit einem Hue Dimmschalter, die Temperatur des Helfers im Bedarfsfall anpassen zu können.
Diese dreigeteilte Automatisierung hatte ich auch bei Homey.
- Variable für die Temperatur
- Fensterkontakte ändern die Variable auf 8 Grad und kehren beim Schließen auf die alte Temperatur zurück
- Thermostate folgen der Variable
Die ganzen Bedingungen drum herum kann ich später einpfrimeln. Es dreht sich wie immer bei mir um das Grundgerüst, mit dem ich dann spielen kann. Die Feinheiten kommen nach und nach.
@Osorkon , das ist genau das, nach was ich gesucht habe !
Re: Heizplan
Verfasst: So 29. Mai 2022, 14:10
von Osorkon
Undertaker hat geschrieben: ↑So 29. Mai 2022, 12:53
Ganz praktisch finde ich es auch, z.B. mit einem Hue Dimmschalter, die Temperatur des Helfers im Bedarfsfall anpassen zu können.
Auch da kann Dir geholfen werden.
Dabei ist aber einiges zu beachten.
Wenn Du, je Tastendruck um 1 grad erhöhen bzw. reduzieren willst ist es relativ einfach.
Der neue Wert lautet "aktueller Wert + 1"
Code: Alles auswählen
{{ state_attr('climate.heizung_bad', 'temperature') + 1 | int}}
Wenn Du jetzt aber mehrer mal drücken tust. z.B. 3 mal für +3 grad. Musst Du zuerst warten bis die neue Temperatur +1 empfangen wurde, damit +1 erneut berechnet werden kann.
Selbst bei den Spirits dauert es wenige sek bis der neue Wert auch in HA als Rückmeldung ankommt.
Deshalb hat die Automatisierung den
mode: queued damit stellen sich alle Ausführungen in einen Schlange und werden nacheinander ausgeführt.
Die Aktion endet erst wenn ein neuer Wert für die Soll-Temperatur empfangen wurde.Du kannst auch einen Timeout definieren, damit die Automatisierung nicht ewig auf den Trigger wartet. In meinem Bsp. sind es 10 s. Und die nächste startest dann mit dem neuen Temperatur Wert.
Code: Alles auswählen
- wait_for_trigger:
- platform: state
entity_id:
- climate.heizung_bad
attribute: temperature
timeout: '00:00:10'
Hier mal die vollständige Automatisierung
Am. Bsp. Hue Dimmschalter. Temperatur + mit Button hoch dimmen. Temperatur mit Button runter dimmen.
Code: Alles auswählen
alias: Test - Hue Dimmer Heizung
description: ''
trigger:
- platform: event
event_type: deconz_event
event_data:
event: 2000
id: dimmschalter_bad
id: up
- platform: event
event_type: deconz_event
event_data:
event: 3000
id: dimmschalter_bad
id: down
condition: []
action:
- choose:
- conditions:
- condition: trigger
id: up
sequence:
- service: climate.set_temperature
data:
temperature: |
{{ state_attr('climate.heizung_bad', 'temperature') + 1 | int}}
target:
entity_id: climate.heizung_bad
- wait_for_trigger:
- platform: state
entity_id:
- climate.heizung_bad
attribute: temperature
timeout: '00:00:10'
- conditions:
- condition: trigger
id: down
sequence:
- service: climate.set_temperature
data:
temperature: |
{{ state_attr('climate.heizung_bad', 'temperature') - 1 | int}}
target:
entity_id: climate.heizung_bad
- wait_for_trigger:
- platform: state
entity_id:
- climate.heizung_bad
attribute: temperature
timeout: '00:00:10'
default: []
mode: queued
Je nach dem welche Heizkörperthermostate Du am Start hast, kannst Du diesen Ansatz nutzen.
Dauert es länger bis die Thermostate die neu gesetzte Temperatur zurückmelden. Würde ich einen Zähler als zwischen Schritt einbauen. Der die Tasten Drücke zählt und dann dementsprechend die Temperatur erhöht / reduziert..
Das wären die Möglichkeiten wenn Du das Thermostat direkt ansprechen möchtest ohne den von Dir beschrieben Helfer.
Aber die Bsp. sollen ja nur die Möglichkeiten aufzeigen. Und Verständnis schaffen.
Gruß
Osorkon
Re: Heizplan
Verfasst: So 29. Mai 2022, 19:15
von Undertaker
Werd ich ausprobieren.
Bei Homey war das ähnlich aufwendig. Du musstest zwangsläufig eine Variable verwenden, die beim Tastendruck berechnet wurde.
- Screenshot_20220529-191443_Homey.jpg (217.69 KiB) 666 mal betrachtet
Re: Heizplan
Verfasst: So 29. Mai 2022, 19:31
von Osorkon
@Undertaker wenn Du mal das Thema
Templating verinnerlicht hast, wird alles einfacher.
Und immer fleißig den Template Editor nutzen, bevor Du diese in Automatisierungen / Skripten etc. verwenden tust.
Erspart vile Zeit und Ärger.
Gruß
Osorkon
Re: Heizplan
Verfasst: Di 4. Okt 2022, 16:08
von streetjumper16
Hamudulu hat geschrieben: ↑Sa 28. Mai 2022, 20:33
Hier mal meine Umsetzung von nem Heizplan. Als Helfer hab ich binary Sensoren gebastelt die bei Heizzeit true sind.
Schaut mal drauf...
Hier der Code dazu, hab das für alle Zimmer mit geregeltem Thermostat so umgesetzt.
Code: Alles auswählen
alias: Heizung Bad EG
description: ''
trigger:
- platform: state
entity_id: binary_sensor.se_bad_eg_access_control_window_door_is_open
from: 'off'
to: 'on'
id: Fenster auf
for:
hours: 0
minutes: 0
seconds: 20
- platform: state
entity_id: binary_sensor.se_bad_eg_access_control_window_door_is_open
from: 'on'
to: 'off'
id: Fenster zu
for:
hours: 0
minutes: 0
seconds: 20
- platform: state
entity_id: binary_sensor.heizung_vormittag
id: morgens an
from: 'off'
to: 'on'
- platform: state
entity_id: binary_sensor.heizung_vormittag
id: morgens aus
from: 'on'
to: 'off'
- platform: state
entity_id: binary_sensor.heizung_nachmittag
id: mittags an
from: 'off'
to: 'on'
- platform: state
entity_id: binary_sensor.heizung_nachmittag
id: mittags aus
from: 'on'
to: 'off'
condition:
- condition: state
entity_id: sensor.thermostate_aus
state: 'false'
action:
- choose:
- conditions:
- condition: trigger
id: morgens an
- condition: state
entity_id: binary_sensor.se_bad_eg_access_control_window_door_is_open
state: 'off'
sequence:
- service: climate.set_temperature
data:
temperature: 19
target:
entity_id:
- climate.hz_bad_eg
- conditions:
- condition: trigger
id: morgens aus
sequence:
- service: climate.set_temperature
data:
temperature: 15
target:
entity_id:
- climate.hz_bad_eg
- conditions:
- condition: trigger
id: Fenster auf
sequence:
- service: climate.set_temperature
data:
temperature: 15
target:
entity_id:
- climate.hz_bad_eg
- conditions:
- condition: trigger
id: Fenster zu
- condition: or
conditions:
- condition: state
entity_id: binary_sensor.heizung_vormittag
state: 'on'
- condition: state
entity_id: binary_sensor.heizung_nachmittag
state: 'on'
sequence:
- delay:
hours: 0
minutes: 0
seconds: 15
milliseconds: 0
- service: climate.set_temperature
data:
temperature: 19
target:
entity_id:
- climate.hz_bad_eg
- conditions:
- condition: trigger
id: mittags an
- condition: state
entity_id: binary_sensor.se_bad_eg_access_control_window_door_is_open
state: 'off'
sequence:
- service: climate.set_temperature
data:
temperature: 19
target:
entity_id:
- climate.hz_bad_eg
- conditions:
- condition: trigger
id: mittags aus
sequence:
- service: climate.set_temperature
data:
temperature: 15
target:
entity_id:
- climate.hz_bad_eg
default:
- service: climate.set_temperature
data:
temperature: 16
target:
entity_id:
- climate.hz_bad_eg
mode: restart
Kanns du mir dazu den Code für die binary_sensor posten ? möchte meine Steuerung gern auch so umsetzen.
Re: Heizplan
Verfasst: Di 4. Okt 2022, 19:10
von Hamudulu
Hi, du kannst das mit Helfern abbilden. Hab ich auch gemacht. Die binaries sind Tageszeitensensoren von den Helfern.