Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. Datenpunkt für Uhrzeit (Rolladensteuerung)

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Datenpunkt für Uhrzeit (Rolladensteuerung)

    This topic has been deleted. Only users with topic management privileges can see it.
    • Codierknecht
      Codierknecht Developer Most Active @cheffe last edited by

      @cheffe
      Ich würde ein "jqui - ctrl - Input Datetime" nehmen und als Datenpunkt einen einfachen String.
      Den kann man dann in Blockly in die passende Zeit wandeln.

      cd4b6bd4-2768-453c-8b27-1f28f9d339c3-image.png

      C 1 Reply Last reply Reply Quote 0
      • C
        cheffe @Codierknecht last edited by

        @codierknecht
        danke.
        ich glaube dass ich auf eine guten Weg bin...
        aber eine Frage zum Widget, vermutlich bin ich zu blöde: gibt es die möglichkeit das ding auch fest zu beschriften? z.b: "auf" und "ab"? damit ich beim ausrichten nicht immer das widget und ein textfeld zusammen verschieben muss?

        C 1 Reply Last reply Reply Quote 0
        • C
          cheffe @cheffe last edited by

          meint ihr, das script ist so in ordnung?
          071c18d2-c6eb-4bf9-8253-69c464932f53-image.png

          Codierknecht paul53 2 Replies Last reply Reply Quote 0
          • Codierknecht
            Codierknecht Developer Most Active @cheffe last edited by

            @cheffe

            meint ihr, das script ist so in ordnung?

            Auf keinen Fall!
            Das wird jede Minute ausgeführt und produziert unnötig Last.

            Reagiere auf die Änderung Deines Datenpunktes mit dem Zeitpunkt und erstelle damit ein passendes Schedule.

            damit ich beim ausrichten nicht immer das widget und ein textfeld zusammen verschieben muss?

            Du kannst einzelne Widgets auch gruppieren.
            cec51aa3-9b11-48ce-a10c-8d2902d47e29-grafik.png

            C 1 Reply Last reply Reply Quote 0
            • C
              cheffe @Codierknecht last edited by

              @codierknecht
              Ok, vielen Dank für den Hinweis. Leider hab ich noch garkeine Idee, wie Eibe Lösung aussehen könnte...
              Könnt ihr mir da einen Tipp geben?
              Ich weiß halt nicht, wie ich sonst die aktuelle Zeit mit der gespeicherten Zeit für die Rollläden abgleichen soll .

              Grüße und danke

              1 Reply Last reply Reply Quote 0
              • C
                cheffe last edited by

                Wäre hier jemand bereit mir kurz zu erklären, wie ich das Script richtig erstellen müsste?
                Kurz zusammengefasst: ich möchte dass täglich zu einer Uhrzeit, die in einem Datensatz steht, die Rollläden runter und hoch fahren. Ich möchte es über einen datenpunkt machen, da ich die Uhrzeiten über meine Visualisierung ändern können möchte...

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

                  @cheffe sagte: wie ich das Script richtig erstellen müsste?

                  Siehe hier

                  Die Steuerung von "Open" und "Close" muss sicherlich mit wahr erfolgen.

                  1 Reply Last reply Reply Quote 0
                  • C
                    cheffe last edited by

                    Hallo zusammen,
                    ich glaube ich muss gestehen, dass ich mir das ganze doch einfacher und intuitiver vorgestellt habe.
                    ich hab bisher leider noch gar nicht verstanden was und warum ich jetzt erstellen muss.

                    Codierknecht paul53 2 Replies Last reply Reply Quote 0
                    • Codierknecht
                      Codierknecht Developer Most Active @cheffe last edited by Codierknecht

                      @cheffe
                      Ich bin mal so frei und kommentiere @paul53 's Vorschlag ein bisschen:
                      0bc044f9-fa57-49dd-ad94-b957e5a377b6-image.png

                      1. Ist der Aufruf der Blockly-Funktion "sp1" beim Start des Scriptes und sorgt dafür, dass das Ganze auch nach einem Neustart des Scriptes sauber funktioniert.

                      2. Ist ein Trigger, der auf die Änderung Deines Datenpunktes reagiert, in dem Du die Uhrzeit abgelegt hast. Also der DP, der mit Deinem Widget verbunden ist. Du must ja die gewünschte Uhrzeit irgendwo hinterlegen - z.B. 0_userdata.0.Test.uhrzeit

                      3. Ist eine Blockly-Funktion, die Dir den eigentliche Schedule erstellt. Dabei wird die als String hinterlegte Uhrzeit am Doppelpunkt getrennt, um Stunden und Minuten separat zur Verfügung zu haben. Mit diesen beiden Werten wird der CRON eingerichtet.
                        Innerhalb des CRON muss dann (4) die für Deine Hardware passende Aktion ausgeführt werden. Also "Rollo auf" oder "Rollo ab".
                        Bei meinen Homematic-Aktoren würde das dann etwa so aussehen:
                        8b7f2304-187b-4788-88cb-b9dc0032243e-image.png
                        Bei Deiner Hardware vermutlich etwas anders.

                      Alles in Allem sähe das für Deinen Anwendungsfall "Rollo runterfahren" dann etwa so aus:
                      5c6e967c-98ff-4613-9533-81b09f42995f-image.png

                      Deine Aufgabe wäre jetzt, das an Deinen speziellen Anwendungsfall anzupassen.
                      Wir zeigen Dir gerne den Weg - machen musst Du schon selbst.

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

                        @cheffe
                        Ergänzung zu Punkt 2. von @Codierknecht: Wichtig ist das Stoppen des laufenden Zeitplans.

                        @codierknecht sagte in Datenpunkt für Uhrzeit (Rolladensteuerung):

                        Anwendungsfall "Rollo runterfahren" dann etwa so aus:

                        Komma durch Doppelpunkt ersetzen!

                        Codierknecht 1 Reply Last reply Reply Quote 1
                        • Codierknecht
                          Codierknecht Developer Most Active @paul53 last edited by

                          Danke @paul53 für den Hinweis.
                          Habe dann der Funktion auch gleich noch einen passenderen Namen verpasst 😉

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

                            @cheffe sagte: das script ist so in ordnung?

                            Man kann es auch nach diesem Prinzip machen, muss allerdings die "aktuelle Zeit" in einen String "hh:mm" wandeln. Dieser String-Vergleich hat den Nachteil, dass die Stunden vor 10 Uhr mit einer führenden "0" eingegeben werden müssen.

                            Blockly_temp.JPG

                            @codierknecht sagte in Datenpunkt für Uhrzeit (Rolladensteuerung):

                            Das wird jede Minute ausgeführt und produziert unnötig Last.

                            Jede Minute ist nicht wirklich eine Last für die CPU.

                            Codierknecht 1 Reply Last reply Reply Quote 0
                            • Codierknecht
                              Codierknecht Developer Most Active @paul53 last edited by

                              @paul53 sagte in Datenpunkt für Uhrzeit (Rolladensteuerung):

                              Jede Minute ist nicht wirklich eine Last für die CPU.

                              Last natürlich nicht wirklich ... aber unsauber.
                              Ist halt irgendwie blöd, wenn eine Funktion 1.440 x am Tag aufgerufen wird, obwohl man weiß dass sie genau 2 x etwas auslösen soll.

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

                                @codierknecht sagte: blöd, wenn eine Funktion 1.440 x am Tag aufgerufen wird, obwohl man weiß dass sie genau 2 x etwas auslösen soll.

                                Man kann den Minuten-Trigger leicht um weitere Uhrzeiten erweitern.
                                Bei Node.js ist das Problem nicht die CPU-Last, sondern ein hoher RAM-Bedarf bei komplexen Skripten.

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

                                Support us

                                ioBroker
                                Community Adapters
                                Donate

                                654
                                Online

                                32.0k
                                Users

                                80.4k
                                Topics

                                1.3m
                                Posts

                                3
                                15
                                515
                                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