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.
    • D
      dering last edited by

      @Röstkartoffel:

      @dering:

      … Ich habe in meinem javascript\global Ordner eine Hilfsfunktion dafür geschrieben die überall verfügbar ist.

      Anstatt

      > sendTelegram(text);

      könntest du auch folgendes schreiben:

      ` > sendTo("telegram.0", {

      text: text,

      chatId: <deine id="">});</deine>

      Hallo dering.

      Ich habe dein Script seit gestern am laufen und habe zu den Telegram-Meldungen eine Frage:

      Was kann mir da als Nachricht geschickt werden?

      Kannst du dein globales Javascript bitte mal zeigen?

      Danke

      Gruß

      Volker `

      Hi Volker,

      um Nachrichten via Telegram schicken zu lassen benötigst du eine Telegram Instanz und einem Token. Wie man das alles macht, ist hier sehr gut erklärt:

      https://github.com/ioBroker/ioBroker.te … am-adapter

      Wenn du dann eine "grüne Ampel" in der Instanz hast, kannst du dir über ein Script Nachrichten schicken lassen.

      Ein einfacher Befehl wäre:

      sendTo("telegram.0", {

      text: "Deine Nachricht",

      chatId: <dein chatid="">});

      Wie du deine ChatID erhältst, wird auch in dem Link erklärt.</dein>

      1 Reply Last reply Reply Quote 0
      • D
        dering last edited by

        @Linedancer:

        Hallo Gemeinde,

        ich verwende das Script seit längerer Zeit völlig problemlos. Tolle Arbeit, danke dafür.

        Jetzt benutze ich es zur Bilanzierung der Poolheizung. Erfassung der Sonneneinstrahlung, rechnerische Abschätzung der durch die Poolheizung eingebrachte Energie und natürlich die Lesitungsaufnahme der Pumpe.

        Mein Problem:

        Ich habe einige Namen von eigenen Datenpunkten unglücklich gewählt, und würde die jetzt gerne umbenennen. Geht das ohne Datenverlust? `

        Meines Wissens ist es leider nicht so einfach möglich Ordner umzubenennen, daher wird es schwierig.

        1 Reply Last reply Reply Quote 0
        • D
          dering last edited by

          @Ham:

          Hi,

          erstmal vielen Dank für das Skript! Bin neu hier und hab ein Problem mit dem Skript. Vielleicht kann mir jemand helfen 😄

          Hab das Skript laufen mit einem HM Zählersensor, zwei HM Schaltsteckdosen und im Moment noch mit drei Sonoff Pow.

          Mein Problem ist, das sich die Tageswerte von den Sonoff Geräten nicht zurücksetzen und in den Verbrauch Gestern schreiben. Bei den HM Geräten funktioniert das super.

          Meine Feststellung bisher ist, das wenn ich im Skript den Wert KumulierterWertIstBereitsInKilo in true (was ich brauch für die Sonoff Geräte) ändere, dass das zurücksetzen des Tageswertes nicht funktioniert. Wenn der Wert auf false steht funktioniert es, dann habe ich natürlich falsche Werte.

          Habe im Moment mehrere Skripte in verschiedenen Javaskript instanzen laufen. Die HM Sensoren und die Sonoff Geräte extra.

          Das benutzte Skript für die Sonoff Geräte ist dieses:

          Gruß `

          Vielen Dank für den Hinweis. ICh werde es mir ansehen und fixen.

          1 Reply Last reply Reply Quote 0
          • R
            ralalla last edited by

            Ein tolles Script, Danke dafür.

            Scheint auch auf den ersten Blick zu funktionieren.

            Aber der Tageswechsel hat scheinbar nicht funktioniert, es wird weiter in den kumulierten Zählerstand geschrieben. Die Zählerstande "Tagesbeginn, Wochenbeginn,…" sind leer.

            Im "Verbrauch seit Tagesbeginn" steht noch der Wert von gestern, bzw. dieser wird jetzt weiter aufaddiert.

            Was ich gemacht habe, gestern:

            Script eingefügt, eigene Datenpunkte angelegt, Blacklist die Zahlen entfernt und kumulierter Wert bereits in kilo auf true gesetzt.

            Es scheint wohl zu zählen aber kein Tageswechsel vollzogen zu werden.

            Jemand eine Idee warum ?

            Ah sehe das das ähnlich wie der Beitrag über mir ist, also wohl bei mehreren das Problem besteht ?

            1 Reply Last reply Reply Quote 0
            • Lenny.CB
              Lenny.CB Most Active last edited by

              Das Problem hatte ich auch lange Zeit. Nach etwas probieren trat das "Phänomen" (ich nenne es mal so) auf, wenn````
              var KumulierterWertIstBereitsInKilo = true;

              
              Im Log kamen auch Fehler in dem Zweig "if(KumulierterWertIstBereitsInKilo)"
              
              Ich hatte dann folgendes probiert (warum, weil in der Zeile darunter wo / 1000 geteilt wird keine Fehler gab):
              

              if(KumulierterWertIstBereitsInKilo)
              _zaehler = (getState(idKumuliert).val * 1).toFixed(AnzahlKommastellenZaehlerstand);

              
              den Zweig gibt es in:````
              function schreibeZaehlerstand(geraet, zeitraum)
              und
              pruefePreisaenderung();
              

              Gleich vorn weg, ich habe nicht wirklich Ahnung von Javascript. Ich mache eigene Sachen nur durch adaptieren von Beispielen und trail & error.

              Seit her funktioniert jedenfalls der Tageswechsel bei mir.

              Jetzt das Wichtigste:

              Kann mir jemand von den "Wissenden" sagen ob das Hand und Fuß hat?

              1 Reply Last reply Reply Quote 0
              • Röstkartoffel
                Röstkartoffel last edited by

                @dering:

                @Röstkartoffel:

                Hallo dering.

                Ich habe dein Script seit gestern am laufen und habe zu den Telegram-Meldungen eine Frage:

                Was kann mir da als Nachricht geschickt werden?

                Kannst du dein globales Javascript bitte mal zeigen?

                Danke

                Gruß

                Volker `

                Hi Volker,

                um Nachrichten via Telegram schicken zu lassen benötigst du eine Telegram Instanz und einem Token. Wie man das alles macht, ist hier sehr gut erklärt:

                https://github.com/ioBroker/ioBroker.te … am-adapter

                Wenn du dann eine "grüne Ampel" in der Instanz hast, kannst du dir über ein Script Nachrichten schicken lassen.

                Ein einfacher Befehl wäre:

                sendTo("telegram.0", {

                text: "Deine Nachricht",

                chatId: <dein chatid="">});

                Wie du deine ChatID erhältst, wird auch in dem Link erklärt.</dein> `

                Hallo dering.

                Telegram habe ich schon lange eingerichtet und lasse mir diverse Meldungen aufs Handy schicken, bzw. kann auch über Telegram Lichter ein- und ausschalten.

                Das ist nicht das Problem.

                Sondern, dass ich in deinem Script Telegram aktiviert habe, aber noch nie eine Meldung vom Verbrauchsskript bekommen habe.

                Ich habe es so:

                sendTo("telegram.0", {
                text: text,
                chatId: <meine chatid="">
                });</meine>
                

                Da ich in der Doku nichts darüber gefunden habe, daher meine Frage: bei welchem Event werden Meldungen verschickt?

                Gruß

                Volker

                PS: <meine chatid="">ist natürlich meine eigene 9 stellige ChatId :-)</meine>

                1 Reply Last reply Reply Quote 0
                • R
                  ralalla last edited by

                  @Lenny.CB:

                  if(KumulierterWertIstBereitsInKilo)
                              _zaehler    = (getState(idKumuliert).val * 1).toFixed(AnzahlKommastellenZaehlerstand);
                  ````Also den Wert ****idKumuliert.val * 1[/b**** ****Danke, deine Lösung hat auch bei mir geholfen.
                  
                  Kenne mich ebenso wenig damit aus aber so funktioniert es.
                  
                  @Röstkartoffel
                  
                  So wie ich das sehe muss ja auch festgelegt werden was versendet werden soll. Die Datenpunkte werden nicht einfach automatisch versendet.
                  
                  Ich mache das z: B. mit Blockly in einem extra Script da ich noch eigene Werte aus den Verbräuchen berechne (Eigenverbrauch).**
                  
                   ![1110_telegrammverbrauch.jpg](/assets/uploads/files/1110_telegrammverbrauch.jpg) ** ` 
                  1 Reply Last reply Reply Quote 0
                  • E
                    Eloee last edited by

                    Hallo!

                    Erstmal vielen Dank für das tolle Script und die Arbeit damit!

                    Habe es seid ein paar Tagen laufen, aber entweder irgendwas ist falsch oder ich habe ein Verständnisproblem 😄

                    Habe die Datenpunkte mit Leistungswerten (aktueller Verbrauch in Watt) gefüttert, wenn ich dann aber den Verbrauch nach einem Tag anschaue, liegt der bei einem Durchschnittlichen Strombedarf von 300Watt, bei z.B. 400kWh.

                    Rechnerisch sind es ja aber nur 7,2kWh :roll:

                    Was mache ich falsch?? Hier mal paar Log Zeilen:
                    ` > javascript.0 2018-08-21 12:20:18.597 info script.js.common.Technik.Stromverbrauch: alter Wert: 264.59

                    javascript.0 2018-08-21 12:20:18.597 info script.js.common.Technik.Stromverbrauch: neuer Wert: 263.84 `

                    und in den Objekten dann:
                    ` > Verbrauch vor 1 Tag(en) (Energieverbrauch Eigen) 525.8 kWh

                    Verbrauch vor 2 Tag(en) (Energieverbrauch Eigen) 441.15 kWh

                    Verbrauch vor 3 Tag(en) (Energieverbrauch Eigen) 418.165 kWh `

                    Schöne Grüße

                    Eloee

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

                      Vielen Dank für dieses tolle Script!

                      Ich habe meine Strommessgeräte unter eigene Datenpunkte eingerichtet - funktioniert super! Was ich allerdings noch gerne hätte wäre eine Gesamtsumme über all meine Geräte - mit den Summenwerten aktuell, täglich , wöchentlich…. Also so wie es auch pro konfiguriertem Datenpunkt eingerichtet wird. Hat dies von euch schon jemand soweit angepasst? Falls nicht - wie könnte ich so etwas am einfachsten realisieren? :roll:

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

                        ich mach das mit einem blockly script

                        1 Reply Last reply Reply Quote 0
                        • E
                          EVOlutionIX last edited by

                          Hallo alle zusammen.

                          Ich würde gerne das Skript auch nutzen, aber irgendwie stehe ich auf dem Schlauch. :oops: Wie bekomme ich das Skript denn runter von der GitHub Seite :?:

                          und jetzt Steinigt mich!

                          Danke Marcus :roll:

                          1 Reply Last reply Reply Quote 0
                          • cvidal
                            cvidal Forum Testing last edited by

                            @EVOlutionIX:

                            Hallo alle zusammen.

                            Ich würde gerne das Skript auch nutzen, aber irgendwie stehe ich auf dem Schlauch. :oops: Wie bekomme ich das Skript denn runter von der GitHub Seite :?:

                            und jetzt Steinigt mich!

                            Danke Marcus :roll: `

                            Hallo Marcus,

                            du kannst dir das Skript einfach https://github.com/hdering/homematic_verbrauchszaehler/blob/master/Zaehlerstande_protokollieren.js rauskopieren.

                            Gruß Christian

                            1 Reply Last reply Reply Quote 0
                            • E
                              EVOlutionIX last edited by

                              @cvidal:

                              @EVOlutionIX:

                              Hallo alle zusammen.

                              Ich würde gerne das Skript auch nutzen, aber irgendwie stehe ich auf dem Schlauch. :oops: Wie bekomme ich das Skript denn runter von der GitHub Seite :?:

                              und jetzt Steinigt mich!

                              Danke Marcus :roll: `

                              Hallo Marcus,

                              du kannst dir das Skript einfach https://github.com/hdering/homematic_verbrauchszaehler/blob/master/Zaehlerstande_protokollieren.js rauskopieren.

                              Gruß Christian `

                              Super Danke 🙂

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

                                Hallo zusammen,

                                ich muß mal etwas unwissend fragen.

                                Ich bekomme die "Zählimpulse per mqtt.o Adapter. Wie binde ich das ein?

                                Grüße

                                Manfred

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

                                  @Beowolf:

                                  Hallo zusammen,

                                  ich muß mal etwas unwissend fragen.

                                  Ich bekomme die "Tählimpulse per mqtt.o Adapter. Wie binde ich das ein?

                                  Grüße

                                  Manfred `

                                  Impulse oder total verbraucht?

                                  Sent from my iPhone using Tapatalk

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

                                    Je ein Impuls für eine Umdrehung der Scheibe

                                    Grüße

                                    Es geht um den alten Ferraris Zähler

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

                                      @Beowolf:

                                      Je ein Impuls für eine Umdrehung der Scheibe

                                      Grüße `

                                      Dan musst du diese erst umsetzen in Wh bzw kWh.

                                      Das Script kan nicht mit Impulsen arbeiten sondern Braucht wh oder kWh als wert

                                      Sent from my iPhone using Tapatalk

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

                                        Ok, danke.

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

                                          Hallo

                                          vielen dank für das super script.

                                          Ich habe noch eine Frage, können diese Werte passen? Mein Zähler senden kwh, dieses habe ich auch im Script angepasst. Der Betrag scheint mir etwas zu wenig zu sein. Habt ihr eine Idee?
                                          8702_strom.png

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

                                            @bumbumb:

                                            Mein Zähler senden kwh, dieses habe ich auch im Script angepasst. Der Betrag scheint mir etwas zu wenig zu sein. Habt ihr eine Idee? `

                                            Mit den werten stimmt der Betrag schon.

                                            Du bist dir sicher das es kWh sind und die Werte bei kumuliert richtig sind ?

                                            Sent from my iPhone using Tapatalk

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            873
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

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