Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. Uhrzeiten in bestimmten Zeitraum auswerten

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    784

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

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

Uhrzeiten in bestimmten Zeitraum auswerten

Geplant Angeheftet Gesperrt Verschoben Blockly
8 Beiträge 2 Kommentatoren 496 Aufrufe 2 Beobachtet
  • Ä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.
  • D Offline
    D Offline
    Diamand2k22
    schrieb am zuletzt editiert von
    #1

    Hi zusammen,

    wie kann ich am besten mit Blockly die Zeiten aus den drei Datenpunkten mit einem Zeitraum vergleichen z.b. liegen die Zeiten der Datenpunkte zwischen 0 - 6 Uhr und werte aus, ob jeweils alle drei Stunden dazwischen liegen oder nur zwei oder nur eine Stunde.

    aac127c0-8159-4e8d-9df0-d19ab9bed6fe-image.png

    haus-automatisierungH 1 Antwort Letzte Antwort
    0
    • D Diamand2k22

      Hi zusammen,

      wie kann ich am besten mit Blockly die Zeiten aus den drei Datenpunkten mit einem Zeitraum vergleichen z.b. liegen die Zeiten der Datenpunkte zwischen 0 - 6 Uhr und werte aus, ob jeweils alle drei Stunden dazwischen liegen oder nur zwei oder nur eine Stunde.

      aac127c0-8159-4e8d-9df0-d19ab9bed6fe-image.png

      haus-automatisierungH Offline
      haus-automatisierungH Offline
      haus-automatisierung
      Developer Most Active
      schrieb am zuletzt editiert von haus-automatisierung
      #2

      @diamand2k22 Am Ende wird das mit einfachen String-Vergleichen klappen (Lexikographische Ordnung). Wenn auch nicht sehr schön.

      Wert >= '00:00:00' && Wert <= '06:00.00'

      Dafür muss nur das Format immer gleich sein - z.B. wie in deinem Beispiel HH:MM:SS sein. Sonst klappt das nicht. Lässt Du z.B. im Wert die führende Null weg (z.B. 3:00:00, geht das nicht mehr.

      Screenshot 2024-01-09 at 22.03.35.png

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="KP[4n0khi-n@uHIkO?S7">val</variable>
        </variables>
        <block type="variables_set" id="**LayA[8w/6]nm!Z=;t-" x="63" y="238">
          <field name="VAR" id="KP[4n0khi-n@uHIkO?S7">val</field>
          <value name="VALUE">
            <block type="text" id="4$O}877#;/Ar_WQ6xcyb">
              <field name="TEXT">03:00:00</field>
            </block>
          </value>
          <next>
            <block type="controls_if" id="|*MK,q3,b/C9$c2HUB1.">
              <value name="IF0">
                <block type="logic_operation" id="N?[~+%F22[:4xY{^s]@8">
                  <field name="OP">AND</field>
                  <value name="A">
                    <block type="logic_compare" id="9.Sr*I!-{E=FQi=M*c3W">
                      <field name="OP">GTE</field>
                      <value name="A">
                        <block type="variables_get" id="6swT/o@d5D7@TIRdH}?:">
                          <field name="VAR" id="KP[4n0khi-n@uHIkO?S7">val</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="text" id="oqFJ@V@WG[qg^9wGie$]">
                          <field name="TEXT">00:00:00</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <value name="B">
                    <block type="logic_compare" id="Y9q{rohPlSi`dG!QB,:]">
                      <field name="OP">LTE</field>
                      <value name="A">
                        <block type="variables_get" id="08QrRueD#!32)y35eSCS">
                          <field name="VAR" id="KP[4n0khi-n@uHIkO?S7">val</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="text" id="!8d.G?$dx_7FDFCG9p7+">
                          <field name="TEXT">06:00:00</field>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </value>
              <statement name="DO0">
                <block type="debug" id="=BGU6Yo/EASxxI{agp;X">
                  <field name="Severity">log</field>
                  <value name="TEXT">
                    <shadow type="text" id="w0v88=3WU!C7Hvfdv?Hd">
                      <field name="TEXT">passt</field>
                    </shadow>
                  </value>
                </block>
              </statement>
            </block>
          </next>
        </block>
      </xml>
      

      🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
      🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
      📚 Meine inoffizielle ioBroker Dokumentation

      D 1 Antwort Letzte Antwort
      0
      • haus-automatisierungH haus-automatisierung

        @diamand2k22 Am Ende wird das mit einfachen String-Vergleichen klappen (Lexikographische Ordnung). Wenn auch nicht sehr schön.

        Wert >= '00:00:00' && Wert <= '06:00.00'

        Dafür muss nur das Format immer gleich sein - z.B. wie in deinem Beispiel HH:MM:SS sein. Sonst klappt das nicht. Lässt Du z.B. im Wert die führende Null weg (z.B. 3:00:00, geht das nicht mehr.

        Screenshot 2024-01-09 at 22.03.35.png

        <xml xmlns="https://developers.google.com/blockly/xml">
          <variables>
            <variable id="KP[4n0khi-n@uHIkO?S7">val</variable>
          </variables>
          <block type="variables_set" id="**LayA[8w/6]nm!Z=;t-" x="63" y="238">
            <field name="VAR" id="KP[4n0khi-n@uHIkO?S7">val</field>
            <value name="VALUE">
              <block type="text" id="4$O}877#;/Ar_WQ6xcyb">
                <field name="TEXT">03:00:00</field>
              </block>
            </value>
            <next>
              <block type="controls_if" id="|*MK,q3,b/C9$c2HUB1.">
                <value name="IF0">
                  <block type="logic_operation" id="N?[~+%F22[:4xY{^s]@8">
                    <field name="OP">AND</field>
                    <value name="A">
                      <block type="logic_compare" id="9.Sr*I!-{E=FQi=M*c3W">
                        <field name="OP">GTE</field>
                        <value name="A">
                          <block type="variables_get" id="6swT/o@d5D7@TIRdH}?:">
                            <field name="VAR" id="KP[4n0khi-n@uHIkO?S7">val</field>
                          </block>
                        </value>
                        <value name="B">
                          <block type="text" id="oqFJ@V@WG[qg^9wGie$]">
                            <field name="TEXT">00:00:00</field>
                          </block>
                        </value>
                      </block>
                    </value>
                    <value name="B">
                      <block type="logic_compare" id="Y9q{rohPlSi`dG!QB,:]">
                        <field name="OP">LTE</field>
                        <value name="A">
                          <block type="variables_get" id="08QrRueD#!32)y35eSCS">
                            <field name="VAR" id="KP[4n0khi-n@uHIkO?S7">val</field>
                          </block>
                        </value>
                        <value name="B">
                          <block type="text" id="!8d.G?$dx_7FDFCG9p7+">
                            <field name="TEXT">06:00:00</field>
                          </block>
                        </value>
                      </block>
                    </value>
                  </block>
                </value>
                <statement name="DO0">
                  <block type="debug" id="=BGU6Yo/EASxxI{agp;X">
                    <field name="Severity">log</field>
                    <value name="TEXT">
                      <shadow type="text" id="w0v88=3WU!C7Hvfdv?Hd">
                        <field name="TEXT">passt</field>
                      </shadow>
                    </value>
                  </block>
                </statement>
              </block>
            </next>
          </block>
        </xml>
        
        D Offline
        D Offline
        Diamand2k22
        schrieb am zuletzt editiert von
        #3

        @haus-automatisierung

        danke für deine Antwort, und wie könnte ich jetzt noch auswerten, wie viele Stunden von den drei dazwischen liegen und den wert 0,1,2,3 dann in eine Variabel schreiben?

        haus-automatisierungH 2 Antworten Letzte Antwort
        0
        • D Diamand2k22

          @haus-automatisierung

          danke für deine Antwort, und wie könnte ich jetzt noch auswerten, wie viele Stunden von den drei dazwischen liegen und den wert 0,1,2,3 dann in eine Variabel schreiben?

          haus-automatisierungH Offline
          haus-automatisierungH Offline
          haus-automatisierung
          Developer Most Active
          schrieb am zuletzt editiert von
          #4

          @diamand2k22 sagte in Uhrzeiten in bestimmten Zeitraum auswerten:

          wie könnte ich jetzt noch auswerten, wie viele Stunden von den drei dazwischen

          Ich verstehe die Aufgabenstellung nicht so richtig, aber an die Stunde kommst Du wie folgt. Wenn es genauer sein soll (mit Minuten und Sekunden) wird es natürlich entsprechend komplexer.

          Screenshot 2024-01-09 at 22.07.05.png

          <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
              <variable id="KP[4n0khi-n@uHIkO?S7">val</variable>
              <variable id="RYH^WPGjunHnnw@8iopC">parts</variable>
            </variables>
            <block type="variables_set" id="**LayA[8w/6]nm!Z=;t-" x="63" y="238">
              <field name="VAR" id="KP[4n0khi-n@uHIkO?S7">val</field>
              <value name="VALUE">
                <block type="text" id="4$O}877#;/Ar_WQ6xcyb">
                  <field name="TEXT">03:00:00</field>
                </block>
              </value>
              <next>
                <block type="controls_if" id="|*MK,q3,b/C9$c2HUB1.">
                  <value name="IF0">
                    <block type="logic_operation" id="N?[~+%F22[:4xY{^s]@8">
                      <field name="OP">AND</field>
                      <value name="A">
                        <block type="logic_compare" id="9.Sr*I!-{E=FQi=M*c3W">
                          <field name="OP">GTE</field>
                          <value name="A">
                            <block type="variables_get" id="6swT/o@d5D7@TIRdH}?:">
                              <field name="VAR" id="KP[4n0khi-n@uHIkO?S7">val</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="text" id="oqFJ@V@WG[qg^9wGie$]">
                              <field name="TEXT">00:00:00</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <value name="B">
                        <block type="logic_compare" id="Y9q{rohPlSi`dG!QB,:]">
                          <field name="OP">LTE</field>
                          <value name="A">
                            <block type="variables_get" id="08QrRueD#!32)y35eSCS">
                              <field name="VAR" id="KP[4n0khi-n@uHIkO?S7">val</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="text" id="!8d.G?$dx_7FDFCG9p7+">
                              <field name="TEXT">06:00:00</field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO0">
                    <block type="variables_set" id="T2]=U;B_Oi[#e`UiWQCi">
                      <field name="VAR" id="RYH^WPGjunHnnw@8iopC">parts</field>
                      <value name="VALUE">
                        <block type="lists_split" id="M_qHt+LGvTH/Tf9_6:9g">
                          <mutation mode="SPLIT"></mutation>
                          <field name="MODE">SPLIT</field>
                          <value name="INPUT">
                            <block type="variables_get" id="0K8~(AfxHo$VZJk0!B=z">
                              <field name="VAR" id="KP[4n0khi-n@uHIkO?S7">val</field>
                            </block>
                          </value>
                          <value name="DELIM">
                            <shadow type="text" id="UeVi*q_8L)}.7Ek7Kh5;">
                              <field name="TEXT">:</field>
                            </shadow>
                          </value>
                        </block>
                      </value>
                      <next>
                        <block type="debug" id="O*vL-~,~w535t+%vn{v2">
                          <field name="Severity">log</field>
                          <value name="TEXT">
                            <shadow type="text" id="f)^lbH_2C,[*;2{+D~vA">
                              <field name="TEXT">test</field>
                            </shadow>
                            <block type="convert_tonumber" id="+GDM9g^2LYVWrnR@WAFY">
                              <value name="VALUE">
                                <block type="lists_getIndex" id="r3jRYG6p~?tTm6kYkr}_">
                                  <mutation statement="false" at="false"></mutation>
                                  <field name="MODE">GET</field>
                                  <field name="WHERE">FIRST</field>
                                  <value name="VALUE">
                                    <block type="variables_get" id="ZqA*:niVAFtsR/ntEAcA">
                                      <field name="VAR" id="RYH^WPGjunHnnw@8iopC">parts</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </next>
                    </block>
                  </statement>
                </block>
              </next>
            </block>
          </xml>
          

          🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
          🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
          📚 Meine inoffizielle ioBroker Dokumentation

          1 Antwort Letzte Antwort
          0
          • D Diamand2k22

            @haus-automatisierung

            danke für deine Antwort, und wie könnte ich jetzt noch auswerten, wie viele Stunden von den drei dazwischen liegen und den wert 0,1,2,3 dann in eine Variabel schreiben?

            haus-automatisierungH Offline
            haus-automatisierungH Offline
            haus-automatisierung
            Developer Most Active
            schrieb am zuletzt editiert von
            #5

            @diamand2k22 Ach Du meinst einfach nur die Anzahl der Datenpunkte? Ja mit dem $-Selektor die Datenpunkte wählen, über die Liste gehen und für jeden Wert die o.g. Prüfung durchführen und wenn wahr dann +1

            🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
            🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
            📚 Meine inoffizielle ioBroker Dokumentation

            D 1 Antwort Letzte Antwort
            0
            • haus-automatisierungH haus-automatisierung

              @diamand2k22 Ach Du meinst einfach nur die Anzahl der Datenpunkte? Ja mit dem $-Selektor die Datenpunkte wählen, über die Liste gehen und für jeden Wert die o.g. Prüfung durchführen und wenn wahr dann +1

              D Offline
              D Offline
              Diamand2k22
              schrieb am zuletzt editiert von
              #6

              @haus-automatisierung

              ja genau, könntest du mir das noch in das Blockly oben einbauen, das wäre top!
              Danke dir vielmals!

              haus-automatisierungH 1 Antwort Letzte Antwort
              0
              • D Diamand2k22

                @haus-automatisierung

                ja genau, könntest du mir das noch in das Blockly oben einbauen, das wäre top!
                Danke dir vielmals!

                haus-automatisierungH Offline
                haus-automatisierungH Offline
                haus-automatisierung
                Developer Most Active
                schrieb am zuletzt editiert von haus-automatisierung
                #7

                @diamand2k22 sagte in Uhrzeiten in bestimmten Zeitraum auswerten:

                ja genau, könntest du mir das noch in das Blockly oben einbauen, das wäre top!

                Wie lauten denn die IDs und wann genau soll die Anzahl aktualisiert werden?! So wäre das Grundgerüst:

                Screenshot 2024-01-09 at 22.14.48.png

                bzw. mit Trigger wenn sich einer der Werte ändert

                Screenshot 2024-01-09 at 22.18.23.png

                🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                📚 Meine inoffizielle ioBroker Dokumentation

                D 1 Antwort Letzte Antwort
                0
                • haus-automatisierungH haus-automatisierung

                  @diamand2k22 sagte in Uhrzeiten in bestimmten Zeitraum auswerten:

                  ja genau, könntest du mir das noch in das Blockly oben einbauen, das wäre top!

                  Wie lauten denn die IDs und wann genau soll die Anzahl aktualisiert werden?! So wäre das Grundgerüst:

                  Screenshot 2024-01-09 at 22.14.48.png

                  bzw. mit Trigger wenn sich einer der Werte ändert

                  Screenshot 2024-01-09 at 22.18.23.png

                  D Offline
                  D Offline
                  Diamand2k22
                  schrieb am zuletzt editiert von
                  #8

                  @haus-automatisierung

                  ah super, danke dir, das ist genau das, was ich brauche!

                  die ID's sind:

                  '0_userdata.0.Datenpunkte.Tibber_Test.Tiefstzeit.0'
                  '0_userdata.0.Datenpunkte.Tibber_Test.Tiefstzeit.1'
                  '0_userdata.0.Datenpunkte.Tibber_Test.Tiefstzeit.2'

                  als Trigger würde ich einfach den Selektor nehmen wie in deinem Beispiel!

                  1 Antwort Letzte Antwort
                  0

                  Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                  Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                  Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                  Registrieren Anmelden
                  Antworten
                  • In einem neuen Thema antworten
                  Anmelden zum Antworten
                  • Älteste zuerst
                  • Neuste zuerst
                  • Meiste Stimmen


                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  540

                  Online

                  32.8k

                  Benutzer

                  82.7k

                  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