Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Auswertung für smartmeter

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Auswertung für smartmeter

    This topic has been deleted. Only users with topic management privileges can see it.
    • a200
      a200 last edited by

      @simpixo:

      Also es wäre nicht schlecht ein Objekt zu haben -> Stromverbrauch Monatsanfang bis heute [emoji6]

      Gruß

      Adrian

      Gesendet von iPhone mit Tapatalk Pro `
      Willst du es testen? 😉

      1 Reply Last reply Reply Quote 0
      • S
        simpixo last edited by

        Klar, warum nicht [emoji3]

        Gesendet von iPhone mit Tapatalk Pro

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

          @simpixo:

          Klar, warum nicht [emoji3]

          Gesendet von iPhone mit Tapatalk Pro `
          Testen habe ich gesagt, also keine Garantie. 🙂

          1. kopiere den Wert deinen aktuellen Gesamtverbrauches in die Datenpunkte Total-m und Total-w

          2. benutze die unten stehende Version 0.11b

          zu nächsten vollen Stunde werden die Datenpunkte CurrentWeek und CurrentMonth gefüllt.

          Falls du eigenen Pfad zu den Datenpunkten hast, dann brauchst du diese nur einmal anpassen (PathToDP).

          Warte auf deine Freigabe! 😄

          ! ````
          // NEU - Zählerstand vom Anfang der akt. Stunde wird ermittelt v 0.11
          //
          ! var AktWoche = true; // Berechnung des Wertes: Aktuelle Woche ein-/ausschalten
          var AktMonat = true; // Berechnung des Wertes: Aktueller Monat ein-/ausschalten
          var PathToDP = "javascript.0.Stromzähler.Hager."; // Pfad zum Datenpunkt
          ! var cronH = "0 * * * *";
          var cronD = "59 23 * * *";
          var cronW = "0 0 * * 1";
          var cronM = "0 0 1 * ";
          ! var idHAGTotH = PathToDP + "tmp.Total-h";
          var idHAGTotD = PathToDP + "tmp.Total-d";
          var idHAGTotW = PathToDP + "tmp.Total-w";
          var idHAGTotM = PathToDP + "tmp.Total-m";
          var idHAGTotal = PathToDP + "smartmeter.0.1-0:1_8_0
          255.value"; /Stromverbrauch insgesammt/
          var idHAGZielH = PathToDP + "Hour";
          var idHAGZielD = PathToDP + "Day";
          var idHAGZielW = PathToDP + "Week";
          var idHAGZielM = PathToDP + "Month";
          var idHAGZielT = PathToDP + "Today";
          var idHAGZielCW = PathToDP + "CurrentWeek";
          var idHAGZielCM = PathToDP + "CurrentMonth";
          ! var debug = false;
          ! var DPArray = [idHAGTotH, idHAGTotD , idHAGTotW, idHAGTotM, idHAGZielH, idHAGZielD, idHAGZielW, idHAGZielM, idHAGZielT, idHAGZielCW, idHAGZielCM];
          var DPUnit = "Wh";
          ! DPArray.forEach(function(wert, index, array) {
          var DPType = wert.split(".");
          var DPDescr = "Power consumption of " + (DPType[DPType.length - 1]);

          if(index > 3) DPUnit = "Wh";
          createState(wert, 0, {
              name: DPDescr,
              desc: DPDescr,
              type: 'number',
              unit: DPUnit,
              role: 'value'
          });
          

          });

          ! function haupt (VorId, ZielId, SetN) {
          var nVorwert = getState(VorId).val;
          var nAktuell = getState(idHAGTotal).val;
          var nDiff = ((nAktuell * 10) - (nVorwert * 10)) * 100;
          setState(ZielId, nDiff, true);
          if(debug) log("Aus: " + nAktuell +" - "+ nVorwert + " = " + nDiff);
          if(SetN) {
          var shandler = on ({id: ZielId, change: 'any'}, function(data) {
          setState(VorId, (nAktuell*10)/10, true);
          unsubscribe(shandler);
          });
          }
          }
          ! // regelmässige Wiederholungen
          // -----------------------------------------------------------------------------
          ! schedule(cronH, function () {
          haupt(idHAGTotH, idHAGZielH, true);
          haupt(idHAGTotD, idHAGZielT, false);
          if(AktWoche) haupt(idHAGTotW, idHAGZielCW, false);
          if(AktMonat) haupt(idHAGTotM, idHAGZielCM, false);
          });
          ! schedule(cronD, function () {
          haupt(idHAGTotD, idHAGZielD, true);
          });
          ! schedule(cronW, function () {
          haupt(idHAGTotW, idHAGZielW, true);
          });
          ! schedule(cronM, function () {
          haupt(idHAGTotM, idHAGZielM, true);
          });

          1 Reply Last reply Reply Quote 0
          • S
            simpixo last edited by

            @a200:

            Testen habe ich gesagt, also keine Garantie. 🙂 `

            Dann teste ich mal 😉

            Hab dein Script mal übernommen und schaue was passiert

            Gruß

            Adrian

            1 Reply Last reply Reply Quote 0
            • S
              simpixo last edited by

              Hallo a200

              irgendwas ist komisch….

              432_screenshot_2017-02-13_18.21.32.png

              warum ist das eine Minus Zahl? Soll das so sein? oder habe ich was falsch gemacht?

              Gruß

              Adrian

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

                @simpixo:

                Hallo a200

                irgendwas ist komisch….

                Screenshot 2017-02-13 18.21.32.png

                warum ist das eine Minus Zahl? Soll das so sein? oder habe ich was falsch gemacht?

                Gruß

                Adrian `

                aus

                var idHAGTotal = PathToDP + "smartmeter.0.1-0:1_8_0*255.value"; /Stromverbrauch insgesammt/

                mach

                var idHAGTotal = "smartmeter.0.1-0:1_8_0*255.value"; /Stromverbrauch insgesammt/

                Ein fataler Fehler! Die aktueller Wert konnte nicht ausgelesen werden! Etwas zu viel Cut&Paste 😢

                Kopiere vorher den aktuellen Wert in Total-d und Total-h

                Danach sollte es gehen.

                1 Reply Last reply Reply Quote 0
                • S
                  simpixo last edited by

                  Welchen Wert meinst du denn genau!? Den Gesamten Verbrauch!?

                  Gesendet von iPhone mit Tapatalk Pro

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

                    @simpixo:

                    Welchen Wert meinst du denn genau!? Den Gesamten Verbrauch!?

                    Gesendet von iPhone mit Tapatalk Pro `
                    Ja. Gesamtverbrauch.

                    1 Reply Last reply Reply Quote 0
                    • S
                      simpixo last edited by

                      @a200:

                      aus

                      var idHAGTotal = PathToDP + "smartmeter.0.1-0:1_8_0*255.value"; /Stromverbrauch insgesammt/

                      mach

                      var idHAGTotal = "smartmeter.0.1-0:1_8_0*255.value"; /Stromverbrauch insgesammt/

                      Ein fataler Fehler! Die aktueller Wert konnte nicht ausgelesen werden! Etwas zu viel Cut&Paste 😢

                      Kopiere vorher den aktuellen Wert in Total-d und Total-h

                      Danach sollte es gehen. `

                      Habe gerade angepasst…. schauen wir mal ob das Ganze jetzt funktioniert 🙂

                      Gruß

                      Adrian

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

                        Ich warte.

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

                          Und? Die volle Stunde ist um.

                          1 Reply Last reply Reply Quote 0
                          • S
                            simpixo last edited by

                            @a200:

                            Und? Die volle Stunde ist um. `

                            Leider vergessen das Script zu starten [emoji23][emoji23][emoji23]

                            Jetzt müssen wir bis 22 Uhr warten [emoji53]

                            Gruß

                            Adrian

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

                              [FACE WITH TEARS OF JOY][FACE WITH TEARS OF JOY][FACE WITH TEARS OF JOY]

                              1 Reply Last reply Reply Quote 0
                              • S
                                simpixo last edited by

                                Hallo

                                habe gerade nachgesehen die ersten Werte sind schon da, aber dennoch sieht es komisch aus

                                432_screenshot_2017-02-13_21.33.32.png

                                Total-h wandelt der selbständig um in kWh meine ich, habe das nämlich als Wh angeben, aber jetzt ist das Koma an der falschen Stelle

                                Was sagst du dazu? :shock:

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

                                  @simpixo:

                                  Hallo

                                  habe gerade nachgesehen die ersten Werte sind schon da, aber dennoch sieht es komisch aus

                                  Screenshot 2017-02-13 21.33.32.png

                                  Total-h wandelt der selbständig um in kWh meine ich, habe das nämlich als Wh angeben, aber jetzt ist das Koma an der falschen Stelle

                                  Was sagst du dazu? :shock: `
                                  hast du die kWh Berechnung rein gemacht?

                                  außerdem ist Total-w, Total-m leer. Dort sollte aber der Gesamtverbrauchswert stehen.

                                  Akt. Gesamtverbrauch - Total-w = currentWeek

                                  oben hattest du einen Wert in Total-m und Total-w

                                  1 Reply Last reply Reply Quote 0
                                  • S
                                    simpixo last edited by

                                    @a200:

                                    hast du die kWh Berechnung rein gemacht? `

                                    …. das einzige was ich gemacht habe, war den Zählerstand von kWh in Wh umzurechnen, da der DP ja Wh verlangt.

                                    War das falsch?

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

                                      in der nächsten version werden die werte in kWh umgerechnet. hier allerdings ist es problematisch, weil wir Wh von kHw anziehen. Damit sind die Werte so komisch.

                                      speichere in aller Total-x Feldern den aktuellen Gesamtwert - 10 Wh. und wir warten bis 22:00h

                                      1 Reply Last reply Reply Quote 0
                                      • C
                                        chemieka last edited by

                                        Hatte Gestern das Problem, dass ich ioBroker nicht mehr erreicht habe. Irgendwann gings dann wieder.

                                        Aber dann fängt er wieder von vorn an.

                                        Das ist natürlich dann schon etwas ärgerlich da ja dann wieder die Diagramme lange Zeit durcheinander sind.

                                        Beim Tageswert ist das ja nicht so schlimm aber beim Wochen oder Monatsverbrauch muss man lange warten bis die Zahlen wieder stimmen.

                                        Vielleicht fällt uns da noch eine andere Lösung ein.

                                        1867_unbenannt.jpg

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

                                          @chemieka:

                                          Das ist natürlich dann schon etwas ärgerlich da ja dann wieder die Diagramme lange Zeit durcheinander sind.

                                          Beim Tageswert ist das ja nicht so schlimm aber beim Wochen oder Monatsverbrauch muss man lange warten bis die Zahlen wieder stimmen. `
                                          Verstehe ich nicht ganz. Ein berechneter Verbrauch bleibt als Datenpunkt bestehen bis er überschrieben wird. Überschrieben wird er am Ende seines Zyklus. Die Daten sind persistent. Du kannst ioBroker beenden, Raspi rebooten usw. Danach wirst du die Werte wieder drin haben. Also verstehe ich deine Bedenken nicht, du musst sie etwas spezifizieren.

                                          Und nun zu den Zyklen.

                                          Monat - Wird immer am 1. eines Monats um 0:00 geschrieben. Bis dahin steht dort immer der Verbrauchswert des Vormonats. Die einzige Gefahr für deine Auswertung besteht, wenn ausgerechnet am 1. des Monats um 0:00 dein iobroker nicht läuft.

                                          Woche - Wird immer am Montag um 0:00 geschrieben. Bis dahin steht dort immer der Verbrauchswert der Vorwoche. Die einzige Gefahr für deine Auswertung besteht, wenn ausgerechnet am Montag um 0:00 dein iobroker nicht läuft.

                                          Tag - Wird Täglich um 0:00 geschrieben. Bis dahin steht dort immer der Verbrauchswert des Vortages. Die einzige Gefahr für deine Auswertung besteht, wenn ausgerechnet um 0:00 dein iobroker nicht läuft. Würde dann 24h später korrigiert.

                                          Heute, Stunde, Akt. Woche, akt. Monat - Werden Stündlich geschrieben.

                                          Also wo meinst du wäre ein Problem?

                                          Davon abgesehen stimmen deine Zahlen nicht und wieso hast du keine Wrte in Total-m und Total-w?

                                          1 Reply Last reply Reply Quote 0
                                          • C
                                            chemieka last edited by

                                            Ich sehe womöglich war die Datenpunkte weg sein könnten.

                                            Er hat die Zähler jetzt gewechselt nach Neustart.

                                            Obwohl ich die Zuordnung der USB gemacht hatte wie im anderen Tread beschrieben.

                                            Hat wohl nicht geklappt.

                                            Ich nehme mal so kann es dazu kommen oder?

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            813
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            16
                                            62
                                            8787
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo