Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Blockly längere vergleich

    NEWS

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Blockly längere vergleich

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

      Hallo, ich habe einen Wert (der leider viel springt), den ich über längere Zeit vergleichen möchte. Sollte der Wert zwischenzeitlich wieder steigen, zum Beispiel >10, soll der vergleich stoppen.
      Derzeit habe ich es mit zwei Vergleichern am Laufen, was nicht die top Lösung ist. Der Wert wird alle 10 Sek. aktualisiert.
      Gibt es eine Möglichkeit, das Vergleichen über die gesamte Zeit laufen zu lassen ?

      c432658b-0a03-40a3-8638-3ad39841e4d4-grafik.png

      J Homoran 2 Replies Last reply Reply Quote 0
      • J
        JoergH @tourer4778 last edited by

        @tourer4778 Sorry, aber so ganz verstehe ich nicht, was Du machen willst.
        Soll es so sein, dass er zwei Werte vergleicht und zwar 10 mal und wenn Wert A immer niedriger als Wert B war "wahr" als Ergebnis liefert, jedoch wenn einer der Werte von A größer als B war, den Vergleich wieder neu anfängt?

        1 Reply Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators @tourer4778 last edited by

          @tourer4778 sagte in Blockly längere vergleich:

          Sollte der Wert zwischenzeitlich wieder steigen, zum Beispiel >10

          die Frage von @JoergH ist berechtigt.

          meinst du 20 - 18 - 17 - 15 - 8 - 7 - 9 - 10 - 12

          oder soll er aufhören, sobald der Wert wieder steigt (hier also 9) oder wenn er höher ist als der Startwert (hier also 20)?

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

            @homoran ...oder soll er immer weiter vergleichen bis er unter 10 kommt und bei 10 Werten drunter bleibt?

            T 1 Reply Last reply Reply Quote 0
            • T
              tourer4778 @JoergH last edited by

              Ja, sorry,
              gerade wollte ich noch einmal genau erklären, was ich überhaupt will und da ist mir die Lösung selbst eingefallen.
              Werde ich dann posten.
              Danke schon mal.

              Homoran 1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators @tourer4778 last edited by

                @tourer4778 sagte in Blockly längere vergleich:

                gerade wollte ich noch einmal genau erklären, was ich überhaupt will und da ist mir die Lösung selbst eingefallen.

                Das ist häufig so.

                Meistens liegt das "Problem" nämlich nicht an den fehlenden Programmierkenntnissen, sondern daran, dass man sich nicht strukturiert an die Sache heranbegibt.

                Kaum denkt man wie eine Maschine - schon klappt es

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

                  @homoran
                  Ja, da gebe ich dir recht.
                  Ist ja auch nicht so, als würde ich das jetzt mit stoppen der zeit zum erstenmal machen ...
                  d82f9f92-d0c6-44aa-8ca7-34d72e0e39f8-grafik.png

                  Homoran 1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @tourer4778 last edited by

                    @tourer4778 du willst also 45 Sekunden mit der Meldung warten, ob die Pellets vielleicht noch nachrutschen?

                    Füge unbedingt noch ein stop 10% vor dem Timeout hinzu.

                    Die zweite Variable wird erst nach 45 Sekunden auf false gesetzt.
                    Wenn in der Zwischenzeit das Timeout nochmal gestartet wird, weil ein zwiter Wert <10% kommt laufen mehrere Timeouts, die sich nie mehr stoppen lassen

                    T 2 Replies Last reply Reply Quote 0
                    • T
                      tourer4778 @Homoran last edited by

                      @homoran sagte in Blockly längere vergleich:

                      du willst also 45 Sekunden mit der Meldung warten, ob die Pellets vielleicht noch nachrutschen?

                      Ja, genau.
                      Ich wusste nicht, das mehrer Timer laufen können ...
                      Meinst du das so ?

                      c4de1944-cf87-4ed1-87b2-54a38d297636-grafik.png

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

                        @homoran sagte in Blockly längere vergleich:

                        nie mehr stoppen lassen

                        Nie mehr ?😵

                        1 Reply Last reply Reply Quote 0
                        • Homoran
                          Homoran Global Moderator Administrators @tourer4778 last edited by

                          @tourer4778 sagte in Blockly längere vergleich:

                          Meinst du das so ?

                          ja!

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

                            @homoran
                            Aber wenn ich jetzt länger drauf rum denke,
                            wenn der Wert <10 ist startet der Timer 45 Sek.
                            Wenn der nächsten Wert (nach 10 Sekunden) wieder <10 sein sollte, würde der Timer doch erst stoppen und dann wieder gestartet werden.
                            Dann würde doch nie meine Meldung kommen.

                            J Homoran 2 Replies Last reply Reply Quote 0
                            • J
                              JoergH @tourer4778 last edited by JoergH

                              @tourer4778 sagte in Blockly längere vergleich:

                              @homoran
                              Aber wenn ich jetzt länger drauf rum denke,
                              wenn der Wert <10 ist startet der Timer 45 Sek.
                              Wenn der nächsten Wert (nach 10 Sekunden) wieder <10 sein sollte, würde der Timer doch erst stoppen und dann wieder gestartet werden.
                              Dann würde doch nie meine Meldung kommen.

                              Korrekt. Du musst Dir beim ersten Durchlauf eine Variable auf "true" setzen, die Du dann weiter abfragst um zu wissen ob der Timer bereits läuft...oder arbeite gleich statt mit timeout mit einem Zeitvergleich zwischen aktueller Zeit und einem Zeitstempel den Du setzt, bzw. nachführst, wenn Deine Bedingung nicht mehr erfüllt ist.

                              T 1 Reply Last reply Reply Quote 0
                              • T
                                tourer4778 @JoergH last edited by

                                @joergh
                                Das mit der Zeit die mehrmals laufen kann hat mich total raus geworfen.
                                So habe ich es derzeit.
                                4370cd21-6abf-465c-bd27-2e8db2827566-grafik.png

                                J 1 Reply Last reply Reply Quote 0
                                • J
                                  JoergH @tourer4778 last edited by

                                  @tourer4778 Sieht für mich gut aus.

                                  T 1 Reply Last reply Reply Quote 0
                                  • Homoran
                                    Homoran Global Moderator Administrators @tourer4778 last edited by

                                    @tourer4778 sagte in Blockly längere vergleich:

                                    Wenn der nächsten Wert (nach 10 Sekunden) wieder <10 sein sollte, würde der Timer doch erst stoppen und dann wieder gestartet werden.
                                    Dann würde doch nie meine Meldung kommen.

                                    und genau das wollte ich vehindern.

                                    Nach deinem Skript würde ein weiterer Timeout mit selbem Namen gestartet, während der erste noch läuft. und das darf nicht sein.

                                    J T 2 Replies Last reply Reply Quote 0
                                    • J
                                      JoergH @Homoran last edited by

                                      @homoran Wieso? Der Timer wird immer erst gestoppt, bevor er aufgerufen wird.

                                      Homoran 1 Reply Last reply Reply Quote 0
                                      • Homoran
                                        Homoran Global Moderator Administrators @JoergH last edited by

                                        @joergh sagte in Blockly längere vergleich:

                                        Wieso? Der Timer wird immer erst gestoppt, bevor er aufgerufen wird.

                                        JETZT!

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

                                          @homoran sagte in Blockly längere vergleich:

                                          Nach deinem Skript würde ein weiterer Timeout mit selbem Namen gestartet, während der erste noch läuft. und das darf nicht sein.

                                          Das habe ich mit dem datenpunkt Timer 10% läuft doch verhindert ...
                                          0d6a561a-0cd1-452d-a17d-e0110c53b73c-grafik.png

                                          Homoran 1 Reply Last reply Reply Quote 0
                                          • Homoran
                                            Homoran Global Moderator Administrators @tourer4778 last edited by

                                            @tourer4778 sagte in Blockly längere vergleich:

                                            Das habe ich mit dem datenpunkt Timer 10% läuft doch verhindert ...

                                            dito!
                                            jetzt ist das so. Ich habe auf die Frage zu deinem damaligen Skript geantwortet

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            584
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

                                            3
                                            24
                                            947
                                            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