Home Assistant, Balkonkraftwerke - Artikel, Solarmodule-Gladbeck

Nulleinspeisung APSystems / Hoymiles

Die API muss beim beim APSystems EZ1 zunächst freigeschaltet werden

API Freischaltung APSystems EZ1

Benötigte Hardware:

Green Smart Home Hub: Vorinstalliert mit Home Assistant – Anschließen und loslegen
 

Version 1 (bitte Version 2 nutzen)

  • Funktioniert 🙂

Bekannte Bugs:

  • Bei einem Verbrauch unter 30W bleibt der EZ1 auf dem letzten eingestellten Wert

nulleinspeisung_ez1_v1 (Die Sensoren und Entitys müssen entsprechend angepasst werden)

Version 2

  • Einspeiseleistung zwischen 30W und 800W
				
					alias: Nulleinspeisung EZ1 V2
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.shellyplusplugs_80646fd629f4_switch_0_power
condition: []
action:
  - service: number.set_value
    target:
      entity_id: number.apsystems_apsystems_ez1_max_output_power
    data:
      value: >-
        {{ [30, [states('sensor.shellyplusplugs_80646fd629f4_switch_0_power') |
        float, 800] | min] | max }}
mode: single

				
			

Anker Solix Solarbank E1600 (ungetestet)

				
					alias: Anker Solix Solarbank E1600
description: "Attempts to keep power consumption at 0 watts with two independent inverters"
trigger:
  - platform: state
    entity_id:
      - sensor.stromzahler_leistung_w
condition: []
action:
  - repeat:
      while:
        - condition: template
          value_template: >
            {% set stromverbrauch = states('sensor.stromzahler_leistung_w') | float %}
            {{ stromverbrauch != 0 }}
      sequence:
        - service: number.set_value
          target:
            entity_id: number.solarbank_e1600_system_einspeisevorgabe
          data:
            value: >
              {% set stromverbrauch = states('sensor.stromzahler_leistung_w') | float %}
              {% set current_value = states('number.solarbank_e1600_system_einspeisevorgabe') | float %}
              {% if stromverbrauch > 0 %}
                {{ [current_value + stromverbrauch / 2, 800] | min }}
              {% else %}
                {{ [current_value + stromverbrauch, 0] | max }}
              {% endif %}
        - service: number.set_value
          target:
            entity_id: number.apsystems_apsystems_ez1_m_max_output_power
          data:
            value: >
              {% set stromverbrauch = states('sensor.stromzahler_leistung_w') | float %}
              {% set current_value = states('number.apsystems_apsystems_ez1_m_max_output_power') | float %}
              {% if stromverbrauch > 0 %}
                {{ [current_value + stromverbrauch / 2, 800] | min }}
              {% else %}
                {{ [current_value + stromverbrauch, 0] | max }}
              {% endif %}
        - delay: "00:00:10"
mode: single
				
			

Anleitung (folgt)

Nulleinspeisung Hoymiles

				
					alias: Nulleinspeisung HMS400
description: >-
  Stellt die Leistung des Wechselrichters basierend auf dem Shelly Plug Power
  Sensor ein.
trigger:
  - platform: state
    entity_id: sensor.shellyplusplugs_80646fd629f4_switch_0_power
condition: []
action:
  - service: number.set_value
    target:
      entity_id: number.wechselrichter_leistungsbegrenzung
    data:
      value: >-
        {% set power =
        states('sensor.shellyplusplugs_80646fd629f4_switch_0_power') | float %}
        {% set max_power = 400 %} {% if power > max_power %}
          100
        {% else %}
          {{ (power / max_power * 100) | round(2) }}
        {% endif %}
mode: single

				
			
Hoymiles WIFI Anbindung für Home Assistant
 
Alle Entitäten:
DTU AC-Tagesenergie
sensor.dtu_ac_tagesenergie
—
DTU AP-SSID
sensor.dtu_ap_ssid
—
DTU DTU
Binary_sensor.dtu_dtu
—
DTU HW-Version
sensor.dtu_hw_version
—
DTU IP Adresse
sensor.dtu_ip_adresse
—
DTU MAC-Adresse
sensor.dtu_mac_adresse
—
DTU Neustart
button.dtu_neustart
—
DTU Signalstärke
sensor.dtu_signalstarke
—
DTU SW-Version
sensor.dtu_sw_version
—
DTU WLAN-SSID
sensor.dtu_wlan_ssid
—
DTU Zählermodell
sensor.dtu_zahlermodell
—
Wechselrichter AC-Leistung
sensor.wechselrichter_ac_leistung
—
Wechselrichter Ausschalten
button.wechselrichter_ausschalten
—
Wechselrichter Einschalten
button.wechselrichter_einschalten
—
Wechselrichter HW-Version
sensor.wechselrichter_hw_version
—
Wechselrichter Leistungsbegrenzung
number.wechselrichter_leistungsbegrenzung
—
Wechselrichter Leistungsfaktor
sensor.wechselrichter_leistungsfaktor
—
Wechselrichter Netzfrequenz
sensor.wechselrichter_netzfrequenz
—
Wechselrichter Netzspannung
sensor.wechselrichter_netzspannung
—
Wechselrichter Port 1 DC-Gesamtenergie
sensor.wechselrichter_port_1_dc_gesamtenergie
—
Wechselrichter Port 1 DC-Leistung
sensor.wechselrichter_port_1_dc_leistung
—
Wechselrichter Port 1 DC-Tagesenergie
sensor.wechselrichter_port_1_dc_tagesenergie
—
Wechselrichter Port 1 Gleichspannung
sensor.wechselrichter_port_1_gleichspannung
—
Wechselrichter Port 1 Gleichstrom
sensor.wechselrichter_port_1_gleichstrom
—
Wechselrichter SW-Version
sensor.wechselrichter_sw_version
—
Wechselrichter Temperatur
sensor.wechselrichter_temperatur

Anleitung (folgt)

6 thoughts on “Nulleinspeisung APSystems / Hoymiles”

  1. Lonau sagt:

    Super Idee, wäre das ganze auch für einen Tasmota- Lesekopf möglich. Dann würde ich das gerne kaufen

  2. Thomas Peta sagt:

    EZ1
    Ich habe Interesse

  3. Björn sagt:

    Da die Anleitung hier doch noch einige Lücken enthällt hier mal was ich gemacht habe, um den EZ1 manuell zu steuern:

    1. Zwei Helfer anlegen:
    – (Einstellungen -> Geräte & Dienste -> Helfer)
    – 1x Nummer:
    – Name: APsystems EZ1 MaxPower
    – Min: 30
    – Max: 800
    – Maßeinheit: W
    – 1x Schalter
    – Name: APsystems EZ1 OnOff

    2. In die configuration.yaml einfügen:
    – (ggf. In den AddOns „File Editor“ installieren.)
    – Dort Einfügen:
    rest_command:
    apsystems_ez1_setmaxpower:
    url: „http://192.168.178.70:8050/setMaxPower?p={{ states(‚input_number.apsystems_ez1_maxpower‘)|int }}“
    apsystems_ez1_setonoff:
    url: „http://192.168.178.70:8050/setOnOff?status={{ iif(is_state(‚input_boolean.apsystems_ez1_onoff‘, ‚on‘), 1, 0) }}“

    3. Die Werte per Automation absenden:
    – (Einstellungen -> Automatisierungen & Szenen)
    – Wenn:
    – 2x „Entität“ > „Zustand“ und dort je einen der Helfer auswählen.
    – Und jeweils auf die 3 Punkte rechts und „ID bearbeiten“ und je benennen.
    – Dann mache:
    – Baustein > Auswählen
    – Option 1/2:
    – Bedingung: Andere > ID > MaxPower / OnOff
    – Aktion: RESTful Command: apsystems_ez1_setmaxpower / apsystems_ez1_setonoff

  4. Björn sagt:

    (Hier nochmal, da beim anderen die führenden Tabulatoren entfernt wurden, hoffentlich geht es mit Leerzeichen:)
    Da die Anleitung hier doch noch einige Lücken enthält hier mal was ich gemacht habe, um den EZ1 manuell zu steuern:

    1. Zwei Helfer anlegen:
    – (Einstellungen -> Geräte & Dienste -> Helfer)
    – 1x Nummer:
    – Name: APsystems EZ1 MaxPower
    – Min: 30
    – Max: 800
    – Maßeinheit: W
    – 1x Schalter
    – Name: APsystems EZ1 OnOff

    2. In die configuration.yaml einfügen:
    – (ggf. In den AddOns „File Editor“ installieren.)
    – Dort Einfügen:
    rest_command:
    apsystems_ez1_setmaxpower:
    url: „http://192.168.178.70:8050/setMaxPower?p={{ states(‚input_number.apsystems_ez1_maxpower‘)|int }}“
    apsystems_ez1_setonoff:
    url: „http://192.168.178.70:8050/setOnOff?status={{ iif(is_state(‚input_boolean.apsystems_ez1_onoff‘, ‚on‘), 1, 0) }}“

    3. Die Werte per Automation absenden:
    – (Einstellungen -> Automatisierungen & Szenen)
    – Wenn:
    – 2x „Entität“ > „Zustand“ und dort je einen der Helfer auswählen.
    – Und jeweils auf die 3 Punkte rechts und „ID bearbeiten“ und je benennen.
    – Dann mache:
    – Baustein > Auswählen
    – Option 1/2:
    – Bedingung: Andere > ID > MaxPower / OnOff
    – Aktion: RESTful Command: apsystems_ez1_setmaxpower / apsystems_ez1_setonoff

    1. Daniel sagt:

      Meinst Du das könntest Du ggfs irgendwie auch für nicht IT-ler erklären?

  5. McKnalli sagt:

    Hallo,
    der APsystems EZ1m soll anscheinend kaputt gehen, wenn zuviele Schreibvorgange in den Speicher vorgenommen werden.
    …, das die Werte zur Begrenzung des Wechselrichters in den Flash Speicher geschrieben wurden. Dieser verfügt nur über eine gewisse Anzahl an Schreibzyklen….
    Ist das wirklich so? gibts da evtl. eine neue Firmware?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert