Rolladensteuerung abhängig von Zeit und Sonnenuntergang

Hallo,

ich komme mit meiner Rolladensteuerung nicht weiter.
Und zwar geht es um das Thema Rollade zeitgesteuert und abhängig vom Sonnenuntergang herunterzufahren.

Hierzu gibt es zwei Situationen, die berücksichtigt werden müssen:

  1. Die Rollade wird um 20:00 Uhr heruntergefahren, wenn der Sonnenuntergang vor 20:00 Uhr ist (also in den Wintermonaten)
  2. Die Rollade wird zum Zeitpunkt des Sonnenuntergangs herunter gefahren, wenn der Sonnenuntergang nach 20:00 Uhr ist.

Es gibt also zwei Bedingungen, die Uhrzeit 20:00 Uhr und Sonnenuntergang.
Diese beiden Bedingungen müssen per UND verknüpft werden, damit zum gewünschten Zeitpunkt die Rolladen heruntergefahren werden.
Die Uhrzeit lasse ich über einen Zeitplan (20:00 bis 23:00 Uhr) realisieren, da ich für die Terrassentür weitere Bedingungen (Türgriff auf/zu ?, etc.) habe, die auch erfüllt sein müssen. Dadurch sollte die Roulade auch zu einem späteren Zeitpunkt herunterfahren, wenn nämlich die Türe geschlossen wird.

Die Grundidee mit den Bedingungen für die Zeitkomponenten habe ich folgendermassen realisiert:

alias: EG-WZ-RolladeDown
description: >-
  Rollade entweder bei Sonnenuntergang (wenn nach 20:00 Uhr) oder um 20:00 Uhr herunterfahren
triggers:
  - trigger: state
    entity_id:
      - schedule.zeitplan_rollladedown
    to: "on"
conditions:
  - condition: and
    conditions:
      - condition: sun
        after: sunset
actions:
  - device_id: f8b63a9dc9e16234e3631c1eaa288c2d
    domain: cover
    entity_id: d2194d80dc210fce794f7707c060d21f
    type: set_position
    position: 100
mode: single

Kann mir Jemand sagen, was da falsch ist ?
So ganz kann ich nicht nachvollziehen, was da nicht richtig funktioniert

Danke und viele Grüße

Michael

:crayon:by HarryP: Code-/Logzeilen formatiert (bitte immer in </> einbinden)

Sowas kann man mit chatGPT lösen.

Hier ist ein KI Beispiel. Kannst mal ausprobieren und bei chargpt abfragen

alias: "Rolladen Steuerung nach Sonnenuntergang"
trigger:
  - platform: sun
    event: sunset
  - platform: time
    at: "20:00:00"
condition:
  - condition: template
    value_template: >-
      {% set sunset_time = as_timestamp(states.sun.sun.attributes.next_setting) %}
      {% set limit_time = as_timestamp(now().replace(hour=20, minute=0, second=0)) %}
      {{ (trigger.platform == 'sun' and sunset_time > limit_time) or (trigger.platform == 'time' and sunset_time <= limit_time) }}
action:
  - service: cover.close_cover
    target:
      entity_id: cover.rollade
mode: single

Hallo mschulte63,
vielleicht kann dir meine Rolladensteuerung für die Terasse als Inspiration dienen.

Grüße

alias: Rolladen Terrasse
description: ""
triggers:
  - at: "06:42:00"
    id: Hochfahren 6:42
    trigger: time
  - at: "08:00:00"
    id: Hochfahren 8:00
    trigger: time
  - event: sunset
    id: Runterfahren
    offset: "01:00:00"
    trigger: sun
  - trigger: time
    at: "19:30:01"
    id: 19:30 Uhr
  - entity_id:
      - binary_sensor.rolladen_terrasse_rechts_und_links
    to: "on"
    for:
      hours: 0
      minutes: 0
      seconds: 25
    id: "R+L volle Sonne "
    trigger: state
    enabled: true
    from: "off"
  - entity_id:
      - binary_sensor.rolladen_terrasse_rechts_und_links
    to: "off"
    for:
      hours: 0
      minutes: 30
      seconds: 0
    id: "R+L Sonne weg "
    trigger: state
    from: "on"
  - entity_id:
      - binary_sensor.rollade_terrasse_mitte
    to: "on"
    for:
      hours: 0
      minutes: 0
      seconds: 35
    id: volle Sonne M
    trigger: state
    enabled: true
    from: "off"
  - entity_id:
      - binary_sensor.rollade_terrasse_mitte
    to: "off"
    for:
      hours: 0
      minutes: 0
      seconds: 10
    id: Sonne weg M
    trigger: state
    from: "on"
  - alias: Sobald Terrassentür bei geschlossener Rollade M geöffnet wird
    trigger: state
    entity_id:
      - binary_sensor.sensor_tur_terrasse_contact
    id: Tür Kontakt Rollade Mitte öffnet sich
    from: "off"
    to: "on"
  - alias: >-
      Sobald Terrassentür geschlossen wird nach vorheriger Öffnung Rollade M
      durch Terrassentür
    trigger: state
    entity_id:
      - binary_sensor.sensor_tur_terrasse_contact
    to: "off"
    id: Tür Kontakt Rollade Mitte schließt sich
conditions: []
actions:
  - choose:
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - Hochfahren 6:42
              - condition: state
                entity_id: binary_sensor.werktag
                state: "on"
        sequence:
          - sequence:
              - device_id: d8977301cb57bec04fdba010426a90f5
                domain: cover
                entity_id: eb28ec05f82a8aa9acb6b2467f4b0b9d
                type: open
              - delay:
                  hours: 0
                  minutes: 0
                  seconds: 30
                  milliseconds: 0
              - device_id: 6fd1f80d810ffd9c61b663c2f736b0d3
                domain: cover
                entity_id: 9f35ba4512e2a02069953c8d2ef00b2c
                type: open
              - delay:
                  hours: 0
                  minutes: 0
                  seconds: 30
                  milliseconds: 0
              - device_id: 4477f45144571ac1ca74dc06c6321ed5
                domain: cover
                entity_id: 426ed5049b9ec98a67233dd50ee4315f
                type: open
        alias: Terrasse wochentags hochfahren
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - Hochfahren 8:00
              - condition: state
                entity_id: binary_sensor.werktag
                state: "off"
        sequence:
          - sequence:
              - device_id: d8977301cb57bec04fdba010426a90f5
                domain: cover
                entity_id: eb28ec05f82a8aa9acb6b2467f4b0b9d
                type: open
              - delay:
                  hours: 0
                  minutes: 0
                  seconds: 30
                  milliseconds: 0
              - device_id: 6fd1f80d810ffd9c61b663c2f736b0d3
                domain: cover
                entity_id: 9f35ba4512e2a02069953c8d2ef00b2c
                type: open
              - delay:
                  hours: 0
                  minutes: 0
                  seconds: 30
                  milliseconds: 0
              - device_id: 4477f45144571ac1ca74dc06c6321ed5
                domain: cover
                entity_id: 426ed5049b9ec98a67233dd50ee4315f
                type: open
        alias: Terrasse Wochenende hochfahren
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - Runterfahren
              - condition: time
                after: "19:30:00"
        sequence:
          - parallel:
              - sequence:
                  - device_id: 6fd1f80d810ffd9c61b663c2f736b0d3
                    domain: cover
                    entity_id: 9f35ba4512e2a02069953c8d2ef00b2c
                    type: close
                  - delay:
                      hours: 0
                      minutes: 0
                      seconds: 30
                      milliseconds: 0
                  - device_id: 4477f45144571ac1ca74dc06c6321ed5
                    domain: cover
                    entity_id: 426ed5049b9ec98a67233dd50ee4315f
                    type: close
              - if:
                  - condition: state
                    entity_id: binary_sensor.sensor_markise_contact
                    state: "off"
                    enabled: false
                then:
                  - sequence:
                      - delay:
                          hours: 0
                          minutes: 1
                          seconds: 0
                          milliseconds: 0
                      - device_id: d8977301cb57bec04fdba010426a90f5
                        domain: cover
                        entity_id: eb28ec05f82a8aa9acb6b2467f4b0b9d
                        type: close
        alias: Terrasse Runterfahren alle Sonnenuntergang
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - 19:30 Uhr
              - condition: sun
                after: sunset
        sequence:
          - parallel:
              - sequence:
                  - device_id: 6fd1f80d810ffd9c61b663c2f736b0d3
                    domain: cover
                    entity_id: 9f35ba4512e2a02069953c8d2ef00b2c
                    type: close
                  - delay:
                      hours: 0
                      minutes: 0
                      seconds: 30
                      milliseconds: 0
                  - device_id: 4477f45144571ac1ca74dc06c6321ed5
                    domain: cover
                    entity_id: 426ed5049b9ec98a67233dd50ee4315f
                    type: close
              - if:
                  - condition: state
                    entity_id: binary_sensor.sensor_markise_contact
                    state: "off"
                    enabled: false
                then:
                  - sequence:
                      - sequence:
                          - delay:
                              hours: 0
                              minutes: 1
                              seconds: 0
                              milliseconds: 0
                          - device_id: d8977301cb57bec04fdba010426a90f5
                            domain: cover
                            entity_id: eb28ec05f82a8aa9acb6b2467f4b0b9d
                            type: close
        alias: Terrasse Runterfahren alle 19.30 Uhr
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - "R+L volle Sonne "
              - condition: state
                entity_id: binary_sensor.rolladen_sonnenschutz_monate
                state: "on"
              - condition: time
                before: "20:00:00"
                after: "09:00:00"
        sequence:
          - sequence:
              - metadata: {}
                data: {}
                target:
                  device_id:
                    - 6fd1f80d810ffd9c61b663c2f736b0d3
                action: cover.close_cover
              - delay:
                  hours: 0
                  minutes: 0
                  seconds: 30
                  milliseconds: 0
              - metadata: {}
                data: {}
                target:
                  device_id:
                    - 4477f45144571ac1ca74dc06c6321ed5
                action: cover.close_cover
        alias: Terrasse R+L Sonne runterfahren
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - "R+L Sonne weg "
              - condition: time
                before: "20:00:00"
                after: "09:00:00"
        sequence:
          - sequence:
              - metadata: {}
                data: {}
                target:
                  device_id:
                    - 4477f45144571ac1ca74dc06c6321ed5
                action: cover.open_cover
              - delay:
                  hours: 0
                  minutes: 0
                  seconds: 30
                  milliseconds: 0
              - metadata: {}
                data: {}
                target:
                  device_id:
                    - 6fd1f80d810ffd9c61b663c2f736b0d3
                action: cover.open_cover
        alias: Terrasse R+L Sonne hochfahren
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - volle Sonne M
              - condition: state
                entity_id: binary_sensor.rolladen_sonnenschutz_monate
                state: "on"
              - condition: time
                before: "19:00:00"
                after: "09:00:00"
        sequence:
          - metadata: {}
            data: {}
            target:
              device_id: d8977301cb57bec04fdba010426a90f5
            action: cover.close_cover
        alias: Terrasse M Sonne runterfahren mit Markise
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - Sonne weg M
              - condition: time
                before: "19:00:00"
                after: "09:00:00"
        sequence:
          - metadata: {}
            data: {}
            target:
              device_id:
                - d8977301cb57bec04fdba010426a90f5
            action: cover.open_cover
        alias: Terrasse M Sonne hochfahren mit Markise
      - conditions:
          - condition: and
            conditions:
              - condition: trigger
                id:
                  - Tür Kontakt Rollade Mitte öffnet sich
              - condition: state
                entity_id: cover.rollade_terrasse_mitte
                state: closed
              - condition: template
                value_template: >-
                  {{
                  states('input_boolean.zustand_rollade_terrasse_m_nach_turoffnung')
                  |

                  replace("off", "true") | replace("on", "false")  }}
        sequence:
          - parallel:
              - device_id: d8977301cb57bec04fdba010426a90f5
                domain: cover
                entity_id: eb28ec05f82a8aa9acb6b2467f4b0b9d
                type: open
              - action: input_boolean.turn_on
                metadata: {}
                data: {}
                target:
                  entity_id: input_boolean.zustand_rollade_terrasse_m_nach_turoffnung
          - delay:
              hours: 0
              minutes: 0
              seconds: 12
              milliseconds: 0
          - type: turn_on
            device_id: 7d0ac24d3e07c06ff7e4d49a3e28d813
            entity_id: 99e15b8bde1e341773638d954fea735f
            domain: switch
        alias: Rollade Terrasse M öffnen wenn Terrassentür geöffnet wird
      - conditions: []
        sequence:
          - if:
              - condition: and
                conditions:
                  - condition: trigger
                    id:
                      - Tür Kontakt Rollade Mitte schließt sich
                  - condition: device
                    device_id: d8977301cb57bec04fdba010426a90f5
                    domain: cover
                    entity_id: eb28ec05f82a8aa9acb6b2467f4b0b9d
                    type: is_open
                  - condition: template
                    value_template: >-
                      {{
                      states('input_boolean.zustand_rollade_terrasse_m_nach_turoffnung')
                      |

                      replace("on", "true") | replace("off", "false")  }}
            then:
              - sequence:
                  - device_id: d8977301cb57bec04fdba010426a90f5
                    domain: cover
                    entity_id: eb28ec05f82a8aa9acb6b2467f4b0b9d
                    type: close
                  - delay:
                      hours: 0
                      minutes: 0
                      seconds: 10
                      milliseconds: 0
                  - type: turn_off
                    device_id: 7d0ac24d3e07c06ff7e4d49a3e28d813
                    entity_id: 99e15b8bde1e341773638d954fea735f
                    domain: switch
                  - delay:
                      hours: 0
                      minutes: 0
                      seconds: 20
                      milliseconds: 0
                  - action: input_boolean.turn_off
                    metadata: {}
                    data: {}
                    target:
                      entity_id: input_boolean.zustand_rollade_terrasse_m_nach_turoffnung
        alias: Rollade Terrasse M schließen wenn Terrassentür geschlossen wird
mode: single

Programmierung in der GUI (also ohne yaml)

2 Trigger (“Sobald”)

  • Uhrzeit
  • Sonnenuntergang

Zusätzlich 2 Bedingungen (“Und wenn”)

  • Uhrzeit
  • Sonnenuntergang

Ja, das ist beides mal das gleiche, aber die Trigger werden von HA mit “oder” verknüpft, die Bedingungen mit “und”.

Die Automation wird also 2x angestoßen, bei Sonnenuntergang und um 20 Uhr.
Ausgeführt wird sie aber nur, wenn beide Bedingungen erfüllt sind.

Hi,
das hier müsste deine gewünschte Automatisierung sein: (Entitäten noch ersetzen!)

description: ""
mode: single
triggers:
  - trigger: time
    at: "20:00:00"
  - trigger: sun
    event: sunset
    offset: 0
  - trigger: state
    entity_id:
      - binary_sensor.fensterkontakt_balkon_offnung
    to: "off"
conditions:
  - condition: sun
    after: sunset
  - condition: time
    after: "19:59:59"
  - condition: state
    entity_id: binary_sensor.fensterkontakt_balkon_offnung
    state: "off"
actions:
  - action: cover.close_cover
    metadata: {}
    data: {}
    target:
      entity_id: cover.rollo_balkon_04

Moin, ich nutze für so eine komplexe Automation Cover Control Automation (CCA) blueprint (ist glaube ich auch von den macher des „ Switch Manager“ :thinking:) es ist für mich genial und es werden sehr viele Faktoren berücksichtigt auch z. B. Werktag Sensor uvm.
Nach Testen kannst du auch die Kontrolle über diese Vorlage übernehmen (habe bisher noch nicht gemacht :wink:) Glaube es wird dir wirklich helfen (wenn nicht dann löschen :wink:)
Gruß

Hallo,

vielen Dank für die Tipps bzgl. meiner ausgefallenen und komplexen
Rolladensteuerung. Ich hoffe, dass ich hier Anregungen finde, die mir bei der Lösung des Problems behilflich sind.

Viele Grüße
Michael

1 „Gefällt mir“