Automation IoBroker Blockly in Home-Assistant umsetzen

Hallo zusammen,

Ich habe von IoBroker auf Home-Assistant gewechselt, es sind noch Automationen die mit Blockly in IoBroker laufen, wenn ich diese unter Home Assistant zum Laufen bekommen steht mir nichts mehr im Wege komplett auf Home Assistant zu wechseln, derzeit benutze ich beide Systeme unter Proxmox parallel.

Es geht um folgendes.

Ich benutze eine Automation in IoBroker die meine Rollos im Wohnzimmer nach Astrozeit mit Blockly-Script seit einigen Jahren sehr zuverlässig steuert, diese Automation möchte ich in Home Assistant auch benutzen.

Die Automation soll folgendes machen.

Im Wohnzimmer habe ich 2x Fenster und 1x Terrassentür.

  • Wohnzimmer Rollos bei Sonnenuntergang herunterfahren und bei Sonnenaufgang hochfahren

Terrassentür:

  • Die Terrassentür-Rollo soll bei Sonnenuntergang auf 50 % runter-fahren.

  • Wenn der Griff am Terrassentür ( Aqara Tür und Fenster Sensor integriert) auf öffnen

gedreht wird soll der Rollo Terrassentür hochfahren.

  • Wenn geschlossen auf 50% herunterfahren. Aber nur in der Astrozeit!

Sonst außerhalb der Astrozeit, wenn ich am Griff die Tür öffne oder schließe, soll nichts

passieren.

  • Erst ab Mitternacht 00:00 Uhr soll, wenn die Terrassentür geschlossen wird herunterfahren so lange die Tür auf offen steht soll der Rollo oben bleiben.

  • Nach Mitternacht, wenn Rollo heruntergefahren ist und ich am Griff auf öffnen drehe, soll Rollo komplett hochfahren und bei Schließen komplett herunterfahren.

  • Die 2 Fenster im Wohnzimmer sollen nach Sonnenuntergang herunterfahren und bei Sonnenaufgang hochfahren.

Kann man das Ganze in einer Automation machen? Wenn ja, wie sollte es aussehen?

Ich würde mich sehr darüber freuen, wenn mir jemand hier helfen kann.

Vielen Dank

Ich habe es mal selber versucht diese Automation zu erstellen.
Würde mich sehr darüber freuen wenn Profis sich das mal Bitte anschauen bzw. Ergänzen würden.

alias: Terrasse
description: ""
trigger:
  - platform: sun
    event: sunrise
    offset: 0
    id: aufgang
  - platform: sun
    event: sunset
    offset: 0
    id: untergang
  - platform: state
    entity_id:
      - binary_sensor.fenster_wohnzimmer_contact
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - aufgang
        sequence:
          - service: cover.open_cover
            data: {}
            target:
              entity_id: cover.rolladen_terrasse
      - conditions:
          - condition: trigger
            id:
              - untergang
        sequence:
          - service: cover.set_cover_position
            data:
              position: 50
            target:
              entity_id: cover.rolladen_terrasse
  - choose:
      - conditions:
          - type: is_open
            condition: device
            device_id: a2e5722ae5048d3eff59fc07f68f29aa
            entity_id: 68b425ab16183be94202db3c9c5ed610
            domain: binary_sensor
        sequence:
          - service: cover.open_cover
            metadata: {}
            data: {}
            target:
              entity_id: cover.rolladen_terrasse
      - conditions:
          - type: is_not_open
            condition: device
            device_id: a2e5722ae5048d3eff59fc07f68f29aa
            entity_id: 68b425ab16183be94202db3c9c5ed610
            domain: binary_sensor
        sequence:
          - service: cover.set_cover_position
            target:
              entity_id:
                - cover.rolladen_terrasse
            data:
              position: 50
      - conditions:
          - condition: time
            after: "00:00:00"
          - type: is_not_open
            condition: device
            device_id: a2e5722ae5048d3eff59fc07f68f29aa
            entity_id: 68b425ab16183be94202db3c9c5ed610
            domain: binary_sensor
        sequence:
          - service: cover.close_cover
            metadata: {}
            data: {}
            target:
              entity_id: cover.rolladen_terrasse
mode: single

Bitte seid mir nicht böse wenn ich es falsch gemacht habe bin noch ein Anfänger!
Getestet habe ich es noch nicht, kann es so funktionieren wie ich es mir vorstelle?

Ich bin offen für Vorschläge, Ergänzungen.

Ich freue mich auf jede Hilfe.

Ich weiss nicht genau ob ich es richtig überrissen habe.

Der Sonnenaufgang ist einfach, da sollen alle 3 Rollläden hochfahren.

Bei Sonnenuntergang sollen die 2 Fenster Rollläden herunterfahren. Der Terrassentür Rollladen soll auf Position 50%, wenn Terrassentürgriff geschlossen, sonst bleibt er oben.

Von Sonnenuntergang bis Mitternacht:

  • beim öffnen des Terrassentürgriffs, wird der Terrassentür Rollladen geöffnet
  • beim schließen des Terrassentürgriffs, wird der Terrassentür Rollladen auf Position 50% gefahren

Um Mitternacht wird der Terrassentür Rollladen geschlossen, wenn der Terrassentürgriff geschloßen ist.

Ab Mitternacht bis Sonnenaufgang:

  • beim öffnen des Terrassentürgriffs, wird der Terrassentür Rolladen geöffnet
  • beim schließen des Terrassentürgriffs, wird der Terrassentür Rollladen geschlossen.

Wenn das soweit richtig ist, sehe die Automatisierung folgendermaßen aus.
Die Cover Entitäten für die beiden Fenster habe ich mal cover.fenster_1 und cover.fenster_2 benannt.

description: ""
mode: restart
trigger:
  - platform: sun
    event: sunrise
    offset: 0
    id: aufgang
  - platform: sun
    event: sunset
    id: untergang
  - platform: state
    entity_id:
      - binary_sensor.fenster_wohnzimmer_contact
    from: "off"
    to: "on"
    id: fesnter_öffnen
  - platform: state
    entity_id:
      - binary_sensor.fenster_wohnzimmer_contact
    from: "on"
    to: "off"
    id: fenster_schließen
  - platform: time
    at: "00:00:00"
    id: mitternacht
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - aufgang
        sequence:
          - service: cover.open_cover
            metadata: {}
            data: {}
            target:
              entity_id:
                - cover.rolladen_terrasse
                - cover.fenster_1
                - cover.fenster_2
      - conditions:
          - condition: trigger
            id:
              - untergang
        sequence:
          - service: cover.close_cover
            metadata: {}
            data: {}
            target:
              entity_id:
                - cover.fenster_1
                - cover.fenster_2
          - if:
              - condition: state
                entity_id: binary_sensor.fenster_wohnzimmer_contact
                state: "off"
            then:
              - service: cover.set_cover_position
                metadata: {}
                data:
                  position: 50
                target:
                  entity_id: cover.rolladen_terrasse
      - conditions:
          - condition: trigger
            id:
              - mitternacht
          - condition: state
            entity_id: binary_sensor.fenster_wohnzimmer_contact
            state: "off"
        sequence:
          - service: cover.close_cover
            metadata: {}
            data: {}
            target:
              entity_id: cover.rolladen_terrasse
      - conditions:
          - condition: trigger
            id:
              - fenster_schließen
        sequence:
          - choose:
              - conditions:
                  - condition: sun
                    after: sunset
                sequence:
                  - service: cover.set_cover_position
                    metadata: {}
                    data:
                      position: 50
                    target:
                      entity_id: cover.rolladen_terrasse
              - conditions:
                  - condition: sun
                    before: sunrise
                sequence:
                  - service: cover.close_cover
                    metadata: {}
                    data: {}
                    target:
                      entity_id: cover.rolladen_terrasse
      - conditions:
          - condition: trigger
            id:
              - fesnter_öffnen
          - condition: sun
            before: sunrise
            after: sunset
        sequence:
          - service: cover.open_cover
            metadata: {}
            data: {}
            target:
              entity_id: cover.rolladen_terrasse

Gruß
Osorkon

@Osorkon
Die Automation funktioniert genau so wie ich es haben wollte, einfach Perfekt.

Vielen herzlichen Dank

Gruß
Acem

1 „Gefällt mir“

Hallo,

ich bin gerade noch über eine Blockly Palette in node-red gestolpert.
Vielleicht hilft das dem einen oder anderem Umsteiger.

Grüße M20

1 „Gefällt mir“