Navigation

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

    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

    Steuerung Poolpumpe

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

      Und?

      Läuft es jetzt?

      Bei mir sieht das log so aus:

      javascript.0	2018-06-13 19:34:00.891	info	script.js.Hardware.Master.Poolsteuerung: Pumpe aus
      javascript.0	2018-06-13 19:33:00.893	info	script.js.Hardware.Master.Poolsteuerung: Pumpe aus
      javascript.0	2018-06-13 19:32:00.683	info	script.js.Hardware.Master.Poolsteuerung: Pumpe an
      javascript.0	2018-06-13 19:31:53.666	info	script.js.Hardware.Master.Poolsteuerung: 19:32
      

      Gruß

      Rainer

      1 Reply Last reply Reply Quote 0
      • G
        GeorgS last edited by

        Nach der Zeit änderung passiert nix mehr
        7208_1.png

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

          Dann mal ein paar debug-Blöcke an sinnvollen Stellen einbauen und beobachten

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

            OHO!!!

            Dein RasPi hat die falsche Uhrzeit!!!!

            Der RasPi geht zwei Stunden nach

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

              @Homoran:

              Bei mir sieht das log so aus: `
              Laufzeit_2 ist 2 Minuten ?
              @GeorgS:

              Nach der Zeit änderung passiert nix mehr `
              Dann scheint schedule nicht zu funktionieren ? Teste mal das Skript

              schedule('45 19 * * *', function() {
                 log('Schedule funktioniert');
              });
              
              1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators last edited by

                @paul53:

                Laufzeit_2 ist 2 Minuten ? `
                Ja!

                Systemzeit bei Georg im log gesehen?

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

                  @Homoran:

                  Der RasPi geht zwei Stunden nach `
                  Stimmt ! Dann muss halt 2 Stunden gewartet werden, bis der Test-Schedule ausgeführt wird :lol:

                  1 Reply Last reply Reply Quote 0
                  • G
                    GeorgS last edited by

                    Ich denke das Script geht jetzt es war wirklich die falsche Zeit auf dem Server…

                    Warum er aber sagt das der Testschalter nicht da ist weiß ich nicht 😞 Ich hab jetzt den DECT Schalter wieder genommen zum Testen
                    7208_1.png

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

                      Text editieren ist ja nett, aber wie ist das Ergebnis?

                      1 Reply Last reply Reply Quote 0
                      • G
                        GeorgS last edited by

                        @Homoran:

                        Text editieren ist ja nett, aber wie ist das Ergebnis? `

                        javascript.0 2018-06-13 19:55:00.821 warn script.js.common.Pool.Filteranlage: setForeignState(id=fritzdect.0.DECT200_087610446720.state, state=true) - was not executed, while debug mode is active

                        habe jetzt noch den Debug ausgeschalten mal sehen 😃

                        1 Reply Last reply Reply Quote 0
                        • G
                          GeorgS last edited by

                          Es geht, na endlich…

                          DANKE für eure Gedult mir und der supper hilfe... jetzt nur noch die 2. Zeit scripten und die Schadule :shock:

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

                            Dann versuche es mal mit dem folgenden Blockly-Export (Datenpunkte "Test.Schalter" müssen getauscht werden).

                            ! ````
                            <xml xmlns="http://www.w3.org/1999/xhtml"><block type="procedures_defnoreturn" id="Tt0xA0VHK,r.z*!/F^qy" x="-337" y="113"><mutation><arg name="val"></arg></mutation>
                            <field name="NAME">setSchedule1</field>
                            <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                            <statement name="STACK"><block type="variables_set" id=":TM{I_9V?m1Ee_.hPN{H"><field name="VAR">uhrzeit</field>
                            <value name="VALUE"><block type="lists_split" id=",ZR]bZp7s68icCbFu}r{"><mutation mode="SPLIT"></mutation>
                            <field name="MODE">SPLIT</field>
                            <value name="INPUT"><block type="variables_get" id="Rr}ftb+:QVF{0BgH!lw"><field name="VAR">val</field></block></value>
                            <value name="DELIM"><shadow type="text" id="Z_uEO+Fh)/BJmRl[klKf"><field name="TEXT">:</field></shadow>
                            <block type="text" id="EK0BSe78ZX-?A2~fDl8{"><field name="TEXT">:</field></block></value></block></value>
                            <next><block type="schedule_clear" id="9KnW0{[3G~MIYO?l8f?f"><field name="NAME">schedule1</field>
                            <next><block type="schedule_create" id="wCivpX31v44lJw7_xJDu"><field name="NAME">schedule1</field>
                            <value name="SCHEDULE"><shadow type="field_cron" id="+8y!j8q]Sur^hPyYtgi%"><field name="CRON">* * * * </field></shadow>
                            <block type="cron_builder" id="^UHwrC
                            c(v|w]C-+#GkF"><mutation seconds="false" as_line="false"></mutation>
                            <field name="LINE">FALSE</field>
                            <field name="WITH_SECONDS">FALSE</field>
                            <value name="DOW"><shadow type="text" id="k+0Up{NX:8#}^/@./N5"><field name="TEXT">*</field></shadow></value> <value name="MONTHS"><shadow type="text" id="ewTOM~F/WOLpE-a0lnUL"><field name="TEXT">*</field></shadow></value> <value name="DAYS"><shadow type="text" id="w,T#?S|GH8/Xf6XudwO("><field name="TEXT">*</field></shadow></value> <value name="HOURS"><shadow type="text" id="m@SJ8RwvU[7ABk*YT!{?"><field name="TEXT">*</field></shadow> <block type="lists_getIndex" id="jMrWMISH#4TF1wTzs4pv"><mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"><block type="variables_get" id=".(30DCd,DMb:?A_6HyOd"><field name="VAR">uhrzeit</field></block></value> <value name="AT"><block type="math_number" id="Gl}%9i=g-b)xymxGs4iC"><field name="NUM">1</field></block></value></block></value> <value name="MINUTES"><shadow type="text" id=";zCdi%bQk+N8M0ZJ;D,"><field name="TEXT">*</field></shadow>
                            <block type="lists_getIndex" id="g./,PD-SgU8u.FSm)u4"><mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"><block type="variables_get" id="wbp}06P,).t[ZUoj!(h1"><field name="VAR">uhrzeit</field></block></value> <value name="AT"><block type="math_number" id="e[|}CD;gH11o-@dHS|L"><field name="NUM">2</field></block></value></block></value></block></value>
                            <statement name="STATEMENT"><block type="controls_if" id="%^~t=c|M8s.h8g/J}wgQ"><value name="IF0"><block type="logic_compare" id="UQety?LU4%o.,Bb!QerE"><field name="OP">EQ</field>
                            <value name="A"><block type="get_value" id="tZsLmoA54T2U[FT@lqol"><field name="ATTR">val</field>
                            <field name="OID">javascript.0.Pool.Filteranlage.Automatik_an_aus</field></block></value>
                            <value name="B"><block type="logic_boolean" id="kn1R#)VS,DPaw%{%+#;4"><field name="BOOL">TRUE</field></block></value></block></value>
                            <statement name="DO0"><block type="variables_set" id="7)^4Io3eZrq-kGd~Qj"><field name="VAR">cnt</field>
                            <value name="VALUE"><block type="math_number" id="1Kj|oil3plRrR]s0NPd)"><field name="NUM">0</field></block></value>
                            <next><block type="control" id="ben}AEk{jucTv9a4]l/K"><mutation delay_input="false"></mutation>
                            <field name="OID">javascript.0.Test.Schalter</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE"><block type="logic_boolean" id="dJp+,[-fIDuMe_YQo,ox"><field name="BOOL">TRUE</field></block></value>
                            <next><block type="timeouts_setinterval" id="/[Nu7w?[nEsQGqozYz=m"><field name="NAME">Intervall</field>
                            <field name="INTERVAL">1</field>
                            <field name="UNIT">min</field>
                            <statement name="STATEMENT"><block type="math_change" id="r~n}#k],X4[F]!,n
                            )="><field name="VAR">cnt</field>
                            <value name="DELTA"><shadow type="math_number" id="C}F]WEMTQ~EhL[0o8ih|"><field name="NUM">1</field></shadow></value>
                            <next><block type="controls_if" id="xB!NUsb#R5BJqkLe0]|9"><value name="IF0"><block type="logic_compare" id="/1i(aPh}KZRqi^qOI#t3"><field name="OP">EQ</field>
                            <value name="A"><block type="variables_get" id="]v},qw4o{KvMdFdL6+}"><field name="VAR">cnt</field></block></value>
                            <value name="B"><block type="get_value" id="IBU)^98k6^Tb~ECDm37q"><field name="ATTR">val</field>
                            <field name="OID">javascript.0.Pool.Filteranlage.Laufzeit_1</field></block></value></block></value>
                            <statement name="DO0"><block type="control" id="U
                            oxjrCm~3MpaX.crkAy"><mutation delay_input="false"></mutation>
                            <field name="OID">javascript.0.Test.Schalter</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE"><block type="logic_boolean" id="(JNXSu!TbE3*?sYQ+eSy"><field name="BOOL">FALSE</field></block></value>
                            <next><block type="timeouts_clearinterval" id="?jnoAd7epof4w?49i/7K"><field name="NAME">Intervall</field></block></next></block></statement></block></next></block></statement></block></next></block></next></block></statement></block></statement></block></next></block></next></block></statement></block>
                            <block type="procedures_defnoreturn" id="RFQ.obPn!Y7srwy90O|" x="438" y="113"><mutation><arg name="val"></arg></mutation>
                            <field name="NAME">setSchedule2</field>
                            <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                            <statement name="STACK"><block type="variables_set" id="d^=ZEUy]GYZ56.gl?F/"><field name="VAR">uhrzeit</field> <value name="VALUE"><block type="lists_split" id="f:6FRWJ%cZ~K!w#ZT3s5"><mutation mode="SPLIT"></mutation> <field name="MODE">SPLIT</field> <value name="INPUT"><block type="variables_get" id="2Gi,?Ofc~pYi*W%?G[zk"><field name="VAR">val</field></block></value> <value name="DELIM"><shadow type="text" id="Z_uEO+Fh)/BJmRl[klKf"><field name="TEXT">:</field></shadow> <block type="text" id="3dJ|85Z45w)?jCRwr(cf"><field name="TEXT">:</field></block></value></block></value> <next><block type="schedule_clear" id="n#^bdT@l;~@;S2wj3WNB"><field name="NAME">schedule2</field> <next><block type="schedule_create" id="Tth=l}xOD^gwvo14SBiZ"><field name="NAME">schedule2</field> <value name="SCHEDULE"><shadow type="field_cron" id="+8y!j8q]Sur^hPyYtgi%"><field name="CRON">* * * * *</field></shadow> <block type="cron_builder" id="Z+im4IIyiq9X}0KmhG7U"><mutation seconds="false" as_line="false"></mutation> <field name="LINE">FALSE</field> <field name="WITH_SECONDS">FALSE</field> <value name="DOW"><shadow type="text" id="ZW/lJ4FetQBaRc^YW]pE"><field name="TEXT">*</field></shadow></value> <value name="MONTHS"><shadow type="text" id="SBvGN@~F37(zDi4tXC{X"><field name="TEXT">*</field></shadow></value> <value name="DAYS"><shadow type="text" id="}UMqO#rLTH3DN6Te_sR"><field name="TEXT">*</field></shadow></value>
                            <value name="HOURS"><shadow type="text" id="
                            +#6NNfd8./nAtqP[2M}"><field name="TEXT">*</field></shadow>
                            <block type="lists_getIndex" id="r7A^e?z]jD8)*Na?vP
                            "><mutation statement="false" at="true"></mutation>
                            <field name="MODE">GET</field>
                            <field name="WHERE">FROM_START</field>
                            <value name="VALUE"><block type="variables_get" id="%tBj3-pz@Eh/Z-jKAPw,"><field name="VAR">uhrzeit</field></block></value>
                            <value name="AT"><block type="math_number" id="lHIQYeE/shk_~nHg[v23"><field name="NUM">1</field></block></value></block></value>
                            <value name="MINUTES"><shadow type="text" id="A(cHLXuA#!Ub@)JSZ[F"><field name="TEXT"></field></shadow>
                            <block type="lists_getIndex" id="_+g[C.u[wN25;(@x{V5h"><mutation statement="false" at="true"></mutation>
                            <field name="MODE">GET</field>
                            <field name="WHERE">FROM_START</field>
                            <value name="VALUE"><block type="variables_get" id="R!4JRYqCfZZ)|nly@]x"><field name="VAR">uhrzeit</field></block></value> <value name="AT"><block type="math_number" id="S6+bNTS,wgM6X9Ufhl2?"><field name="NUM">2</field></block></value></block></value></block></value> <statement name="STATEMENT"><block type="controls_if" id="=2N:wbHsftvm]p;FsJCF"><value name="IF0"><block type="logic_compare" id="UWu:XEP!vB0d!=iev}"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="xlXV5KS.1[?8ldNLt1"><field name="ATTR">val</field> <field name="OID">javascript.0.Pool.Filteranlage.Automatik_an_aus</field></block></value> <value name="B"><block type="logic_boolean" id="Vt,;D7oJB*Fj*{CBX(V|"><field name="BOOL">TRUE</field></block></value></block></value> <statement name="DO0"><block type="variables_set" id=",(Bh^gsl@%mfb#qCSN)%"><field name="VAR">cnt</field> <value name="VALUE"><block type="math_number" id="xeJe=Ol;Y%Rj8M(@BMGj"><field name="NUM">0</field></block></value> <next><block type="control" id="P^Jwf-#R-[c5W8+aqyvh"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Test.Schalter</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="jtY%VYmJ0(hQABpsLa/X"><field name="BOOL">TRUE</field></block></value> <next><block type="timeouts_setinterval" id="qe6MZO;Fn3n{e8-@?r_4"><field name="NAME">Intervall2</field> <field name="INTERVAL">1</field> <field name="UNIT">min</field> <statement name="STATEMENT"><block type="math_change" id="*7Li#M!Eb==AI7qd~(:v"><field name="VAR">cnt</field> <value name="DELTA"><shadow type="math_number" id="7Uy%-?!Rtk)+vTMv?d@f"><field name="NUM">1</field></shadow></value> <next><block type="controls_if" id="0fuMbP7US_qs!CW~6}^K"><value name="IF0"><block type="logic_compare" id="yL%B1QG/*spywVvL=lpV"><field name="OP">EQ</field> <value name="A"><block type="variables_get" id="#Q@P}egw*Z5_Uy/dKO8G"><field name="VAR">cnt</field></block></value> <value name="B"><block type="get_value" id="?{y#}8;PI,k.UY[#CNAD"><field name="ATTR">val</field> <field name="OID">javascript.0.Pool.Filteranlage.Laufzeit_2</field></block></value></block></value> <statement name="DO0"><block type="control" id="58@zNMKs3-ZCcfmaUO2}"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Test.Schalter</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="/@Yp6:tXUYSDAxK9!2a"><field name="BOOL">FALSE</field></block></value>
                            <next><block type="timeouts_clearinterval" id="Zr.iu~OgJJ[#s1r;ya6"><field name="NAME">Intervall2</field></block></next></block></statement></block></next></block></statement></block></next></block></next></block></statement></block></statement></block></next></block></next></block></statement></block> <block type="comment" id="k6^.];r8m3:y)N[A{6o" x="-338" y="788"><field name="COMMENT">Skriptstart</field>
                            <next><block type="procedures_callnoreturn" id="(K695hTsOXlhC?7Jq2+9"><mutation name="setSchedule1"><arg name="val"></arg></mutation>
                            <value name="ARG0"><block type="get_value" id="jUX[vzWO{txM+twF=!3
                            "><field name="ATTR">val</field>
                            <field name="OID">javascript.0.Pool.Filteranlage.Startzeit_1</field></block></value>
                            <next><block type="on_ext" id="Ho}{E7]v|11A@#,,{R;X"><mutation items="1"></mutation>
                            <field name="CONDITION">ne</field>

                                    <value name="OID0"><shadow type="field_oid" id=":q5=lHsO](F;AWud(hn5"><field name="oid">javascript.0.Pool.Filteranlage.Startzeit_1</field></shadow></value> 
                                    <statement name="STATEMENT"><block type="procedures_callnoreturn" id="@XLk%7Nongxr!YE5ghK/"><mutation name="setSchedule1"><arg name="val"></arg></mutation> 
                                        <value name="ARG0"><block type="on_source" id="UIvUD^a@j3Tz~=7G]]Mz"><field name="ATTR">state.val</field></block></value></block></statement></block></next></block></next></block> 
                            

                            <block type="procedures_callnoreturn" id="seX.K5(H,N6eh5SE2g,I" x="438" y="813"><mutation name="setSchedule2"><arg name="val"></arg></mutation>
                            <value name="ARG0"><block type="get_value" id="e.ff(JG4kUMnJoz/rR0D"><field name="ATTR">val</field>
                            <field name="OID">javascript.0.Pool.Filteranlage.Startzeit_2</field></block></value>
                            <next><block type="on_ext" id="tEGUw-0PVW2Bd5]mp(X*"><mutation items="1"></mutation>
                            <field name="CONDITION">ne</field>

                                <value name="OID0"><shadow type="field_oid" id="E@nvnFg;~odK9A[#%1#A"><field name="oid">javascript.0.Pool.Filteranlage.Startzeit_2</field></shadow></value> 
                                <statement name="STATEMENT"><block type="procedures_callnoreturn" id="Jp/vAu4!G0PIRK7GqX}^"><mutation name="setSchedule2"><arg name="val"></arg></mutation> 
                                    <value name="ARG0"><block type="on_source" id="/uJH*pd@H5-P+O4CX}Uw"><field name="ATTR">state.val</field></block></value></block></statement></block></next></block></xml> 
                            
                            Damit müssen nach einem Skriptstart nicht die Startzeiten verändert werden.
                            1 Reply Last reply Reply Quote 0
                            • G
                              GeorgS last edited by

                              @paul53:

                              Wenn das Schedule auch bei Skriptstart gesetzt werden soll, ohne dass man anschließend den Zeitpunkt ändern muss, pacck man das ganze in eine Funktion, die sowohl bei Skriptstart als auch bei Startzeitänderung aufgerufen wird. Beispiel für Schedule1:

                              Blockly_EDsteuern_Minuten_Funktion.JPG `

                              Also das Script geht jetzt jetzt habe ich versucht noch dein Zusatz siehe ohne einzubauen… stimmt das so wie ich das eingebaut habe?
                              7208_1.png

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

                                @GeorgS:

                                jetzt habe ich versucht noch dein Zusatz siehe ohne einzubauen… `
                                Das ist kein Zusatz, sondern das vollständige Skript.
                                @GeorgS:

                                stimmt das so wie ich das eingebaut habe? `
                                Nein. Ganz oben: Es muss die Startzeit an die Funktion übergeben werden, nicht die Laufzeit.

                                Packe den Debug-Baustein "Pumpe aus" in den falls-Block (direkt unter stoppe…), sonst erscheint jede Minute ein Log.

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

                                  Noch ein Fehler rechts unten: Es mus das verwendete Intervall3 gestoppt werden !

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

                                    So sieht der Ursprung für den Export aus:
                                    493_blockly_edsteuern_minuten_funktion.jpg

                                    1 Reply Last reply Reply Quote 0
                                    • G
                                      GeorgS last edited by

                                      so?
                                      7208_1.png

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

                                        @GeorgS:

                                        so? `
                                        Sieht gut aus. Teste es !

                                        Bitte keine überlappenden Zeiten (2. Startzeit während Pumpe noch läuft), da eine gemeinsame Variable cnt verwendet wird.

                                        1 Reply Last reply Reply Quote 0
                                        • G
                                          GeorgS last edited by

                                          @paul53:

                                          @GeorgS:

                                          so? `
                                          Sieht gut aus. Teste es !

                                          Bitte keine überlappenden Zeiten (2. Startzeit während Pumpe noch läuft), da eine gemeinsame Variable cnt verwendet wird. `

                                          Mache ich morgen mit dem Testen… nein es wird keine überlappenden Zeiten geben 😃 7:00 für 1h und 22:00 für 3h

                                          Kann man noch einbauen das wenn man die Pumpe per Hand startet diese dann eine Stunde läuft und dann wieder ausgeht oder sollte man das dann in ein extra Script paken?

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

                                            @GeorgS:

                                            Kann man noch einbauen das wenn man die Pumpe per Hand startet diese dann eine Stunde läuft und dann wieder ausgeht oder sollte man das dann in ein extra Script paken? `
                                            Ob im gleichen oder einem weiteren Script, ist egal. Man muss nur detektieren, dass manuell eingeschaltet wurde, wozu der "Ursprung" (state.from) des Trigger-Datenpunktes dienen kann.
                                            493_blockly_monoflop_bei_manuell.jpg

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            411
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            144
                                            14805
                                            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