Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Wie einfache Zeitschaltung?

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Wie einfache Zeitschaltung?

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

      Hallo zusammen….

      Ich hoffe für noxx ist es OK wenn ich mich mal mit in das Thema einklinken da ich ebenfalls auf der Suche nach einer ganz einfachen Zeitschaltuhr bin. Befasse mich erst seit kurzem mit IoBroker und allem was dazu gehört. Bisher habe ich auch schon einiges hin bekommen. Woran ich jedoch verzweifel ist Java Skript und Blockly. Ich bin jetzt schon ein paar Tage an dem Thema und bekomme es einfach nicht hin. Ich habe die Blocks wie ich der Meinung war wie sie richtig zusammen gesetzt werden abgespeichert und in Vis habe ich das Skript dann dem entsprechenden Schalter zugewiesen. Ohne Erfolg. Kann sich das mal einer von euch anschauen? Es geht um eine Pumpe die zwischen 10.00 Uhr und 18.00 laufen soll. Wenn ich sie von Hand vorher anschalte, soll sie an bleiben in dem vorgegebenen Zeitraum und dann aus gehen. Der letzte Versuch sah wie folgt aus. Danke im voraus für eure Hilfe.~~![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201707 ... 3ebc4a.jpg">https://uploads.tapatalk-cdn.com/20170706/17cd392fdb0c032cd924fcc3833ebc4a.jpg</link_text>" />

      Gesendet von meinem HUAWEI NXT-L29 mit Tapatalk~~

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

        @Master77:

        Hallo zusammen….

        Ich hoffe für noxx ist es OK wenn ich mich mal mit in das Thema einklinken da ich ebenfalls auf der Suche nach einer ganz einfachen Zeitschaltuhr bin. Befasse mich erst seit kurzem mit IoBroker und allem was dazu gehört. Bisher habe ich auch schon einiges hin bekommen. Woran ich jedoch verzweifel ist Java Skript und Blockly. Ich bin jetzt schon ein paar Tage an dem Thema und bekomme es einfach nicht hin. Ich habe die Blocks wie ich der Meinung war wie sie richtig zusammen gesetzt werden abgespeichert und in Vis habe ich das Skript dann dem entsprechenden Schalter zugewiesen. Ohne Erfolg. Kann sich das mal einer von euch anschauen? Es geht um eine Pumpe die zwischen 10.00 Uhr und 18.00 laufen soll. Wenn ich sie von Hand vorher anschalte, soll sie an bleiben in dem vorgegebenen Zeitraum und dann aus gehen. Der letzte Versuch sah wie folgt aus. Danke im voraus für eure Hilfe.~~![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201707 ... 3ebc4a.jpg">https://uploads.tapatalk-cdn.com/20170706/17cd392fdb0c032cd924fcc3833ebc4a.jpg</link_text>" />

        Gesendet von meinem HUAWEI NXT-L29 mit Tapatalk~~ ` ~~Dein Trigger macht keinen Sinn. Benutze dafür den Zeitplan und lasse das in bestimmten Intervallen ausführen.

        MfG

        dna909~~

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

          Hallo

          Kannst du mir bei der Zusammenstellung der Blöcke behilflich sein? Wie gesagt, ich tue mich noch ein wenig schwer damit….

          Gesendet von meinem HUAWEI NXT-L29 mit Tapatalk

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

            @Master77:

            Hallo

            Kannst du mir bei der Zusammenstellung der Blöcke behilflich sein? Wie gesagt, ich tue mich noch ein wenig schwer damit….

            Gesendet von meinem HUAWEI NXT-L29 mit Tapatalk `

            Probiers mal so, Datenpunkte musst Du natürlich anpassen:
            2269_unbenannt2.png

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

              Vielen Dank. Werde ich nachher direkt mal testen und dann berichten.

              Gesendet von meinem HUAWEI NXT-L29 mit Tapatalk

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

                @dna909:

                @Master77:

                Hallo zusammen….

                Ich hoffe für noxx ist es OK wenn ich mich mal mit in das Thema einklinken da ich ebenfalls auf der Suche nach einer ganz einfachen Zeitschaltuhr bin. Befasse mich erst seit kurzem mit IoBroker und allem was dazu gehört. Bisher habe ich auch schon einiges hin bekommen. Woran ich jedoch verzweifel ist Java Skript und Blockly. Ich bin jetzt schon ein paar Tage an dem Thema und bekomme es einfach nicht hin. Ich habe die Blocks wie ich der Meinung war wie sie richtig zusammen gesetzt werden abgespeichert und in Vis habe ich das Skript dann dem entsprechenden Schalter zugewiesen. Ohne Erfolg. Kann sich das mal einer von euch anschauen? Es geht um eine Pumpe die zwischen 10.00 Uhr und 18.00 laufen soll. Wenn ich sie von Hand vorher anschalte, soll sie an bleiben in dem vorgegebenen Zeitraum und dann aus gehen. Der letzte Versuch sah wie folgt aus. Danke im voraus für eure Hilfe.~~![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201707 ... 3ebc4a.jpg">https://uploads.tapatalk-cdn.com/20170706/17cd392fdb0c032cd924fcc3833ebc4a.jpg</link_text>" />

                Gesendet von meinem HUAWEI NXT-L29 mit Tapatalk~~ ` ~~Dein Trigger macht keinen Sinn. Benutze dafür den Zeitplan und lasse das in bestimmten Intervallen ausführen.

                MfG

                dna909~~ ` ~~Stimmt. Dein Trigger macht keinen Sinn.

                Das Bespiel von dna909 konnte ich nicht ganz nachvollziehen, deswegen nochmal eine andere Möglichkeit, falls die nicht laufen sollte.

                Ich würde einfach um 18 Uhr prüfen ob die Pumpe aus ist -> dann einschalten; und um 18 Uhr prüfen ob sie läuft -> dann ausschalten.

                Zusätzlich soll man die Pumpe zwischen 10 und 18 Uhr nicht ausschalten dürfen, d.h. sie schaltet immer in diesem Zeitraum an, falls man sie (aus Versehen) ausschaltet:

                EDIT: in dem Beispiel würde die Pumpe nach 18 Uhr natürlich durchlaufen bis 18 Uhr, es sei denn man schaltet sie aus, wenn es nicht zw. 10 und 18 Uhr ist. Also das könnte man noch abfangen.

                1146_unbenannt.jpg

                Blockly Code:

                ! <xml 1999/xmlns="<URL url=" http:/www.w3.org/xhtml"="">http://www.w3.org/1999/xhtml">
                ! <block type="schedule" id="tg]HB5dw=O)Y:ThO4e_i" x="138" y="87"><field name="SCHEDULE">0 10 * * </field>
                ! <statement name="STATEMENT"><block type="controls_if" id=";B4MZTZs)?584%[:Hrqz"><value name="IF0"><block type="logic_compare" id="ITMwFh
                CL{+8I-gxdeL#"><field name="OP">EQ</field>
                ! <value name="A"><block type="get_value" id="QWkcfS*0Xt@1-|4JXp~"><field name="ATTR">val</field> ! <field name="OID">hm-rpc.0.LEQ0183615.1.STATE</field></block></value> ! <value name="B"><block type="logic_boolean" id="M*]/*5X28i)cB-xKzvxc"><field name="BOOL">FALSE</field></block></value></block></value> ! <statement name="DO0"><block type="control" id="b^mJ2E#@h%pv#=P2(uF7"><mutation delay_input="false"></mutation> ! <field name="OID">hm-rpc.0.LEQ0183615.1.STATE</field> ! <field name="WITH_DELAY">FALSE</field> ! <value name="VALUE"><block type="logic_boolean" id="%^|XcteMCnsJ{Fo,GXW"><field name="BOOL">TRUE</field></block></value></block></statement></block></statement>
                ! <next><block type="schedule" id="%3w-2Y;EBEk6OQf6Fz-"><field name="SCHEDULE">0 18 * * *</field> ! <statement name="STATEMENT"><block type="controls_if" id="[RrY9:vooU9Cq_e#^lYp"><value name="IF0"><block type="logic_compare" id="T2bO8;_w3zS%)kcp@;c3"><field name="OP">EQ</field> ! <value name="A"><block type="get_value" id="xNh)O:FOtk;Sj1J.hMtF"><field name="ATTR">val</field> ! <field name="OID">hm-rpc.0.LEQ0183615.1.STATE</field></block></value> ! <value name="B"><block type="logic_boolean" id="mS8TX!w_*~7)tL_BP7k)"><field name="BOOL">TRUE</field></block></value></block></value> ! <statement name="DO0"><block type="control" id=")5cv|._F1aAqM~f%b=#"><mutation delay_input="false"></mutation>
                ! <field name="OID">hm-rpc.0.LEQ0183615.1.STATE</field>
                ! <field name="WITH_DELAY">FALSE</field>
                ! <value name="VALUE"><block type="logic_boolean" id="ko+r3aF|nR;DCl8rp4Ym"><field name="BOOL">FALSE</field></block></value></block></statement></block></statement>
                ! <next><block type="on_ext" id="cI4N9R^w+a.=0vBjR"><mutation items="1"></mutation> ! <field name="CONDITION">ne</field> ! <value name="OID0"><shadow type="field_oid" id="#juxne4;52U=J:ZC-Kj."><field name="oid">hm-rpc.0.LEQ0183615.1.STATE</field></shadow></value> ! <statement name="STATEMENT"><block type="controls_if" id="+]3bM6JXd/AqQ.b[6DZ"><value name="IF0"><block type="logic_operation" id="A!k=5mNd;.)Kq-T,WChz" inline="false"><field name="OP">AND</field>
                ! <value name="A"><block type="time_compare" id="c!`3#wtN8Bm.my7i+vD)"><mutation end_time="true"></mutation>
                ! <field name="OPTION">between</field>
                ! <field name="START_TIME">10:00</field>
                ! <field name="END_TIME">18:00</field></block></value>
                ! <value name="B"><block type="logic_compare" id="7nX3f[f)M%Q#/PZn}Q-1"><field name="OP">EQ</field>
                ! <value name="A"><block type="get_value" id="^x-kBOauN;)6es6aHrU
                "><field name="ATTR">val</field>
                ! <field name="OID">hm-rpc.0.LEQ0183615.1.STATE</field></block></value>
                ! <value name="B"><block type="logic_boolean" id="mAY
                ^v?7W%l[6?OQ6to1"><field name="BOOL">FALSE</field></block></value></block></value></block></value>
                ! <statement name="DO0"><block type="control" id="x:m~n]#dINvw4:Ym.uag"><mutation delay_input="false"></mutation>
                ! <field name="OID">hm-rpc.0.LEQ0183615.1.STATE</field>
                ! <field name="WITH_DELAY">FALSE</field>
                ! <value name="VALUE"><block type="logic_boolean" id="HX[U9~bgI?14H|/yEs2^"><field name="BOOL">TRUE</field></block></value></block></statement></block></statement></block></next></block></next></block></xml>~~

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

                  Hallo Master77

                  dna909 hat Recht. Dein Trigger macht keinen Sinn. Sein Vorschlag geht in die richtige Richtung.

                  Du musst immer überlegen, was ein Trigger macht.

                  Ein Trigger reagiert auf Ereignisse.

                  Erst wenn das gewünschte/überwachte Ereignis eintritt, werden die Bausteine innerhalb der Triggers (einmalig) ausgeführt.

                  Dann wird auf das nächste Ereignis gewartet.

                  Dein Trigger wartet auf die Änderung eines Schalters.

                  Tritt das Ereignis ein, fragst Du die Zeit ab und schaltest den Schalter nochmal.

                  Blocklys kann man gut von oben nach unten lesen.

                  Machen wir das doch mal.

                  Dein Trigger überwacht den Schalter auf "Änderung".

                  Der Trigger startet wenn der Zustand des Schalters "wahr" und "unwahr" wird.

                  Jetzt muss man nur noch einige Möglichkeiten durchspielen.

                  Schalter wird eingeschaltet (wahr)

                  Falls Zeit zwischen 18 und 24 Uhr , wird er nochmal eingeschaltet (wahr)

                  Sonst wird er wieder ausgeschaltet (unwahr)

                  Das macht nicht wirklich Sinn. Ausser Du möchtest den Schalter nur zu bestimmten Zeiten schalten können.

                  Du möchtest aber den Schalter zu bestimmten Zeiten automatisch schalten.

                  Also musst Du die Zeit triggern und dann überprüfen ob der Zeitpunkt stimmt.

                  So wie Dir dna909 das vorgeschlagen hat.

                  Ganz wichtig ist auch in seinem Beispiel, die vorherige Abfrage des aktuellen Schalterzustands.

                  Wenn der Schalter schon "wahr" ist, muss er nicht nochmal eingeschaltet werden. Oder umgekehrt.

                  Das macht zwar nichts kaputt, erhöht aber unnötig den Funkverkehr (DutyCycle).

                  Also nichts schalten, was nicht geschaltet werden muss.

                  Grüße

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

                    So wie lobomau das gemacht hat geht es natürlich auch.

                    (ist aber etwas umständlicher)

                    Viele Wege führen nach Rom.

                    Grüße

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

                      Vielen Dank für die hilfreichen Tipps und die zusammengestellten Skripte. Wie gesagt, ich bin gerade erst am Anfang mit IoBroker. Habe bereits einiges hin bekommen, nur die Sache mit Blockly macht mir zu schaffen. Nachdem ich eure Zusammenstellung sehe kommt langsam Licht ins Dunkel. Werde die ganze Sache mal testen und dann wie gesagt sofort berichten. Nochmals vielen Dank…..

                      Gruß Markus

                      Gesendet von meinem HUAWEI NXT-L29 mit Tapatalk

                      1 Reply Last reply Reply Quote 0
                      • N
                        noxx last edited by

                        @paul53:

                        Bessere Lösung, da hier das Senden nach einer Minute wiederholt wird, falls es nicht erfolgreich (Ack = true) war:

                        var idTemp = 'rflink.0.channels.Cresta_1.TEMP';
                        var idAktor = 'fritzdect.0.DECT200_087610163304.state';
                        
                        var minOn = false;
                        var temp = getState(idTemp).val;
                        var aktor = getState(idAktor).val;
                        
                        function Zeitschaltung() {
                           var morgen = compareTime('08:00', '09:00', 'between');
                           var mittag = compareTime('12:00', '17:00', 'between');
                           var abend = compareTime('18:00', '20:00', 'between');
                           if(morgen || (mittag && temp > 25) || abend) {
                              if(!aktor) setState(idAktor, true);
                           } else if(aktor && !minOn) setState(idAktor, false);
                        }
                        
                        schedule('* * * * *', Zeitschaltung);  // jede Minute
                        
                        on(idTemp, function(dp) {
                           temp = dp.state.val;
                        });
                        
                        on({id: idAktor, ack: true}, function(dp) {
                           aktor = dp.state.val;
                           if(aktor) {
                              minOn = true;
                              setTimeout(function() {minOn = false;}, 1800000);  // 30 Minuten
                           }
                        }); 
                        ```` `  
                        

                        Hallo,

                        bin gerade zufällig zuhause und sehe das die Pumpe läuft.

                        fritzdect.0	2017-07-07 13:08:02.327	info	polling! fritzdect is alive
                        fritzdect.0	2017-07-07 13:06:00.916	info	Turned switch 087610163304 on
                        fritzdect.0	2017-07-07 13:06:00.157	info	SWITCH ID: 087610163304 identified for command
                        fritzdect.0	2017-07-07 13:03:02.314	info	polling! fritzdect is alive
                        fritzdect.0	2017-07-07 13:03:00.920	info	Turned switch 087610163304 off
                        fritzdect.0	2017-07-07 13:03:00.158	info	SWITCH ID: 087610163304 identified for command
                        fritzdect.0	2017-07-07 13:02:00.921	info	Turned switch 087610163304 off
                        fritzdect.0	2017-07-07 13:02:00.157	info	SWITCH ID: 087610163304 identified for command
                        fritzdect.0	2017-07-07 13:00:01.320	info	Turned switch 087610163304 off
                        fritzdect.0	2017-07-07 13:00:00.166	info	SWITCH ID: 087610163304 identified for command
                        fritzdect.0	2017-07-07 12:59:00.905	info	Turned switch 087610163304 off
                        fritzdect.0	2017-07-07 12:59:00.156	info	SWITCH ID: 087610163304 identified for command
                        fritzdect.0	2017-07-07 12:58:02.307	info	polling! fritzdect is alive
                        fritzdect.0	2017-07-07 12:58:00.912	info	Turned switch 087610163304 on
                        fritzdect.0	2017-07-07 12:58:00.156	info	SWITCH ID: 087610163304 identified for command
                        fritzdect.0	2017-07-07 12:57:01.332	info	Turned switch 087610163304 on
                        fritzdect.0	2017-07-07 12:57:00.155	info	SWITCH ID: 087610163304 identified for command
                        fritzdect.0	2017-07-07 12:56:00.925	info	Turned switch 087610163304 on
                        fritzdect.0	2017-07-07 12:56:00.156	info	SWITCH ID: 087610163304 identified for command
                        fritzdect.0	2017-07-07 12:55:00.915	info	Turned switch 087610163304 on
                        fritzdect.0	2017-07-07 12:55:00.155	info	SWITCH ID: 087610163304 identified for command
                        

                        ID der Temp Sensors:

                        rflink.0.channels.Cresta_1.TEMP

                        Aktuell 23,2°. Normal dürfte die doch nicht angehen, oder?
                        2880_1.png

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

                          @noxx:

                          Aktuell 23,2°. Normal dürfte die doch nicht angehen, oder? `
                          War es vielleicht zwischen 12:45 und 13:00 mal über 25 °C und die Pumpe läuft noch aufgrund der Mindestlaufzeit ?

                          Um zu sehen, was wann passiert, helfen zum Testen ein par Logs, z.B. am Ende der Funktion Zeitschaltung

                              log('morgen: ' + morgen + ', mittag: ' + mittag + ', Temperatur: ' + temp + ', abend: ' + abend + ', Mindestlaufzeit: ' + minOn);
                          
                          1 Reply Last reply Reply Quote 0
                          • N
                            noxx last edited by

                            Nein, habe gerade Pumpe ausgeschaltet und nun ist die wieder

                            an

                            fritzdect.0	2017-07-07 14:43:02.520	info	polling! fritzdect is alive
                            fritzdect.0	2017-07-07 14:40:01.339	info	Turned switch 087610163304 on
                            fritzdect.0	2017-07-07 14:40:00.157	info	SWITCH ID: 087610163304 identified for command
                            fritzdect.0	2017-07-07 14:38:02.509	info	polling! fritzdect is alive
                            fritzdect.0	2017-07-07 14:36:00.924	info	Turned switch 087610163304 off
                            fritzdect.0	2017-07-07 14:36:00.156	info	SWITCH ID: 087610163304 identified for command
                            fritzdect.0	2017-07-07 14:35:00.923	info	Turned switch 087610163304 off
                            fritzdect.0	2017-07-07 14:35:00.157	info	SWITCH ID: 087610163304 identified for command
                            fritzdect.0	2017-07-07 14:34:01.457	info	Turned switch 087610163304 off
                            fritzdect.0	2017-07-07 14:34:00.156	info	SWITCH ID: 087610163304 identified for command
                            fritzdect.0	2017-07-07 14:33:02.500	info	polling! fritzdect is alive
                            fritzdect.0	2017-07-07 14:32:00.935	info	Turned switch 087610163304 on
                            fritzdect.0	2017-07-07 14:32:00.158	info	SWITCH ID: 087610163304 identified for command
                            fritzdect.0	2017-07-07 14:31:00.954	info	Turned switch 087610163304 on
                            fritzdect.0	2017-07-07 14:31:00.158	info	SWITCH ID: 087610163304 identified for command
                            fritzdect.0	2017-07-07 14:30:00.933	info	Turned switch 087610163304 on
                            fritzdect.0	2017-07-07 14:30:00.156	info	SWITCH ID: 087610163304 identified for command
                            

                            Beim LOG gibts nen Fehler

                            14:45:06.350	[info]	javascript.0 Stop script script.js.common.PoolPumpe
                            14:45:06.389	[info]	javascript.0 Start javascript script.js.common.PoolPumpe
                            14:45:06.391	[error]	javascript.0 script.js.common.PoolPumpe: ReferenceError: morgen is not defined at script.js.common.PoolPumpe:29:18 at ContextifyScript.Script.runInContext (vm.js:35:29)
                            
                            var idTemp = 'rflink.0.channels.Cresta_1.TEMP';
                            var idAktor = 'fritzdect.0.DECT200_087610163304.state';
                            
                            var minOn = false;
                            var temp = getState(idTemp).val;
                            var aktor = getState(idAktor).val;
                            
                            schedule('* * * * *', function() {  // jede Minute
                               var morgen = compareTime('08:00', '09:00', 'between');
                               var mittag = compareTime('12:00', '17:00', 'between');
                               var abend = compareTime('18:00', '20:00', 'between');
                               if(morgen || (mittag && temp > 25) || abend) {
                                  if(!aktor) setState(idAktor, true);
                               } else if(aktor && !minOn) setState(idAktor, false);
                            });
                            
                            on(idTemp, function(dp) {
                               temp = dp.state.val;
                            });
                            
                            on({id: idAktor, ack: true}, function(dp) {
                               aktor = dp.state.val;
                               if(aktor) {
                                  minOn = true;
                                  setTimeout(function() {minOn = false;}, 1800000);  // 30 Minuten
                               }
                            }); 
                            
                            log('morgen: ' + morgen + ', mittag: ' + mittag + ', Temperatur: ' + temp + ', abend: ' + abend + ', Mindestlaufzeit: ' + minOn);
                            

                            EDIT

                            Sehe gerade, das die Temp Anzeige manchmal auf 26°C springt, warum auch immer. Na wird wohl der "Fehler" liegen. Evtl

                            empfange ich auf dem selben Kanal auch einen Sensor vom Nachbarn….

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

                              Am Ende des Skripts wird das Log nur einmal bei Skriptstart ausgeführt. Richtig:

                              var idTemp = 'rflink.0.channels.Cresta_1.TEMP';
                              var idAktor = 'fritzdect.0.DECT200_087610163304.state';
                              
                              var minOn = false;
                              var temp = getState(idTemp).val;
                              var aktor = getState(idAktor).val;
                              
                              schedule('* * * * *', function() {  // jede Minute
                                 var morgen = compareTime('08:00', '09:00', 'between');
                                 var mittag = compareTime('12:00', '17:00', 'between');
                                 var abend = compareTime('18:00', '20:00', 'between');
                                 if(morgen || (mittag && temp > 25) || abend) {
                                    if(!aktor) setState(idAktor, true);
                                 } else if(aktor && !minOn) setState(idAktor, false);
                                 log('morgen: ' + morgen + ', mittag: ' + mittag + ', Temperatur: ' + temp + ', abend: ' + abend + ', Mindestlaufzeit: ' + minOn);
                              });
                              
                              on(idTemp, function(dp) {
                                 temp = dp.state.val;
                              });
                              
                              on({id: idAktor, ack: true}, function(dp) {
                                 aktor = dp.state.val;
                                 if(aktor) {
                                    minOn = true;
                                    setTimeout(function() {minOn = false;}, 1800000);  // 30 Minuten
                                 }
                              });
                              
                              

                              Dann kommt auch die Fehlermeldung nicht, denn die Variable morgen ist lokal innerhalb der Funktion.

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

                                Hallo zusammen. Habe am Wochenende wieder ein wenig Zeit zum bastel und ausprobieren gehabt. Das Skript von dna909 funktioniert super. Habe nur noch eine Frage dazu. Wenn ich bei laufender Zeitschaltuhr das Bauteil aus der Reihe schalte ( Zeitschaltuhr Statur Bauteil aus und ich schalte per Schalter in Vis das Bauteil an) ändert die Zeitschaltuhr das relativ schnell wieder. Kann man diese Zeitspanne nicht ein wenig verlängern? Habe schon versucht bei Blocky unter Zeitplan auf alle zwei Stunden zu ändern. Hatte gedacht das durch diese Einstellung der Status der Zeitschaltuhr alle zwei Stunden geprüft wird. Ist dem nicht so? Danke im voraus für eure Hilfe. Im Anhang nochmal das Blocky Diagramm.

                                Gruß Markus

                                Gesendet von meinem HUAWEI NXT-L29 mit Tapatalk
                                2754_screenshot_20170710-220715.png

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

                                  @Master77:

                                  Hallo zusammen. Habe am Wochenende wieder ein wenig Zeit zum bastel und ausprobieren gehabt. Das Skript von dna909 funktioniert super. Habe nur noch eine Frage dazu. Wenn ich bei laufender Zeitschaltuhr das Bauteil aus der Reihe schalte ( Zeitschaltuhr Statur Bauteil aus und ich schalte per Schalter in Vis das Bauteil an) ändert die Zeitschaltuhr das relativ schnell wieder. Kann man diese Zeitspanne nicht ein wenig verlängern? Habe schon versucht bei Blocky unter Zeitplan auf alle zwei Stunden zu ändern. Hatte gedacht das durch diese Einstellung der Status der Zeitschaltuhr alle zwei Stunden geprüft wird. Ist dem nicht so? Danke im voraus für eure Hilfe. Im Anhang nochmal das Blocky Diagramm. `
                                  Hallo Master77

                                  Bilder bitte NIE als Link sondern als ".png" hier einbetten.

                                  Ich konnte mir Dein Bild also nicht genau anschauen.

                                  Bitte Deinen Beitrag editieren und Screenshot ändern.

                                  Grundsätzlich ist es schwierig in eine automatik manuell einzugreifen.

                                  Woher soll das Script den wissen, dass Du etwas manuell geändert hast?

                                  Das würde nur über eine zusätzliche Variable gehen.

                                  Grüße

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

                                    Hallo. Habe den Beitrag nochmal editiert. Durch den Zeitplan kann man doch einen Intervall angeben in dem die Zeitschaltuhr prüft ob der Status der gegeben sein muss aus stimmt. Beispielsweise wenn ich die Pumpe manuelle um 19 Uhr nochmal anschalte die Zeitschaltuhr aber erst nach einer vorgegebenen Zeit den Status erneut prüft. Hatte gedacht das geht in dem abgebildeten Zeitplan Blocky. So hatte ich es zumindest verstanden als ich auf die *****drauf gegangen bin. Jedoch hatte die Änderung in dem Zeitplan nicht den gewünschten Erfolg gebracht.

                                    Gruß Markus

                                    Gesendet von meinem HUAWEI NXT-L29 mit Tapatalk

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

                                      Hallo Master77

                                      So etwas passiert wenn in einem Thread unterschiedliche Probleme bearbeitet werden.

                                      In der ursprünglichen Anforderung ging es um eine Pumpe die in einem bestimmten Zeitraum für eine bestimmte Dauer läuft.

                                      Dein gezeigtes Beispiel hat einen Trigger, der JEDE MINUTE startet.

                                      Zwischen 18 und 24 Uhr wird die Lampe eingeschaltet WENN sie AUS ist.

                                      Zu jedem anderen Zeitpunkt (sonst-Teil) wird die Lampe ausgeschaltet WENN sie AN ist.

                                      Wenn Du die Lampe um 10 Uhr einschaltest, wird sie SPÄTESTENS eine Minute danach wieder ausgeschaltet.

                                      Was willst Du erreichen?

                                      Eventuell in einem neuen Thread mit "[FRAGE] Blockly…....." im Betreff.

                                      Grüße

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

                                        Hallo. Da es in dem ursprünglichen Beitrag ebenfalls um eine Blocky Zeitschaltuhr ging hatte ich gedacht ich klinke mich in das Thema mit ein. Wollte hier ja nicht für Unordnung sorgen. Was ich genau möchte hatte ich ja bereits geschrieben. Aus der Reihe manuell schalten und die Zeitschaltuhr soll erst nach einer Zeit x den Zustand erneut prüfen und ggf korrigieren. Nicht bereits nach 1 Minute. Werde selber noch mal versuchen die Sache auf die Kette zu bekommen. Ansonsten muss ich halt einen neuen Thread auf machen.

                                        Gruß Markus

                                        Gesendet von meinem HUAWEI NXT-L29 mit Tapatalk

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

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        834
                                        Online

                                        32.0k
                                        Users

                                        80.4k
                                        Topics

                                        1.3m
                                        Posts

                                        7
                                        34
                                        8752
                                        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