Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Script zyklisch per variabler Zeit steuern

    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

    Script zyklisch per variabler Zeit steuern

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      tors7en last edited by

      Hallo zusammen,
      ich arbeite schon einige Zeit erfolgreich mit Blockly, habe aber nun ein Problem, das ich nicht verstehe:

      Ziel: Ein Script soll zyklisch, jedoch variablen Abständen laufen.
      Dafür habe ich einen Datenpunkt erzeugt.
      Das Script läuft auch in einer Schleife mit dem Intervall aus dem Datenpunkt (z.B. 1.000 Sekunden).
      Ändere ich während der Laufzeit denDatenpunkt auf z.B. 2.000 Sek. so hat das keinen Einfluß auf das Script.
      Erst, wenn das Script angehalten und wieder gestartet wird, wird der neue Wert berücksichtigt.

      Wie kan nich das lösen?

      Vielen Dank

      Hier das Script in Kurzform.
      Blockly.jpg

      paul53 Codierknecht OliverIO T 4 Replies Last reply Reply Quote 0
      • paul53
        paul53 @tors7en last edited by

        @tors7en sagte: Wie kan nich das lösen?

        Man muss das laufende Intervall stoppen und mit der neuen Zykluszeit neu starten.

        Blockly_temp.JPG

        1 Reply Last reply Reply Quote 2
        • Codierknecht
          Codierknecht Developer Most Active @tors7en last edited by

          @tors7en
          Verrätst Du uns auch, was Du damit machst?
          Ein Intervall ist nicht unbedingt ressourcensparend. Das könnte man evtl. besser lösen.

          1 Reply Last reply Reply Quote 1
          • OliverIO
            OliverIO @tors7en last edited by

            @tors7en

            timeout ist besser wie intervall.
            dann kannst du bei jedem durchgang neu entscheiden, wann das skript das nächste mal ausgeführt wird.
            mit intervall hat man manchmal das risiko eines memory leaks. timeout beendet sich immer safe

            1 Reply Last reply Reply Quote 1
            • T
              tors7en @tors7en last edited by

              Vielern Dank für Euer Feeback.
              Ich werden das testen und umsetzen und berücksichtigen.

              Was mache ich damit:
              Ich steuere damit den Überschuss aus meiner PV-Anlage zum PKW laden.
              Per diesem Parameter möchte ich steuern, wie oft bzw. in welchem Zyklus die Berechnung durchgeführt bzw. der Ladestrom angepasts wird.
              Eingeben möchte ich den Wert über einen Datnpunkt im vis, was bereits funktioniert, nur eben mit dem o.g. Problem.

              Asgothian 1 Reply Last reply Reply Quote 0
              • Asgothian
                Asgothian Developer @tors7en last edited by Asgothian

                @tors7en sagte in Script zyklisch per variabler Zeit steuern:

                Vielern Dank für Euer Feeback.
                Ich werden das testen und umsetzen und berücksichtigen.

                Was mache ich damit:
                Ich steuere damit den Überschuss aus meiner PV-Anlage zum PKW laden.
                Per diesem Parameter möchte ich steuern, wie oft bzw. in welchem Zyklus die Berechnung durchgeführt bzw. der Ladestrom angepasts wird.
                Eingeben möchte ich den Wert über einen Datnpunkt im vis, was bereits funktioniert, nur eben mit dem o.g. Problem.

                An dieser Stelle würde ich vollständig auf ein Intervall / timeout verzichten. Wie funktioniert es dann ?

                Du benötigst einen Datenpunkt in dem du ablegst was die Berechnung ergibt. Dazu kannst du nicht den Datenpunkt des Ladestroms nutzen, da dieser nur dann sinnvoll gefüllt ist wenn auch geladen werden soll - sprich ein Auto ist angeschlossen.

                Ansonsten folgt das Skript dem folgenden Muster:

                • Trigger auf Änderung des Überschusses
                • Vergleich: Zeitstempel letzte Aktualisierung des "Ergebnis Datenpunkt" zu jetzt. Ist die Zeitspanne grösser als in der Vis angegeben: Neuberechnung anstossen. Ist sie es nicht, nix tun.

                A.

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

                Support us

                ioBroker
                Community Adapters
                Donate

                933
                Online

                31.9k
                Users

                80.1k
                Topics

                1.3m
                Posts

                5
                6
                286
                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