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

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Gleitender Durchschnitt mit Blockly

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.8k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

Gleitender Durchschnitt mit Blockly

Geplant Angeheftet Gesperrt Verschoben Blockly
blockly
67 Beiträge 15 Kommentatoren 14.1k Aufrufe 15 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.
  • ChrisNettC ChrisNett

    so ?

    64f12b05-0c36-4ee5-976a-861568d04568-image.png

    AsgothianA Offline
    AsgothianA Offline
    Asgothian
    Developer
    schrieb am zuletzt editiert von Asgothian
    #30

    @christian-sandkaulen fast.

    • Nimm das setze Liste innerhalb des "mache" raus.
    • Stell das "nimm" in in der Liste nimm das erste Element auf "entferne". Sobald du das tust wird sich die Form des Bausteins anpassen.
    • Ändere das "wurde geändert" auf "wurde aktualisiert"
    • ersetze die 10 in summe über die Liste / 10 durch länge von Liste

    A.

    ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
    "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

    ChrisNettC 1 Antwort Letzte Antwort
    0
    • AsgothianA Asgothian

      @christian-sandkaulen fast.

      • Nimm das setze Liste innerhalb des "mache" raus.
      • Stell das "nimm" in in der Liste nimm das erste Element auf "entferne". Sobald du das tust wird sich die Form des Bausteins anpassen.
      • Ändere das "wurde geändert" auf "wurde aktualisiert"
      • ersetze die 10 in summe über die Liste / 10 durch länge von Liste

      A.

      ChrisNettC Offline
      ChrisNettC Offline
      ChrisNett
      schrieb am zuletzt editiert von
      #31

      @asgothian sagte in Gleitender Durchschnitt mit Blockly:

      @christian-sandkaulen fast.

      • Nimm das setze Liste innerhalb des "mache" raus.
      • Stell das "nimm" in in der Liste nimm das erste Element auf "entferne". Sobald du das tust wird sich die Form des Bausteins anpassen.
      • Ändere das "wurde geändert" auf "wurde aktualisiert"
      • ersetze die 10 in summe über die Liste / 10 durch länge von Liste

      A.

      so?
      825a754a-afc5-4fdc-b5d6-02d1c5c7a2a6-image.png

      AsgothianA 1 Antwort Letzte Antwort
      0
      • ChrisNettC ChrisNett

        @asgothian sagte in Gleitender Durchschnitt mit Blockly:

        @christian-sandkaulen fast.

        • Nimm das setze Liste innerhalb des "mache" raus.
        • Stell das "nimm" in in der Liste nimm das erste Element auf "entferne". Sobald du das tust wird sich die Form des Bausteins anpassen.
        • Ändere das "wurde geändert" auf "wurde aktualisiert"
        • ersetze die 10 in summe über die Liste / 10 durch länge von Liste

        A.

        so?
        825a754a-afc5-4fdc-b5d6-02d1c5c7a2a6-image.png

        AsgothianA Offline
        AsgothianA Offline
        Asgothian
        Developer
        schrieb am zuletzt editiert von
        #32

        @christian-sandkaulen so.

        A.

        ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
        "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

        ChrisNettC 1 Antwort Letzte Antwort
        0
        • AsgothianA Asgothian

          @christian-sandkaulen so.

          A.

          ChrisNettC Offline
          ChrisNettC Offline
          ChrisNett
          schrieb am zuletzt editiert von
          #33

          Danke, das funktioniert. Und ich habe nun meine Leistung gemessen über den Ferraris Zähler geglättet das entspricht mehr Realität als zwei Messwerte

          madjack84M 1 Antwort Letzte Antwort
          0
          • ChrisNettC ChrisNett

            Danke, das funktioniert. Und ich habe nun meine Leistung gemessen über den Ferraris Zähler geglättet das entspricht mehr Realität als zwei Messwerte

            madjack84M Offline
            madjack84M Offline
            madjack84
            schrieb am zuletzt editiert von madjack84
            #34

            Danke für die Tips.... leider scheitere ich irgendwo. Kann mir das bitte jmd erklären? ich hoffe ich liege zu brutal auf der Leitung :O

            Bildschirmfoto 2022-05-21 um 01.54.52.png

            .... Wert ist ein Text :O.... i see

            nuc i3, Proxmox, raspimatic (PI3), 15 shellies, shelly 4pro/25/RGB, wled sonoff, 7x xiaomi sensoren, 4xEchos, 4 Tasmota Steckdosen, motionEye, nspanel, Ring, hoymiles usw

            1 Antwort Letzte Antwort
            1
            • J jaenes

              Servus Leute,

              ich habe einen analogen Sensor der über ESP-Easy Mega alle 60 Sekunden einen Wert schickt. Jetzt möchte ich diesen Wert glätten. Also wäre die richtige Methode gleitender Mittelwert/Durchschnitt. Wie löse ich das mit Blockly? Irgendwie mit Listen müsste das gehen oder ?

              Der analoge wert soll nur dann in den gleitenden Mittelwert einbezogen werden wenn eine Bedingung erfüllt ist......

              J Offline
              J Offline
              juergschwarz
              schrieb am zuletzt editiert von
              #35

              @jaenes

              Falls das noch interessiert - ich habe einen gleitenden Durchschnitt für meine Solaranlage umgesetzt. Siehe Printscreen.

              In diesem Script wird eine Liste mit 12 Elementen erzeugt. Eine Schleife liest nun alle 5 Sekunden die aktuelle Leistung von der PV-Anlage (pv-power) ein. (5s * 12 = 1 Min.)

              Der aktuelle gleitende Durchschnitt steht hier in der lokalen Variablen 1-min-avg.

              Das Script kann für jede andere Zeit angepasst werden. Z.B. einen 5-Min Schnitt mit einer Liste mit 60 Elementen entsprechend.

              Bildschirmfoto vom 2022-10-08 19-42-42.png

              C 1 Antwort Letzte Antwort
              0
              • J juergschwarz

                @jaenes

                Falls das noch interessiert - ich habe einen gleitenden Durchschnitt für meine Solaranlage umgesetzt. Siehe Printscreen.

                In diesem Script wird eine Liste mit 12 Elementen erzeugt. Eine Schleife liest nun alle 5 Sekunden die aktuelle Leistung von der PV-Anlage (pv-power) ein. (5s * 12 = 1 Min.)

                Der aktuelle gleitende Durchschnitt steht hier in der lokalen Variablen 1-min-avg.

                Das Script kann für jede andere Zeit angepasst werden. Z.B. einen 5-Min Schnitt mit einer Liste mit 60 Elementen entsprechend.

                Bildschirmfoto vom 2022-10-08 19-42-42.png

                C Offline
                C Offline
                chemieka
                schrieb am zuletzt editiert von
                #36

                Ich finde die Idee des gleitenden Mittelwerts toll.
                Leider funktioniert die Variante unten nicht. Habe dabei von euch abgekupfert.
                Möchte den gleitenden Mittelwert aus 24h also 24 Werten.
                Aber irgendwie kommt dabei eher der letzte Wert raus.1.jpg
                Kann den Fehler nicht erkennen. Help please.

                paul53P 1 Antwort Letzte Antwort
                0
                • C chemieka

                  Ich finde die Idee des gleitenden Mittelwerts toll.
                  Leider funktioniert die Variante unten nicht. Habe dabei von euch abgekupfert.
                  Möchte den gleitenden Mittelwert aus 24h also 24 Werten.
                  Aber irgendwie kommt dabei eher der letzte Wert raus.1.jpg
                  Kann den Fehler nicht erkennen. Help please.

                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von paul53
                  #37

                  @chemieka sagte: Kann den Fehler nicht erkennen.

                  Damit die Liste einen Skriptstart übersteht, muss die Liste in einem Datenpunkt (Typ "array") gespeichert werden, der bei Skriptstart eingelesen wird.

                  Bild_2023-01-11_194228006.png

                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                  1 Antwort Letzte Antwort
                  0
                  • C Offline
                    C Offline
                    chemieka
                    schrieb am zuletzt editiert von
                    #38

                    @paul53
                    Ich habe das jetzt 1 zu 1 nachgebaut wobei MittelTempMonat mal die Variable zu der Liste sein soll. Es spielt keine Rolle ob ich Zeichenkette oder Liste nehme. Wenn ich nur eine leere Liste erzeuge gehts.

                    Leider Fehler 21:11:00.013 error javascript.0 (30115) script.js.javascript.MittelTemp: TypeError: Liste.push is not a function
                    21:11:00.014 error javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:19:9)
                    21:12:00.033 error javascript.0 (30115) script.js.javascript.MittelTemp: TypeError: Liste.push is not a function
                    21:12:00.034 error javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:19:9)

                    3.jpg

                    C 1 Antwort Letzte Antwort
                    0
                    • C chemieka

                      @paul53
                      Ich habe das jetzt 1 zu 1 nachgebaut wobei MittelTempMonat mal die Variable zu der Liste sein soll. Es spielt keine Rolle ob ich Zeichenkette oder Liste nehme. Wenn ich nur eine leere Liste erzeuge gehts.

                      Leider Fehler 21:11:00.013 error javascript.0 (30115) script.js.javascript.MittelTemp: TypeError: Liste.push is not a function
                      21:11:00.014 error javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:19:9)
                      21:12:00.033 error javascript.0 (30115) script.js.javascript.MittelTemp: TypeError: Liste.push is not a function
                      21:12:00.034 error javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:19:9)

                      3.jpg

                      C Offline
                      C Offline
                      chemieka
                      schrieb am zuletzt editiert von chemieka
                      #39

                      @chemieka

                      Wenn ich es so mache klappt das mit der Liste aber bei der Mittelwertsberechnung kommt dann kein wert:
                      4.jpg
                      5.jpg

                      HomoranH paul53P 2 Antworten Letzte Antwort
                      0
                      • C chemieka

                        @chemieka

                        Wenn ich es so mache klappt das mit der Liste aber bei der Mittelwertsberechnung kommt dann kein wert:
                        4.jpg
                        5.jpg

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

                        @chemieka sagte in Gleitender Durchschnitt mit Blockly:

                        kommt dann kein wert:

                        doch, der ist aber keine Zahl!

                        sind alle Werte der Liste Zahlen?
                        wo kommen diese her?
                        liefert der Sensor die Werte als Zahl?

                        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 -

                        C 1 Antwort Letzte Antwort
                        0
                        • HomoranH Homoran

                          @chemieka sagte in Gleitender Durchschnitt mit Blockly:

                          kommt dann kein wert:

                          doch, der ist aber keine Zahl!

                          sind alle Werte der Liste Zahlen?
                          wo kommen diese her?
                          liefert der Sensor die Werte als Zahl?

                          C Offline
                          C Offline
                          chemieka
                          schrieb am zuletzt editiert von
                          #41

                          @homoran
                          Die werte komme auf dem Blockyscript selber und kommen von einem Sensor.
                          Ja das Problem ist genau das, dass es das falsche Format.
                          Wenn ich mit einer leeren Liste anfange dann gehts. Jetzt will ich mir aber die Werte zur Sicherheit zwischenspeichern in einer externen Variable (MittelTempMonat). Das gelingt mir nicht so, dass ich die Daten wieder nehmen könnte und dann weiterschreiben.

                          1 Antwort Letzte Antwort
                          0
                          • C chemieka

                            @chemieka

                            Wenn ich es so mache klappt das mit der Liste aber bei der Mittelwertsberechnung kommt dann kein wert:
                            4.jpg
                            5.jpg

                            paul53P Offline
                            paul53P Offline
                            paul53
                            schrieb am zuletzt editiert von paul53
                            #42

                            @chemieka sagte: bei der Mittelwertsberechnung kommt dann kein wert:

                            Lass die Konvertierung "nach String" weg.

                            @homoran sagte in Gleitender Durchschnitt mit Blockly:

                            liefert der Sensor die Werte als Zahl?

                            "ACTUAL_TEMPERATURE" liefert Zahlen.

                            @chemieka sagte in Gleitender Durchschnitt mit Blockly:

                            TypeError: Liste.push is not a function

                            Dann steht im Listen-Datenpunkt etwas, was dort nicht rein gehört (keine Liste ist). Lösche den Wert komplett oder trage [] ein. "MittelTempMonat" ist vom Typ "array"?

                            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                            C 1 Antwort Letzte Antwort
                            0
                            • paul53P paul53

                              @chemieka sagte: bei der Mittelwertsberechnung kommt dann kein wert:

                              Lass die Konvertierung "nach String" weg.

                              @homoran sagte in Gleitender Durchschnitt mit Blockly:

                              liefert der Sensor die Werte als Zahl?

                              "ACTUAL_TEMPERATURE" liefert Zahlen.

                              @chemieka sagte in Gleitender Durchschnitt mit Blockly:

                              TypeError: Liste.push is not a function

                              Dann steht im Listen-Datenpunkt etwas, was dort nicht rein gehört (keine Liste ist). Lösche den Wert komplett oder trage [] ein. "MittelTempMonat" ist vom Typ "array"?

                              C Offline
                              C Offline
                              chemieka
                              schrieb am zuletzt editiert von chemieka
                              #43

                              @paul53
                              leider keine Änderung

                              6.jpg
                              7.jpg

                              Bei mir ist es in Deutsch und Array ist Zeichenkette? Das habe ich so.

                              paul53P C 2 Antworten Letzte Antwort
                              0
                              • C chemieka

                                @paul53
                                leider keine Änderung

                                6.jpg
                                7.jpg

                                Bei mir ist es in Deutsch und Array ist Zeichenkette? Das habe ich so.

                                paul53P Offline
                                paul53P Offline
                                paul53
                                schrieb am zuletzt editiert von paul53
                                #44

                                @chemieka sagte: Bei mir ist es in Deutsch und Array ist Zeichenkette?

                                Nein, "array" ist eine Liste. Nach Typ-Änderung den Wert löschen oder []!

                                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                1 Antwort Letzte Antwort
                                0
                                • C chemieka

                                  @paul53
                                  leider keine Änderung

                                  6.jpg
                                  7.jpg

                                  Bei mir ist es in Deutsch und Array ist Zeichenkette? Das habe ich so.

                                  C Offline
                                  C Offline
                                  chemieka
                                  schrieb am zuletzt editiert von
                                  #45

                                  @chemieka
                                  Nehme ich aber nicht Zeichenkette sondern Liste geht schon mal die Variable MittelTempMonat
                                  Aber er spuckt mir keinen Mittelwert aus.

                                  22:24:40.009 warn javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:21:3)
                                  22:24:50.004 warn javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:21:3)
                                  22:24:50.014 error javascript.0 (30115) script.js.javascript.MittelTemp: TypeError: Liste.push is not a function
                                  22:24:50.015 error javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:17:9)
                                  22:25:00.005 error javascript.0 (30115) script.js.javascript.MittelTemp: TypeError: Liste.push is not a function
                                  22:25:00.006 error javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:17:9)
                                  22:25:00.019 warn javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:21:3)

                                  paul53P C 2 Antworten Letzte Antwort
                                  0
                                  • C chemieka

                                    @chemieka
                                    Nehme ich aber nicht Zeichenkette sondern Liste geht schon mal die Variable MittelTempMonat
                                    Aber er spuckt mir keinen Mittelwert aus.

                                    22:24:40.009 warn javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:21:3)
                                    22:24:50.004 warn javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:21:3)
                                    22:24:50.014 error javascript.0 (30115) script.js.javascript.MittelTemp: TypeError: Liste.push is not a function
                                    22:24:50.015 error javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:17:9)
                                    22:25:00.005 error javascript.0 (30115) script.js.javascript.MittelTemp: TypeError: Liste.push is not a function
                                    22:25:00.006 error javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:17:9)
                                    22:25:00.019 warn javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:21:3)

                                    paul53P Offline
                                    paul53P Offline
                                    paul53
                                    schrieb am zuletzt editiert von
                                    #46

                                    @chemieka sagte: keinen Mittelwert

                                    Der Datenpunkt ist vom Typ Zahl ("number")?

                                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                                    C 1 Antwort Letzte Antwort
                                    0
                                    • C chemieka

                                      @chemieka
                                      Nehme ich aber nicht Zeichenkette sondern Liste geht schon mal die Variable MittelTempMonat
                                      Aber er spuckt mir keinen Mittelwert aus.

                                      22:24:40.009 warn javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:21:3)
                                      22:24:50.004 warn javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:21:3)
                                      22:24:50.014 error javascript.0 (30115) script.js.javascript.MittelTemp: TypeError: Liste.push is not a function
                                      22:24:50.015 error javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:17:9)
                                      22:25:00.005 error javascript.0 (30115) script.js.javascript.MittelTemp: TypeError: Liste.push is not a function
                                      22:25:00.006 error javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:17:9)
                                      22:25:00.019 warn javascript.0 (30115) at Object.<anonymous> (script.js.javascript.MittelTemp:21:3)

                                      C Offline
                                      C Offline
                                      chemieka
                                      schrieb am zuletzt editiert von
                                      #47

                                      @chemieka

                                      Ich glaube so stimmen die Ergebnisse:
                                      8.jpg

                                      Kommen aber dennoch Alarme auch wenn die Werte wohl jetzt stimmen. Ohne String kommen noch mehr Alarme.

                                      HomoranH paul53P B 3 Antworten Letzte Antwort
                                      0
                                      • paul53P paul53

                                        @chemieka sagte: keinen Mittelwert

                                        Der Datenpunkt ist vom Typ Zahl ("number")?

                                        C Offline
                                        C Offline
                                        chemieka
                                        schrieb am zuletzt editiert von
                                        #48

                                        @paul53
                                        ja ist es

                                        1 Antwort Letzte Antwort
                                        0
                                        • C chemieka

                                          @chemieka

                                          Ich glaube so stimmen die Ergebnisse:
                                          8.jpg

                                          Kommen aber dennoch Alarme auch wenn die Werte wohl jetzt stimmen. Ohne String kommen noch mehr Alarme.

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

                                          @chemieka da ust ja immer noch nach String beim Mittelwert

                                          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
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          888

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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