Sonnenuntergang oder Zeit

Hier kommen dann div. Rollladen in unterschiedliche Stellungen
Ich bin der Meinung, dass du nach den Triggern keine Conditions brauchst, sondern bei den Aktionen für die Rollläden jede einzelne mit „Wenn” abfragen solltest, ob die Rollläden geöffnet sind bzw. ob ihre Stellung größer als 25 % ist, dann auf den gewünschten Wert fahren (schliessen).
Z.B. so (nur als Beispilel)
BedienungAction.png

YAML:
actions:
  - if:
      - condition: state
        entity_id: select.inverter_battery_operation_mode
        state: No Battery
    then:
      - action: select.select_option
        metadata: {}
        data:
          option: Capacity
        target:
          entity_id: select.inverter_battery_operation_mode
      - action: select.select_option
        metadata: {}
        data:
          option: Lithium
        target:
          entity_id: select.inverter_battery_control_mode
  - if:
      - condition: state
        entity_id: switch.inverter
        state: "off"
    then:
      - action: switch.turn_on
        metadata: {}
        data: {}
        target:
          entity_id: switch.inverter
mode: single
 
Zuletzt bearbeitet:
Das oder ist schon richtig so. Wenn a oder b eintritt, mache c.
Und zwar jedesmal, wenn a oder b eintritt. So ein Trigger ist wie ein Foto, nicht wie ein Film. Wenn du täglich nur 1 Foto wünschst, Kamera danach ausmachen.
 
Mal ne andere Frage: Woher bekommst du den Prozentwert des Rolladens? Gibt das der Rolladenmotor oder der Rolladenaktor zurück oder berechnet das HA über die Laufzeit?
 
Nach Rolladen schließen eine Action ausführen, die die Automation deaktivert.
Weitere Automation anlegen, die am Morgen die Automation wieder aktiviert.
Also irgendwie würde ich nicht den Ast abschneiden, auf dem man sitzt. Ich würde das eher mit einem Helfer machen. Obwohl das sicher auch so funktionert.
 
Das ist mein bisheriger:

YAML:
alias: Sonnenuntergang o. 21:45
description: |-
  - bei Sonnenuntergang
  - o. 21:45 Uhr
  - alle Rollladen runter
  - Licht div. an
triggers:
  - event: sunset
    offset: "00:20:00"
    id: Sonnenuntergang
    trigger: sun
  - at: "21:45:00"
    enabled: true
    id: Rollladen runter 21:45 Uhr
    trigger: time
conditions:
  - condition: or
    conditions:
      - condition: trigger
        id:
          - Rollladen runter 21:45 Uhr
      - condition: and
        conditions:
          - condition: trigger
            id:
              - Rollladen runter 21:45 Uhr
          - condition: sun
            before: sunset
            after: sunset
            after_offset: "00:20:00"
    enabled: true
actions:
***** Hier kommen dann div. Rollladen in unterschiedliche Stellungen und div. Lichter in unterschiedlicher Helligkeit *****

Und das wäre der, den ich heute testen würde. Hatte den im Netz gefunden allerdings für Rolladen hoch, aber nicht vor 07.00 Uhr und für mich angepasst:
YAML:
alias: Sonnenuntergang (06-2025)-02
description: |-
  - bei Sonnenuntergang
  - o. 21:45 Uhr
  - alle Rollladen runter
  - Licht div. an
triggers:
  - event: sunset
    offset: "00:20:00"
    id: Sonnenuntergang
    trigger: sun
  - at: "21:45:01"
    enabled: true
    id: Rollladen runter 21:45 Uhr
    trigger: time
conditions:
  - condition: time
    before: "21:45:00"
  - condition: sun
    before: sunset
    before_offset: "20:00"
actions:

***** Hier kommen dann div. Rollladen in unterschiedliche Stellungen und div. Lichter in unterschiedlicher Helligkeit *****
also gestern habe ich die Automation lauef lassen
***** alias: Sonnenuntergang (06-2025)-02 *****
Hier wurde keine Aktion ausgeführt.
 
Moin zusammen,

ich würde mir zwei Helfer anlegen, die Sonne und Uhrzeit gegeneinander verriegeln. Habe mir mal folgende Testautomation gebaut:

YAML:
alias: Forum Rolladen
description: ""
triggers:
  - trigger: sun
    event: sunset
    offset: "00:20:00"
    id: Sonnenuntergang
  - trigger: time
    at: "21:45:00"
    id: Uhrzeit
  - trigger: sun
    event: sunrise
    offset: 0
    id: Sonnenaufgang
conditions: []
actions:
  - if:
      - condition: trigger
        id:
          - Sonnenuntergang
    then:
      - action: input_boolean.turn_on
        target:
          entity_id: input_boolean.rollladen_durch_sonnenuntergang
        data: {}
      - condition: state
        entity_id: input_boolean.rolladen_durch_uhrzeit
        state: "off"
      - type: turn_on
        device_id: d63535535c206c951db547fb3b98956d
        entity_id: fd6bafca3cc52bdd5251ef6576e9ae1c
        domain: switch
  - if:
      - condition: trigger
        id:
          - Uhrzeit
    then:
      - action: input_boolean.turn_on
        target:
          entity_id: input_boolean.rolladen_durch_uhrzeit
        data: {}
      - condition: state
        entity_id: input_boolean.rollladen_durch_sonnenuntergang
        state: "off"
      - type: turn_on
        device_id: d63535535c206c951db547fb3b98956d
        entity_id: fd6bafca3cc52bdd5251ef6576e9ae1c
        domain: switch
  - if:
      - condition: trigger
        id:
          - Sonnenaufgang
    then:
      - action: input_boolean.turn_off
        target:
          entity_id:
            - input_boolean.rollladen_durch_sonnenuntergang
        data: {}
      - action: input_boolean.turn_off
        target:
          entity_id:
            - input_boolean.rolladen_durch_uhrzeit
        data: {}
mode: single

  • if: Sonnenuntergang:
    • input_boolean.turn_on input_boolean.rollladen_durch_sonnenuntergang: Dies setzt den Boolean korrekt auf on, um anzuzeigen, dass der Rolladen durch den Sonnenuntergang geschlossen wurde.
    • condition: state input_boolean.rolladen_durch_uhrzeit state: "off": Diese Bedingung ist wichtig. Sie stellt sicher, dass der Rolladen nur geschlossen wird, wenn er nicht bereits durch den Uhrzeit-Auslöser geschlossen wurde. Dies verhindert doppelte Aktionen.
    • type: turn_on device_id: ... entity_id: ... domain: switch: Diese Aktion schließt den Rolladen.
  • if: Uhrzeit:
    • input_boolean.turn_on input_boolean.rolladen_durch_uhrzeit: Setzt den Boolean korrekt.
    • condition: state input_boolean.rollladen_durch_sonnenuntergang state: "off": Ähnlich wie oben, verhindert dies das Schließen, wenn bereits durch Sonnenuntergang geschlossen.
    • type: turn_on device_id: ... entity_id: ... domain: switch: Schließt den Rolladen.
  • if: Sonnenaufgang:
    • action: input_boolean.turn_off input_boolean.rollladen_durch_sonnenuntergang: Schaltet den Sonnenuntergangs-Boolean aus.
    • action: input_boolean.turn_off input_boolean.rolladen_durch_uhrzeit: Schaltet den Uhrzeit-Boolean aus.
 
Hast du das so mal ausprobiert?
Nein habe ich nicht, muss ich mal machen. Habe noch nie mit Helfern (außer Gruppen) gearbeitet, habe nicht so viel Ahnung von dem System ;-)
Mal ne andere Frage: Woher bekommst du den Prozentwert des Rolladens? Gibt das der Rolladenmotor oder der Rolladenaktor zurück oder berechnet das HA über die Laufzeit?
Der eine Rollladen ist über einen Shelly gesteuert und Shelly gibt das zurück.
 
Zuletzt bearbeitet:
Habe noch nie mit Helfern (außer Gruppen) gearbeitet, habe nicht so viel Ahnung von dem System ;-)
Ein Helfer ist eine Hilfsvariable, die du anlegen kannst um dir Sachen zu merken. z.B. ein Schalter input_boolen.rolladen_heute_schon_gefahren (ja/nein).

den kannst du abfragen:

...
Und wenn:
- Helfer nicht gesetzt.
...

YAML:
conditions:
  - condition: state
    entity_id: input_boolean.rolladen_heute_schon_gefahren
    state: "off"

oder auch setzen (oder natürlich auch rücksetzen):

...
Dann
- ...
- Setze Helfer

YAML:
actions:
  - ...
  - action: input_boolean.turn_on
    target:
      entity_id: input_boolean.rolladen_heute_schon_gefahren
 
Zuletzt bearbeitet:
also alles in allem würde ich das so ungefähr machen:

YAML:
alias: Rolladen runter
description: ""
triggers:
  - trigger: sun
    event: sunset
  - trigger: time
    at: "21:45:00"
conditions:
  - condition: state
    entity_id: input_boolean.rolladen_heute_schon_gefahren
    state: "off"
actions:
  - action: cover.set_cover_position
    metadata: {}
    data:
      position: 25
    target:
      entity_id: cover.rolladen_eg   # an deine entity_id aunpassen
  - action: input_boolean.turn_on
    metadata: {}
    data: {}
    target:
      entity_id: input_boolean.rolladen_heute_schon_gefahren

und bei Rolladen rauf (oder um 0:00 Uhr)

YAML:
...
actions:
  ...
  - action: input_boolean.turn_off
    metadata: {}
    data: {}
    target:
      entity_id: input_boolean.rolladen_heute_schon_gefahren
 
Zuletzt bearbeitet:
Moin zusammen,

ich würde mir zwei Helfer anlegen, die Sonne und Uhrzeit gegeneinander verriegeln. Habe mir mal folgende Testautomation gebaut:

YAML:
alias: Forum Rolladen
description: ""
triggers:
  - trigger: sun
    event: sunset
    offset: "00:20:00"
    id: Sonnenuntergang
  - trigger: time
    at: "21:45:00"
    id: Uhrzeit
  - trigger: sun
    event: sunrise
    offset: 0
    id: Sonnenaufgang
conditions: []
actions:
  - if:
      - condition: trigger
        id:
          - Sonnenuntergang
    then:
      - action: input_boolean.turn_on
        target:
          entity_id: input_boolean.rollladen_durch_sonnenuntergang
        data: {}
      - condition: state
        entity_id: input_boolean.rolladen_durch_uhrzeit
        state: "off"
      - type: turn_on
        device_id: d63535535c206c951db547fb3b98956d
        entity_id: fd6bafca3cc52bdd5251ef6576e9ae1c
        domain: switch
  - if:
      - condition: trigger
        id:
          - Uhrzeit
    then:
      - action: input_boolean.turn_on
        target:
          entity_id: input_boolean.rolladen_durch_uhrzeit
        data: {}
      - condition: state
        entity_id: input_boolean.rollladen_durch_sonnenuntergang
        state: "off"
      - type: turn_on
        device_id: d63535535c206c951db547fb3b98956d
        entity_id: fd6bafca3cc52bdd5251ef6576e9ae1c
        domain: switch
  - if:
      - condition: trigger
        id:
          - Sonnenaufgang
    then:
      - action: input_boolean.turn_off
        target:
          entity_id:
            - input_boolean.rollladen_durch_sonnenuntergang
        data: {}
      - action: input_boolean.turn_off
        target:
          entity_id:
            - input_boolean.rolladen_durch_uhrzeit
        data: {}
mode: single

  • if: Sonnenuntergang:
    • input_boolean.turn_on input_boolean.rollladen_durch_sonnenuntergang: Dies setzt den Boolean korrekt auf on, um anzuzeigen, dass der Rolladen durch den Sonnenuntergang geschlossen wurde.
    • condition: state input_boolean.rolladen_durch_uhrzeit state: "off": Diese Bedingung ist wichtig. Sie stellt sicher, dass der Rolladen nur geschlossen wird, wenn er nicht bereits durch den Uhrzeit-Auslöser geschlossen wurde. Dies verhindert doppelte Aktionen.
    • type: turn_on device_id: ... entity_id: ... domain: switch: Diese Aktion schließt den Rolladen.
  • if: Uhrzeit:
    • input_boolean.turn_on input_boolean.rolladen_durch_uhrzeit: Setzt den Boolean korrekt.
    • condition: state input_boolean.rollladen_durch_sonnenuntergang state: "off": Ähnlich wie oben, verhindert dies das Schließen, wenn bereits durch Sonnenuntergang geschlossen.
    • type: turn_on device_id: ... entity_id: ... domain: switch: Schließt den Rolladen.
  • if: Sonnenaufgang:
    • action: input_boolean.turn_off input_boolean.rollladen_durch_sonnenuntergang: Schaltet den Sonnenuntergangs-Boolean aus.
    • action: input_boolean.turn_off input_boolean.rolladen_durch_uhrzeit: Schaltet den Uhrzeit-Boolean au
YAML:
actions:
  - device_id: 83cd9d1c2a63942c925bf4cb29eaa318
    domain: cover
    entity_id: aab4c2b09a502d57f2aa0e207159e29d
    type: set_position
    position: 25
  - metadata: {}
    data:
      brightness_pct: 20
      rgb_color:
        - 189
        - 64
        - 247
    enabled: true
    action: light.turn_on
    target:
      entity_id:
        - light.licht_kuchenzeile
        - light.licht_raumteiler
  - metadata: {}
    data:
      position: 30
    action: cover.set_cover_position
    target:
      entity_id: cover.rollladen_bad_vorhang
  - metadata: {}
    data:
      position: 50
    target:
      device_id:
        - 3fabdae7f76fbcaaf82ba402b50462b5
    action: cover.set_cover_position
  - action: cover.set_cover_position
    metadata: {}
    data:
      position: 45
    target:
      entity_id: cover.rolladen_essecke
  - device_id: 067383befc930502475fc85d3b98d557
    domain: cover
    entity_id: fcb10eae88835a3f7caebd0e0af3a37c
    type: close
  - metadata: {}
    data: {}
    target:
      device_id:
        - 9292a6543dbd88d237bccc3a3eb16975
        - 4617db2e19d0c1ee10676bced8b9c73d
        - c6697d4b43c0052f49b159b15c437cda
    action: cover.close_cover
  - delay:
      hours: 0
      minutes: 0
      seconds: 13
      milliseconds: 0
  - metadata: {}
    data: {}
    target:
      device_id: 4617db2e19d0c1ee10676bced8b9c73d
    action: cover.stop_cover
  - delay:
      hours: 0
      minutes: 0
      seconds: 8
      milliseconds: 0
  - device_id: c6697d4b43c0052f49b159b15c437cda
    domain: cover
    entity_id: d9c25bf0ad3e5242a65d760937171a94
    type: stop
  - action: light.turn_on
    metadata: {}
    data:
      brightness_pct: 10
    target:
      entity_id: light.dimmer_mitte_2vo
    enabled: true
  - action: light.turn_on
    metadata: {}
    data:
      brightness_pct: 15
    target:
      entity_id:
        - light.dimmer_leinwand_5vo
        - light.licht_sofa
    enabled: false
mode: single

Das würde bedeuten ich muss dieses 2 mal unter "- type: turn_on" einfügen, wenn ich das richtig verstanden habe
 
für HA ist das sicher Wurscht....

Code:
- metadata: {}
  data:
    position: 50
  target:
    device_id:
      - 3fabdae7f76fbcaaf82ba402b50462b5
  action: cover.set_cover_position

aber als Mensch liest es sich einfacher, wenn man mit action:... bzw. dem wesentlichen beginnt

YAML:
- action: cover.set_cover_position
  metadata: {}
  data:
    position: 50
  target:
    device_id:
      - 3fabdae7f76fbcaaf82ba402b50462b5
 
YAML:
alias: Rollladen (Heimnetz.de)
description: |-
  - bei Sonnenuntergang
  - o. 21:45 Uhr
  - alle Rollladen runter
  - Licht div. an
triggers:
  - trigger: sun
    event: sunset
    offset: "00:20:00"
    id: Sonnenuntergang
  - trigger: time
    at: "21:45:00"
    id: Uhrzeit
  - trigger: sun
    event: sunrise
    offset: 0
    id: Sonnenaufgang
conditions: []
actions:
  - if:
      - condition: trigger
        id:
          - Sonnenuntergang
    then:
      - action: input_boolean.turn_on
        target:
          entity_id:
            - input_boolean.schalter_rollladen_durch_sonnenuntergang
        data: {}
      - condition: state
        entity_id: input_boolean.schalter_rollladen_durch_uhrzeit
        state: "off"
      - action: cover.set_cover_position
        metadata: {}
        data:
          position: 25
        target:
          entity_id: cover.rolladen_terrasse
      - metadata: {}
        data:
          brightness_pct: 20
          rgb_color:
            - 189
            - 64
            - 247
        enabled: true
        action: light.turn_on
        target:
          entity_id:
            - light.licht_kuchenzeile
            - light.licht_raumteiler
      - action: cover.set_cover_position
        metadata: {}
        data:
          position: 45
        target:
          device_id: f85515cb6e7c578883a78c85df124273
      - action: cover.set_cover_position
        metadata: {}
        data:
          position: 50
        target:
          device_id: 3fabdae7f76fbcaaf82ba402b50462b5
      - action: cover.close_cover
        metadata: {}
        data: {}
        target:
          device_id:
            - 067383befc930502475fc85d3b98d557
            - 9292a6543dbd88d237bccc3a3eb16975
            - 4617db2e19d0c1ee10676bced8b9c73d
            - c6697d4b43c0052f49b159b15c437cda
      - delay:
          hours: 0
          minutes: 0
          seconds: 13
          milliseconds: 0
      - action: cover.stop_cover
        metadata: {}
        data: {}
        target:
          device_id: 4617db2e19d0c1ee10676bced8b9c73d
      - delay:
          hours: 0
          minutes: 0
          seconds: 8
          milliseconds: 0
      - action: cover.stop_cover
        metadata: {}
        data: {}
        target:
          device_id: c6697d4b43c0052f49b159b15c437cda
      - action: light.turn_on
        metadata: {}
        data:
          brightness_pct: 10
        target:
          device_id: 1b2ec94e286037055c02cce25ac8f661
  - if:
      - condition: trigger
        id:
          - Uhrzeit
    then:
      - action: input_boolean.turn_on
        data: {}
        target:
          entity_id: input_boolean.schalter_rollladen_durch_uhrzeit
      - condition: state
        entity_id: input_boolean.schalter_rollladen_durch_sonnenuntergang
        state: "off"
      - action: cover.set_cover_position
        metadata: {}
        data:
          position: 25
        target:
          entity_id: cover.rolladen_terrasse
      - metadata: {}
        data:
          brightness_pct: 20
          rgb_color:
            - 189
            - 64
            - 247
        enabled: true
        action: light.turn_on
        target:
          entity_id:
            - light.licht_kuchenzeile
            - light.licht_raumteiler
      - action: cover.set_cover_position
        metadata: {}
        data:
          position: 45
        target:
          device_id: f85515cb6e7c578883a78c85df124273
      - action: cover.set_cover_position
        metadata: {}
        data:
          position: 50
        target:
          device_id: 3fabdae7f76fbcaaf82ba402b50462b5
      - action: cover.close_cover
        metadata: {}
        data: {}
        target:
          device_id:
            - 067383befc930502475fc85d3b98d557
            - 9292a6543dbd88d237bccc3a3eb16975
            - 4617db2e19d0c1ee10676bced8b9c73d
            - c6697d4b43c0052f49b159b15c437cda
      - delay:
          hours: 0
          minutes: 0
          seconds: 13
          milliseconds: 0
      - action: cover.stop_cover
        metadata: {}
        data: {}
        target:
          device_id: 4617db2e19d0c1ee10676bced8b9c73d
      - delay:
          hours: 0
          minutes: 0
          seconds: 8
          milliseconds: 0
      - action: cover.stop_cover
        metadata: {}
        data: {}
        target:
          device_id: c6697d4b43c0052f49b159b15c437cda
      - action: light.turn_on
        metadata: {}
        data:
          brightness_pct: 10
        target:
          device_id: 1b2ec94e286037055c02cce25ac8f661
  - if:
      - condition: trigger
        id:
          - Sonnenaufgang
    then:
      - action: input_boolean.turn_off
        data: {}
        target:
          entity_id: input_boolean.schalter_rollladen_durch_sonnenuntergang
      - action: input_boolean.turn_off
        data: {}
        target:
          entity_id: input_boolean.schalter_rollladen_durch_uhrzeit
mode: single
Da ich nicht das Fachwissen besitze von YAML, habe ich die Vorlage genommen und dann die Bearbeitung in dem visuellen Editor angepasst und weiterbearbeitet. Mal schauen, was das System die nächsten Tage macht.
Auf jeden Fall ersteinmal viiiiiiiiiiielen Dank an alle, die sich mit meinem Problem beschäftigt haben.
 
Moin, nur zur Info, es hat soweit funktioniert, um 21.45 Uhr wurden die Aufgaben ausgeführt, 20 Min. nach Sonnenuntergang wurde nur der Schalter gesetzt und heute morgen bei Sonnenausgang wurden die Schalter zurückgesetzt.

Nochmals vielen Dank und eine schöne Woche.
Michael
 

Zurzeit aktive Besucher

Neueste Beiträge

Letzte Anleitungen

Statistik des Forums

Themen
6.739
Beiträge
64.734
Mitglieder
7.020
Neuestes Mitglied
Martin Schwarz
Zurück
Oben