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

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

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

[Vorlage] Stromverbrauch protokollieren - (etwas optimiert)

Geplant Angeheftet Gesperrt Verschoben JavaScript
455 Beiträge 81 Kommentatoren 116.7k 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.
  • jedoJ Offline
    jedoJ Offline
    jedo
    schrieb am zuletzt editiert von
    #337

    @ChristianM:

    Ist das so richtig ? Oder stimmt da etwas nicht ?

    Der Wert verändert sich nur beim Neustart von dem Skript, sonst nicht. `

    Am Anfang muss man etwas Geduld haben, da passiert den ersten Tag nicht wirklich viel.

    Am besten sieht man im Log ob was passiert. Immer wenn sich ein Zählerwert erhöht muss es in etwa so aussehen:

    17:17:51.085	[info]	javascript.0 script.js.common.Zählerauswertung: -------- Strommesser ---------
    17:17:51.086	[info]	javascript.0 script.js.common.Zählerauswertung: RegExp-Funktion ausgelöst
    17:17:51.086	[info]	javascript.0 script.js.common.Zählerauswertung: id: smartmeter.0.1_8_0.value
    17:17:51.086	[info]	javascript.0 script.js.common.Zählerauswertung: Name: 1_8_0.value
    17:17:51.086	[info]	javascript.0 script.js.common.Zählerauswertung: channel ID: smartmeter.0.1_8_0
    17:17:51.086	[info]	javascript.0 script.js.common.Zählerauswertung: channel Name:
    17:17:51.086	[info]	javascript.0 script.js.common.Zählerauswertung: device ID: null
    17:17:51.086	[info]	javascript.0 script.js.common.Zählerauswertung: device name: null
    17:17:51.086	[info]	javascript.0 script.js.common.Zählerauswertung: neuer Wert: 51185.1
    17:17:51.086	[info]	javascript.0 script.js.common.Zählerauswertung: alter Wert: 51185
    17:17:51.086	[info]	javascript.0 script.js.common.Zählerauswertung: vor der Aufbereitung: 1_8_0.value
    17:17:51.086	[info]	javascript.0 script.js.common.Zählerauswertung: entferneDatenpunkt - rueckgabe1:1_8_0.value
    17:17:51.086	[info]	javascript.0 script.js.common.Zählerauswertung: entferneDatenpunkt - rueckgabe2:1_8_0.value
    17:17:51.087	[info]	javascript.0 script.js.common.Zählerauswertung: entferneDatenpunkt - rueckgabe3:1_8_0.value
    17:17:51.087	[info]	javascript.0 script.js.common.Zählerauswertung: entferneDatenpunkt - rueckgabe4:1_8_0.value
    17:17:51.087	[info]	javascript.0 script.js.common.Zählerauswertung: Es wird der Aliasname gesetzt:Bezug Haus
    17:17:51.087	[info]	javascript.0 script.js.common.Zählerauswertung: Nach der Aufbereitung: Bezug Haus
    17:17:51.087	[info]	javascript.0 script.js.common.Zählerauswertung: States in der Instanz javascript.0.Verbrauchszaehler. erstellt
    17:17:51.087	[info]	javascript.0 script.js.common.Zählerauswertung: Das Gerät:Bezug Haus hat eigenen Strompreis: 0.2349
    17:17:51.087	[info]	javascript.0 script.js.common.Zählerauswertung: Das Gerät:Bezug Haus hat eigenen Grundpreis: 6.82
    17:17:51.088	[info]	javascript.0 script.js.common.Zählerauswertung: Stromkosten (Bezug Haus) aktualisiert
    17:17:51.088	[info]	javascript.0 script.js.common.Zählerauswertung: Stromverbrauch (Bezug Haus) aktualisiert
    17:17:51.088	[info]	javascript.0 script.js.common.Zählerauswertung: ------------ ENDE ------------
    

    Hier kannst du eigentlich deutlich sehen das die Daten erfasst und verarbeitet werden.

    Und spätestens den 2.Tag solltest du auch Einträge in deinen Datenpunkten finden! :D

    Viele Grüße,

    Jens

    1 Antwort Letzte Antwort
    0
    • ChristianMC Offline
      ChristianMC Offline
      ChristianM
      schrieb am zuletzt editiert von
      #338

      Ok super, dann warte ich mal.

      Wie liest du deinen 2 Richtungszähler denn aus ?

      1 Antwort Letzte Antwort
      0
      • jedoJ Offline
        jedoJ Offline
        jedo
        schrieb am zuletzt editiert von
        #339

        @ChristianM:

        Ok super, dann warte ich mal.

        Wie liest du deinen 2 Richtungszähler denn aus ? `

        Leseköpfe von Volkszähler https://wiki.volkszaehler.org/hardware/ … sb-ausgang

        und dann je eine Instanz des Smartmeter Moduls auf einem Raspi im Multihost Modus.

        Viele Grüße,

        Jens

        1 Antwort Letzte Antwort
        0
        • O Offline
          O Offline
          OMCastle
          schrieb am zuletzt editiert von
          #340

          Script für PulseCounter von StallBiz anpassen?!?

          Hallo zusammen,

          ich protokollieren mein Strom und Gasverbrauch mit dem PulseCounter von Stallbiz.

          Hat jemand das Script dafür angepasst?

          Irgendwie kommt bei mir nichts in den Objekten an.

          Ich habe den Datenpunkt, in dem mein Zählerstand steht eingetragen.

          var eigeneDatenpunkte = [

          // Beispiel:

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

          [ 'javascript.0.PUSLCOUNTER.w_counter_1', 'Gas.MeinGaszaehler1', 'kWh', 'kWh' ],

          ];

          Raspberrymatic auf Pi3 mit CUL für Eltako

          • 30 HomeMatic Aktoren, 10 Eltako Aktoren

          IOBroker auf OrangePi Plus 2e

          • 30 Xiamoi, 5 Netatmo, VW Golf Skript, Viessmann Heizung, ICal, PluseCounter für Strom und Gas, Instar Kameras
          1 Antwort Letzte Antwort
          0
          • jedoJ Offline
            jedoJ Offline
            jedo
            schrieb am zuletzt editiert von
            #341

            Da frage ich doch mal ganz vorsichtig:

            Was steht im Log?

            Gas in kw/h ist richtig?

            Werte schon entsprechend umgerechnet?

            Viele Grüße,

            Jens

            1 Antwort Letzte Antwort
            0
            • 2 Offline
              2 Offline
              2hot4you
              schrieb am zuletzt editiert von
              #342

              Ich habe mich ein wenig mit dem Script beschäftigt und bekomme die ersten Daten, jedoch noch nicht so wie ich es will.

              Aktuell habe ich einen Strom und Wasserzähler über ein NodeMCU mittels ESPEasy angeschlossen. Über den MQTT Adapter bekomme

              ich die Impulse angezeigt. Beim Wasserzähler ist ein Impuls = 1 Liter, jedoch beim Stromzähler ist ein Impuls 1/400 kWh.

              Wo muss ich den Faktor 1/400 eintragen ?

              Die Datenpunkte habe ich wie folgt eingetragen

              var eigeneDatenpunkte = [

              [ 'mqtt.0.S0_Sensor.StromCounter.Count', 'Strom.Hauptzähler', 'Wh', 'kWh' ],

              [ 'mqtt.0.S0_Sensor.Wasser.Count', 'Wasser.Hauptuhr', 'm3', 'm3' ],

              ];

              Weiterhin habe ich den Strompreis eingetragen. Wo bzw. wie trage ich den Preis vom Wasserzähler ein ??

              Den folgen Abschnitt habe ich noch nicht verstanden. Was muss ich hier ändern ?

              // Einlesen der aktuellen Daten vom Zähler

              function run(obj, alias, unit, unit_kilo) {

              if (logging) {

              log('–------ Strommesser ---------');

              log('RegExp-Funktion ausgelöst');

              log('id: ' + obj.id);

              log('Name: ' + obj.common.name); // Waschmaschine Küche:2.ENERGY_COUNTER

              log('channel ID: ' + obj.channelId); // hm-rpc.0.MEQ0170864.2

              log('channel Name: ' + obj.channelName); // Waschmaschine Küche:2

              log('device ID: ' + obj.deviceId); // hm-rpc.0.MEQ0170864

              log('device name: ' + obj.deviceName); // Küche Waschmaschine

              log('neuer Wert: ' + obj.newState.val); // 16499.699982

              log('alter Wert: ' + obj.oldState.val); // 16499.699982

              }

              oder macht es Sinn für Strom , Wasser und zukünftig Gas ein eigenes Script laufen zu lassen ?

              Wie gebe ich den aktuellen Wert vom realen Zähler im Script händisch ein, damit beide Zähler die gleichen Werte haben ?

              Danke

              1 Antwort Letzte Antwort
              0
              • jedoJ Offline
                jedoJ Offline
                jedo
                schrieb am zuletzt editiert von
                #343

                @2hot4you:

                Ich habe mich ein wenig mit dem Script beschäftigt und bekomme die ersten Daten, jedoch noch nicht so wie ich es will.

                Aktuell habe ich einen Strom und Wasserzähler über ein NodeMCU mittels ESPEasy angeschlossen. Über den MQTT Adapter bekomme

                ich die Impulse angezeigt. Beim Wasserzähler ist ein Impuls = 1 Liter, jedoch beim Stromzähler ist ein Impuls 1/400 kWh.

                Wo muss ich den Faktor 1/400 eintragen ? `

                Hi,

                Das Script kann nur mit "echten" Zählerwerten arbeiten!

                Du musst also erst eine Möglichkeit finden deine Impulse zu zählen und in Zählerstände umzusetzen.

                Ich denke da sollten sich Ansätze hier im Forum finden.

                zB. https://forum.iobroker.net/viewtopic.php?f=21&t=14962&p=156350&hilit=impulse+z%C3%A4hlen#p156368

                Viele Grüße,

                Jens

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

                  @2hot4you:

                  Weiterhin habe ich den Strompreis eingetragen. Wo bzw. wie trage ich den Preis vom Wasserzähler ein ??

                  …

                  oder macht es Sinn für Strom , Wasser und zukünftig Gas ein eigenes Script laufen zu lassen ?

                  Wie gebe ich den aktuellen Wert vom realen Zähler im Script händisch ein, damit beide Zähler die gleichen Werte haben ?

                  Danke `

                  Nein, du brauchst keine extra Skripte für Wasser, Gas oder Strom.

                  Die Preise kannst du jeweils auch pro Gerät eingeben, ebenso den aktuellen Zählerstand.
                  filename="Verbrauchszähler.JPG" index="0">~~

                  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
                  • WebrangerW Offline
                    WebrangerW Offline
                    Webranger
                    schrieb am zuletzt editiert von
                    #345

                    Wo gebe ich den aktuellen Zählerstand ein?

                    Intel NUC Celeron, Xiaomi Gateway, Fritzbox 7590, XS1

                    1 Antwort Letzte Antwort
                    0
                    • jedoJ Offline
                      jedoJ Offline
                      jedo
                      schrieb am zuletzt editiert von
                      #346

                      @ringdingringding:

                      Wo gebe ich den aktuellen Zählerstand ein? `

                      https://github.com/hdering/homematic_verbrauchszaehler

                      TODO
                      Zaehlerstand_letzte_Ablesung und Zaehlerstand_jetzt angeben können
                      
                      

                      Also…. Geht "noch" nicht! :cry:

                      Viele Grüße,

                      Jens

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

                        @jedo:

                        @ringdingringding:

                        Wo gebe ich den aktuellen Zählerstand ein? `

                        https://github.com/hdering/homematic_verbrauchszaehler

                        TODO
                        Zaehlerstand_letzte_Ablesung und Zaehlerstand_jetzt angeben können
                        
                        

                        Also…. Geht "noch" nicht! :cry: `

                        Na dann hoffen wir mal weiter, da der Skript-Ersteller schon seit April nichts mehr am Skript angepasst oder geändert hat. :(

                        Ich hoffe auch, dass diese Änderung mit dem Zählerstand mal implementiert wird. Leider habe ich mit JavaScript gar nichts am Hut, deshalb kann da leider immer nur auf fertige Skripte zurückgreifen.

                        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
                        • RöstkartoffelR Offline
                          RöstkartoffelR Offline
                          Röstkartoffel
                          schrieb am zuletzt editiert von
                          #348

                          @2hot4you:

                          …

                          Den folgen Abschnitt habe ich noch nicht verstanden. Was muss ich hier ändern ?

                          // Einlesen der aktuellen Daten vom Zähler

                          function run(obj, alias, unit, unit_kilo) {

                          if (logging) {

                          log('-------- Strommesser ---------');

                          log('RegExp-Funktion ausgelöst');

                          log('id: ' + obj.id);

                          log('Name: ' + obj.common.name); // Waschmaschine Küche:2.ENERGY_COUNTER

                          log('channel ID: ' + obj.channelId); // hm-rpc.0.MEQ0170864.2

                          log('channel Name: ' + obj.channelName); // Waschmaschine Küche:2

                          log('device ID: ' + obj.deviceId); // hm-rpc.0.MEQ0170864

                          log('device name: ' + obj.deviceName); // Küche Waschmaschine

                          log('neuer Wert: ' + obj.newState.val); // 16499.699982

                          log('alter Wert: ' + obj.oldState.val); // 16499.699982

                          }

                          ... `

                          In dem Abschnitt musst du gar nichts ändern. Das sind nur Ausgaben im Log, wenn das Logging im Skript oben auf "true" steht.

                          // +++++++++  USER ANPASSUNGEN ++++++++++++++++++++++++
                          
                          // debug logging
                          var logging = false;
                          

                          Gerade zu Anfang, wenn das Skript eingesetzt wird, sind solche Logging Ausgaben sehr hilfreich, um die Funktionsweise zu überprüfen.

                          Ich habe dieses schon seit langen wieder auf "false", da alle Werte plausibel sind.

                          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
                          • jedoJ Offline
                            jedoJ Offline
                            jedo
                            schrieb am zuletzt editiert von
                            #349

                            @Röstkartoffel:

                            Na dann hoffen wir mal weiter, da der Skript-Ersteller schon seit April nichts mehr am Skript angepasst oder geändert hat. :(

                            Ich hoffe auch, dass diese Änderung mit dem Zählerstand mal implementiert wird. Leider habe ich mit JavaScript gar nichts am Hut, deshalb kann da leider immer nur auf fertige Skripte zurückgreifen. `

                            Na ich denke ja das der Autor des Scriptes hier mitliest. ;)

                            @hdering

                            Erst einmal vielen Dank für Deine tolles Script und deine Arbeit!

                            Eventuell kannst Du ja mal ein Statement abgeben ob und wie es weitergeht?

                            Die Zeit des großen Zählerablesens geht ja demnächst los! :roll:

                            Viele Grüße,

                            Jens

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

                              Zur Info und Vorankündigung, ich baue gerade an einen Adapter der die Funktionen dieses Scripts übernehmen wird (super Vorlage!!!!!).

                              Darin wird es möglich sein sowohl jetzigen Zählerstand als auch der Vergangenheit zu ändern.

                              Erste Beta dieses Wochenende auf github

                              Sent from my iPhone using Tapatalk

                              1 Antwort Letzte Antwort
                              0
                              • N Offline
                                N Offline
                                Nepomukl
                                schrieb am zuletzt editiert von
                                #351

                                Na da bin ich aber gespannt. :D

                                Super, melde mich schon als Tester.

                                Gruß Andreas

                                1 Antwort Letzte Antwort
                                0
                                • WebrangerW Offline
                                  WebrangerW Offline
                                  Webranger
                                  schrieb am zuletzt editiert von
                                  #352

                                  @Dutchman:

                                  Zur Info und Vorankündigung, ich baue gerade an einen Adapter der die Funktionen dieses Scripts übernehmen wird (super Vorlage!!!!!).

                                  Darin wird es möglich sein sowohl jetzigen Zählerstand als auch der Vergangenheit zu ändern.

                                  Erste Beta dieses Wochenende auf github

                                  Sent from my iPhone using Tapatalk ` Bin beim testen gerne wieder dabei

                                  Intel NUC Celeron, Xiaomi Gateway, Fritzbox 7590, XS1

                                  1 Antwort Letzte Antwort
                                  0
                                  • C Offline
                                    C Offline
                                    Conquest
                                    schrieb am zuletzt editiert von
                                    #353

                                    @Dutchman:

                                    Zur Info und Vorankündigung, ich baue gerade an einen Adapter der die Funktionen dieses Scripts übernehmen wird (super Vorlage!!!!!).

                                    Darin wird es möglich sein sowohl jetzigen Zählerstand als auch der Vergangenheit zu ändern.

                                    Erste Beta dieses Wochenende auf github

                                    Sent from my iPhone using Tapatalk ` Klasse hört sich schon mal gut an.Danke Dutchman.

                                    Gesendet von meinem MHA-L29 mit Tapatalk

                                    1 Antwort Letzte Antwort
                                    0
                                    • cvidalC Offline
                                      cvidalC Offline
                                      cvidal
                                      Forum Testing
                                      schrieb am zuletzt editiert von
                                      #354

                                      @Dutchman:

                                      Zur Info und Vorankündigung, ich baue gerade an einen Adapter der die Funktionen dieses Scripts übernehmen wird (super Vorlage!!!!!).

                                      Darin wird es möglich sein sowohl jetzigen Zählerstand als auch der Vergangenheit zu ändern.

                                      Erste Beta dieses Wochenende auf github

                                      Sent from my iPhone using Tapatalk `

                                      Sehr geil, darauf hatte ich gehofft das sich dem mal einer annimmt.

                                      Gruß Christian

                                      1 Antwort Letzte Antwort
                                      0
                                      • ChristianMC Offline
                                        ChristianMC Offline
                                        ChristianM
                                        schrieb am zuletzt editiert von
                                        #355

                                        Das wäre schon echt cool, darf man noch Wünsche äußern?

                                        Ist jetzt vielleicht meine Meinung, aber ich würde es besser finden wenn dort nicht stehen würde vor 1 Tag, vor 2 Tagen usw. sondern einfach Montag, Dienstag, Mittwoch usw. bei der Tagesübersicht.

                                        Des Weiteren, wäre vielleicht auch eine Verbrauchsanzeige vom aktuellen Tag, Woche und Monat ganz nett.

                                        In meinem Excel Script welches ich damals angelegt hatte, hatte ich mir auch eine Jahresverbrauchsprognose mit eingebaut (verbrauch seit Abrechnungsbeginn / verstrichene Tage x 365 Tage)

                                        So könnte man schon ungefähr sehen wohin die Reise geht.

                                        Ist aber alles nur eine Idee.

                                        Christian

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

                                          @ChristianM:

                                          Das wäre schon echt cool, darf man noch Wünsche äußern? `

                                          Ja!

                                          Ich bin gerade dabei es wird dieses Wochenende was auf github kommen ;)

                                          Für wünsche/Anregungen bitte auf github issues erstellen.

                                          Ich mache jetzt erst die Basis und arbeite Dan wünsche ab.

                                          Sobald die erste Beta raus ist kommt ein seperaten Forum topic dazu.

                                          Repository für issues bitte hier : https://github.com/DutchmanNL/ioBroker.powermonitor

                                          Sent from my iPhone using Tapatalk

                                          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

                                          640

                                          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