Ankündigung

Einklappen
Keine Ankündigung bisher.

SMA Energy Meter (SMA EM) auslesen per Multicast und Lieferung an edomi

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #16
    Ich hatte bisher diese Meldung wirklich nur sehr sporadisch - bestenfalls zweimal im Jahr.
    Das habe ich ignoriert, da alle Geräte hin und wieder mal merkwürdige Meldungen rausgeben.

    Nur letzte Woche dies:
    21.04.2019 09:12:01 SI 6.0H Zustand: Warnung / Trennung vom externen Netz wegen zu niedriger Batteriespannung oder Überspannung an Phase L1 / keine
    21.04.2019 09:00:31 SI 6.0H Zustand: Warnung / Trennung vom externen Netz wegen zu niedriger Batteriespannung oder Überspannung an Phase L1 / keine
    19.04.2019 09:37:00 SI 6.0H Zustand: Warnung / Trennung vom externen Netz wegen zu niedriger Batteriespannung oder Überspannung an Phase L1 / keine
    18.04.2019 11:24:31 SI 6.0H Zustand: Warnung / Trennung vom externen Netz wegen zu niedriger Batteriespannung oder Überspannung an Phase L1 / keine

    Das hatte mich dann doch stutzig gemacht.
    Leider lässt sich aus dem Meldetext nicht ableiten was nun ist.
    Batterie oder doch Netz

    Zufällig war ich am 21. zu Haus und bin in den Keller geflitzt.

    Auf dem SRC konnte ich sehen das die Spannung an der Phase des SI Achterbahn fährt und in so Wellen (Zeit Tal - Tal etwas 2-3 Minuten) zwischen 242 und 228 Volt schwankt. Bei 228 fiel der SI in den Ruhemodus und generiert diese Meldung.
    Warum dann Überspannung gemeldet wird ist mir schleierhaft - genau das macht eben eine Fehlersuche schwer.

    Deshalb musste obiges Script nochmal herhalten.
    Jetzt logge ich obendrein die Netzspannung, gemessen vom SMA EM und nicht durch die WR, in eine Datenbank.
    Ich denke das EM ist da mit den Messungen etwas präziser.

    Die Netzspannung scheint übrigens im Rahmen zu sein - wenn man diesem hier glaubt:
    https://knx-user-forum.de/forum/öffe...n-im-stromnetz

    Grüsse
    Carsten

    Kommentar


      #17
      Ich denke auch, dass der EM besser misst - nicht zuletzt ist es seine primäre Aufgabe... mit entsprechender Taktung kannst du den multicast des EM sekündlich und sogar etwas häufiger (bei Bedarf) ernten. Als Datenziel für so viele Daten wäre unfluxDB eine gute Wahl; gerne mit Grafana zusammen.

      viel Erfolg bei deiner „Forschungsreise“; da ich den Grund für sporadische Aussetzer auch noch nicht kenne, wäre eine Rückmeldung hier klasse, wenn du Erkenntnisse hast sammeln können.

      vg,
      carsten

      Kommentar


        #18
        Ich mache derzeit mit mein NAS einen Rundumschlag aller relevanten Parameter über alle Geräte und schreibe diese einen Datensatz mit etwa 20-25 Werten in die Datenbank.
        Dazu lese ich zig Parameter der Geräte aus und vom SMA EM die Einspeiseleistung und Bezug auf den Einzelphasen, zusätzlich die Phasenspannung seit gestern abend

        Schneller auslesen will ich (noch) nicht - mir wird sonst der Datensatz in der DB zu gross. ZZ sind 288 Datensätze pro Tag

        Kommentar


          #19
          Zitat von saegefisch Beitrag anzeigen
          Hi Carsten,

          Zum Rest kann ich nix sagen; wenn Du es kopiert hast, sollte es das gleiche liefern, wie ich an edomi. Für edomi selber wird es demnächst einen neuen LBS 19001581 geben auf der Basis des alten Scripts...dauert aber noch ein paar Tage

          VG und viel Spaß mit den Messwerten,
          Carsten
          Hallo Carsten, du meinst damit sicherlich das man direkt mit dem LBS den SMA EM via Multicast auslesen kann?

          Kommentar


            #20
            Ja.
            Mit flexibler Auslese-Frequenz, z.B. Wenn auf visu-Seite „Energie“ dann sekündlich, sonst alle 15s.

            Kommentar


              #21
              Ich freu mich, werde das bei mir dann direkt mal testen

              Kommentar


                #22
                Das Script wird als PHP abgespeichert und erzeugt dann auch eine Ausgabe per HTML
                Ganz einfach und nur zum Test

                Sieht dann so aus

                IMG_0181.PNG

                Das Ummünzen auf die Dinge die man braucht muss man dann selber machen

                Was ist dieses LBS ??

                Kommentar


                  #23
                  LBS sind PHP-Logikbausteine in edomi, um quasi beliebige Funktionen und Schnittstellen in edomi implementieren zu können. Das kann die Addition von werten sein ebenso wie der Sonnenstand oder das auslesen eines SMA-Geräts.

                  Hier im edomi-Forum das Silber neben dem Gold des edomi-Standards...

                  Kommentar


                    #24
                    Ah ok, bin da nicht so mit Haustechnik und deren Komponenten vertraut

                    So sieht übrigens die geloggte Netzspannung aus - scheint bisher im Rahmen zu sein
                    Wobei innerhalb der 5 Minuten Taktung sicher auch einige Ausreisser dabei sein könnten

                    Der SI ist aber seit Tagen wieder friedlich was diese Meldung angeht

                    Bildschirmfoto 2019-04-23 um 20.52.18.png

                    Kommentar


                      #25
                      Zitat von Carstene Beitrag anzeigen
                      Da ich nicht nur nehme sondern auch gebe (nur davon leben Foren) stelle ich mein Ergebnis mit dem Grossteil Deiner Arbeit, umgemünzt auf die reine Ausgabe über PHP allen Suchenden zur Verfügung:
                      Das ist sehr anständig und leider auch nicht selbstverständlich, also vielen Dank schon mal.

                      Ich habe mich mit diesem Skript (ursprünglich mit der Version von saegefisch schon einmal intensiv beschäftigt, dann aber aus Zeitmangel die Arbeit wieder eingestellt. Derzeit lese ich meinen SMA Wechselrichter per Modbus aus, was auch OK ist. Ich will aber nun wieder das Thema EM angehen und hab mit Deine letzte Version vom 22.04.2019 angesehen und ausgeführt. Mein Problem ist, dass ich völlig wirre Zahlen bekomme, die ich nur zu einem geringen Teil mit Zahlen aus dem Sunny-Portal bzw. dem Sunny Explorer in Einklang bringen kann. Selbst innerhalb der Ausgabe gibt es grobe Differenzen zwischen den Summen und den Werten der einzelnen Phasen. Vielleicht kann mir ja hier jemand Erleuchtung geben? Ich hab die Ausgabe des Skripts mal für mich übersichtlicher in Tabellenform gebracht:
                      2020-01-16_15h47_38.png
                      Ich verstehe zB nicht, warum in Z1 der Summenwert 4,6 ist, die Summe der einzelnen Phasen aber 33,7? Außerdem ist mir nicht klar, auf welchen Zeitraum sich zB Z2 oder Z4 bezieht. Ich finde im Sunny-Portal oder über den Sunny Explorer keine korrespondierenden Zahlen. Und warum sind die meisten Felder leer? Warum gibt es in Z3 in der Summe eine 0, während auf Phase 1 29 Watt ausgegeben werden?

                      Fragen über Fragen .... Danke für eure Hilfe!
                      Zuletzt geändert von rucksman007; 16.01.2020, 15:54.

                      Kommentar


                        #26
                        Deine Rechnung stimmt aber schon

                        Wenn du auf Phase x Einspeisung hast hat du folglich keinen Bezug

                        Die Gesamtwerte sind die Differenz aus Bezug und Einspeisung

                        Bezug auf den jeweiligen Phasen (0 (da hier dein WR sitzt) + 7,4 + 26,3 MINUS deine Einspeisung von 29 + 0 + 0 ergibt eine Differenz von 4,7 im Bezug

                        Eventuelle Differenzen entstehen durch den Eigenverbrauch auf Ph1, das was zwischen WR und deinem EM verbraucht wird sieht das EM ja nüscht
                        .... und den Rest schiebe ich event. Rundungsfehlern in die Schuhe

                        Die Werte Z2 und Z4 sind die Summen, die seit der Installation des EM drübergelaufen sind

                        Leerstehende Felder sind im Script ausgeblendet... muss selber mal nachsehen wo das war

                        Das EM funkt alle x mS einen vollständigen Datensatz aller Werte ins Netz. das Script pickt sich die (in dem Fall für mich) relevanten raus

                        PHP-Code:
                               echo "Einspeisung L1 : " .$res_l1[3]. " Watt"//Zelle 3 trägt den Wert der Einspeisung in Watt 
                        dieses mal als Beispiel genommen: Das Array $res_l1[3], hier ist die Zelle 3 Benannt. Setze in die eckige Klammer eine andere Zahl und du bekommst den Wert der entsprechenden Zelle

                        Hiermit kannst du ALLES an Werten anzeigen lassen:

                        PHP-Code:
                        echo implode('---,$res_......;" wird das gesamte AusgabeArray von sum/l1/l2/l3 angezeigt, der 1. Wert im Array ist Bezug, der 3. Wert Einspeisung in Watt. 
                        Zuletzt geändert von Carstene; 16.01.2020, 16:24.

                        Kommentar


                          #27
                          Wow, das ging ja schnell... vielen Dank für die prompte Rückmeldung!

                          Zitat von Carstene Beitrag anzeigen
                          Bezug auf den jeweiligen Phasen (0 (da hier dein WR sitzt) + 7,4 + 26,3 MINUS deine Einspeisung von 29 + 0 + 0 ergibt eine Differenz von 4,7 im Bezug
                          Das macht total Sinn. Ich hatte mir nur die beiden Z1 Werte angesehen und mich gefragt, wie das zusammenpasst. Bezieht man aber auch die Einspeisung mit ein, wird ein Schuh draus....

                          Zitat von Carstene Beitrag anzeigen
                          Eventuelle Differenzen entstehen durch den Eigenverbrauch auf Ph1
                          Dazu kommt noch, dass mein SB3600-SE eine Batterie dran hängen hat, die die Dateninterpretation auch nicht einfacher macht. Hab mich immer gefragt am Anfang, wieso ich Ertragswerte bei völliger Dunkelheit habe. Irgendwann hab ich dann begriffen, dass das die Entladung der Batterie ist...

                          Zitat von Carstene Beitrag anzeigen
                          Leerstehende Felder sind im Script ausgeblendet
                          Hmmm, auskommentierte Stellen habe ich aber in dem Skript keine gesehen. Betrifft aber ohnehin "nur" die Blind- und Schein-Werte, ist für mich im Moment verschmerzbar.

                          Zitat von Carstene Beitrag anzeigen
                          Die Werte Z2 und Z4 sind die Summen, die seit der Installation des EM drübergelaufen sind
                          Auch das macht Sinn, ich hab immer versucht, einen Zusammenhang zu den "echten" Zählerwerten herzustellen. Aber die kann der EM ja gar nicht kennen.

                          Zitat von Carstene Beitrag anzeigen
                          Das EM funkt alle x mS einen vollständigen Datensatz aller Werte ins Netz.
                          Ich stehe mit dieser Art von Datenübermittlung (genauso wie Modbus) echt auf Kriegsfuss. Warum kann man da nicht einfach ein JSON oder XML ausgeben?Das wär einfacher. Insgesamt - das ist jetzt aber offtopic - ist es ohnehin mehr als ärgerlich, dass SMA hier eine Blackbox baut und alleinige Hoheit über die Daten beansprucht und die Kunden in ihr Portal zwingt. Das Mindeste wäre eine API anzubieten, wenn man schon nicht (zumindest offiziell) direkt an die Daten des Wechselrichters oder des EM kommt. Modbus zähle ich explizit nicht als API, da das nur für eine absolute Minderheit beherrschbar ist. Eine API, die über normale GET Requests ein JSON ausspuckt, wäre schon für eine wesentlich größere Anzahl an Kunden nutzbar.

                          Kommentar


                            #28
                            Modbus ist letztlich auch ein Standard. Und der EM sendet im Multicast (auch Standard) - was auch Sinn ergibt bei der Datenfrequenz. Es ist ungewohnt und nicht immer einfach, aber durch aus ein Angebot mit Standard-Verfahren. Aber ja, für die Wechselrichter hätte ich auch lieber eine JSON-Schnittstelle statt ModBus. Mit ein wenig Arbeit (und die haben im wesentlichen Menschen wie ich ja schon für das Forum geleistet) gewöhnt man sich aber dran. Und wenn es mal gemacht ist, kann's einem egal sein. Früher habe ich auch geflucht über die Art, wie SMA mir die Daten nur anbietet, aber ich habe meinen Frieden (und Lösungen) damit gefunden und ansonsten ist die HW prima. Und auch das Portal - wenn man es nur sporadisch und per App nutzt.

                            just my 2 cents

                            Kommentar


                              #29
                              Hab jetzt wieder Mal ein paar Minuten Zeit gefunden, mich mit dem Thema zu beschäftigen. Ich krieg die Zahlen irgendwie nicht deckungsgleich mit dem, was ich in der SMA App sehe bzw. im Sunny Portal bzw. im Sunny Explorer. Mein Wechselrichter ist ein Batterie-Wechselrichter (SB 3600SE).

                              In der App sehe ich:
                              - Batterieentladung 0,10 kWh
                              - PV Erzeugung 0,06 kWh
                              - Gesamtverbrauch 0,16 kWh
                              - Netzeinspeisung 0kWh

                              Mehr oder weniger zeitgleich sehe ich in dem Skript:
                              Strombezug (Summe) von L1/L2/L3 : 4.2 Watt
                              Strombezug von L1 : 0 Watt
                              Strombezug von L2 : 5.4 Watt
                              Strombezug von L3 : 26.3 Watt
                              Einspeisung gesamt : 0 Watt
                              Einspeisung L1 : 27.5 Watt
                              Einspeisung L2 : 0 Watt
                              Einspeisung L3 : 0 Watt

                              Und im Sunny Explorer sehe ich u.a. auf der AC Seite "Leistung 165 W" (ich sehe da nur Phase 1).

                              Wie passen diese Werte zusammen? Ich komme da auf keinen grünen Zweig ....

                              Kommentar


                                #30
                                Hmmm. irgendwas scheint da in dem Skript zu klemmen. Mal abgesehen davon, dass ich Probleme beim Interpretieren der Daten habe (siehe meinen letzten Post), bekomme ich auf den einzelnen Phase auch keine Schein- und Blindleistungen (hab ich schon in einem früheren Post geschrieben: https://knx-user-forum.de/forum/proj...96#post1454496).

                                Habe mit einigen anderen Lösungen experimentiert (https://github.com/kettenbach-it/FHEM-SMA-Speedwire, https://github.com/datenschuft/SMA-EM), und dort bekomme ich entsprechende Werte. Allerdings habe ich von perl und python keine Ahnung und bin auf PHP fixiert, daher tue ich mir schwer, hier Unterschiede zu identifizieren. Ist das ein Krampf ....

                                Kommentar

                                Lädt...
                                X