Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Offensichtlich grundlegend was nicht verstanden

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Offensichtlich grundlegend was nicht verstanden

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

      Hallo,
      ich hatte eigentlich gedacht, dass ich einen Countdown zum Abschalten der Pool Pumpe mit links mittels Blocky gelöst bekomme, leider scheine ich doch grundlegend irgendwas bzgl Blocky nicht zu verstehen.
      Ich habe per Hand unter 0_userdata.0 einen Datenpunkt vom Typ Zahl erstellt und erstmal im HABpanel einen Schieberegler angelegt, der diesen Datenpunkt mit einem Wert von 0-180 befüllen kann. Das funktioniert auch soweit.
      Ich habe dann folgendes Blocky Programm zusammen geklickt, das jede Minute aufgerufen wird:
      Bildschirmfoto vom 2021-08-04 13-32-55.png

      1. Wenn der Wert größer 0 ist zähle ihn ein runter
      2. Wenn der Wert dann 0 ist schalte die Pumpe aus

      Aus mit unerklärlichen Gründen funktioniert es aber nicht. Es werden zwar die verbleibenden Minuten runter gezählt, aber sobald ich 0 erreiche erfolgt schon nicht mehr der 2. debug output im Programm. Hier die Log Ausgabe:
      Bildschirmfoto vom 2021-08-04 13-31-20.png

      Wird der ganze Falls-Block terminiert sobald die Falls Bedingung nicht mehr zutrifft? Ich hatte das "falls ... machen" als "if ... then" aufgefasst.
      Oder habe ich hier etwas anderes falsch gemacht?

      Vielen Danke schon einmal für eure Hilfe

      A paul53 2 Replies Last reply Reply Quote 0
      • A
        Ahnungsbefreit @bubiman last edited by

        @bubiman said in Offensichtlich grundlegend was nicht verstanden:

        aber sobald ich 0 erreiche erfolgt schon nicht mehr der 2. debug output im Programm

        Da Du auf "pool = wahr" prüfst, das aber nicht setzt, ist die Bedingung nie wahr.

        Grundsätzlich würde ich das so umbauen, dass nicht jede Minute triggerst sondern bei Aktualisierung von "pool_aus_in_min". Allerdings musst Du dann aufpassen, dass Du keine Endlosschleife baust, da "pool_aus_in_min" ja in dem Script geändert wird.

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

          @bubiman sagte: habe ich hier etwas anderes falsch gemacht?

          "steuere" arbeitet asynchron, ist also noch nicht fertig, wenn der Wert wieder eingelesen wird. Deshalb verwendet man Variablen, etwa so:

          Bild_2021-08-04_140931.png

          Dr. Bakterius 1 Reply Last reply Reply Quote 0
          • Dr. Bakterius
            Dr. Bakterius Most Active @paul53 last edited by Dr. Bakterius

            @paul53 sagte in Offensichtlich grundlegend was nicht verstanden:

            "steuere" arbeitet asynchron, ist also noch nicht fertig, wenn der Wert wieder eingelesen wird. Deshalb verwendet man Variablen

            Genau, oder man macht die Abfrage anders. 'Falls Wert > 1 dann Wert -1 / sonst Wert = 0 und ausschalten'. Da spart man sich die Variable und eine zweite Abfrage. 😉

            B 1 Reply Last reply Reply Quote 0
            • B
              bubiman @Dr. Bakterius last edited by

              @dr-bakterius @paul53
              Danke für euren Hinweis, ich weiß nicht wann ... falls überhaupt ... ich darauf gekommen wäre, dass das asynchron läuft. Habe es jetzt umgeschrieben mit Variable und so funktioniert es auch

              1 Reply Last reply Reply Quote 0
              • B
                bubiman @Ahnungsbefreit last edited by

                @ahnungsbefreit

                "Pool" ist in dem Falle die HS110 Steckdose, in der die Poolpumpe steckt. Damit wollte ich prüfen ob sie überhaupt aktuell eingeschaltet ist.

                Habe es jetzt wie von @paul53 beschrieben geändert und nun läuft es.

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

                Support us

                ioBroker
                Community Adapters
                Donate

                833
                Online

                32.0k
                Users

                80.5k
                Topics

                1.3m
                Posts

                4
                6
                379
                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