Navigation

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

    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

    Timer ungenau

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

      @haselchen sagte in Timer ungenau:

      Dazu müsste man aber mehr zu den Datenpunkte wissen.

      Das gilt für alle Berechnungen.

      Z.b. "Internetnutzung"
      Wo kommt der wert her
      Wie wird er erzeugt
      Reagiert dieser wert überhaupt sekundengenau, oder dauert es ggf. Minuten bis er true/false ist
      ...

      M 1 Reply Last reply Reply Quote 1
      • M
        mike2712 @Homoran last edited by

        @Homoran
        @haselchen

        Der Datenpunkt Internetnutzung wird konstat über VIS auf 0 oder 1 gesetzt, habe in einem Test dieses mit einer festen 1 verodert.

        Den Test habe ich jetzt mit steuere und aktualisiere gemacht, tatsächlich läuft dieser Wert bei aktualisiere deutlich langsamer weg wie bei steuere.
        Bei aktualisiere ist der Wert bei einer echten Laufzeit von 240 auf 230 gelaufen, vermutlich ist diese CRON einfach nicht so genau das man das für solche Zwecke benutzen kann. Ob es an der Hardeware oder Software liegt?

        Ich denke ich werde nach einen anderen Lösungsweg suchen müssen, mit Intervall Timern hatte ich es allerdings nicht hinbekommen, vielleicht baue ich die Geschichte soweit um das der CRON nur jede 30 Sekunden oder jede Minute gestartet wird um den schleichenden Fehler zu minimieren, andere Laufzeiten wie z.B. Einschaltzeiten von fernseher habe ich nach dem gleichen Prinzip gelöst, nur halt jede Minute, hier passt die Genauigkeit sehr gut.
        Hätte mich aber schon interessiert wie genau so ein CRON in dem Sekundentakt ist, spielt die Bearbeitungszeit des Scripts selbst auch eine Rolle, oder warum ist die Abweichung bei aktualisiere deutlich geringer? Der Inhalt des Script selbst ist ja doch im Prinzip zu vernachlässigen, ist ja nichts drin.

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

          @mike2712 sagte in Timer ungenau:

          Ich denke ich werde nach einen anderen Lösungsweg suchen müssen

          Triggern auf Änderung des Wertes von Internetnutzung
          Dann die Differenz aus aktueller zZeit und letztem timestamp

          M 1 Reply Last reply Reply Quote 1
          • M
            mike2712 @Homoran last edited by

            @Homoran
            Ja so ähnlich hatte ich es auch probiert, hatte immer ein Problem das es um 1 Stunde nicht passt, Sommer/Winterzeit Problem ? Aber eine gute Idee hier vielleicht nochmal anzusetzen.

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

              @mike2712 sagte in Timer ungenau:

              das es um 1 Stunde nicht passt

              Zeitzone in der vm?

              Aber Differenz ist Differenz!

              paul53 M 2 Replies Last reply Reply Quote 0
              • paul53
                paul53 @Homoran last edited by

                @Homoran sagte:

                Zeitzone in der vm?

                Die Timestamps sind unabhängig von der Zeitzone (UTC).

                1 Reply Last reply Reply Quote 0
                • M
                  mike2712 @Homoran last edited by

                  @Homoran

                  Ich muss den Wert zur Aktivierung in einem Datenpunkt schreiben, richtig? Wie muss ich diesen Datenpunkt konfigurieren, ich finde ein passendes Datenformat.
                  Wenn Internetnutzung auf 0 geht einfach die aktuelle Zeit - der gespeicherten Zeit rechnen, diese Differenz müsste dann idealerweise als Stunden:Minuten oder wie auch immer daraus kommen, so sollte der Ansatz sein, oder?

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

                    @mike2712 sagte in Timer ungenau:

                    Ich muss den Wert zur Aktivierung in einem Datenpunkt schreiben

                    Was bitte ist denn "Internetnutzung " jetzt?

                    M 1 Reply Last reply Reply Quote 0
                    • M
                      mike2712 @Homoran last edited by mike2712

                      @Homoran ein einfacher Logik Datenpunkt
                      e68e01ae-cd35-4f31-bf45-50feced2d07b-image.png

                      Homoran 1 Reply Last reply Reply Quote 0
                      • liv-in-sky
                        liv-in-sky @mike2712 last edited by liv-in-sky

                        @mike2712

                        es gibt ein script für solche timer/laufzeit fragen - vielleicht kannst du es brauchen

                        in dem script wird nicht gezählt, sondern nach einem einstellbaren interval berechnet - damit stimmt es auch, wenn iobroker oder server neugestartet wird

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

                          @mike2712 sagte:

                          Wenn Internetnutzung auf 0 geht einfach die aktuelle Zeit - der gespeicherten Zeit rechnen

                          Vorschlag ohne Reset von summe / Datenpunkt Nutzungsdauer:

                          Blockly_Nutzungsdauer.JPG

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

                            @mike2712 sagte in Timer ungenau:

                            ein einfacher Logik Datenpunkt

                            Und zu dem gibt es einenen timestamp der Änderung und einen last timestamp der letzten Änderung

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

                              @paul53 Das sieht gut aus, ich habe nur gerade Probleme den Datenpunkt so zu konfigurieren das im Script keine Warnungen auftauchen. Wie muss der Datenpunkt konfiguriert werden ?

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

                                @mike2712 sagte:

                                Wie muss der Datenpunkt konfiguriert werden ?

                                Der Datenpunkt für die Nutzungsdauer muss vom Typ "Zahl" (number) sein.

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

                                  @paul53 ok was genau ist Wert in dem Script? Wie kann ich letzte Änderung und vorherige letzte Änderung einsetzen?
                                  Der Umgang mit den Variablen ist mir im Blockly nicht so geläufig ich mache es immer nur mit den Datenpunkten.

                                  Homoran paul53 M 3 Replies Last reply Reply Quote 0
                                  • Homoran
                                    Homoran Global Moderator Administrators @mike2712 last edited by

                                    @mike2712
                                    Sieh mal in der Rubrik trigger

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

                                      @mike2712 sagte:

                                      Wert in dem Script? Wie kann ich letzte Änderung und vorherige letzte Änderung einsetzen?

                                      Alle drei sind Eigenschaften des Trigger-Datenpunktes unter Blöcke Trigger.

                                      M 1 Reply Last reply Reply Quote 0
                                      • M
                                        mike2712 @mike2712 last edited by

                                        @mike2712
                                        soweit komme ich
                                        e40be4a7-b06e-4eab-9c67-2221c204ac8b-image.png

                                        Nur fällt mir gerade auf das es so nicht funktionieren wird, die Zeiten sind dann sicherlich korrekt, aber die Restzeit soll weiterhin angezeigt werden.

                                        Vielleicht doch mal kurz die Funktion.
                                        Um die PC Nutzung zu überwachen wird die am Handy ein Datenpunkt auf Nutzung aktiv gesetzt, während die Nutzung aktiv ist wird die Zeit gezählt, diese wird dann von der Variablen Sollzeit abgezogen und als Restzeit angezeigt.
                                        Im Hintergrund wird noch die IP des Rechners überwacht, Alexa macht zu bestimmten Zeiten ansagen etc. das ganz hat eigentlich lange gut funktioniert bis mir vor einigen Tagen oder 2-3 Wochen aufgefallen ist das der Timer für die Nutzungszeit total ungenau geworden ist, aber eigentlich lief das ganze schon mal.

                                        Irgendwann hatte ich aufgrund der sekundlichen Log Einträge das script in dem die Zeit läuft ein/ausgeschaltet.
                                        2e26e168-06c6-43a0-9f5b-abc173650622-image.png

                                        Bin mir gerade unsicher ob es vielleicht zu diesem Zeitpunkt schlechter geworden ist, ich denke aber nicht.

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

                                          @paul53 sagte in Timer ungenau:

                                          @mike2712 sagte:

                                          Wert in dem Script? Wie kann ich letzte Änderung und vorherige letzte Änderung einsetzen?

                                          Alle drei sind Eigenschaften des Trigger-Datenpunktes unter Blöcke Trigger.

                                          ok, das habe ich jetzt, Danke

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

                                            @mike2712 sagte:

                                            soweit komme ich

                                            Wenn der Wert von "Zeit_Aktiv_TEST" in Minuten ist, muss er zum Setzen von Summe mit 60000 multipliziert werden (s. Vorschlag).

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            511
                                            Online

                                            31.9k
                                            Users

                                            80.3k
                                            Topics

                                            1.3m
                                            Posts

                                            blockly javascript
                                            5
                                            29
                                            1588
                                            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