Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Blockly Zeitsteuerung Astro

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Blockly Zeitsteuerung Astro

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators @tscheerio last edited by

      @tscheerio
      Nein

      Es darf kein Logikblock außerhalb des Triggers sein.
      Der muss innerhalb des Triggers um die anderen liegen

      1 Reply Last reply Reply Quote 0
      • W
        weimaraner last edited by weimaraner

        Also, du mußt bei so einem Programm unterscheiden zwischen Trigger, also wann wird das PROGRAMM GESTARTET und Bedingung , also was soll ERFÜLLT SEIN, damnit etwas geschieht.

        Wenn ich es richtig verstehe, soll dein BWM nur das Licht anschalten, wenn es dunkel ist (was auch Sinn macht).

        Du mußt nun überlegen, was dein Programm starten, also auslösen soll. Der Trigger also. Willst du nur eine Lampe einschalten bei Sonnenuntergang und sie soll die ganze Nacht anbleiben, kannst du als Trigger die Astrofunktion Sonnenuntergang nehmen.

        Trigger (Auslöser des Programms) ->Sonnenuntergang
        das Porgramm start nun und arbeitet alle "Falls" - "mache" Zweige ab.
        falls Licht aus,
        mache Licht an.

        Schaltest Du das Licht jetzt per Hand aus, bleibt es auch aus, da das Programm ja nicht nochmal gestartet wird, da der Trigger erst morgen wieder zum Sonnenuntergang triggert. Soweit klar?

        Du möchtest ja nach Sonnenuntergang immer mit BWM das Licht anschalten. Also brauchen wir einen anderen Trigger.
        Den BWM zum Beispiel. Jedesmal, wenn der BWM was meldet, läuft das Programm. Es soll aber nicht jedesmal das das Licht angehen. Also müssen wir da eine Bedingung einbauen.
        Trigger: Änderung BWM
        Falls Zeit nach Sonnenuntergang und Licht ist aus,
        mache Licht an

        Schaltest Du jetzt das Licht per Hand aus und läufts durch den Raum, dann triggert der BWM dein Programm neu. Er läßt es also nochmal laufen:
        Falls Zeit nach Sonnenuntergang und Licht ist aus,
        mache Licht an

        Das Licht geht wieder an.

        Jetzt klarer?
        Grüße Andreas

        edit: der Trigger muß "Über" allem stehen. erst trigger, dann falls-mache

        1 Reply Last reply Reply Quote 2
        • T
          tscheerio last edited by

          Also wieder was gelernt, mit dem trigger muss gestartet werden, naja hätte ich mir auch irgendwie denken können 😌

          Passt das denn mit dem Zeitraum den ich auf dem Bild definiert habe?
          "aktuelle Zeit ist zwischen Sonnuntergang-Anfang und Sonnenaufgang-Ende"?

          test2.jpg

          Homoran T 2 Replies Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators @tscheerio last edited by

            @tscheerio sagte in Blockly Zeitsteuerung Astro:

            Passt das denn mit dem Zeitraum den ich auf dem Bild definiert habe?

            Probieren!
            Ist ja nicht direkt stockdunkel. Das dauert bis zu einer Stunde

            Sieht aber gut aud

            1 Reply Last reply Reply Quote 0
            • paul53
              paul53 last edited by

              @tscheerio sagte in Blockly Zeitsteuerung Astro:

              Passt das denn mit dem Zeitraum den ich auf dem Bild definiert habe?
              "aktuelle Zeit ist zwischen Sonnuntergang-Anfang und Sonnenaufgang-Ende"?

              Da gibt es ein Problem mit dem aktuellen Datum. Ändere in
              "aktuelle Zeit ist nicht zwischen Sonnenaufgang-Ende und Sonnenuntergang-Anfang"

              1 Reply Last reply Reply Quote 1
              • T
                TDCroPower @tscheerio last edited by TDCroPower

                @tscheerio ich habe es so gelöst und es funktioniert perfekt.

                Hier ist Nachtcheck ein boolean Datenpunkt den ich unter Objekte >>> javascript.0 erstellt habe und das Skript mit true/false beschreibt.
                So kann ich den Nachtcheck in verschiedenen Skripten immer wieder abfragen ohne die komplette Abfrage zu wiederholen.

                Datenpunkt


                astrocheck2.png

                Blockly


                astrocheck.png

                Export


                <xml xmlns="http://www.w3.org/1999/xhtml">
                <block type="astro" id="{C7?|IEcvW3KqGXe+pmm" x="13" y="13">
                <field name="TYPE">sunsetStart</field>
                <field name="OFFSET">0</field>
                <statement name="STATEMENT">
                <block type="comment" id="/mWkI8#vOxhyNl2ZtNRH">
                <field name="COMMENT">Nacht beginnt</field>
                <next>
                <block type="control" id="}40OV;6@qyy38I~q_1#G">
                <mutation delay_input="false"></mutation>
                <field name="OID">javascript.0.Nachtcheck</field>
                <field name="WITH_DELAY">FALSE</field>
                <value name="VALUE">
                <block type="logic_boolean" id="_PXiN|97w.IGgI_NrEiP">
                <field name="BOOL">TRUE</field>
                </block>
                </value>
                </block>
                </next>
                </block>
                </statement>
                <next>
                <block type="astro" id="6HS^L{J?9K0=%parqfx"> <field name="TYPE">sunriseEnd</field> <field name="OFFSET">0</field> <statement name="STATEMENT"> <block type="comment" id="Z2=kjcw.l]pAxZu|(z0r"> <field name="COMMENT">Nacht beendet</field> <next> <block type="control" id="3BBce0;71KXbhq!WRl-g"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Nachtcheck</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="SbQaGZo1)v|LNW_U09BU"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </statement> <next> <block type="controls_if" id="*-8_*Ve#qc@lmJf=?9^7"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_operation" id="2_Y8Md:ezCN2!}Z7jx" inline="false"> <field name="OP">OR</field> <value name="A"> <block type="time_compare_ex" id="m,nakXP=.[jQr08W3I{z"> <mutation end_time="false" actual_time="true"></mutation> <field name="USE_ACTUAL_TIME">TRUE</field> <field name="OPTION">&lt;</field> <value name="START_TIME"> <shadow type="text" id="o?zB{!dlZWe41^;o=B)">
                <field name="TEXT">12:00</field>
                </shadow>
                <block type="time_astro" id="FHJTfX]K6p[qvhY8pD=%">
                <field name="TYPE">sunriseEnd</field>
                <field name="OFFSET">0</field>
                </block>
                </value>
                </block>
                </value>
                <value name="B">
                <block type="time_compare_ex" id="J0oB^5g)5VlF7Gc2%O{">
                <mutation end_time="false" actual_time="true"></mutation>
                <field name="USE_ACTUAL_TIME">TRUE</field>
                <field name="OPTION">></field>
                <value name="START_TIME">
                <shadow type="text" id="o?zB{!dl`ZWe41^;o=B)">
                <field name="TEXT">12:00</field>
                </shadow>
                <block type="time_astro" id="
                ,VxQdKsUdy9puwr:k7~">
                <field name="TYPE">sunsetStart</field>
                <field name="OFFSET">0</field>
                </block>
                </value>
                </block>
                </value>
                </block>
                </value>
                <statement name="DO0">
                <block type="comment" id="vs1/mNZX2p?iVe3Qj9;:">
                <field name="COMMENT">Nacht</field>
                <next>
                <block type="update" id="ke8W;G9=7siBdgi8q=at">
                <mutation delay_input="false"></mutation>
                <field name="OID">javascript.0.Nachtcheck</field>
                <field name="WITH_DELAY">FALSE</field>
                <value name="VALUE">
                <block type="logic_boolean" id="QyK%hO/3wWg^N9OBxUq5">
                <field name="BOOL">TRUE</field>
                </block>
                </value>
                </block>
                </next>
                </block>
                </statement>
                <statement name="ELSE">
                <block type="comment" id="en([|+q[X=l{0}1N0[=p">
                <field name="COMMENT">Tag</field>
                <next>
                <block type="update" id="KKsw{Y|~rdU(%qLLv598">
                <mutation delay_input="false"></mutation>
                <field name="OID">javascript.0.Nachtcheck</field>
                <field name="WITH_DELAY">FALSE</field>
                <value name="VALUE">
                <block type="logic_boolean" id="xe(T=h=hti/s.:l9{pw=">
                <field name="BOOL">FALSE</field>
                </block>
                </value>
                </block>
                </next>
                </block>
                </statement>
                </block>
                </next>
                </block>
                </next>
                </block>
                </xml>

                1 Reply Last reply Reply Quote 1
                • T
                  tscheerio last edited by

                  @paul53
                  das hab ich mir fast gedacht das es da ein Problem gibt, aber auch mit deinem Vorschlag
                  "aktuelle Zeit ist nicht zwischen Sonnenaufgang-Ende und Sonnenuntergang-Anfang"
                  bleibt das Licht aus.
                  Ich muss das wohl mal noch anders probieren.

                  @TDCroPower
                  Die Umsetzung schaue ich mir nachher mal genauer an, stell dich mal auf fragen ein 😂

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

                    @tscheerio immer her damit, meine Version funktioniert bislang tadellos.
                    Auch wenn das System mal neugestartet wird und der Astro Zeitpunkt verpasst wurde.

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

                      @tscheerio
                      Bist du sicher dass der bwm Status in ioBroker ankommt?

                      1 Reply Last reply Reply Quote 0
                      • T
                        tscheerio last edited by tscheerio

                        @Homoran
                        Ganz sicher, die Lichtsteuerung mit bwm funktioniert seit Monaten ohne den Astro Block zuverlässig.
                        Kann es sein das die hinterlegte Zeit in iobroker nicht korrekt oder falsch eingestellt ist?
                        Die habe ich nämlich nirgendwo gefunden.

                        @TDCroPower
                        Wie rufst du diesen Boolean wert in einem anderen Blockly dann wieder auf?
                        Oder ist dann das aufgerufe Skript der Boolean Wert?

                        Und wo hast du den "oder" Block her? 😌
                        Also den "falls"-->"oder"-->"aktuelle Zeit ..."
                        Der scheint sich bei mir zu verstecken 🤔

                        Edit:
                        Was ich gerade gesehen habe das Log file bringt mir folgenden fehler:
                        Longitude or latitude does not set. Cannot use astro.

                        Habe allerdings in den Einstellungen von iobroker Land/Stadt/Breitengrad und Längengrad eingetragen und zeigt auch die korrekte Adresse auf der Map an, warum also der Fehler?

                        Edit2:
                        Habe gesehen in der Skriptausführung können auch Längen und Breitengrad eingetragen werden, hier ist allerdings der haken aktiviert für die Systemeinstellung.
                        Was ich aber etwas komisch finde sobald ich im Skript Adapter auf "Astro-Einstellungen" wechsel zeigt er mir für 1sec die Map an und quittiert das ganze mit "Hoppla ein Fehler ist aufgetreten" und zeigt dann garnichts mehr an.
                        Dasselbe wenn man Länge/Breiten manuell einträgt

                        Homoran T 2 Replies Last reply Reply Quote 0
                        • Homoran
                          Homoran Global Moderator Administrators @tscheerio last edited by Homoran

                          @tscheerio sagte in Blockly Zeitsteuerung Astro:

                          Longitude or latitude does not set. Cannot use astro.

                          Hast du sie denn in den Systemeinstellungen hinterlegt?
                          (im admin oben links der Schraubenschlüssel)

                          1 Reply Last reply Reply Quote 0
                          • T
                            tscheerio last edited by

                            @Homoran
                            Ja sie sind hinterlegt und wird auch korrekt auf der Karte angezeigt

                            1 Reply Last reply Reply Quote 0
                            • T
                              tscheerio last edited by

                              @Homoran
                              Habe alles nochmal eingetragen und alles gespeichert nun geht das Licht an und es gibt keine Fehlermeldung mehr 😳
                              Ich werde das mal weiter beobachten

                              1 Reply Last reply Reply Quote 0
                              • T
                                TDCroPower @tscheerio last edited by

                                @tscheerio nimmst einfach unter "Logik" den dritten Block der mit "und" hinterlegt ist.
                                Dann klickst du auf "und" und wechselst auf "oder".

                                Den Wert frage ich einfach als Objekt ab z.B. so...
                                nachtcheck_benutzen.png

                                1 Reply Last reply Reply Quote 0
                                • T
                                  tscheerio last edited by

                                  @TDCroPower
                                  Sieht mir alles Sinnvoll aus, ich glaube ich mache das auch so obwohl gerade alles funktioniert 😂

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

                                  Support us

                                  ioBroker
                                  Community Adapters
                                  Donate

                                  578
                                  Online

                                  31.7k
                                  Users

                                  79.8k
                                  Topics

                                  1.3m
                                  Posts

                                  blockly
                                  5
                                  25
                                  14206
                                  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