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.
    • Codierknecht
      Codierknecht Developer Most Active @Humidor last edited by

      @humidor sagte in Grafana - Stromzähler nachbauen:

      influxdb 2.0

      Da müssen dann adere weiterhelfen.
      In SQL wäre das ein einfaches GROUP BY. Von Influx habe ich keinen Schimmer.

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

        @codierknecht von SQL hab ich keinen Schimmer 🙂

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

          am EM24 schaut das os aus, sehe nur die Modbus TCP Schnittstelle, dh er kann nicht selbst in die influxDB schieben, wird nur ausgelesen
          was allerdings alles zum auslesen ist, muss ich noch rausfinden
          EM24 #1.png EM24 #2.png

          L 1 Reply Last reply Reply Quote 0
          • L
            lesiflo Most Active @Humidor last edited by lesiflo

            @humidor Meinst du so was:

            a927a3f4-9626-4c17-b12c-028393d0d0a6-image.png

            Tag:
            64dcdc8d-cf53-4a00-9a33-ac47538faa99-image.png

            Monat:
            c5ef62ec-bcf1-4b76-b83d-8083e7fa0bd8-image.png

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

              @lesiflo im Prinzip ja, aber ich habe nur den aktuellen Wert, keine Summe an kWh.

              L 1 Reply Last reply Reply Quote 0
              • L
                lesiflo Most Active @Humidor last edited by lesiflo

                @humidor

                Den kWh Wert aus der Leistung kannst so z.B. berechnen:

                350852cd-9ddf-4d53-bda3-c1b5bd20944d-image.png

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

                  @humidor

                  Hier nutze ich meine Smartmeter-Daten, die kommen fortlaufend von meinem Stromzähler.

                  87234478-4a4a-48ba-8ad2-df50c3629b99-grafik.png

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

                    @meister-mopper welcher Wert kommt da ins Grafana, der pos. Watt-Wert?

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

                      @humidor sagte in Grafana - Stromzähler nachbauen:

                      @meister-mopper welcher Wert kommt da ins Grafana, der pos. Watt-Wert?

                      Jap

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

                        @meister-mopper kannst mir bitte den code einstellen, sonst müsste ich ihne mühsam abtipseln 🙂

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

                          @humidor

                          Hier das json zum importieren, da sind dann auch alle Formatierungen und overrides mit drin:

                          {
                           "datasource": {
                             "type": "influxdb",
                             "uid": "000000001"
                           },
                           "description": "",
                           "fieldConfig": {
                             "defaults": {
                               "custom": {
                                 "lineWidth": 1,
                                 "fillOpacity": 80,
                                 "gradientMode": "none",
                                 "axisPlacement": "auto",
                                 "axisLabel": "",
                                 "axisColorMode": "text",
                                 "axisBorderShow": false,
                                 "scaleDistribution": {
                                   "type": "linear"
                                 },
                                 "axisCenteredZero": false,
                                 "hideFrom": {
                                   "tooltip": false,
                                   "viz": false,
                                   "legend": false
                                 },
                                 "thresholdsStyle": {
                                   "mode": "off"
                                 }
                               },
                               "color": {
                                 "mode": "fixed",
                                 "fixedColor": "red"
                               },
                               "mappings": [],
                               "thresholds": {
                                 "mode": "absolute",
                                 "steps": [
                                   {
                                     "color": "green",
                                     "value": null
                                   },
                                   {
                                     "color": "red",
                                     "value": 80
                                   }
                                 ]
                               },
                               "links": [],
                               "min": 0,
                               "unit": "kwatth"
                             },
                             "overrides": [
                               {
                                 "matcher": {
                                   "id": "byName",
                                   "options": "Time"
                                 },
                                 "properties": [
                                   {
                                     "id": "unit",
                                     "value": "time: D dd"
                                   }
                                 ]
                               }
                             ]
                           },
                           "gridPos": {
                             "h": 7,
                             "w": 12,
                             "x": 12,
                             "y": 27
                           },
                           "hideTimeOverride": true,
                           "id": 98,
                           "interval": "1d",
                           "options": {
                             "orientation": "auto",
                             "xTickLabelRotation": -90,
                             "xTickLabelSpacing": 0,
                             "showValue": "always",
                             "stacking": "none",
                             "groupWidth": 0.7,
                             "barWidth": 0.7,
                             "barRadius": 0,
                             "fullHighlight": false,
                             "tooltip": {
                               "mode": "single",
                               "sort": "none"
                             },
                             "legend": {
                               "showLegend": false,
                               "displayMode": "list",
                               "placement": "bottom",
                               "calcs": []
                             }
                           },
                           "pluginVersion": "8.5.1",
                           "targets": [
                             {
                               "datasource": {
                                 "type": "influxdb",
                                 "uid": "000000001"
                               },
                               "groupBy": [
                                 {
                                   "params": [
                                     "$__interval"
                                   ],
                                   "type": "time"
                                 },
                                 {
                                   "params": [
                                     "null"
                                   ],
                                   "type": "fill"
                                 }
                               ],
                               "measurement": "0_userdata.0.Energie.PV.Netzbezug",
                               "orderByTime": "ASC",
                               "policy": "default",
                               "query": "import \"timezone\"\r\noption location = timezone.location(name: \"Europe/Berlin\")\r\n\r\nfrom(bucket: \"iobroker\")\r\n  |> range(start: -1mo, stop: v.timeRangeStop)\r\n  |> filter(fn: (r) => r[\"_measurement\"] == \"smartmeter.0.1-0:1_8_0__255.value\" and r[\"_field\"] == \"value\")\r\n  |> difference()\r\n  |> aggregateWindow(every: 1d, fn: sum, timeSrc: \"_start\")",
                               "refId": "A",
                               "resultFormat": "time_series",
                               "select": [
                                 [
                                   {
                                     "params": [
                                       "value"
                                     ],
                                     "type": "field"
                                   },
                                   {
                                     "params": [],
                                     "type": "max"
                                   }
                                 ]
                               ],
                               "tags": []
                             },
                             {
                               "alias": "Direct self-use",
                               "datasource": {
                                 "type": "influxdb",
                                 "uid": "000000001"
                               },
                               "groupBy": [
                                 {
                                   "params": [
                                     "$__interval"
                                   ],
                                   "type": "time"
                                 },
                                 {
                                   "params": [
                                     "null"
                                   ],
                                   "type": "fill"
                                 }
                               ],
                               "hide": false,
                               "measurement": "kWh",
                               "orderByTime": "ASC",
                               "policy": "default",
                               "refId": "B",
                               "resultFormat": "time_series",
                               "select": [
                                 [
                                   {
                                     "params": [
                                       "value"
                                     ],
                                     "type": "field"
                                   },
                                   {
                                     "params": [],
                                     "type": "max"
                                   }
                                 ]
                               ],
                               "tags": [
                                 {
                                   "key": "entity_id",
                                   "operator": "=",
                                   "value": "selfuse_energy_daily"
                                 }
                               ]
                             }
                           ],
                           "timeFrom": "1h",
                           "title": "Tagesbezug (Monat)",
                           "type": "barchart"
                          }
                          

                          Hier influx

                          import "timezone"
                          option location = timezone.location(name: "Europe/Berlin")
                          
                          from(bucket: "iobroker")
                            |> range(start: -1mo, stop: v.timeRangeStop)
                            |> filter(fn: (r) => r["_measurement"] == "smartmeter.0.1-0:1_8_0__255.value" and r["_field"] == "value")
                            |> difference()
                            |> aggregateWindow(every: 1d, fn: sum, timeSrc: "_start")
                          
                          Humidor 1 Reply Last reply Reply Quote 1
                          • Humidor
                            Humidor @Meister Mopper last edited by

                            @meister-mopper sagte in Grafana - Stromzähler nachbauen:

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

                            OK, das kapier ich noch nicht
                            woher stammt der "Spoiler"? iobroker oder grafana?
                            wenn ich deine Influx Text (geändert auf meine Werte) eingebe, kommt mal nix
                            Bildschirmfoto 2024-10-14 um 16.56.15.png

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

                              @humidor sagte in Grafana - Stromzähler nachbauen:

                              woher stammt der "Spoiler"? iobroker oder grafana?

                              Das ist das json des dashboard von Grafana und kann in Grafana eingelesen werden.

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

                                @meister-mopper etwas weiter bin ich gekommen, habe dein dashboard eingelesen, darin ein panel geöffnet mit das query eingetragen
                                (ist das richtig ein Panel zu öffnen, das ist auf std. Einstellungen)

                                nun sehe ich diese Information
                                Bildschirmfoto 2024-10-15 um 06.32.50.png
                                Bildschirmfoto 2024-10-15 um 06.33.59.png
                                Bildschirmfoto 2024-10-15 um 06.36.51.png

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

                                  Schau mal hier.

                                  Damit habe ich es hinbekommen.

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

                                    @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

                                    Meister Mopper 1 Reply Last reply Reply Quote 0
                                    • 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
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            736
                                            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