Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst] kwh berechnen und fortlaufend speichern

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [gelöst] kwh berechnen und fortlaufend speichern

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

      @Dutchman:

      hat das teil keinen wert fuer gesammt ? `
      Hallo Dutschman,

      in der Android App werden die Werte berechnet, aber nicht in den Adapter übernommen (siehe Screenshots)

      @Dutchman:

      also das du anhand des gesammt standes de verbrauch/kosten berechnen kannst, wen ja hab ich in kuerze nen adapter fuer dich 😛 `

      Na dann bin ich gespannt 😄
      4249_gosund-steckdose-002.jpg
      4249_gosund-steckdose-001.jpg

      1 Reply Last reply Reply Quote 0
      • paul53
        paul53 last edited by paul53

        Wenn man nur die Leistung zur Verfügung hat, muß man integrieren.

        const idPower = '...5';  // cur_power
        const idEnergy = 'Waschmaschine.Energieverbrauch'; // kWh
        
        // Energie-Datenpunkt erzeugen
        createState(idEnergy, 1.11, {type: 'number', unit: 'kWh'}); // Anfangswert anpassen !
        
        var energy = 1000 * getState(idEnergy).val; // Wh, erzeugt beim ersten Skripstart Fehler
        
        on({id: idPower}, function(dp) {
           energy = energy + dp.oldState.val * (dp.state.ts - dp.oldState.ts) / 3600000; // Wh
           setState(idEnergy, Math.round(energy) / 1000, true); // kWh mit 3 Nachkommastellen
        });
        

        EDIT: Korrigiert state.val –> oldState.val

        S 1 Reply Last reply Reply Quote 0
        • M
          martin last edited by

          Bei mir sieht das genauso aus wie bei dir.

          Habe diese Steckdosen: https://www.amazon.de/gp/product/B0776P … UTF8&psc=1

          Hätte wenn möglich gerne eine Aufzeichnung über Tagesverbrauch, Monatsverbrauch, Jahresverbrauch

          Vielleicht kann ja jemand der sich damit auskennt ein Script hier einstellen.

          1 Reply Last reply Reply Quote 0
          • AxelF1977
            AxelF1977 last edited by

            @paul53:

            Wenn man nur die Leistung zur Verfügung hat, muß man integrieren.

            const idPower = '...5';  // cur_power
            const idEnergy = 'Waschmaschine.Energieverbrauch'; // kWh
            
            // Energie-Datenpunkt erzeugen
            createState(idEnergy, 1.11, {type: 'number', unit: 'kWh'}); // Anfangswert anpassen !
            
            var energy = 1000 * getState(idEnergy).val; // Wh, erzeugt beim ersten Skripstart Fehler
            
            on({id: idPower}, function(dp) {
               energy = energy + dp.state.val * (dp.state.ts - dp.oldState.ts) / 3600000; // Wh
               setState(idEnergy, Math.round(energy) / 1000, true); // kWh mit 3 Nachkommastellen
            });
            ```` `  
            

            Hi,

            danke, das ist schon mal ein Anfang. Der Datenpunkt wird auch erstellt, aber ja noch nicht live gefüllt. Muss ich hier

            const idPower = '...5';  // cur_power
            

            den Datenpunkt eintragen von cur_power (den es ja gibt, wie Du im Screenshot gesehen hast)?

            1 Reply Last reply Reply Quote 0
            • paul53
              paul53 last edited by

              @AxelF1977:

              Muss ich hier

              const idPower = '...5';  // cur_power
              

              den Datenpunkt eintragen von cur_power `
              Ja, natürlich. Da gehört die ID des Datenpunktes mit dem Namen cur_power rein.

              1 Reply Last reply Reply Quote 0
              • AxelF1977
                AxelF1977 last edited by

                @paul53:

                Ja, natürlich. Da gehört die ID des Datenpunktes mit dem Namen cur_power rein. `

                Danke Dir, dann habe ich es ja verstanden, sorry, habe von JS keine Ahnung…

                1 Reply Last reply Reply Quote 0
                • AxelF1977
                  AxelF1977 last edited by

                  Und nun komme ich an meine Grenzen bei JS, sorry.

                  Die Zweite Steckdose hat bisher 0,29 kwh verbraucht (laut App). Ich habe das Script entsprechend an diese Doese angepasst. Aber errechnen tut das Script einen Wert von 1,333 kwh

                  Im Script ist der Anfangswert auf 0.29 gesetzt

                  // Energie-Datenpunkt erzeugen
                  createState(idEnergy, 0.29, {type: 'number', unit: 'kWh'}); // Anfangswert anpassen !
                  

                  Was mache ich falsch?

                  1 Reply Last reply Reply Quote 0
                  • paul53
                    paul53 last edited by

                    Die beiden IDs (oberste zwei Zeilen im Skript) hast Du vor Start des 2. Skripts angepasst ?

                    1 Reply Last reply Reply Quote 0
                    • AxelF1977
                      AxelF1977 last edited by

                      @paul53:

                      Die beiden IDs (oberste zwei Zeilen im Skript) hast Du vor Start des 2. Skripts angepasst ? `

                      Ja, die hatte ich angepasst. Ich habe es gerade nochmal doppelt überprüft. Nachdem ich die Datenpunkte gelöscht hatte, und die Scripte neu gestartet habe, funktioniert es, sehr cool.

                      Vielen Dank für die schnelle Hilfe!!

                      1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 last edited by

                        @AxelF1977:

                        funktioniert es, `
                        Dann markiere bitte das Thema im Betreff des ersten Beitags als [gelöst].

                        1 Reply Last reply Reply Quote 0
                        • AxelF1977
                          AxelF1977 last edited by

                          @paul53:

                          @AxelF1977:

                          funktioniert es, Dann markiere bitte das Thema im Betreff des ersten Beitags als [gelöst].

                          Erledigt, vielen Dank nochmal.

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

                            Könntest du bitte dein fertiges Script zur Verfügung stellen?

                            Hätte auch Interesse daran.

                            1 Reply Last reply Reply Quote 0
                            • Z
                              Zerpmaster last edited by

                              Das wäre echt klasse wenn du dein fertiges Script mit uns teilen könntest.

                              Vielen dank

                              1 Reply Last reply Reply Quote 0
                              • AxelF1977
                                AxelF1977 last edited by

                                Das fertige Script findet Ihr hier im Beitrag, das hatte paul53 hier gepostet

                                viewtopic.php?f=21&t=19643&p=205738#p205253

                                Das ist alles, was benötigt wird. Bei mir läuft es ohne Probleme. Klein und fein.

                                1 Reply Last reply Reply Quote 0
                                • Z
                                  Zerpmaster last edited by

                                  Danke dir,

                                  kannst du mir vielleicht noch erklären wo ich das Script einbaue?

                                  edit:

                                  http://prntscr.com/lwqt2o

                                  Ich habe bei Node-Red eine Funktion erstellt und da das JS reinkopiert… siehe Screen 😞

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

                                    Irgendwo stimmt was nicht. Er zeigt immer 0 kwh an.

                                    Wer kann mir weiter helfen?

                                    https://www.bilder-upload.eu/bild-019d55-1545227517.jpg.html https://www.bilder-upload.eu/bild-a3b592-1545227545.jpg.html Und kann man die Zeile in den Objekten auch zur passenden Steckdose schieben?

                                    1 Reply Last reply Reply Quote 0
                                    • paul53
                                      paul53 last edited by

                                      @martin:

                                      Irgendwo stimmt was nicht. Er zeigt immer 0 kwh an. `
                                      Leerzeichen in der ID sind keine gute Idee ! Schau mal unter javascript.0 nach, welche ID der Energie-Datenpunkt hat und passe die ID im Skript entsprechend an (wahrscheinlich muss das Leerzeichen durch einen Unterstrich ersetzt werden).

                                      1 Reply Last reply Reply Quote 0
                                      • paul53
                                        paul53 last edited by

                                        @Zerpmaster:

                                        wo ich das Script einbaue? `
                                        Als neues Skript im Javascript-Adapter.

                                        1 Reply Last reply Reply Quote 0
                                        • Z
                                          Zerpmaster last edited by

                                          Ok danke dann habe ich es richtig,

                                          ich finde nur die werte sind etwas seltsam mit den Startwert von 1,11 kWh

                                          http://prntscr.com/lx0dhn

                                          Ich habe für zwei Stromverbraucher das Script pro Verbraucher angelegt und angepasst.

                                          1 Script Weihnachtsbaumbeleuchtung die 3,7 Watt verbraucht

                                          2 Script Terrarium was aktuell 117 Watt verbraucht…

                                          Wieso wird mir dann gleich der Wert 1,11kwh angezeigt?

                                          Soll ich den Wert 1,11 im Script anpassen auf 0,01?

                                          1 Reply Last reply Reply Quote 0
                                          • paul53
                                            paul53 last edited by

                                            @Zerpmaster:

                                            Wieso wird mir dann gleich der Wert 1,11kwh angezeigt? `
                                            Weil 1,11 kWh der Wert war, denn die App von Axel zum Startzeitpunkt angezeigt hat.

                                            Wenn der Datenpunkt schon erstellt ist, kannst Du den Wert nur manuell im Reiter "Objekte" korrigieren.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            977
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            12
                                            57
                                            15441
                                            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