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.
    • 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
                                    • nukleuz
                                      nukleuz last edited by

                                      Irgendwie klappt es gerade nicht Bilder einzufügen… Mhhhh :roll:

                                      EDIT: Ahh - Nach Abmeldung und Anmeldung ging es dann.

                                      9401_astro_einfach_01.png

                                      9401_astro_einfach_02.png

                                      Das sind zwei wirklich einfache Beispiele…

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

                                        ok, danke Dir.

                                        Die liegen in zwei unterschiedlichen Scripten?

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

                                          Ja, das tun sie - ich würde auch mal versuchen ohne deinen Datenpunkt das Skript zum Laufen zu bekommen.

                                          Wenn das läuft, würde ich mit den DP arbeiten auch wenn es meiner Meinung nach gar nicht Not tut.

                                          Ich hatte anfangs auch versucht ohne Trigger zu arbeiten, das ging irgendwie immer schief.

                                          Hier mal eine Idee, wie ich das lösen würde mit deinem Skript:

                                          9401_l_sungsversuch_01.jpg

                                          PS: So fit bin ich auch nicht mit Blockly um sagen zu können, ob das alles in ein Skript könnte.

                                          Einfach ausprobieren (habe ich selber auch noch nicht versucht :))

                                          Ggf. kann hier auch ein Kenner was genaueres zu sagen.

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

                                            Das mit den Datenpunkten hat seinen Grund, es gibt noch ein zweites Script für das Einschalten bei Bewegung, aber nur wenn der Timer schon wieder aus ist.

                                            In dem letzten Bild sind die drei trigger in einem Script. Geht das so, oder müssen es drei getrennte sein?

                                            Gesendet von iPhone mit Tapatalk

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            885
                                            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