Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Daten aus Url abfragen und in Datenpunkt schreiben

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Daten aus Url abfragen und in Datenpunkt schreiben

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators @keksn last edited by

      @keksn sagte in Daten aus Url abfragen und in Datenpunkt schreiben:

      Wie würde man das am besten machen,

      ist da nichts dabei?
      https://forum.iobroker.net/search?term=günstigste stunden tibber&in=titlesposts

      keksn 1 Reply Last reply Reply Quote 0
      • keksn
        keksn @Homoran last edited by

        @homoran es dürfte aber einen Awattar Adapter geben der mit dem AT link die gleichen Preise wie bei Smart Energy abfragt..

        1 Reply Last reply Reply Quote 0
        • keksn
          keksn last edited by

          @paul53 Hallo, ich habe nun den Awattar Adapter als Abfrage für die Strompreise installiert. Die Werte sind die selben die auch mein Stromanbieter hat.

          Du hast da ja da schon ein Script zur Steuerung von Verbrauchern über den günstigsten Preis erstellt.

          Bildschirmfoto 2023-10-28 um 07.59.26.png

          Ich will eigentlich mit den günstigsten Preisen nicht direkt Verbraucher betreiben, sonder Batterien laden. (Auto und Inverter Batterie).

          Wie müsste man das Script umbauen, dass es Wahlweise eine oder mehrere Stunden die unter dem Schwellwert sind, aber nicht zwingend aufeinanderfolgend sind, auswählt und dann einen Datenpunkt für diese Zeiten aktualisiert? Im optimal Fall auch noch mit einem zu definierenden Zeitraum. zB. 0:00-7:00 Uhr.?

          So wäre es möglich eine gewissen SOC der Batterie über die günstigsten Stunden zu laden. Wenn ich ca. 30% aufladen will (100KWh Autobatterie) mit den günstigsten Stunden von zB. 0:00-7:00 Uhr, dann würde ich die günstigsten 3 Stunden in diesem Zeitraum benötigen ( bei 11kW Ladeleistung und 100kWh Batterie).

          Wäre top wenn Du mir da helfen könntest, auch wenn Homoran will das ich es selber lerne denke ich, dass ich da kein Ende finde....beziehungsweise morgens eine ungeladene Batterie haben werde.  😉

          paul53 Homoran 3 Replies Last reply Reply Quote 0
          • paul53
            paul53 @keksn last edited by paul53

            @keksn sagte: mehrere Stunden die unter dem Schwellwert sind, aber nicht zwingend aufeinanderfolgend sind

            Dann ist der Ansatz in diesem Skript einfacher zu realisieren. Anstelle der festen Vergleichswerte kann der Wert (Stunden) aus einem Datenpunkt verwendet werden.
            EDIT: Wenn es allerdings auf bestimmte Tageszeiten eingeschränkt werden soll, wird es komplizierter.

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

              @keksn
              Ich habe mal ein Blockly entworfen, das um 19:00 Uhr und bei Skriptstart die API-Werte einliest, in einer nachtListe die Objekte von heute 20:00 Uhr bis morgen 5:00 Uhr (10 Objekte) speichert und zum Schluss nach Preis sortiert.
              In einem Stunden-Trigger wird dann die volle Stunde zu den sortierten Objekten ermittelt und - falls sie zu den niedrigsten gehört - die Ladung aktiviert.

              Blockly_temp.JPG

              Inhalt der Javascript-Funktion sortObjectNum(arr,attr):

              function sortAttr(a, b) {
                  return parseFloat(a[attr]) - parseFloat(b[attr]);
              }
              arr.sort(sortAttr);
              

              Der Datenpunkt "Dauer" muss ganzzahlige Stunden 1 ... 9 enthalten.

              keksn 4 Replies Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators @keksn last edited by

                @keksn sagte in Daten aus Url abfragen und in Datenpunkt schreiben:

                auch wenn Homoran will das ich es selber lerne denke ich, dass ich da kein Ende finde..

                versuch es doch!
                Rom ist auch nicht an einem Tag erbaut worden

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

                  @paul53 Genial, vielen Dank!! Ich baue jetzt mal nach.

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

                    @paul53 Wo finde ich, oder ie mache ich diesen Baustein? (Datum/Zeit)

                    Bildschirmfoto 2023-10-28 um 19.50.22.png

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

                      @paul53 habs...danke in Konvertierung

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

                        @paul53 Den letztenBlock finde ich nicht beziehungsweise kann ich nicht erstellen.

                        Bildschirmfoto 2023-10-28 um 20.26.45.png

                        Bildschirmfoto 2023-10-28 um 20.27.42.png

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

                          @keksn
                          Das ist die Javascript-Funktion mit zwei Parametern:

                          Blockly_temp.JPG

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

                            @paul53 ah ich habe beide in eine Variable geschrieben...darum danke!

                            Wäre es für Dich einfacher gewesen die Datenpunkte de Awattar Adapters zu verwenden?

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

                              @keksn sagte: Wäre es für Dich einfacher gewesen die Datenpunkte de Awattar Adapters zu verwenden?

                              Nein, so hat man alles in einer Liste und muss nicht verschiedene Datenpunkte auslesen.

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

                                @paul53 nein mir ist es gleich. Gibt es auch eine Möglichkeit zu sehen wann geladen wird ?

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

                                  @keksn sagte: Gibt es auch eine Möglichkeit zu sehen wann geladen wird ?

                                  Gib per Debug-Block die sortierte Liste aus. Wenn z.B. 3 Stunden geladen werden soll, sind es die ersten 3 Einträge in der Liste.

                                  Blockly_temp.JPG

                                  [{'date':'2023-10-29T03:00:00+01:00','value':0.64},{'date':'2023-10-29T04:00:00+01:00','value':0.683},{'date':'2023-10-29T05:00:00+01:00','value':0.688},
                                  

                                  ... also morgen von 3 bis 6 Uhr.

                                  keksn 2 Replies Last reply Reply Quote 0
                                  • keksn
                                    keksn @paul53 last edited by

                                    @paul53 Danke!!

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

                                      @paul53

                                      ich dürfte da einenFehler eingebaut haben. Bei mir wir das <angezeigt. Ich habe 3 beim Datenpunkt eingegeben.

                                      javascript.0 (451) script.js.Verschiedenes.Tesal_Nachtladen_Netz: [{'date':'2023-10-29T03:00:00+01:00','value':0.64},{'date':'2023-10-29T04:00:00+01:00','value':0.683},{'date':'2023-10-29T05:00:00+01:00','value':0.688},{'date':'2023-10-29T02:00:00+01:00','value':0.751},{'date':'2023-10-29T01:00:00+02:00','value':2.256},{'date':'2023-10-29T00:00:00+02:00','value':5.887},{'date':'2023-10-28T21:00:00+02:00','value':8.854},{'date':'2023-10-28T20:00:00+02:00','value':10.441},{'date':'2023-10-28T23:00:00+02:00','value':10.441},{'date':'2023-10-28T22:00:00+02:00','value':10.451}]
                                      

                                      Bildschirmfoto 2023-10-28 um 22.50.14.png

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

                                        @keksn sagte: Bei mir wir das <angezeigt

                                        Das passt doch.

                                        @keksn sagte in Daten aus Url abfragen und in Datenpunkt schreiben:

                                        ich dürfte da einenFehler eingebaut haben.

                                        "die Schleife abbrechen" muss in die Prüfung der Stunde.

                                        Blockly_temp.JPG

                                        Lies die Liste vor 20:00 Uhr ein!

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

                                          @paul53 ich habe den Zeitplan nur zum testen umgestellt. steht jetzt wieder auf 19:00h.
                                          Warum werden bei nir aber dann mehr als 3 Werte angezeigt?

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

                                            @keksn sagte: Warum werden bei nir aber dann mehr als 3 Werte angezeigt?

                                            Die Liste enthält immer 10 Werte. Ich hatte oben nur die ersten 3 gezeigt.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            881
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            3
                                            114
                                            6792
                                            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