Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Aussenbeleuchtungsscript mit Astro funktioniert nicht

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Aussenbeleuchtungsscript mit Astro funktioniert nicht

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

      Hi

      ich habe hier auf Basis anderer Beispiele folgendes Blockly Script

      ! schedule({astro: "dusk", shift: 0}, function () { setState("sonoff.0.DVES_520040.POWER"/*DVES_520040 POWER*/, true); if (compareTime("23:00", "null", ">")) { setState("sonoff.0.DVES_520040.POWER"/*DVES_520040 POWER*/, false); } }); schedule({astro: "sunrise", shift: 0}, function () { setState("sonoff.0.DVES_520040.POWER"/*DVES_520040 POWER*/, true); setStateDelayed("sonoff.0.DVES_520040.POWER"/*DVES_520040 POWER*/, true, 14400000, false); }); !

      ~~![](</s><URL url=)https://cdn.pbrd.co/images/HZt5eMT.png" />

      sollte dies nicht:

      Bei Abenddämmerung das Licht einschalten und um 23:00 Uhr wieder ausschalten und bei Sonnenaufgang das Licht für 240 Minuten einschalten?~~

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

        @f0rd42:

        sollte dies nicht:

        Bei Abenddämmerung das Licht einschalten und um 23:00 Uhr wieder ausschalten und bei Sonnenaufgang das Licht für 240 Minuten einschalten? `
        Nö!

        @f0rd42:

        um 23:00 Uhr `
        wird nichts getriggert

        Gruß

        Rainer

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

          Hallo ford42,

          der Trigger Abenddämmerung stellt eine Uhrzeit in Stunden und Minuten dar - man kann sich die Astrofunktionen auslesen… Skript gerade nicht zur Hand.

          Damit wird der Trigger einmal am Tag ausgeführt.

          Für die Ausschaltung brauchst du einen neuen Trigger der per Cron läuft.

          Gesendet von iPhone mit Tapatalk

          1 Reply Last reply Reply Quote 0
          • F
            f0rd42 last edited by

            @nukleuz:

            Hallo ford42,

            der Trigger Abenddämmerung stellt eine Uhrzeit in Stunden und Minuten dar - man kann sich die Astrofunktionen auslesen… Skript gerade nicht zur Hand.

            Damit wird der Trigger einmal am Tag ausgeführt. `

            ok, würde dann aber bedeuten dass das eigentlichen Einschalten funktionieren müsste, oder?

            wie auch immer, ich habe nun diesen Weg hier genommen, ist für mich auch irgendwie verstāndlicher:

            ~~![](</s><URL url=)https://cdn.pbrd.co/images/HZCpT3h.png" />

            Einschalten funktioniert auch, aber es wird nicht um 21:15 ausgeschaltet.

            Schalte ich den Sonoff (der dahinter liegt) dann von hand auf "false" um, dann geht das licht danach nach einer Zeit wieder von alleine an…...

            Ich setze das Script mal auf debug.~~

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

              Schau mal hier:
              1884_lampe_flur.jpg

              Einmal wird auf Sonnenuntergang getriggert und das Licht geht an.

              Dann brauchts Du aber nochmal einen Trigger, damit das skript nochmal läuft, um auszuschalten. Dafür ist der zweite Trigger mit cron. Also um 22:00 Uhr geht es aus.

              Grüße Andreas

              Edit: der Trigger ist der Moment, an dem das Programm startet und durchläuft und schaut, welche Bedingungen zu diesem Zeitpunkt erfüllt sind und welche Aufgaben es zu diesem Zeitpunkt ausführen soll. Hast Du später weitere Bedingungen und Aufgaben muß das Programm erneut starten und dafür brauchst Du einen neuen Auslöser (trigger)

              1 Reply Last reply Reply Quote 0
              • F
                f0rd42 last edited by

                Dieses Script von pix habe ich auch und habe die entsprechenden Datenpunkte bei mir drin, nutze sie aber zur zeit nicht.

                Ich habe das Blockly von Weimaraner nun mal nachgebaut und gestartet.

                Allerdings liegt der Start Zeitpunkt nach Sonnenuntergang (ist derzeit hier bei uns 16:38).

                Das script schaltet die Beleuchtung dann nicht ein, richtig?

                Wāre mein Script mit dem Vergleich der aktuellen Uhrzeit und dem Wert aus der Astrofunktion da nicht "fehlertoleranter"?

                1 Reply Last reply Reply Quote 0
                • F
                  f0rd42 last edited by

                  @weimaraner:

                  Edit: der Trigger ist der Moment, an dem das Programm startet und durchläuft und schaut, welche Bedingungen zu diesem Zeitpunkt erfüllt sind und welche Aufgaben es zu diesem Zeitpunkt ausführen soll. Hast Du später weitere Bedingungen und Aufgaben muß das Programm erneut starten und dafür brauchst Du einen neuen Auslöser (trigger) `

                  sorry, verstehe ich noch nicht so ganz.

                  Der Trigger, also die Uhrzeit des Sonnenuntergangs āndert sich ja jeden Tag.

                  Wenn dieses Script also lāuft holt es sich einmal am Tag (kurz nach Mitternacht) die jeweilige Uhrzeit und "merkt" sich dass es zu dieser Uhrzeit mal in das Script schauen soll, Wass es denn zu tun gibt.

                  Wenn das Script dann zu dieser Uhrzeit nicht lāuft, dann passiert auch nichts wenn ich es nach der heutigen Sonnenuntergangszeit starte, denn die jetzige Uhrzeit ist ja schon nicht mehr die vom Sonnenuntergang …..

                  Aber wahrscheinlich denke ich hier viel zu kompliziert.

                  [Edit] Hat sich erledigt (obwohl so ganz klar ist mir das noch nicht) ich hatte erwartet dass das Blockly von Weimaraner sofort nach dem Start die Beleuchtung einschaltet, da die aktuelle Uhrzeit ja noch Sonnenuntergang liegt.

                  Das hat das Script auch getan, allerdings mit etwas Verzögerung ….. rund 10 Minuten

                  1 Reply Last reply Reply Quote 0
                  • F
                    f0rd42 last edited by

                    würde denn folgendes funktionieren?

                    ~~![](</s><URL url=)https://cdn.pbrd.co/images/HZCHUiS.png" />

                    und was genau wāre der Unterscheid wenn die beiden Blöcke miteinander verbunden wāren oder nicht?

                    sorry für die dāmlichen Fragen ….

                    [EDIT hatte den falschen Cron Block genommen, das ist nun korrigiert~~

                    1 Reply Last reply Reply Quote 0
                    • F
                      f0rd42 last edited by

                      ok, nochmal komplett zurück.

                      Mann bin ich blāde … Uhrzeit vom System stimmte nicht, stand auf UTC.

                      wie auch immer, würde folgendes funktionieren?

                      ~~![](</s><URL url=)https://cdn.pbrd.co/images/HZD0NgN.png" />

                      Ich möchte ja 120 Minuten nach dem Einsachaltzeitpunkt wieder ausschalten, der āndert sich aber jeden Tag, daher geht Cron nicht.

                      Spāter würde ich unten noch einen weiteren Trigger einfügen, der je nach Helligkeit wieder ausschaltet.~~

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

                        @f0rd42:

                        würde folgendes funktionieren? `
                        Ja. Nur das Verhalten bei Skriptstart innerhalb der 2 Stunden nach Morgendämmerung ist nicht bedacht.

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

                          js ist eine Eventbasierte Sprache.

                          @f0rd42:

                          Wenn das Script dann zu dieser Uhrzeit nicht lāuft, dann passiert auch nichts `
                          @f0rd42:

                          Ich hatte erwartet dass das Blockly von Weimaraner sofort nach dem Start die Beleuchtung einschaltet `
                          Das Skript läuft immer - nicht nur einmal.

                          Der Event (worauf getriggert wird) tritt irgendwann auf und dann werden die bedingten Befehle ausgeführt.

                          Gruß

                          Rainer

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

                            @paul53:

                            @f0rd42:

                            würde folgendes funktionieren? Ja. Nur das Verhalten bei Skriptstart innerhalb der 2 Stunden nach Morgendämmerung ist nicht bedacht.
                            und wenn im Sommer der Sonnenuntergang nach 22:00 ist 😉

                            Gruß

                            Rainer

                            1 Reply Last reply Reply Quote 0
                            • F
                              f0rd42 last edited by

                              @Homoran:

                              @paul53:

                              @f0rd42:

                              würde folgendes funktionieren? Ja. Nur das Verhalten bei Skriptstart innerhalb der 2 Stunden nach Morgendämmerung ist nicht bedacht.
                              und wenn im Sommer der Sonnenuntergang nach 22:00 ist 😉

                              Gruß

                              Rainer `

                              Darum ja spāter Helligkeitswerte, dafür fehlt aber noch der Weatherman

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

                                Die helfen auch nicht.

                                Wenn es zum Zeitpunkt des Ausschaltbefehls (22:00) noch hell ist schaltet dieser Befehl die nicht leuchtenden Lampen aus.

                                1/2 Stunde später wird die gewünschte Helligkeit unterschritten, dann geht die Lampe an und bleibt bis zum nächsten Abend um 22:00 an

                                Gruß

                                Rainer

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

                                  @Homoran:

                                  und wenn im Sommer der Sonnenuntergang nach 22:00 ist `
                                  Soll die Sommerzeit nicht abgeschafft werden :?:

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

                                    Optimist :lol:

                                    1 Reply Last reply Reply Quote 0
                                    • F
                                      f0rd42 last edited by

                                      irgendwie passt das immer noch nicht.

                                      Entweder wird nicht eingeschaltet oder zu einer Zeit wieder ausgeschaltet, die in keinem Zusammenhang mit dem Script steht. Uhrzeiten auf dem system habe ich geprüft, das stimmt soweit, auch die Zeiten im Log sind richtig. Auf dem Sonoff ist auch nichts weiter konfiguriert, also keine eigenen Timer.

                                      Das logging der State Variable zeigt:

                                      ! ````
                                      false true sonoff.0 2019-02-07 07:25:10.473
                                      false false javascript.0 2019-02-06 20:05:34.750
                                      true true sonoff.0 2019-02-06 20:05:06.426
                                      false true sonoff.0 2019-02-06 20:01:50.542
                                      true true sonoff.0 2019-02-06 20:00:06.206
                                      false true sonoff.0 2019-02-06 19:55:50.287
                                      true true sonoff.0 2019-02-06 19:48:25.620
                                      true true sonoff.0 2019-02-06 19:43:25.652
                                      false true sonoff.0 2019-02-06 19:38:36.896
                                      false true sonoff.0 2019-02-06 19:37:00.332
                                      true true sonoff.0 2019-02-06 19:31:44.627
                                      false true sonoff.0 2019-02-06 19:29:34.641
                                      true true sonoff.0 2019-02-06 19:26:32.491
                                      true false javascript.0 2019-02-06 18:02:20.053
                                      false true sonoff.0 2019-02-06 18:01:32.531
                                      false false admin.0 2019-02-06 17:51:56.383
                                      true true sonoff.0 2019-02-06 17:51:47.989
                                      true false admin.0 2019-02-06 17:51:47.803

                                      
                                      um 17:51 ist mir aufgefallen dass die Beleuchtung nicht an ist, was sie eigentlich seit 17:05 sein sollte.
                                      
                                      Dann habe ich sie per admin auf true gesetzt und danach wieder auf false um zu schauen ob der Schalter denn funktioniert.
                                      
                                      Dann hatte ich im Script was geändert und es gespeichert, was dazu führte, dass um 18:02 per script das Licht eigeschaltet wurde.
                                      
                                      Eigentlich sollte nun nix mehr passieren, bis 22:30, wenn das Script das Licht wieder über den Cron Trigger ausschaltet, aber zwischen 18:02 und 20:05 gibt es diverse Statusänderungen die ich mir nicht erklären kann.
                                      
                                      Im Script setze ich ja parallel auch immer eine Hilfsvariable, deren Log ist anders:
                                      
                                      >! ````
                                      true	true	javascript.0	2019-02-07 07:44:13.649	
                                      false	true	javascript.0	2019-02-06 22:30:00.054	
                                      false	true	javascript.0	2019-02-06 20:16:10.577	
                                      false	true	javascript.0	2019-02-06 20:05:34.756	
                                      true	true	javascript.0	2019-02-06 18:16:10.580	
                                      true	true	javascript.0	2019-02-06 18:16:10.578	
                                      true	true	javascript.0	2019-02-06 18:05:34.754	
                                      true	true	javascript.0	2019-02-06 18:05:34.752	
                                      true	true	javascript.0	2019-02-06 18:04:38.931	
                                      true	true	javascript.0	2019-02-06 18:02:20.055
                                      

                                      18:02 Einschalten durch das Script. Was die Werte um 18:04, 18:05 und 18:16 sollen weiss ich nicht.

                                      Dann um 22:05 über script aus ??????? und dann um 22:30 nochmal aus, was ja richtig wäre.

                                      Script:

                                      ![](</s><URL url=)https://cdn.pbrd.co/images/I01hSAv.png" />

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

                                        Versuche mal den Astro-Trigger im Blockly. Ich denke, dass es ohne Trigger nicht richtig funktionieren kann. Lediglich die Ausschaltung um 22:30 Uhr tut das was sie soll - hier hast du einen Trigger.

                                        Ich steuere zeitlich auch ein paar Aktoren mit dem Astro-Trigger ohne Probleme.

                                        1 Reply Last reply Reply Quote 0
                                        • F
                                          f0rd42 last edited by

                                          Hatte ich schon probiert und das Ergebnis war gleich, darum hatte ich es umgebaut.

                                          Kannst du mal ein vielleicht ähnliches Beispiel von Dir Posten?

                                          Gesendet von iPhone mit Tapatalk

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

                                            Mache ich, sobald ich zu Hause bin.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            899
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            27
                                            1680
                                            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