Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Strompreis errechnen mittels Skript

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Strompreis errechnen mittels Skript

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

      Hallo ihr lieben,

      ich stehe mal wieder vor einem Problem.

      Ich würde gerne mittels eines Scripts meinen Strompreis berechnen.

      Derzeit habe ich von Homematic die Stromstecker mit Leistungsmessung, die geben ja alle Daten aus Verbrauch usw..

      Nun ok dachte ich mir wenn ich dann einfach im Scripteditor mittels Blockly Mathematik benutze sollte das wohl gehen,

      aber man kann dort keine Objekte in die Berechnung packen.

      Ich dachte mir halt recht einfach Objektwert x 0,29 = mein Strompreis

      Vielleicht habe ihr eine Lösung.

      Danke

      MFG Maggi

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

        @csamaggi:

        aber man kann dort keine Objekte in die Berechnung packen.

        Ich dachte mir halt recht einfach Objektwert x 0,29 = mein Strompreis

        Vielleicht habe ihr eine Lösung.

        Danke

        MFG Maggi `

        Wieso nicht ? Siehe beispiel hier unten (geht bei mir):

        979_value_calc.jpg

        javascript.0 script.js.Testing.Calculation: 209
        javascript.0 script.js.Testing.Calculation: 60.60999999999999
        
        
        1 Reply Last reply Reply Quote 0
        • BuZZy
          BuZZy last edited by

          Vielleicht auch für den ein oder anderen interessant:

          Ich rechne zusätzlich auch den Gesamtpreis abzüglich der von mir gezahlten Abschläge.

          Also

          kWh x 0.23 (Preis pro kWh)

          und immer am 01. des Monats um 00:00 wird alles zusammen gezählt + 6,25€ Grundgebühr drauf gerechnet.

          Nebenbei wird noch am 01. des Monats immer der Abschlag den ich Zahle in ein "Gesamt bezahlt" Datenpunkt geschrieben..

          So sehe ich auch immer ob ich eine Rückzahlung kriege oder Nachzahlen muss ..

          P.s.: Würde an deiner Stelle einen Zählersensor kaufen den du auf deinem Stromzähler montieren kannst. So hast du immer den Gesamtverbrauch im Blick und brauchst nicht 30 Zwischenstecker kaufen.

          Gruß

          1 Reply Last reply Reply Quote 0
          • C
            csamaggi last edited by

            Erstmal Danke für die schnelle Rückmeldung ja es funktioniert.

            Auch der Tipp mit dem Stromzähler kommt noch ich brauchte dieses für meinen Miner umzuschauen was der mich kostet im Strom.

            MFG Maggi

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

              Hallo,

              ich hänge mich mal hier dran, da ich auch etwas berechnen möchte.

              Das Programm hat zwar den Wert im Script-Log richtig berechnet

              16:52:32.343 [info] javascript.0 script.js.ESP1-Akku-Berechnung: 831

              16:52:32.344 [info] javascript.0 script.js.ESP1-Akku-Berechnung: 3.7772727272727273

              Wie aber bekomme ich den neuen Wert in einen neuen Datenpunkt?

              Der neu erzeugte ist vom Typ "state" und gibt nur true aus.

              1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators last edited by

                @hg6806:

                Der neu erzeugte ist vom Typ "state" und gibt nur true aus. `
                Wie hast du ihn erzeugt?

                wenn manuell, lässt sich der Typ beim anlegen einstellen.

                Wenn du ihn jetzt ändern willst bein#m Datenpunkt auf Editieren (Bleistift) gehen und den Typ ändern.

                Gruß

                Rainer

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

                  Hatte ich schon versucht, der Typ lässt sich nicht ändern.

                  Er wurde automatisch erzeugt.

                  Wie bekomme ich nun den errechneten Wert in einen Datenpunkt?

                  1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators last edited by

                    @hg6806:

                    der Typ lässt sich nicht ändern. `
                    Ich glaube nicht alles 😉

                    Wo ist der Screenshot der Konfig?

                    Gruß

                    Rainer

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

                      1752_2017-11-12_17_30_47-iobroker.admin.jpg

                      Da sieht man Typ state ist ausgegraut

                      1 Reply Last reply Reply Quote 0
                      • Homoran
                        Homoran Global Moderator Administrators last edited by

                        und du kannst das Pulldown LOGIKWERT nicht öffnen und auf NUMBER umstellen?

                        Blödsinn, das ist ja der SCRIPT_ENABLED DP

                        den willst du doch nicht wirklich ändern, oder?

                        Zeig mal deine Objekte.

                        Gruß

                        Rainer

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

                          OK, ich war oben recht bei Typ state.

                          Unten das geht

                          Trotzdem wird immer nur True und False ausgegeben.

                          Ich möchte aber etwas berechnen und einen Spannungswert als Datenpunkt speichern.

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

                            ****javascript.0.scriptEnabled.****xxx ist der falsche Datenpunkt :!: Diesen nicht verändern oder beschreiben !

                            Der Datenpunkt zur Ausgabe des Ergebnisses muss erst erzeugt werden (wenn nicht bereits geschehen). Er muss vom Typ "number" (Zahl) sein und sollte am besten unter javascript.0 erstellt werden.
                            493_dp_manuell_js0.jpg

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

                              OK, habe jetzt wohl einen richtigen Datenpunkt als "Zahl" erzeugt.

                              Nochmal die Frage wie ich den über Blockly beschrieben bekomme.

                              1752_2017-11-12_17_58_09-iobroker.admin.jpg

                              Damit bekomme ich wohl nur Debug Info ausgaben

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

                                Den Datenpunkt lösche besser gleich wieder: Er ist in der Wurzel erstellt und enthält Schrägstriche !!

                                Zum optischen Trennen (Ordnerstruktur im Reiter "Objekte") muss der Punkt benutzt werden. Erzeuge einen neuen Datenpunkt vom Typ "Zahl" mit dem Namen ESP-Sensor1.Akku-Level.Analog und der ID javascript.0.ESP-Sensor1.Akku-Level.Analog.

                                493_dp_manuell_js0_akku-level.jpg

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

                                  1752_2017-11-12_18_14_53-iobroker.admin.jpg

                                  1 Reply Last reply Reply Quote 0
                                  • Homoran
                                    Homoran Global Moderator Administrators last edited by

                                    @hg6806:

                                    Nochmal die Frage wie ich den über Blockly beschrieben bekomme. `
                                    mit dem aktualisiere Block!

                                    aber vorher musst du den richtigen DP haben, sonst kannst du dir die gesamte Installation zerschießen! s.o.

                                    Gruß

                                    Rainer

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

                                      So sieht der DP gut aus.
                                      @hg6806:

                                      Nochmal die Frage wie ich den über Blockly beschrieben bekomme. `
                                      System-Block: aktualisiere "javascript.0.ESP-Sensor1.Akku-Level.Analog" mit berechnetem Wert

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

                                        > sonst kannst du dir die gesamte Installation zerschießen!

                                        ..da bin ich weltklasse drin 😄

                                        AKTUALISIERE war's! Das hatte ich gesucht.

                                        Hat jetzt alles geklappt.

                                        Kleines Frägchen hätte ich noch und zwar wie man den Datenpunkt auf 2 Nachkommastellen reduzieren kann.

                                        Danke und Grüße

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

                                          @hg6806:

                                          wie man den Datenpunkt auf 2 Nachkommastellen reduzieren kann. `

                                          wert = Math.round(100 * wert) / 100;
                                          
                                          1 Reply Last reply Reply Quote 0
                                          • First post
                                            Last post

                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          593
                                          Online

                                          31.7k
                                          Users

                                          79.8k
                                          Topics

                                          1.3m
                                          Posts

                                          6
                                          19
                                          2223
                                          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