Hast du dir auch schon mal gedacht, man müsste die Rollos im Smarthome doch so steuern können, damit es tagsüber in der Wohnung nicht zu heiß wird? Richtig gedacht, denn genau das machen wir hier mit Home Assistant & diversen Integrationen, unter anderem der Sonnenposition und aktuellen Temperatur 🙌
Also, schau dir an, wie du deine smarten Rollos nutzen kannst, um deine Wohnung im Sommer vor dem Aufheizen zu schützen!
Inhaltsverzeichnis
Voraussetzungen
Deine Smarten Rollos müssen bereits eingerichtet und Home Assistant muss schon installiert sein, auf welcher Hardware spielt keine Rolle.
Rollladen-Aktoren, Motoren und Co.
Aufgelistet nach Funkstandard findest du hier einige empfehlenswerte Aktoren, solltest du noch keine eingebaut haben. Übrigens findest du hier auch einen eigenen Blog-Artikel zu smarten Rollläden.
ZigBee
Wi-Fi
Bosch
Homematic
Proprietär
Automation für den Hitzeschutz
Hier noch die Automation, die man, wie gesagt, für jede Seite des Hauses duplizieren und etwas anpassen müsste, da die Sonne ja um das Haus herum wandert.
Wir erinnern uns: Das ist dann der Azimut 😉
alias: Sun Protection - Forecast Temp & Sun Altitude description: "" trigger: - platform: time_pattern minutes: /15 alias: Check alle 15 Minuten - platform: numeric_state entity_id: sun.sun attribute: azimuth above: 260 alias: Sonne zu weit im Westen id: SonneWiederOkay condition: - condition: or conditions: - condition: and conditions: - condition: numeric_state entity_id: sun.sun attribute: azimuth above: 128 below: 250 - condition: numeric_state entity_id: sun.sun attribute: elevation above: 42 - condition: numeric_state entity_id: sensor.openweathermap_temperature above: 20 - condition: state entity_id: input_boolean.cover_manage_cover_with_sun state: "on" - condition: template value_template: >- {{ not state_attr('automation.sun_protection_forecast_temp_sun_altitude', 'last_triggered').day==now().day }} alias: Bedingungen für Rollo muss runter - condition: and conditions: - condition: trigger id: SonneWiederOkay - condition: template value_template: >- {{ state_attr('automation.sun_protection_forecast_temp_sun_altitude', 'last_triggered').day==now().day }} alias: Bedingung für Rollo soll wieder hoch action: - if: - condition: state entity_id: input_boolean.chac_is_enabled state: "off" then: - service: scene.turn_on target: entity_id: scene.rollos_sun_protection metadata: {} else: - service: scene.turn_on target: entity_id: scene.rollos_sun_protection_no_sz metadata: {} alias: Rollos runter - if: - condition: and conditions: - condition: trigger id: SonneWiederOkay then: - service: scene.turn_on target: entity_id: scene.alle_rollos_hoch metadata: {} alias: Rollos wieder hoch mode: single
Die Zeilen, in denen du höchstwahrscheinlich Anpassungen machen willst, habe ich dir farblich hervorgehoben.
Fazit
Insgesamt bietet die Nutzung smarter Rollos in Verbindung mit Home Assistant und verschiedenen Integrationen wie der Sonnenposition und aktuellen Temperatur eine effektive Lösung, um im Sommer das Aufheizen der Wohnung zu verhindern.
Durch die gezielte Steuerung der Rollos kann man das Raumklima angenehm halten und gleichzeitig Energie sparen.
Wie genau das geht, habe ich ja bereits im Video gezeigt 🙌
Wenn du Fragen oder Anmerkungen hast, zögere nicht, sie mir unten in den Kommentaren mitzuteilen und ich werde mein Bestes tun, um dir zu helfen. Vielen Dank fürs Zuschauen!
Hallo zusammen,
darf ich fragen ob es einen besonderen Grund hat das bei der Hardware Zwave fehlt?
Frage vor dem Hintergrund das ich seit 2010 für nach und nach verschiedene Dinge ausprobiert und eingebaut habe (zunächst mit FHEM):
– Homematic
– Zwave
– Enocean
– Hue/Zigbee
Von den dingen scheint mir Zwave das praktikabelste weil einfach und günstig mit USB-Stick “von der Stange” integrierbar. Stromgebundene deviceses arbeiten automatisch als Repeater. Das ganze ist bezahlbar – Herstellerunabhängig und zuverlässig.
Frage auch weil ich kurz davor stehe diverse neue Devices zu beschaffen – z.b. für die Rolläden tatsächlich (bislang eine Markise die mit Zwave und Alexa-Integration auf noch FHEM gut und zuverlässig funktioniert).
Insofern: WAs würdet ihr bei ergänzung des Systems empfehlen? Doch noch was neues/anderes oder passt Zwave wenn man erste Geräte hat?
Wirklich Klasse diese Anleitung!
Meine Kenntnisse zu HA sind wirklich mau. Bisher ging ohne die Hilfe meiner Schwiegersöhne und Enkel nichts. Aber mit Deiner Anleitung, Simon, stand meine Sonnenschutz-Automation in wenigen Tagen. Mit Ausnahme der Schutzmaßnahme für den Klimaanlagenschlauch habe ich alles so gelassen, wie in dem Beispiel vorgegeben, weil das für mich perfekt ist, und lediglich die Azimuth – und Elevlationwerte für meine Süd-Ost und meine Süd-West-Fenster und natürlich die Entitäten angepasst. Ich habe sogar Deine Anregung aufgegriffen und in der Registerkarte für meine Rollläden einen Schalter zum an- und ausschalten der Automation abgelegt. Nicht ganz so schick, wie Du das hast, Simon, aber er erfüllt seinen Zweck.
Noch mal – ganz vielen Dank! Du bist der geborene Lehrer. Ich glaube, ich werde von Dir noch einiges lernen können.
Hi zusammen,
bei dem heißen Wetter zur Zeit wurde es bei mir auch dringend nötig einen Hitzeschutz einzurichten.
Das Video ist wie immer spitze und super verständlich. Was ich aber bei dem Template nicht verstehe sind die 2 Bedingen für “Rollo wieder hoch”. Wieso stehen die oben im Condition Bereich und nicht unten als Bedingung für die Action?
VG
tukane
Irgendwie funktioniert bei mir der Trigger ” SonneWiederOkay” nicht, obwohl ich schon verschiedene Werte ausprobiert habe. Die Bedingung ist nie erfüllt, wenn ich “Testen” drücke. Folglich fahren die Rollladen abends nicht hoch.
Hat jemand eine Idee, was ich falsch mache?
Sehe ich auch so… seit einigen Tagen funktioniert der Auslöser nicht.
Auch die direkte Entität des Azimuth bei der Integration „Sonne“ führt nicht zur Lösung.
Simon? Bitte um Update 🫢
Danke!
Hallo, erstmal vielen dank für die gute Anregung.
Leider ist die YouTube Variante mit der Template Abfrage
{{
state_attr(‘automation.sun_protection_forecast_temp_sun_altitude’,
‘last_triggered’).day==now().day
}}
im Actions Teil vor der Ausführung bei mir nicht lauffähig, da sobald der “mittlere” Bedingungsteil durchlaufen wird, die Automation auf getriggered gesetzt wird (Zumindest bei mir). Somit kommt es nie zur Ausführung des Sonnenschutzes.
Hier im Blog Bespiel wurde nun die Abfrage in den “Mittleren” Bedingungsteil verschoben was aber zur Folge hätte, dass der Action Teil für den Sonnenschutz immer durchlaufen würde.
Eventuell wird es aber auch mit dieser Abfrage im Action Teil verhindert.
– if:
– condition: state
entity_id: input_boolean.chac_is_enabled
state: “off”
Leider erschließt sich mir aber nicht, wie dieser Schalter gesetzt wird.
Wie bereits von anderen Unsern beschrieben, habe ich es nun auch mit einem zusätzlichen Helfer gelöst, welcher bei Ausführung entsprechend gesetzt wird.
Gruß
Jörg
Ändere die action einfach auf “if-then”.
Bei “if” nimmst Du triggered by “SonneWiederOkay” (Rollladen hoch)
Else: Rollladen runter
So wird immer nur eine der beiden Aktionen ausgeführt.
Gruß
Hallo, vielen Dank für die gute Ausarbeitung, schöne wäre es, wenn das Script jetzt statt nur eine Szene zu starten, die Lamellen in ihrem Kippwinkel analog zum Stand der Sonne gedreht werden (mit den neuen Homematic Lamellen Autoren zB). Spricht, steht die Sonne im Sommer Senkrecht, sind die Lamellen auch waagerecht, steht die Sonne im Herbst/Frühling tief, sind die Lamellen stark gekippt. Wäre das eine Weiterentwicklung wert?
Gruß,
Thorsten
Kann es sein, dass das Template, welches überprüft, ob die Automation am heutigen schon gelaufen ist, nicht (mehr) funktioniert? “last_triggered” ist bei mir auch dann true, wenn die Automation gestartet wurde und wegen z.B. eines zu geringen Azimut vorzeitig abgebrochen ist. Somit werden die Actions nie ausgeführt.
In genau das gleiche Problem bin ich auch gelaufen. Je nachdem, was man für einen Trigger ganz zu beginn nimmt setzt eben dieser Trigger das “last_triggered” date auf das “heutige” Datum. Mit dem Effekt, dass die dann direkt anschließende Prüfung nicht mehr greift. Bei einer Intervallprüfung (“Prüfe alle 15 Minuten”) scheint er das nicht zu machen. Wenn man allerdings einen Sonnenstand oder einen Zeitpunkt nimmt setzt er das “last_triggered”. Habe mir damit beholfen eigene Helfer anzulegen gegen diese ich abgleiche und diese nur dann befüllen zu lassen, wenn die Aktion wirklich ausgeführt wurde und die Rollläden hoch- oder runtergefahren wurden.
Hallo, weiß jemand, ob es mittlerweile die Möglichkeit gibt, Raffstore (Also mit drehbaren Lamellen) zu schalten? Dazu müsste der Aktor (also bspw. ein Shelly 2.5) einen 2. Konfigurationsmodus haben, um die Zeit der Drehbewegung zu kalibrieren.
Gruß,
Thomas
Hallo Thomas,
bist du mit dieser Frage schon weiter gekommen?
Hallo,
ich habe mir vor 3 Monaten die Relais von Bosch Smart Home eingebaut für meine Raffstores. Dort ist die Kippeinstellung separat stellbar.
Aktuell steuere ich diese aber nucht direkt mit HA, sondern über den Bosch Controller, der allerdings in HA integriert ist
Hi Simon,
Danke für deine immer tollen Ideen und Umsetzungen.
Ich habe hier allerdings ein Problem. Und zwar wird die Automation durch das Time Pattern ja alle 15 Minuten getriggered, sodass auch bei zutreffender Bedingungen die dem Trigger nachfolgen das state_attr last_triggered.day immer ab 0 Uhr der aktuelle Tag ist. Das funktioniert also so irgendwie nicht. Denn die Bedingungen sind ja meistens nachts nicht gegeben, tagsüber wird aber nichts ausgeführt, weil es nur passiert, wenn an dem Tag nicht getriggered wurde. Hast du einen Lösungsvorschlag?
Zur Info für andere interessierte. Ich habe mir jetzt mit einem Datums-Helfer beholfen, den ich als Condition nutze und erst bei Ausführung diesen mittels Service input_datetime auf den aktuellen Tag setze.
Hallo zusammen,
bei mir funktionieren zusätzliche Auslöser leider nicht. Also z.B. wenn von der Wetterstation regen gemeldet wird sollen die Rollläden wieder hoch oder wenn die Helligkeit für 15 min unter einem Schwellenwert ist, soll ebenfalls wieder hochgefahren werden.
Wenn dann die Sonne wieder scheint können die Läden wieder runter.
Hier mal ein Beispiel vom Code
alias: Automatische Verschattung – Sueden
description: “”
trigger:
– platform: time_pattern
minutes: /5
alias: Check alle 5 Minuten
– platform: numeric_state
entity_id: sun.sun
attribute: azimuth
above: 240
id: SonneImWesten
for:
hours: 0
minutes: 0
seconds: 0
alias: Sonne zu weit im Westen
– platform: numeric_state
entity_id: sensor.gw2000a_v2_2_3_daily_rain_rate_piezo
above: 0.1
id: Regen
– platform: numeric_state
entity_id: sensor.gw2000a_v2_2_3_solar_lux
for:
hours: 0
minutes: 15
seconds: 0
below: 35000
id: bewölkt
condition:
– condition: or
conditions:
– condition: and
conditions:
– condition: numeric_state
entity_id: sun.sun
attribute: azimuth
above: 100
below: 234
– condition: numeric_state
entity_id: sun.sun
attribute: elevation
above: 25
– condition: numeric_state
entity_id: sensor.gw2000a_v2_2_3_outdoor_temperature
above: 20
– condition: state
entity_id: input_boolean.auto_verschattung
state: “on”
– condition: numeric_state
entity_id: sensor.gw2000a_v2_2_3_solar_lux
above: 50000
– condition: or
conditions:
– condition: state
entity_id: weather.tomorrow_io_home_daily
state: sunny
– condition: state
entity_id: weather.tomorrow_io_home_daily
state: partlycloudy
– condition: state
entity_id: weather.tomorrow_io_home_daily
state: cloudy
alias: Bedingungen für Rollo muss runter
– condition: or
conditions:
– condition: trigger
id:
– SonneImWesten
enabled: true
– condition: trigger
id:
– bewölkt
– condition: trigger
id:
– Regen
action:
– if:
– condition: template
value_template: ” {{ not state_attr(‘automation.automatische_verschattung_sue’,’last_triggered’).day==now().day }}”
enabled: true
then:
– service: scene.turn_on
target:
entity_id: scene.rolladen_suden
metadata: {}
else: []
alias: Rollos runter
– if:
– condition: and
conditions:
– condition: trigger
id:
– SonneImWesten
– condition: template
value_template: >-
{{
state_attr(‘automation.automatische_verschattung_sue’,’last_triggered’).day==now().day
}}
enabled: true
– condition: or
conditions:
– condition: trigger
id:
– Regen
– condition: trigger
id:
– bewölkt
then:
– service: scene.turn_on
target:
entity_id: scene.rolladen_suden_hoch
metadata: {}
alias: Rollos wieder hoch
mode: single
Hallo,
Einen Sonnenschutz ist super und werde ich auch noch Testen. Vielen Dank dafür!
Aber mich interessiert erstmal das normale fahren. Muss ich das für jedes Rollo machen? Jedes Fenster ist auch mit einem Sensor ausgestattet ob es auf, zu oder auf Kipp ist.
Damit habe ich bei FHEM immer aussperrschutz gemacht und eine Lüftungsposition.
Außerdem würde ich gerne nach dem Licht draußen runter fahren (aber nicht vor oder nach einer Uhrzeit) und morgens zu festen Zeiten, aber unterschiedlich am WE, Feiertagen und Urlaub 🤣
In FHEM gab es ein Modul was das alles gemacht hat. Beim HA habe ich das nicht gefunden. Hast du da ein Tipp für mich?
Ich kann das natürlich für jedes Rollo einzeln schreiben, aber das wird viel Code 🫣
Vg
Tim
Hallo Tim,
hast du schon eine Lösung gefunden ? Auch ich bin auf der Suche nach einem Programm das wie in FHEM übe Zeiteinstellungen die jeweiligen Aktoren ansteuert ?
Gruß
Wendelin
Servus Simon
Durch meinen Nachbarn bin ich auf dich gestossen und habe mich auch mal an dieser Automation versucht.Leider funktioniert das ganze so überhaupt nicht 😀
Siehst Du hier auf Anhieb einen Fehler?
Das hier kommt wenn ich manuell auslöse:
Executed: 30. Juni 2023 um 13:48:47
Result:
choice: else
if
Executed: 30. Juni 2023 um 13:48:47
Result:
result: null
if/condition/0
Executed: 30. Juni 2023 um 13:48:47
Error: In ‘state’: In ‘state’ condition: unknown entity input_boolean.chac_is_enabled
if/condition/0/entity_id/0
Executed: 30. Juni 2023 um 13:48:47
Error: In ‘state’ condition: unknown entity input_boolean.chac_is_enabled
Hier der Code:
alias: Sun Protection – Forecast Temp & Sun Altitude
description: “”
trigger:
– platform: time_pattern
minutes: /15
alias: Check alle 15 Minuten
– platform: numeric_state
entity_id: sun.sun
attribute: azimuth
above: 217
alias: Sonne zu weit im Westen
id: SonneWiederOkay
condition:
– condition: or
conditions:
– condition: and
conditions:
– condition: numeric_state
entity_id: sun.sun
attribute: azimuth
above: 140
below: 217
– condition: numeric_state
entity_id: sun.sun
attribute: elevation
above: 55
– condition: numeric_state
entity_id: sensor.openweathermap_temperature_2
above: 20
– condition: state
entity_id: input_boolean.cover_manage_cover_with_sun
state: “on”
alias: Bedingungen für Rollo muss runter
– condition: and
conditions:
– condition: trigger
id: SonneWiederOkay
– condition: template
value_template: >-
{{
state_attr(‘automation.sun_protection_forecast_temp_sun_altitude’,
‘last_triggered’).day==now().day }}
alias: Bedingung für Rollo soll wieder hoch
action:
– if:
– condition: state
entity_id: input_boolean.chac_is_enabled
state: “off”
– condition: template
value_template: >-
{{ not
state_attr(‘automation.sun_protection_forecast_temp_sun_altitude’,’last_triggered’).day==now().day
}}
then:
– device_id: da7d1cf8e7ea3f4c181478d59ec52dc3
domain: cover
entity_id: cover.fenster_rechts
type: set_position
position: 50
else: []
alias: Rollos runter
– if:
– condition: and
conditions:
– condition: trigger
id: SonneWiederOkay
– condition: template
value_template: >-
{{
state_attr(‘automation.sun_protection_forecast_temp_sun_altitude’,’last_triggered’).day==now().day
}}
then:
– device_id: da7d1cf8e7ea3f4c181478d59ec52dc3
domain: cover
entity_id: cover.fenster_rechts
type: set_position
position: 100
alias: Rollos wieder hoch
mode: single
Kann das sein das du seine Entitäten namen genommen hast und nicht durch deine eigene Namen ersetzt?