Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter sun2000 v0.1.x - Huawei Wechselrichter

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Test Adapter sun2000 v0.1.x - Huawei Wechselrichter

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

      @bolliy Schande über mich, ich hatte die IP vergessen, jetzt läuft es wieder. Manchmal sieht man vor lauter Bäume den Wald nicht mehr. Bitte sehr um Entschuldigung.

      Fredi Wiegisser 1 Reply Last reply Reply Quote 0
      • Fredi Wiegisser
        Fredi Wiegisser @Fredi Wiegisser last edited by

        @bolliy Dafür weiss ich jetzt auch, woher die TimeOuts kommen. Während dem ich im Büro am Windows PC die Anwendung weiter entwickle, läuft in der Küche meine Raspberry Pi Anwendung unbemerkt weiter. So entsteht ein Parallel-Zugriff auf die Register, das verursacht die Timeouts. Sobald ich das Raspberry Pi ausstecke, sind die TimeOuts auf dem PC weg.

        2025-03-04 12:34:18.471 - info: sun2000.0 (11584) starting. Version 1.0.1 in C:/ProgramData/ioBroker/node_modules/iobroker.sun2000, node: v20.18.3, js-controller: 7.0.6
        2025-03-04 12:34:18.516 - info: sun2000.0 (11584) Adjustment: It starts for the Modbus connection...
        2025-03-04 12:34:18.526 - info: sun2000.0 (11584) Open Connection...
        2025-03-04 12:34:23.665 - info: sun2000.0 (11584) Connected Modbus TCP to 192.168.1.162:502
        2025-03-04 12:34:23.907 - info: sun2000.0 (11584) Identified a Huawei SUN2000-12KTL-M5 model 473 for modbus ID 2
        2025-03-04 12:34:26.169 - info: sun2000.0 (11584) Adjustment: It has reached the step 1 with delay value 0 ms
        2025-03-04 12:34:37.059 - warn: sun2000.0 (11584) Error while reading from 192.168.1.162 [Reg: 38284, Len: 10, modbusID: 2] with: Timed out
        2025-03-04 12:34:37.076 - info: sun2000.0 (11584) Open Connection...
        2025-03-04 12:34:43.085 - info: sun2000.0 (11584) Connected Modbus TCP to 192.168.1.162:502
        2025-03-04 12:34:46.234 - info: sun2000.0 (11584) Adjustment: It has reached the step 1 with delay value 600 ms
        2025-03-04 12:34:58.070 - warn: sun2000.0 (11584) Error while reading from 192.168.1.162 [Reg: 37100, Len: 38, modbusID: 2] with: Timed out
        2025-03-04 12:34:58.072 - info: sun2000.0 (11584) Open Connection...
        2025-03-04 12:35:04.090 - info: sun2000.0 (11584) Connected Modbus TCP to 192.168.1.162:502
        2025-03-04 12:35:06.778 - info: sun2000.0 (11584) Adjustment: It has reached the step 2 with delay value 488 ms
        2025-03-04 12:35:18.106 - warn: sun2000.0 (11584) Error while reading from 192.168.1.162 [Reg: 38368, Len: 10, modbusID: 2] with: Timed out
        2025-03-04 12:35:18.108 - info: sun2000.0 (11584) Open Connection...
        2025-03-04 12:35:24.177 - info: sun2000.0 (11584) Connected Modbus TCP to 192.168.1.162:502
        2025-03-04 12:35:26.407 - info: sun2000.0 (11584) Control: Service queue initialized
        2025-03-04 12:35:27.168 - info: sun2000.0 (11584) Adjustment: It has reached the step 3 with delay value 425 ms
        2025-03-04 12:35:40.456 - warn: sun2000.0 (11584) Error while reading from 192.168.1.162 [Reg: 32064, Len: 2, modbusID: 2] with: Timed out
        2025-03-04 12:35:40.460 - info: sun2000.0 (11584) Open Connection...
        2025-03-04 12:35:45.471 - info: sun2000.0 (11584) Connected Modbus TCP to 192.168.1.162:502
        2025-03-04 12:35:50.388 - info: sun2000.0 (11584) Adjustment: It has reached the step 4 with delay value 389 ms
        2025-03-04 12:36:10.325 - warn: sun2000.0 (11584) Error while reading from 192.168.1.162 [Reg: 32080, Len: 2, modbusID: 2] with: Timed out
        2025-03-04 12:36:10.329 - info: sun2000.0 (11584) Open Connection...
        2025-03-04 12:36:16.380 - info: sun2000.0 (11584) Connected Modbus TCP to 192.168.1.162:502
        2025-03-04 12:36:30.189 - warn: sun2000.0 (11584) Error while reading from 192.168.1.162 [Reg: 32080, Len: 2, modbusID: 2] with: Timed out
        2025-03-04 12:36:30.193 - info: sun2000.0 (11584) Open Connection...
        2025-03-04 12:36:35.214 - info: sun2000.0 (11584) Connected Modbus TCP to 192.168.1.162:502
        2025-03-04 12:36:50.659 - warn: sun2000.0 (11584) Error while reading from 192.168.1.162 [Reg: 32064, Len: 2, modbusID: 2] with: Timed out
        
        B 1 Reply Last reply Reply Quote 1
        • B
          bolliy Developer @Fredi Wiegisser last edited by bolliy

          @fredi-wiegisser der gleichzeitiger Zugriff auf die modbus Schnittstelle ist über den internen mobus-proxy des Adapters möglich.

          Toll, dass du die Ursache der Timeouts eigenständig herausgefunden hast.

          LG Stephan

          Fredi Wiegisser Michael Birr 2 Replies Last reply Reply Quote 0
          • Fredi Wiegisser
            Fredi Wiegisser @bolliy last edited by Fredi Wiegisser

            @bolliy vielleicht noch etwas Kleines zur Info. Die Register 32091 und 32093 meines Sun2000 12KTL M5 weisen eine falsche Uhrzeit aus für die Inverter Start- und Stopzeit, obschon GMT+1 korrekt eingetragen ist. Angezeigt wird aktuell die Sommerzeit, also 1h zu viel. Ich gehe davon aus, dass die Register unbehandelt im Adapter zur Verfügung stehen und direkt vom Inverter ausgelesen werden. Falls das so ist, plane ich einen Service Request bei Huawei.

            Fredi Wiegisser 2 Replies Last reply Reply Quote 0
            • Michael Birr
              Michael Birr @bolliy last edited by

              @bolliy Hallo Stephan, nachdem ich diesen Winter nun mit Auswertungen/Zusammenlegungen über zwei Instanzen-mit drei M1 WR- über Blockly deinen Adapter (DANKE!) erfolgreich genutzt habe, stellt sich nun im beginnenden Frühjahr ein Problem, das ich nicht selbst lösen konnte :
              ich versuche über die Batterie-Regelung zeitlich unterschiedliche Ladegrößen in Abhängigkeit von SOC zu schalten - Blockly funktioniert - Datenpunkte werden geändert ABER mein führender M1-8K (mit zwei Battreiblöcken - alles richtig dargestellt)
              nimmt die Daten nicht an ?!?
              Mir fällt im Moment nichts mehr dazu ein - der WR ist lokal über sein eigenes WLAN eingebunden - paßt seit drei Monaten.
              Danke schon einmal und viele Frühlingsgrüße Michael

              B 1 Reply Last reply Reply Quote 0
              • B
                bolliy Developer @Michael Birr last edited by bolliy

                @michael-birr diese Dinge sind zu beachten:

                1. Bitte den blockly Funktionsblock steuere anstatt aktualisieren verwenden. Siehe https://forum.iobroker.net/post/1244554 und https://github.com/bolliy/ioBroker.sun2000/wiki/Verarbeitung-der-Sollwerte

                2. Falls die Luna schläft (SLEEP_MODE), muss der Speicher erst "aufgeweckt" werden. https://github.com/bolliy/ioBroker.sun2000/wiki/Speichersystem-aufwecken-(wake-up-Luna)

                Ob der Adapter die Controls zum WR schreibt kannst du im Log verfolgen - hier wird MinSoc auf 5 % gesetzt:

                2025-03-06 07:15:41.218 - info: sun2000.0 (1015299) Control: Event - state: battery.dischargeCutoffCapacity changed: 5 ack: false
                2025-03-06 07:15:46.084 - info: sun2000.0 (1015299) Control: write state inverter.0.control.battery.dischargeCutoffCapacity : 5 ack: true
                

                LG Stephan

                Michael Birr 1 Reply Last reply Reply Quote 0
                • Michael Birr
                  Michael Birr @bolliy last edited by Michael Birr

                  @bolliy Ich denke, dass ich diese Anregungen schon beachtet habe - siehe CC. Vieleicht erkennst du daraus mehr

                  2025-03-06 10:00:00.026 - info: javascript.0 (7292) script.js.common.Batteriesteuerung.Skript_1: getState(id=sun2000.0.inverter.0.battery.SOC, timerId=undefined) => {"val":57,"ack":true,"ts":1741251580239,"q":0,"from":"system.adapter.sun2000.0","user":"system.user.admin","lc":1741251580239}
                  2025-03-06 10:00:00.030 - info: javascript.0 (7292) script.js.common.Batteriesteuerung.Skript_1: getState(id=sun2000.0.inverter.0.battery.ratedCapacity, timerId=undefined) => {"val":25000,"ack":true,"ts":1741105021840,"q":0,"from":"system.adapter.sun2000.0","user":"system.user.admin","lc":1726907980177}
                  2025-03-06 10:00:00.030 - info: javascript.0 (7292) script.js.common.Batteriesteuerung.Skript_1: setForeignState(id=sun2000.0.inverter.0.control.battery.maximumChargingPower, state={"val":2687.5000000000005,"ack":false,"ts":1741251600030,"q":0,"from":"system.adapter.javascript.0","lc":1741251600030,"c":"script.js.common.Batteriesteuerung.Skript_1"})
                  2025-03-06 10:00:00.030 - info: javascript.0 (7292) script.js.common.Batteriesteuerung.Skript_1: setStateDelayed(id=sun2000.0.inverter.0.control.battery.maximumChargePower, state=2687.5000000000005, isAck=undefined, delay=500, clearRunning=false)
                  2025-03-06 10:00:00.045 - info: sun2000.0 (21396) Control: Event - state: battery.maximumChargingPower changed: 2687.5000000000005 ack: false
                  2025-03-06 10:00:00.385 - warn: sun2000.0 (21396) Error while writing to 192.168.200.1 [Reg: 47075, Len: 2, modbusID: 0] with: Modbus exception 128: Unknown error
                  2025-03-06 10:00:00.385 - info: sun2000.0 (21396) Control: Event is discarded because it could not be processed. inverter.0.control.battery.maximumChargingPower
                  2025-03-06 10:00:00.539 - info: javascript.0 (7292) script.js.common.Batteriesteuerung.Skript_1: setForeignState(id=sun2000.0.inverter.0.control.battery.maximumChargePower, state={"val":2687.5000000000005,"ack":false,"ts":1741251600539,"q":0,"from":"system.adapter.javascript.0","lc":1741251600539,"c":"script.js.common.Batteriesteuerung.Skript_1"})
                  2025-03-06 10:00:00.555 - info: sun2000.0 (21396) Control: Event - state: battery.maximumChargePower changed: 2687.5000000000005 ack: false
                  2025-03-06 10:00:20.544 - warn: sun2000.0 (21396) Control: maximumChargePower is deprecated use "maximumChargingPower" instead
                  2025-03-06 10:00:20.648 - warn: sun2000.0 (21396) Error while writing to 192.168.200.1 [Reg: 47075, Len: 2, modbusID: 0] with: Modbus exception 128: Unknown error
                  2025-03-06 10:00:20.648 - info: sun2000.0 (21396) Control: Event is discarded because it could not be processed. inverter.0.control.battery.maximumChargePower
                  2025-03-06 10:14:58.097 - info: admin.0 (19984) ==> Connected system.user.admin from ::ffff:192.168.188.71
                  2025-03-06 10:15:41.848 - info: admin.0 (19984) ==> Connected system.user.admin from ::ffff:192.168.188.71
                  Danke und Gruß Michael
                  
                  EIN NEUER VERSUCH Gruß Michael
                  B 1 Reply Last reply Reply Quote 0
                  • B
                    bolliy Developer @Michael Birr last edited by bolliy

                    @michael-birr keine 'Float' (Gleitkommazahl) verwenden! Der Inverter erwartet den Datentyp 'Integer' (ganze Zahl) . Du mußt die Zahl runden (Math.round())

                    Ich werde die Gleitkommzahlen in der nächsten Version einfach runden. 😉
                    LG Stephan

                    Michael Birr 1 Reply Last reply Reply Quote 0
                    • Michael Birr
                      Michael Birr @bolliy last edited by

                      @bolliy Vielen Dank, da bin ich nicht drauf gekommen - Test folgt !

                      1 Reply Last reply Reply Quote 0
                      • P
                        PrinzEisenherz1 last edited by

                        Hi bolliy, zuerst einmal ein großes Lob für diesen mega Adapter.
                        Jetzt hätte ich aber eine Frage bzw. ein Anliegen.
                        Ich habe folgende Hardware-Konfiguration:

                        10,53 kWp mit SUN2000 10ktl-m1
                        10kW LUNA2000
                        SDongleA-05
                        DTSU666-H -> Modbus-ID 11

                        zusätzlich läuft bei mir aber auch noch ein Balkonkraftwerk mit 840 Wp und Hoyemiles-800.
                        Bisher habe ich mit einem shelly-1em die Werte des BK abgefragt. Ich wollte aber die Daten auch gerne auf Fusionsolar.
                        Dazu habe ich mir noch einen DDSU666-H zugelegt. Dieser ist einphasig!
                        Habe ihn gemäß Anleitung Vernetzung Fremdwechselrichter von Huawei ins System eingebunden.
                        Vernetzung Wechselrichter.png
                        Da habe ich dem DDSU die ModBusadresse 19 gegeben.
                        Der DDSU ist über den Dongle eingebunden.
                        Funktioniert auch alles super. Werte passen auf Fusionsolar. es wird nur nicht der DDSU angezeigt, sondern die Werte sind saldierend. Stört mich aber nicht.
                        Jetzt würde ich aber gerne mit Deinem Adapter die Daten des DDSU seperat abfragen wollen. er ließt ja den Modbus aus.
                        Bei Integration-Settings im Adapter ist aber die ModBus-Adresse für den SmartLogger fest verankert. Lässt sich nicht ändern bzw erweitern.
                        Besteht vielleicht die Möglichkeit das man noch eine zweite SmartLogger Abfrage integriert?
                        Also z.B. so?
                        sun2000-Mod.png
                        Da wo auch die Möglichkeit besteht die Modbus-ID manuell einzugeben?

                        Wäre mega wenn sowas gehen würde!

                        Gruß
                        Johnny

                        B 1 Reply Last reply Reply Quote 0
                        • B
                          bolliy Developer @PrinzEisenherz1 last edited by bolliy

                          @prinzeisenherz1 die Abfrage der DDSU erfolgt durch den Smart Logger eigenständig. Du hast aber eine SDongle als Integration gewählt ?!
                          Man müsste also den 2ten SmartMeter über die Modbus id 19 auslesen. Das bedeutet allerdings die Erstellung eines weiteren Treibers. Das wird leider nicht ohne größeren Aufwand funktionieren.

                          Es gibt aber einen Fork zu meinem Projekt. Vielleicht wäre diese Anpassung ein Ansatz um dein Anliegen umzusetzen. https://github.com/edyso/ioBroker.sun2000

                          Ansonsten kannst du gerne ein issue hier https://github.com/bolliy/ioBroker.sun2000/issues anlegen. Dann können wir schauen ob sich weitere Interessenten finden, die dein Anliegen unterstützen.

                          LG Stephan

                          1 Reply Last reply Reply Quote 0
                          • P
                            PrinzEisenherz1 last edited by

                            Hi bolliy danke für Deine Antwort.
                            Welche Anpassung ist denn in dem Fork?
                            Ich habe gestern mal ein issue auf github angelegt, mit der Hoffnung das diese Option vielleicht doch noch einzug in Deinem Adapter hält! 🙂

                            Wäre super!!
                            Gruß Johnny

                            1 Reply Last reply Reply Quote 0
                            • B
                              bolliy Developer last edited by

                              @prinzeisenherz1 das steht im github repository: "this fork reads meter-data directly from comunication between inverter and smartmeter by a rs485-adapter"

                              surfer09 1 Reply Last reply Reply Quote 0
                              • surfer09
                                surfer09 @bolliy last edited by

                                Hallo zusammen,

                                ich hatte per Blockly versucht den Wert für den "sun2000.0.inverter.0.battery.dischargeCutoffCapacity" zu setzen. Leider scheint das nicht zu funktionieren. Hat jemand einen Tipp für mich? Muss ich da noch etwas beachten, um den Wert zu setzen?

                                <block xmlns="https://developers.google.com/blockly/xml" type="schedule" id="3g`Uj6f2os+y,26H.+)!" x="88" y="63">
                                  <field name="SCHEDULE">59 23 14 10 *</field>
                                  <statement name="STATEMENT">
                                    <block type="control" id="v0!u]czk1PE^j_W+r~0t">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                      <field name="OID">sun2000.0.inverter.0.battery.dischargeCutoffCapacity</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE">
                                        <block type="math_number" id="U*N?9F7L;1L0hMZo}(H1">
                                          <field name="NUM">5</field>
                                        </block>
                                      </value>
                                    </block>
                                  </statement>
                                </block>
                                
                                B 1 Reply Last reply Reply Quote 0
                                • B
                                  bolliy Developer @surfer09 last edited by

                                  @surfer09 du musst den entsprechenden Control state ändern: sun2000.0.inverter.0.control.battery.dischargeCutoffCapacity

                                  Stephan

                                  surfer09 1 Reply Last reply Reply Quote 1
                                  • surfer09
                                    surfer09 @bolliy last edited by

                                    @bolliy Mensch, super! Danke dir! 🙂

                                    B 1 Reply Last reply Reply Quote 0
                                    • B
                                      bolliy Developer @surfer09 last edited by

                                      @surfer09 alle Einstellungen stehen im Wiki: https://github.com/bolliy/ioBroker.sun2000/wiki/Battery-control

                                      1 Reply Last reply Reply Quote 0
                                      • Fredi Wiegisser
                                        Fredi Wiegisser @Fredi Wiegisser last edited by

                                        @fredi-wiegisser laut Huawei Service Request, sehen sie hier keinen Fehler bei sich. Schade, dann bleibt die Uhrzeit halt falsch bis Huawei merkt, dass die Register fehlerhafte Inhalte haben.

                                        1 Reply Last reply Reply Quote 0
                                        • MartinK.
                                          MartinK. @bolliy last edited by

                                          @bolliy Also ich habe diese Warnmeldung jetzt auch wieder im log,
                                          obwohl der SDongle aktivert ist, und ID1 hat ??

                                          Error while reading from 10.79.1.255 [Reg: 37100, Len: 38, modbusID: 1] with: Timed out

                                          Modbus Timing auto-adjust ist auch aktiviert ?
                                          Der Adapter läuft sonst super, aber immer diese Meldungen.
                                          Was kann man denn noch anpassen ?

                                          B 1 Reply Last reply Reply Quote 0
                                          • B
                                            bolliy Developer @MartinK. last edited by bolliy

                                            @martink wie viele timeout Fehler treten am Tag auf?
                                            Sofern diese bei der Änderung des Betriebszustands auftreten, ist dieses tolerierbar.

                                            Ansonsten bitte dieses beachten: https://github.com/bolliy/ioBroker.sun2000/wiki/Fehlerprotokollierung-und-Fehlerbehebung-(troubleshooting)

                                            Stephan

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            909
                                            Online

                                            31.7k
                                            Users

                                            79.6k
                                            Topics

                                            1.3m
                                            Posts

                                            adapter emma huawei inverter luna2000 modbus tcp modbus-proxy sdongle smartlogger sun2000
                                            80
                                            922
                                            191757
                                            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