Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Kostal Smartmeter per modbus auslesen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Kostal Smartmeter per modbus auslesen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Uli977
      Uli977 @Thomas1982 last edited by

      @thomas1982

      Der Hausverbrauch ist "nur" errechnet, da ich diesen Wert leider den zwei KOSTAL WRs mit meiner Verschaltung nicht entnehmen kann.

      2021-10-20 20.18.26.jpeg

      Hier mein Script zur Berechnung in meinem Anwendungsfall.

      <xml xmlns="https://developers.google.com/blockly/xml">
        <block type="on_ext" id="LNlIi`pmYo.=JGn?*VkL" x="173" y="1202">
          <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
          <field name="CONDITION">ne</field>
          <field name="ACK_CONDITION"></field>
          <value name="OID0">
            <shadow type="field_oid" id="K=U!rMffNQTGD}k6SJ/O">
              <field name="oid">modbus.0.holdingRegisters.0_Aktueller_Strombezug</field>
            </shadow>
          </value>
          <value name="OID1">
            <shadow type="field_oid" id=")8}l`OMd.LFEN6OcC.BA">
              <field name="oid">modbus.0.holdingRegisters.2_Aktuelle_Einspeisung</field>
            </shadow>
          </value>
          <statement name="STATEMENT">
            <block type="update" id="hyVb3|7?]ENCUEKaDL,m">
              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
              <field name="OID">javascript.0.Eigene_Datenpunkte.PV-Anlage.Strom_Hausverbrauch</field>
              <field name="WITH_DELAY">FALSE</field>
              <value name="VALUE">
                <block type="math_rndfixed" id="7HX|E+=3Q^]:za|7HD3l">
                  <field name="n">1</field>
                  <value name="x">
                    <shadow type="math_number" id="%JeYIZ*p_1pM3DRn82SI">
                      <field name="NUM">3.1234</field>
                    </shadow>
                    <block type="math_arithmetic" id="!3bU:R(FHK-{%;_,wS@v">
                      <field name="OP">MINUS</field>
                      <value name="A">
                        <shadow type="math_number" id="UGDeK.`[FFR.ykzZ0h`6">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="math_arithmetic" id="`(Wyr.{oW|:a8=Tc%vh?">
                          <field name="OP">ADD</field>
                          <value name="A">
                            <shadow type="math_number" id="a`QtAA{tzowL9u6_q5,c">
                              <field name="NUM">1</field>
                            </shadow>
                            <block type="math_arithmetic" id="lJl%pG,VB8Bj[/S0F6(7">
                              <field name="OP">ADD</field>
                              <value name="A">
                                <shadow type="math_number" id=":ilm!nhY-rZ!oXp.-sve">
                                  <field name="NUM">1</field>
                                </shadow>
                                <block type="get_value" id="SGjd0)xkavx!tPcg]?IR">
                                  <field name="ATTR">val</field>
                                  <field name="OID">modbus.1.holdingRegisters.40173_Total_AC_power</field>
                                </block>
                              </value>
                              <value name="B">
                                <shadow type="math_number" id="zmVi~Lm4r)F.AXwSM^ju">
                                  <field name="NUM">1</field>
                                </shadow>
                                <block type="get_value" id="v$YR,6CT,tLT9cZ/y~6u">
                                  <field name="ATTR">val</field>
                                  <field name="OID">modbus.2.holdingRegisters.40173_Total_AC_power</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <value name="B">
                            <shadow type="math_number" id="#*9i|4E[T*rn*Q{qJjUG">
                              <field name="NUM">1</field>
                            </shadow>
                            <block type="get_value" id="kf.=IO]a6:%=+10]snEz">
                              <field name="ATTR">val</field>
                              <field name="OID">javascript.0.Eigene_Datenpunkte.PV-Anlage.KSEM_Bezug_(+)_Einspeisen_(-)</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <value name="B">
                        <shadow type="math_number" id="ZPGVq^~RD8iSrhfvs3s:">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="math_arithmetic" id="C[KCy75Aqu2Fmc#rWM+K">
                          <field name="OP">MULTIPLY</field>
                          <value name="A">
                            <shadow type="math_number" id="y(@~Mi8iC;Im3Pty;7F(">
                              <field name="NUM">1</field>
                            </shadow>
                            <block type="get_value" id="iw.S)k{9,p*IeR+_7#;]">
                              <field name="ATTR">val</field>
                              <field name="OID">evcc.0.loadpoint.1.status.chargePower</field>
                            </block>
                          </value>
                          <value name="B">
                            <shadow type="math_number" id="ujtDrRB1Q26/{}HO@4kP">
                              <field name="NUM">1</field>
                            </shadow>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </value>
            </block>
          </statement>
        </block>
      </xml>
      
      T 1 Reply Last reply Reply Quote 0
      • T
        Thomas1982 @Uli977 last edited by

        @uli977 said in Kostal Smartmeter per modbus auslesen:

        <xml xmlns="https://developers.google.com/blockly/xml">

        Vielen lieben Dank für deine schnelle Rückmeldung, ich habe ja auch zwei Kostel WR eine BYD-Batterie und das KSME. Leider kann ich das Skript so nicht lesen und verstehen. Ich bin noch ganz am Anfang mit dem Skripten über Blockly.

        Ich habe folgende Datenpunkte und müsste daraus den Hausverbrauch und den Überschuss berechnen. Kannst du mir hier nochmal helfen?

        1. Netzbezug (aus KSME)
        2. Einspeisung (aus KSME)
        3. Batterieladung
        4. Batterientladung für Hausbezug
        5. Batteristatus in %
        6. PV Ertrag aus WR1
        7. PV Ertrag aus WR2

        Vielen Dank im Voraus!!!

        Uli977 1 Reply Last reply Reply Quote 0
        • Uli977
          Uli977 @Thomas1982 last edited by Uli977

          @thomas1982

          füge mein Skript mal als Blockly ein, dann denke ich ist die schnell klar wie es geht.
          Und mit Batterie dazwischen ist es bestimmt anders und da kann ich die nicht wirklich helfen.

          T 1 Reply Last reply Reply Quote 0
          • T
            Thomas1982 @Uli977 last edited by

            @uli977 said in Kostal Smartmeter per modbus auslesen:

            @thomas1982

            füge mein Skript mal als Blockly ein, dann denke ich ist die schnell klar wie es geht.
            Und mit Batterie dazwischen ist es bestimmt anders und da kann ich die nicht wirklich helfen.

            Sorry aber wie kann ich deinen Skript als Blockly-Skript einfügen? Ich habe dein Skript als JSON importiert, aber leider wird dieses nicht als Blockly angezeigt:
            99c9eb00-faed-462d-976d-919d47a2f686-grafik.png

            Uli977 1 Reply Last reply Reply Quote 0
            • Uli977
              Uli977 @Thomas1982 last edited by

              @thomas1982

              einfach ein neues leeres Blockly anlegen und dann hierüber importieren.
              Einfach per Copy/Past

              c2195324-72e5-4485-8d95-73347ceb91d7-image.png

              T 1 Reply Last reply Reply Quote 0
              • T
                Thomas1982 @Uli977 last edited by

                @uli977 said in Kostal Smartmeter per modbus auslesen:

                @thomas1982

                einfach ein neues leeres Blockly anlegen und dann hierüber importieren.
                Einfach per Copy/Past

                c2195324-72e5-4485-8d95-73347ceb91d7-image.png

                Danke für deinen Anfänger-Input.

                Ich habe es geschafft und habe folgende Berechnung aus deinem Skript interpretiert:

                Eigene_Datenpunkte.PV-Anlage.Strom_Hausverbrauch
                =Total_AC_Power + Total_AC_power + KSME_Netzbezug - Batterieentladung

                Das würde dann bedeutet, ich müsste für meine o.g. Datenpunkte die Berechnung wie folgt aufbauen:
                AC Power WR1 + AC Power W2 + KSME Netzbezug - Batterieladung BYD + Batterieentladung BYD

                Korrekt?

                T 1 Reply Last reply Reply Quote 0
                • T
                  Thomas1982 @Thomas1982 last edited by

                  @thomas1982 said in Kostal Smartmeter per modbus auslesen:

                  @uli977 said in Kostal Smartmeter per modbus auslesen:

                  @thomas1982

                  einfach ein neues leeres Blockly anlegen und dann hierüber importieren.
                  Einfach per Copy/Past

                  c2195324-72e5-4485-8d95-73347ceb91d7-image.png

                  Danke für deinen Anfänger-Input.

                  Ich habe es geschafft und habe folgende Berechnung aus deinem Skript interpretiert:

                  Eigene_Datenpunkte.PV-Anlage.Strom_Hausverbrauch
                  =Total_AC_Power + Total_AC_power + KSME_Netzbezug - Batterieentladung

                  Das würde dann bedeutet, ich müsste für meine o.g. Datenpunkte die Berechnung wie folgt aufbauen:
                  AC Power WR1 + AC Power W2 + KSME Netzbezug - Batterieladung BYD + Batterieentladung BYD

                  Korrekt?

                  @Uli977
                  Leider scheint da noch etwas nicht zu stimmen:
                  1d4db1d8-b844-49d8-8b3c-2a0db58b2ba4-grafik.png

                  Hier mein Skript dazu:
                  fc55a40b-4cfc-4efc-b7d4-2d89c8e892af-grafik.png

                  Uli977 1 Reply Last reply Reply Quote 0
                  • Uli977
                    Uli977 @Thomas1982 last edited by

                    @thomas1982

                    Musst du halt schauen welche mathematische Formel, mit deinen Datenpunkten, Sinn ergibt, so dass der Hausverbrauch herauskommt.

                    J 1 Reply Last reply Reply Quote 0
                    • J
                      JoSiGB1 @Uli977 last edited by

                      Hallo @uli977

                      ich bin hier neu und versuche mal meinen ersten Post 🙂
                      werkle schon seit Wochen herum und lese aus meinem KSEM per Modbus einige Werte heraus die auch passen.
                      Einspeisung und Bezug passen auch mit dem Zähler überein sowie mit der Kostal App.

                      Ich finde aber keinen Ansatz die erzeugte PV Leistung aus dem KSEM auszulesen.
                      Ich habe 2 WR Piko und Plenticore mit Bat. + KSEM
                      Im Verlauf hier habe ich gelesen dass man PV Leistung aus WR 1+2 lesen kann.

                      Kostal Portal zeigt ja auch die generiere Leistung komplett an.
                      Die beiden WR Webseiten zeigen mit unter jährlichem Verbrauch 2 Werte.
                      Wenn ich die addiere, kommt das auch so in Kostal App hin.

                      KSEM hat laut PDF doch Gruppenregister und Piko und Plenticore sind im KSEM hinterlegt.
                      Kann man da nun über das KSEM über die Gruppenregister die PV Leistung auslesen?
                      Oder greift Ihr direkt auf die WR zu um die PV Leistung auszulesen, also nicht über KSEM?

                      Nach dem Post hier konnte ich zumindest über meine Plenticore PV Leistung finden.
                      Die Werte würden auch mit WR Webseite jährlicher Verbrauch übereinstimmen.
                      Der PIKO ist als Slave WR in einer Schwarmsteuerung wie mir Kostal Support sagte.
                      der hat aber nicht wie der Plenticore Modbus TCP sondern nur RTU als seriell.
                      Der KSEM hat aber alle Werte laut Support.

                      Mir fehlt hier das technische Verständnis.
                      Muss ich nun meinen Piko noch irgendwie ausbauen, so dass ich wie im Plenticore auch direkt per Modbus TCP zugreifen kann?
                      Oder finde ich die Werte im KSEM in den Gruppenregister? Der PIKO liefert doch aber auch ins Portal Daten sonst würde ja dort die Summe nicht stimmen. Somit müsste das doch über KSEM auch auffindbar sein, da der doch die Dtaen an Kostal Portal sendet?

                      Wäre klasse, wenn ich hier einen Tipp bekommen kann, in welcher Richtung ich da nun weiter suchen muss.

                      J 1 Reply Last reply Reply Quote 0
                      • J
                        jones1975 @JoSiGB1 last edited by jones1975

                        @josigb1

                        und alle 🙂

                        spiele nun auch seit Monaten mit den Modbus Einstellungen meines KSEM rum und war nie ganz glücklich mit den ganzen Berechnungen aus den verschiedenen Werten, da im KSEM Dashboard genau die Werte angezeigt werden, die ich ja gerne hätte 🙂 Meine Anlage hat 2 Kostal Plenticore + Batterie, wobei der eine den Strom in den anderen schiebt und nicht direkt ins Haus. Die Schaltung ist kompliziert und mein Solateur meinte, muss so 🙂 Läuft ja auch, macht aber die Auswertung schwieriger. Nach diversen Suchen und testen habe ich mittlerweile einige Register gefunden die mir schon einmal ein paar Werte liefern.
                        Bei mir ist unter den Holding Registern folgendes zu finden:

                        40974 - Nutzbarer PV Strom (Batterie und Module)
                        40976 - Stromproduktion aller PV Module (egal an welchem Wechselrichter)
                        40982 - Hausverbrauch
                        40984 - Batterie Laden/Entladen
                        40986 Batterieanzeige in %

                        Jetzt habe ich natürlich gehofft, auch noch weitere Register zu finden. Falls jemand noch weitere gefunden hat....

                        M 1 Reply Last reply Reply Quote 0
                        • M
                          MartyBr @jones1975 last edited by

                          @jones1975
                          Hier ist meine komplette Liste:
                          https://forum.iobroker.net/topic/46828/kostal-smartmeter-per-modbus-auslesen/68

                          J 1 Reply Last reply Reply Quote 0
                          • J
                            jones1975 @MartyBr last edited by

                            @martybr
                            Hi,
                            die habe ich gesehen, danke für den Hinweis. Mir ging es um die statistischen Werte, die nicht mehr berechnet werden müssen.
                            Im KSEM Dashboard sind ja alle Summen bereits berechnet und ich möchte einfach die Werte haben, ohne dass ich noch aufwendig die Daten via blocky oder javascript mit Faktor usw berechnen muss.

                            1 Reply Last reply Reply Quote 0
                            • N
                              NoPlayBack 0 last edited by NoPlayBack 0

                              Ich habe hier ein Bosch Power Meter 7000i, ganz klar und offensichtlich baugleich mit dem Kostal.

                              Mit allen Informationen hier aus dem Thread bekomme ich leider keinen Kontakt zum ModBus-Adapter in IOBroker.

                              Was mir auffällt ist eine Einstellung im 7000i die anders aussieht:

                              911a796e-1d31-4cfb-9248-16479fd2bd01-grafik.png

                              Da ist die Verschlüsselung aktiviert und ich kann sie leider nicht ändern.

                              Fehlermeldung:
                              7629575d-20fe-4d3b-9636-220b65a612cf-grafik.png

                              Hat da noch jemand eine Idee?
                              Vielleicht das Zertifikat löschen.... ob dann die Verschlüsselung verschwindet?
                              Bin mir unsicher... und will natürlich auch nicht die aktuell laufende Konfiguration zerstören...

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              Support us

                              ioBroker
                              Community Adapters
                              Donate
                              FAQ Cloud / IOT
                              HowTo: Node.js-Update
                              HowTo: Backup/Restore
                              Downloads
                              BLOG

                              935
                              Online

                              31.9k
                              Users

                              80.1k
                              Topics

                              1.3m
                              Posts

                              13
                              98
                              14594
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo