Open MorreMor opened 4 months ago
Nutzt du die rudimentäre Skriptvariante oder die von mir angepasste. Am einfachsten anzupassen wäre es natürlich, wenn du deine Version hier als Kommentar postest.
Die von dir angepasste
alias: Anpassung Wechselrichter Leistung sequence: - repeat: while: [] sequence: - if: - condition: state entity_id: binary_sensor.opendtu_zaun_reachable state: "on" alias: Wechselrichter erreichbar alias: "-" then: - variables: altes_limit: >- {{ states('number.opendtu_zaun_limit_nonpersistent_absolute') | float(1) }} grid_sum: "{{ states('sensor.zukaufen_verschenken') | float(1) }}" maximum_wr: "{{ 1200 | float(1) }}" minimum_wr: "{{ 50 | float(1) }}" minimum_pack: "{{ 10 | int(1) }}" maximum_pack: "{{ 100 | int (1) }}" lower_limit_wr: "{{ 120 | float(1) }}" pack_level: "{{ states('sensor.solarflow_electric_level') | int(1) }}" solar_input: "{{ states('sensor.solar_aktuell_gesamt_hutte_und_zaun') | float(1) }}" alias: Variablen definieren - if: - condition: template value_template: "{{ pack_level == maximum_pack }}" alias: Akkustand = 100 % then: - if: - condition: template value_template: "{{ solar_input > maximum_wr }}" alias: Solarleistung > maximale Wechselrichterleistung then: - service: number.set_value data: value: "{{ maximum_wr }}" target: entity_id: number.opendtu_zaun_limit_nonpersistent_absolute alias: Setze Limit auf 1500 W else: - if: - condition: template value_template: "{{ altes_limit <= solar_input }}" alias: Limit <= Solarleistung then: - service: number.set_value data: value: "{{ solar_input }}" target: entity_id: number.opendtu_zaun_limit_nonpersistent_absolute alias: Setze Limit = Solarleistung alias: "-" else: - variables: setpoint: "{{ (grid_sum + altes_limit - 30.0) | float(1) }}" alias: Neues Limit = Aktueller Verbrauch + Altes Limit - 40 - service: number.set_value data: value: "{{ setpoint }}" target: entity_id: number.opendtu_zaun_limit_nonpersistent_absolute alias: Setze Limit = Verbrauch alias: "-" alias: "-" else: - if: - condition: template value_template: "{{ pack_level >= minimum_pack}}" alias: Akkustand >= 10 % then: - variables: setpoint: "{{ (grid_sum + altes_limit - 30.0) | float(1) }}" alias: Neues Limit = Aktueller Verbrauch + Altes Limit - 40 - if: - condition: template value_template: "{{ setpoint > maximum_wr }}" alias: Neues Limit > 600 W then: - service: number.set_value data: value: "{{ maximum_wr }}" target: entity_id: number.opendtu_zaun_limit_nonpersistent_absolute alias: Setze Limit auf 600 W else: - if: - condition: template value_template: "{{ setpoint < minimum_wr }}" alias: Neues Limit < 50 then: - service: number.set_value data: value: "{{ minimum_wr }}" target: entity_id: >- number.opendtu_zaun_limit_nonpersistent_absolute alias: Setze Limit auf 50 W else: - if: - condition: template value_template: "{{ setpoint != altes_limit }}" alias: Neues Limit != Altes Limit then: - service: number.set_value data: value: "{{ setpoint | float(1) }}" target: entity_id: >- number.opendtu_zaun_limit_nonpersistent_absolute alias: Setzte neues Limit alias: "-" alias: "-" alias: "-" else: - variables: setpoint: "{{ (grid_sum + altes_limit - 30.0) | float(1) }}" alias: Neues Limit = Aktueller Verbrauch + Altes Limit - 40 - if: - condition: template value_template: "{{ setpoint > lower_limit_wr }}" alias: Neues Limit > 120 W then: - service: number.set_value data: value: "{{ lower_limit_wr }}" target: entity_id: number.opendtu_zaun_limit_nonpersistent_absolute alias: Setze Limit auf 120 W else: - if: - condition: template value_template: "{{ setpoint < minimum_wr }}" alias: Neues Limit < 50 then: - service: number.set_value data: value: "{{ minimum_wr }}" target: entity_id: >- number.opendtu_zaun_limit_nonpersistent_absolute alias: Setze Limit auf 50 W else: - if: - condition: template value_template: "{{ setpoint != altes_limit }}" alias: Neues Limit != Altes Limit then: - service: number.set_value data: value: "{{ setpoint | float(1) }}" target: entity_id: >- number.opendtu_zaun_limit_nonpersistent_absolute alias: Setzte neues Limit alias: "-" alias: "-" alias: "-" alias: "-" - delay: hours: 0 minutes: 0 seconds: 5 milliseconds: 0 alias: Warte 5 s mode: single icon: phu:huawei-solar-inverter Mit freundlichen Grüßen Andreas Morawetz Am 08.04.2024 um 18:59 schrieb z-master42 @.***>: Nutzt du die rudimentäre Skriptvariante oder die von mir angepasste. Am einfachsten anzupassen wäre es natürlich, wenn du deine Version hier als Kommentar postest.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID: @.***>
möchtest du den Wert in der Anzeige in HomeAssistant anpassen oder im Zendure Hub? Soweit ich weiß ist ein steuern des Sender Hub über MQTT aktuell nicht vorgesehen.
Hi,
könntest du mir bitte einen Gefallen tun? Dein Skript läuft absolut top! Ich würde gerne noch folgendes ändern bzw. hinzufügen wollen, bekomme es aber nicht hin. Ich würde gerne, sobald er im Bypass ist das WR Limit auf das maximum von 1.500 erhöhen. Wenn der Bypass aus ist und die Entladung der Batterien beginnt soll das Limit maximal bei z.b. 500 oder 600 sein. Sensor Bypass true / false steht zur Verfügung (über IOBroker über MQTT zu Homeassistant) Das wäre mega lieb!