Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Grafana
    5. Grafana - Stromzähler nachbauen

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Grafana - Stromzähler nachbauen

    This topic has been deleted. Only users with topic management privileges can see it.
    • Meister Mopper
      Meister Mopper @Humidor last edited by

      @humidor sagte in Grafana - Stromzähler nachbauen:

      @meister-mopper super, danke, habs soweit kapiert

      jetzt habe ich ein Problem mit den Daten
      Alias - aus einem Mqtt Wert wird der aktuelle Wert (Leistung) entnommen
      Alias - aus einem Mqtt Wert nur der Neg. Wert
      Alias - aus einem Mqtt Wert nur der Pos. Wert

      alle werden in die Influx eingetragen

      wenn ich mir im ioBroker den Verlauf ansehe, sehe ich die jeweiligen Werte zBsp. bezogen auf 1 Tag

      im Grafana mit der Summen Funktion, kommt dann irgendwas raus, auch Minuswerte??
      Bildschirmfoto 2024-10-15 um 16.08.40.png

      Bildschirmfoto 2024-10-15 um 16.08.22.png

      Bildschirmfoto 2024-10-15 um 16.08.15.png

      Tatsächlich kann ich nicht nachvollziehen, was du hier sagen möchtest. Meinst mit negativen Werten die Einspeisung?

      Ich rechne alle Negativdaten in positive Werte um. Mit diesen Daten arbeite ich in Grafana,

      b2198f49-ea63-41fa-b40d-5972b22a8990-grafik.png

      Humidor 1 Reply Last reply Reply Quote 0
      • Humidor
        Humidor @Meister Mopper last edited by Humidor

        @meister-mopper mache ich genauso, dh die neg. Werte werden in pos. Werte umgerechnet, es geht mir um die Summen wieviel Bezug bzw. Lieferung stattgefunden hat.
        Aus pos. Werte wird im Grafana ein Minuswert erzeugt, völliger quatsch. Aber wo liegt der Fehler?

        du siehst am Graph vom ioBroker die pos. Werte, da müsste im Grafana dann die Summe berechnet werden. Soweit klar, raus kommt aber unsinnige Werte und auch Minus.

        Meister Mopper 1 Reply Last reply Reply Quote 0
        • Meister Mopper
          Meister Mopper @Humidor last edited by

          @humidor sagte in Grafana - Stromzähler nachbauen:

          Aber wo liegt der Fehler?

          Okay, das sind zwei verschiedene Ausgangslagen und ein Missverständnis.

          Ich visualisiere bei dem täglichen Verbrauch im letzten Monat sowohl für den Tagesbezug als auch den Tagesverbrauch anwachsende Datenpunkte (Stromzähler und selbst berechneter Verbrauchszähler).

          Humidor 1 Reply Last reply Reply Quote 0
          • Humidor
            Humidor @Meister Mopper last edited by

            @meister-mopper hmm

            range(start: -1mo, stop: v.timeRangeStop)
            

            das ist dann das -1mo, wie sage ich ihm von 0:00 - 23:59? also 1 Tag?
            und das summiert wird, ist aber

            difference()
              |> aggregateWindow(every: 1d, fn: sum, timeSrc: "_start")
            

            fn: sum oder nicht?
            welche Rolle spielt das difference?

            Humidor 1 Reply Last reply Reply Quote 0
            • Humidor
              Humidor @Humidor last edited by

              hätte ev. jemand die richtigen Settings um die den Wert im Grafana zu summieren?

              mickemup 1 Reply Last reply Reply Quote 0
              • mickemup
                mickemup @Humidor last edited by

                @humidor
                Habe da einiges bei mir gemacht um solche Sachen darzustellen.
                Um dir helfen zu können, muss man aber wissen wie (und wie oft du dir Rohdaten loggst.)
                Sind es Leistungen oder Zählerstände?

                Wenn du Leistungen aufsummieren willst, kommt es darauf an, wie oft du die loggst

                difference()
                  |> aggregateWindow(every: 1d, fn: sum, timeSrc: "_start")
                

                Das hier macht nur Sinn, wenn du "Zählerstände loggst....

                Humidor 1 Reply Last reply Reply Quote 0
                • Humidor
                  Humidor @mickemup last edited by Humidor

                  @mickemup danke dir!
                  das sind Werte die per Mqtt einlese
                  mW ist Mqtt Event gesteuert, dh keine fixe Abfragezeit, der Timestamp könnte da eine Auskunft geben

                  mickemup 1 Reply Last reply Reply Quote 0
                  • mickemup
                    mickemup @Humidor last edited by mickemup

                    @humidor
                    OK das heisst es sind Leistungswerte?
                    Um Energie zu erhalten, muss man das Integrieren.
                    Das kann man "grob" im Grafana machen.

                    Die saubere Lösung wurde aber schon hier beschrieben.

                    @lesiflo hat das im Post von 13.Okt als Blockly aufgezeigt...

                    Kannst du sagen wie oft die Werte in Influx geloggt werden und loggst du nur Veränderungen oder jeden mqtt Wert?
                    evtl Printscrren?

                    Humidor 1 Reply Last reply Reply Quote 0
                    • Humidor
                      Humidor @mickemup last edited by

                      @mickemup Ja, momentane Leistungswerte
                      das ist was ich aus dem System per Mqtt raus bekomme:
                      Bildschirmfoto 2024-11-28 um 17.34.43.png
                      die Werte kommen jede Sekunde

                      gibt zwar auch die Möglichkeit per Modbus direkt auf den Zähler zu gehen, aber die Register scheinen nicht zu stimmen, da kommen oft utopische Werte rüber.

                      mickemup 2 Replies Last reply Reply Quote 0
                      • mickemup
                        mickemup @Humidor last edited by mickemup

                        @humidor

                        Ok probier mal das:

                        import "date"
                        import "timezone"
                        option location = timezone.location(name: "Europe/Madrid")
                        
                        from(bucket: "iobroker_YOURBUCKET")
                          |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                          |> filter(fn: (r) => r["_measurement"] == "YOURdatapoint")
                          |> filter(fn: (r) => r["_field"] == "value")
                            |> aggregateWindow(every: 1m, fn: mean, timeSrc: "_start")
                        |> aggregateWindow(every: 1h, fn: mean, timeSrc: "_start")
                        |> aggregateWindow(every: 1d, fn: sum, timeSrc: "_start")
                         
                        

                        aja und kommen die Daten immer oder nur bei Veränderung
                        und loggst du immer oder nur bei Veränderung?

                        Humidor 1 Reply Last reply Reply Quote 1
                        • Humidor
                          Humidor @mickemup last edited by

                          @mickemup standard Einstellung von influxdb
                          Bildschirmfoto 2024-11-29 um 07.11.59.png

                          Humidor mickemup 2 Replies Last reply Reply Quote 0
                          • Humidor
                            Humidor @Humidor last edited by Humidor

                            hab mal diesen Wert genommen: Power (ist ein Plus/Minus Wert)
                            das wird aber wenig Sinn machen, verm. muss ich getrennt für Plus und Minus Werte hier loggen.
                            Bildschirmfoto 2024-11-29 um 07.21.26.png Bildschirmfoto 2024-11-29 um 07.23.46.png

                            mickemup 1 Reply Last reply Reply Quote 0
                            • mickemup
                              mickemup @Humidor last edited by mickemup

                              @humidor
                              Du hast ja gesagt, dass du Dps für Einspeisung und Bezug separat hast.
                              Diese müsstest du natürlich auch so loggen.

                              Falls du denn generellen loggst, hast du Einfach eine Netto Bilanz...hast du überhaupt ein PV Anlage?
                              Aber die die 12 KW (Ich nehme an Bezug) machen wohl schon Sinn, wenn man mit deinem INFLUX Plot vergleicht 🙂

                              Hast du erst Daten von heute gesammelt?
                              Falls nicht, musst du mal die Tiemrange in deinem Panel erhöhen
                              Schreib mal beim zweiten "Printscreen" unter Query Options:
                              Relative time now/M
                              Time shift 0M/M

                              Und nimm mal Barchart

                              Sobald du mit dem ersten Plot zufrieden bist, kann man anschliessend noch die Wochen/Jahressummaries erstellen.
                              Dies ist dann nur noch ein kleiner Schritt

                              1 Reply Last reply Reply Quote 1
                              • mickemup
                                mickemup @Humidor last edited by

                                @humidor
                                OK das passt 👍

                                Wenn die Datenpunkte regelmässig beschrieben werden, wie du ja gesagt hast, dann stimmt auch die "Pseudointegrierung" in Grafana 🙂

                                1 Reply Last reply Reply Quote 0
                                • mickemup
                                  mickemup @Humidor last edited by

                                  @humidor Sry für die vielen Fragen, aber hier hättest du ja unter Energy: Forward einen Datenpunkt, welche die Energie liefert...
                                  Wird der jeden Tag genullt oder erhöht der sich kontinuirlich?

                                  Humidor 1 Reply Last reply Reply Quote 0
                                  • Humidor
                                    Humidor @mickemup last edited by

                                    @mickemup sry, war abgelenkt, hatte zuviel zu tun...
                                    ich denke das sind Summen:
                                    Bildschirmfoto 2024-12-08 um 07.11.55.png
                                    getrennt Bezug u Lieferung habe ich

                                    mickemup 1 Reply Last reply Reply Quote 0
                                    • mickemup
                                      mickemup @Humidor last edited by

                                      @humidor
                                      OK also bräuchtest du gar keinen Stromzähler nachbauen...
                                      Den Strombezug vom Netz eines Tages kriegst du so raus:

                                      import "date"
                                      import "timezone"
                                      option location = timezone.location(name: "Europe/Madrid")
                                      
                                      from(bucket: "DEIN BUCKET")
                                        |> range(start: v.timeRangeStart, stop: v.timeRangeStop)
                                        |> filter(fn: (r) => r["_measurement"] == "DEIN BEZUGSZAEHLER")
                                        |> filter(fn: (r) => r["_field"] == "value")
                                        |> aggregateWindow(every: 1d, fn: last, timeSrc: "_start")
                                        |> difference()
                                      

                                      Hier nimmst du einfach immer den letzten Zählerstand eines Tages und bildest dann die Differenz zum Zählerstand vom Vortag.
                                      Somit Hast du nachher den Strombezug pro Tag.
                                      Passt das so?

                                      Falls du deinen "Hausverbrauch" wissen willst, musst du noch dazuzählen wieviel von deinem Solarstrom du selbst verbraucht hast.

                                      Ich hab das bei mir so dargestellt (Monatsstatistiken)

                                      963ef40d-aa98-4c1e-9f00-a90713b47902-image.png

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

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      928
                                      Online

                                      31.7k
                                      Users

                                      79.7k
                                      Topics

                                      1.3m
                                      Posts

                                      5
                                      36
                                      1879
                                      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