Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Solaredge Adapter (Photovoltaikanlage)

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Solaredge Adapter (Photovoltaikanlage)

    This topic has been deleted. Only users with topic management privileges can see it.
    • O
      osu @Has3nb3inMH last edited by

      Hi @has3nb3inmh und @cybtrash

      @has3nb3inmh said in Solaredge Adapter (Photovoltaikanlage):

      Wie komm ich an die Daten der Batterie und die aktuelle PV-Leistung-DC. Ich habe nun schon tagelang gegoogelt und alles was ich bisher gefunden habe, funktioniert nicht.

      Seid Ihr da weiter gekommen?

      Ich lese leider immer nur vom Problem, aber nicht von der Lösung.

      Ich würde ebenfalls gerne die PV-Produktion aus den Modbus-Daten ermitteln.

      Sobald meine BYD LVS8.0 an meinem SE10k-RWS entladen wird, werden sind die Leistungswerte in der AC oder DC-Leistung enthalten. Siehe https://www.photovoltaikforum.com/thread/156602-se10k-rws-byd-lvs-8-0-fehlerhafte-produktionswerte

      Was tun? Habt Ihr's gelöst oder aufgegeben? Wenn ja - wie?

      Gruß,
      Oli

      1 Reply Last reply Reply Quote 0
      • O
        osu @Soeni last edited by

        @soeni said in Solaredge Adapter (Photovoltaikanlage):

        Hat jemand die Akkuwerte schon über Modbus auslesen können? Mir ist das mit IObroker nicht gelungen, obwohl ich ein Phytonscript gefunden habe, mit dem es geht. Irgendwas scheint nicht zu passen aber ich finde die Ursache nicht.

        Akkuwerte auslesen klappt hier mit meinem SE10k-RWS+BYD8.0LVS:
        65cb31dd-2c26-4b3a-b74e-48d61ab8697a-image.png

        Gruß,
        Oli

        ChrisPrefect S 2 Replies Last reply Reply Quote 0
        • ChrisPrefect
          ChrisPrefect @osu last edited by

          @osu

          Hier mal mein aktueller Stand mit Solaredge SE10K und Solaredge Stromsensor und BYD LVS 24.0:

          deviceId	address	name	description	unit	type	len	factor	offset	formula	role	room	poll	wp	isScale
          1	40045	C_Version	Spezifischer SolarEdge Wert		string	8	1	0		value		true	false	false	
          1	40069	C_Geräteadresse	Modbus-ID der entsprechenden Einheit		uint16be	1	1	0		value		true	false	false	
          1	40072	I_AC_Strom	AC-Gesamtstromwert	A	uint16be	1	1	0		value		true	false	false	
          1	40073	I_AC_StromA	AC-Phase A (L1) Stromwert	A	uint16be	1	1	0		value		true	false	false	
          1	40074	I_AC_StromB	AC-Phase B (L2) Stromwert	A	uint16be	1	1	0		value		true	false	false	
          1	40075	I_AC_StromC	AC-Phase C (L3) Stromwert	A	uint16be	1	1	0		value		true	false	false	
          1	40076	I_AC_Strom_SF	AC-Strom Skalierungsfaktor		int16be	1	1	0		value		true	false	false	
          1	40080	I_AC_SpannungAN	AC-Spannung Phase A-N (L1-N) Wert	V	uint16be	1	1	0		value		true	false	false	
          1	40081	I_AC_SpannungBN	AC-Spannung Phase B-N (L2-N) Wert	V	uint16be	1	1	0		value		true	false	false	
          1	40082	I_AC_SpannungCN	AC-Spannung Phase C-N (L3-N) Wert	V	uint16be	1	1	0		value		true	false	false	
          1	40083	I_AC_Spannung_SF	AC-Spannung Skalierungsfaktor	V	int16be	1	1	0		value		true	false	false	
          1	40084	I_AC_Leistung	AC-Leistungswert	W	uint16be	1	1	0		value		true	false	false	
          1	40085	I_AC_Leistung_SF	AC-Leistung Skalierungsfaktor		int16be	1	1	0		value		true	false	false	
          1	40086	I_AC_Frequenz	Frequenzwert	Hz	uint16be	1	1	0		value		true	false	false	
          1	40087	I_AC_Frequenz_SF	Frequenz Skalierungsfaktor		int16be	1	1	0		value		true	false	false	
          1	40088	I_AC_VA	Scheinleistung	VA	uint16be	1	1	0		value		true	false	false	
          1	40089	I_AC_VA_SF	Scheinleistung Skalierungsfaktor		int16be	1	1	0		value		true	false	false	
          1	40090	I_AC_VAR	Blindleistung	VAR	uint16be	1	1	0		value		true	false	false	
          1	40091	I_AC_VAR_SF	Blindleistung Skalierungsfaktor		int16be	1	1	0		value		true	false	false	
          1	40092	I_AC_PF	Leistungsfaktor	%	uint16be	1	1	0		value		true	false	false	
          1	40093	I_AC_PF_SF	Leistungsfaktor Skalierungsfaktor		int16be	1	1	0		value		true	false	false	
          1	40094	I_AC_Energie_WH	AC Gesamt-Energieproduktion	Wh	uint32be	2	1	0		value		true	false	false	
          1	40096	I_AC_Energie_WH_SF	AC Gesamtenergie Skalierungsfaktor		uint16be	1	1	0		value		true	false	false	
          1	40097	I_DC_Strom	DC-Stromwert	A	uint16be	1	1	0		value		true	false	false	
          1	40098	I_DC_Strom_SF	DC-Strom Skalierungsfaktor		int16be	1	1	0		value		true	false	false	
          1	40099	I_DC_Spannung	DC-Spannungswert	V	uint16be	1	1	0		value		true	false	false	
          1	40100	I_DC_Spannung_SF	DC-Spannung Skalierungsfaktor		int16be	1	1	0		value		true	false	false	
          1	40101	I_DC_Leistung	DC-Leistungswert	W	uint16be	1	1	0		value		true	false	false	
          1	40102	I_DC_Leistung_SF	DC-Leistung Skalierungsfaktor		int16be	1	1	0		value		true	false	false	
          1	40104	I_Temp_Kühler	Kühlkörpertemperatur	°C	uint16be	1	1	0		value		true	false	false	
          1	40107	I_Temp_SF	Kühlkörpertemperatur Skalierungsfaktor		int16be	1	1	0		value		true	false	false	
          1	40108	I_Status	Betriebszustand (1 = Aus, 2 = Schlafen (Automatisches Herunterfahren) – Nachtmodus, 3 = Aufwachen/Starten, 4 = Wechselrichter ist AN und wandelt Energie, 5 = Begrenzte Produktion, 6 = Herunterfahren, 7 = Fehler, 8 = Wartung/Setup)		uint16be	1	1	0		value		true	false	false	
          1	40109	I_Status_Anbieter	Anbieter-spezifischer Betriebszustand sowie Fehlercodes: 1 = Aus, 2 = Schlafen (Automatisches Herunterfahren) – Nachtmodus, 3 = Aufwachen/Starten, 4 = Wechselrichter ist AN und wandelt Energie, 5 = Begrenzte Produktion, 6 = Herunterfahren, 7 = Fehler, 8 = Wartung/Setup		uint16be	1	1	0		value		true	false	false	
          1	40207	M_AC_Power	Total Real Power (sum of active phases)	W	int16be	1	1	0		value		true	false	false	
          1	40211	M_AC_Power_SF	AC Real Power Scale Factor		uint16be	1	1	0		value		true	false	false	
          1	40227	M_Exported	Total Exported Real Energy	Wh	uint32be	2	1	0		value		true	false	false	
          1	40243	M_Energy_W_SF	Real Energy Scale Factor		uint16be	1	1	0		value		true	false	false	
          1	40235	M_Imported	Total Imported Real Energy	Wh	uint32be	2	1	0		value		true	false	false	
          1	102837	Speicher_Ladung	Speicher Ladeleistung	W	floatsw	2	1	0		value		true	false	false	
          1	102853	Speicher_SoC	Speicher SoC	%	floatsw	2	1	0		value		false	false	false	
          1	102855	Speicher_Betriebszustand	Speicher Betriebszustand (1: Aus 3: Laden 4: Entladen 6: Erhaltungsladen)		uint16be	1	1	0		value		false	false	false	
          
          

          6e416bea-e929-4bf3-94e9-87745a8eaa62-image.png

          <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
              <variable id="nNqB1b6bK3yOaF{%=r67">Tagesleistung</variable>
              <variable type="timeout" id="timeout3">timeout3</variable>
              <variable type="timeout" id="timeout">timeout</variable>
              <variable type="timeout" id="timeout2">timeout2</variable>
              <variable type="timeout" id="timeout4">timeout4</variable>
              <variable id="WorYn/,IEi?5LB02:/u(">Tagesexport</variable>
            </variables>
            <block type="on" id="h0R1-xJM4c@2!dlRFUVh" x="-862" y="-412">
              <field name="OID">javascript.0.Solaranlage_Leistung.Netzzuleitung</field>
              <field name="CONDITION">ne</field>
              <field name="ACK_CONDITION"></field>
              <statement name="STATEMENT">
                <block type="control" id="CUJCPT^XfqY.?x%vz#qx">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                  <field name="OID">javascript.0.Solaranlage_Leistung.Hausverbrauch</field>
                  <field name="WITH_DELAY">FALSE</field>
                  <value name="VALUE">
                    <block type="math_arithmetic" id="?gqf6yiK6:w_-gnl?vK=" inline="false">
                      <field name="OP">ADD</field>
                      <value name="A">
                        <shadow type="math_number" id="0!R/%4MiEj7z}^1W@T4{">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="math_arithmetic" id="bEgyBi7j5G4UcmQI$E!R">
                          <field name="OP">MINUS</field>
                          <value name="A">
                            <shadow type="math_number" id="~h-J~R5+.T(dK^u3L2o6">
                              <field name="NUM">1</field>
                            </shadow>
                            <block type="get_value" id="#,l0L@@(6QPtobIL.,)D">
                              <field name="ATTR">val</field>
                              <field name="OID">javascript.0.Solaranlage_Leistung.Solaranlage_Leistung_AC</field>
                            </block>
                          </value>
                          <value name="B">
                            <shadow type="math_number" id="(N)k{jXTtf66OjKCXz81">
                              <field name="NUM">1</field>
                            </shadow>
                            <block type="on_source" id="jjI].bSj3-w`-/G?Ikmj">
                              <field name="ATTR">state.val</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <value name="B">
                        <shadow type="math_number" id="LH#AE/5^Llm38`I6Dmb_">
                          <field name="NUM">0</field>
                        </shadow>
                        <block type="math_arithmetic" id="cs.Gq5YgzU|cgSli|Bz7">
                          <field name="OP">MINUS</field>
                          <value name="A">
                            <shadow type="math_number" id="lS%;T8L,efb.)D[,Fc);">
                              <field name="NUM">0</field>
                            </shadow>
                          </value>
                          <value name="B">
                            <shadow type="math_number" id="hnJsBCn,uUygiB:h4^Yr">
                              <field name="NUM">1</field>
                            </shadow>
                            <block type="get_value" id="7mrKPWc:)+o*z6?K6Jt!">
                              <field name="ATTR">val</field>
                              <field name="OID">modbus.0.holdingRegisters.102837_Speicher_Ladung</field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </statement>
            </block>
            <block type="on" id="YYeTFl5=+RUFGKp!fwS8" x="-878" y="-133">
              <field name="OID">modbus.0.holdingRegisters.40101_I_DC_Leistung</field>
              <field name="CONDITION">ne</field>
              <field name="ACK_CONDITION"></field>
              <statement name="STATEMENT">
                <block type="timeouts_cleartimeout" id="Fy`6%1}jrkR7yIR7j,bM">
                  <field name="NAME">timeout3</field>
                  <next>
                    <block type="timeouts_settimeout" id="wALq,KRZ=OkTgnFRodgg">
                      <field name="NAME">timeout3</field>
                      <field name="DELAY">200</field>
                      <field name="UNIT">ms</field>
                      <statement name="STATEMENT">
                        <block type="update" id="{8c)~K%7n5#35[IVg*CU">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">javascript.0.Solaranlage_Leistung</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="math_round" id="aW3|`$R[cHnB1`5vSAO9">
                              <field name="OP">ROUND</field>
                              <value name="NUM">
                                <shadow type="math_number" id="nbb7@I/VW7I*Gaam79/3">
                                  <field name="NUM">3.1</field>
                                </shadow>
                                <block type="math_arithmetic" id="N5XZnoEUm{3Kzm-/]B@/">
                                  <field name="OP">MULTIPLY</field>
                                  <value name="A">
                                    <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="!{7/(]DX3lGP@Il`Y=E1">
                                      <field name="NUM">1</field>
                                    </shadow>
                                    <block type="get_value" id="_;teC|IbrE2JD_fEN~js">
                                      <field name="ATTR">val</field>
                                      <field name="OID">modbus.0.holdingRegisters.40101_I_DC_Leistung</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="M:s(2P888iDd:XzoTo4p">
                                      <field name="NUM">1</field>
                                    </shadow>
                                    <block type="math_single" id="/]%B9azJMI,TVYWo.Q;d">
                                      <field name="OP">POW10</field>
                                      <value name="NUM">
                                        <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="T+;~SGgPH[32R+:S}|M!">
                                          <field name="NUM">0</field>
                                        </shadow>
                                        <block type="get_value" id="|gkz@RnPUVcfP6F8mj]p">
                                          <field name="ATTR">val</field>
                                          <field name="OID">modbus.0.holdingRegisters.40102_I_DC_Leistung_SF</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                          <next>
                            <block type="controls_if" id="AMHTnIFMZSH{c?XHv6wc">
                              <value name="IF0">
                                <block type="logic_compare" id=",/Kaam=))V5#8x2cy/^U">
                                  <field name="OP">GT</field>
                                  <value name="A">
                                    <block type="get_value" id="Z_gIo`c(ugW{zweU*.{m">
                                      <field name="ATTR">val</field>
                                      <field name="OID">javascript.0.Solaranlage_Leistung</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="get_value" id="*5L=}2cS1KyS-$RK2taz">
                                      <field name="ATTR">val</field>
                                      <field name="OID">javascript.0.Solaranlage_Leistung.Rekordleistung</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <statement name="DO0">
                                <block type="control" id=".}yz|vaKEtGn2gvt{;05">
                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                  <field name="OID">javascript.0.Solaranlage_Leistung.Rekordleistung</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE">
                                    <block type="get_value" id="b`^e^!0g:!MO|-jQ:OL;">
                                      <field name="ATTR">val</field>
                                      <field name="OID">javascript.0.Solaranlage_Leistung</field>
                                    </block>
                                  </value>
                                </block>
                              </statement>
                            </block>
                          </next>
                        </block>
                      </statement>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
            <block type="on" id=";^6GWeYut-nhxE.AUz(J" x="638" y="-87">
              <field name="OID">javascript.0.Solaranlage_Leistung.Solaranlage_Leistung_AC</field>
              <field name="CONDITION">ne</field>
              <field name="ACK_CONDITION"></field>
              <statement name="STATEMENT">
                <block type="update" id="Gs=D7_=`mu:`=4!jZ(~|">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                  <field name="OID">javascript.0.Solaranlage_Leistung.Solarproduktion</field>
                  <field name="WITH_DELAY">FALSE</field>
                  <value name="VALUE">
                    <block type="math_arithmetic" id="58Ed/#VdCRb5rn(4K3I]">
                      <field name="OP">ADD</field>
                      <value name="A">
                        <shadow type="math_number">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="on_source" id="MwMuZ[$0nBN3Il#TISIt">
                          <field name="ATTR">state.val</field>
                        </block>
                      </value>
                      <value name="B">
                        <shadow type="math_number">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="get_value" id="bc^^;uU?=/FCEfAx*7v*">
                          <field name="ATTR">val</field>
                          <field name="OID">modbus.0.holdingRegisters.102837_Speicher_Ladung</field>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </statement>
            </block>
            <block type="on" id="OW-oQ:0bZs;!3`6XQKkI" x="-912" y="262">
              <field name="OID">modbus.0.holdingRegisters.40084_I_AC_Leistung</field>
              <field name="CONDITION">ne</field>
              <field name="ACK_CONDITION"></field>
              <statement name="STATEMENT">
                <block type="timeouts_cleartimeout" id="q%_Egu!g4KOn/2L[!vgy">
                  <field name="NAME">timeout</field>
                  <next>
                    <block type="timeouts_settimeout" id=":u3%41op%^Qu(+C|xTa|">
                      <field name="NAME">timeout</field>
                      <field name="DELAY">200</field>
                      <field name="UNIT">ms</field>
                      <statement name="STATEMENT">
                        <block type="update" id="zTY~AAkdT)%4e-pY~s-S">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">javascript.0.Solaranlage_Leistung.Solaranlage_Leistung_AC</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="math_round" id="m#;LA^NEnsP_BkDH$q3?">
                              <field name="OP">ROUND</field>
                              <value name="NUM">
                                <shadow type="math_number" id="g|pp9td2yix@H)mxq$k4">
                                  <field name="NUM">3.1</field>
                                </shadow>
                                <block type="math_arithmetic" id="[r$qB!.gW+ScSRB*A/0B">
                                  <field name="OP">MULTIPLY</field>
                                  <value name="A">
                                    <shadow type="math_number" id="P`39pThCR];?Nz[%u*-t">
                                      <field name="NUM">1</field>
                                    </shadow>
                                    <block type="get_value" id="MG/~ix^7B/9x[U!3^{S^">
                                      <field name="ATTR">val</field>
                                      <field name="OID">modbus.0.holdingRegisters.40084_I_AC_Leistung</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number">
                                      <field name="NUM">1</field>
                                    </shadow>
                                    <block type="math_single" id="Zuf+:;;wNJTP.mQ(@()W">
                                      <field name="OP">POW10</field>
                                      <value name="NUM">
                                        <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number">
                                          <field name="NUM">0</field>
                                        </shadow>
                                        <block type="get_value" id="7H:ZX/fDSSnbEy^:MzBW">
                                          <field name="ATTR">val</field>
                                          <field name="OID">modbus.0.holdingRegisters.40085_I_AC_Leistung_SF</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </statement>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
            <block type="on" id="7uzz?/X?Dx,ZWT{bKG~F" x="637" y="238">
              <field name="OID">modbus.0.holdingRegisters.40094_I_AC_Energie_WH</field>
              <field name="CONDITION">ne</field>
              <field name="ACK_CONDITION"></field>
              <statement name="STATEMENT">
                <block type="update" id="=QV~miJO1Wh54BU:yn9k">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                  <field name="OID">javascript.0.Solaranlage_Leistung.Produktion_heute</field>
                  <field name="WITH_DELAY">FALSE</field>
                  <value name="VALUE">
                    <block type="math_arithmetic" id="Le/MYT{jKjV,/-CAhdt]">
                      <field name="OP">MINUS</field>
                      <value name="A">
                        <shadow type="math_number" id="x$Q]Wx5dgsp.[!Z.zjU9">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="on_source" id="Ws%b!85tg4cNWB+6P5,9">
                          <field name="ATTR">state.val</field>
                        </block>
                      </value>
                      <value name="B">
                        <shadow type="math_number">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="get_value" id="=?Y(P`};PeefHO^j,G9`">
                          <field name="ATTR">val</field>
                          <field name="OID">javascript.0.Solaranlage_Leistung.Produktion_bis_gestern</field>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </statement>
            </block>
            <block type="on" id="7LhdcCvQAF6O?)Cv97k)" x="637" y="463">
              <field name="OID">modbus.0.holdingRegisters.40227_M_Exported</field>
              <field name="CONDITION">ne</field>
              <field name="ACK_CONDITION"></field>
              <statement name="STATEMENT">
                <block type="update" id="SMc99VNnv~47wAw8Ja61">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                  <field name="OID">javascript.0.Solaranlage_Leistung.Einspeisung_heute</field>
                  <field name="WITH_DELAY">FALSE</field>
                  <value name="VALUE">
                    <block type="math_arithmetic" id="H*N]9D.GI!,6UFVsB%;;">
                      <field name="OP">MINUS</field>
                      <value name="A">
                        <shadow type="math_number">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="on_source" id="~wB}0V^`a9=E-2`s4$Zf">
                          <field name="ATTR">state.val</field>
                        </block>
                      </value>
                      <value name="B">
                        <shadow type="math_number">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="get_value" id="JIjbe+JJ04ks^Tzy0?Ol">
                          <field name="ATTR">val</field>
                          <field name="OID">javascript.0.Solaranlage_Leistung.Einspeisung_bis_gestern</field>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </statement>
            </block>
            <block type="on" id="~]arppNs^XXX+ogQa_Tt" x="-913" y="563">
              <field name="OID">modbus.0.holdingRegisters.40099_I_DC_Spannung</field>
              <field name="CONDITION">ne</field>
              <field name="ACK_CONDITION"></field>
              <statement name="STATEMENT">
                <block type="timeouts_cleartimeout" id="W4v}YD7/%?$ihkB[oW[}">
                  <field name="NAME">timeout2</field>
                  <next>
                    <block type="timeouts_settimeout" id="=x_cR,-y@7ewNLd/(7Se">
                      <field name="NAME">timeout2</field>
                      <field name="DELAY">200</field>
                      <field name="UNIT">ms</field>
                      <statement name="STATEMENT">
                        <block type="update" id="LKPuUYW*+`YGF=3ujyV%">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">javascript.0.Solaranlage_Leistung.DC_Spannung</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="math_round" id="yDm+i2kefR/*BPE(=@Dx">
                              <field name="OP">ROUND</field>
                              <value name="NUM">
                                <shadow type="math_number">
                                  <field name="NUM">3.1</field>
                                </shadow>
                                <block type="math_arithmetic" id="``b;Gbd-Ok^kf/Uh^TNR">
                                  <field name="OP">MULTIPLY</field>
                                  <value name="A">
                                    <shadow type="math_number">
                                      <field name="NUM">1</field>
                                    </shadow>
                                    <block type="get_value" id="t-R#;+3MLXA}/IAdbVa5">
                                      <field name="ATTR">val</field>
                                      <field name="OID">modbus.0.holdingRegisters.40099_I_DC_Spannung</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number">
                                      <field name="NUM">1</field>
                                    </shadow>
                                    <block type="math_single" id="}ML#Z==2!uV]`AT%)Dt+">
                                      <field name="OP">POW10</field>
                                      <value name="NUM">
                                        <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number">
                                          <field name="NUM">0</field>
                                        </shadow>
                                        <block type="get_value" id="xMgK%)@glo{L?2iCJ|8t">
                                          <field name="ATTR">val</field>
                                          <field name="OID">modbus.0.holdingRegisters.40100_I_DC_Spannung_SF</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </statement>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
            <block type="on" id="n{`D$LM(h6ta669z@~Kt" x="638" y="688">
              <field name="OID">modbus.0.holdingRegisters.40235_M_Imported</field>
              <field name="CONDITION">ne</field>
              <field name="ACK_CONDITION"></field>
              <statement name="STATEMENT">
                <block type="update" id="fgXCk=ZzM%3/[x,3,fnI">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                  <field name="OID">javascript.0.Solaranlage_Leistung.Zukauf_heute</field>
                  <field name="WITH_DELAY">FALSE</field>
                  <value name="VALUE">
                    <block type="math_arithmetic" id="K*rP]yKwOE0#6jabz`Fg">
                      <field name="OP">MINUS</field>
                      <value name="A">
                        <shadow type="math_number">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="on_source" id="Ua3+ZJa?$mQl3RT=|ki$">
                          <field name="ATTR">state.val</field>
                        </block>
                      </value>
                      <value name="B">
                        <shadow type="math_number">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="get_value" id="ioU+G_=SoxAOa@]7o[+@">
                          <field name="ATTR">val</field>
                          <field name="OID">javascript.0.Solaranlage_Leistung.Zukauf_bis_gestern</field>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </statement>
            </block>
            <block type="on" id="AMoQM|9_7.?pRlj-2f+F" x="-913" y="862">
              <field name="OID">modbus.0.holdingRegisters.40207_M_AC_Power</field>
              <field name="CONDITION">ne</field>
              <field name="ACK_CONDITION"></field>
              <statement name="STATEMENT">
                <block type="timeouts_cleartimeout" id="`eaycN2^]x3,7OqBp+XA">
                  <field name="NAME">timeout4</field>
                  <next>
                    <block type="timeouts_settimeout" id="pU1`kX}:Mt~}~yk|D|-B">
                      <field name="NAME">timeout4</field>
                      <field name="DELAY">200</field>
                      <field name="UNIT">ms</field>
                      <statement name="STATEMENT">
                        <block type="update" id="nO-Uij_JKuz`o31}+~Xq">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">javascript.0.Solaranlage_Leistung.Netzzuleitung</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="math_arithmetic" id="{16GkXCaAvHkJNNq.p*8">
                              <field name="OP">MINUS</field>
                              <value name="A">
                                <shadow type="math_number" id="Mh]LJ0Ph5.KPgmy#53cx">
                                  <field name="NUM">0</field>
                                </shadow>
                              </value>
                              <value name="B">
                                <shadow type="math_number" id="_cQbA{tL-X*PH0MT@)KT">
                                  <field name="NUM">1</field>
                                </shadow>
                                <block type="math_round" id="!fNg?|Xohw/saU;-P5#3">
                                  <field name="OP">ROUND</field>
                                  <value name="NUM">
                                    <shadow type="math_number">
                                      <field name="NUM">3.1</field>
                                    </shadow>
                                    <block type="math_arithmetic" id="tr?dnsdQanXZveeKSo#l">
                                      <field name="OP">MULTIPLY</field>
                                      <value name="A">
                                        <shadow type="math_number">
                                          <field name="NUM">1</field>
                                        </shadow>
                                        <block type="get_value" id="5l.*;j7j_?s[q;-T;ufT">
                                          <field name="ATTR">val</field>
                                          <field name="OID">modbus.0.holdingRegisters.40207_M_AC_Power</field>
                                        </block>
                                      </value>
                                      <value name="B">
                                        <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number">
                                          <field name="NUM">1</field>
                                        </shadow>
                                        <block type="math_single" id="g:Sp5XLI{utoE[7k-f{5">
                                          <field name="OP">POW10</field>
                                          <value name="NUM">
                                            <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number">
                                              <field name="NUM">0</field>
                                            </shadow>
                                            <block type="get_value" id="[sHni@a$PTh6.}1)I1ji">
                                              <field name="ATTR">val</field>
                                              <field name="OID">modbus.0.holdingRegisters.40211_M_AC_Power_SF</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </statement>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
            <block type="schedule" id="$B-)n0[qMqqLA6ns(R+K" x="637" y="937">
              <field name="SCHEDULE">0 0 * * *</field>
              <statement name="STATEMENT">
                <block type="control" id="reprX/Mnv8+b+5a;Z7rZ">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                  <field name="OID">javascript.0.Solaranlage_Leistung.Einspeisung_bis_gestern</field>
                  <field name="WITH_DELAY">FALSE</field>
                  <value name="VALUE">
                    <block type="get_value" id="FdK8V/G~rkFAq.i1^-4X">
                      <field name="ATTR">val</field>
                      <field name="OID">modbus.0.holdingRegisters.40227_M_Exported</field>
                    </block>
                  </value>
                  <next>
                    <block type="control" id="G!Zs)5d7mGeF/r4LiX#[">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">javascript.0.Solaranlage_Leistung.Zukauf_bis_gestern</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="get_value" id="6*3-_~6EWQylKYg2kJ1X">
                          <field name="ATTR">val</field>
                          <field name="OID">modbus.0.holdingRegisters.40235_M_Imported</field>
                        </block>
                      </value>
                      <next>
                        <block type="control" id="5k%A(5jYs1ig;%x7yXey">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">javascript.0.Solaranlage_Leistung.Produktion_bis_gestern</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="get_value" id="hN-yDyrqW2gW{BW8OBbz">
                              <field name="ATTR">val</field>
                              <field name="OID">modbus.0.holdingRegisters.40094_I_AC_Energie_WH</field>
                            </block>
                          </value>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
            <block type="on" id="B-_%d7kFurSe,QbSSfDB" x="-863" y="1138">
              <field name="OID">modbus.0.holdingRegisters.40108_I_Status</field>
              <field name="CONDITION">ne</field>
              <field name="ACK_CONDITION"></field>
              <statement name="STATEMENT">
                <block type="controls_if" id="NIS;BHH+H-j-MFE|Qd.^">
                  <mutation elseif="2"></mutation>
                  <value name="IF0">
                    <block type="logic_compare" id="KS.1QBkU=]eIKHGTfzAH">
                      <field name="OP">EQ</field>
                      <value name="A">
                        <block type="on_source" id="1etJ_}@`id3*WnvF$R37">
                          <field name="ATTR">state.val</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="math_number" id="W+N_V!qm^t7U$)LjLT-3">
                          <field name="NUM">4</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO0">
                    <block type="telegram" id="A?=)$7_|D$REWIqVc]6x" disabled="true">
                      <field name="INSTANCE"></field>
                      <field name="LOG"></field>
                      <field name="SILENT">FALSE</field>
                      <field name="PARSEMODE">default</field>
                      <value name="MESSAGE">
                        <shadow type="text" id="$;dn4aU[=%sh4)fm0_e)">
                          <field name="TEXT">Solaranlage hat die Produktion gestartet ☀️</field>
                        </shadow>
                      </value>
                    </block>
                  </statement>
                  <value name="IF1">
                    <block type="logic_compare" id="mn]y,X.td5=n5[uC,ZLt">
                      <field name="OP">EQ</field>
                      <value name="A">
                        <block type="on_source" id="R+3T;D(MQ6.z}^,_L5@2">
                          <field name="ATTR">state.val</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="math_number" id="KU=1])[x@}0#lD82vBj*">
                          <field name="NUM">2</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO1">
                    <block type="telegram" id="1)Ufu%C[E+3.p||g%f6_">
                      <field name="INSTANCE"></field>
                      <field name="LOG"></field>
                      <field name="SILENT">FALSE</field>
                      <field name="PARSEMODE">default</field>
                      <value name="MESSAGE">
                        <shadow type="text" id="lP$.My$bXceZE*.e5;se">
                          <field name="TEXT">Solaranlage stellt die Produktion ein 🌒</field>
                        </shadow>
                      </value>
                    </block>
                  </statement>
                  <value name="IF2">
                    <block type="logic_compare" id="iDw3qV.cPXtOnxUN|}!]">
                      <field name="OP">EQ</field>
                      <value name="A">
                        <block type="on_source" id="If$f?BO0hTL!DQ6P+~6]">
                          <field name="ATTR">state.val</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="math_number" id="Sfn8]o{he?_h{]R3%@w8">
                          <field name="NUM">7</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO2">
                    <block type="telegram" id="l-~;uMDquQf}!k@^imR/">
                      <field name="INSTANCE"></field>
                      <field name="LOG"></field>
                      <field name="SILENT">FALSE</field>
                      <field name="PARSEMODE">default</field>
                      <value name="MESSAGE">
                        <shadow type="text" id="6aD|z$p+/GQ-0GK!Jl/e">
                          <field name="TEXT">Solaranlage meldet einen Fehler! 😱</field>
                        </shadow>
                      </value>
                    </block>
                  </statement>
                </block>
              </statement>
            </block>
            <block type="astro" id="PA{J4`LUgb*QNbna=Wn^" x="-36" y="1206">
              <field name="TYPE">sunset</field>
              <field name="OFFSET">0</field>
              <statement name="STATEMENT">
                <block type="variables_set" id="nsVZY14,vB~GV3zqLA?w">
                  <field name="VAR" id="nNqB1b6bK3yOaF{%=r67">Tagesleistung</field>
                  <value name="VALUE">
                    <block type="math_rndfixed" id="B;C%6l7`6R8CB9Q,Yqe(">
                      <field name="n">1</field>
                      <value name="x">
                        <shadow type="math_number" id=":luhIPZf8eYAq0B0Lvv$">
                          <field name="NUM">3.1234</field>
                        </shadow>
                        <block type="math_arithmetic" id="miL)JXF:KkEk!Q$CpWX?">
                          <field name="OP">DIVIDE</field>
                          <value name="A">
                            <shadow type="math_number" id="/qYj3Nk4_XW;4G0BcZ`I">
                              <field name="NUM">1</field>
                            </shadow>
                            <block type="math_arithmetic" id="APsnJy)D[H4HGby/--iF">
                              <field name="OP">MINUS</field>
                              <value name="A">
                                <shadow type="math_number" id="uFIB//Cpu7d04w1ZZ[dD">
                                  <field name="NUM">1</field>
                                </shadow>
                                <block type="get_value" id="S`n*O^}zi}5`iySBYy@@">
                                  <field name="ATTR">val</field>
                                  <field name="OID">modbus.0.holdingRegisters.40094_I_AC_Energie_WH</field>
                                </block>
                              </value>
                              <value name="B">
                                <shadow type="math_number" id="z(knQ3vuCW3onpW`gJ9{">
                                  <field name="NUM">1</field>
                                </shadow>
                                <block type="get_value" id="[aP9+hl``r1PD~w6}Vm:">
                                  <field name="ATTR">val</field>
                                  <field name="OID">javascript.0.Solaranlage_Leistung.Produktion_bis_gestern</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <value name="B">
                            <shadow type="math_number" id="RUo/URN?DO}kIX^@Chlc">
                              <field name="NUM">1000</field>
                            </shadow>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                  <next>
                    <block type="variables_set" id="UPTiew:jrYndxI.2=`rb">
                      <field name="VAR" id="WorYn/,IEi?5LB02:/u(">Tagesexport</field>
                      <value name="VALUE">
                        <block type="math_rndfixed" id="l-.Uqt@TO=R8:Qb[?JH4">
                          <field name="n">1</field>
                          <value name="x">
                            <shadow type="math_number" id="VC2iM){}sS$0U0HfUxZv">
                              <field name="NUM">3.1234</field>
                            </shadow>
                            <block type="math_arithmetic" id="yU%:UQkU?)E;Ybki-.EY">
                              <field name="OP">DIVIDE</field>
                              <value name="A">
                                <shadow type="math_number">
                                  <field name="NUM">1</field>
                                </shadow>
                                <block type="math_arithmetic" id="_law3uZ9kpHEEDh;$ue/">
                                  <field name="OP">MINUS</field>
                                  <value name="A">
                                    <shadow type="math_number">
                                      <field name="NUM">1</field>
                                    </shadow>
                                    <block type="get_value" id="%PBlf]`+#$I1WOGGW:n?">
                                      <field name="ATTR">val</field>
                                      <field name="OID">modbus.0.holdingRegisters.40227_M_Exported</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <shadow type="math_number">
                                      <field name="NUM">1</field>
                                    </shadow>
                                    <block type="get_value" id="!@RI[o.hdO3_/!BOt0I;">
                                      <field name="ATTR">val</field>
                                      <field name="OID">javascript.0.Solaranlage_Leistung.Einspeisung_bis_gestern</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <shadow type="math_number" id="cK?GMkVlEh?4r-o{i}gR">
                                  <field name="NUM">1000</field>
                                </shadow>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                      <next>
                        <block type="telegram" id="?u}%Vs`~(6}eITS`e[Fh">
                          <field name="INSTANCE"></field>
                          <field name="LOG"></field>
                          <field name="SILENT">FALSE</field>
                          <field name="PARSEMODE">default</field>
                          <value name="MESSAGE">
                            <shadow type="text" id="HL{dRSIDt~=(%R^yrnMh">
                              <field name="TEXT">Solaranlage heute </field>
                            </shadow>
                            <block type="text_join" id="k:*shzux+X+e+yK{{p7)">
                              <mutation items="5"></mutation>
                              <value name="ADD0">
                                <block type="text" id="0^_~ezUH)Qou%#s$RET?">
                                  <field name="TEXT">Die Solaranlage hat heute </field>
                                </block>
                              </value>
                              <value name="ADD1">
                                <block type="variables_get" id="q-cguqU$)umnuYw)Z?*_">
                                  <field name="VAR" id="nNqB1b6bK3yOaF{%=r67">Tagesleistung</field>
                                </block>
                              </value>
                              <value name="ADD2">
                                <block type="text" id="?ywq8fy9_7c3Yl1(OBz}">
                                  <field name="TEXT"> kWh produziert ☀️ und </field>
                                </block>
                              </value>
                              <value name="ADD3">
                                <block type="variables_get" id="|39ijp:`E@FYF?!YZgd.">
                                  <field name="VAR" id="WorYn/,IEi?5LB02:/u(">Tagesexport</field>
                                </block>
                              </value>
                              <value name="ADD4">
                                <block type="text" id="C(O`P9UJ]ZWO+a@^9rlc">
                                  <field name="TEXT"> kWh eingespiesen</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <next>
                            <block type="controls_if" id="sImv$.B4K+bZyG@z?y66">
                              <value name="IF0">
                                <block type="logic_compare" id="o,Dk@N2_L.8EVDMEhc^_">
                                  <field name="OP">GT</field>
                                  <value name="A">
                                    <block type="variables_get" id="PSjrvcw9Lz`3Rldib.93">
                                      <field name="VAR" id="nNqB1b6bK3yOaF{%=r67">Tagesleistung</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="get_value" id=";{Xwsr6/+xc.1{kS]YQg">
                                      <field name="ATTR">val</field>
                                      <field name="OID">javascript.0.Solaranlage_Leistung.Rekord_Tagesleistung</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <statement name="DO0">
                                <block type="update" id="z0c_%eHv+]3nh43[*PbH">
                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                  <field name="OID">javascript.0.Solaranlage_Leistung.Rekord_Tagesleistung</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE">
                                    <block type="variables_get" id="Ce:6b5,ZbVbo]9UDPoo-">
                                      <field name="VAR" id="nNqB1b6bK3yOaF{%=r67">Tagesleistung</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="control" id="G#=qXdAb8oQk;oZ/-!(W">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                      <field name="OID">javascript.0.Solaranlage_Leistung.Rekord_Tagesleistung</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE">
                                        <block type="variables_get" id="Vzu|Ikzr*)M?0j#=}r3*">
                                          <field name="VAR" id="nNqB1b6bK3yOaF{%=r67">Tagesleistung</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="telegram" id="#fhym!.#EP~ZPw~.zn`(">
                                          <field name="INSTANCE"></field>
                                          <field name="LOG"></field>
                                          <field name="SILENT">FALSE</field>
                                          <field name="PARSEMODE">default</field>
                                          <value name="MESSAGE">
                                            <shadow type="text" id="o#j%_SeEerjYWZ;[L3+C">
                                              <field name="TEXT"></field>
                                            </shadow>
                                            <block type="text_join" id="Dk?hsuD@H~PJ@)|X05Gi">
                                              <mutation items="4"></mutation>
                                              <value name="ADD0">
                                                <block type="text" id="D!j2^I@m:}CXLQ7NrcY1">
                                                  <field name="TEXT">Neue Rekord-Tagesleistung der Solaranlage! ☀️</field>
                                                </block>
                                              </value>
                                              <value name="ADD1">
                                                <block type="text_newline" id="goiOPsjXPSmpL95e^kv+">
                                                  <field name="Type">\n</field>
                                                </block>
                                              </value>
                                              <value name="ADD2">
                                                <block type="variables_get" id=":l(.XREPon]%[CEpJ:G0">
                                                  <field name="VAR" id="nNqB1b6bK3yOaF{%=r67">Tagesleistung</field>
                                                </block>
                                              </value>
                                              <value name="ADD3">
                                                <block type="text" id=",g@EgJr!eYDmfF).GOvE">
                                                  <field name="TEXT"> kWh</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </statement>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
          </xml>
          

          Statusbericht per Alexa abfragen:

          79fd661f-861c-46cf-8eda-2c2f2f02f747-image.png

          <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
              <variable id="yVq_yl6H*v?=l%;j-=@n">Speicherladung</variable>
              <variable id=",nIjO4mQyc*.a`#gSy7d">Einspeisung</variable>
              <variable id="rli+H4BKh^Z1[uy??0b-">Statusbericht_Text</variable>
            </variables>
            <block type="on" id="8K9ayuc7yIo!w#nG0II(" x="241" y="97">
              <field name="OID">javascript.0.Solaranlage_Statusbericht</field>
              <field name="CONDITION">gt</field>
              <field name="ACK_CONDITION"></field>
              <statement name="STATEMENT">
                <block type="control" id="?8*[m@OYvEfhfGkZEfvp">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                  <field name="OID">javascript.0.Solaranlage_Statusbericht</field>
                  <field name="WITH_DELAY">FALSE</field>
                  <value name="VALUE">
                    <block type="logic_boolean" id=",3=QtuDm1r8EjEIDpD*,">
                      <field name="BOOL">FALSE</field>
                    </block>
                  </value>
                  <next>
                    <block type="controls_if" id="8O`[X0ccXu4=poasos-E">
                      <mutation elseif="1" else="1"></mutation>
                      <value name="IF0">
                        <block type="logic_operation" id="xjz,3c5K{ddq!anx1OL4">
                          <field name="OP">AND</field>
                          <value name="A">
                            <block type="logic_compare" id="A}(hU65BS-5aS6=[x/FJ">
                              <field name="OP">LT</field>
                              <value name="A">
                                <block type="get_value" id="VA[-`no?3}x}T{h=?:Vx">
                                  <field name="ATTR">val</field>
                                  <field name="OID">modbus.0.holdingRegisters.102837_Speicher_Ladung</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="math_number" id="21wS6v)ba1tO|c#mz*qu">
                                  <field name="NUM">500</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_compare" id="RMNv96-wE_0JYIw]]E%(">
                              <field name="OP">GT</field>
                              <value name="A">
                                <block type="get_value" id="6Zb4LJB+N?hTy7ZJ-48d">
                                  <field name="ATTR">val</field>
                                  <field name="OID">modbus.0.holdingRegisters.102837_Speicher_Ladung</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="math_number" id="hYjFgxqQ_*WpB1F(sc{{">
                                  <field name="NUM">-500</field>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="variables_set" id="PICh0MX;(m+|bX+swZ2~">
                          <field name="VAR" id="yVq_yl6H*v?=l%;j-=@n">Speicherladung</field>
                          <value name="VALUE">
                            <block type="text" id="4U|HAj0EWo$Kbma#OCgN">
                              <field name="TEXT"></field>
                            </block>
                          </value>
                        </block>
                      </statement>
                      <value name="IF1">
                        <block type="logic_compare" id="p!en$ptpk]4Y$|+h]VT`">
                          <field name="OP">GT</field>
                          <value name="A">
                            <block type="get_value" id="KtutV)f6CGj$_*BYhI*5">
                              <field name="ATTR">val</field>
                              <field name="OID">modbus.0.holdingRegisters.102837_Speicher_Ladung</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="math_number" id="(tSF{NtI=7*dcUzQ0Eat">
                              <field name="NUM">0</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO1">
                        <block type="variables_set" id="_~]H7_7N{0cp9r4%G)=4">
                          <field name="VAR" id="yVq_yl6H*v?=l%;j-=@n">Speicherladung</field>
                          <value name="VALUE">
                            <block type="text_join" id="i6yk+/s/8,Ka9(cUfN]=">
                              <mutation items="4"></mutation>
                              <value name="ADD0">
                                <block type="text" id="R-7UcKN-==Eer=hVb,$u">
                                  <field name="TEXT">Der Speicher wird mit </field>
                                </block>
                              </value>
                              <value name="ADD1">
                                <block type="math_single" id="rw:d[{4$/TwN%_DGaQlJ">
                                  <field name="OP">ABS</field>
                                  <value name="NUM">
                                    <shadow type="math_number" id="t!sF1n*-.d2DO:6-=;^:">
                                      <field name="NUM">9</field>
                                    </shadow>
                                    <block type="math_rndfixed" id="isc,6Datfbf.U7fp1^!e">
                                      <field name="n">1</field>
                                      <value name="x">
                                        <shadow type="math_number">
                                          <field name="NUM">3.1234</field>
                                        </shadow>
                                        <block type="math_arithmetic" id="LIdNnM#%S9;DjP1(_LBs">
                                          <field name="OP">DIVIDE</field>
                                          <value name="A">
                                            <shadow type="math_number">
                                              <field name="NUM">1</field>
                                            </shadow>
                                            <block type="get_value" id="GK0=z$$-Z_dwJkzQsS*o">
                                              <field name="ATTR">val</field>
                                              <field name="OID">modbus.0.holdingRegisters.102837_Speicher_Ladung</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <shadow type="math_number" id="jebSv7nL_bxmo)uo9$B5">
                                              <field name="NUM">1000</field>
                                            </shadow>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="ADD2">
                                <block type="text" id="na-j7TEGV0kL,!gwI}pb">
                                  <field name="TEXT"> Kilowatt geladen.</field>
                                </block>
                              </value>
                              <value name="ADD3">
                                <block type="text_newline" id="6VRBu/V8%FY{{B+Jg;}B">
                                  <field name="Type">\n</field>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </statement>
                      <statement name="ELSE">
                        <block type="variables_set" id="F`J-Redx^c/-0G`eG!V@">
                          <field name="VAR" id="yVq_yl6H*v?=l%;j-=@n">Speicherladung</field>
                          <value name="VALUE">
                            <block type="text_join" id="{Vcpa#5|;jhGKZ;[]a23">
                              <mutation items="4"></mutation>
                              <value name="ADD0">
                                <block type="text" id="*e|iIw`tn@elV0ypp;/|">
                                  <field name="TEXT">Wir entladen den Speicher mit </field>
                                </block>
                              </value>
                              <value name="ADD1">
                                <block type="math_single" id=",.)BEa^hD2vX+gsSw3t)">
                                  <field name="OP">ABS</field>
                                  <value name="NUM">
                                    <shadow type="math_number" id="vQs.e{jI=s|=s)$7$46J">
                                      <field name="NUM">9</field>
                                    </shadow>
                                    <block type="math_rndfixed" id="YcrfPM]2U2T~:DC$8aBg">
                                      <field name="n">1</field>
                                      <value name="x">
                                        <shadow type="math_number">
                                          <field name="NUM">3.1234</field>
                                        </shadow>
                                        <block type="math_arithmetic" id="7Q%q0;cxQ0#SPpd0qQ2Y">
                                          <field name="OP">DIVIDE</field>
                                          <value name="A">
                                            <shadow type="math_number">
                                              <field name="NUM">1</field>
                                            </shadow>
                                            <block type="get_value" id="~wtx_zV0_u6fwI8CEOdI">
                                              <field name="ATTR">val</field>
                                              <field name="OID">modbus.0.holdingRegisters.102837_Speicher_Ladung</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <shadow type="math_number" id="It`44!P*hc7U1GJTc;Va">
                                              <field name="NUM">1000</field>
                                            </shadow>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="ADD2">
                                <block type="text" id="8Y=0XI%BKq?mT,OP;J4f">
                                  <field name="TEXT"> Kilowatt.</field>
                                </block>
                              </value>
                              <value name="ADD3">
                                <block type="text_newline" id="Lw65-y0f3z)JR|DHEYH$">
                                  <field name="Type">\n</field>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </statement>
                      <next>
                        <block type="controls_if" id="oH3%1(j-AD%_l1jQ*lc{">
                          <mutation elseif="1" else="1"></mutation>
                          <value name="IF0">
                            <block type="logic_operation" id="~fA!by48q**ZoHgD.pAL">
                              <field name="OP">AND</field>
                              <value name="A">
                                <block type="logic_compare" id="4ZZ=)%w.u3`[Xxi^V?[c">
                                  <field name="OP">LT</field>
                                  <value name="A">
                                    <block type="get_value" id="$@*Tdj7Wkm:n`xrMV:kS">
                                      <field name="ATTR">val</field>
                                      <field name="OID">javascript.0.Solaranlage_Leistung.Netzzuleitung</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="math_number" id="kUM^vFYB7w8?.MRGB@x*">
                                      <field name="NUM">500</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_compare" id="c_@z9cG!;cNmsHr+00}]">
                                  <field name="OP">GT</field>
                                  <value name="A">
                                    <block type="get_value" id="js+6_pxCPo58NHOpg1ff">
                                      <field name="ATTR">val</field>
                                      <field name="OID">javascript.0.Solaranlage_Leistung.Netzzuleitung</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="math_number" id="/J$s-BoSQ^O?`1CZQ/AT">
                                      <field name="NUM">-500</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="variables_set" id="Ty0%qG$nnRFb*E~:[bJO">
                              <field name="VAR" id=",nIjO4mQyc*.a`#gSy7d">Einspeisung</field>
                              <value name="VALUE">
                                <block type="text" id="iH#JfdH8pctpP=E:[(?k">
                                  <field name="TEXT"></field>
                                </block>
                              </value>
                            </block>
                          </statement>
                          <value name="IF1">
                            <block type="logic_compare" id="0uw:!ubZ)i4F:NWF{{]Q">
                              <field name="OP">LT</field>
                              <value name="A">
                                <block type="get_value" id="jZ-a3$rZXgu:B|^s%g7Y">
                                  <field name="ATTR">val</field>
                                  <field name="OID">javascript.0.Solaranlage_Leistung.Netzzuleitung</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="math_number" id="QE.K-O1M#:.Kc`7pkR8k">
                                  <field name="NUM">0</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO1">
                            <block type="variables_set" id="!_A*lK+~H4@gqNhSkUpT">
                              <field name="VAR" id=",nIjO4mQyc*.a`#gSy7d">Einspeisung</field>
                              <value name="VALUE">
                                <block type="text_join" id="S|m][PW|cZyNXT@:S*m#">
                                  <mutation items="4"></mutation>
                                  <value name="ADD0">
                                    <block type="text" id="3aK_#j90(Q%R$,O!EE#z">
                                      <field name="TEXT">Wir speisen </field>
                                    </block>
                                  </value>
                                  <value name="ADD1">
                                    <block type="math_single" id="s()~78pNzP.%SA_EplCq">
                                      <field name="OP">ABS</field>
                                      <value name="NUM">
                                        <shadow type="math_number" id="~DAXRW,C$#Z)Ua7_9.8d">
                                          <field name="NUM">9</field>
                                        </shadow>
                                        <block type="math_rndfixed" id="$qh7/m*@@n%Y{)uKkj%?">
                                          <field name="n">1</field>
                                          <value name="x">
                                            <shadow type="math_number">
                                              <field name="NUM">3.1234</field>
                                            </shadow>
                                            <block type="math_arithmetic" id="oh~)lBemmd3tVl+$L)/#">
                                              <field name="OP">DIVIDE</field>
                                              <value name="A">
                                                <shadow type="math_number">
                                                  <field name="NUM">1</field>
                                                </shadow>
                                                <block type="get_value" id="25A*CK8Xu2|b/TlsV8Ig">
                                                  <field name="ATTR">val</field>
                                                  <field name="OID">javascript.0.Solaranlage_Leistung.Netzzuleitung</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <shadow type="math_number" id="PO!M3=2}`32(,}X_oZez">
                                                  <field name="NUM">1000</field>
                                                </shadow>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <value name="ADD2">
                                    <block type="text" id="K-+yTNt9f[|rYLRXCc|L">
                                      <field name="TEXT"> Kilowatt ins Netz ein.</field>
                                    </block>
                                  </value>
                                  <value name="ADD3">
                                    <block type="text_newline" id="ihzsmtfT6Y?v|t$LDtk_">
                                      <field name="Type">\n</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </statement>
                          <statement name="ELSE">
                            <block type="variables_set" id="Sv4B=|GnfE/p99wGW=T_">
                              <field name="VAR" id=",nIjO4mQyc*.a`#gSy7d">Einspeisung</field>
                              <value name="VALUE">
                                <block type="text_join" id="X%s:p0C]?ePT2P%`FwUC">
                                  <mutation items="4"></mutation>
                                  <value name="ADD0">
                                    <block type="text" id="[r4WdUumM5,kapchO:EO">
                                      <field name="TEXT">Wir beziehen </field>
                                    </block>
                                  </value>
                                  <value name="ADD1">
                                    <block type="math_single" id="@c|/@;Sib_l/voSyew#2">
                                      <field name="OP">ABS</field>
                                      <value name="NUM">
                                        <shadow type="math_number" id="ioG~ozs(=U+7mpcvu0^!">
                                          <field name="NUM">9</field>
                                        </shadow>
                                        <block type="math_rndfixed" id="ZA$AVUo4XYHOb6UDg(q^">
                                          <field name="n">1</field>
                                          <value name="x">
                                            <shadow type="math_number">
                                              <field name="NUM">3.1234</field>
                                            </shadow>
                                            <block type="math_arithmetic" id="XR_tkeA$b^%_]3xSZcsO">
                                              <field name="OP">DIVIDE</field>
                                              <value name="A">
                                                <shadow type="math_number">
                                                  <field name="NUM">1</field>
                                                </shadow>
                                                <block type="get_value" id="O=-F4$P[*E_Ddk(|i4[:">
                                                  <field name="ATTR">val</field>
                                                  <field name="OID">javascript.0.Solaranlage_Leistung.Netzzuleitung</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <shadow type="math_number" id="-vsbR0Q=W^WD:(`N](@Y">
                                                  <field name="NUM">1000</field>
                                                </shadow>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <value name="ADD2">
                                    <block type="text" id="sN#R!%Q/2CTS^nN|^|rU">
                                      <field name="TEXT"> Kilowatt vom Netz.</field>
                                    </block>
                                  </value>
                                  <value name="ADD3">
                                    <block type="text_newline" id="Ns*;`8ozU}E8NP/@Tr#$">
                                      <field name="Type">\n</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </statement>
                          <next>
                            <block type="variables_set" id="7Ea;*1qQ?mk].uizRDDf">
                              <field name="VAR" id="rli+H4BKh^Z1[uy??0b-">Statusbericht_Text</field>
                              <value name="VALUE">
                                <block type="text_join" id=",*myJKhwd2`$4Sce*}Y|">
                                  <mutation items="9"></mutation>
                                  <value name="ADD0">
                                    <block type="text" id="DJ7yDR8sOG3)8N/yDBe2">
                                      <field name="TEXT">Die Solaranlage produziert aktuell </field>
                                    </block>
                                  </value>
                                  <value name="ADD1">
                                    <block type="math_rndfixed" id="lL#2}[?aFK,oF~869p?)">
                                      <field name="n">1</field>
                                      <value name="x">
                                        <shadow type="math_number" id="Zrbl$?9%9)e`fqN@S-16">
                                          <field name="NUM">3.1234</field>
                                        </shadow>
                                        <block type="math_arithmetic" id="_^#{H0G?Rc?nb|(lS[bP">
                                          <field name="OP">DIVIDE</field>
                                          <value name="A">
                                            <shadow type="math_number" id="64+Xt8aTcU*s)NJ#1Llf">
                                              <field name="NUM">1</field>
                                            </shadow>
                                            <block type="get_value" id="(knF$rbVfs9^GC/s)JhF">
                                              <field name="ATTR">val</field>
                                              <field name="OID">javascript.0.Solaranlage_Leistung.Solarproduktion</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <shadow type="math_number" id="/^8dDky38(5oo#7o-R(v">
                                              <field name="NUM">1000</field>
                                            </shadow>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <value name="ADD2">
                                    <block type="text" id="`N`@pn_F5@xB}BFFv[bo">
                                      <field name="TEXT"> Kilowatt.</field>
                                    </block>
                                  </value>
                                  <value name="ADD3">
                                    <block type="text_newline" id="fr$0dQ@pokQ=a5pr(UM;">
                                      <field name="Type">\n</field>
                                    </block>
                                  </value>
                                  <value name="ADD4">
                                    <block type="variables_get" id="DYPHeo/(AU+0X*SgaDsg">
                                      <field name="VAR" id="yVq_yl6H*v?=l%;j-=@n">Speicherladung</field>
                                    </block>
                                  </value>
                                  <value name="ADD5">
                                    <block type="variables_get" id="rT%nRW_s@Sz6Fp=iPyu-">
                                      <field name="VAR" id=",nIjO4mQyc*.a`#gSy7d">Einspeisung</field>
                                    </block>
                                  </value>
                                  <value name="ADD6">
                                    <block type="text" id="t~vB168IMi8()X}qxFer">
                                      <field name="TEXT">Wir haben heute </field>
                                    </block>
                                  </value>
                                  <value name="ADD7">
                                    <block type="math_rndfixed" id="mXEbaiY;$=D)yp-fWE;w">
                                      <field name="n">1</field>
                                      <value name="x">
                                        <shadow type="math_number">
                                          <field name="NUM">3.1234</field>
                                        </shadow>
                                        <block type="math_arithmetic" id="=ot6}H8|oTXu,cyW5C3]">
                                          <field name="OP">DIVIDE</field>
                                          <value name="A">
                                            <shadow type="math_number">
                                              <field name="NUM">1</field>
                                            </shadow>
                                            <block type="math_arithmetic" id="xvN/ql1B9Xp98f5}5`M{">
                                              <field name="OP">MINUS</field>
                                              <value name="A">
                                                <shadow type="math_number">
                                                  <field name="NUM">1</field>
                                                </shadow>
                                                <block type="get_value" id=",%boSIr($2jHjaOq!XSk">
                                                  <field name="ATTR">val</field>
                                                  <field name="OID">modbus.0.holdingRegisters.40094_I_AC_Energie_WH</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <shadow type="math_number">
                                                  <field name="NUM">1</field>
                                                </shadow>
                                                <block type="get_value" id="-cld;/!:f!#}ri_vw6!9">
                                                  <field name="ATTR">val</field>
                                                  <field name="OID">javascript.0.Solaranlage_Leistung.Produktion_bis_gestern</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <shadow type="math_number" id="H+t0JeUHjc|oGk,:,6ls">
                                              <field name="NUM">1000</field>
                                            </shadow>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <value name="ADD8">
                                    <block type="text" id="Yd-q@k{II+/Y/j8HIJYX">
                                      <field name="TEXT"> Kilowattstunden produziert.</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <next>
                                <block type="telegram" id="lRhlQ[vw~k+@+]DVNHE0">
                                  <field name="INSTANCE"></field>
                                  <field name="LOG"></field>
                                  <field name="SILENT">FALSE</field>
                                  <field name="PARSEMODE">default</field>
                                  <value name="MESSAGE">
                                    <shadow type="text" id="B7Vnv.U)Xj3:O97^w4{!">
                                      <field name="TEXT">text</field>
                                    </shadow>
                                    <block type="variables_get" id="e:G36G[bC~uX(fONbXOx">
                                      <field name="VAR" id="rli+H4BKh^Z1[uy??0b-">Statusbericht_Text</field>
                                    </block>
                                  </value>
                                  <value name="USERNAME">
                                    <block type="text" id="-AeM]s7@B.WHKk1lj=:j" disabled="true">
                                      <field name="TEXT">Chris</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="control" id=":d(nJ[7Ch2T(N(e?G]Cq">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                      <field name="OID">alexa2.0.Echo-Devices.G0911M0793152N2C.Commands.speak</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE">
                                        <block type="variables_get" id=",XfO`rtId;Mvj@~}#Y.v">
                                          <field name="VAR" id="rli+H4BKh^Z1[uy??0b-">Statusbericht_Text</field>
                                        </block>
                                      </value>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
            <block type="math_number" id="4_ipSbC-Vrw?,$HJC%N3" x="400" y="638">
              <field name="NUM">0</field>
            </block>
          </xml>
          

          Was mir noch fehlt ist eine korrekte Berechnung des Hausverbrauchs bzw. der Leistung der Solarpanels mit korrekt herausgerechneter Ladung oder Entladung des Speichers. Konkret also diese Berechnung:

          41bdfaf4-d1b3-4e48-a444-f08d84af8f21-image.png

          Ausserdem fehlt mir noch die Modbus-Adresse für den aktuellen Speicher-Füllstand in Prozenz.

          O L 2 Replies Last reply Reply Quote 0
          • O
            osu @ChrisPrefect last edited by osu

            @chrisprefect said in Solaredge Adapter (Photovoltaikanlage):

            Hier mal mein aktueller Stand mit Solaredge SE10K und Solaredge Stromsensor und BYD LVS 24.0:

            Wow. Vielen Dank. Da werde ich mir etwas Zeit für nehmen müssen.

            Die Batterieregister packe ich Dir hier mal dazu.

            Was Du suchst ist 102853 State of Energy SOE Batterieladung %

            Siehe unten.

            1	102837	Batterieleistung	Leistung Batterie	W	floatsw	2	1	0		level		true	false	false	
            1	102853	State of Energy SOE	Batterieladung	%	floatsw	2	1	0		level		true	false	false	
            1	102855	Batterie Status	Battery operating state: 0 – Off; 1 – Standby; 2 – Init; 3 – Charge; 4 – Discharge; 5 – Fault; 7 - Idle		uint32sw	2	1	0		level		true	false	false	
            1	102787	Batt Rated Energy	Batt Rated Energy	Wh	floatsw	2	1	0		level		true	false	false	
            1	102829	Batt1_Avg_T	Batterie 1 Average Temperature °C	°C	floatsw	2	1	0		level		true	false	false	
            1	103237	StCtrlMode	Storage Control Mode		uint16be	1	1	0		level		true	false	false	
            1	101763	AdvancedPwrControlEn	AdvancedPwrControlEn		uint32sw	2	1	0		level		true	false	false	
            1	101701	ReactivePwrConfig	ReactivePwrConfig		uint32sw	2	1	0		level		true	false	false	
            1	103247	Remote Control Charge Limit	Remote Control Charge Limit	W	floatsw	2	1	0		level		true	false	false	
            1	101697	CommitSettings	Commit Power Control Settings		uint16be	1	1	0		level		true	false	false	
            1	103243	StChDisChMode	Storage Charge/Discharge Default Mode		uint16be	1	1	0		level		true	false	false	
            

            In der Liste sind auch Register enthalten um das Ladeprofil der Batterie zu modifizieren (70%-Limitierung vermeiden). Siehe dazu hier https://www.photovoltaikforum.com/thread/152402-storedge-se10k-ladeleistung-batterie/?postID=2235131#post2235131

            Gruß,
            Oli

            ChrisPrefect 1 Reply Last reply Reply Quote 1
            • ChrisPrefect
              ChrisPrefect @osu last edited by

              @osu

              Das Register 102853 funktioniert bei mir eben nicht 😞

              e0fe69fa-e954-4d1f-a9f1-8fa2fefeafc1-image.png

              a8acf81e-138a-4046-8d86-1b55cf0176b1-image.png

              Die Speicherladung 102837 funktioniert, aber bei 102853 kommt nichts. Auch einen Wert drunter und drüber habe ich schon probiert.

              O 1 Reply Last reply Reply Quote 0
              • O
                osu @ChrisPrefect last edited by

                @chrisprefect said in Solaredge Adapter (Photovoltaikanlage):

                Die Speicherladung 102837 funktioniert, aber bei 102853 kommt nichts. Auch einen Wert drunter und drüber habe ich schon probiert.

                Was sagt Dein Log des Modbus-Adapters beim Pollen?

                ChrisPrefect 1 Reply Last reply Reply Quote 1
                • ChrisPrefect
                  ChrisPrefect @osu last edited by

                  @osu Oh, da habe ich diese Meldung gesehen:

                  (31435) Poll error count: 2 code: {"errorCode":131,"exceptionCode":2,"message":"ILLEGAL DATA ADDRESS"}

                  Da steht leider nicht welche Adresse illegal ist. Ich habe dann einzeln die Adressen deaktiviert und gesehen, dass es wohl an dieser Zeile lag:

                  cf7bf6fd-58d1-4cee-b44c-f4f04fcfccd0-image.png

                  Ohne diese Zeile wird nun auch der SoC in % korrekt ausgelesen! Super 😄

                  ChrisPrefect O 2 Replies Last reply Reply Quote 0
                  • ChrisPrefect
                    ChrisPrefect @ChrisPrefect last edited by

                    Jetzt fehlt mir nur noch die korrekte Berechnung von Hausverbrauch und Solarpanel-Leistung. Wie wird die Batterie Ladung und Entladung da korrekt eingerechnet?

                    O 1 Reply Last reply Reply Quote 0
                    • O
                      osu @ChrisPrefect last edited by

                      @chrisprefect said in Solaredge Adapter (Photovoltaikanlage):

                      @osu Oh, da habe ich diese Meldung gesehen:

                      (31435) Poll error count: 2 code: {"errorCode":131,"exceptionCode":2,"message":"ILLEGAL DATA ADDRESS"}

                      Da steht leider nicht welche Adresse illegal ist. Ich habe dann einzeln die Adressen deaktiviert und gesehen, dass es wohl an dieser Zeile lag:

                      cf7bf6fd-58d1-4cee-b44c-f4f04fcfccd0-image.png

                      Ohne diese Zeile wird nun auch der SoC in % korrekt ausgelesen! Super 😄

                      Probier mal, ob's am Datentyp liegt (glaube ich aber nicht).
                      Du hast da uint16, ich habe da uint32sw.

                      Das Register funktioniert bei mir zuverlässig.

                      1 Reply Last reply Reply Quote 0
                      • O
                        osu @ChrisPrefect last edited by osu

                        @chrisprefect said in Solaredge Adapter (Photovoltaikanlage):

                        Jetzt fehlt mir nur noch die korrekte Berechnung von Hausverbrauch und Solarpanel-Leistung. Wie wird die Batterie Ladung und Entladung da korrekt eingerechnet?

                        Da bin ich gerade noch am rumpfriemeln.

                        Ich habe da bisher folgende Probleme

                        • falsche Datentypen (einfach lösbar durch Lesen der Doku und Abgleich) führen zu einem Werteüberlauf. Ich vermute ich habe da ggf. noch das eine oder andere Issue, muss ich nochmal genauer unter die Lupe nehmen.

                        • unterschiedliche Taktung der Werteermittlung: klar ist, dass die Skalierungsfaktoren gleichzeitig mit den zu skalierenden Werten gelesen werden müssen, sonst liefert der Wert Müll.
                          Wenn ich nun aber einen Zusammenhang aus den per Modbus gelesenen Werten schaffen will, muss ich die zusammenhängenden Werte ebenfalls zum selben Zeitpunkt lesen und verarbeiten um daraus Werte zu berechnen (wieviel produziere ich auf dem Dach? Was ist mein Hausverbrauch?). Da hapert's leider noch bei mir. Denn obwohl ich die Werte im selben Blockly aus dem Modbus lese und dann lokal speichere passt das häufig nicht zusammen und sorgt ggü. der Berechnungsgrundlage für Deltas.

                        • mir noch unerklärliche Spikes in meinen Zahlen. Kann eine Folge von oben sein.

                        Was ich derzeit ermittle ist z.B. folgendes:
                        94c3e84d-d10f-405b-a11b-a10c82d37ed5-image.png

                        Ermittelt mit folgendem Blockly (kann beliebig falsch sein):
                        08c3ea0a-6003-4528-8681-6177b964ceda-image.png

                        Führt zu folgender Visualisierung:
                        04e69833-ef74-451a-86c9-fe0bfcf9b7fe-image.png

                        Die Werte sind aber noch Murks, denn auf diese Weise gibt es Abweichungen bei der PV Produktion Ist (objects) vom Soll (Formel / Blockly) wie folgt:
                        7f256dbb-4e79-4713-a11e-a29d525f7186-image.png

                        Wie gesagt. Bin noch beim Versuch zu verstehen.

                        Wenn Du Ideen hast oder die Dinge auffallen, immer her damit. 😉

                        Gruß,
                        Oli

                        ChrisPrefect 1 Reply Last reply Reply Quote 0
                        • ChrisPrefect
                          ChrisPrefect @osu last edited by

                          @osu Das mit den Spikes und Werte-Überläufen usw. kommt wohl wirklich vom Problem, dass die Werte nicht immer gleichzeitig mit den Skalierungs-Faktoren gelesen werden. Ich habe das so gelöst:

                          5a662432-2b97-48c0-9e7a-f2198d8ce878-image.png

                          Nachdem sich der Leistungswert geändert hat, warte ich 200 ms bis ich den Skalierungsfaktor lese und umrechne. Damit hatte ich bisher keine Probleme mehr.

                          Ich lese die Werte eh nur alle 10 Sekunden, was mehr als genug ist. Ev. erhöhe ich die Pause noch auf eine Sekunde.

                          Zusätzlich habe ich bei den Objekten noch plausible Minimal- und Maximal-Werte definiert, so können Werte die nicht passen gar nicht geschrieben werden.

                          O 1 Reply Last reply Reply Quote 0
                          • O
                            osu last edited by osu

                            @chrisprefect said in Solaredge Adapter (Photovoltaikanlage):

                            Nachdem sich der Leistungswert geändert hat, warte ich 200 ms bis ich den Skalierungsfaktor lese und umrechne. Damit hatte ich bisher keine Probleme mehr.

                            Was genau versprichst Du Dir von der Verzögerung nach dem Event?

                            @chrisprefect said in Solaredge Adapter (Photovoltaikanlage):

                            Ich lese die Werte eh nur alle 10 Sekunden, was mehr als genug ist.

                            Mache ich ebenfalls so.

                            Was bei mir noch nicht passt, ist dass keine Deltas (siehe Tabelle oben) zur Formel entstehen (sprich die Werte zusammenpassen).

                            Du hattest nach Produktion und Hausverbrauch gefragt. Meinen Ansatz findest Du im obigen Blockly. Wie läuft das nun bei Dir?

                            Gruß,
                            Oli

                            ChrisPrefect 1 Reply Last reply Reply Quote 0
                            • O
                              osu @ChrisPrefect last edited by

                              @chrisprefect said in Solaredge Adapter (Photovoltaikanlage):

                              @osu Das mit den Spikes und Werte-Überläufen usw. kommt wohl wirklich vom Problem, dass die Werte nicht immer gleichzeitig mit den Skalierungs-Faktoren gelesen werden. Ich habe das so gelöst:

                              Die Spikes scheinen mit dem Timeout weg zu sein. Bei mir umfasst er nun die komplette Berechnung.

                              b97ba260-33b8-46a1-b616-c5d480923e61-image.png

                              Wie gesagt passen die Werte damit dennoch nicht 100% zusammen. (Deltas im Excelsheet)

                              Wenn der Modbus gepollt wird, hole ich innerhalb eines sehr kurzen Zeitraums alle meine Werte.
                              Ich kann aber nicht beeinflussen, ob zum Zeitpunkt des Abholens auf dem Modbus alle Werte 100% zusammenpassen (wann diese geschrieben wurden).

                              • modbus.0.holdingRegisters.102837_Batterieleistung
                              • modbus.0.holdingRegisters.40084_I_AC_Leistung
                              • modbus.0.holdingRegisters.40207_M_AC_Power

                              Gruß,
                              Oli

                              ChrisPrefect 1 Reply Last reply Reply Quote 0
                              • ChrisPrefect
                                ChrisPrefect @osu last edited by

                                @osu Wenn der Modbus-Adapter die Werte einliest, dauert das vielleicht eine Sekunde, bis alle Werte da sind.

                                Wenn jetzt das Blockly schon triggert, wenn der erste Wert da ist und sofort den (dann noch alten) Umrechnungsfaktor benutzt dann ist der Wert um einen Faktor zu gross oder zu klein. Deshalb warte ich, nachdem sich der Wert geändert hat etwas, damit sicher alle Werte in diesem Poll-Zyklus gelesen und aktualisiert wurden. Dann ist auch der richtige Umrechnungsfaktor bereit.

                                O 1 Reply Last reply Reply Quote 0
                                • ChrisPrefect
                                  ChrisPrefect @osu last edited by

                                  @osu Kann es sein, dass die Werte nicht genau passen, weil du die DC-Leistung verwendest? Die ignoriere ich mittlerweile, weil die eben immer leicht von der AC-Leistung abweicht (halt durch die Wandlungsverluste denke ich). Deshalb muss ich aber von der AC-Leistung wieder zurückrechnen, um die PV-Leistung zu bekommen. Also z.B. die Speicherladung dazuzählen oder die Entladung abzählen.

                                  1 Reply Last reply Reply Quote 0
                                  • O
                                    osu @ChrisPrefect last edited by osu

                                    @chrisprefect said in Solaredge Adapter (Photovoltaikanlage):

                                    Wenn jetzt das Blockly schon triggert, wenn der erste Wert da ist und sofort den (dann noch alten) Umrechnungsfaktor benutzt dann ist der Wert um einen Faktor zu gross oder zu klein

                                    Passt. Ergibt Sinn.

                                    @chrisprefect said in Solaredge Adapter (Photovoltaikanlage):

                                    Kann es sein, dass die Werte nicht genau passen, weil du die DC-Leistung verwendest?

                                    Hausverbrauch rechne ich aus
                                    modbus.0.holdingRegisters.40084_I_AC_Leistung
                                    minus
                                    modbus.0.holdingRegisters.40207_M_AC_Power

                                    Bei der Produktionsleistung der PV werden dann aber AC und DC vermengt:
                                    modbus.0.holdingRegisters.40207_M_AC_Power
                                    plus
                                    modbus.0.holdingRegisters.102837_Batterieleistung
                                    plus
                                    Hausverbrauch

                                    Vermutlich liegt's daran. Was denkst Du?

                                    Gruß,
                                    Oli

                                    1 Reply Last reply Reply Quote 0
                                    • ?
                                      A Former User @stevie77 last edited by

                                      @stevie77 Vielen Dank für deinen Export. Import hat wunderbar geklappt.
                                      Allerdings kann ich mit den Werten noch nichts anfangen. Auch die Strings wie "SolarEdge" scheinen abgeschnitten. Habe ich hier noch irgendwie einen Fehler?
                                      Vielen Dank

                                      Capture.PNG

                                      ? 1 Reply Last reply Reply Quote 0
                                      • ?
                                        A Former User @Guest last edited by A Former User

                                        Habe es lösen können. Bei mir waren es Register-Adressen -1

                                        S 1 Reply Last reply Reply Quote 0
                                        • S
                                          stevie77 @Guest last edited by

                                          @aulin Ja, irgendwie gibt es bei SE zwei Register-Varianten. Neuere/ältere Geräte? Hatten wir im Verlauf schon mal festgestellt hier im Forum (oder anderswo?), dass bei mir (oder anderen) alle Adressen um 1 verschoben sind.

                                          O 1 Reply Last reply Reply Quote 0
                                          • O
                                            osu @stevie77 last edited by

                                            @stevie77
                                            43c88452-8077-4c87-811d-eb007d3185fa-image.png
                                            Quelle: Technical Note – SunSpec Logging in SolarEdge Inverters, S. 15

                                            Gruß,
                                            Oli

                                            A 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

                                            476
                                            Online

                                            31.6k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            59
                                            431
                                            91536
                                            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