Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. Stromzähler per Sonoff ESP8266 auslesen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Stromzähler per Sonoff ESP8266 auslesen

    This topic has been deleted. Only users with topic management privileges can see it.
    • C
      c1olli @treff and NIX last edited by

      @treff-and-nix
      Hast Du das Kabel nach unten oder oben geführt?
      Denn so wie auf dem Bild muß das Kabel oben sein.
      Also den Sensor ggf. mal um 180° drehen.

      1 Reply Last reply Reply Quote 1
      • testpaul999
        testpaul999 last edited by

        @RalfTh

        ich habe einen Zähler eHZ Generation K.
        Dein Script habe ich angepasst und bekomme "nur2 diese Anzeige.

        bf42bdd4-13a8-41c0-85c0-b93f887ebb70-grafik.png

        Wieso werden mir die anderen Daten wie Kosten usw. nicht angezeigt?

        Das Script sieht jetzt so aus.

        >D
        
        s1="Tagesverbrauch: {m}<b><span style="
        
        v2=0
        
        hr=0
        
        md=0
        
        yr=0
        
        ;Strom
        
        sm=0
        
        sd=0
        
        sma=111.000
        
        smn=0
        
        sya=222.000
        
        syn=0
        
        sspr=0.251601
        
        yspr=0
        
        ysgp=71.09
        
        y€=0
        
         
        
        >T
        
        v2=SML#DJ_TPWRIN
        
         
        
        >B
        
        ->sensor53 r
        
        tper=10
        
         
        
        >S
        
        ;Tagesverbrauch
        
        hr=hours
        
        if chg[hr]>0
        
        and hr==0
        
        and v2>0
        
        then
        
        sm=v2
        
        svars
        
        endif
        
        if upsecs%tper==0{
        
        sd=v2-sm
        
        }
        
         
        
        ;Monatsverbrauch
        
        md=day
        
        if chg[md]>0
        
        and md==1
        
        and v2>0
        
        then
        
        sma=v2
        
        svars
        
        endif
        
        if upsecs%tper==0{
        
        smn=v2-sma
        
        } 
        
         
        
        ;Jahresverbrauch
        
        yr=year
        
        if chg[yr]>0
        
        and hr==0
        
        and md==1
        
        and v2>0
        
        then
        
        sya=v2
        
        svars
        
        endif
        
        if upsecs%tper==0{
        
        syn=v2-sya
        
        ;Kosten
        
        yspr=syn*sspr+ysgp
        
        }
        
         
        
        >J
        
        ,"Verbrauch Tag":"%sd%"
        
        ,"Verbrauch Monat":"%smn%"
        
        ,"Verbrauch Jahr":"%syn%"
        
        ,"Zählerstand 0:00Uhr":"%3sm%"
        
        ,"Zählerstand Monatsanfang":"%2sma%"
        
        ,"Zählerstand Jahrsenanfang":"%2sya%"
        
         
        
        >W
        
         
        
        ==============
        
         
        
        Tagesverbrauch:  {m} %2sd%  KWh
        
         
        
        Monatsverbrauch: {m} %2smn% KWh
        
         
        
        Jahresverbrauch: {m} %2syn% KWh
        
         
        
        ==============
        
         
        
        Preis/kWh:       {m} %4sspr% €
        
         
        
        Grundpreis:      {m} %2ysgp% €
        
         
        
        --------------
        
         
        
        Kosten lfd. Jahr:{m} %2yspr% €
        
         
        
        ==============
        
         
        
        Zählerstände:
        
         
        
        aktuell:         {m} %2v2% KWh
        
         
        
        0:00 Uhr:        {m} %2sm% KWh
        
         
        
        Monatsanfang:    {m} %2sma% KWh
        
         
        
        Jahresanfang:    {m} %2sya% KWh
        
         
        
        ==============
        
         
        
         
        
        >M
        
         
        
        +1,3,s,16,9600,eHZ
        
         
        
        1,77070100010800ff@1000,Verbrauch,KWh,DJ_TPWRIN,1
        
         
        
        1,77070100020800ff@1000,Einspeisung,KWh,DJ_TPWROUT,1
        
         
        
        1,77070100100700ff@1,Akt. Verbrauch,W,DJ_TPWRCURR,1
        
         
        
        1,77070100000009ff@#,Zaehler Nr,,Meter_number,0
        
         
        
        #
        

        Danke für Deine Hilfe
        JUF

        RalfTh 1 Reply Last reply Reply Quote 0
        • RalfTh
          RalfTh @testpaul999 last edited by RalfTh

          @testpaul999
          Moin, moin.
          So auf Anhieb kann ich dir das nicht sagen. Durch die vielen Leerzeichen sieht das Skript auch nicht mehr besonders strukturiert aus. Am besten vergleichst du noch mal beide Skripte direkt miteinander. Es könnte auch sein, dass du beim Anpassen ein wichtiges Zeichen gelöscht hast. Der Teil zum Auslesen des Zählers funktioniert einwandfrei, d.h. das Skript versteht sich mit deinem Zähler. Dein Fehler liegt voraussichtlich bei der Ausgabe, weil von all den, im Skript berechneten, Dingen nichts angezeigt wird.

          Bei mir läuft das Skript unter Tasmota 8.1.0.4 einwandfrei.

          Viel Erfolg bei der Fehlersuche.

          Ralf

          testpaul999 2 Replies Last reply Reply Quote 0
          • C
            c1olli @treff and NIX last edited by c1olli

            Falscher Post

            1 Reply Last reply Reply Quote 0
            • testpaul999
              testpaul999 @RalfTh last edited by

              @ralfth

              Hi,

              also das script rennt auch mit 9.x
              Entscheidender Hinweis ist, das diese beiden Parameter mit in die Firmware gehören.

              J
              The lines in this section are published via MQTT in a JSON payload on TelePeriod. Requires compiling with
              #define USE_SCRIPT_JSON_EXPORT.

              W
              The lines in this section are displayed in the web UI main page. Requires compiling with
              #define USE_SCRIPT_WEB_DISPLAY.

              Zusammen damit
              #ifndef USE_SML_M

              #define USE_SML_M

              #endif

              Neu Compeliert und OTA Update und schon..
              1f258b0f-d681-4d3d-b064-9f777c5ea920-grafik.png

              Danke...

              1 Reply Last reply Reply Quote 0
              • testpaul999
                testpaul999 @RalfTh last edited by

                @ralfth

                Hallo,

                Ich nochmal.
                Nachdem ich die Daten jetzt auf dem Web-Ui habe, musste ich leider feststellen, dass irgendwie das summieren nicht hinhaut.
                92C99582-3F7C-4F52-A01E-7B0C7B49E6C7.png

                Die Werte 0:00 Uhr werden nicht geschrieben und dadurch stimmen auch die Werte Tages/Monat und Jahresverbrauch nicht.

                Das aktuelle script

                
                >D
                rssi=0
                s1="Tagesverbrauch: {m}<b><span style=>"
                v2=0
                hr=0
                md=0
                yr=0
                ;Strom
                p:sm=0
                sd=0
                p:sma=0
                smn=0
                p:sya=0
                syn=0
                sspr=0.2516
                yspr=0
                ysgp=71.09
                y€=0
                 
                >T
                v2=SML#DJ_TPWRIN
                rssi=Wifi#RSSI 
                 
                >B
                ->sensor53 r
                tper=10
                 
                >S
                ;Tagesverbrauch
                hr=hours
                if chg[hr]>0
                and hr==0
                and v2>0
                then
                sm=v2
                svars
                endif
                if upsecs%tper==0{
                sd=v2-sm
                }
                 
                ;Monatsverbrauch
                md=day
                if chg[md]>0
                and md==1
                and v2>0
                then
                sma=v2
                svars
                endif
                if upsecs%tper==0{
                smn=v2-sma
                } 
                 
                ;Jahresverbrauch
                yr=year
                if chg[yr]>0
                and hr==0
                and md==1
                and v2>0
                then
                sya=v2
                svars
                endif
                if upsecs%tper==0{
                syn=v2-sya
                
                ;Kosten
                yspr=syn*sspr+ysgp
                }
                 
                >J
                ,"Verbrauch Tag":"%sd%"
                ,"Verbrauch Monat":"%smn%"
                ,"Verbrauch Jahr":"%syn%"
                ,"Zählerstand 0:00Uhr":"%2sm%"
                ,"Zählerstand Monatsanfang":"%2sma%"
                ,"Zählerstand Jahrenanfang":"%2sya%"
                ,"Kosten dieses Jahr":"%2yspr%"
                 
                >W
                ==============
                WLAN Empfang: {m}%rssi%
                ==============
                Tagesverbrauch:  {m} %2sd%  KWh
                Monatsverbrauch: {m} %2smn% KWh
                Jahresverbrauch: {m} %2syn% KWh
                ==============
                Strom Preis/kWh:       {m} %4sspr% €
                Strom Grundpreis:      {m} %2ysgp% €
                --------------
                Strom kosten lfd. Jahr:{m} %2yspr% €
                ==============
                Strom Zählerstände:
                aktuell:         {m} %2v2% KWh
                0:00 Uhr:        {m} %2sm% KWh
                Monatsanfang:    {m} %2sma% KWh
                Jahresanfang:    {m} %2sya% KWh
                ==============
                 
                >M 1
                +1,3,s,16,9600,SML
                1,77070100010800ff@1000,Verbrauch,KWh,DJ_TPWRIN,2
                1,77070100020800ff@1000,Einspeisung,KWh,DJ_TPWROUT,2
                1,77070100100700ff@1,Akt.Verbrauch,W,DJ_TPWRCURR,0
                1,=h==============
                1,77070100000009ff@#,Zaehler Nr,,Meter_number,0
                
                #
                
                

                Danke für jedwede Unterstützung 🙂
                Jens

                1 Reply Last reply Reply Quote 0
                • RalfTh
                  RalfTh last edited by

                  Moin,

                  ich bin jetzt nicht der Spezialist beim Scripting.

                  Weshalb sin in deinem Script unter ">D" die Variablen sm, sma und sya mit einem "p:" versehen?

                  Bei der Berechnung der Werte konnte ich keinen Fehler finden, wobei ich nur den Tagesverbrauch geprüft habe.

                  testpaul999 1 Reply Last reply Reply Quote 0
                  • testpaul999
                    testpaul999 @RalfTh last edited by

                    @ralfth

                    Danke für das Feedback.
                    Leider habe ich noch weniger Ahnung vom Scripten.
                    Welche Bedeutung hat p:?
                    Permanent?

                    Danke

                    testpaul999 1 Reply Last reply Reply Quote 0
                    • testpaul999
                      testpaul999 @testpaul999 last edited by

                      @testpaul999 said in Stromzähler per Sonoff ESP8266 auslesen:

                      @ralfth

                      Danke für das Feedback.
                      Leider habe ich noch weniger Ahnung vom Scripten.
                      Habe mal p: raus genommen.. 🙂
                      Sieht vile besser aus.
                      Danke

                      testpaul999 1 Reply Last reply Reply Quote 0
                      • testpaul999
                        testpaul999 @testpaul999 last edited by

                        @testpaul999 said in Stromzähler per Sonoff ESP8266 auslesen:

                        @ralfth

                        Danke für das Feedback.
                        Leider habe ich noch weniger Ahnung vom Scripten.
                        Habe mal p: raus genommen.. 🙂
                        Sieht viel besser aus.

                        ac65552e-ed0f-4d28-94d2-99f2b00d8b14-grafik.png

                        Habe aber auch noch diese Parameter mit compeliert
                        USE_SML_M
                        USE_SCRIPT_JSON_EXPORT
                        USE_SCRIPT_WEB_DISPLAY
                        SML_MAX_VARS n
                        USE_SML_SCRIPT_CMD
                        SML_REPLACE_VARS
                        Danke

                        Chaot RalfTh 2 Replies Last reply Reply Quote 0
                        • Chaot
                          Chaot @testpaul999 last edited by

                          Ich habe mal eine allgemeine Frage:
                          Nach dem Wechsel meines Stromzählers habe ich mir einen TTL Lesekopf über Ebay (Hichi HB0014) besorgt. Da sich die Zähler in einem Nachbarraum befinden würde ich gerne den Wemos im anderen Raum platzieren. Hat jemand Erfahrung wie lange ich das Kabel zum TTL Lesekopf machen kann wenn ich geschirmte Kabel verwende?
                          Ich müsste so ca. 6-7 m Kabellänge erreichen.

                          1 Reply Last reply Reply Quote 0
                          • RalfTh
                            RalfTh @testpaul999 last edited by

                            @testpaul999 Das sieht doch aber jetzt gut aus, oder?

                            testpaul999 1 Reply Last reply Reply Quote 0
                            • testpaul999
                              testpaul999 @RalfTh last edited by

                              @ralfth
                              Guten Morgen,
                              Jain.
                              Es werden irgendwie keinen Daten geschrieben.
                              Tagesverbrauch und 0:00 Uhr.
                              BE22BCB7-A5FF-4410-BDE5-A3063D929230.jpeg

                              Warum?

                              Danke

                              RalfTh 1 Reply Last reply Reply Quote 0
                              • RalfTh
                                RalfTh @testpaul999 last edited by

                                @testpaul999 Der Fehler kann eigentlich nur in der Ermittlung des Tageserbrauchs liegen, da hier beide Werte genau um 0:00 Uhr ermittelt werden. ich poste dir noch mal diese Stelle aus meinem Script. ```

                                >S
                                ;Tagesverbrauch
                                hr=hours
                                if chg[hr]>0
                                and hr==0
                                and v2>0
                                then
                                sm=v2
                                svars
                                endif
                                if upsecs%tper==0{
                                sd=v2-sm
                                }
                                

                                v2 wird ja regelmäßig aktualisiert, das sieht man in deiner Anzeige. Die Variable sm erhält nicht den Wert von v2 und damit wird sd immer mit dem Wert von v2 (aktueller Zählerstand) gesetzt. Kopiere es mal und ersetze die Stelle in deinem Script. Sonst fällt mir auch nichts mehr ein.

                                testpaul999 3 Replies Last reply Reply Quote 0
                                • testpaul999
                                  testpaul999 @RalfTh last edited by

                                  @ralfth

                                  Thx 🙂
                                  Habe den Teil ausgetauscht.
                                  Schauen wir mal morgen früh.

                                  Schönes WE.

                                  1 Reply Last reply Reply Quote 0
                                  • testpaul999
                                    testpaul999 @RalfTh last edited by

                                    @ralfth

                                    😞 tja irgendwie scheint es alles nicht zu funktionieren.
                                    Leider auch heute kein wert für 0:00 Uhr.

                                    Aber danke für Deine Unterstützung.

                                    1 Reply Last reply Reply Quote 0
                                    • testpaul999
                                      testpaul999 @RalfTh last edited by

                                      @ralfth
                                      Hi 🙂 also für mich habe ich jetzt ein funktionierendes setup gefunden.

                                      
                                      >S
                                      ;Tagesverbrauch
                                      hr=hours
                                      if chg[hr]>0
                                      and hr==0
                                      and v2>0
                                      then
                                      sm=v2
                                      svars
                                      endif
                                      if upsecs%tper==0
                                      then
                                      sd=v2-sm
                                      endif
                                      
                                      

                                      Ich habe die Geschweiften Klammern durch „then“ und „endif“ ersetzt und es klappt. Natürlich auch in den anderen Berechungen.

                                      Danke für die Unterstützung

                                      RalfTh 1 Reply Last reply Reply Quote 0
                                      • RalfTh
                                        RalfTh @testpaul999 last edited by

                                        @testpaul999 Super das freut mich. Da hat sich evtl. die Scriptsprache etwas geändert. Wo hast du die Lösung gefunden?

                                        testpaul999 1 Reply Last reply Reply Quote 0
                                        • testpaul999
                                          testpaul999 @RalfTh last edited by

                                          @ralfth
                                          Hallo,

                                          Im Endeffekt habe ich das hier getestet.
                                          https://tasmota.github.io/docs/Smart-Meter-Interface/#hager-ehz363-sml-with-daily-values
                                          Und so klappt es dann halt auch.

                                          Grüße

                                          RalfTh 1 Reply Last reply Reply Quote 0
                                          • RalfTh
                                            RalfTh @testpaul999 last edited by

                                            @testpaul999 Super und Danke für den Hinweis. Das kann auch anderen Mitgliedern hilfreich sein.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            823
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            d0-schnittstelle esp8266 sml sonoff stromzähler stromzähler auslesen tasmota volkszähler
                                            83
                                            562
                                            178094
                                            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