Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [Vorlage] Stromverbrauch protokollieren - (etwas optimiert)

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Vorlage] Stromverbrauch protokollieren - (etwas optimiert)

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

      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

      1 Reply Last reply Reply Quote 0
      • M
        mig81 last edited by

        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 Reply Last reply Reply Quote 0
        • Röstkartoffel
          Röstkartoffel last edited by

          @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.

          1 Reply Last reply Reply Quote 0
          • B
            Beowolf last edited by

            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

            1 Reply Last reply Reply Quote 0
            • B
              Beowolf last edited by

              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

              1 Reply Last reply Reply Quote 0
              • B
                Beowolf last edited by

                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

                1 Reply Last reply Reply Quote 0
                • hg6806
                  hg6806 Most Active last edited by

                  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 Reply Last reply Reply Quote 0
                  • Lenny.CB
                    Lenny.CB Most Active last edited by

                    @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 Reply Last reply Reply Quote 0
                    • hg6806
                      hg6806 Most Active last edited by

                      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 Reply Last reply Reply Quote 0
                      • hg6806
                        hg6806 Most Active last edited by

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

                        1 Reply Last reply Reply Quote 0
                        • hg6806
                          hg6806 Most Active last edited by

                          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 Reply Last reply Reply Quote 0
                          • K
                            knudi76 last edited by

                            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 Reply Last reply Reply Quote 0
                            • E
                              ein-bayer last edited by

                              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 Reply Last reply Reply Quote 0
                              • Dutchman
                                Dutchman Developer Most Active Administrators last edited by

                                Ich sehe keine Fehlermeldung aber Meldungen das Datenpunkte geloggt werden?

                                Sent from my iPhone using Tapatalk

                                1 Reply Last reply Reply Quote 0
                                • E
                                  ein-bayer last edited by

                                  Hallo Dutchman,

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

                                  1 Reply Last reply Reply Quote 0
                                  • Dutchman
                                    Dutchman Developer Most Active Administrators last edited by

                                    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 Reply Last reply Reply Quote 0
                                    • W
                                      w00dy last edited by w00dy

                                      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.

                                      1 Reply Last reply Reply Quote 0
                                      • Dutchman
                                        Dutchman Developer Most Active Administrators last edited by

                                        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 Reply Last reply Reply Quote 0
                                        • W
                                          w00dy last edited by w00dy

                                          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.

                                          1 Reply Last reply Reply Quote 0
                                          • F
                                            FriMatze last edited by

                                            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 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            949
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            81
                                            455
                                            106478
                                            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