bitte um Hilfe bei PoolSolarsteuerung

@IvoryBalboa90

Danke habe das mal so geändert und werde beobachten.
Aber da muß man schon was von Programmieren verstehen. Nur mit zusammenflicken in der Oberfläche geht das nicht.....

@u5zzug
Hat mich gewundert das diese Frage so lange gedauert hat ;)
Ja ich nenne es halt so ist die fixe Differenz zwischen Solartemperatur und Pooltemperatur

Da hier die Spezialisten gerade versammelt sind habe ich noch eine Frage, aber dazu mach ich ein neues Thema auf
Danke melde mich später ob es so funktioniert hat
 
Zuletzt bearbeitet:
@IvoryBalboa90
Schaltet leider auch nicht.......
Bildschirmfoto 2023-05-08 um 13.01.29.png

und der Code dazu:
YAML:
alias: Solarsteuerung
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.esp_test1
condition: null
action:
  - service: >-
      {% set hysterese = states('input_number.hysterese') %} {% set solar =
      states('sensor.esp_test1')|float(0) %} {% set pool =
      states('sensor.1_wire_hub_temperature')|float(0) %} {% if solar == pool %}
      switch.turn_off {% elif hysterese + solar > pool %} switch.turn_on {%
      endif %}
    data: {}
    target:
      entity_id: switch.solar_pumpe
mode: single
 
Hab nochmal etwas angepasst, so ist es sinniger:

Code:
alias: Solarsteuerung
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.esp_test1
      - input_number.hysterese
      - sensor.1_wire_hub_temperature
condition: null
action:
  - service: >-
      {% set hysterese = states('input_number.hysterese') %} {% set solar =
      states('sensor.esp_test1')|float(0) %} {% set pool =
      states('sensor.1_wire_hub_temperature')|float(0) %} {% if solar <= pool %}
      switch.turn_off {% elif hysterese + solar > pool %} switch.turn_on {%
      endif %}
    data: {}
    target:
      entity_id: switch.solar_pumpe
mode: single

Da wird erst etwas schalten, sobald sich eine der drei Werte verändert. Also warte mal nen Moment ab
 
Servus @IvoryBalboa90
Leider nein. Beim Auslöser steht ausgelöst, aber die Pumpe schaltet nicht ein.

Zum Ausschalten wäre es eigentlich besser dies nach 5 Minuten zu tun. Denn im Moment wenn die Sonne aufs Dach knallt
erreiche ich eigentlich nicht die Pooltemperatur.
Oder alternativ zum Ausschalten Solartemperatur plus 3 zur Pooltemperatur.

Danke für deine Zeit und Mühe!!!
 
Seltsam, ich kanns zwar nicht testen, aber auf dem Papier sehe ich keinen Fehler.

Ich hab aber noch eine andere Variante, die auch einfacher für dich zu verstehen sein könnte.
Du kannst dir da sogar den Helfer für die Hysterese sparen. Im ersten Auslöser kannst du die gewünschte Hysterese bei "über" eingeben.

YAML:
alias: Solarsteuerung
mode: single
trigger:
  - platform: numeric_state
    entity_id: sensor.esp_test1
    value_template: "{{ state.state - states('sensor.1_wire_hub_temperature')|float(0) }}"
    above: 5
    id: An
  - platform: numeric_state
    entity_id: sensor.esp_test1
    value_template: "{{ state.state - states('sensor.1_wire_hub_temperature')|float(0) - 0.1 }}"
    id: Aus
    for:
      hours: 0
      minutes: 5
      seconds: 0
    below: 0
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id: An
        sequence:
          - service: switch.turn_on
            data: {}
            target:
              entity_id: switch.solar_pumpe
      - conditions:
          - condition: trigger
            id: Aus
        sequence:
          - service: switch.turn_off
            data: {}
            target:
              entity_id: switch.solar_pumpe
 
Servus funktioniert leide auch nicht.
Habe jetzt zur Sicherheit auch noch die Namen der Sensoren gecheckt- das passt.

Was ich nicht verstehe - beim Ausschalten "unter 0"?
YAML:
alias: Solarsteuerung
trigger:
  - platform: numeric_state
    entity_id: sensor.esp_test1
    value_template: "{{ state.state - states('sensor.1_wire_hub_temperature')|float(0) }}"
    above: 5
    id: An
  - platform: numeric_state
    entity_id: sensor.esp_test1
    value_template: "{{ state.state - states('sensor.1_wire_hub_temperature')|float(0) - 0.1 }}"
    id: Aus
    for:
      hours: 0
      minutes: 5
      seconds: 0
    below: 0
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id: An
        sequence:
          - service: switch.turn_on
            data: {}
            target:
              entity_id: switch.solar_pumpe
      - conditions:
          - condition: trigger
            id: Aus
        sequence:
          - service: switch.turn_off
            data: {}
            target:
              entity_id: switch.solar_pumpe
mode: single

Was ich nicht verstehe: ich gebe Mode :single in die Zweite Zeile und nach dem Speichern ist es in der letzten Zeile???
 
Das kann erst auslösen, sobald der Wert vom Solarsensor einmal unter Pool Minus Hysterese fällt. Warte also mal ab, bis Abschaltung fällig wäre.

Beim Ausschalten unter Null weil dort Solar minus Pool gerechnet wird.

Das mit dem Mode ist egal, das kann am Anfang oder am Ende stehen, macht keinen Unterschied
 
Warte mal da stehe ich jetzt auf dem "Solarschlauch" 😇
Ich habe die Hysterese jetzt auf 3 gesetzt
Pool hat 16.6 plus die 3 sollte bei 19.6 (oder 19.7) Solartemperatur die Solarpumpe anspringen
Solar ist im Moment 23.3
 
Servus
ich bin wahrscheinlich zu doof dafür.
Für mich (die Anlage) wäre es sinnvoll wenn ausgelöst wird, wenn die Solartemperatur minus Hysterese größer als die Pooltemperatur ist.
So hatte ich es in FHEM
([08:00-20:00] and [PoolMaster] eq "on" and ([SolarDiff:state]>[Hysterese:state])) (set SolarPumpe on) DOELSE (set SolarPumpe off)
 
hysterese - solar?
das ist keine Frage, sondern eine potentielle Fehlerkorrektur. Du rechnest Plus.
Wenn 20 + 5 > 17.
Oder auch 14 + 5 > 17. Da wird sich nicht viel erwärmen.
YAML:
      {% if solar == pool %}
      switch.turn_off
      {% elif hysterese + solar > pool %}
      switch.turn_on
      {% endif %}
 
@u5zzug
Bitte sei so nett und stell mir den gesamten YAML Code zusammen. Ich weiß ehrlich nicht
wo ich das jetzt einbauen muss DANKE
Helmut
 
Hallo zusammen!
Ich stehe vor dem exakt selben Problem.
Ich habe eine Poolpumpe, eine Solarpumpe, einen Sensor im Pool und einen Sensor an der Solaranlage.
Zusätzlich hätte ich sogar noch einen Sensor am Ausgang des Solarwassers in den Pool.
Ich suche schon tagelang nach so einer fertigen Umsetzung, erfolglos. Nun bin ich auf diesen Beitrag gestoßen, doch leider reißt der Faden an dieser Stelle ab.
@helmi55: Bist du zu einem gütigen Ende gekommen?

Schöne Grüße aus Niederösterreich!
 
Hallo @berndh
einen schönen Gruß aus NÖ retour.
Ja bei mir läuft alles im Moment sehr gut. Wahrscheinlich etwas umständlich - aber es läuft.
Wie gesagt ich habe eine Poolpumpe, eine Solarpumpe, einen Sensor (immer DS18B20 in Tauchhülsen in einem DA50 Rohr) in der Zirkulation, einen Sensor im Bodenablauf der über die Solarpumpe auf das Garagendach geht, einen Sensor am Dach (auch in einem DA50 Rohr Ableitung von der Solaranlage und zusätzlich noch einen Sensor für die Lufttemperatur am Garagendach.
Für die Solarsteuerung habe ich folgende Automatisierung (Input.number.hysterese ist ein Helfer wo ich die Differenz zwischen Pool und Solartemperatur regeln kann. Im Moment bei 5 Grad)
Das Delay schaltet die Solarpumpe nach 3 Minuten wieder aus (genügt im Moment so)
YAML:
alias: Solarsteuerung
trigger:
  - platform: state
    entity_id:
      - sensor.1_wire_hub_temperature
  - platform: state
    entity_id:
      - sensor.esp_2_pool
condition:
  - condition: template
    value_template: >-
      {{ states('sensor.1_wire_hub_temperature')|float(10) >
      ((states('sensor.esp_2_pool')|float(10)) +
      (states('input_number.hysterese'))|float(5)) }}
  - condition: time
    after: "08:30:00"
    before: "19:00:00"
    weekday:
      - mon
      - tue
      - wed
      - thu
      - fri
      - sat
      - sun
  - condition: state
    entity_id: input_boolean.poolmaster
    state: "on"
action:
  - service: switch.turn_on
    data: {}
    target:
      entity_id: switch.solar_pumpe
  - delay:
      hours: 0
      minutes: 3
      seconds: 0
      milliseconds: 0
  - service: switch.turn_off
    data: {}
    target:
      entity_id: switch.solar_pumpe
mode: single

Dann gibt es noch die Steuerung der Poolpumpe. Aber ich glaube das ist ja kein Problem?
Ist ja nur reine Zeitsteuerung.
Heuer habe ich aber noch etwas erweitert:
Wenn sich im Haus der Geschirrspüler oder die WAMA einschalten (über 1500W) dann schaltet sich für diesen Zeitraum (meistens 10-15 Minuten) die Poolpumpe aus und danach wenn wieder unter 1500W, schaltet sie sich wieder ein.
Genauso mit dem Warmwasserboiler. Der schaltet sich um 13:30 ein und braucht ungefähr 1 Stunde (2300W) bis das Wasser wieder warm ist.
In diesem Zeitraum schaltet sich die Poolpumpe auch aus.
Da die Pumpe normalerweise zwischen 9 Uhr und 18 Uhr läuft, schaden die wenigen Abschaltungen der Wasserqualität nicht.

Dadurch glaube ich habe ich ein ganz gutes Power Management

Bei Fragen melde dich einfach
LG
Helmut
 

Anhänge

  • Bildschirmfoto 2024-05-02 um 16.49.49.png
    Bildschirmfoto 2024-05-02 um 16.49.49.png
    264,9 KB · Aufrufe: 1
Hallo!
Liest sich super!
Jetzt nur meine Laienhafte Frage: Wo kopiere ich den YAML Code rein? In den RAW-Konfigurationseditor unten anfügen?
Die Sensoren sind kein Problem, das bekomm ich hin.
Danke!!
 
@berndh
Kein Problem. Ich habe mir am Anfang auch schwer getan. Kommt alles mit der Zeit.
Also
Einstellungen - Automatisierungen&Szenen
rechts unten -> Automatisierung erstellen -> neue Automatisierung erstellen -> rechts oben die 3 Punkte
als YAML bearbeiten -> die 5 Punkte einfach überschreiben....

Hoffe es Hilft
LG
Helmut
 
@berndh
Ja den input-boolean "Hysterese" erstellst du unter Geräte&Dienste -> Helfer.

Nicht verwirren lassen, ich habe noch einen "Hauptschalter" (input_boolean.poolmaster)
ist auch ein Helfer.
Wenn der nicht auf "on" ist, geht bei den Automatisierungen gar nix.
Ist für Wartungsarbeiten oder für den Winterschlaf.
 
Stimmt wohl. Dort hätte ich niemals gesucht.
Noch eine Frage hierzu:

entity_id: input_boolean.poolmaster

Ist das die Entität, die durch diesen YAML Code bereitgestellt wird?
EDIT: Sehe gerade, das du mir da schon zuvor gekommen bist.
Welchen Inhalt hat der Helfer input_boolean.poolmaster ?
 

Letzte Anleitungen

Statistik des Forums

Themen
4.657
Beiträge
47.593
Mitglieder
4.301
Neuestes Mitglied
markusfz
Zurück
Oben