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.
    • G
      Gelbwichtel last edited by Gelbwichtel

      Hi,
      leider hab ich über die SuFu nichts passendes gefunden.
      Ich habe meine Sun2000 mit 24 Modulen je zur Hälfte nach Ost und West ausgerichtet.
      Ich würde jetzt gerne das dailyEneryYield je MPP-Tracker sehen. Kann ich das irgendwie anhand der vorhandenen Daten berechnen oder wäre das ein RFC ?
      Danke vorab für die Unterstützung.

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

        @altes bitte folgendes beachten: https://forum.iobroker.net/post/1230444
        Ich denke, dass die Abfragen an den kaskadierten WR etwas lange dauern. Die Kommunikation über RS485-Kabel ist oft mit deutlichen Verzögerungen verbunden. Ich würde den Aktualisierungsintervall sukzessive vergrößern.

        Das Thema Energieertrag (yield) wird im Wiki behandelt: https://github.com/bolliy/ioBroker.sun2000/wiki/Energieertrag-(Yield-today)

        LG Stephan

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

          @gelbwichtel aus dem WR kann man keine EnergyYield-Werte nach strings auslesen. Zumal der dailyEnergyYield die Batterie-lade-/entlade-Energiewerte beinhalten. https://github.com/bolliy/ioBroker.sun2000/wiki/Energieertrag-(Yield-today)

          Ggf. würde eine Riemann Summierung (Intergral) über die Stringpowerwerte (sun2000.0.inverter.0.string.PV[1|2]Power) die Lösung sein. Dann erhält man aber eher den SolarYield der Strings und nicht den EnergieYield der Strings.

          LG Stephan

          G 1 Reply Last reply Reply Quote 0
          • L
            leonundjulie last edited by

            Hallo zusammen. Meine Konfirmation läuft ja nun Scheit Wochen, so das ich mich im Wesentlichen um die Visualisierungen kümmere. Dort fehlt mir ein Wert, die ich nicht finde … habe ich Tomaten auf den Augen. Ich suche den via FusioSolar bereitgestellten Wert “Ertrag in diesem Jahr”.

            IMG_1387.jpeg

            Steckt der Wert in einem Register welches ich nicht finde? Oder muss ich ihn mir beispielsweise mit Hilfe des Adapters Sourceanalytix selber generieren?

            Der Wert soll die erkennbare Lücke in meiner VIS ganz oben füllen (noch in der Entstehung).
            IMG_0096.png

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

              @leonundjulie Ich glaube in der Interface Beschreibung findet man nichts zu Monats- bzw. Jahres-werten. Ja, mit Sourceanalytix oder mit Statistics.
              https://github.com/bolliy/ioBroker.sun2000/wiki/Statistk-(statistics)

              LG Stephan

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

                @bolliy , danke für das Feedback Stephan. Dann muss ich mal gucken welches der kummulierenden Registern das richtige ist bzw., ob ich je Inverter ein Register mit kWh Informationen nehme und diese dan summiere.

                Hat das schon mal ein Teilnehmer gemacht?

                LG von Andreas

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

                  @gelbwichtel aus dem WR kann man keine EnergyYield-Werte nach strings auslesen. Zumal der dailyEnergyYield die Batterie-lade-/entlade-Energiewerte beinhalten. https://github.com/bolliy/ioBroker.sun2000/wiki/Energieertrag-(Yield-today)

                  Ggf. würde eine Riemann Summierung (Intergral) über die Stringpowerwerte (sun2000.0.inverter.0.string.PV[1|2]Power) die Lösung sein. Dann erhält man aber eher den SolarYield der Strings und nicht den EnergieYield der Strings.

                  LG Stephan

                  @bolliy Vielen Dank für die Info. Wäre auch zu schön gewesen
                  LG Gelbwichtel

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

                    @bolliy ich habe ioBroker und Node.js komplett neu installiert auf meinem Windows Rechner, und die Admin Credentials neu aufgesetzt. Nun habe ich ioBroker wieder verfügbar. Aber nun lässt ich dein Adapter 1.0.1 nicht mehr korrekt installieren, es fehlen die Inverter und Meter Objekte usw., und das Protokoll sagt u.A. "Adapter Settings incomplete". Wenn ich den Adapter laufen lassen will, geht er sofort wieder auf Stop. Hast du eine Ahnung an was das liegen könnte?

                    8ac52b22-e599-4bf8-bf5d-f42707bff043-Unbenannt.jpg

                    B Samson71 2 Replies Last reply Reply Quote 0
                    • B
                      bolliy Developer @Fredi Wiegisser last edited by

                      @fredi-wiegisser bitte die Main Settings des Adapters zeigen.

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

                        @fredi-wiegisser sagte in Test Adapter sun2000 v0.1.x - Huawei Wechselrichter:

                        und das Protokoll sagt u.A. "Adapter Settings incomplete".

                        Protokolle und Logs bitte NICHT als Screenshot, sondern als Text, eingebettet in Code-Tags (</>) in den Post hängen.

                        https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge

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

                          @bolliy hatte ich vergessen sorry. Ich habe v1.0.1 via NPM installiert. Ausser der Modbus ID habe ich alle Settings auf ihren Default Werten belassen. Mein OS ist Win 11 64 Bit, Browser ist Edge. Admin Adapter ist auf v7.4.10. Und wie gesagt, ist bis gestern alles immer gut gelaufen, bis zum Punkt wo ich den Admin Zugang verloren hatte (wegen Admin Adapter Update) und heute alles neu installieren musste. Node.js: v20.18.3 und NPM: 10.8.2.

                          0470961b-47c0-43a7-ad41-a6425304f86e-image.png

                          cd0bb8f9-3319-4af1-9314-0f92c84feb46-image.png

                          5ca237ca-caad-4c72-aae6-914b281d767c-image.png

                          fc375631-41ad-47fa-b006-2db895734c96-image.png

                          5455e082-46ce-4572-ac26-d06bb79f3986-image.png

                          7c41e416-146f-49c3-810a-afec5b477f94-image.png

                          Und hier noch das aktuelle Log vom Issue, wenn ich den Adapter starte stop er sogleich wieder.

                          2025-03-04 12:24:43.831 - info: host.Fredi-NB instance system.adapter.sun2000.0 in version "1.0.1" started with pid 10828
                          2025-03-04 12:24:44.722 - info: sun2000.0 (10828) 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:24:44.748 - error: sun2000.0 (10828) *** Adapter deactivated, Adapter Settings incomplete! ***
                          2025-03-04 12:24:44.749 - info: host.Fredi-NB instance "system.adapter.sun2000.0" disabled via .alive
                          2025-03-04 12:24:44.751 - info: host.Fredi-NB "system.adapter.sun2000.0" disabled
                          2025-03-04 12:24:44.751 - info: host.Fredi-NB stopInstance system.adapter.sun2000.0 (force=false, process=true)
                          2025-03-04 12:24:44.752 - info: host.Fredi-NB stopInstance system.adapter.sun2000.0 send kill signal
                          2025-03-04 12:24:44.754 - info: sun2000.0 (10828) Got terminate signal TERMINATE_YOURSELF
                          2025-03-04 12:24:44.755 - info: sun2000.0 (10828) cleaned everything up...
                          2025-03-04 12:24:44.756 - info: sun2000.0 (10828) terminating
                          2025-03-04 12:24:44.756 - info: sun2000.0 (10828) Terminated (ADAPTER_REQUESTED_TERMINATION): Without reason
                          2025-03-04 12:24:45.258 - info: sun2000.0 (10828) terminating
                          2025-03-04 12:24:45.288 - info: host.Fredi-NB instance system.adapter.sun2000.0 terminated with code 11 (ADAPTER_REQUESTED_TERMINATION)```
                          code_text
                          

                          code_text

                          Fredi Wiegisser 1 Reply Last reply Reply Quote 0
                          • 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
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            788
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            adapter emma huawei inverter luna2000 modbus tcp modbus-proxy sdongle smartlogger sun2000
                                            82
                                            956
                                            216970
                                            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