Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. Stromzähler per Sonoff ESP8266 auslesen

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

Stromzähler per Sonoff ESP8266 auslesen

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
stromzähler auslesensonoffesp8266tasmotasmld0-schnittstellevolkszählerstromzähler
562 Beiträge 83 Kommentatoren 206.4k Aufrufe 84 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • F fruehwi

    @Jaschkopf

    Hallo Jaschkopf

    Danke, Bausatz kam an und war auch sehr schnell zusammen gebaut.
    Am Anfang habe ich nur in jeder Zeile ein "J" bekommen. Bis ich den Hinweis erneut gelesen hatte, das der RX vom Demos D1 nicht direkt funktioniert. Somit auf den Gpio 13 = D7 geändert und siehe da, es kommen die Daten an .

    Nun habe ich leider das Problem, im Tasmota werden
    SML Verbrauch
    SML Einspeisung
    SML Akt. Verbrauch
    angezeigt,
    aber im iobroker / Sonoff Adapter werden diese Daten nicht übermittelt /aktuallisiert.

    Es gibt nur folgende drei Datensätze die aber auf "0" bleiben:

    OBIS_PoWER_curr
    OBIS_Total_in
    OBIS_Total_out.

    Alive und uptime wird aktualisiert. Hat sonst jemand das Problem?

    Ich habe aber wie im 1. Post vom Jaschkopf +1,13,s,1,9600,SML in meinem Skript.
    Keine Ahnung warum dann OBIS Punkte im iobroker auftauchen.

    Danke
    VG Fruehwi

    J Offline
    J Offline
    Jaschkopf
    schrieb am zuletzt editiert von
    #58

    @fruehwi aktiviert mal im sonoff Adapter die drei checkboxen damit die states erstellt werden. Die Mqtt verbindung scheint ja zu passen wenn er andere States Updated.

    Gruß Jaschkopf

    F 1 Antwort Letzte Antwort
    0
    • J Jaschkopf

      @fruehwi aktiviert mal im sonoff Adapter die drei checkboxen damit die states erstellt werden. Die Mqtt verbindung scheint ja zu passen wenn er andere States Updated.

      Gruß Jaschkopf

      F Offline
      F Offline
      fruehwi
      schrieb am zuletzt editiert von
      #59

      @Jaschkopf
      Ein Traum!

      Danke Dir und eine Gute Nacht!
      Vielen Dank für deine Super Anleitung!

      VG Fruehwi

      F 1 Antwort Letzte Antwort
      0
      • F fruehwi

        @Jaschkopf
        Ein Traum!

        Danke Dir und eine Gute Nacht!
        Vielen Dank für deine Super Anleitung!

        VG Fruehwi

        F Offline
        F Offline
        fruehwi
        schrieb am zuletzt editiert von
        #60

        @fruehwi

        Hallo zusammen,

        der Sensor läuft soweit. Leider habe ich mehrmals am Tag das Werte nicht sauber importiert/gelesen werden. Akt. Verbrauch von 150000kWh.

        Ich hab den Sensor an die 3,3V angeschlossen, sollte ich ggf. auf 5V umlöten?

        Danke euch.

        VG Fruehwi

        J 1 Antwort Letzte Antwort
        0
        • F fruehwi

          @fruehwi

          Hallo zusammen,

          der Sensor läuft soweit. Leider habe ich mehrmals am Tag das Werte nicht sauber importiert/gelesen werden. Akt. Verbrauch von 150000kWh.

          Ich hab den Sensor an die 3,3V angeschlossen, sollte ich ggf. auf 5V umlöten?

          Danke euch.

          VG Fruehwi

          J Offline
          J Offline
          Jaschkopf
          schrieb am zuletzt editiert von
          #61

          @fruehwi aktivier mal den Median Filter indem du in der zählerdefinition die 1 zu einer 16 änderst. Guck mal ein paar posts früher da habe ich mein aktuellen Skript gepostet. Da hab ich auch die 16 drin 😉 hatte das Problem auch

          F 1 Antwort Letzte Antwort
          0
          • J Jaschkopf

            @fruehwi aktivier mal den Median Filter indem du in der zählerdefinition die 1 zu einer 16 änderst. Guck mal ein paar posts früher da habe ich mein aktuellen Skript gepostet. Da hab ich auch die 16 drin 😉 hatte das Problem auch

            F Offline
            F Offline
            fruehwi
            schrieb am zuletzt editiert von fruehwi
            #62

            @Jaschkopf

            Mit dem Filter auf 16 hat es super funktioniert.

            Dein Skript mit der Auswertung schaut super aus. Aber leider bekomme ich nur Verbrauch und Akt. Verbrauch angezeigt. Tages Monats und Jahres Daten werden mir nicht angezeigt.

            Muss ich noch was im Quelle Code hinzufügen?

            Danke Dir.
            VG

            J 1 Antwort Letzte Antwort
            0
            • F fruehwi

              @Jaschkopf

              Mit dem Filter auf 16 hat es super funktioniert.

              Dein Skript mit der Auswertung schaut super aus. Aber leider bekomme ich nur Verbrauch und Akt. Verbrauch angezeigt. Tages Monats und Jahres Daten werden mir nicht angezeigt.

              Muss ich noch was im Quelle Code hinzufügen?

              Danke Dir.
              VG

              J Offline
              J Offline
              Jaschkopf
              schrieb am zuletzt editiert von
              #63

              @fruehwi eigentlich nicht. Sollte copy Paste funktionieren. Postete mal ein Screenshot von deinen Werten und den Code vom Skript bitte +

              F 1 Antwort Letzte Antwort
              0
              • J Jaschkopf

                @fruehwi eigentlich nicht. Sollte copy Paste funktionieren. Postete mal ein Screenshot von deinen Werten und den Code vom Skript bitte +

                F Offline
                F Offline
                fruehwi
                schrieb am zuletzt editiert von fruehwi
                #64

                @Jaschkopf

                ich hab nur copy past gemacht.
                Verwendet wird ein Wemos D1. Beim Einfügen hat er das Skript nicht speichern wollen. Somit musste ich den Quelle Code auf dreimal zerlegt einfügen.

                Tasmota1.png
                Tasmota2.png

                >D
                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.2583
                yspr=0
                ysgp=156.00
                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
                 }
                
                >M
                +1,13,s,16,9600,SML
                1,77070100010800ff@1000,Verbrauch,KWh,DJ_TPWRIN,3
                1,77070100100700ff@1,Akt. Verbrauch,W,DJ_TPWRCURR,
                #
                

                Danke Dir.

                J 1 Antwort Letzte Antwort
                0
                • F fruehwi

                  @Jaschkopf

                  ich hab nur copy past gemacht.
                  Verwendet wird ein Wemos D1. Beim Einfügen hat er das Skript nicht speichern wollen. Somit musste ich den Quelle Code auf dreimal zerlegt einfügen.

                  Tasmota1.png
                  Tasmota2.png

                  >D
                  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.2583
                  yspr=0
                  ysgp=156.00
                  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
                   }
                  
                  >M
                  +1,13,s,16,9600,SML
                  1,77070100010800ff@1000,Verbrauch,KWh,DJ_TPWRIN,3
                  1,77070100100700ff@1,Akt. Verbrauch,W,DJ_TPWRCURR,
                  #
                  

                  Danke Dir.

                  J Offline
                  J Offline
                  Jaschkopf
                  schrieb am zuletzt editiert von
                  #65

                  @fruehwi gute frage. Sieht so aus als hätte er das Skript nicht gefressen. Mach mal das Skript leer und speicher mal und guck ob dann alle Werte weg sind. Dann kopiert das Skript nochmal neu rein speichern und Neustart machen.

                  F 1 Antwort Letzte Antwort
                  0
                  • J Jaschkopf

                    @fruehwi gute frage. Sieht so aus als hätte er das Skript nicht gefressen. Mach mal das Skript leer und speicher mal und guck ob dann alle Werte weg sind. Dann kopiert das Skript nochmal neu rein speichern und Neustart machen.

                    F Offline
                    F Offline
                    fruehwi
                    schrieb am zuletzt editiert von
                    #66

                    @Jaschkopf
                    hatte ich auch schon mehrmals probiert.
                    Morgen versuche ich es mal auf einer NodeMCU.

                    F 1 Antwort Letzte Antwort
                    0
                    • F fruehwi

                      @Jaschkopf
                      hatte ich auch schon mehrmals probiert.
                      Morgen versuche ich es mal auf einer NodeMCU.

                      F Offline
                      F Offline
                      Freaknet
                      schrieb am zuletzt editiert von
                      #67

                      @fruehwi

                      Also bei mir geht das Script nach probieren. Es waren bei mir zu viele Leerzeichen im Script versteckt. Nachdem ich alle entfernt hatte lief es. Hier mal nochmal mein Script.

                      >D
                      s1="Tagesverbrauch: {m}<b><span style="
                      v2=0
                      hr=0
                      md=0
                      yr=0
                      ;Strom
                      p:sm=0
                      sd=0
                      sma=0
                      smn=0
                      sya=0
                      syn=0
                      sspr=0.2393
                      yspr=0
                      ysgp=0.00
                      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":"%3sma%"
                      ,"Zählerstand Jahrenanfang":"%3sya%"
                      
                      >W
                      ==============
                      Tagesverbrauch:  {m} %3sd%  KWh
                      Monatsverbrauch: {m} %3smn% KWh
                      Jahresverbrauch: {m} %3syn% KWh
                      ==============
                      Preis/kWh:       {m} %4sspr% €
                      Grundpreis:      {m} %2ysgp% €
                      --------------
                      Kosten lfd. Jahr:{m} %2yspr% €
                      ==============
                      Zählerstände:
                      aktuell:         {m} %3v2% KWh
                      0:00 Uhr:        {m} %3sm% KWh
                      Monatsanfang:    {m} %3sma% KWh
                      Jahresanfang:    {m} %3sya% KWh
                      ==============
                      
                      
                      >M
                      +1,13,s,16,9600,SML
                      1,77070100010800ff@1000,Verbrauch,KWh,DJ_TPWRIN,4
                      1,77070100100700ff@1,Akt. Verbrauch,W,DJ_TPWRCURR,0
                      #
                      
                      S 1 Antwort Letzte Antwort
                      0
                      • J Jaschkopf

                        @RalfTh lass dich davon bitte nicht verwirren. Es gibt Zähler die senden ihre Daten nicht freiwillig. Da dein Zähler aber unaufgefordert die Daten alle 1sek sendet kannst du TX völlig vernachlässigen. Dein Problem liegt wo anders weil dein Zähler offensichtlich eine Betättigung der optischen Taste registriert sobald du den Lesekopf aufsetzt. Das darf nicht sein! Da stimmt garantiert etwas mit deiner Platine nicht. Mach mal bitte ein Foto von deiner Platine, vielleicht kann man darauf etwas erkennen. Bitte von beiden Seiten!

                        Gruß Jaschkopf

                        RalfThR Offline
                        RalfThR Offline
                        RalfTh
                        schrieb am zuletzt editiert von RalfTh
                        #68

                        @Jaschkopf Ich habe jetzt den neuen Volkszähler zusammengebaut und angeschlossen. Sieht gut aus 😊

                        356a4ed0-ae1a-4267-b7d2-b719278c9aed-image.png

                        Allerdings bekomme ich die aktuelle Leistung nicht angezeigt.

                        21:06:56 : 77 07 81 81 c7 82 03 ff 01 01 01 01 04 45 4d 48 01 
                        21:06:56 : 77 07 01 00 00 00 09 ff 01 01 01 01 0b 06 45 4d 48 01 02 71 59 4a 30 01 
                        21:06:56 : 77 07 01 00 01 08 00 ff 63 01 82 01 62 1e 52 ff 56 00 1e 0c 8e d3 62 1e 52 ff 56 00 00 00 00 00 01 
                        21:06:56 : 77 07 01 00 0f 07 9a 7d db 29 4f 8f 09 d8 c9 7a c8 54 35 9e 1d 7d 19 b2 16 bb 4a 56 f1 ed 63 e0 35 00 76 07 00 29 03 a0 bc 2e 62 00 62 00 72 63 02 01 71 01 63 ae 8e 00 00 1b 1b 1b 1b 1a 01 
                        21:06:57 : 1b 
                        21:06:57 : 1b 1b 1b 01 01 01 01 76 07 00 29 03 a0 bc 30 62 00 62 00 72 63 01 01 76 01 01 07 00 29 0f 8d 94 10 0b 06 45 4d 48 01 02 71 59 4a 30 01 01 63 
                        21:06:57 : 5c 2d 00 76 07 00 29 03 a0 bc 31 62 00 62 00 72 63 07 01 
                        21:06:58 : 77 01 0b 06 45 4d 48 01 02 71 59 4a 30 01 72 62 01 65 0f 8d bb da 
                        21:06:58 : 77 
                        
                        

                        Das sind die Rohdaten.

                        Den String für den aktuelle Leistung (1,77070100100700ff@1,Akt. Verbrauch,W,DJ_TPWRCURR,0) kann ich aber nicht finden?!
                        Der Zähler ist ein EMH HW8E2A5L0EK2P

                        Wir haben uns verirrt, kommen aber gut voran.

                        J 1 Antwort Letzte Antwort
                        0
                        • RalfThR RalfTh

                          @Jaschkopf Ich habe jetzt den neuen Volkszähler zusammengebaut und angeschlossen. Sieht gut aus 😊

                          356a4ed0-ae1a-4267-b7d2-b719278c9aed-image.png

                          Allerdings bekomme ich die aktuelle Leistung nicht angezeigt.

                          21:06:56 : 77 07 81 81 c7 82 03 ff 01 01 01 01 04 45 4d 48 01 
                          21:06:56 : 77 07 01 00 00 00 09 ff 01 01 01 01 0b 06 45 4d 48 01 02 71 59 4a 30 01 
                          21:06:56 : 77 07 01 00 01 08 00 ff 63 01 82 01 62 1e 52 ff 56 00 1e 0c 8e d3 62 1e 52 ff 56 00 00 00 00 00 01 
                          21:06:56 : 77 07 01 00 0f 07 9a 7d db 29 4f 8f 09 d8 c9 7a c8 54 35 9e 1d 7d 19 b2 16 bb 4a 56 f1 ed 63 e0 35 00 76 07 00 29 03 a0 bc 2e 62 00 62 00 72 63 02 01 71 01 63 ae 8e 00 00 1b 1b 1b 1b 1a 01 
                          21:06:57 : 1b 
                          21:06:57 : 1b 1b 1b 01 01 01 01 76 07 00 29 03 a0 bc 30 62 00 62 00 72 63 01 01 76 01 01 07 00 29 0f 8d 94 10 0b 06 45 4d 48 01 02 71 59 4a 30 01 01 63 
                          21:06:57 : 5c 2d 00 76 07 00 29 03 a0 bc 31 62 00 62 00 72 63 07 01 
                          21:06:58 : 77 01 0b 06 45 4d 48 01 02 71 59 4a 30 01 72 62 01 65 0f 8d bb da 
                          21:06:58 : 77 
                          
                          

                          Das sind die Rohdaten.

                          Den String für den aktuelle Leistung (1,77070100100700ff@1,Akt. Verbrauch,W,DJ_TPWRCURR,0) kann ich aber nicht finden?!
                          Der Zähler ist ein EMH HW8E2A5L0EK2P

                          J Offline
                          J Offline
                          Jaschkopf
                          schrieb am zuletzt editiert von
                          #69

                          @RalfTh Laut Doku vom Hersteller lautet dein String für die momentane Leistung: 770701000f0700ff. Probier das mal aus.

                          Gruß Jaschkopf

                          RalfThR 1 Antwort Letzte Antwort
                          0
                          • J Jaschkopf

                            @RalfTh Laut Doku vom Hersteller lautet dein String für die momentane Leistung: 770701000f0700ff. Probier das mal aus.

                            Gruß Jaschkopf

                            RalfThR Offline
                            RalfThR Offline
                            RalfTh
                            schrieb am zuletzt editiert von RalfTh
                            #70

                            @Jaschkopf sagte in Stromzähler per Sonoff ESP8266 auslesen:

                            770701000f0700ff

                            Danke Jaschi, es funktioniert jetzt. Ich habe mir die falsche Bedienungsanleitung angeschaut, da stand statt "f" eine "7". Hast du den Link noch?

                            Wir haben uns verirrt, kommen aber gut voran.

                            J 1 Antwort Letzte Antwort
                            0
                            • RalfThR RalfTh

                              @Jaschkopf sagte in Stromzähler per Sonoff ESP8266 auslesen:

                              770701000f0700ff

                              Danke Jaschi, es funktioniert jetzt. Ich habe mir die falsche Bedienungsanleitung angeschaut, da stand statt "f" eine "7". Hast du den Link noch?

                              J Offline
                              J Offline
                              Jaschkopf
                              schrieb am zuletzt editiert von
                              #71

                              @RalfTh Ja hier: http://www.nzr.de/download.php?id=612

                              Kleiner Tipp: Die Schnittstelle auf der Rückseite des Zählers gibt noch viel mehr Daten aus. Wenn du einen Elektriker kennst der dir den Zähler demontiert und hinterher neu Verplombt kannst du den Lesekopf auch auf die rückseitige Schnittstelle aufsetzen 😉

                              RalfThR 1 Antwort Letzte Antwort
                              0
                              • J Jaschkopf

                                @RalfTh Ja hier: http://www.nzr.de/download.php?id=612

                                Kleiner Tipp: Die Schnittstelle auf der Rückseite des Zählers gibt noch viel mehr Daten aus. Wenn du einen Elektriker kennst der dir den Zähler demontiert und hinterher neu Verplombt kannst du den Lesekopf auch auf die rückseitige Schnittstelle aufsetzen 😉

                                RalfThR Offline
                                RalfThR Offline
                                RalfTh
                                schrieb am zuletzt editiert von
                                #72

                                @Jaschkopf Vielen Dank. Auf der Seite von EMH haben sie nur die Generation K und P und ich habe in meinem Wahn das K als ein H gelesen. Bei diesem Zähler steht eine "10" statt eine "0f". Ich wäre jetzt nicht auf die Idee gekommen, bei NZR zu schauen.

                                Wir haben uns verirrt, kommen aber gut voran.

                                1 Antwort Letzte Antwort
                                0
                                • J Jaschkopf

                                  @mkrobe mit tper=10 wird die teleperiod auf 10sek gesetzt. Das ist der Intervall in dem die Daten per MQTT gesendet werden. 10 ist kleinst mögliche Wert.

                                  Hier sind noch ein paar sehr nützliche Links:
                                  Syntax für das Skript:
                                  https://github.com/arendst/Tasmota/wiki/smart-meter-interface
                                  Beispielskripte für verschiedene Zähler:
                                  https://github.com/arendst/Tasmota/wiki/Smart-Meter-Interface-Descriptors
                                  Wiki für Skript Sprache:
                                  https://github.com/arendst/Tasmota/wiki/Scripting-Language
                                  Kommandos für Sensor53:
                                  https://github.com/arendst/Tasmota/wiki/Commands#sensor53

                                  Wenn man mal die Wiki's durch geht findet man eigentlich alles sehr gut beschrieben was der Skripter so kann.

                                  Hier nochmal ein Screenshot von meinem Webinterface und dazu mein Skript. Da kann man gut sehen was alles (und noch viel mehr!!) möglich ist. Die Skript Sektion ist ein sehr mächtiges Tool in Tasmota!

                                  Stromzähler.PNG

                                  >D
                                  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.2583
                                  yspr=0
                                  ysgp=156.00
                                  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":"%3sma%"
                                  ,"Zählerstand Jahrenanfang":"%3sya%"
                                  
                                  >W
                                  ==============
                                  Tagesverbrauch:  {m} %3sd%  KWh
                                  Monatsverbrauch: {m} %3smn% KWh
                                  Jahresverbrauch: {m} %3syn% KWh
                                  ==============
                                  Preis/kWh:       {m} %4sspr% €
                                  Grundpreis:      {m} %2ysgp% €
                                  --------------
                                  Kosten lfd. Jahr:{m} %2yspr% €
                                  ==============
                                  Zählerstände:
                                  aktuell:         {m} %3v2% KWh
                                  0:00 Uhr:        {m} %3sm% KWh
                                  Monatsanfang:    {m} %3sma% KWh
                                  Jahresanfang:    {m} %3sya% KWh
                                  ==============
                                  
                                  
                                  >M
                                  +1,13,s,16,9600,SML
                                  1,77070100010800ff@1000,Verbrauch,KWh,DJ_TPWRIN,4
                                  1,77070100020800ff@1000,Einspeisung,KWh,DJ_TPWROUT,4
                                  1,77070100100700ff@1,Akt. Verbrauch,W,DJ_TPWRCURR,0
                                  #
                                  

                                  Gruß Jaschkopf

                                  RalfThR Offline
                                  RalfThR Offline
                                  RalfTh
                                  schrieb am zuletzt editiert von
                                  #73

                                  @Jaschkopf Ich habe da ein paar Fragen zu deinem Skript. Weshalb hast du denn sma und sya als permanente Variable angelegt? Da ich meine Zählerstände bisher täglich durch ablesen registriert habe kenne ich den Zählerstand zum Monatsanfang und natürlich den Zählerstand zum laufenden Abrechnungsbeginn. Allerdings hatte die Änderung von p:sma und p:sya keinen Effekt. Ich musste erst das p: entfernen, um die Übernahme der Werte zu erreichen. Vorher hatte das Skript immer von Zählerstand 0 angefangen zu rechnen und damit natürlich falsche Werte für den aktuellen Abrechnungszeitraum ausgegeben. Bei einem Restart des D1 wird der Tagesverbrauch gelöscht. Wäre da evtl. die Definition p:sd=0 hilfreich??

                                  Die in der Sektion <M angegebenen Zeilen erscheinen als Datenpunkte im ioBroker. Wie kann ich z.B. den Tagesverbrauch als Datenpunkt im ioBroker erzeugen? ich suche schon die ganze Zeit im Wiki und finde nichts.

                                  Ich möchte auch das Skript um den Tagesverbrauch vom Vortag ergänzen. Dachte da an die Variable sdy. Habe nur noch nicht ganz verstanden wann ich das wo berechne.

                                  Bisher habe ich konfiguriert:

                                  in <D (p:)sdy=0

                                  in <J unterhalb von Verbrauch Tag die neue Zeile ,"Verbrauch Vortag":%sdy%

                                  in <W unterhalb des Tagesverbrauch neue Zeile Vortagesverbrauch: {m}%sdy% KWh

                                  Wir haben uns verirrt, kommen aber gut voran.

                                  1 Antwort Letzte Antwort
                                  0
                                  • RalfThR Offline
                                    RalfThR Offline
                                    RalfTh
                                    schrieb am zuletzt editiert von RalfTh
                                    #74

                                    Hallo zusammen,

                                    da ich auf meinen letzten Post keine Antwort erhalten habe, musste ich mir eine andere Lösung einfallen lassen. Ich habe das Problem für mich jetzt mit Blockly und eigenen Datenpunkten gelöst. Ich poste mal meinen Lösungsansatz.

                                    Meine Datenpunkte im ioBroker:

                                    7e871390-2766-4f74-82e2-1c8429678fca-image.png

                                    Und hier mein Blockly dazu:

                                    317d132d-d31a-4191-b03e-38ade8be0e9c-image.png

                                    Und hier noch das XML:

                                    <xml xmlns="http://www.w3.org/1999/xhtml">
                                      <variables>
                                        <variable type="" id="5R`M]^^]KJ`7$#6%5=rE">Akt_Zaehlerstand</variable>
                                        <variable type="" id="hw|:6+#ri,90iH0u!T0e">Akt_Leistung</variable>
                                      </variables>
                                      <block type="comment" id="+8:x5xXlgL{2VF1oFxXN" x="87" y="88">
                                        <field name="COMMENT">Aktualisiert alle 10 Sekunden die Zählerstände</field>
                                        <next>
                                          <block type="schedule" id="JAbYj59_gH?5n2TDnMu+">
                                            <field name="SCHEDULE">*/10 * * * * *</field>
                                            <statement name="STATEMENT">
                                              <block type="variables_set" id="Pzp8I)nFt27=k|mRGpuy">
                                                <field name="VAR" id="5R`M]^^]KJ`7$#6%5=rE" variabletype="">Akt_Zaehlerstand</field>
                                                <value name="VALUE">
                                                  <block type="get_value" id=".[3/UxK9~BGE=s*T@dw3">
                                                    <field name="ATTR">val</field>
                                                    <field name="OID">sonoff.0.Stromzähler.SML_DJ_TPWRIN</field>
                                                  </block>
                                                </value>
                                                <next>
                                                  <block type="variables_set" id="k#%gg8KXcM)/pfzm^5Gs">
                                                    <field name="VAR" id="hw|:6+#ri,90iH0u!T0e" variabletype="">Akt_Leistung</field>
                                                    <value name="VALUE">
                                                      <block type="get_value" id="p65y1)isT/onGtMeT7M[">
                                                        <field name="ATTR">val</field>
                                                        <field name="OID">sonoff.0.Stromzähler.SML_DJ_TPWRCURR</field>
                                                      </block>
                                                    </value>
                                                    <next>
                                                      <block type="update" id="8-qCC^-w!H~!TRZE~:4O">
                                                        <mutation delay_input="true"></mutation>
                                                        <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Zählerstand_Aktuell</field>
                                                        <field name="WITH_DELAY">TRUE</field>
                                                        <field name="DELAY_MS">1000</field>
                                                        <field name="UNIT">ms</field>
                                                        <field name="CLEAR_RUNNING">FALSE</field>
                                                        <value name="VALUE">
                                                          <block type="variables_get" id="Pk+0wxb+Bi;]D9Rtc]V;">
                                                            <field name="VAR" id="5R`M]^^]KJ`7$#6%5=rE" variabletype="">Akt_Zaehlerstand</field>
                                                          </block>
                                                        </value>
                                                        <next>
                                                          <block type="update" id="Kk?~4wU8(0vVJ,F;K{{o">
                                                            <mutation delay_input="false"></mutation>
                                                            <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Heute</field>
                                                            <field name="WITH_DELAY">FALSE</field>
                                                            <value name="VALUE">
                                                              <block type="math_rndfixed" id="PmR7c|]T_yYXK[(!@HA$">
                                                                <field name="n">2</field>
                                                                <value name="x">
                                                                  <shadow type="math_number" id="PhFgH^bN]_ZB+=7:Y=ZQ">
                                                                    <field name="NUM">3.1234</field>
                                                                  </shadow>
                                                                  <block type="math_arithmetic" id="|1Q/[-p1/2d3A$F*W-@C">
                                                                    <field name="OP">MINUS</field>
                                                                    <value name="A">
                                                                      <shadow type="math_number" id="LQx(4[3IAXWMFv~b/=?8">
                                                                        <field name="NUM">1</field>
                                                                      </shadow>
                                                                      <block type="variables_get" id="Urhr[FlmlwH,-`3%*oTY">
                                                                        <field name="VAR" id="5R`M]^^]KJ`7$#6%5=rE" variabletype="">Akt_Zaehlerstand</field>
                                                                      </block>
                                                                    </value>
                                                                    <value name="B">
                                                                      <shadow type="math_number" id="=ho-N:ZU{9.L#@yO-j[|">
                                                                        <field name="NUM">1</field>
                                                                      </shadow>
                                                                      <block type="get_value" id="fs{*S,3OYzK@/7Ky~4MW">
                                                                        <field name="ATTR">val</field>
                                                                        <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Zählerstand_0:00</field>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </value>
                                                            <next>
                                                              <block type="update" id="jRLRiZ6:^9j0~+enR]zA">
                                                                <mutation delay_input="false"></mutation>
                                                                <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Leistung_Aktuell</field>
                                                                <field name="WITH_DELAY">FALSE</field>
                                                                <value name="VALUE">
                                                                  <block type="variables_get" id="5XR.pF9}I.oMHTAhB,*h">
                                                                    <field name="VAR" id="hw|:6+#ri,90iH0u!T0e" variabletype="">Akt_Leistung</field>
                                                                  </block>
                                                                </value>
                                                                <next>
                                                                  <block type="update" id="]E=cPfNz{KVp%B-#=:mQ">
                                                                    <mutation delay_input="false"></mutation>
                                                                    <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Monat</field>
                                                                    <field name="WITH_DELAY">FALSE</field>
                                                                    <value name="VALUE">
                                                                      <block type="math_rndfixed" id="uB%.#)xmgn/#6`}WaR71">
                                                                        <field name="n">2</field>
                                                                        <value name="x">
                                                                          <shadow type="math_number" id="qMW9@P!mis?2Toz%-r?y">
                                                                            <field name="NUM">3.1234</field>
                                                                          </shadow>
                                                                          <block type="math_arithmetic" id="f(sf($emS)dr6OaZ=F_z">
                                                                            <field name="OP">MINUS</field>
                                                                            <value name="A">
                                                                              <shadow type="math_number" id="LQx(4[3IAXWMFv~b/=?8">
                                                                                <field name="NUM">1</field>
                                                                              </shadow>
                                                                              <block type="variables_get" id="wm;RT0{JL4W^DNpJFZRd">
                                                                                <field name="VAR" id="5R`M]^^]KJ`7$#6%5=rE" variabletype="">Akt_Zaehlerstand</field>
                                                                              </block>
                                                                            </value>
                                                                            <value name="B">
                                                                              <shadow type="math_number" id="=ho-N:ZU{9.L#@yO-j[|">
                                                                                <field name="NUM">1</field>
                                                                              </shadow>
                                                                              <block type="get_value" id="8Aqy]SC~|j%)-F6VM6)n">
                                                                                <field name="ATTR">val</field>
                                                                                <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Zählerstand_Monatsanfang</field>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                      </block>
                                                                    </value>
                                                                    <next>
                                                                      <block type="update" id="G=I:~2#DV[+SJ)p)~~VP">
                                                                        <mutation delay_input="false"></mutation>
                                                                        <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Abrechnungsjahr</field>
                                                                        <field name="WITH_DELAY">FALSE</field>
                                                                        <value name="VALUE">
                                                                          <block type="math_rndfixed" id=",Oq;YRS8XO@KaMKQ7!]f">
                                                                            <field name="n">2</field>
                                                                            <value name="x">
                                                                              <shadow type="math_number" id=".kW~OzajFi3^%aFqkFXs">
                                                                                <field name="NUM">3.1234</field>
                                                                              </shadow>
                                                                              <block type="math_arithmetic" id="1OFp4Q,cjKo6]s_imeZ3">
                                                                                <field name="OP">MINUS</field>
                                                                                <value name="A">
                                                                                  <shadow type="math_number" id="LQx(4[3IAXWMFv~b/=?8">
                                                                                    <field name="NUM">1</field>
                                                                                  </shadow>
                                                                                  <block type="variables_get" id="#bA6YSq#9mH{A6g2A8+z">
                                                                                    <field name="VAR" id="5R`M]^^]KJ`7$#6%5=rE" variabletype="">Akt_Zaehlerstand</field>
                                                                                  </block>
                                                                                </value>
                                                                                <value name="B">
                                                                                  <shadow type="math_number" id="=ho-N:ZU{9.L#@yO-j[|">
                                                                                    <field name="NUM">1</field>
                                                                                  </shadow>
                                                                                  <block type="get_value" id="3EVb!rK9K+B3$,yq!w9k">
                                                                                    <field name="ATTR">val</field>
                                                                                    <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Zählerstand_Abrechnungsbeginn</field>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </value>
                                                                        <next>
                                                                          <block type="update" id="fRi!1KfW2B*;g`w0Y!?n">
                                                                            <mutation delay_input="false"></mutation>
                                                                            <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Kosten_Abrechnungsjahr</field>
                                                                            <field name="WITH_DELAY">FALSE</field>
                                                                            <value name="VALUE">
                                                                              <block type="math_rndfixed" id="mXqm#^`pB$l1`k//:agF" inline="false">
                                                                                <field name="n">2</field>
                                                                                <value name="x">
                                                                                  <shadow type="math_number" id="e.YrmNgG`aCTcs7v652k">
                                                                                    <field name="NUM">3.1234</field>
                                                                                  </shadow>
                                                                                  <block type="math_arithmetic" id="!NPxK]iaOK%$ndixnR!3" inline="false">
                                                                                    <field name="OP">ADD</field>
                                                                                    <value name="A">
                                                                                      <shadow type="math_number" id="Bb%uMFto,dx!TJ#0k.y=">
                                                                                        <field name="NUM">1</field>
                                                                                      </shadow>
                                                                                      <block type="get_value" id="$i4PYLYC)04[*f,ycc{V">
                                                                                        <field name="ATTR">val</field>
                                                                                        <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Kosten_Grundpreis</field>
                                                                                      </block>
                                                                                    </value>
                                                                                    <value name="B">
                                                                                      <shadow type="math_number" id="TQ5:ZE^%izvGFry,l8zh">
                                                                                        <field name="NUM">1</field>
                                                                                      </shadow>
                                                                                      <block type="math_arithmetic" id="6]^},qK?q%F.66U0f]=k">
                                                                                        <field name="OP">MULTIPLY</field>
                                                                                        <value name="A">
                                                                                          <shadow type="math_number" id="FyqV9?KvO*8KFQUAn-3`">
                                                                                            <field name="NUM">1</field>
                                                                                          </shadow>
                                                                                          <block type="get_value" id="d,oEYFJ4^1e:mz{;H{k%">
                                                                                            <field name="ATTR">val</field>
                                                                                            <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Kosten_kWh_in_Euro</field>
                                                                                          </block>
                                                                                        </value>
                                                                                        <value name="B">
                                                                                          <shadow type="math_number" id="xebVJ7IVS$habfTl/Si3">
                                                                                            <field name="NUM">1</field>
                                                                                          </shadow>
                                                                                          <block type="get_value" id="D?|1DE7;OXYdtGD_/!*-">
                                                                                            <field name="ATTR">val</field>
                                                                                            <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Abrechnungsjahr</field>
                                                                                          </block>
                                                                                        </value>
                                                                                      </block>
                                                                                    </value>
                                                                                  </block>
                                                                                </value>
                                                                              </block>
                                                                            </value>
                                                                          </block>
                                                                        </next>
                                                                      </block>
                                                                    </next>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </statement>
                                            <next>
                                              <block type="comment" id="!H(TM~7]E+7pAHl%2`dV">
                                                <field name="COMMENT">Aktualisiert dei Zählerstände täglich um 0:00</field>
                                                <next>
                                                  <block type="schedule" id="b2FC_`#h3RpW*UgbbIds">
                                                    <field name="SCHEDULE">55 59 23 * * *</field>
                                                    <statement name="STATEMENT">
                                                      <block type="update" id="CFf2|!Ys1HXkth{}Tdq#">
                                                        <mutation delay_input="false"></mutation>
                                                        <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Gestern</field>
                                                        <field name="WITH_DELAY">FALSE</field>
                                                        <value name="VALUE">
                                                          <block type="get_value" id="SAAH5P,=24!RuQ@L;0X|">
                                                            <field name="ATTR">val</field>
                                                            <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Heute</field>
                                                          </block>
                                                        </value>
                                                        <next>
                                                          <block type="update" id="//mD6cYd9NGc$1iakvX-">
                                                            <mutation delay_input="false"></mutation>
                                                            <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Zählerstand_0:00</field>
                                                            <field name="WITH_DELAY">FALSE</field>
                                                            <value name="VALUE">
                                                              <block type="variables_get" id="Rj0N+DXRd7:-t~%$cmL-">
                                                                <field name="VAR" id="5R`M]^^]KJ`7$#6%5=rE" variabletype="">Akt_Zaehlerstand</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </statement>
                                                    <next>
                                                      <block type="comment" id="vO19-![t:Mt+/XLZbrF_">
                                                        <field name="COMMENT">Aktualisert den Zählerstand jeden 1. im Monat</field>
                                                        <next>
                                                          <block type="schedule" id="#lHUl+IJ+^{vV9f%SX~+">
                                                            <field name="SCHEDULE">0 0 1 * *</field>
                                                            <statement name="STATEMENT">
                                                              <block type="update" id="hH;jN3S#b|VSVWvT4YRh">
                                                                <mutation delay_input="false"></mutation>
                                                                <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Vormonat</field>
                                                                <field name="WITH_DELAY">FALSE</field>
                                                                <value name="VALUE">
                                                                  <block type="get_value" id="$3BH*r*[+J;7K]L!MdqI">
                                                                    <field name="ATTR">val</field>
                                                                    <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Monat</field>
                                                                  </block>
                                                                </value>
                                                                <next>
                                                                  <block type="update" id="g2xtn0!!J}G_kvUx8+=n">
                                                                    <mutation delay_input="false"></mutation>
                                                                    <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Zählerstand_Monatsanfang</field>
                                                                    <field name="WITH_DELAY">FALSE</field>
                                                                    <value name="VALUE">
                                                                      <block type="variables_get" id="nnG=yOpi:RWL,IAxB9dg">
                                                                        <field name="VAR" id="5R`M]^^]KJ`7$#6%5=rE" variabletype="">Akt_Zaehlerstand</field>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </statement>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </xml>
                                    

                                    Da ich meine Zählerstände bereits seit längerem erfasse, habe ich den Zählerstand zum Beginn des Abrechnungsjahres in den Datenpunkt eingetragen. Ebenso habe ich den Zählerstand zum Monatsanfang eingetragen. Alles Andere wird ab dann automatisch berechnet. Mit der der aktuellen Leistung und deren Aufzeichnung in Influx ermittle ich Leistungsspitzen. In einem nächsten Schritt gleiche ich dies mit den Leistungsaufzeichnungen meiner Gosund SP111 Stecker. Diese habe ich bei verschiedensten Verbrauchern (Kaffeemaschine, Kühlschrank, Geschirrspüler, Waschmaschine etc.) zwischengeschaltet. Ich hoffe, dass ich damit etwas Transparenz über meinen Verbrauchswerte erhalte. Derzeit habe ich noch unerklärliche Leistungsspitzen.

                                    Mein nächstes Projekt starte ich mit meinem Gaszähler.

                                    Wir haben uns verirrt, kommen aber gut voran.

                                    J 1 Antwort Letzte Antwort
                                    0
                                    • RalfThR RalfTh

                                      Hallo zusammen,

                                      da ich auf meinen letzten Post keine Antwort erhalten habe, musste ich mir eine andere Lösung einfallen lassen. Ich habe das Problem für mich jetzt mit Blockly und eigenen Datenpunkten gelöst. Ich poste mal meinen Lösungsansatz.

                                      Meine Datenpunkte im ioBroker:

                                      7e871390-2766-4f74-82e2-1c8429678fca-image.png

                                      Und hier mein Blockly dazu:

                                      317d132d-d31a-4191-b03e-38ade8be0e9c-image.png

                                      Und hier noch das XML:

                                      <xml xmlns="http://www.w3.org/1999/xhtml">
                                        <variables>
                                          <variable type="" id="5R`M]^^]KJ`7$#6%5=rE">Akt_Zaehlerstand</variable>
                                          <variable type="" id="hw|:6+#ri,90iH0u!T0e">Akt_Leistung</variable>
                                        </variables>
                                        <block type="comment" id="+8:x5xXlgL{2VF1oFxXN" x="87" y="88">
                                          <field name="COMMENT">Aktualisiert alle 10 Sekunden die Zählerstände</field>
                                          <next>
                                            <block type="schedule" id="JAbYj59_gH?5n2TDnMu+">
                                              <field name="SCHEDULE">*/10 * * * * *</field>
                                              <statement name="STATEMENT">
                                                <block type="variables_set" id="Pzp8I)nFt27=k|mRGpuy">
                                                  <field name="VAR" id="5R`M]^^]KJ`7$#6%5=rE" variabletype="">Akt_Zaehlerstand</field>
                                                  <value name="VALUE">
                                                    <block type="get_value" id=".[3/UxK9~BGE=s*T@dw3">
                                                      <field name="ATTR">val</field>
                                                      <field name="OID">sonoff.0.Stromzähler.SML_DJ_TPWRIN</field>
                                                    </block>
                                                  </value>
                                                  <next>
                                                    <block type="variables_set" id="k#%gg8KXcM)/pfzm^5Gs">
                                                      <field name="VAR" id="hw|:6+#ri,90iH0u!T0e" variabletype="">Akt_Leistung</field>
                                                      <value name="VALUE">
                                                        <block type="get_value" id="p65y1)isT/onGtMeT7M[">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">sonoff.0.Stromzähler.SML_DJ_TPWRCURR</field>
                                                        </block>
                                                      </value>
                                                      <next>
                                                        <block type="update" id="8-qCC^-w!H~!TRZE~:4O">
                                                          <mutation delay_input="true"></mutation>
                                                          <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Zählerstand_Aktuell</field>
                                                          <field name="WITH_DELAY">TRUE</field>
                                                          <field name="DELAY_MS">1000</field>
                                                          <field name="UNIT">ms</field>
                                                          <field name="CLEAR_RUNNING">FALSE</field>
                                                          <value name="VALUE">
                                                            <block type="variables_get" id="Pk+0wxb+Bi;]D9Rtc]V;">
                                                              <field name="VAR" id="5R`M]^^]KJ`7$#6%5=rE" variabletype="">Akt_Zaehlerstand</field>
                                                            </block>
                                                          </value>
                                                          <next>
                                                            <block type="update" id="Kk?~4wU8(0vVJ,F;K{{o">
                                                              <mutation delay_input="false"></mutation>
                                                              <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Heute</field>
                                                              <field name="WITH_DELAY">FALSE</field>
                                                              <value name="VALUE">
                                                                <block type="math_rndfixed" id="PmR7c|]T_yYXK[(!@HA$">
                                                                  <field name="n">2</field>
                                                                  <value name="x">
                                                                    <shadow type="math_number" id="PhFgH^bN]_ZB+=7:Y=ZQ">
                                                                      <field name="NUM">3.1234</field>
                                                                    </shadow>
                                                                    <block type="math_arithmetic" id="|1Q/[-p1/2d3A$F*W-@C">
                                                                      <field name="OP">MINUS</field>
                                                                      <value name="A">
                                                                        <shadow type="math_number" id="LQx(4[3IAXWMFv~b/=?8">
                                                                          <field name="NUM">1</field>
                                                                        </shadow>
                                                                        <block type="variables_get" id="Urhr[FlmlwH,-`3%*oTY">
                                                                          <field name="VAR" id="5R`M]^^]KJ`7$#6%5=rE" variabletype="">Akt_Zaehlerstand</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="B">
                                                                        <shadow type="math_number" id="=ho-N:ZU{9.L#@yO-j[|">
                                                                          <field name="NUM">1</field>
                                                                        </shadow>
                                                                        <block type="get_value" id="fs{*S,3OYzK@/7Ky~4MW">
                                                                          <field name="ATTR">val</field>
                                                                          <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Zählerstand_0:00</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <next>
                                                                <block type="update" id="jRLRiZ6:^9j0~+enR]zA">
                                                                  <mutation delay_input="false"></mutation>
                                                                  <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Leistung_Aktuell</field>
                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                  <value name="VALUE">
                                                                    <block type="variables_get" id="5XR.pF9}I.oMHTAhB,*h">
                                                                      <field name="VAR" id="hw|:6+#ri,90iH0u!T0e" variabletype="">Akt_Leistung</field>
                                                                    </block>
                                                                  </value>
                                                                  <next>
                                                                    <block type="update" id="]E=cPfNz{KVp%B-#=:mQ">
                                                                      <mutation delay_input="false"></mutation>
                                                                      <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Monat</field>
                                                                      <field name="WITH_DELAY">FALSE</field>
                                                                      <value name="VALUE">
                                                                        <block type="math_rndfixed" id="uB%.#)xmgn/#6`}WaR71">
                                                                          <field name="n">2</field>
                                                                          <value name="x">
                                                                            <shadow type="math_number" id="qMW9@P!mis?2Toz%-r?y">
                                                                              <field name="NUM">3.1234</field>
                                                                            </shadow>
                                                                            <block type="math_arithmetic" id="f(sf($emS)dr6OaZ=F_z">
                                                                              <field name="OP">MINUS</field>
                                                                              <value name="A">
                                                                                <shadow type="math_number" id="LQx(4[3IAXWMFv~b/=?8">
                                                                                  <field name="NUM">1</field>
                                                                                </shadow>
                                                                                <block type="variables_get" id="wm;RT0{JL4W^DNpJFZRd">
                                                                                  <field name="VAR" id="5R`M]^^]KJ`7$#6%5=rE" variabletype="">Akt_Zaehlerstand</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="B">
                                                                                <shadow type="math_number" id="=ho-N:ZU{9.L#@yO-j[|">
                                                                                  <field name="NUM">1</field>
                                                                                </shadow>
                                                                                <block type="get_value" id="8Aqy]SC~|j%)-F6VM6)n">
                                                                                  <field name="ATTR">val</field>
                                                                                  <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Zählerstand_Monatsanfang</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                      <next>
                                                                        <block type="update" id="G=I:~2#DV[+SJ)p)~~VP">
                                                                          <mutation delay_input="false"></mutation>
                                                                          <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Abrechnungsjahr</field>
                                                                          <field name="WITH_DELAY">FALSE</field>
                                                                          <value name="VALUE">
                                                                            <block type="math_rndfixed" id=",Oq;YRS8XO@KaMKQ7!]f">
                                                                              <field name="n">2</field>
                                                                              <value name="x">
                                                                                <shadow type="math_number" id=".kW~OzajFi3^%aFqkFXs">
                                                                                  <field name="NUM">3.1234</field>
                                                                                </shadow>
                                                                                <block type="math_arithmetic" id="1OFp4Q,cjKo6]s_imeZ3">
                                                                                  <field name="OP">MINUS</field>
                                                                                  <value name="A">
                                                                                    <shadow type="math_number" id="LQx(4[3IAXWMFv~b/=?8">
                                                                                      <field name="NUM">1</field>
                                                                                    </shadow>
                                                                                    <block type="variables_get" id="#bA6YSq#9mH{A6g2A8+z">
                                                                                      <field name="VAR" id="5R`M]^^]KJ`7$#6%5=rE" variabletype="">Akt_Zaehlerstand</field>
                                                                                    </block>
                                                                                  </value>
                                                                                  <value name="B">
                                                                                    <shadow type="math_number" id="=ho-N:ZU{9.L#@yO-j[|">
                                                                                      <field name="NUM">1</field>
                                                                                    </shadow>
                                                                                    <block type="get_value" id="3EVb!rK9K+B3$,yq!w9k">
                                                                                      <field name="ATTR">val</field>
                                                                                      <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Zählerstand_Abrechnungsbeginn</field>
                                                                                    </block>
                                                                                  </value>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </value>
                                                                          <next>
                                                                            <block type="update" id="fRi!1KfW2B*;g`w0Y!?n">
                                                                              <mutation delay_input="false"></mutation>
                                                                              <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Kosten_Abrechnungsjahr</field>
                                                                              <field name="WITH_DELAY">FALSE</field>
                                                                              <value name="VALUE">
                                                                                <block type="math_rndfixed" id="mXqm#^`pB$l1`k//:agF" inline="false">
                                                                                  <field name="n">2</field>
                                                                                  <value name="x">
                                                                                    <shadow type="math_number" id="e.YrmNgG`aCTcs7v652k">
                                                                                      <field name="NUM">3.1234</field>
                                                                                    </shadow>
                                                                                    <block type="math_arithmetic" id="!NPxK]iaOK%$ndixnR!3" inline="false">
                                                                                      <field name="OP">ADD</field>
                                                                                      <value name="A">
                                                                                        <shadow type="math_number" id="Bb%uMFto,dx!TJ#0k.y=">
                                                                                          <field name="NUM">1</field>
                                                                                        </shadow>
                                                                                        <block type="get_value" id="$i4PYLYC)04[*f,ycc{V">
                                                                                          <field name="ATTR">val</field>
                                                                                          <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Kosten_Grundpreis</field>
                                                                                        </block>
                                                                                      </value>
                                                                                      <value name="B">
                                                                                        <shadow type="math_number" id="TQ5:ZE^%izvGFry,l8zh">
                                                                                          <field name="NUM">1</field>
                                                                                        </shadow>
                                                                                        <block type="math_arithmetic" id="6]^},qK?q%F.66U0f]=k">
                                                                                          <field name="OP">MULTIPLY</field>
                                                                                          <value name="A">
                                                                                            <shadow type="math_number" id="FyqV9?KvO*8KFQUAn-3`">
                                                                                              <field name="NUM">1</field>
                                                                                            </shadow>
                                                                                            <block type="get_value" id="d,oEYFJ4^1e:mz{;H{k%">
                                                                                              <field name="ATTR">val</field>
                                                                                              <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Kosten_kWh_in_Euro</field>
                                                                                            </block>
                                                                                          </value>
                                                                                          <value name="B">
                                                                                            <shadow type="math_number" id="xebVJ7IVS$habfTl/Si3">
                                                                                              <field name="NUM">1</field>
                                                                                            </shadow>
                                                                                            <block type="get_value" id="D?|1DE7;OXYdtGD_/!*-">
                                                                                              <field name="ATTR">val</field>
                                                                                              <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Abrechnungsjahr</field>
                                                                                            </block>
                                                                                          </value>
                                                                                        </block>
                                                                                      </value>
                                                                                    </block>
                                                                                  </value>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </next>
                                                                        </block>
                                                                      </next>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </statement>
                                              <next>
                                                <block type="comment" id="!H(TM~7]E+7pAHl%2`dV">
                                                  <field name="COMMENT">Aktualisiert dei Zählerstände täglich um 0:00</field>
                                                  <next>
                                                    <block type="schedule" id="b2FC_`#h3RpW*UgbbIds">
                                                      <field name="SCHEDULE">55 59 23 * * *</field>
                                                      <statement name="STATEMENT">
                                                        <block type="update" id="CFf2|!Ys1HXkth{}Tdq#">
                                                          <mutation delay_input="false"></mutation>
                                                          <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Gestern</field>
                                                          <field name="WITH_DELAY">FALSE</field>
                                                          <value name="VALUE">
                                                            <block type="get_value" id="SAAH5P,=24!RuQ@L;0X|">
                                                              <field name="ATTR">val</field>
                                                              <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Heute</field>
                                                            </block>
                                                          </value>
                                                          <next>
                                                            <block type="update" id="//mD6cYd9NGc$1iakvX-">
                                                              <mutation delay_input="false"></mutation>
                                                              <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Zählerstand_0:00</field>
                                                              <field name="WITH_DELAY">FALSE</field>
                                                              <value name="VALUE">
                                                                <block type="variables_get" id="Rj0N+DXRd7:-t~%$cmL-">
                                                                  <field name="VAR" id="5R`M]^^]KJ`7$#6%5=rE" variabletype="">Akt_Zaehlerstand</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </statement>
                                                      <next>
                                                        <block type="comment" id="vO19-![t:Mt+/XLZbrF_">
                                                          <field name="COMMENT">Aktualisert den Zählerstand jeden 1. im Monat</field>
                                                          <next>
                                                            <block type="schedule" id="#lHUl+IJ+^{vV9f%SX~+">
                                                              <field name="SCHEDULE">0 0 1 * *</field>
                                                              <statement name="STATEMENT">
                                                                <block type="update" id="hH;jN3S#b|VSVWvT4YRh">
                                                                  <mutation delay_input="false"></mutation>
                                                                  <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Vormonat</field>
                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                  <value name="VALUE">
                                                                    <block type="get_value" id="$3BH*r*[+J;7K]L!MdqI">
                                                                      <field name="ATTR">val</field>
                                                                      <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Verbrauch_Monat</field>
                                                                    </block>
                                                                  </value>
                                                                  <next>
                                                                    <block type="update" id="g2xtn0!!J}G_kvUx8+=n">
                                                                      <mutation delay_input="false"></mutation>
                                                                      <field name="OID">javascript.0.Eigene_Datenobjekte.Stromverbrauch.Zählerstand_Monatsanfang</field>
                                                                      <field name="WITH_DELAY">FALSE</field>
                                                                      <value name="VALUE">
                                                                        <block type="variables_get" id="nnG=yOpi:RWL,IAxB9dg">
                                                                          <field name="VAR" id="5R`M]^^]KJ`7$#6%5=rE" variabletype="">Akt_Zaehlerstand</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </statement>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </xml>
                                      

                                      Da ich meine Zählerstände bereits seit längerem erfasse, habe ich den Zählerstand zum Beginn des Abrechnungsjahres in den Datenpunkt eingetragen. Ebenso habe ich den Zählerstand zum Monatsanfang eingetragen. Alles Andere wird ab dann automatisch berechnet. Mit der der aktuellen Leistung und deren Aufzeichnung in Influx ermittle ich Leistungsspitzen. In einem nächsten Schritt gleiche ich dies mit den Leistungsaufzeichnungen meiner Gosund SP111 Stecker. Diese habe ich bei verschiedensten Verbrauchern (Kaffeemaschine, Kühlschrank, Geschirrspüler, Waschmaschine etc.) zwischengeschaltet. Ich hoffe, dass ich damit etwas Transparenz über meinen Verbrauchswerte erhalte. Derzeit habe ich noch unerklärliche Leistungsspitzen.

                                      Mein nächstes Projekt starte ich mit meinem Gaszähler.

                                      J Offline
                                      J Offline
                                      Jaschkopf
                                      schrieb am zuletzt editiert von
                                      #75

                                      @RalfTh Tut mir leid das ich auf den letzten Post nicht geantwortet hab. Muss die Mailbenachrichtigung irgendwie übersehene haben. Das p: vor dem Name definiert eine Permanente Variable die auch bei Neustart des ESP gespeichert bleibt. Soll die Variable neu beschrieben werden kann man das jederzeit machen, es muss nur das Kommando svars hinterher geschoben werden. Bei mir Läuft das Script einwandfrei. Theoretisch sollte es copy&paste auch bei dir laufen.

                                      Gruß Jaschkopf

                                      1 Antwort Letzte Antwort
                                      0
                                      • P Offline
                                        P Offline
                                        Polo1501
                                        schrieb am zuletzt editiert von
                                        #76

                                        @Jaschkopf vielen Dank für die ausführliche Anleitung,
                                        leider bekomme ich beim flashen diese Fehlermeldung:

                                        Error: Invalid 'C:\Users\Manu\Downloads\Sonoff-Tasmota-universal8\Sonoff-Tasmota-universal8\platformio.ini' (project configuration file): 'No option 'platform_packages' in section: 'common''

                                        kannst du mir sagen wo hier der Fehler liegt?

                                        J 1 Antwort Letzte Antwort
                                        0
                                        • P Polo1501

                                          @Jaschkopf vielen Dank für die ausführliche Anleitung,
                                          leider bekomme ich beim flashen diese Fehlermeldung:

                                          Error: Invalid 'C:\Users\Manu\Downloads\Sonoff-Tasmota-universal8\Sonoff-Tasmota-universal8\platformio.ini' (project configuration file): 'No option 'platform_packages' in section: 'common''

                                          kannst du mir sagen wo hier der Fehler liegt?

                                          J Offline
                                          J Offline
                                          Jaschkopf
                                          schrieb am zuletzt editiert von
                                          #77

                                          @Polo1501 lad doch bitte mal deine platformio.ini hier hoch dann gucke ich mal rein.

                                          Gruß Jaschkopf

                                          P 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          687

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe