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

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [Vorlage] Stromverbrauch protokollieren - (etwas optimiert)

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.5k

[Vorlage] Stromverbrauch protokollieren - (etwas optimiert)

Geplant Angeheftet Gesperrt Verschoben JavaScript
455 Beiträge 81 Kommentatoren 116.9k Aufrufe 36 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.
  • B Offline
    B Offline
    Beowolf
    schrieb am zuletzt editiert von
    #287

    Mal ne Frage.

    ` > var eigeneDatenpunkte = [

    // Beispiel:

    // ['Datenpunkt', 'Aliasname', 'Einheit kumulierter Wert', 'Einheit berechnete Werte (kilo/1000)' ],

    [ 'hm-rega.0.8422', 'Stromzaehler', 'Wh', 'kWh' ],

    [ 'hm-rega.0.8424', 'Brauchwasserzaehler', 'm3', 'm3' ],

    // [ 'javascript.1.MeinSonoffGeraet1', 'Strom.Sonoff.MeinSonoffGeraet1', 'Wh', 'kWh' ],

    // [ 'javascript.1.MeinSonoffGeraet2', 'Strom.Sonoff.MeinSonoffGeraet2', 'kWh', 'kWh' ],

    // [ 'javascript.1.MeineGas1', 'Gas.MeinGaszaehler1', 'm3', 'm3' ],

    // [ 'javascript.1.MeineGas2', 'Gas.MeinGaszaehler2', 'm3', 'm3' ],

    ]; `

    Der Stromzähler wird schön erfasst, der Wasserzähler erscheint nicht. Warum? Wo habe ich dort einen Fehler?

    Grüße

    Manfred

    Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

    1 Antwort Letzte Antwort
    0
    • M Offline
      M Offline
      mig81
      schrieb am zuletzt editiert von
      #288

      Kann keiner weiterhelfen?

      Habe alle möglichen Einstellungen versucht…..ich bekomme immer wieder die gleiche Fehlermeldung :(

      hier meine Einstellungen:

      // +++++++++ USER ANPASSUNGEN ++++++++++++++++++++++++

      // debug logging

      var logging = true;

      // Aktivieren der History Instanz

      var enable_history = false;

      // history Instanz

      var instance_history = 'history.0';

      // Geräte können unterschiedliche Preise haben

      var enable_unterschiedlichePreise = false;

      // Speichern der Werte in zusätzlichen Objekten.

      // Wenn 0, dann deaktiviert

      var Tag_Anzahl_Werte_in_der_Vergangenheit = 7;

      var Woche_Anzahl_Werte_in_der_Vergangenheit = 4;

      var Monat_Anzahl_Werte_in_der_Vergangenheit = 12;

      var Quartal_Anzahl_Werte_in_der_Vergangenheit = 4;

      var Jahr_Anzahl_Werte_in_der_Vergangenheit = 2;

      // Grundpreis einberechnen

      var enable_Grundpreis_einberechnen = false;

      var instance = '0';

      var instanz = 'javascript.' + instance + '.';

      // Pfad innerhalb der Instanz

      var pfad = 'Verbrauchszaehler.';

      var default_unit = 'Wh';

      var default_unit_kilo = 'kWh';

      // Diese Teile werden aus den Gerätenamen entfernt

      var blacklist = [':1', ':2', ':3', ':4', ':5', ':6', ':7', ':8'];

      var AnzahlKommastellenKosten = 2;

      var AnzahlKommastellenVerbrauch = 3;

      var AnzahlKommastellenZaehlerstand = 3;

      var KumulierterWertIstBereitsInKilo = true;

      var eigeneDatenpunkte = [

      [ 'smartmeter.0.1_8_0.value', 'Casa', 'kWh', 'kWh' ],

      // Beispiel:

      // ['Datenpunkt', 'Aliasname', 'Einheit kumulierter Wert', 'Einheit berechnete Werte (kilo/1000)' ],

      // [ 'hm-rpc.2.NEQ0861663.1.ENERGY_COUNTER', 'Stromzaehler:1.ENERGY_COUNTER', 'Wh', 'kWh' ],

      // [ 'javascript.1.MeinSonoffGeraet1', 'Strom.Sonoff.MeinSonoffGeraet1', 'Wh', 'kWh' ],

      // [ 'javascript.1.MeinSonoffGeraet2', 'Strom.Sonoff.MeinSonoffGeraet2', 'kWh', 'kWh' ],

      // [ 'javascript.1.MeineGas1', 'Gas.MeinGaszaehler1', 'm3', 'm3' ],

      // [ 'javascript.1.MeineGas2', 'Gas.MeinGaszaehler2', 'm3', 'm3' ],

      ];

      // Pushmeldung

      function send_message(text) {

      // Hier können die Pushmeldung über alle möglichen Wege verschickt werden.

      //console.log(text);

      //sendTelegram(text);

      }

      // ++++ ENDE USER ANPASSUNGEN ++++++++++++++++++++++++

      //–--------------------------------------------------------------------------//
      5108_bildschirmfoto_2018-09-26_um_20.14.55.png
      5108_bildschirmfoto_2018-09-26_um_20.16.48.png

      1 Antwort Letzte Antwort
      0
      • RöstkartoffelR Offline
        RöstkartoffelR Offline
        Röstkartoffel
        schrieb am zuletzt editiert von
        #289

        @Beowolf:

        Mal ne Frage.

        ` > var eigeneDatenpunkte = [

        // Beispiel:

        // ['Datenpunkt', 'Aliasname', 'Einheit kumulierter Wert', 'Einheit berechnete Werte (kilo/1000)' ],

        [ 'hm-rega.0.8422', 'Stromzaehler', 'Wh', 'kWh' ],

        [ 'hm-rega.0.8424', 'Brauchwasserzaehler', 'm3', 'm3' ],

        // [ 'javascript.1.MeinSonoffGeraet1', 'Strom.Sonoff.MeinSonoffGeraet1', 'Wh', 'kWh' ],

        // [ 'javascript.1.MeinSonoffGeraet2', 'Strom.Sonoff.MeinSonoffGeraet2', 'kWh', 'kWh' ],

        // [ 'javascript.1.MeineGas1', 'Gas.MeinGaszaehler1', 'm3', 'm3' ],

        // [ 'javascript.1.MeineGas2', 'Gas.MeinGaszaehler2', 'm3', 'm3' ],

        ]; `

        Der Stromzähler wird schön erfasst, der Wasserzähler erscheint nicht. Warum? Wo habe ich dort einen Fehler?

        Grüße

        Manfred `
        @Manfred,

        @mig81.

        Entfernt bitte mal das hintere Komma vom letzten Eintrag (habe ich im Zitat rot markiert), das gehört beim letzten Eintrag da nicht mehr hin.

        NUC7i3BNH mit Proxmox und ioBroker (VM Debian Buster), Raspi3 (Slave Smartmeter für eHZ easymeter), Hardware CCU2, SMA SB5000TL-21

        1 Antwort Letzte Antwort
        0
        • B Offline
          B Offline
          Beowolf
          schrieb am zuletzt editiert von
          #290

          Das mit dem Komma ist egal. Habe es probiert.

          Der Fehler bei mir lag an einer anderen Stelle. Der Zähler den ich hier habe gibt nur einen den Wert weiter, wenn sich etwas geändert hat.

          Deshalb hat das bei dem Stromzähler funktioniert. Ich verbrauche ja Strom, ständig. Bei dem Wasserzähler sah es eben anders aus. Der steht ja still (zumindestens solange ich vor meinem Rechner sitze).

          Der Wasserzähler funktioniert jetzt auch.

          ABER

          Ich habe im LOG folgendes stehen:

          ` > javascript.0 2018-09-27 16:31:18.942 error at Object. <anonymous>(script.js.common.Verbrauchszähler:222:25)

          javascript.0 2018-09-27 16:31:18.942 error at run (script.js.common.Verbrauchszähler:361:54)

          javascript.0 2018-09-27 16:31:18.942 error Error in callback: TypeError: Cannot read property 'toFixed' of null

          javascript.0 2018-09-27 16:31:18.942 warn at Object. <anonymous>(script.js.common.Verbrauchszähler:222:25)

          javascript.0 2018-09-27 16:31:18.942 warn at run (script.js.common.Verbrauchszähler:361:28)

          javascript.0 2018-09-27 16:31:18.942 warn getState "javascript.0.Verbrauchszähler.Brauchwasserzähler.Zaehlerstand.kumuliert" not found (3)

          javascript.0 2018-09-27 16:31:18.942 warn at Object. <anonymous>(script.js.common.Verbrauchszähler:222:25)

          javascript.0 2018-09-27 16:31:18.942 warn at run (script.js.common.Verbrauchszähler:302:17)

          javascript.0 2018-09-27 16:31:18.942 warn State "javascript.0.Verbrauchszähler.Brauchwasserzähler.Zaehlerstand.kumuliert" not found

          javascript.0 2018-09-27 16:31:18.941 warn at Object. <anonymous>(script.js.common.Verbrauchszähler:222:25)

          javascript.0 2018-09-27 16:31:18.941 warn at run (script.js.common.Verbrauchszähler:298:41)

          javascript.0 2018-09-27 16:31:18.941 warn getState "javascript.0.Verbrauchszähler.Brauchwasserzähler.Zaehlerstand.kumuliert" not found (3)</anonymous></anonymous></anonymous></anonymous> `

          Bedeutet, das er gerne die Preise haben möchte.

          Wo trage ich die ein?

          Für Strom erscheint sofort unter Preis/aktuell/Arbeitspreis und Grundpreis.

          Für Wasser erscheint dort nichts. Muß ich das manuell anlegen?

          Grüße

          Manfred

          PS:

          Habe es gefunden. In der Zeile im Konfigbereich:

          // Geräte können unterschiedliche Preise haben

          var enable_unterschiedlichePreise = true;

          Grüße

          Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

          1 Antwort Letzte Antwort
          0
          • B Offline
            B Offline
            Beowolf
            schrieb am zuletzt editiert von
            #291

            Habe noch eine Frage.

            Bei "Arbeitspreis" und "Grundpreis" steht ja in der Spalte NAME immer "Strompreis". Kann ich den im Skript einfach auf "Preis" ändern? Das wäre neutraler.

            Grüße

            Manfred

            Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

            1 Antwort Letzte Antwort
            0
            • B Offline
              B Offline
              Beowolf
              schrieb am zuletzt editiert von
              #292

              Ist da noch ein Fehler drin?

              Ich habe jetzt drei Zähler. Strom, Wasser und Gartenwasser. Alle mit "eigenem Preis" eingestellt. Sie zählen und berechnen auch alle schon sauber.

              ABER

              In der LOG-Datei von IOBroker steht immer wieder dieses hier:

              javascript.0 2018-09-28 16:35:46.205 info script.js.common.Verbrauchszähler: Das Gerät:Stromzähler hat eigenen Grundpreis: 1.69

              javascript.0 2018-09-28 16:35:46.205 info script.js.common.Verbrauchszähler: Das Gerät:Stromzähler hat eigenen Strompreis: 0.26

              javascript.0 2018-09-28 16:35:46.204 warn at Object. <anonymous>(script.js.common.Verbrauchszähler:223:25)

              javascript.0 2018-09-28 16:35:46.204 warn at run (script.js.common.Verbrauchszähler:367:23)

              javascript.0 2018-09-28 16:35:46.201 warn getState "javascript.0.Verbrauchszähler.Preis.aktuell.Grundpreis" not found (3)

              javascript.0 2018-09-28 16:35:46.201 warn at Object. <anonymous>(script.js.common.Verbrauchszähler:223:25)

              javascript.0 2018-09-28 16:35:46.201 warn at run (script.js.common.Verbrauchszähler:366:23)

              javascript.0 2018-09-28 16:35:46.198 warn getState "javascript.0.Verbrauchszähler.Preis.aktuell.Arbeitspreis" not found (3)

              javascript.0 2018-09-28 16:35:46.197 warn Object "javascript.0.Verbrauchszähler.Preis.neu.Datum" does not exist</anonymous></anonymous>

              javascript.0 2018-09-28 16:35:46.196 info script.js.common.Verbrauchszähler: States in der Instanz javascript.0.Verbrauchszähler. erstellt

              javascript.0 2018-09-28 16:35:46.183 info script.js.common.Verbrauchszähler: Nach der Aufbereitung: Stromzähler

              javascript.0 2018-09-28 16:35:46.183 info script.js.common.Verbrauchszähler: Es wird der Aliasname gesetzt:Stromzähler

              Kann es sein, das er immer noch den "normalen" Preis haben möchte? Also den der für alle Datenpunkte gilt?

              Grüße

              Manfred

              Die Natur braucht nicht unseren Schutz, sie braucht unsere Abwesenheit.

              1 Antwort Letzte Antwort
              0
              • hg6806H Offline
                hg6806H Offline
                hg6806
                Most Active
                schrieb am zuletzt editiert von
                #293

                Guten Morgen,

                ich habe auch das 1.3.3er Script genommen und zwei Smartmeter eingefügt:

                [ 'smartmeter.0.1-0:16_7_0_255.value', 'Strom.Allgemeinstrom', 'Wh', 'kWh' ],
                [ 'smartmeter.1.1-0:16_7_0_255.value', 'Strom.Heizungsstrom', 'Wh', 'kWh' ],
                

                Komischerweise ist aber beim "Allgemeinstrom" ein Fehler von Faktor 10 drin.

                Das Script zählt 10x mehr als ich wirklich verbrauche.

                "Heizungsstrom" funktioniert 1a.

                Noch etwas.

                Das Script legt Datenpunkte für "Leistungsmessungaußen" an, obwohl ich im Script gar nichts angegeben habe.

                Sucht es automatisch nach Homematic Leistungsmessern?

                1 Antwort Letzte Antwort
                0
                • Lenny.CBL Offline
                  Lenny.CBL Offline
                  Lenny.CB
                  Most Active
                  schrieb am zuletzt editiert von
                  #294

                  @hg6806:

                  Sucht es automatisch nach Homematic Leistungsmessern? ` Das war bei mir auch so. Ich glaube https://github.com/hdering/homematic_verbrauchszaehler/blob/master/Zaehlerstande_protokollieren.js#L231 passiert das.

                  1 Antwort Letzte Antwort
                  0
                  • hg6806H Offline
                    hg6806H Offline
                    hg6806
                    Most Active
                    schrieb am zuletzt editiert von
                    #295

                    OK, das kann gut sein mit dem Homematic Leistungsmesser.

                    Aber woher kommt der Fehler mit dem Faktor 10?

                    Klar könnte ich das schnell fixen, mich würde aber interessieren wo das her kommt.

                    1 Antwort Letzte Antwort
                    0
                    • hg6806H Offline
                      hg6806H Offline
                      hg6806
                      Most Active
                      schrieb am zuletzt editiert von
                      #296

                      Ich muss mich korrigieren. Beide Smartmeter werden um Faktor 10 falsch gezählt.

                      1 Antwort Letzte Antwort
                      0
                      • hg6806H Offline
                        hg6806H Offline
                        hg6806
                        Most Active
                        schrieb am zuletzt editiert von
                        #297

                        Guten Morgen,

                        kann hier bitte jemand helfen?

                        Stromverbrauch wird noch immer um groben Faktor 10 falsch gezählt.

                        Es wird im Skript mehr gezählt als tatsächlich verbraucht.

                        Ich habe lediglich das Skript genommen und meine beiden IR-USB Smartmeter inkludiert.

                        Danke für Hinweise!

                        1 Antwort Letzte Antwort
                        0
                        • K Offline
                          K Offline
                          knudi76
                          schrieb am zuletzt editiert von
                          #298

                          Hallo Forengemeinde,

                          ich versuche mich gerade an diesem Script, leider bekomme ich von meiner PV-Anlage nur die Leistungswerte und keine Energiewerte. Diese benötige ich aber damit dieses Script funktioniert. Ich habe bislang im Forum nur etwas zur Umrechung von Energie zu Leistung gefunden. Gibt es eine Möglichkeit die Leistung auf Wertänderung zu prüfen und diese dann über die verstrichende Zeit in Energie zu berechnen? Diese Energie kann ich dann vernünftig in dieses Script einfügen und so meinen Ertrag protokollieren.

                          Vielen Dank

                          Stephan

                          1 Antwort Letzte Antwort
                          0
                          • E Offline
                            E Offline
                            ein-bayer
                            schrieb am zuletzt editiert von
                            #299

                            Hallo allerseits,

                            ich hab das script vor einer halben Stunde laufen lassen, soweit alles gut.

                            Auffällig ist jedoch das mein LOG mit Fehlermeldungen vom history Adapter überläuft. Wenn ich das script pausiere sind die Meldungen weg.

                            Weiß jemand woran das liegt?
                            1342_log_verbrausz_hler.jpg

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

                              Ich sehe keine Fehlermeldung aber Meldungen das Datenpunkte geloggt werden?

                              Sent from my iPhone using Tapatalk

                              1 Antwort Letzte Antwort
                              0
                              • E Offline
                                E Offline
                                ein-bayer
                                schrieb am zuletzt editiert von
                                #301

                                Hallo Dutchman,

                                Danke , ich habs falsch interpretiert weil´s beim Start so viele Meldungen waren und bei einem Zähler alias=false stand.

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

                                  Ich würde mir an deiner Stelle auch abfragen ob du so viele Datenpunkte loggen musst.

                                  Von diesem Script loggen ich insgesamt 15 oder so und das reicht vollkommen

                                  Sent from my iPhone using Tapatalk

                                  1 Antwort Letzte Antwort
                                  0
                                  • W Offline
                                    W Offline
                                    w00dy
                                    schrieb am zuletzt editiert von w00dy
                                    #303

                                    Hallo,

                                    wie @hg6806 habe ich ebenfalls das Problem, dass die ermittelten Werte um den Faktor +10 nicht stimmen.

                                    Ist es möglich, den Umrechnungsfaktor irgendwo im Script anzupassen?

                                    Im Script selber habe ich einen eigenen Datenpunkt angelegt. Dieser übernimmt Daten, die vom Modbus ermittelt werden.

                                    LG,
                                    w00dy

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

                                      Nein das kann das Script nicht.

                                      Ich würde es mit einem Script lösen welches erst den Wert mit Factor in einen anderen Datenpunkt schreiben und das Script auf diesen Datenpunkt loslassen

                                      Sent from my iPhone using Tapatalk

                                      1 Antwort Letzte Antwort
                                      0
                                      • W Offline
                                        W Offline
                                        w00dy
                                        schrieb am zuletzt editiert von w00dy
                                        #305

                                        Hallo Dutchman,

                                        daran habe ich auch schon gedacht, einfach den ermittelten Wert vom Modbus entsprechend anzupassen.

                                        Da stoße ich aber mit meinen bescheidenen Blockly-Fähigkeiten an meine Grenzen.

                                        Im Modbus-Adapter selber kann man zwar einen Faktor einstellen, allerdings fehlen dann die notwendigen Nachkommastellen, was die Sache dann sehr ungenau macht.

                                        LG,
                                        w00dy

                                        1 Antwort Letzte Antwort
                                        0
                                        • F Offline
                                          F Offline
                                          FriMatze
                                          schrieb am zuletzt editiert von
                                          #306

                                          Moin in die Runde 8-)

                                          Zum Script hätte ich eine kleine Frage. Die Daten werden soweit aufgezeichnet, doch wie auf dem Bild zu sehen nicht einzeln unter Tage und Wochen usw. und unter Zählerstände werden nur die kumulierten Werte aufgezeichnet jetzt frage ich mich natürlich warum?

                                          Gruß
                                          3311_52aa7b4f-8ff6-4f3d-aed9-2b6f528fa2ab.jpeg

                                          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

                                          853

                                          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