Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. lookup Table?

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    lookup Table?

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      bernd33-1 @bernd33-1 last edited by

      @bernd33-1 hmmm.... diese Formel hat ja Excel ausgegeben:

      eab45d74-19e7-405d-a962-75bb802fced5-image.png

      Dann ist dies doch das selbe oder?

      y = 4e-19x^5 - 3e-14x^4 +e-9x^3 -e-5x^2 + 0,0984x +0,2186

      Das sieht optisch aber mega komisch aus und wenn ich diese Gleichung in einen online Funktionsplotter eingebe, dann kommt Kurve raus, die auf der Y-Achse quasi senkrecht nach oben schießt.

      Schreibe ich das so um, dass es wenigstens optisch besser aussieht:

      y = 4e^(-19x^5)-3e^(-14x^4)+e^(-9x^3)-e^(-5x^2)+0.0984x+0.2186

      Dann kommt im Online Funktionsplotter https://www.mathe-fa.de/de auch nur Müll raus.

      Hat jemand einen Tipp, wo ich den Fehler mache?

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @bernd33-1 last edited by paul53

        @bernd33-1
        Ich vermute, dass die Formel so aussehen muss:

        y = 0.2186 + 0.0984 * x - 10^-5 * x^2 + 10^-9 * x^3 - 3 * 10^-14 * x^4 + 4 * 10^-19 * x^5
        

        wobei mich mich die glatten Faktoren ab x² wundern.
        Allgemein sieht ein Näherungs-Polynom so aus:

        y = a + b * x + c * x^2 + d * x^3  ...
        
        B 1 Reply Last reply Reply Quote 0
        • B
          bernd33-1 @paul53 last edited by

          @paul53 said in lookup Table?:

          0.2186 + 0.0984 * x - 10^-5 * x^2 + 10^-9 * x^3 - 3 * 10^-14 * x^4 + 4 * 10^-19 * x^5

          Ne, wenn ich das in den Funktionsplotter eingebe, dann sind die Y-Werte viel zu hoch.

          Kann es sein, dass Excel da ein Problem hat???

          Hier meine Zahlenwerte mal zum copy pasten. Vielleicht hat ja jemand Lust da ein Auge drauf zu werfen 🙄

          500 53
          600 56
          700 61
          800 67
          900 72
          1000 78
          2000 160
          2250 167
          2500 174
          2600 177
          2750 181
          3000 185
          3500 225
          4000 231
          5000 246
          6000 263
          7000 278
          8000 294
          9000 312
          10000 334
          11000 354
          13000 381
          14000 404
          15000 429
          16000 465
          17000 497
          18000 525
          19000 558
          20000 588
          25000 739

          1 Reply Last reply Reply Quote 0
          • B
            bernd33-1 last edited by bernd33-1

            Ok, nachdem das mit Excel und Trendlinie nicht klappt, habe ich den Vorschlag von @mickym aufgegriffen und mach das nun mit einer Liste. Hier das Blockly:

            aa936f89-7262-4d89-b283-9a1a6e4a6473-image.png

            Klappt ganz gut 👍 😊

            Der Stromzähler sagt, wieviel Strom gerade aus dem Netz bezogen wird. Zu diesem Wert addiere ich dazu, wieviel Strom der Sun 1000 bereits einspeist. Damit weis ich den "neuen" Gesamtverbrauch und kann den SUN 1000 entsprechend einstellen. PERFEKT!
            Ich hab noch eine Begrenzung eingebaut, da ich nicht möchte, dass der Sun 1000 mehr als 700W (DAC-Wert 24000) einspeist.

            Vielen lieben Dank an alle für die Unterstützung!

            Grüße, Bernd

            mickym 1 Reply Last reply Reply Quote 0
            • mickym
              mickym Most Active @bernd33-1 last edited by

              @bernd33-1 Ich hatte hier noch eine Version, wobei die Schleife abgebrochen wird, wenn der letzte gültige Wert gefunden wurde:

              https://forum.iobroker.net/post/887492

              B 1 Reply Last reply Reply Quote 0
              • B
                bernd33-1 @mickym last edited by

                @mickym said in lookup Table?:

                @bernd33-1 Ich hatte hier noch eine Version, wobei die Schleife abgebrochen wird, wenn der letzte gültige Wert gefunden wurde:

                https://forum.iobroker.net/post/887492

                Ups...stimmt 🙂 aber ich war grad so happy, dass das jetzt so easy funktioniert, dass ich den Post einfach "raushauen musste" 🙂

                Kleine Frage noch: Da kommen immer Java Warnings. Was könnte das sein?
                86ff2900-3a29-433b-abff-914a8be17b49-image.png

                Grüße, Bernd

                mickym paul53 2 Replies Last reply Reply Quote 0
                • mickym
                  mickym Most Active @bernd33-1 last edited by mickym

                  @bernd33-1 Bei der warnung kann ich Dir nicht viel helfen - wie gesagt ich nutze das JS ja sonst nicht. Vielleicht schaust mal in den JS Code des Blocklies, was da in Zeile 26 steht.

                  Dieses Teil kannst Du Dir in meinen Augen sparen:

                  532c464a-4a2c-4270-84b1-c304c8b6932d-image.png

                  Wenn Du in deiner Liste einfach den Wert 25000 durch 24000 ersetzt, wird max. 24000 rauskommen - auch wenn als Watt mehr als 739 rauskommen.

                  B 1 Reply Last reply Reply Quote 0
                  • B
                    bernd33-1 @mickym last edited by

                    @mickym Ich lass mal die Begrenzung mit 24000 so drin. Vielleicht will ich im Sommer, wenn ich viel Strom zur Verfügung hab die Grenze weiter nach oben setzen. Oder vielleicht eine Variable Begrenzung je nach Akku-Ladestatus....

                    Die obigen Warnings kommen in dieser Java-Zeile:

                    setState("mqtt.0.sun1000esp.number.dac_number.command"/*sun1000esp/number/dac_number/command*/, parseFloat(neuer_DAC_Wert));
                    
                    mickym 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @bernd33-1 last edited by

                      @bernd33-1 sagte: Java Warnings. Was könnte das sein?

                      Im Tab "Protokolle" findet man weitere Informationen zur Warnung.
                      Vermutung: Der Datenpunkt ist nicht vom Typ "number".

                      B 1 Reply Last reply Reply Quote 0
                      • mickym
                        mickym Most Active @bernd33-1 last edited by

                        @bernd33-1 Ok - dann scheint, dass aus dem letzten Befehl zu kommen, wo Du mit "steuere" in den Datenpunkt des mqtt-Adapters schreibst.

                        1 Reply Last reply Reply Quote 0
                        • B
                          bernd33-1 @paul53 last edited by

                          @paul53 said in lookup Table?:

                          @bernd33-1 sagte: Java Warnings. Was könnte das sein?

                          Im Tab "Protokolle" findet man weitere Informationen zur Warnung.
                          Vermutung: Der Datenpunkt ist nicht vom Typ "number".

                          🤦 Jo...das war es:

                          You are assigning a number to the state "mqtt.0.sun1000esp.number.dac_number.command" which expects a string. Please fix your code to use a string or change the state type to number. This warning might become an error in future versions.
                          
                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          822
                          Online

                          32.0k
                          Users

                          80.5k
                          Topics

                          1.3m
                          Posts

                          6
                          34
                          1521
                          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