Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [Gelöst]Batteriespeichersimulation mit AMIS-Daten in Blockly

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Gelöst]Batteriespeichersimulation mit AMIS-Daten in Blockly

    This topic has been deleted. Only users with topic management privileges can see it.
    • G
      GOETSCHHOFER @dslraser last edited by GOETSCHHOFER

      @dslraser said in Batteriespeichersimulation mit AMIS-Daten in Blockly:

      @goetschhofer
      Ja, einmal vergleichst Du mit größer/gleich und einmal mit kleiner/gleich....
      Da muß doch dann was anderes rauskommen.
      Ich verstehe nicht was Du mir damit sagen willst ?

      Hätte deinen Rat schon früher befolgen sollen, habe mir jetzt einen Test-Datenpunkt TEST_ENTLADUNG_W angelegt.
      Ist eine tolle Sache 👍 , denn hier kann man Trockenschwimmtraining machen. 😀
      59d4758b-2545-4e14-b473-f3021ba30361-image.png

      1. Variante:

      Die Abfrage lautet doch, ob der abgefragte Werte -3500 zwischen 0 und -2.500 liegt, , hier kommt "wahr" heraus.
      Dieser Wert liegt ja nicht zwischen diesen beiden Werten, da müsste doch "falsch" herauskommen ?
      Oder verstehe ich das Ergebnis "wahr" und "falsch" nicht korrekt ? 🤔
      Interessant ist für mich, dass es bei der Vergleichsfunktion bei der Abfrage der positiven Werten keine Probleme gibt.
      cda0884f-d796-46b4-9d74-38e08ed021b4-image.png
      8b4775e2-f453-4752-b37e-61c3f4319a1d-image.png
      3f31404c-1ae3-4019-a3d7-ba3e715b64a4-image.png

      Du bekommst auch als Ergebnis "wahr".
      9d96ae8f-d770-458a-a5b8-609b601d6cba-image.png

      2. Variante:
      Die Abfrage lautet hier, ob der abgefragte Werte -2000 zwischen 0 und -2.500 liegt, hier kommt "falsch" heraus.
      Dieser Wert liegt ja zwischen diesen beiden Werten, da müsste doch "wahr" herauskommen ?

      c05bb091-b684-45b3-9f91-2fbf4851b2af-image.png
      6565df53-cd24-43ef-a404-24e13ae5bae0-image.png
      094d4d6f-4f43-4f94-b156-b96ff1f90d05-image.png

      54413799-3c56-449a-ae51-ffa39d86420f-image.png

      Sorry, hier stehe ich wahrscheinlich auf dem Schlauch.

      G dslraser 2 Replies Last reply Reply Quote 0
      • G
        GOETSCHHOFER @GOETSCHHOFER last edited by

        @dslraser

        Das Skript läuft jetzt bei der Be- und Entladung so, wie ich mir dies vorstelle, auch mit der Begrenzung der maximalen Beladung (+2500 W) und der maximalen Entladeleistung (- 2.500 W).
        Bei der Entladung mit <0 und >=-2500. Mit größer gleich -2500 Grenze ich die Werte zwischen 0 und -2500 ein.

        705bddd2-4c77-4be3-914c-e588877871fb-image.png

        BLOCKLY_BAT_SMU_20.9.2021-17h00.txt

        4. BAT_SIMU_1-20.9.2021-17h10.gif

        1 Reply Last reply Reply Quote 0
        • dslraser
          dslraser Forum Testing Most Active @GOETSCHHOFER last edited by dslraser

          @goetschhofer sagte in Batteriespeichersimulation mit AMIS-Daten in Blockly:

          Die Abfrage lautet hier, ob der abgefragte Werte -2000 zwischen 0 und -2.500 liegt, hier kommt "falsch" heraus.
          Dieser Wert liegt ja zwischen diesen beiden Werten, da müsste doch "wahr" herauskommen ?

          Nein, Du fragst Sinngemäß ab ob -2.000 kleiner oder gleich -2500 ist und -2.000 kleiner oder gleich 0 ist. (das erste ist falsch und das zweite ist richtig) Da beide Werte stimmen müssen (und) ist das Ergebnis falsch. So meine Erklärung dazu.

          G 1 Reply Last reply Reply Quote 1
          • G
            GOETSCHHOFER @dslraser last edited by

            @dslraser

            Da ich ja vor 5 Jahren bereits eine Batteriespeichersimulation in Excel mit mtl. 90.000 Datensätzen erstellt habe, kann ich mich noch düster erinnern, dass ich das Gleiche Problem mit der Vergleichsfunktion mit negativen Werten hatte.

            Habe mir das ganze nochmals in Excel aufbereitet und hier ist es das Gleiche, dass man meines Erachtens bei Abfrage eines negativen Wertes zwischen 0 und -2500, mit <0 und >=-2500 arbeiten muss.

            Ich interpretiere dies so, dass eine Minuszahl das <= in >= umdreht.

            a9fb8a72-0140-4dda-8c42-0d2fc027a92f-image.png

            VERGLEICHSFUNKTION mit positiven und negativen Zahlen-20.9.2021.xlsx

            Ich mache monatlich Auswertungen der Strompreise für A und D und hier frage ich auch die negativen Preise mit <0 und >=z. B. -10 Euro/MWh ab, also welche Werte liegen zwischen 0 und -10.
            Also nicht 2 x kleiner gleich, sondern 1 x <0 und anschließend >=negativer Wert.

            Das spannende an der Sache ist ja, dass es mit dieser Logik im Blockly fehlerfrei funktioniert.

            Danke für deine Hilfe.

            dslraser 1 Reply Last reply Reply Quote 0
            • dslraser
              dslraser Forum Testing Most Active @GOETSCHHOFER last edited by

              @goetschhofer
              Ich habe nochmal bei den role für die Datenpunkte nachgelesen.

              https://www.iobroker.net/#de/documentation/dev/stateroles.md

              value.power.consumption (Einheit = Wh oder kWh)

              Screenshot_20210921-111547_Chrome.jpg

              Kannst Du ja noch anpassen.

              1 Reply Last reply Reply Quote 1
              • G
                GOETSCHHOFER last edited by GOETSCHHOFER

                @dslraser

                Danke für den Hinweis zur role "value.power.consumption".
                Interessant ist, dass er mir dies so nicht unter Auswahl role vorschlägt, sondern nur value.power, daher habe ich diese Auswahl bei der Anlage eingetragen, aber dies kann man ja, so wie ich jetzt festgestellt habe, durch Klick auf die Bezeichnung ändern.

                Offenbar haben die schon gewusst, dass so ein Verrückter wie ich komme und gleich Sicherheitshalber die role "value.power - Batteriestand" vorgesehen, echt Klasse.😀

                2426d617-cd8f-48c2-85a8-b0cf759a5344-image.png

                75a7042b-311f-4bf9-b555-977d2af875b2-image.png

                6bcf4fb0-dc1c-4f1b-9065-6646221eaee7-image.png

                Jetzt habe ich nur mehr eine abschließende Herausforderung den maximalen Batteriestand in die Abfrage einzubauen.
                Dies bedeutet, er darf bei der Beladung nicht z. B. über 5 kWh = 5.000 Wh kommen und bei der Entladung nicht unter Null.

                Aktuell fehlen diese 2 Begrenzungen noch.

                Was ich jetzt von dir an einem praktischen Beispiel und in einem Crashkurs Blockly gelernt habe 👍 , mit Variablen zu arbeiten.
                Gibt es die Möglichkeit auch mit Konstanten z. B. Maximaler Ladestand 5.000 Wh oder Beladewirkungsgrad 90 % oder Entladewirkungsgrad 90 % zu arbeiten ?

                Dann brauche ich die Zahlen nicht immer über eine Formel einzutragen und kann diese gleich am Beginn festlegen oder nach Wunsch verändern.

                Würde dies so funktionieren, wenn ich oben den "MAXIMALER LADESTAND" definiere und in eine falls mache .... Funktion einbaue ?
                6f76c894-cbe4-4f43-adaf-2a2f8058022c-image.png
                Ich muss ja korrekterweise beim Beladen immer abfragen ob BELADEN_Wh + SPEICHERSTAND_Wh <=5.000 Wh ist, wenn nicht, dann darf er nur die Differenz aus aktuellem und maximalen SPEICHERSTAND-Wh auf den SPEICHERSTAND_Wh zuschreiben.
                Sonst geht dieser über .........
                Beim Entladen ist es das Gleiche nur in die andere Richtung, hier darf er nicht unter Null kommen.
                Aktuell ist dies im Blockly noch möglich.

                Danke für die Hilfe.

                dslraser 1 Reply Last reply Reply Quote 0
                • dslraser
                  dslraser Forum Testing Most Active @GOETSCHHOFER last edited by

                  @goetschhofer sagte in Batteriespeichersimulation mit AMIS-Daten in Blockly:

                  Gibt es die Möglichkeit auch mit Konstanten z. B. Maximaler Ladestand 5.000 Wh oder Beladewirkungsgrad 90 % oder Entladewirkungsgrad 90 % zu arbeiten ?

                  ja, auch über Variablen, oder wenn Du die Zahlen auch ändern willst ohne dafür das Blockly zu stoppen, dann besser über eigene Datenpunkte, da kannst Du Deine gewünschten Werte eintragen und zum rechnen benutzen.

                  G 2 Replies Last reply Reply Quote 1
                  • G
                    GOETSCHHOFER @dslraser last edited by

                    @dslraser
                    O.k., danke dann werde ich mal beides testen.

                    1 Reply Last reply Reply Quote 0
                    • G
                      GOETSCHHOFER @dslraser last edited by GOETSCHHOFER

                      @dslraser said in Batteriespeichersimulation mit AMIS-Daten in Blockly:

                      @goetschhofer sagte in Batteriespeichersimulation mit AMIS-Daten in Blockly:

                      Gibt es die Möglichkeit auch mit Konstanten z. B. Maximaler Ladestand 5.000 Wh oder Beladewirkungsgrad 90 % oder Entladewirkungsgrad 90 % zu arbeiten ?

                      ja, auch über Variablen, oder wenn Du die Zahlen auch ändern willst ohne dafür das Blockly zu stoppen, dann besser über eigene Datenpunkte, da kannst Du Deine gewünschten Werte eintragen und zum rechnen benutzen.

                      Habe jetzt versucht, auch die Konstanten mit Variablen einzubauen und bei der Beladung den maximalen Ladestand bei 5.000 Wh abzufangen.
                      Die Begrenzung des Ladestandes mit 5.000 Wh funktioniert soweit in den Zahlen in den Objekten.

                      Aber hier bekomme ich trotzdem eine Fehlermeldung "get state -....." not found ?
                      Was kann dies bedeuten ?

                      Danke

                      DankeBATT_SIMU_1_TEST-22.9.2021-10h30.txt


                      e477772d-0162-4a9e-9d2d-3d61b18e3d3b-image.png


                      2950b041-4d2c-42c3-916e-93f483424502-image.png

                      dslraser 1 Reply Last reply Reply Quote 0
                      • dslraser
                        dslraser Forum Testing Most Active @GOETSCHHOFER last edited by dslraser

                        @goetschhofer

                        Screenshot_20210922-122606_Chrome.jpg

                        Wenn das die Variable ist, dann darfst Du da nicht Wert von Object ID nehmen, sondern nur die Variable. (ich bin gerade nur am Handy)

                        Screenshot_20210922-122606_Chrome.jpg

                        G 1 Reply Last reply Reply Quote 0
                        • G
                          GOETSCHHOFER @dslraser last edited by

                          @dslraser

                          @dslraser

                          Super, danke, dies hätte ich vor lauter Variablen und falls ..... nicht mehr gesehen.
                          Du hast eben einen scharfen Blick für solche Dinge. 😀

                          Kann man eine Variable nicht auch mit einer Berechnung dahinter definieren ?
                          Ich möchte das freie Ladepotential jedes mal vor Beladung ermitteln, damit wäre es eine Möglichkeit mit >= <=zu arbeiten; damit der Speicher nicht übergeht.

                          Das FREIES_LADE_POTENTIAL_Wh ist die VARIABLE und eben das Ergebnis aus: MAX_BATTERIE_LADESTAND_Wh abzüglich aktueller SPEICHER_STAND_Wh.

                          dslraser 1 Reply Last reply Reply Quote 0
                          • dslraser
                            dslraser Forum Testing Most Active @GOETSCHHOFER last edited by

                            @goetschhofer sagte in Batteriespeichersimulation mit AMIS-Daten in Blockly:

                            Kann man eine Variable nicht auch mit einer Berechnung dahinter definieren ?

                            Kann man...

                            G 1 Reply Last reply Reply Quote 1
                            • G
                              GOETSCHHOFER @dslraser last edited by

                              @dslraser said in Batteriespeichersimulation mit AMIS-Daten in Blockly:

                              @goetschhofer sagte in Batteriespeichersimulation mit AMIS-Daten in Blockly:

                              Kann man eine Variable nicht auch mit einer Berechnung dahinter definieren ?

                              Kann man...

                              Dann kann dies nicht der Fehler sein ?

                              Ich wüsste jetzt nicht, wie ich dies anders darstellen könnte.
                              848ef60b-1623-4b91-8bbc-4bbf98fc3e69-image.png

                              dslraser 1 Reply Last reply Reply Quote 0
                              • dslraser
                                dslraser Forum Testing Most Active @GOETSCHHOFER last edited by dslraser

                                @goetschhofer
                                Da ist immernoch Wert von Objekt ID drinn. Du fragst ja keinen Wert von einem Datenpunkt ab, sondern die Variable.

                                1632320420567-848ef60b-1623-4b91-8bbc-4bbf98fc3e69-image.png

                                Wert von Objekt ID weg und nur die Variable da rein.

                                G 1 Reply Last reply Reply Quote 1
                                • G
                                  GOETSCHHOFER @dslraser last edited by GOETSCHHOFER

                                  @dslraser

                                  Sorry, dies habe ich erst jetzt im 2. Anlauf verstanden. 🤕

                                  Einen Fehler habe ich noch, nur hier brauche ich den DP Speicherstand_Wh um das freie Entladepotential zu berechnen.

                                  Ich wüsste jetzt nicht, wie ich diesen DP ersetzen soll ?
                                  Braucht er hier eigene Variable mit Speicherstand_Wh anlegen ?

                                  Danke

                                  Rechnerisch dürfte es meines Erachtens schon stimmen.
                                  Ich habe dies mit Veränderung der Werte im Speicherstand_Wh bei Beladung mit max. Ladestand (5000 Wh) und Entladung_Wh (0) mit minimaler Ladestand getestet.


                                  77fef3aa-a047-4a54-93fd-a8b590254aba-image.png


                                  0eda0c91-4cdd-45fd-af9e-f688dc9fe636-image.png

                                  6. BLOCKLY_BAT_SIMU_1_TEST-22.9.2021-19h00.txt

                                  dslraser 1 Reply Last reply Reply Quote 0
                                  • dslraser
                                    dslraser Forum Testing Most Active @GOETSCHHOFER last edited by dslraser

                                    @goetschhofer
                                    Jetzt steht da zweimal hintereinander Wert von Objekt ID ?

                                    Screenshot_20210922-195730_Chrome.jpg

                                    Das erste muß weg

                                    G 1 Reply Last reply Reply Quote 1
                                    • G
                                      GOETSCHHOFER @dslraser last edited by GOETSCHHOFER

                                      @dslraser

                                      Jetzt läuft es fehlerlos, vielen Dank nochmals, für die Hilfe und vor allem deine Geduld mit mir. 👍 👍 👍
                                      Ich glaube da habe ich sicher zigmal darüber geschaut, aber irgendwann sieht man den Wald vor lauter Bäume nicht mehr.

                                      Habe das Blockly zwar strukturiert, aber jetzt wird es für mich schon sehr komplex
                                      und habe nun als Variable noch die Berechnung der Voll_Lade_Zyklen eingefügt, nur weist er mir hier keinen Wert aus ?.


                                      acaae5f6-37ed-4e07-8f81-f71987132983-image.png


                                      f9d45704-3a48-449f-a39a-9cc7078e1b10-image.png


                                      36432931-bc3f-40ee-b3f5-58dcab40929f-image.png


                                      f3d97500-97a8-4d26-9464-e86bc388842f-image.png

                                      7. BLOCKLY_BAT_SIMU_1_TEST-22.9.2021-20h50.txt

                                      Da habe ich mich zu früh gefreut, doch noch ein Fehler, aber jetzt bei den Voll_Lade_Zyklen.
                                      ff3ce150-34b2-40f7-9e36-6a76af917a45-image.png
                                      a0e09f4a-b1ba-494b-ad6b-741c13c8c68d-image.png


                                      21b087d1-7a75-43cc-95af-fa78f887315c-image.png

                                      dslraser 2 Replies Last reply Reply Quote 0
                                      • dslraser
                                        dslraser Forum Testing Most Active @GOETSCHHOFER last edited by

                                        @goetschhofer

                                        was ist das hier ? (gehört da nicht auch nur die Variable hin ?)

                                        Bildschirmfoto 2021-09-22 um 22.01.26.png

                                        G 1 Reply Last reply Reply Quote 1
                                        • dslraser
                                          dslraser Forum Testing Most Active @GOETSCHHOFER last edited by

                                          @goetschhofer
                                          ich habe Deine Datenpunkte nicht. kannst Du mal Deine beiden Ordner (erst einen und dann den anderen) exportieren (als json)
                                          Du klickst den Ordner mit den Datenpunkten an und dann auf den Pfeil ganz rechts (in den Objekten).
                                          Den Export stellst Du mal bitte hier rein.

                                          Bildschirmfoto 2021-09-22 um 22.03.44.png

                                          1 Reply Last reply Reply Quote 1
                                          • G
                                            GOETSCHHOFER last edited by

                                            @dslraser

                                            Jetzt habe ich wieder was dazugelernt, wie man Objekte ex- und importiert.

                                            Den letzten Stand Blockly nochmals anbei.

                                            Danke

                                            8. BLOCKLY_BAT_SIMU_1_TEST-22.9.2021-23h.txt

                                            0_userdata.0.AMIS-22.9.21-23h.json

                                            0_userdata.0.BATTERIE_SPEICHER-22.9.2021-23h.json

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            769
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            2
                                            120
                                            7082
                                            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