Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. [Tutorial] SolarEdge -> Modbus -> ioBroker -> Grafana

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Tutorial] SolarEdge -> Modbus -> ioBroker -> Grafana

    This topic has been deleted. Only users with topic management privileges can see it.
    • Fogg
      Fogg @150d last edited by

      Mich auch mal hier anhängen... 😄

      Ich würde gerne von meinem SolarEdge Se16k Daten abfragen. Soweit ich oben sehe geht das nur mit zusätzlichem Zähler? Ist das immernoch so oder kann ich den direkt ansteuern? Im Netz hängt er ja.

      (Langfristig suche ich noch einen passenden Akku.. .aber denke das ist eher für ein anderes Forum)

      Glasfaser 1 Reply Last reply Reply Quote 0
      • Glasfaser
        Glasfaser @Fogg last edited by Glasfaser

        @fogg sagte in [Tutorial] SolarEdge -> Modbus -> ioBroker -> Grafana:

        Soweit ich oben sehe geht das nur mit zusätzlichem Zähler?

        Nein , du kannst den WR auch ohne Zähler abfragen ,
        dann fehlen halt nur die Zähler im Modbus Register.

        1 Reply Last reply Reply Quote 1
        • M
          M1R0O last edited by

          Hi zusammen,
          ich habe mir den Thread mindestens 1000x durchgelesen...
          Ich nutze das Register von @Sammydk, welches bei mir super läuft.
          Theoretisch hätte ich gern die aktuelle PV Produktion (wie diese berechnet wird, hat @Longbow ja erklärt: Batterieladung + den Hausverbrauch + den Export addieren und den Import abziehen.

          Nun zu meinen Fragen:

          1. Muss ich die Werte aus dem Register noch umrechnen? (Denn dort sind ja bereits Formeln eingetragen)
          2. Welches sind die Werte im Holding Register für Batterieladung, Hausverbrauch, Export und Import?

          Sorry, aber mein Brett vorm Kopf ist zu groß 😕

          Danke

          Glasfaser 1 Reply Last reply Reply Quote 0
          • Glasfaser
            Glasfaser @M1R0O last edited by

            @m1r0o sagte in [Tutorial] SolarEdge -> Modbus -> ioBroker -> Grafana:

            ich habe mir den Thread mindestens 1000x durchgelesen..

            dann aber alles überlesen 😀 😂

            Muss ich die Werte aus dem Register noch umrechnen?

            Nein . hast du dir selber beantwortet.

            Welches sind die Werte im Holding Register für Batterieladung,

            57716	Battery 1 Instantaneous Power	Batterie momentane Leistung	W	floatsw	2	1	0		value		true	false	false	false
            

            weiteres dazu siehe ein paaaar Antworten über deine Frage !

            Hausverbrauch, Export und Import?

            Zitat :

            Für den Wert 40206: Total Real Power legt ihr folgendes JS Script an:
            ...4.
            Stat Import/Export
            Quelle aus der InfluxDB sind
            ACTotalRealPower

            steht alles am Anfang !

            J 1 Reply Last reply Reply Quote 0
            • J
              jumbo125 @Glasfaser last edited by

              Hallo
              ich bin zufällig auf das Thema gestoßen und finde es wirklich interessant!!!!!

              Ich hätte eine Frage zu euren Erfahrungen. Leider habe ich es zuspät gesehen. Daher habe ich es anders gelöst.
              iobroker->PHP-script->erhält daten, berechnet + speichert in MySql -> grafana visualisierung

              es funktioniert soweit recht gut. ABER zwei Dinge finde ich komisch

              1. ALLE WERTE welche ich auslese sind kumulativ. Damit meine ich das ich keine werte mit "Heute erzeugt erhalte".... die Werte werden bei mir alle immer nur weitergezählt.
                Daher erhalte ich auch bei 40206 eine unglaublich hohe Zahl. Ist das bei euch auch der Fall?????

              2. Ich berechne mir immer den Bedarf aus dem Netz, daher kann ich auch täglich den Zählerstand theoretisch berechnen. Dieser Stimmt aber leide nicht überein. ist das bei euch auch der fall?
                Die Werte welche ich berechne, stimmen aber mit der APP bis aufs Komma überein

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

                @jumbo125

                Naja wenn Du den Tageswert haben willst, kannst Du Dir den ja aus dem kumulativen ausrechnen, um 23:59 Uhr

                javascript_zeitplan.jpg

                AC Gesamt kommt dann vom Wechselrichter kumulativ, die anderen 2 Variablen legst Du Dir selber an. Funktioniert prima bei mir.

                J 1 Reply Last reply Reply Quote 0
                • J
                  jumbo125 @technikaffin last edited by

                  @technikaffin danke dir
                  dachte bei euch kommen die werte vom WR.
                  ich habe es bereits bei mir mittels php script geändert, da ich ja auch die daten in eine mysql DB schreibe. es hat mich nur interessiert
                  danke

                  1 Reply Last reply Reply Quote 0
                  • Centurytt 0
                    Centurytt 0 @hennerich last edited by

                    @hennerich

                    Warum berechnest du nicht die Werte gleich im Modbus dann sparst dir das in den Scripten.

                    ich mache das so z.B.:
                    ab538379-cbeb-4a5f-a0ea-b793d73dc569-image.png

                    ist zwar Ansichtssache aber dann habe ich weniger Fehleranfälligkeit und iob hat nicht zig Scripte zum abarbeiten.

                    Lg
                    Tom

                    H 1 Reply Last reply Reply Quote 1
                    • S
                      SentiQ last edited by SentiQ

                      Hat jemand mit Speicher das Problem der aktuellen PV-Leistung irgendwie lösen können? @Glasfaser ich habe zwar deine Scripte integriert mit PVAktuell_ohneSpeicher und PVAktuell_Dachfläche, jedoch habe ich alle paar Minute Werte von paar wenigen Watt und nachts auch mal größere. Sollte ja eigentlich alles auf 0 bleiben von Sonnenuntergang bis Sonnenaufgang.

                      Beispiel von 2:13 Uhr nachts:

                      Bildschirmfoto 2023-08-10 um 07.32.32.png

                      Centurytt 0 1 Reply Last reply Reply Quote 0
                      • Centurytt 0
                        Centurytt 0 @SentiQ last edited by

                        @sentiq

                        hab auch einen Speicher hab das Problem aber nicht. Ich gehe wie folgt vor:

                        52d3ebef-15ea-479f-9734-dde008b0c358-image.png

                        Ich hatte das Problem ganz am Anfang mal als ich das Blockly noch auf vorher berechnete Einzelwerte hatte. Dann war teilweise einfach der iob zu langsam um zu rechnen. Da kam es dann vor, dass die Werte der Batterie als PV Leistung angezeigt wurden. Nachdem ich die MODBUS Berechnungen direkt im Adapter mache und mit den Werten dann rechne ist das nicht mehr passiert.

                        S 1 Reply Last reply Reply Quote 0
                        • M
                          M1R0O last edited by M1R0O

                          Moin,
                          @glasfaser: Danke für deine Antwort vor einiger Zeit.

                          Die Aktuelle PV-Produktion bekomme ich einfach nicht hin!

                          Centurytt 0 1 Reply Last reply Reply Quote 0
                          • Centurytt 0
                            Centurytt 0 @M1R0O last edited by Centurytt 0

                            @m1r0o

                            warum berechnest du etwas was nicht zu berechnen ist `?

                            659eaf83-4ead-4bb6-937a-c2f7951bf152-image.png

                            Schmeiß mal die Formel raus ... bei mir liefern die Adressen die Werte ohne die Formel.

                            _address name description unit type len factor offset formula role room poll wp cw isScale
                            40071 AC_Current AC Total Current value A uint16be 1 1 0 x * Math.pow(10, sf['40075']) true false false false
                            40072 AC_CurrentA AC Phase A Current value A uint16be 1 1 0 x * Math.pow(10, sf['40075']) true false false false
                            40073 AC_CurrentB AC Phase B Current value A uint16be 1 1 0 x * Math.pow(10, sf['40075']) true false false false
                            40074 AC_CurrentC AC Phase C Current value A uint16be 1 1 0 x * Math.pow(10, sf['40075']) true false false false
                            40075 AC_Current_SF int16be 1 1 0 true false false true
                            40076 AC_VoltageAB AC Voltage Phase AB value V uint16be 1 1 0 x * Math.pow(10, sf['40082']) true false false false
                            40077 AC_VoltageBC AC Voltage Phase BC value V uint16be 1 1 0 x * Math.pow(10, sf['40082']) true false false false
                            40078 AC_VoltageCA AC Voltage Phase CA value V uint16be 1 1 0 x * Math.pow(10, sf['40082']) true false false false
                            40079 AC_VoltageAN AC Voltage Phase A to N value V uint16be 1 1 0 x * Math.pow(10, sf['40082']) true false false false
                            40080 AC_VoltageBN AC Voltage Phase B to N value V uint16be 1 1 0 x * Math.pow(10, sf['40082']) true false false false
                            40081 AC_VoltageCN AC Voltage Phase C to N value V uint16be 1 1 0 x * Math.pow(10, sf['40082']) true false false false
                            40082 AC_Voltage_SF int16be 1 1 0 true false false true
                            40083 AC_Power AC Power value kW int16be 1 1 0 x * Math.pow(10, sf['40084']) *0.001 true false false false
                            40084 AC_Power_SF int16be 1 1 0 true false false true
                            40085 AC_Frequency AC Frequency value Hz uint16be 1 1 0 x * Math.pow(10, sf['40086']) true false false false
                            40086 AC_Frequency_SF int16be 1 1 0 true false false true
                            40087 AC_VA Apparent Power VA int16be 1 1 0 x * Math.pow(10, sf['40088']) true false false false
                            40088 AC_VA_SF int16be 1 1 0 true false false true
                            40089 AC_VAR Reactive Power VAR int16be 1 1 0 x * Math.pow(10, sf['40090']) true false false false
                            40090 AC_VAR_SF int16be 1 1 0 true false false true
                            40091 AC_PF Power Factor int16be 1 1 0 x * Math.pow(10, sf['40092']) true false false false
                            40092 AC_PF_SF int16be 1 1 0 true false false true
                            40093 AC_Energy_WH AC Lifetime Energy production Wh int32be 2 1 0 x * Math.pow(10, sf['40095']) true false false false
                            40095 AC_Energy_WH_SF uint16be 1 1 0 true false false true
                            40096 DC_Current DC Current value A uint16be 1 1 0 x * Math.pow(10, sf['40097']) true false false false
                            40097 DC_Current_SF int16be 1 1 0 true false false true
                            40098 DC_Voltage DC Voltage value V uint16be 1 1 0 x * Math.pow(10, sf['40099']) true false false false
                            40099 DC_Voltage_SF int16be 1 1 0 true false false true
                            40100 DC_Power DC Power Value kW int16be 1 1 0 x * Math.pow(10, sf['40101'])*0.001 true false false false
                            40101 DC_Power_SF int16be 1 1 0 true false false true
                            40103 Temp_Sink Heat Sink Temperature °C int16be 1 1 0 x * Math.pow(10, sf['40106']) true false false false
                            40106 Temp_SF int16be 1 1 0 true false false true
                            40107 OP_State Operation State uint16be 1 1 0 true false false false
                            40108 I_Status_Vendor Vendor-defined operating state and error codes. uint16be 1 1 0 true false false false
                            40139 MeterModel M_C_Model string 16 1 0 state true false false false
                            40163 MeterVersion M_C_Version string 8 1 0 state true false false false
                            40171 MeterSerialNumber M_C_SerialNumber string 16 1 0 state true false false false
                            40190 MeterCurrentTotal M_AC_Current A int16be 1 1 0 value true false false false
                            40191 MeterCurrentL1 M_AC_Current_A A int16be 1 1 0 value true false false false
                            40192 MeterCurrentL2 M_AC_Current_B A int16be 1 1 0 value true false false false
                            40193 MeterCurrentL3 M_AC_Current_C A int16be 1 1 0 value true false false false
                            40194 MeterCurrentSF M_AC_Current_SF int16be 1 1 0 state true false false false
                            40195 MeterVoltageLN M_AC_Voltage_L_N V int16be 1 1 0 value true false false false
                            40196 MeterVoltageL1N M_AC_Voltage_A_N V int16be 1 1 0 value true false false false
                            40197 MeterVoltageL2N M_AC_Voltage_B_N V int16be 1 1 0 value true false false false
                            40198 MeterVoltageL3N M_AC_Voltage_C_N V int16be 1 1 0 value true false false false
                            40203 MeterVoltageSF M_AC_Voltage_SF int16be 1 1 0 state true false false false
                            40204 MeterFrequency M_AC_Freq Hz int16be 1 1 0 value true false false false
                            40205 MeterFrequencySF M_AC_Freq_SF int16be 1 1 0 state true false false false
                            40206 MeterPowerTotal M_AC_Power W int16be 1 1 0 value true false false false
                            40207 MeterPowerL1 M_AC_Power_A W int16be 1 1 0 value true false false false
                            40208 MeterPowerL2 M_AC_Power_B W int16be 1 1 0 value true false false false
                            40209 MeterPowerL3 M_AC_Power_C W int16be 1 1 0 value true false false false
                            40210 MeterPowerSF M_AC_Power_SF int16be 1 1 0 state true false false false
                            40211 MeterApparentPowerTotal M_AC_VA VA int16be 1 1 0 value true false false false
                            40212 MeterApparentPowerL1 M_AC_VA_A VA int16be 1 1 0 value true false false false
                            40213 MeterApparentPowerL2 M_AC_VA_B VA int16be 1 1 0 value true false false false
                            40214 MeterApparentPowerL3 M_AC_VA_C VA int16be 1 1 0 value true false false false
                            40215 MeterApparentPowerSF M_AC_VA_SF int16be 1 1 0 state true false false false
                            40216 MeterReactivePowerTotal M_AC_VAR VAR int16be 1 1 0 value true false false false
                            40217 MeterReactivePowerL1 M_AC_VAR_A VAR int16be 1 1 0 value true false false false
                            40218 MeterReactivePowerL2 M_AC_VAR_B VAR int16be 1 1 0 value true false false false
                            40219 MeterReactivePowerL3 M_AC_VAR_C VAR int16be 1 1 0 value true false false false
                            40220 MeterReactivePowerSF M_AC_VAR_SF int16be 1 1 0 state true false false false
                            40226 MeterEnergyExportedTotal M_Exported Wh uint32be 2 1 0 value true false false false
                            40228 MeterEnergyExportedL1 M_Exported_A Wh uint32be 2 1 0 value true false false false
                            40230 MeterEnergyExportedL2 M_Exported_B Wh uint32be 2 1 0 value true false false false
                            40232 MeterEnergyExportedL3 M_Exported_C Wh uint32be 2 1 0 value true false false false
                            40234 MeterEnergyImportedTotal M_Imported Wh uint32be 2 1 0 value true false false false
                            40236 MeterEnergyImportedL1 M_Imported_A Wh uint32be 2 1 0 value true false false false
                            40238 MeterEnergyImportedL2 M_Imported_B Wh uint32be 2 1 0 value true false false false
                            40240 MeterEnergyImportedL3 M_Imported_C Wh uint32be 2 1 0 value true false false false
                            40242 MeterEnergySF M_Energy_W_SF int16be 1 1 0 state true false false false
                            62836 Batterieleistung W floatsw 2 1 0 true false false false
                            62852 Batterieladezustand % floatsw 2 1 0 true false false false
                            62854 Batteriestatus uint32sw 2 1 0 true false false false

                            M 1 Reply Last reply Reply Quote 0
                            • M
                              M1R0O @Centurytt 0 last edited by M1R0O

                              @centurytt-0
                              Du warst schnell, danke.
                              Als ich beim Posten genau drauf gewschaut habe, habe ich gesehen, dass da etwas nicht stimmt.
                              Muss nur gucken, was ich genau löschen muss ...!?

                              Centurytt 0 1 Reply Last reply Reply Quote 0
                              • Centurytt 0
                                Centurytt 0 @M1R0O last edited by

                                @m1r0o

                                importier dir einfach die Modbus Liste von mir...

                                M 1 Reply Last reply Reply Quote 0
                                • M
                                  M1R0O @Centurytt 0 last edited by

                                  @centurytt-0
                                  Zum Importieren benötige ich die Datei als .tsv?!

                                  Centurytt 0 1 Reply Last reply Reply Quote 0
                                  • Centurytt 0
                                    Centurytt 0 @M1R0O last edited by

                                    @m1r0o

                                    richtig

                                    1 Reply Last reply Reply Quote 0
                                    • M
                                      M1R0O last edited by M1R0O

                                      @centurytt-0 Danke, die Formeln sind raus.
                                      Bildschirm­foto 2023-08-13 um 20.04.20.png
                                      Nun habe ich die Skripte aus dem ersten Post eingefügt.
                                      PV Leistung aktuell läuft.

                                      Nur Total Real Power läuft (also Einspeisung oder Bezug) nicht, zeigt immer 0W an:

                                      function convertValue(value, factor) {
                                        if (value === null) return;
                                        if (factor === null) factor = 0;
                                        setState('Solar.Wechselrichter.ACTotalRealPower', value * Math.pow(10, factor), true);
                                      }  
                                      
                                      createState('Solar.Wechselrichter.ACTotalRealPower', {
                                         name: 'akt_bez_einsp',
                                         unit: 'W',
                                         min:  -999999,
                                         type: 'number',
                                         role: 'value.energy'
                                      }, function () {
                                         on('modbus.0.holdingRegisters.40206_meter_M_AC_Power'/*Total Real Power (sum of active phases)*/, function(obj) {
                                         	var timeout = setTimeout(function () {
                                         		clearTimeout(timeout);
                                         		var factorState = getState('modbus.0.holdingRegisters.40210_meter_M_AC_Power_SF'/*AC Real Power Scale Factor*/);
                                         		convertValue(obj.state.val, factorState ? factorState.val : 0);
                                         	}, 100); 
                                         });
                                         var factorState = getState('modbus.0.holdingRegisters.40210_meter_M_AC_Power_SF'/*AC Real Power Scale Factor*/);
                                         var valueState = getState('modbus.0.holdingRegisters.40206_meter_M_AC_Power'/*Total Real Power (sum of active phases)*/);
                                         convertValue(valueState ? valueState.val : null, factorState ? factorState.val : 0); 
                                      });
                                      

                                      Ich bin, wie immer, für eure Hilfe dankbar!

                                      Centurytt 0 1 Reply Last reply Reply Quote 0
                                      • H
                                        hennerich @Centurytt 0 last edited by

                                        @centurytt-0 sagte in [Tutorial] SolarEdge -> Modbus -> ioBroker -> Grafana:

                                        @hennerich

                                        Warum berechnest du nicht die Werte gleich im Modbus dann sparst dir das in den Scripten.

                                        ich mache das so z.B.:
                                        ab538379-cbeb-4a5f-a0ea-b793d73dc569-image.png

                                        ist zwar Ansichtssache aber dann habe ich weniger Fehleranfälligkeit und iob hat nicht zig Scripte zum abarbeiten.

                                        Lg
                                        Tom

                                        Sehr interessante Idee, wusste nicht, dass das geht. Schaue ich mir mal an.

                                        Danke
                                        Henri

                                        1 Reply Last reply Reply Quote 0
                                        • Centurytt 0
                                          Centurytt 0 @M1R0O last edited by

                                          @m1r0o

                                          Total Real Power musst nicht berechnen. Total AC Real Power ist die Wechselstrom Seite und wird jetzt im Modbus automatisch berechnet, wenn du meine Liste importiert hast und heisst AC Power Value. Also die Energie über alle 3 Phasen.

                                          oder meinst du was anderes ?

                                          M 1 Reply Last reply Reply Quote 0
                                          • M
                                            M1R0O @Centurytt 0 last edited by M1R0O

                                            @centurytt-0
                                            Ich bin leider nicht in der Lage dein Liste zu importieren, da sie sich nicht via copy & paste einfügen lässt.
                                            Ich eine .tsv daraus erstellt, die sich aber ebenfalls nicht importieren lässt 😠

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            625
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            grafana modbus solaredge
                                            90
                                            603
                                            148409
                                            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