Navigation

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

    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 Restlaufzeit anzeigen

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

      @blauholsten:

      das Thema gab es vor einiger Zeit schonmal `
      http://forum.iobroker.net/viewtopic.php?f=21&t=4990&p=49695#p49695. Man kann es mit setInterval(), einer Countdown-Funktion und einer Zählvariablen lösen (http://forum.iobroker.net/viewtopic.php?f=21&t=4796&p=47065#p47065).

      1 Reply Last reply Reply Quote 0
      • bahnuhr
        bahnuhr Forum Testing Most Active last edited by

        @paul53:

        Man kann es mit setInterval(), einer Countdown-Funktion und einer Zählvariablen lösen (http://forum.iobroker.net/viewtopic.php?f=21&t=4796&p=47065#p47065). `

        Grundlage bei mir ist auch Pauls Script.

        Danach selbst noch Variablen bei Objekte erstellt.

        // Countdown Garage
        
        var count,timer;
        
        function countdown(){
          count--;
          if(count > 0) {
                setState('javascript.0.Countdown.Garage.countdown', count);
                if (count > 60) {
                    var min = parseInt(count/60);
                    var sek = count - (min*60);
                    setState('javascript.0.Countdown.Garage.countdown', count);
                    setState('javascript.0.Countdown.Garage.countdown2', min + " Min.  " + sek + " Sek.");
                } else {
                    setState('javascript.0.Countdown.Garage.countdown', count);
                    setState('javascript.0.Countdown.Garage.countdown2', count + " Sek.");
                }
          }
          else {
                setState('javascript.0.Countdown.Garage.countTrigger', false );
          }
        }
        
        on({id: "javascript.0.Countdown.Garage.countTrigger", change: "ne"}, function(obj){
            if(obj.state.val) { 
                count = 600;  // in Sekunden
                timer = setInterval(countdown, 1000);   // 1000 = 1 Sek. ;  60000 = 60 Sek.
            } else {
                clearInterval(timer);
                setState('javascript.0.Countdown.Garage.countdown', 0 );
                setState('javascript.0.Countdown.Garage.countdown2', "" );
            }
        });
        

        Bei mir wird die Variable "…countdown2" mit Text befüllt: "3 Min 20 Sek."

        Als widget dann: basic string mit vorangestelltem html: "Garage schließt automatisch in "

        In vis wird dann folglich angezeigt:

        Garage schließt automatisch in 3 Min. 20 Sek.

        Klappt wunderbar.

        mfg

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

          Mal ne ganz blöde Frage: Wie bekomme ich das denn in Blockly integriert/glöst?

          1 Reply Last reply Reply Quote 0
          • M
            maxpd last edited by

            Auch interessiert in blockly

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

              @berndroid:

              Wie bekomme ich das denn in Blockly integriert/glöst? `
              493_blockly_delay_restlaufzeitanzeige.jpg

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

                @paul53:

                @berndroid:

                Wie bekomme ich das denn in Blockly integriert/glöst? filename="Blockly_delay_Restlaufzeitanzeige.JPG" index="0">~~

                Hallo zusammen,

                Ich verstehe das Blocky noch nicht so richtig .

                Countdown ist ein Datenpunkt ? Wenn ja wie muss er genau sein ?

                Bei Objekt kommt was rein ?

                Wie bekomme ich jetzt die Laufzeit ins Vis ?

                Gruß Jens

                Gesendet von iPad mit Tapatalk Pro

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

                  @chucky666:

                  Countdown ist ein Datenpunkt ? `
                  Nein, countDown(delay) ist eine Funktion, der die Verzögerung in s übergeben wird.
                  @chucky666:

                  Bei Objekt kommt was rein ? `
                  Die Datenpunkt-ID für die Anzeige der Restlaufzeit in Vis, so wie es im Kommentar darüber steht.

                  1 Reply Last reply Reply Quote 0
                  • D
                    DenniskKo last edited by

                    Hi,

                    habe mal versucht das ganze bei mir als Timer für die Steckdose meiner Osmoseanlage umzusetzen.

                    schaut so aus:
                    9339_blockly.png

                    So weit so gut. Bei längeren Laufzeiten kommt es aber immer wieder zu willkürlichen Abbrüchen des Scriptes.

                    avascript.0	2018-11-21 18:14:10.607	info	script.js.Timer.Timer_Osmoseanlage: setForeignState(id=vis.0.datapoints.Osmose-Timer.Restzeit, state={"val":476,"ack":true})
                    javascript.0	2018-11-21 18:14:09.604	info	script.js.Timer.Timer_Osmoseanlage: setForeignState(id=vis.0.datapoints.Osmose-Timer.Restzeit, state={"val":477,"ack":true})
                    javascript.0	2018-11-21 18:14:08.602	info	script.js.Timer.Timer_Osmoseanlage: setForeignState(id=vis.0.datapoints.Osmose-Timer.Restzeit, state={"val":478,"ack":true})
                    javascript.0	2018-11-21 18:14:07.600	info	script.js.Timer.Timer_Osmoseanlage: setForeignState(id=vis.0.datapoints.Osmose-Timer.Restzeit, state={"val":479,"ack":true})
                    javascript.0	2018-11-21 18:14:06.600	info	script.js.Timer.Timer_Osmoseanlage: setInterval(ms=1000)
                    javascript.0	2018-11-21 18:14:06.600	info	script.js.Timer.Timer_Osmoseanlage: clearInterval() => cleared
                    javascript.0	2018-11-21 18:14:06.600	info	script.js.Timer.Timer_Osmoseanlage: getState(id=vis.0.datapoints.Osmose-Timer.Laufzeit, timerId=0) => {"val":480,"ack":false,"ts":1542820108697,"q":0,"from":"system.adapter.admin.0","lc":1542820108697
                    javascript.0	2018-11-21 18:14:06.291	info	script.js.Timer.Timer_Osmoseanlage: setForeignState(id=vis.0.datapoints.Osmose-Timer.Restzeit, state={"val":181,"ack":true})
                    javascript.0	2018-11-21 18:14:05.288	info	script.js.Timer.Timer_Osmoseanlage: setForeignState(id=vis.0.datapoints.Osmose-Timer.Restzeit, state={"val":182,"ack":true})
                    javascript.0	2018-11-21 18:14:04.286	info	script.js.Timer.Timer_Osmoseanlage: setForeignState(id=vis.0.datapoints.Osmose-Timer.Restzeit, state={"val":183,"ack":true})
                    

                    Vorgegebene Zeit hier 480 Sekunden, bei 180 bricht er jedoch einfach ab und fängt von vorne an?

                    Was läuft da falsch?

                    Jemand eine Idee?

                    Grüße …

                    1 Reply Last reply Reply Quote 0
                    • F
                      Farmer-cb last edited by

                      Hallo

                      Ich mach das mit schedule, der im sekundentakt eine funktion aufruft.

                      Und darin einfach die max zeit (480) um 1 reduziert (minus) und bei 0 eine aktion ausführt.

                      Die db mit der aktuellen restzeit kannst ja ganz einfach in vis anzeigen

                      Gesendet von meinem FRD-L09 mit Tapatalk

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

                        Hallo

                        Sorry ich Check das immer noch nicht

                        Was muss ich machen wenn ich eine Steckdose 2 Std laufen lasse, diese Zeit möchte ich als Restlaufzeit in das Vis anzeigen.

                        Kann es jemand über Blocky mal erklären?

                        Gesendet von iPad mit Tapatalk Pro

                        1 Reply Last reply Reply Quote 0
                        • Ralla66
                          Ralla66 Most Active last edited by

                          Probiere es mal so,

                          den Datenpunkt Test1 verknüpfst du dann in der Vis, zB. mit einem Text Widget.
                          5230_stehlampe_timer.jpg
                          5230_stehlampe_timer_v2.jpg

                          1 Reply Last reply Reply Quote 0
                          • Ralla66
                            Ralla66 Most Active last edited by

                            Hier die 2 Stunden oder 120 Minuten:
                            5230_stehlampe_timer_v3.jpg

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

                              Danke dir , ich werde es morgen mal probieren

                              Schönen Abend

                              Gesendet von iPhone mit Tapatalk Pro

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

                                So habe das Script getestet, leider geht die Lampe nicht an . Und die Zeit wird auch nicht eingestellt im Vis

                                Gesendet von iPad mit Tapatalk Pro

                                1 Reply Last reply Reply Quote 0
                                • M
                                  Marty56 last edited by

                                  setStateDelayed("Test",true,10000);
                                  
                                  schedule("*/10 * * * * *",function(obj){
                                      var timerobj = getStateDelayed('Test');
                                      if (timerobj[0] !== undefined)
                                          log("Restzeit des Timers für Test in msec: " + timerobj[0].left); 
                                      else
                                          log("Timer für Test abgelaufen");
                                  });
                                  
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • chucky666
                                    chucky666 last edited by

                                    @Ralla66:

                                    Hier die 2 Stunden oder 120 Minuten: `

                                    Den Scriptenabletest Datenpunkt muss ich auch selber erstellen ?

                                    Wenn ja welcher Typ ?

                                    Gesendet von iPad mit Tapatalk Pro

                                    1 Reply Last reply Reply Quote 0
                                    • K
                                      Knallix last edited by

                                      Hallo Zusammen,

                                      habe mich auch etwas mit einem Countdown beschäftigt.
                                      Diesen Wert wollte ich ebenfalls gerne im VIS anzeigen.
                                      z.B. "Abgeschaltet wird in 03:30 Min."
                                      Ich lasse meine LED über einen Bewegungsmelder von Xiaomi anschalten.
                                      Nach einer Zeit X (15min) geht das Licht wieder aus.
                                      Diese Zeit lasse ich mir jetzt auf meiner VISU anzeigen.

                                      Hier der CODE (Blockly)
                                      Countdown.txt

                                      dslraser 1 Reply Last reply Reply Quote 0
                                      • dslraser
                                        dslraser Forum Testing Most Active @Knallix last edited by

                                        @Knallix sagte in Timer Restlaufzeit anzeigen:

                                        Hier der CODE (Blockly)
                                        Countdown.txt

                                        Das Blockly lässt sich nicht runter laden ?

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          Margreiter last edited by

                                          @dslraser sagte in Timer Restlaufzeit anzeigen:

                                          Countdown.txt

                                          Das File ist leer !!

                                          dslraser 1 Reply Last reply Reply Quote 0
                                          • dslraser
                                            dslraser Forum Testing Most Active @Margreiter last edited by

                                            @Margreiter sagte in Timer Restlaufzeit anzeigen:

                                            @dslraser sagte in Timer Restlaufzeit anzeigen:

                                            Countdown.txt

                                            Das File ist leer !!

                                            Warum sagst Du mir das ? Das ist von @Knallix

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            641
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            15
                                            24
                                            8431
                                            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