Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. Howto: Auslesen JSON der AC ELWA2 (MyPV)

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    15
    1
    517

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    618

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.9k

Howto: Auslesen JSON der AC ELWA2 (MyPV)

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
11 Beiträge 4 Kommentatoren 1.2k Aufrufe 1 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • hruH Offline
    hruH Offline
    hru
    schrieb am zuletzt editiert von hru
    #1

    Hallo,

    nachdem ich es mit Eurer Unterstützung hinbekommen habe die Daten meiner AC ELWA2 auszulesen, möchte ich hier eine entsprechende Anleitung schreiben, damit auch andere von diesen Erkenntnissen profitieren können.

    Ausgangssituation:

    Ich habe eine AC ELWA2 von MyPV, um mit überschüssigem Strom das Brauchwasser zu erwärmen. (AC ELWA2)
    Die AC ELWA2 hängt per LAN-Kabel im Netz.
    Als Control IP ist die IP-Adresse des Wechselrichters (LAN-Anschluss des SH10RT) eingetragen. Der Wechselrichter gibt entsprechende Steuersignale an die AC ELWA2.

    D.h. morgens wird zuerst der Speicher aufgeladen und wenn der Speicher voll ist wird das Wasser aufgeheizt. Erst dann wird überschüssiger Strom eingespeist. Das funktioniert alles bestens. Ein Lob an meinen Solateur!

    Die AC ELWA2 hat eine eigene Web-Oberfläche (MyPV-Cloud). Dort sind folgende Angaben zu sehen / abzulesen:
    d8ed8c55-4855-4800-b707-11e67df9c757-image.png

    Diese Infos (insbesondere die am Tag für das Erwärmen des Wassers eingesetzte Energie) würde ich gerne auslesen, um sie in eine zentrale Datenauswertung einfließen zu lassen.
    Das Auslesen der AC ELWA2 per Modbus geht leider nicht, weil der Modbus-Anschluss (keine Ahnung wie das richtig heißt) durch die Kommunikation mit dem Wechselrichter belegt ist. Deshalb lese ich das JSON aus, das über <IP-Adresse der AC ELWA2>/data.jsn von der AC ELWA2 bereitgestellt wird.
    Hierfür verwende ich ein Blockly-Script, welches zwischen Sonnenaufgang und Sonnenuntergang alle 5 Sekunden das JSON ausliest und die gewünschten Werte in entsprechende Datenpunkte schreibt. Von dort lasse ich die Werte per Influx-Adapter in eine InfluxDB schreiben (Schreibintervall 60 Sekunden).
    e19bde4c-73ec-4767-bc93-dcd3acba7087-image.png
    07774b5b-0197-4d11-877a-e6ae3689bd10-image.png

    Noch zu erwähnen:
    Die Energie (kWh) ist nicht im JSON enthalten, daher errechne ich diese selbst (5 Sekunden-Ableseintervall).
    Damit man im ioBroker sehen kann von wann die angezeigten Werte sind, lasse ich noch das Datum und die Uhrzeit mit auslesen.
    Um den Tageswert der aufgewendeten Energie in kWh zu bekommen, müssen dann alle Werte des Attributes power_solar_energie aufaddiert werden (cumulative_sum() Funktion bei InfluxQL).

    Falls ich noch etwas wichtiges vergessen haben sollte bitte melden.

    Ich hoffe das hilft dem ein oder anderen;-)

    Gruß Hartmut

    PV-Anlage:
    13,5 kWp, WR: Sungrow SH10RT, Speicher: Sungrow SBR128, Heizstab: MyPV AC ELWA2
    Sonstige Geräte:
    ShellyPlusSmoke Rauchwarnmelder, Shelly Gas Warnmelder, Shelly Flood,
    IR-Leseköpfe für Stromzähler

    paul53P 1 Antwort Letzte Antwort
    0
    • hruH hru

      Hallo,

      nachdem ich es mit Eurer Unterstützung hinbekommen habe die Daten meiner AC ELWA2 auszulesen, möchte ich hier eine entsprechende Anleitung schreiben, damit auch andere von diesen Erkenntnissen profitieren können.

      Ausgangssituation:

      Ich habe eine AC ELWA2 von MyPV, um mit überschüssigem Strom das Brauchwasser zu erwärmen. (AC ELWA2)
      Die AC ELWA2 hängt per LAN-Kabel im Netz.
      Als Control IP ist die IP-Adresse des Wechselrichters (LAN-Anschluss des SH10RT) eingetragen. Der Wechselrichter gibt entsprechende Steuersignale an die AC ELWA2.

      D.h. morgens wird zuerst der Speicher aufgeladen und wenn der Speicher voll ist wird das Wasser aufgeheizt. Erst dann wird überschüssiger Strom eingespeist. Das funktioniert alles bestens. Ein Lob an meinen Solateur!

      Die AC ELWA2 hat eine eigene Web-Oberfläche (MyPV-Cloud). Dort sind folgende Angaben zu sehen / abzulesen:
      d8ed8c55-4855-4800-b707-11e67df9c757-image.png

      Diese Infos (insbesondere die am Tag für das Erwärmen des Wassers eingesetzte Energie) würde ich gerne auslesen, um sie in eine zentrale Datenauswertung einfließen zu lassen.
      Das Auslesen der AC ELWA2 per Modbus geht leider nicht, weil der Modbus-Anschluss (keine Ahnung wie das richtig heißt) durch die Kommunikation mit dem Wechselrichter belegt ist. Deshalb lese ich das JSON aus, das über <IP-Adresse der AC ELWA2>/data.jsn von der AC ELWA2 bereitgestellt wird.
      Hierfür verwende ich ein Blockly-Script, welches zwischen Sonnenaufgang und Sonnenuntergang alle 5 Sekunden das JSON ausliest und die gewünschten Werte in entsprechende Datenpunkte schreibt. Von dort lasse ich die Werte per Influx-Adapter in eine InfluxDB schreiben (Schreibintervall 60 Sekunden).
      e19bde4c-73ec-4767-bc93-dcd3acba7087-image.png
      07774b5b-0197-4d11-877a-e6ae3689bd10-image.png

      Noch zu erwähnen:
      Die Energie (kWh) ist nicht im JSON enthalten, daher errechne ich diese selbst (5 Sekunden-Ableseintervall).
      Damit man im ioBroker sehen kann von wann die angezeigten Werte sind, lasse ich noch das Datum und die Uhrzeit mit auslesen.
      Um den Tageswert der aufgewendeten Energie in kWh zu bekommen, müssen dann alle Werte des Attributes power_solar_energie aufaddiert werden (cumulative_sum() Funktion bei InfluxQL).

      Falls ich noch etwas wichtiges vergessen haben sollte bitte melden.

      Ich hoffe das hilft dem ein oder anderen;-)

      Gruß Hartmut

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #2

      @hru sagte: Modbus-Anschluss (keine Ahnung wie das richtig heißt) durch die Kommunikation mit dem Wechselrichter belegt ist.

      Es handelt sich um einen Bus - wie der Name schon sagt. Es können also mehrere Busteilnehmer angeschlossen werden.

      @hru sagte in Howto: Auslesen JSON der AC ELWA2 (MyPV):

      müssen dann alle Werte des Attributes power_solar_energie aufaddiert werden (cumulative_sum() Funktion bei InfluxQL).

      Weshalb nicht schon im Skript?

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      hruH 1 Antwort Letzte Antwort
      0
      • B Offline
        B Offline
        Banjo89
        schrieb am zuletzt editiert von
        #3

        Bei mir funktioniert die Kommunikation über Modbus TCP.

        Mein Heizstab kommuniziert zwar mit dem SMA Home Manager, aber das sollte eigentlich keinen Unterschied machen.

        hruH 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @hru sagte: Modbus-Anschluss (keine Ahnung wie das richtig heißt) durch die Kommunikation mit dem Wechselrichter belegt ist.

          Es handelt sich um einen Bus - wie der Name schon sagt. Es können also mehrere Busteilnehmer angeschlossen werden.

          @hru sagte in Howto: Auslesen JSON der AC ELWA2 (MyPV):

          müssen dann alle Werte des Attributes power_solar_energie aufaddiert werden (cumulative_sum() Funktion bei InfluxQL).

          Weshalb nicht schon im Skript?

          hruH Offline
          hruH Offline
          hru
          schrieb am zuletzt editiert von
          #4

          @paul53 said in Howto: Auslesen JSON der AC ELWA2 (MyPV):

          @hru sagte in Howto: Auslesen JSON der AC ELWA2 (MyPV):

          müssen dann alle Werte des Attributes power_solar_energie aufaddiert werden (cumulative_sum() Funktion bei InfluxQL).

          Weshalb nicht schon im Skript?

          Hallo Paul,
          kannst Du mir bitte etwas detaillierter erklären, wie Du das meinst?
          Bei einem Auslesevorgang habe ich ja nur die aktuelle Leistung (in Watt).
          Auf diese wende ich die Zeit von 5 Sekunden an (mein Ausleseintervall) und errechne damit die Energie (in kWh) für dieses 5-Sekunden-Intervall.
          Um direkt beim Auslesen des JSON die errechnete Energie (in kWh) mit der Energie vom vorherigen Auslesevorgang aufaddieren zu können, benötige ich ja diesen Wert vom vorherigen Auslesevorgang. Diesen Wert habe ich aber nicht.
          Oder gibt es bei FluxQL sowas wie += wo ich Bezug auf einen Wert eines Attributes vom vorherigen Zeitstempel nehmen kann?

          Danke und Gruß

          Hartmut

          PV-Anlage:
          13,5 kWp, WR: Sungrow SH10RT, Speicher: Sungrow SBR128, Heizstab: MyPV AC ELWA2
          Sonstige Geräte:
          ShellyPlusSmoke Rauchwarnmelder, Shelly Gas Warnmelder, Shelly Flood,
          IR-Leseköpfe für Stromzähler

          paul53P 1 Antwort Letzte Antwort
          0
          • B Banjo89

            Bei mir funktioniert die Kommunikation über Modbus TCP.

            Mein Heizstab kommuniziert zwar mit dem SMA Home Manager, aber das sollte eigentlich keinen Unterschied machen.

            hruH Offline
            hruH Offline
            hru
            schrieb am zuletzt editiert von
            #5

            @banjo89 said in Howto: Auslesen JSON der AC ELWA2 (MyPV):

            Bei mir funktioniert die Kommunikation über Modbus TCP.

            Mein Heizstab kommuniziert zwar mit dem SMA Home Manager, aber das sollte eigentlich keinen Unterschied machen.

            Hallo,

            danke für die Info.

            Theoretisch sollte (wie Paul geschrieben hat) der Modbus ja in der Lage sein, mit mehreren Teilnehmern zu kommunizieren. Was bei Dir bzw. dem SMA Home Manager auch zu funktionieren scheint.

            Ggfs. verhält sich der SH10RT hier nicht regelkonform indem er "die Leitung" zur AC ELWA2 ständig belegt und nicht wieder freigibt?

            Ähnliches soll es bei anderen Geräten/Softwarelösungen auch geben.

            Auf jeden Fall habe ich keine Modbus-Verbindung zur AC ELWA2 hinbekommen (und wollte auch an der bestehenden Verbindung zum SH10RT nicht rumschrauben).

            Der Support von My-PV hat mir auch empfohlen das JSON auszuwerten.

            Das habe ich mit der Hilfe vieler Unterstützer hier im Forum ja jetzt auch hinbekommen;-)

            Gruß Hartmut

            PV-Anlage:
            13,5 kWp, WR: Sungrow SH10RT, Speicher: Sungrow SBR128, Heizstab: MyPV AC ELWA2
            Sonstige Geräte:
            ShellyPlusSmoke Rauchwarnmelder, Shelly Gas Warnmelder, Shelly Flood,
            IR-Leseköpfe für Stromzähler

            1 Antwort Letzte Antwort
            0
            • hruH hru

              @paul53 said in Howto: Auslesen JSON der AC ELWA2 (MyPV):

              @hru sagte in Howto: Auslesen JSON der AC ELWA2 (MyPV):

              müssen dann alle Werte des Attributes power_solar_energie aufaddiert werden (cumulative_sum() Funktion bei InfluxQL).

              Weshalb nicht schon im Skript?

              Hallo Paul,
              kannst Du mir bitte etwas detaillierter erklären, wie Du das meinst?
              Bei einem Auslesevorgang habe ich ja nur die aktuelle Leistung (in Watt).
              Auf diese wende ich die Zeit von 5 Sekunden an (mein Ausleseintervall) und errechne damit die Energie (in kWh) für dieses 5-Sekunden-Intervall.
              Um direkt beim Auslesen des JSON die errechnete Energie (in kWh) mit der Energie vom vorherigen Auslesevorgang aufaddieren zu können, benötige ich ja diesen Wert vom vorherigen Auslesevorgang. Diesen Wert habe ich aber nicht.
              Oder gibt es bei FluxQL sowas wie += wo ich Bezug auf einen Wert eines Attributes vom vorherigen Zeitstempel nehmen kann?

              Danke und Gruß

              Hartmut

              paul53P Offline
              paul53P Offline
              paul53
              schrieb am zuletzt editiert von paul53
              #6

              @hru sagte: Auf diese wende ich die Zeit von 5 Sekunden an (mein Ausleseintervall) und errechne damit die Energie (in kWh) für dieses 5-Sekunden-Intervall.

              Man kann auch einen kumulativen Zählwert bilden. Prinzip:

              Blockly_temp.JPG

              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

              hruH 1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @hru sagte: Auf diese wende ich die Zeit von 5 Sekunden an (mein Ausleseintervall) und errechne damit die Energie (in kWh) für dieses 5-Sekunden-Intervall.

                Man kann auch einen kumulativen Zählwert bilden. Prinzip:

                Blockly_temp.JPG

                hruH Offline
                hruH Offline
                hru
                schrieb am zuletzt editiert von
                #7

                @paul53
                Hallo Paul,

                danke für den Tipp.
                D.h. ich frage vor einem neuen Auslesevorgang den aktuellen Wert des Datenpunktes ab und kann dann den neuen Wert dazu addieren, prima.
                Hast Du noch einen Tipp, woran ich erkenne kann, wenn es sich um den ersten Auslesevorgang eines Tages handelt?
                (Ich möchte ja Tages-Summen bilden)
                Muss ich dazu den alten und den neuen Wert des Datums vergleichen?
                Oder gibt es eine andere Möglichkeit?
                Danke und Gruß
                Hartmut

                PV-Anlage:
                13,5 kWp, WR: Sungrow SH10RT, Speicher: Sungrow SBR128, Heizstab: MyPV AC ELWA2
                Sonstige Geräte:
                ShellyPlusSmoke Rauchwarnmelder, Shelly Gas Warnmelder, Shelly Flood,
                IR-Leseköpfe für Stromzähler

                1 Antwort Letzte Antwort
                0
                • hruH Offline
                  hruH Offline
                  hru
                  schrieb am zuletzt editiert von hru
                  #8

                  Hallo,
                  ich habe die Logik dank des Tipps von Paul noch etwas verändert.
                  Ich bilde den aufsummierte Tages-Energiewert (kWh) jetzt direkt beim Auslesen des JSON.

                  Hier das neue Blockly-Script:
                  ba92e713-02a1-43cd-a903-6a365ca2cd14-image.png

                  Und hier die neue Definition der Datenpunkte:
                  cb076675-2ecb-4bf7-9415-a5156684773e-image.png

                  Gruß Hartmut

                  PV-Anlage:
                  13,5 kWp, WR: Sungrow SH10RT, Speicher: Sungrow SBR128, Heizstab: MyPV AC ELWA2
                  Sonstige Geräte:
                  ShellyPlusSmoke Rauchwarnmelder, Shelly Gas Warnmelder, Shelly Flood,
                  IR-Leseköpfe für Stromzähler

                  1 Antwort Letzte Antwort
                  0
                  • hruH Offline
                    hruH Offline
                    hru
                    schrieb am zuletzt editiert von
                    #9

                    Hallo,
                    ich habe doch noch eine Frage zum Blockly-Script:
                    Werden die Befehle, die vor dem Schedule-Element (Zeitplan / CRON Regel) stehen nur einmal bei Aktivierung des Scriptes ausgeführt? Oder jedesmal wenn das Script ausgeführt wird?

                    9e3fb4f5-ee72-4ae2-a991-9031d78ad3e2-image.png

                    Danke und Gruß

                    Hartmut

                    PV-Anlage:
                    13,5 kWp, WR: Sungrow SH10RT, Speicher: Sungrow SBR128, Heizstab: MyPV AC ELWA2
                    Sonstige Geräte:
                    ShellyPlusSmoke Rauchwarnmelder, Shelly Gas Warnmelder, Shelly Flood,
                    IR-Leseköpfe für Stromzähler

                    HomoranH 1 Antwort Letzte Antwort
                    0
                    • hruH hru

                      Hallo,
                      ich habe doch noch eine Frage zum Blockly-Script:
                      Werden die Befehle, die vor dem Schedule-Element (Zeitplan / CRON Regel) stehen nur einmal bei Aktivierung des Scriptes ausgeführt? Oder jedesmal wenn das Script ausgeführt wird?

                      9e3fb4f5-ee72-4ae2-a991-9031d78ad3e2-image.png

                      Danke und Gruß

                      Hartmut

                      HomoranH Nicht stören
                      HomoranH Nicht stören
                      Homoran
                      Global Moderator Administrators
                      schrieb am zuletzt editiert von Homoran
                      #10

                      @hru sagte in Howto: Auslesen JSON der AC ELWA2 (MyPV):

                      Werden die Befehle, die vor dem Schedule-Element (Zeitplan / CRON Regel) stehen nur einmal bei Aktivierung des Scriptes ausgeführt?

                      ja

                      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                      hruH 1 Antwort Letzte Antwort
                      0
                      • HomoranH Homoran

                        @hru sagte in Howto: Auslesen JSON der AC ELWA2 (MyPV):

                        Werden die Befehle, die vor dem Schedule-Element (Zeitplan / CRON Regel) stehen nur einmal bei Aktivierung des Scriptes ausgeführt?

                        ja

                        hruH Offline
                        hruH Offline
                        hru
                        schrieb am zuletzt editiert von
                        #11

                        @homoran said in Howto: Auslesen JSON der AC ELWA2 (MyPV):

                        @hru sagte in Howto: Auslesen JSON der AC ELWA2 (MyPV):

                        Werden die Befehle, die vor dem Schedule-Element (Zeitplan / CRON Regel) stehen nur einmal bei Aktivierung des Scriptes ausgeführt?

                        ja

                        Danke für die Antwort.
                        Jetzt verstehe ich warum die Addition nicht funktioniert hat;-)
                        (weil ich jedesmal ressettet habe;-()
                        Ich habe jetzt in der "neuer Tag"-Logik noch das Setzen des Vergleichsdatums aufgenommen.
                        Jetzt passt es hoffentlich:
                        9d9a6759-38ba-4446-8ec3-405003b3f445-image.png

                        Gruß Hartmut

                        PV-Anlage:
                        13,5 kWp, WR: Sungrow SH10RT, Speicher: Sungrow SBR128, Heizstab: MyPV AC ELWA2
                        Sonstige Geräte:
                        ShellyPlusSmoke Rauchwarnmelder, Shelly Gas Warnmelder, Shelly Flood,
                        IR-Leseköpfe für Stromzähler

                        1 Antwort Letzte Antwort
                        0
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        670

                        Online

                        32.6k

                        Benutzer

                        81.9k

                        Themen

                        1.3m

                        Beiträge
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2025
                        logo
                        • Anmelden

                        • Du hast noch kein Konto? Registrieren

                        • Anmelden oder registrieren, um zu suchen
                        • Erster Beitrag
                          Letzter Beitrag
                        0
                        • Home
                        • Aktuell
                        • Tags
                        • Ungelesen 0
                        • Kategorien
                        • Unreplied
                        • Beliebt
                        • GitHub
                        • Docu
                        • Hilfe