Skip to content
  • Home
  • 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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Auswertung für smartmeter

NEWS

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

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

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

Auswertung für smartmeter

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
62 Beiträge 16 Kommentatoren 10.7k Aufrufe 4 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.
  • Palm_ManiacP Offline
    Palm_ManiacP Offline
    Palm_Maniac
    schrieb am zuletzt editiert von
    #47

    Hallo,

    ich habe das Skript vergessen, welches ich benutze. Hier ist es:

    // 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.Discovergy.";  // 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      = "script.js.Strom.Einspeise-Bezug.Werte.Gesamtverbrauch";               /*Stromverbrauch insgesammt*/
    var idHAGZielH      = PathToDP + "Stunde";
    var idHAGZielD      = PathToDP + "Tag";
    var idHAGZielW      = PathToDP + "Woche";
    var idHAGZielM      = PathToDP + "Monat";
    var idHAGZielT      = PathToDP + "Heute";
    var idHAGZielCW     = PathToDP + "AktuelleWoche";
    var idHAGZielCM     = PathToDP + "AktuellerMonat";
    
    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 = "Stromverbrauch " + (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, runden(nDiff, 3), 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 Antwort Letzte Antwort
    0
    • a200A Offline
      a200A Offline
      a200
      schrieb am zuletzt editiert von
      #48

      @Palm_Maniac:

      Hallo,

      ich habe das Skript vergessen, welches ich benutze. Hier ist es: `
      bist du dir sicher, dass du Nachkommastellen überhaupt hast? Was steht bei dir im Datenpunkt: "script.js.Strom.Einspeise-Bezug.Werte.Gesamtverbrauch"

      Wenn du immer nur ganze Wh Angaben hast, dann können keine Nachkommastellen entstehen. Schau aber erstmal in dem o.g. Datenpunkt.

      a200.

      IoBroker auf QNAP TS-451, Raspi und NUC

      1 Antwort Letzte Antwort
      0
      • Palm_ManiacP Offline
        Palm_ManiacP Offline
        Palm_Maniac
        schrieb am zuletzt editiert von
        #49

        Also unter dem Datenpunkt wird mit Nachkommastelle in Watt ausgegeben, aktuell z.b. 1143.5W. In den TMPs des Skripts steht es noch richtig.

        Ich habe im Skript gesehen, wenn die Differenz zwischen aktuellen und vorhergehenden Wert berechnet wird, dann werden die jeweilen Werte mit 10 multipliziert und das Ergebnis dann nochmal mit 100. Als Ergebnis gibts dann die Monsterzahlen, die eher mWh entsprechen als Wh. Hier der Ausschnitt des Codes:

        var nDiff = ((nAktuell * 10) - (nVorwert * 10)) * 100;
        

        Ist das Absicht so? Mir kommt das komisch vor.

        Hier mal ein Ausschnitt von Heute mit den Inhalten der Objekte. Da sieht man, dass sie temporär mit Nachkommastellen richtig als Wh abgelegt werden.

        17814_daten.jpg

        Und hier die Quelle, der Gesamtverbrauch.

        17814_gesamtverbrauch.jpg

        Da sind jetzt gerade mal viele Nachkommastellen, aber das Komma ist da.

        Vielen Dank für deine Hilfe. :)

        1 Antwort Letzte Antwort
        0
        • a200A Offline
          a200A Offline
          a200
          schrieb am zuletzt editiert von
          #50

          @Palm_Maniac:

          Also unter dem Datenpunkt wird mit Nachkommastelle in Watt ausgegeben, aktuell z.b. 1143.5W. In den TMPs des Skripts steht es noch richtig.

          Ich habe im Skript gesehen, wenn die Differenz zwischen aktuellen und vorhergehenden Wert berechnet wird, dann werden die jeweilen Werte mit 10 multipliziert und das Ergebnis dann nochmal mit 100. Als Ergebnis gibts dann die Monsterzahlen, die eher mWh entsprechen als Wh. Hier der Ausschnitt des Codes:

          var nDiff = ((nAktuell * 10) - (nVorwert * 10)) * 100;
          

          Ist das Absicht so? Mir kommt das komisch vor.

          Hier mal ein Ausschnitt von Heute mit den Inhalten der Objekte. Da sieht man, dass sie temporär mit Nachkommastellen richtig als Wh abgelegt werden.

          Daten.JPG

          Und hier die Quelle, der Gesamtverbrauch.

          Gesamtverbrauch.jpg

          Da sind jetzt gerade mal viele Nachkommastellen, aber das Komma ist da.

          Vielen Dank für deine Hilfe. :) `

          das sollte doch eher.

          var nDiff = ((nAktuell * 10) - (nVorwert * 10)) / 10;
          

          heißen. Also durch Zehn und nicht mal Hundert. So steht es wenigstens bei mir drin.

          Sauberer sollte es aber so sein:

          var nDiff = parseFloat(nAktuell) - parseFloat(nVorwert);
          

          Scheint bis jetzt Niemandem aufgefallen zu sein. Habe ich im ersten Posting korrigiert.

          IoBroker auf QNAP TS-451, Raspi und NUC

          1 Antwort Letzte Antwort
          0
          • Palm_ManiacP Offline
            Palm_ManiacP Offline
            Palm_Maniac
            schrieb am zuletzt editiert von
            #51

            Hallo a200,

            das mit *100 ist so aus deiner 2. Version, als die Punkte für Aktueller Monat und Aktuelle Woche dazu kamen, etwas weiter unten auf der ersten Seite hier. Da hat sich der Fehler wohl schon eingeschlichen. :)

            Den geänderten Code werde ich gleich übernehmen und berichten. Vielen Dank. :)

            1 Antwort Letzte Antwort
            0
            • Palm_ManiacP Offline
              Palm_ManiacP Offline
              Palm_Maniac
              schrieb am zuletzt editiert von
              #52

              Jetzt klappt es, es werden keine mWh mehr berechnet. :)

              Etwas verstehe ich aber noch nicht. Wieso wird in dem Skript eine Differenzberechnung durchgehführt? Was hat ein, sich mit der Zeit aufaddierender Wert mit der Differenz zum Vortag zut un? Aktuell führt das nähmlich bei mir zu negativen Werten Bei der Berechnung für Stromverbrauch Heute und Stromverbrauch Aktuelle Woche.

              Nach meinem Verständnis fängt doch jeder neue Tag ab 0 Uhr bei Null an. Also müßte bei jedem Durchlauf des Skripts nach einer Stunde der neue Wert auf den alten aufaddiert werden. Im Skript wird aber immer der Vorwert vom aktuellen Wert abgezogen, was dann eben zu negativen Verbrauchsdaten führen kann. Oder habe ich da jetzt einen Denkfehler drin?

              Vielleicht greife ich auch die falschen Daten ab. Das Objekt "Gesamtverbrauch" ergibt sich bei mir aus den Echtzeitverbrauchswerten der PV-Anlage und dem Bezug aus dem Netz. Also Daten, die sich sekündlich ändern. Oder muß ich den Zählerstand als Quelle angeben? Dann würde ich die Differenzberechnung verstehen.

              1 Antwort Letzte Antwort
              0
              • a200A Offline
                a200A Offline
                a200
                schrieb am zuletzt editiert von
                #53

                @Palm_Maniac:

                Jetzt klappt es, es werden keine mWh mehr berechnet. :)

                Etwas verstehe ich aber noch nicht. Wieso wird in dem Skript eine Differenzberechnung durchgehführt? Was hat ein, sich mit der Zeit aufaddierender Wert mit der Differenz zum Vortag zut un? Aktuell führt das nähmlich bei mir zu negativen Werten Bei der Berechnung für Stromverbrauch Heute und Stromverbrauch Aktuelle Woche.

                Nach meinem Verständnis fängt doch jeder neue Tag ab 0 Uhr bei Null an. Also müßte bei jedem Durchlauf des Skripts nach einer Stunde der neue Wert auf den alten aufaddiert werden. Im Skript wird aber immer der Vorwert vom aktuellen Wert abgezogen, was dann eben zu negativen Verbrauchsdaten führen kann. Oder habe ich da jetzt einen Denkfehler drin?

                Vielleicht greife ich auch die falschen Daten ab. Das Objekt "Gesamtverbrauch" ergibt sich bei mir aus den Echtzeitverbrauchswerten der PV-Anlage und dem Bezug aus dem Netz. Also Daten, die sich sekündlich ändern. Oder muß ich den Zählerstand als Quelle angeben? Dann würde ich die Differenzberechnung verstehen. `

                Dein Datenpunkt idHAGTotal muss auf den Gesamtzählerstand zeigen.

                Die Berechnung funktioniert wie folgt:

                um 13:00 wird der aktueller Gesamtzählerstand (z.B. 15000 kWh) minus der Zählerstand um 12:00 (z.B. 14800 kWh) berechnet. Das ergibt den Verbrauch der letzten Stunde (200 kWh). Der aktueller Gesamtzählerstand wird wieder in den TMP-H Datenpunkt geschrieben, um um 13:00 wieder die Differenz berechnen zu können.

                Also wir ziehen immer vom aktuellen Gesamtzählerstand jeweils den Vorstunden-, Vortag-, Vorwoche-, Vormonatwert abgezogen. Das ergibt den Verbrauch in der letzten Stunde, letzten Tag, Woche und Monat.

                Ich hoffe, jetzt ist es etwas klarer

                IoBroker auf QNAP TS-451, Raspi und NUC

                1 Antwort Letzte Antwort
                0
                • DutchmanD Offline
                  DutchmanD Offline
                  Dutchman
                  Developer Most Active Administrators
                  schrieb am zuletzt editiert von
                  #54

                  Ihr wisst dass es inzwischen dafür einen Adapter gibt?

                  viewtopic.php?t=20897

                  Ich freue mich über jeden Tester!

                  Ziel ist ihn nächste Woche aus der Beta zu hohlen

                  Sent from my iPhone using Tapatalk

                  SlowmanS 1 Antwort Letzte Antwort
                  0
                  • Palm_ManiacP Offline
                    Palm_ManiacP Offline
                    Palm_Maniac
                    schrieb am zuletzt editiert von
                    #55

                    Dann ist alles klar. :) Ok, dann werde ich umstellen.

                    Vielen Dank, a200.

                    Den Adapter schaue ich mir auch mal an.

                    1 Antwort Letzte Antwort
                    0
                    • DutchmanD Dutchman

                      Ihr wisst dass es inzwischen dafür einen Adapter gibt?

                      viewtopic.php?t=20897

                      Ich freue mich über jeden Tester!

                      Ziel ist ihn nächste Woche aus der Beta zu hohlen

                      Sent from my iPhone using Tapatalk

                      SlowmanS Offline
                      SlowmanS Offline
                      Slowman
                      schrieb am zuletzt editiert von
                      #56

                      @Dutchman sagte in Auswertung für smartmeter:

                      Ihr wisst dass es inzwischen dafür einen Adapter gibt?

                      viewtopic.php?t=20897

                      Ich freue mich über jeden Tester!

                      Ziel ist ihn nächste Woche aus der Beta zu hohlen

                      Sent from my iPhone using Tapatalk

                      Link funktioniert nicht zu den neuen Adapter oder ist dieser überhaupt nicht realisiert worden ?

                      HomoranH 1 Antwort Letzte Antwort
                      0
                      • SlowmanS Slowman

                        @Dutchman sagte in Auswertung für smartmeter:

                        Ihr wisst dass es inzwischen dafür einen Adapter gibt?

                        viewtopic.php?t=20897

                        Ich freue mich über jeden Tester!

                        Ziel ist ihn nächste Woche aus der Beta zu hohlen

                        Sent from my iPhone using Tapatalk

                        Link funktioniert nicht zu den neuen Adapter oder ist dieser überhaupt nicht realisiert worden ?

                        HomoranH Nicht stören
                        HomoranH Nicht stören
                        Homoran
                        Global Moderator Administrators
                        schrieb am zuletzt editiert von
                        #57

                        @Slowman sagte in Auswertung für smartmeter:

                        Link funktioniert nicht

                        Doch!
                        rechte Maustatste und in neuem Tab öffnen

                        @Slowman sagte in Auswertung für smartmeter:

                        ist dieser überhaupt nicht realisiert worden

                        natürlich ist er das

                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                        1 Antwort Letzte Antwort
                        0
                        • SlowmanS Offline
                          SlowmanS Offline
                          Slowman
                          schrieb am zuletzt editiert von
                          #58

                          @Homoran

                          Vielen Dank, nur klicken mit der Maus bekomme ich eine Fehlermeldung.

                          HomoranH 1 Antwort Letzte Antwort
                          0
                          • SlowmanS Slowman

                            @Homoran

                            Vielen Dank, nur klicken mit der Maus bekomme ich eine Fehlermeldung.

                            HomoranH Nicht stören
                            HomoranH Nicht stören
                            Homoran
                            Global Moderator Administrators
                            schrieb am zuletzt editiert von
                            #59

                            @Slowman sagte in Auswertung für smartmeter:

                            nur klicken

                            auch bei rechtsklick?

                            kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                            der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                            1 Antwort Letzte Antwort
                            0
                            • SlowmanS Offline
                              SlowmanS Offline
                              Slowman
                              schrieb am zuletzt editiert von
                              #60

                              Nein, bei rechts klick funktioniert es, aber nicht der Direktklick, da kommt bei mir

                              Nicht Gefunden
                              Diese Seite existiert nicht. Zur Homepage zurückkehren.

                              HomoranH 1 Antwort Letzte Antwort
                              0
                              • SlowmanS Slowman

                                Nein, bei rechts klick funktioniert es, aber nicht der Direktklick, da kommt bei mir

                                Nicht Gefunden
                                Diese Seite existiert nicht. Zur Homepage zurückkehren.

                                HomoranH Nicht stören
                                HomoranH Nicht stören
                                Homoran
                                Global Moderator Administrators
                                schrieb am zuletzt editiert von
                                #61

                                @Slowman sagte in Auswertung für smartmeter:

                                aber nicht der Direktklick, da kommt

                                Ich klicke direkt mit rechts ;-)

                                sorry für die Begriffsverwirrung

                                kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                E 1 Antwort Letzte Antwort
                                0
                                • HomoranH Homoran

                                  @Slowman sagte in Auswertung für smartmeter:

                                  aber nicht der Direktklick, da kommt

                                  Ich klicke direkt mit rechts ;-)

                                  sorry für die Begriffsverwirrung

                                  E Offline
                                  E Offline
                                  europe
                                  schrieb am zuletzt editiert von
                                  #62

                                  @a200

                                  Das Skript ist super... ich habe noch eine Baustelle.
                                  Wenn iobroker neu gestartet wird (zB update controller) dann werden "null" Werte geschrieben. Wie kann ich die loswerden? Einmal ist es mit ack false und einmal mit true. Beide an Zeiten wo eigentlich nichts erscheinen soll. Hier zB ein Beispiel wo um 1 vor der volle Stunde was geschrieben wird, am um 9:38 und 9:38 wurden nulls geschrieben.

                                  3cc3e87e-403f-4de2-b5fe-5e0334ad7b94-image.png

                                  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

                                  843

                                  Online

                                  32.4k

                                  Benutzer

                                  81.4k

                                  Themen

                                  1.3m

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

                                  • Du hast noch kein Konto? Registrieren

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