Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Blockly: Zwei verschiedene Zeiträume in einer Abfrage

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Blockly: Zwei verschiedene Zeiträume in einer Abfrage

Geplant Angeheftet Gesperrt Verschoben Blockly
16 Beiträge 4 Kommentatoren 697 Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • Pomme1stP Pomme1st

    Hallo zusammen,

    ich bin Blockly-Neuling und brauche daher ein wenig Unterstützung.
    Ich habe für die Kids ein Schildkrötengehege mit Frühbeet gebaut. Nun wird es kälter und die Kröten brauchen eine Wärmequelle.
    Ziel soll es sein, das die Shelly Steckdose einen Heizstrahler einschaltet, wenn eine bestimmte Temperatur vom Temperaturfühler im Schildkrötenhaus gemeldet wird.
    Hierzu sollen jedoch zwei Zeiträume greifen:
    09:00 Uhr - 18:00 Uhr einschalten wenn die Temperatur <23 Grad
    18:01 Uhr - 08:59 Uhr einschalten wenn die Temperatur <11 Grad

    Nach jeder Schaltung soll jedoch der Zustand für 5 Minuten gehalten werden. Das soll das ständige ein und ausschalten verhindern.

    Folgendes Blockly habe ich bereits erstellt (jedoch nur mit einem Zeitraum abgebildet).

    3ba86d36-0949-4aa6-a90b-ffba3fecea7b-image.png

    Hat jemand einen Tipp wie ich zwei Zeiträume in eine Abfrage bekomme?
    Oder um es auf die Spitze zu treiben :) Wäre es möglich verschiedene Monate mit verschiedenen Zeiträumen in einer Abfrage zu packen?
    Da sich die Temperaturen, die im Frühbeet herrschen sollen, je nach Monat ändern...

    Vielen Dank und liebe Grüße

    Dominik

    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von paul53
    #6

    @pomme1st sagte: Folgendes Blockly

    Es wird die falsche Timer-Variable geprüft. Das Setzen der Timer-Variable auf null bei Ablauf der Verzögerung erledigt Blockly seit JS-Version 7.0.5 automatisch.

    Blockly_temp.JPG

    EDIT: Setzen der Variable shelly:

    Blockly_temp.JPG

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    1 Antwort Letzte Antwort
    0
    • HomoranH Homoran

      @asgothian sagte in Blockly: Zwei verschiedene Zeiträume in einer Abfrage:

      Die Abfrage Zeit zwischen 18:01 und 8:59 geht so nicht.

      warum nicht?
      tagesübergreifend geht meines Wissens nur bei Astro nicht.

      AsgothianA Offline
      AsgothianA Offline
      Asgothian
      Developer
      schrieb am zuletzt editiert von
      #7

      @homoran sagte in Blockly: Zwei verschiedene Zeiträume in einer Abfrage:

      @asgothian sagte in Blockly: Zwei verschiedene Zeiträume in einer Abfrage:

      Die Abfrage Zeit zwischen 18:01 und 8:59 geht so nicht.

      warum nicht?
      tagesübergreifend geht meines Wissens nur bei Astro nicht.

      Soweit ich das erinnere war bei "zwischen" implizit immer das a < b < c. Da es sich bei den Zeiten nur um Stunden handelt ist diese Bedingung nicht erfüllt. Ist in diesem Beispiel auch kein problem, da die beiden Zeiträume in der Summe genau 24 Stunden ausmachen.

      A.

      ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
      "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

      paul53P 1 Antwort Letzte Antwort
      0
      • AsgothianA Asgothian

        @homoran sagte in Blockly: Zwei verschiedene Zeiträume in einer Abfrage:

        @asgothian sagte in Blockly: Zwei verschiedene Zeiträume in einer Abfrage:

        Die Abfrage Zeit zwischen 18:01 und 8:59 geht so nicht.

        warum nicht?
        tagesübergreifend geht meines Wissens nur bei Astro nicht.

        Soweit ich das erinnere war bei "zwischen" implizit immer das a < b < c. Da es sich bei den Zeiten nur um Stunden handelt ist diese Bedingung nicht erfüllt. Ist in diesem Beispiel auch kein problem, da die beiden Zeiträume in der Summe genau 24 Stunden ausmachen.

        A.

        paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #8

        @asgothian sagte: bei "zwischen" implizit immer das a < b < c.

        Das muss nur bei Verwendung von Astrozeiten beachtet werden. Uhrzeiten "hh:mm" funktionieren auch über den Tageswechsel.

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        AsgothianA 1 Antwort Letzte Antwort
        1
        • paul53P paul53

          @asgothian sagte: bei "zwischen" implizit immer das a < b < c.

          Das muss nur bei Verwendung von Astrozeiten beachtet werden. Uhrzeiten "hh:mm" funktionieren auch über den Tageswechsel.

          AsgothianA Offline
          AsgothianA Offline
          Asgothian
          Developer
          schrieb am zuletzt editiert von Asgothian
          #9

          @paul53 Wieder was gelernt :)

          unabhängig davon ( und wenn wir das Skript schon so weit optimieren) würde ich auf den Folgenden Ansatz wechseln:

          Screenshot 2024-09-18 at 08.38.59.png
          Dann passiert so lange wirklich nix wie der Timeout noch aktiv ist. Erst wenn er was tun darf wird geprüft ob er denn was tun will (soll).

          A.

          Edit: Der Kommentar von @paul53 war korrekt - ich hatte den Wert-Vergleich vergessen. Ist im Screenshot oben jetzt korrigiert.

          ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
          "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

          paul53P 2 Antworten Letzte Antwort
          1
          • AsgothianA Asgothian

            @paul53 Wieder was gelernt :)

            unabhängig davon ( und wenn wir das Skript schon so weit optimieren) würde ich auf den Folgenden Ansatz wechseln:

            Screenshot 2024-09-18 at 08.38.59.png
            Dann passiert so lange wirklich nix wie der Timeout noch aktiv ist. Erst wenn er was tun darf wird geprüft ob er denn was tun will (soll).

            A.

            Edit: Der Kommentar von @paul53 war korrekt - ich hatte den Wert-Vergleich vergessen. Ist im Screenshot oben jetzt korrigiert.

            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von paul53
            #10

            @asgothian sagte: Folgenden Ansatz

            Ist deine Javascript-Version älter als 7.0.5?
            Es fehlt der Vergleich mit dem Wert des Trigger-DP.

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            AsgothianA 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @asgothian sagte: Folgenden Ansatz

              Ist deine Javascript-Version älter als 7.0.5?
              Es fehlt der Vergleich mit dem Wert des Trigger-DP.

              AsgothianA Offline
              AsgothianA Offline
              Asgothian
              Developer
              schrieb am zuletzt editiert von
              #11

              @paul53 sagte in Blockly: Zwei verschiedene Zeiträume in einer Abfrage:

              @asgothian sagte: Folgenden Ansatz

              Ist deine Javascript-Version älter als 7.0.5?

              Nein, 8.7.6. Allerdings nutze ich die Zeit-Funktionen selten, und so hat sich bei mir die oben angesprochene Regel festgesetzt. Einen Grund dass anzupassen habe ich nicht gefunden.

              Und das ich die Timeout-variable auf null gesetzt hab dient ausschliesslich der Übersichtlichkeit für den menschlichen Betrachter - mir ist klar das das implizit sowieso passiert. Das explizite Setzen zeigt jedem der das Skript anschaut (auch wenn er wenig Ahnung hat) was passiert.

              A.

              ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
              "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

              1 Antwort Letzte Antwort
              1
              • AsgothianA Asgothian

                @paul53 Wieder was gelernt :)

                unabhängig davon ( und wenn wir das Skript schon so weit optimieren) würde ich auf den Folgenden Ansatz wechseln:

                Screenshot 2024-09-18 at 08.38.59.png
                Dann passiert so lange wirklich nix wie der Timeout noch aktiv ist. Erst wenn er was tun darf wird geprüft ob er denn was tun will (soll).

                A.

                Edit: Der Kommentar von @paul53 war korrekt - ich hatte den Wert-Vergleich vergessen. Ist im Screenshot oben jetzt korrigiert.

                paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #12

                @asgothian sagte: Ist im Screenshot oben jetzt korrigiert.

                Dann korrigiere bitte auch noch den Vergleich mit der Variablen Shelly in ungleich.

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                Pomme1stP 1 Antwort Letzte Antwort
                0
                • paul53P paul53

                  @asgothian sagte: Ist im Screenshot oben jetzt korrigiert.

                  Dann korrigiere bitte auch noch den Vergleich mit der Variablen Shelly in ungleich.

                  Pomme1stP Offline
                  Pomme1stP Offline
                  Pomme1st
                  schrieb am zuletzt editiert von Pomme1st
                  #13

                  @paul53 @Asgothian vielen dank für eure Hilfe.
                  Ich versuche gerade die Abfrage nachzubilden und find aber nirgends eine Möglichkeit diesen Block (<) einzubinden:

                  2024-09-18_16h55_03.jpg

                  Wie bekomme ich den rein? Logik???

                  Vielen Dank

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • Pomme1stP Pomme1st

                    @paul53 @Asgothian vielen dank für eure Hilfe.
                    Ich versuche gerade die Abfrage nachzubilden und find aber nirgends eine Möglichkeit diesen Block (<) einzubinden:

                    2024-09-18_16h55_03.jpg

                    Wie bekomme ich den rein? Logik???

                    Vielen Dank

                    paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von paul53
                    #14

                    @pomme1st sagte: Wie bekomme ich den rein? Logik???

                    Ja, Vergleichslogik: Mauszeiger über dem Block und mit rechter Maustaste "externe Eingänge" auswählen.

                    Blockly_temp.JPG

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    Pomme1stP 1 Antwort Letzte Antwort
                    0
                    • paul53P paul53

                      @pomme1st sagte: Wie bekomme ich den rein? Logik???

                      Ja, Vergleichslogik: Mauszeiger über dem Block und mit rechter Maustaste "externe Eingänge" auswählen.

                      Blockly_temp.JPG

                      Pomme1stP Offline
                      Pomme1stP Offline
                      Pomme1st
                      schrieb am zuletzt editiert von
                      #15

                      @paul53 perfekt vielen Dank

                      Hier meine abschließende Abfrage:

                      58b9b734-25eb-4c3f-a839-134cfea2f467-image.png

                      Scheint alles soweit zu funktionieren.

                      Vielen Dank nochmals an alle die dazu beigetragen hatten ;)

                      AsgothianA 1 Antwort Letzte Antwort
                      0
                      • Pomme1stP Pomme1st

                        @paul53 perfekt vielen Dank

                        Hier meine abschließende Abfrage:

                        58b9b734-25eb-4c3f-a839-134cfea2f467-image.png

                        Scheint alles soweit zu funktionieren.

                        Vielen Dank nochmals an alle die dazu beigetragen hatten ;)

                        AsgothianA Offline
                        AsgothianA Offline
                        Asgothian
                        Developer
                        schrieb am zuletzt editiert von
                        #16

                        @pomme1st Schoen das es geklappt hat.

                        Allerdings macht der Baustein Screenshot 2024-09-19 at 11.22.34.png
                        keinen Sinn - entweder passt du die Variable auf "timeout" an oder du löscht den einfach - der wird nicht gebraucht.

                        Auch der Baustein Screenshot 2024-09-19 at 11.26.34.png

                        wird in diesem Fall nicht benötigt, die Variable wird im Trigger jedes mal neu definiert. Der kann also auch weg ohne das die Funktion sich ändert.

                        A.

                        ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                        "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                        1 Antwort Letzte Antwort
                        0
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        680

                        Online

                        32.7k

                        Benutzer

                        82.4k

                        Themen

                        1.3m

                        Beiträge
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2025
                        logo
                        • Anmelden

                        • Du hast noch kein Konto? Registrieren

                        • Anmelden oder registrieren, um zu suchen
                        • Erster Beitrag
                          Letzter Beitrag
                        0
                        • Home
                        • Aktuell
                        • Tags
                        • Ungelesen 0
                        • Kategorien
                        • Unreplied
                        • Beliebt
                        • GitHub
                        • Docu
                        • Hilfe