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. Visualisierung
  4. Stromverbrauch protokollieren

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

Stromverbrauch protokollieren

Geplant Angeheftet Gesperrt Verschoben Visualisierung
42 Beiträge 4 Kommentatoren 6.6k Aufrufe 4 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.
  • HomoranH Homoran

    @special_b wahrscheinlich hat sich die Instanz beendet, da ein Skript Amok läuft.
    Das sollte dann auch im log stehen.

    S Offline
    S Offline
    special_b
    schrieb am zuletzt editiert von
    #15

    @homoran

    Das sind die Fehler im Log:

    Log.jpg

    mfg

    Special_B

    CodierknechtC 1 Antwort Letzte Antwort
    0
    • S special_b

      @homoran

      Das sind die Fehler im Log:

      Log.jpg

      mfg

      Special_B

      CodierknechtC Online
      CodierknechtC Online
      Codierknecht
      Developer Most Active
      schrieb am zuletzt editiert von
      #16

      @special_b
      So, bin wieder am Start :grin:

      Fangen wir mal bei Adam und Eva an:
      Dein Zählerstand kommt schon als absoluter Wert? Du musst also keine Impulse zählen?

      Was willst Du denn alles historisieren?
      Den Tagesverbrauch? Den Verbrauch in einer bestimmten Zeiteinheit? Die bezogene Leistung zwischen zwei Zählerständen?

      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

      Proxmox 9.0.18 LXC|8 GB|Core i7-6700
      HmIP|ZigBee|Tasmota|Unifi
      Zabbix Certified Specialist
      Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

      S 1 Antwort Letzte Antwort
      0
      • CodierknechtC Codierknecht

        @special_b
        So, bin wieder am Start :grin:

        Fangen wir mal bei Adam und Eva an:
        Dein Zählerstand kommt schon als absoluter Wert? Du musst also keine Impulse zählen?

        Was willst Du denn alles historisieren?
        Den Tagesverbrauch? Den Verbrauch in einer bestimmten Zeiteinheit? Die bezogene Leistung zwischen zwei Zählerständen?

        S Offline
        S Offline
        special_b
        schrieb am zuletzt editiert von
        #17

        @codierknecht
        Ja, der Zählerstand wird vom Smartmeter Adapter bereits als absoluter Wert mit 4 Kommastellen ausgelesen. Seit ich den funktionierenden Pin bekommen habe läuft das.

        Tagesauswertungen liefen bereits von Sourceanalytics, hab ich aber aktuell wieder rausgenommen.

        Am liebsten wäre mir, wenn ich eine Tagesverlaufskurve erstellen könnte. Also alle 10 oder 15 Minuten eine Säule im Diagramm oder eben ein Punkt auf der Linie wieviel Strom bezogen wurde.

        Dann kann man ja immer noch leicht aus den Werten den Tagesverbrauch protokollieren.

        mfg

        Special_B

        HomoranH CodierknechtC 2 Antworten Letzte Antwort
        0
        • S special_b

          @codierknecht
          Ja, der Zählerstand wird vom Smartmeter Adapter bereits als absoluter Wert mit 4 Kommastellen ausgelesen. Seit ich den funktionierenden Pin bekommen habe läuft das.

          Tagesauswertungen liefen bereits von Sourceanalytics, hab ich aber aktuell wieder rausgenommen.

          Am liebsten wäre mir, wenn ich eine Tagesverlaufskurve erstellen könnte. Also alle 10 oder 15 Minuten eine Säule im Diagramm oder eben ein Punkt auf der Linie wieviel Strom bezogen wurde.

          Dann kann man ja immer noch leicht aus den Werten den Tagesverbrauch protokollieren.

          mfg

          Special_B

          HomoranH Nicht stören
          HomoranH Nicht stören
          Homoran
          Global Moderator Administrators
          schrieb am zuletzt editiert von
          #18

          @special_b sagte in Stromverbrauch protokollieren:

          Also alle 10 oder 15 Minuten eine Säule im Diagramm oder eben ein Punkt auf der Linie wieviel Strom bezogen wurde.

          so?

          Screenshot_20220930-192109_Firefox.jpg

          das ist einfach live der Wert vom Smartmeter alle 6 Sekunden (und vom Wechselrichter)

          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

          1 Antwort Letzte Antwort
          0
          • S special_b

            @codierknecht
            Ja, der Zählerstand wird vom Smartmeter Adapter bereits als absoluter Wert mit 4 Kommastellen ausgelesen. Seit ich den funktionierenden Pin bekommen habe läuft das.

            Tagesauswertungen liefen bereits von Sourceanalytics, hab ich aber aktuell wieder rausgenommen.

            Am liebsten wäre mir, wenn ich eine Tagesverlaufskurve erstellen könnte. Also alle 10 oder 15 Minuten eine Säule im Diagramm oder eben ein Punkt auf der Linie wieviel Strom bezogen wurde.

            Dann kann man ja immer noch leicht aus den Werten den Tagesverbrauch protokollieren.

            mfg

            Special_B

            CodierknechtC Online
            CodierknechtC Online
            Codierknecht
            Developer Most Active
            schrieb am zuletzt editiert von
            #19

            Also ich mache es so, dass ich zwischen zwei Impulsen die Zeit ermittle und mir damit die während der Impulse (durchschnittlich) bezogene Leistung errechne.
            Den Tagesverbrauch logge ich auch noch, auch wenn das in SA schon drin ist. Was man hat, hat man ;-)

            Dazu habe ich verschiedene Datenpunkte:

            • Aktuelle Leistung
              Wird mit der durchschnittlich zwischen 2 Impulsen bezogenen Leistung gefüttert
            • Aktueller Zählerstand
              Benötige ich, da ich Impulse zähle. Fällt bei Dir weg
            • Laufender Verbrauch
              Zählt am Tag den auflaufenden Verbrauch
            • Berechneter Tagesverbrauch
              Wird nachts geschrieben und historisiert

            1d872e98-5cb4-43d1-bbb7-0d213ae6cba9-grafik.png

            Wenn Du bei Dir auf die Änderung des Zählerstandes triggerst, kannst Du über den Baustein Wert den aktuellen Stand und über Vorheriger Wert den vorherigen Wert ermitteln.
            Über Zeitstempel und Vorheriger Zeitstempel kommt man (mit einfacher Substraktion) an die verstrichenen Sekunden. Daraus die Leistung zu errechnen ist dann simpel.
            Die kann man dann historisieren und 'ne schöne Grafik bauen, um die bezogene Leistung im Tagesverlauf darzustellen.

            4ae6a0d4-a6b8-4df2-afc3-6711016b7986-grafik.png

            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

            Proxmox 9.0.18 LXC|8 GB|Core i7-6700
            HmIP|ZigBee|Tasmota|Unifi
            Zabbix Certified Specialist
            Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

            1 Antwort Letzte Antwort
            0
            • S Offline
              S Offline
              special_b
              schrieb am zuletzt editiert von
              #20

              Alle 6 Sekunden brauche ich eigentlich nicht, mir würde alle 10 Minuten oder so reichen. Also am besten nach Zeitplan, um 0:00 Uhr das erste mal, um 23:50 das letzte mal. Dann könnte man um 0:00 Uhr auch den Tagesverbrauch speichern.

              Was ich momentan nicht ganz so verstehe ist bei meiner Zeile: Setze NeuerZählerstand auf Wert: Wie kann ich da angeben dass hier der Wert der Objekt ID vom Verbrauchszähler genommen wird?
              Und wie komme ich dann mit dem Datenpunkt weiter sodass dann der Wert historisiert werden kann?

              mfg

              Special_B

              CodierknechtC HomoranH 2 Antworten Letzte Antwort
              0
              • S special_b

                Alle 6 Sekunden brauche ich eigentlich nicht, mir würde alle 10 Minuten oder so reichen. Also am besten nach Zeitplan, um 0:00 Uhr das erste mal, um 23:50 das letzte mal. Dann könnte man um 0:00 Uhr auch den Tagesverbrauch speichern.

                Was ich momentan nicht ganz so verstehe ist bei meiner Zeile: Setze NeuerZählerstand auf Wert: Wie kann ich da angeben dass hier der Wert der Objekt ID vom Verbrauchszähler genommen wird?
                Und wie komme ich dann mit dem Datenpunkt weiter sodass dann der Wert historisiert werden kann?

                mfg

                Special_B

                CodierknechtC Online
                CodierknechtC Online
                Codierknecht
                Developer Most Active
                schrieb am zuletzt editiert von
                #21

                @special_b sagte in Stromverbrauch protokollieren:

                Was ich momentan nicht ganz so verstehe ist bei meiner Zeile: Setze NeuerZählerstand auf Wert: Wie kann ich da angeben dass hier der Wert der Objekt ID vom Verbrauchszähler genommen wird?

                So wie das in Deinem Script aussieht, ist es relativ sinnbefreit.
                Du hast doch schon den jeweils absoluten Zählerstand vorliegen. Also brauchst Du da ja nix an den DP ändern.
                Was Du brauchst ist ein DP um den Verbrauch zu loggen.
                Du musst Dir also unterhalb von 0_userdata.0 einen numerischen DP anlegen, in den Du jeweils den ermittelten Verbrauch im Zeitraum schreibst.

                7444cd19-8656-4ff5-bb56-61034c1f2288-image.png

                Schritt für Schritt - programming for runaways ;-)

                • Die Variable verbrauch wird beim Start des Scriptes auf 0 gesetzt und in die Variable zaehlerstand der aktuelle Stand Deines Zählers eingelesen.
                • Alle 10 Minuten wird vom jetzigen Zählerstand der zuletzt gemerkte Wert abgezogen.
                  Das ist der Verbrauch in den letzten 10 Minuten.
                • In der Variablen zaehlerstand wird jetzt der aktuelle Wert "gemerkt".
                  Der wird ja für den nächsten Durchlauf in 10 Minuten wieder benötigt.
                • In den DP für den Verbrauch wird jetzt der ermittelte Wert eingetragen.
                  Diesen DP musst Du historisieren!

                Den Tagesverbrauch sollte Dir SourceAnalytics ja bereits sauber protokollieren.

                Ich hoffe das war jetzt einigermaßen verständlich ;-)

                "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                Proxmox 9.0.18 LXC|8 GB|Core i7-6700
                HmIP|ZigBee|Tasmota|Unifi
                Zabbix Certified Specialist
                Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                1 Antwort Letzte Antwort
                0
                • S special_b

                  Alle 6 Sekunden brauche ich eigentlich nicht, mir würde alle 10 Minuten oder so reichen. Also am besten nach Zeitplan, um 0:00 Uhr das erste mal, um 23:50 das letzte mal. Dann könnte man um 0:00 Uhr auch den Tagesverbrauch speichern.

                  Was ich momentan nicht ganz so verstehe ist bei meiner Zeile: Setze NeuerZählerstand auf Wert: Wie kann ich da angeben dass hier der Wert der Objekt ID vom Verbrauchszähler genommen wird?
                  Und wie komme ich dann mit dem Datenpunkt weiter sodass dann der Wert historisiert werden kann?

                  mfg

                  Special_B

                  HomoranH Nicht stören
                  HomoranH Nicht stören
                  Homoran
                  Global Moderator Administrators
                  schrieb am zuletzt editiert von
                  #22

                  @special_b sagte in Stromverbrauch protokollieren:

                  Alle 6 Sekunden brauche ich eigentlich nicht,

                  das ist halt das Intervall in dem die Daten aus dem Smartmeter kommen.
                  Da braucht es dann keine weitere Logik, DPs usw.

                  @special_b sagte in Stromverbrauch protokollieren:

                  mir würde alle 10 Minuten oder so reichen

                  Dann musst du Scripte bemühen.


                  So ganz habe ich noch nicht verstanden was du wirklich erreichen willst, wenn du

                  @special_b sagte in Stromverbrauch protokollieren:

                  meinen Stromverbrauch analysieren um einen PV Akku zu planen.

                  willst.

                  Wofür brauchst du dann die Lastverteilung?
                  zum einen ist die Tagesenergie interessant um die Kapazität zu planen, zum anderen die Spitzen um die maximale notwendige Entladeleistung zu kennen.
                  Weiterhin die Einspeisung pro Tag, weil das die höchstmögliche Lademenge wäre.

                  kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                  der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                  S 1 Antwort Letzte Antwort
                  0
                  • HomoranH Homoran

                    @special_b sagte in Stromverbrauch protokollieren:

                    Alle 6 Sekunden brauche ich eigentlich nicht,

                    das ist halt das Intervall in dem die Daten aus dem Smartmeter kommen.
                    Da braucht es dann keine weitere Logik, DPs usw.

                    @special_b sagte in Stromverbrauch protokollieren:

                    mir würde alle 10 Minuten oder so reichen

                    Dann musst du Scripte bemühen.


                    So ganz habe ich noch nicht verstanden was du wirklich erreichen willst, wenn du

                    @special_b sagte in Stromverbrauch protokollieren:

                    meinen Stromverbrauch analysieren um einen PV Akku zu planen.

                    willst.

                    Wofür brauchst du dann die Lastverteilung?
                    zum einen ist die Tagesenergie interessant um die Kapazität zu planen, zum anderen die Spitzen um die maximale notwendige Entladeleistung zu kennen.
                    Weiterhin die Einspeisung pro Tag, weil das die höchstmögliche Lademenge wäre.

                    S Offline
                    S Offline
                    special_b
                    schrieb am zuletzt editiert von
                    #23

                    Danke erstmal für euere Antworten.

                    Mir ist da vorhin noch was durch den Kopf gegangen. Wie bekomme ich den z.B. in History bzw. Flot die Daten? Werden da Grafiken erzeugt?
                    Wäre es nicht möglich, alle 10 Minuten den Verbrauch in eine CSV Datei zu schreiben und diese dann vom Mac auslesen zu lassen?
                    Mein IOBroker läuft mittlerweile auf einem Mac und dort könnte ich die Daten dann aus einer CSV Datei in Numbers importieren und dort weiter verarbeiten.

                    Würde der CSV Export funktionieren?

                    mfg

                    Special_B

                    CodierknechtC 1 Antwort Letzte Antwort
                    0
                    • S special_b

                      Danke erstmal für euere Antworten.

                      Mir ist da vorhin noch was durch den Kopf gegangen. Wie bekomme ich den z.B. in History bzw. Flot die Daten? Werden da Grafiken erzeugt?
                      Wäre es nicht möglich, alle 10 Minuten den Verbrauch in eine CSV Datei zu schreiben und diese dann vom Mac auslesen zu lassen?
                      Mein IOBroker läuft mittlerweile auf einem Mac und dort könnte ich die Daten dann aus einer CSV Datei in Numbers importieren und dort weiter verarbeiten.

                      Würde der CSV Export funktionieren?

                      mfg

                      Special_B

                      CodierknechtC Online
                      CodierknechtC Online
                      Codierknecht
                      Developer Most Active
                      schrieb am zuletzt editiert von
                      #24

                      @special_b sagte in Stromverbrauch protokollieren:

                      Wäre es nicht möglich, alle 10 Minuten den Verbrauch in eine CSV Datei zu schreiben und diese dann vom Mac auslesen zu lassen?

                      Klingt wie "von hinten durch die Brust ins Auge".

                      Ich lade die in MariaDB geloggten Daten in Grafana und zeige die dort erzeugten Grafiken in der Vis an.
                      Geht natürlich auch mit Flot oder mit E-Charts.

                      "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                      Proxmox 9.0.18 LXC|8 GB|Core i7-6700
                      HmIP|ZigBee|Tasmota|Unifi
                      Zabbix Certified Specialist
                      Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                      1 Antwort Letzte Antwort
                      0
                      • S Offline
                        S Offline
                        special_b
                        schrieb am zuletzt editiert von special_b
                        #25

                        Ok, wenn ihr meint dass das mit einer CSV nichts ist, dann halt so.

                        Ich habe das Skript nachgebaut:

                        iobroker3.png

                        Bei der letzten Zeile habe ich eine Weile gebraucht. Laufender_Verbrauch habe ich ewig gesucht und das mit dem Datenpunkt "unterhalb 0_userdata.0 hab ich auch nicht verstanden was das sein soll. Aber irgendwann hab ich mir fast gedacht, dass das zusammenhängen muss. Dann hab ich 0_userdata gefunden und konnte da tatsächlich einen Datenpunkt anlegen. Zustandstyp Number ist richtig, oder?
                        Dann lasse ich das Skript mal laufen und beobachte diesen Datenpunkt.
                        Dann muss ich halt mal schauen wie ich daraus dann ein Diagramm erstellen kann.

                        Danke euch schon mal.

                        Edit:

                        Ich bekomme Warnmeldungen im Log:

                        2023-01-05 18:10:00.008 - warn: javascript.0 (519) State "Object ID" not found
                        2023-01-05 18:10:00.010 - warn: javascript.0 (519) at setState (/usr/local/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1719:20)
                        2023-01-05 18:10:00.010 - warn: javascript.0 (519) at Object. (script.js.Stromzaehler_CSV:9:3)
                        2023-01-05 18:10:00.010 - warn: javascript.0 (519) at Job.job (/usr/local/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1595:34)
                        2023-01-05 18:10:00.010 - warn: javascript.0 (519) at Job.invoke (/usr/local/iobroker/node_modules/node-schedule/lib/Job.js:171:15)
                        2023-01-05 18:10:00.010 - warn: javascript.0 (519) at /usr/local/iobroker/node_modules/node-schedule/lib/Invocation.js:268:28
                        2023-01-05 18:10:00.010 - warn: javascript.0 (519) at Timeout._onTimeout (/usr/local/iobroker/node_modules/node-schedule/lib/Invocation.js:228:7)
                        2023-01-05 18:10:00.011 - warn: javascript.0 (519) at listOnTimeout (node:internal/timers:564:17)
                        2023-01-05 18:10:00.011 - warn: javascript.0 (519) at processTimers (node:internal/timers:507:7)
                        

                        Das ist doch wohl nicht normal, oder? Und das Skript muss ich noch ein bisschen umbenennen. Daran sollte es aber nicht liegen.

                        mfg

                        Special_B

                        HomoranH CodierknechtC 2 Antworten Letzte Antwort
                        0
                        • S special_b

                          Ok, wenn ihr meint dass das mit einer CSV nichts ist, dann halt so.

                          Ich habe das Skript nachgebaut:

                          iobroker3.png

                          Bei der letzten Zeile habe ich eine Weile gebraucht. Laufender_Verbrauch habe ich ewig gesucht und das mit dem Datenpunkt "unterhalb 0_userdata.0 hab ich auch nicht verstanden was das sein soll. Aber irgendwann hab ich mir fast gedacht, dass das zusammenhängen muss. Dann hab ich 0_userdata gefunden und konnte da tatsächlich einen Datenpunkt anlegen. Zustandstyp Number ist richtig, oder?
                          Dann lasse ich das Skript mal laufen und beobachte diesen Datenpunkt.
                          Dann muss ich halt mal schauen wie ich daraus dann ein Diagramm erstellen kann.

                          Danke euch schon mal.

                          Edit:

                          Ich bekomme Warnmeldungen im Log:

                          2023-01-05 18:10:00.008 - warn: javascript.0 (519) State "Object ID" not found
                          2023-01-05 18:10:00.010 - warn: javascript.0 (519) at setState (/usr/local/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1719:20)
                          2023-01-05 18:10:00.010 - warn: javascript.0 (519) at Object. (script.js.Stromzaehler_CSV:9:3)
                          2023-01-05 18:10:00.010 - warn: javascript.0 (519) at Job.job (/usr/local/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1595:34)
                          2023-01-05 18:10:00.010 - warn: javascript.0 (519) at Job.invoke (/usr/local/iobroker/node_modules/node-schedule/lib/Job.js:171:15)
                          2023-01-05 18:10:00.010 - warn: javascript.0 (519) at /usr/local/iobroker/node_modules/node-schedule/lib/Invocation.js:268:28
                          2023-01-05 18:10:00.010 - warn: javascript.0 (519) at Timeout._onTimeout (/usr/local/iobroker/node_modules/node-schedule/lib/Invocation.js:228:7)
                          2023-01-05 18:10:00.011 - warn: javascript.0 (519) at listOnTimeout (node:internal/timers:564:17)
                          2023-01-05 18:10:00.011 - warn: javascript.0 (519) at processTimers (node:internal/timers:507:7)
                          

                          Das ist doch wohl nicht normal, oder? Und das Skript muss ich noch ein bisschen umbenennen. Daran sollte es aber nicht liegen.

                          mfg

                          Special_B

                          HomoranH Nicht stören
                          HomoranH Nicht stören
                          Homoran
                          Global Moderator Administrators
                          schrieb am zuletzt editiert von
                          #26

                          @special_b sagte in Stromverbrauch protokollieren:

                          Das ist doch wohl nicht normal, oder?

                          doch!
                          wenn man keine ID zuweist ist das so.

                          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                          S 1 Antwort Letzte Antwort
                          1
                          • HomoranH Homoran

                            @special_b sagte in Stromverbrauch protokollieren:

                            Das ist doch wohl nicht normal, oder?

                            doch!
                            wenn man keine ID zuweist ist das so.

                            S Offline
                            S Offline
                            special_b
                            schrieb am zuletzt editiert von
                            #27

                            @homoran

                            Welche ID? Wo? Im Datenpunkt? In Blockly? Wo?

                            mfg

                            Special_B

                            HomoranH 1 Antwort Letzte Antwort
                            0
                            • S special_b

                              @homoran

                              Welche ID? Wo? Im Datenpunkt? In Blockly? Wo?

                              mfg

                              Special_B

                              HomoranH Nicht stören
                              HomoranH Nicht stören
                              Homoran
                              Global Moderator Administrators
                              schrieb am zuletzt editiert von
                              #28

                              @special_b sagte in Stromverbrauch protokollieren:

                              In Blockly

                              da hast du den Baustein aktualisiere ohne Datenpunkt ID

                              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                              1 Antwort Letzte Antwort
                              0
                              • S special_b

                                Ok, wenn ihr meint dass das mit einer CSV nichts ist, dann halt so.

                                Ich habe das Skript nachgebaut:

                                iobroker3.png

                                Bei der letzten Zeile habe ich eine Weile gebraucht. Laufender_Verbrauch habe ich ewig gesucht und das mit dem Datenpunkt "unterhalb 0_userdata.0 hab ich auch nicht verstanden was das sein soll. Aber irgendwann hab ich mir fast gedacht, dass das zusammenhängen muss. Dann hab ich 0_userdata gefunden und konnte da tatsächlich einen Datenpunkt anlegen. Zustandstyp Number ist richtig, oder?
                                Dann lasse ich das Skript mal laufen und beobachte diesen Datenpunkt.
                                Dann muss ich halt mal schauen wie ich daraus dann ein Diagramm erstellen kann.

                                Danke euch schon mal.

                                Edit:

                                Ich bekomme Warnmeldungen im Log:

                                2023-01-05 18:10:00.008 - warn: javascript.0 (519) State "Object ID" not found
                                2023-01-05 18:10:00.010 - warn: javascript.0 (519) at setState (/usr/local/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1719:20)
                                2023-01-05 18:10:00.010 - warn: javascript.0 (519) at Object. (script.js.Stromzaehler_CSV:9:3)
                                2023-01-05 18:10:00.010 - warn: javascript.0 (519) at Job.job (/usr/local/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1595:34)
                                2023-01-05 18:10:00.010 - warn: javascript.0 (519) at Job.invoke (/usr/local/iobroker/node_modules/node-schedule/lib/Job.js:171:15)
                                2023-01-05 18:10:00.010 - warn: javascript.0 (519) at /usr/local/iobroker/node_modules/node-schedule/lib/Invocation.js:268:28
                                2023-01-05 18:10:00.010 - warn: javascript.0 (519) at Timeout._onTimeout (/usr/local/iobroker/node_modules/node-schedule/lib/Invocation.js:228:7)
                                2023-01-05 18:10:00.011 - warn: javascript.0 (519) at listOnTimeout (node:internal/timers:564:17)
                                2023-01-05 18:10:00.011 - warn: javascript.0 (519) at processTimers (node:internal/timers:507:7)
                                

                                Das ist doch wohl nicht normal, oder? Und das Skript muss ich noch ein bisschen umbenennen. Daran sollte es aber nicht liegen.

                                mfg

                                Special_B

                                CodierknechtC Online
                                CodierknechtC Online
                                Codierknecht
                                Developer Most Active
                                schrieb am zuletzt editiert von
                                #29

                                @special_b
                                Ich befürchte, da fehlt noch 'ne ganze Menge grundsätzliches Verständnis. Aber keine Sorge - das kriegen wir schon hin.

                                Lösche zunächst mal den ersten „Aktualisiere“ Block.
                                Der soll ja einen DP aktualisieren den es gar nicht gibt.

                                "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                                Proxmox 9.0.18 LXC|8 GB|Core i7-6700
                                HmIP|ZigBee|Tasmota|Unifi
                                Zabbix Certified Specialist
                                Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                                S 1 Antwort Letzte Antwort
                                1
                                • CodierknechtC Codierknecht

                                  @special_b
                                  Ich befürchte, da fehlt noch 'ne ganze Menge grundsätzliches Verständnis. Aber keine Sorge - das kriegen wir schon hin.

                                  Lösche zunächst mal den ersten „Aktualisiere“ Block.
                                  Der soll ja einen DP aktualisieren den es gar nicht gibt.

                                  S Offline
                                  S Offline
                                  special_b
                                  schrieb am zuletzt editiert von special_b
                                  #30

                                  @codierknecht
                                  Danke. Ja, da fehlt mir eine Menge grundsätzliches. Ich bin kein Programmierer und kenne mich mit dem Zeugs überhaupt nicht aus.

                                  Ich hab jetzt meinen ersten aktualisiere Block gelöscht, ja der hat keinen Sinn gemacht. Sehe ich jetzt auch. In einer Minute werde ich sehen ob jetzt wieder Fehler kommen.

                                  Edit: Sieht gut aus. Jetzt muss ich mich mit Flot vertraut machen. Oder doch was anderes? Was würdet ihr mir empfehlen?

                                  mfg

                                  Special_B

                                  1 Antwort Letzte Antwort
                                  0
                                  • S Offline
                                    S Offline
                                    special_b
                                    schrieb am zuletzt editiert von
                                    #31

                                    So,

                                    nachdem das Skript nun schon einen ganzen Tag lief und funktioniert, habe ich nun das Skript um eine Durchschnittsberechnung erweitert. Ich habe die Auswertung einfach nur jede Stunde laufen lassen. Schaut euch einfach das Skript mal an:

                                    iobroker4.jpg

                                    Oder wie würdet ihr das machen?

                                    mfg

                                    Special_B

                                    1 Antwort Letzte Antwort
                                    0
                                    • S Offline
                                      S Offline
                                      special_b
                                      schrieb am zuletzt editiert von
                                      #32

                                      Noch was, was mir nicht ganz so gefällt:

                                      Das ist mein aktueller Stromverbrauch.
                                      IOBroker5.jpg

                                      Gibt es eine Möglichkeit, die markierte Linie zu entfernen solange diese Werte noch nicht vorliegen?

                                      mfg

                                      Special_B

                                      HomoranH 1 Antwort Letzte Antwort
                                      0
                                      • S special_b

                                        Noch was, was mir nicht ganz so gefällt:

                                        Das ist mein aktueller Stromverbrauch.
                                        IOBroker5.jpg

                                        Gibt es eine Möglichkeit, die markierte Linie zu entfernen solange diese Werte noch nicht vorliegen?

                                        mfg

                                        Special_B

                                        HomoranH Nicht stören
                                        HomoranH Nicht stören
                                        Homoran
                                        Global Moderator Administrators
                                        schrieb am zuletzt editiert von
                                        #33

                                        @special_b sagte in Stromverbrauch protokollieren:

                                        Gibt es eine Möglichkeit, die markierte Linie zu entfernen solange diese Werte noch nicht vorliegen?

                                        Ja!

                                        NULL Werte ignorieren

                                        kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                        der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                        S 1 Antwort Letzte Antwort
                                        0
                                        • HomoranH Homoran

                                          @special_b sagte in Stromverbrauch protokollieren:

                                          Gibt es eine Möglichkeit, die markierte Linie zu entfernen solange diese Werte noch nicht vorliegen?

                                          Ja!

                                          NULL Werte ignorieren

                                          S Offline
                                          S Offline
                                          special_b
                                          schrieb am zuletzt editiert von special_b
                                          #34

                                          @homoran

                                          Danke, aber der Strich bleibt. Er geht jetzt nur waagerecht rüber. Oder muss ich da noch wo anders als in History was machen?
                                          Die Durchschnittsberechnung hat natürlich auch nicht richtig funktioniert, da hätte ich vorher schon drauf kommen müssen. Jetzt scheint es aber zu funktionieren.

                                          mfg

                                          Special_B

                                          HomoranH 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

                                          785

                                          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