Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Rollo öffnen nach einschalten des Lichtes

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Rollo öffnen nach einschalten des Lichtes

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

      blockly.JPG

      1 Reply Last reply Reply Quote 0
      • X
        xbow42 last edited by

        das genau zum Minutenwechsel der Schalter gedrückt wird ist unwahrscheinlich ,dein "sonst wenn" ist sehr eigenartig 😉
        Ich würde das anders angehen trigger auf switch=true und dann die weiteren aktionen prüfen.
        mal ein Ansatz:
        iobroker-rollo.png
        deine letzte Bedingung "Nach einmaligen..." ist auch einfach-> dann noch [nur wenn rollo.state ungleich 100 mache :)]
        10:00 trigger sollte so passen oder du änderst auf wenn <100 dann könntest du auch schon mal paar cm hochgefahren haben um etwas Luft zu schappen. rest erledigt die 10UhrAutomatik

        also mach mal!

        B 1 Reply Last reply Reply Quote 1
        • B
          Baki074 @xbow42 last edited by

          @xbow42

          Vielen Dank für deine Hilfe. Ich denke ich bin schon etwas weitergekommen.
          Allerdings verstehe ich die Überprüfung beim Badschalter nicht ganz. Zeitstempel - Auslöser kann doch nie weniger oder gleich 0 sein, wenn ich den Auslöser am Anfang schon auf 0 gesetzt habe, oder?
          Sorry, ist das erste Mal dass ich mit Variablen arbeite ^^

          Blockly.JPG

          1 Reply Last reply Reply Quote 0
          • X
            xbow42 last edited by

            Zeitstempel ist die Zeit in Sekunden die seit dem 1.1.1970 vergangen sind.
            Am Anfang auf 0 setzen ist um die Variable erst mal einem definierten Wert zu belegen.
            Die Bedingung sollte nur dein 0-30sek-Zeitfenster verdeutlichen. Aber du hast schon recht, der wert kann nie kleine 0 werden, die vordere Und-Bedingung ist daher nicht nötig und kann raus.

            Das Script sieht doch schon mal gut aus. Guter Stil ist wohl auch vor dem [timeout 10min] noch ein [stop timeout] um evtl laufene Timer zu löschen.
            Dann las mal laufen zum testen

            Du brauchst dich nicht entschuldigen. Wichtig ist doch dass man durch das tolle Forum dazu lernt und nicht nur weiß wie copy&paste funktioniert 😉 Klick auch öfter mal oben rechts auf das [Bockly/JS]-symbol und sieh dir an was für ein javascript erzeugt wird. Ich finde so lernt man auch einiges.

            B 1 Reply Last reply Reply Quote 1
            • B
              Baki074 @xbow42 last edited by Baki074

              @xbow42
              Alles klar, dann habe ich das mit dem Zeitstempel schon mal verstanden.

              Script funktioniert allerdings nur bedingt.
              Habe um dies zu testen einfach mal ein aktuelles Zeitintervall definiert.
              Die Rollos werden auch nach dem definierten Timeout hochgefahren.

              Allerdings werden sie auch hochgefahren, wenn der Lichtschalter im Bad innerhalb der 30 Sekunden betätigt wird. Also muss beim Trigger für das Badfenster etwas noch nicht passen.

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

                @Baki074
                Dann bau mal ein paar debug-Bausteine mit jeweils aussagekräftem Text an die neuralgischen Punkte, damit du siehst wo es hängt

                1 Reply Last reply Reply Quote 0
                • X
                  xbow42 last edited by xbow42

                  hab gerade in einem anderen Beitrag von @Paul gelesen das Zeitstempel ein ms-Wert ist
                  denn dem so ist, pass mal bei dem Badlichschalter-Trigger an

                  • debug<[[Zeitstempel]-[AusloeserTS]]
                  • die 30 an zu 30000.

                  die Bedingung im oberen Trigger würde ich auch abändern.
                  z.Z. wenn ein Fenster nicht ganz offen ist werden immer beide mit 100 angesteuert, macht zwar nichts aber von der Logik nicht so toll.

                  B 1 Reply Last reply Reply Quote 0
                  • B
                    Baki074 @xbow42 last edited by

                    @xbow42 said in Rollo öffnen nach einschalten des Lichtes:

                    hab gerade in einem anderen Beitrag von @Paul gelesen das Zeitstempel ein ms-Wert ist
                    denn dem so ist, pass mal bei dem Badlichschalter-Trigger an

                    debug<[[Zeitstempel]-[AusloeserTS]]
                    die 30 an zu 30000.

                    Hat leider auch nicht den gewünschten Erfolg gebracht.
                    Ich habe auch die Verlinkungen der Objekt IDs nochmals kontrolliert, also ob ich den richtigen Schalter gewählt habe.. Auch hier hat alles gepasst.

                    ICh habe auch versucht den Zimmerschalter ein - und gleich wieder auszuschalten und dann innerhalb der 30 Sekunden den Badschalter zu betätigen. Einige dieser "Schalterszenarien" habe ich probiert. Hat aber leider auch nichts gebracht.

                    Übrigens, das Skript sieht nun folgendermaßen aus:

                    Unbenannt.JPG

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

                      @Baki074 Was liefert der Datenpunkt 'switch' für Werte?

                      B 1 Reply Last reply Reply Quote 0
                      • X
                        xbow42 last edited by

                        ich kann kein debugbaustein sehen
                        was kommt für ein wert wenn du im 2. Trigger (badfenster) den baustein einbaust?iobroker-rollo2.png
                        kommt überhaut ein wert, spricht löst der trigger überhaupt aus?

                        1 Reply Last reply Reply Quote 0
                        • B
                          Baki074 @Homoran last edited by

                          @Homoran said in Rollo öffnen nach einschalten des Lichtes:

                          Was liefert der Datenpunkt 'switch' für Werte?

                          true oder false.

                          werte.JPG

                          @xbow42 said in Rollo öffnen nach einschalten des Lichtes:

                          kommt überhaut ein wert, spricht löst der trigger überhaupt aus?

                          Ich erhalte folgende Zeile:
                          17:11:43.804 info javascript.0 (1216) script.js.Rollosteuerung.Rollosteuerung_Zimmer: NaN

                          Allerdings weiß ich nicht für was NaN steht.

                          1 Reply Last reply Reply Quote 0
                          • X
                            xbow42 last edited by xbow42

                            not a number; also sowas wie kein gültiger Wert.
                            Dass der Zeitstempel nicht gültig ist kann ich mit nicht vorstellen. Vermutlich hat Ausloeser keinen gültigen wert.
                            Bist du sicher das du nur eine Variable verwendest. Der Fehler ist vielleicht weil ich oben noch mit AusloeserTS gearbeitet habe. Muss also da auch AusloeserTS heißen, sorry.

                            B 1 Reply Last reply Reply Quote 0
                            • B
                              Baki074 @xbow42 last edited by

                              @xbow42 said in Rollo öffnen nach einschalten des Lichtes:

                              Der Fehler ist vielleicht weil ich oben noch mit AusloeserTS gearbeitet habe. Muss also da auch AusloeserTS heißen, sorry.

                              Habe ich bereits mit AusloeserTS im Script. War also bereits richtig.
                              Zeitstempel ist ja auch nur eine Variable, oder?
                              Zumindest habe ich diese als Variable angelegt, also gleich wie AusloeserTS.

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

                                @Baki074 sagte in Rollo öffnen nach einschalten des Lichtes:

                                Zeitstempel ist ja auch nur eine Variable, oder?

                                nein - das findest du unter Trigger und ist der Zeitstempel des Triggers

                                (ist ein Baustein mit pulldown)

                                1 Reply Last reply Reply Quote 0
                                • B
                                  Baki074 last edited by

                                  Aha, das war also schon mal ein Punkt ^^
                                  Leider funktioniert das Script immer noch nicht.

                                  Langsam bin ich echt am Verzweifeln... Ansonsten muss ich mir was anderes überlegen.
                                  Ist halt doof, da das Script für mich eigentlich schlüssig wirkt.

                                  1 Reply Last reply Reply Quote 0
                                  • X
                                    xbow42 last edited by

                                    mit der Aussage sollen wir jetzt die Glaskugel anschmeißen?
                                    was für Werte geben deine Debug-Bausteine aus?
                                    an welchen Stellen hast du welche eingebaut?
                                    zeig mal das Script und die logausgaben dazu.

                                    1 Reply Last reply Reply Quote 0
                                    • B
                                      Baki074 last edited by

                                      Jetzt hats geklappt!
                                      Allerdings keine Ahnung warum. Ich habe mit einem debug Baustein getestet welcher Wert rauskommt wenn ich den Badlichtschalter innerhalb 30 Sekunden betätige. Wert war 7225. Also nach knapp sieben Sekunden habe ich den Schalter betätigt.

                                      Dann habe ich einfach nochmal die Bedingung für den Badlichtschalter neu "gebaut".
                                      Dann hat's funktioniert!

                                      Ich danke euch für eure Hilfe!

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

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      861
                                      Online

                                      31.7k
                                      Users

                                      79.6k
                                      Topics

                                      1.3m
                                      Posts

                                      blockly
                                      3
                                      19
                                      888
                                      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