Switch Auto EIN/AUS bei Temperatur überschritten und unterschritten

Hallo Leute.

Ich blicke da leider nicht durch bei der Automatisierung. Ich brauche eine Automatisierung die mir eine Steckdose ab einer gewissen Temperatur Automatisch einschaltet und wenn die Temperatur wieder im + ist, automatisch aus.

Wie kann ich das umsetzen?

Ich habe eine Smarte Steckdose an der Heizung dran und einen eigenen Temperatur Sensor an der Wetterstation im Garten. Beide Entitäten im HAS verfügbar.

Ich möchte also das mir die Automatisierung bei 0° oder darunter die Wurzel Heizung einschaltet und bei 1°+ wieder aus.

Vielen vielen Dank für Hilfe diesbezüglich

Verwende einen Schwellenwert Sensor → Helfer
Dadurch bekommst Du einen binary Sensor.
Diesen kannst Du in Deiner Automatisierung verwenden.

Wenn Sensor wechselt zu Off, Steckdose ausschalten

Wenn Sensor wechselt zu on, Steckdose einschalten

Die Automatisierung könnte dann so ausschauen.
Mit einem kleinen Template, auf das Minimum reduziert.


alias: Meine Automatisierung 
description: ""
trigger:
  - platform: state
    entity_id:
      - binary_sensor.xyz
    from: "on"
    to: "off"
  - platform: state
    entity_id:
      - binary_sensor.xyz
    from: "off"
    to: "on"
condition: []
action:
  - service: switch.turn_{{ trigger.to_state.state}}
    metadata: {}
    data: {}
    target:
      entity_id: switch.xyz
mode: single

Gruß
Osorkon

1 „Gefällt mir“

Danke für die rasche Info.

Wie muss die Automatisierung dann aussehen?

Ich habe nun einen Sensor erstellt.

In der Automatisierung muss ich dann nur bei Auslöser hinzufügen diesen Sensor einfügen als Nummerier oder Zustand bei Entität? Und hier noch Werte eintragen oder nichts mehr?

Bei dann mache, kenne ich mich dann eh wieder aus. Nur vorher hakts.

Wie @Osorkon geschrieben hat. Der binary_sensor.xyz müsste entweder an/on oder aus/off sein. Das ist der Trigger, also von: an | zu: aus oder umgekehrt.

@sirector

Ich möchte aber das es mit der Temperatur geht. Also bei unter 0° an und bei 1° aus.
Ist daher der Sensor den ich erstellt habe dann falsch wie im Screenshot?
Ich suche echt schon seit Wochen und habe mir unzählige Videos angesehen. Bekam es mit Automatisierungen für Postkasten inkl Callmebot und auch Rauchmelder und co hin, aber bei der Temperatur blick ich nicht durch.

Wäre echt toll wenn mir das jemand erklären kann.

Ich habe also nun den Helfer Sensor erstellt mit dem Temperatur Sensor der Wetterstation. Jetzt möcht ich eine Automatisierung die mir eben bei unter 0°C einen Schalter EIN schaltet und bei 1°+ den Schalter wieder AUS.

Temperatur fällt unter 0 → Switch Einschalten
Temperatur steigt über 1 → Switch Ausschalten


alias: Meine Automatisierung 
description: ""
trigger:
  - platform: numeric_state
    entity_id:
      - sensor.xyz
    below: 0
    id: einschalten
  - platform: numeric_state
    entity_id:
      - sensor.xyz
    id: ausschalten
    above: 1
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - einschalten
        sequence:
          - service: switch.turn_on
            metadata: {}
            data: {}
            target:
              entity_id: switch.xyz
      - conditions:
          - condition: trigger
            id:
              - ausschalten
        sequence:
          - service: switch.turn_off
            metadata: {}
            data: {}
            target:
              entity_id: switch.xyz
mode: single

Gruß
Osorkon

1 „Gefällt mir“

Du kannst das auch direkt mit dem Temperatursensor machen, der Trigger ist dann der “Numerische Zustand”. Das Beispiel hier hat 2 Trigger (wenn über 0 oder wenn unter 0) und die entsprechende AuslöserID triggert dann “Mach an” oder Mach aus"

description: ""
mode: single
trigger:
  - platform: numeric_state
    entity_id:
      - sensor.prod_weathersensoroutsideeast_east_hdc1080_temperature
    below: 0
    id: temperaturunter0
  - platform: numeric_state
    entity_id:
      - sensor.prod_weathersensoroutsideeast_east_hdc1080_temperature
    above: 0
    id: temperaturueber0
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - temperaturunter0
        sequence:
          - service: switch.turn_on
            metadata: {}
            data: {}
            target:
              entity_id: switch.gt_light
        alias: Heizung an
      - conditions:
          - condition: trigger
            id:
              - temperaturueber0
        sequence:
          - service: switch.turn_off
            target:
              entity_id:
                - switch.gt_light
            data: {}
        alias: Heizung aus

Ach ich seh grad, 2 doofe ein Gedanke :slight_smile:

1 „Gefällt mir“

Ich glaube dein Schwellenwertsensor stimmt so nicht ganz, wenn ich die Doku dazu lese:

Nur unterer Grenzwert konfiguriert - Einschalten, wenn der Wert des Eingangssensors kleiner als der untere Grenzwert ist.

Nur oberer Grenzwert konfiguriert - Einschalten, wenn der Wert des Eingangssensors größer als der obere Grenzwert ist.

Sowohl unterer als auch oberer Grenzwert konfiguriert - Einschalten, wenn der Wert des Eingangssensors im Bereich [unterer Grenzwert … oberer Grenzwert] liegt.

Meiner Meinung nach müsstest du nur die obere Grenze oder die untere Grenze setzen, nicht beides. Wenn du beides setzt, wird der Sensor nur eingeschaltet, wenn der Wert zwischen 0 und 1 liegt.

Ich würde also nur den unteren Grenzwert von 1 festlegen. Dann wird der Sensor eingeschaltet wenn unter 1 und ausgeschaltet wenn über oder gleich 1.

1 „Gefällt mir“

Ich glaube die Dokumentation ist da eindeutig.
Wie schon von @sirector angemerkt.

Mill man man für das ein und ausschalten, zwei verschiedene Werte verwenden. Kommt man über zwei Schwellenwert Sensoren nicht herum.

Oder man verwendet zwei numeric state als Auslöser.

Gruß
Osorkon

Ich habe das für’s Aquarium so gelöst, dass ab einer bestimmten Temperatur die Kühlung eingeschaltet wird:

alias: Aquarium Lüfter an wenn Wasser über 20°C
description: ""
trigger:
  - platform: numeric_state
    entity_id:
      - sensor.esp_aquarium_aquarium_temperatur
    above: 20
    for:
      hours: 0
      minutes: 5
      seconds: 0
condition: []
action:
  - service: fan.turn_on
    data: {}
    target:
      entity_id: fan.lufter
mode: single

Zum Ausschalten hab ich ne zweite Automation. Ich weiß, man kann es in eine packen. Aber nichts hält so lange wie ein Provisorium :stuck_out_tongue_winking_eye:

1 „Gefällt mir“

Ja, ich mache sowas auch mit zwei Automationen,
ist sicher nicht so elegant, aber einfach umzusetzen und es funktioniert.

1 „Gefällt mir“

Danke euch für die Vorschläge. Selbst bei der einfachen löst mir die automation nicht aus. Wenn ich manuell auf ausführen gehe, gehts aber. Ich weiß echt nicht mehr was ich falsch mache :frowning:

alias: Heizung Olive über 0°C
description: ""
trigger:
  - platform: numeric_state
    entity_id:
      - sensor.gw1100a_v2_2_3_outdoor_temperature
    below: 16
    for:
      hours: 0
      minutes: 0
      seconds: 5
condition: []
action:
  - type: turn_off
    device_id: 0b0exxxxxxxxxxxxxxxxxxxxxxxxxx
    entity_id: c24c3xxxxxxxxxxxxxxxxxxxxxxxxxxx
mode: single

Ich habs nur mal eben auf einen höheren Wert zum testen geändert da wir mehr als 10° haben. Aber es löst einfach nicht aus.

Wert steigt unter/ über sind Schwellenwerte.
In Deinem Bsp. muss die Temperatur von > =16 auf < 16 sinken und 5s unter 16 bleiben. Das wäre der Auslöser der Automatisierung.

Du kannst den Auslöser auch simulieren.
Entwicklungswerkzeuge → Zustände → Status setzen

Kannst mal den Status, wenn er sich nicht bereits > 16 befindet, mal auf 17 setzen. Und den Status auf 15 setzen. Und die Steckdose wird ausgeschaltet.

Gruß
Osorkon

1 „Gefällt mir“

Ich hab das jetzt so: Aber auch da tut sich nichts. Beim testen @Osorkon ändert sich auch nichts mit der alten Automatation. Egal was ich mache, manuell auslösen geht, aber automatisch macht das gar nichts. :frowning: Bin echt am verweifeln und das seit 2 Wochen. Schlaflose Nächte nach meinem Schlaganfall sowieso etwas schwierig, aber nun schau ich jede Nacht paar mal aufs Thermometer und schalte manuell aus und wieder ein und das möchte ich eben mit der automation nun eben automatisch erledigen. Aber anscheinend bin ich zu blöd dafür seit dem Schlaganfall. :frowning:

alias: Olive Heizung
description: ""
trigger:
  - platform: numeric_state
    entity_id:
      - sensor.ws1900a_v1_2_2_outdoor_temperature
    below: 0
    id: temperaturunter0
  - platform: numeric_state
    entity_id:
      - sensor.ws1900a_v1_2_2_outdoor_temperature
    above: 0
    id: temperaturueber0
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id:
              - temperaturunter0
        sequence:
          - service: switch.turn_on
            metadata: {}
            data: {}
            target:
              entity_id: switch.heizung_olive_socket_1
        alias: Heizung an
      - conditions:
          - condition: trigger
            id:
              - temperaturueber0
        sequence:
          - service: switch.turn_off
            target:
              entity_id:
                - switch.heizung_olive_socket_1
            data: {}
        alias: Heizung aus
mode: single

Mit der Automatisierung ist alles OK.

Gehe wie beschrieben zu
Entwicklungswerkzeuge → Zustände → Status setzen

Und setze für den Sensor sensor.gw1100a_v2_2_3_outdoor_temperature
den Wert -1

Und die Steckdose wird eingeschaltet

Setze den Wert 1
Und die Steckdose wird ausgeschaltet.

Gruß
Osorkon

1 „Gefällt mir“

Die Automation sieht schlüssig aus, also so schlimm kaputt gemacht hat der Schlaganfall dich schon mal nicht :wink:

Geh doch mal unter “Entwicklerwerkzeuge” → “Zustände”, und suche den Temperatur sensor, da kannst du den Wert manipulieren, bis der Sensor wieder sein Originalwert annimmt

Wenn die Automation darauf reagiert siehst du einen blauen oder orangen Balken oben am Trigger.

1 „Gefällt mir“

Wow. Vielen Dank für die Großartige hilfe @der_Micro und @Osorkon . Genau so lässt es sich nun nachstellen. Ich wählte vorher die Entität unter Zustände manuell und nicht bei der_Micro beschrieben in der Entitäten Filterliste. Damit klappt das Auslösen nun. Jetzt hoff ich nur noch das es dann auch tatsächlich bei 0° schaltet.

Ich danke euch. Ja der Schlaganfall hat mich doch, aber eine Menge an Wissen gekostet, ich war echt schon weiter früher, aber momentan ist das alles sehr schwierig, also bitte verzeiht mir wenn ich oft etwas wirre schreibe und das nicht gleich begreife. Ich muss wieder aufbauen darauf und langsam komme ich ja dank euch auch wieder etwas weiter! Vielen Dank der Community!