Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. [gelöst] Schaltzustand Verzögern

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.1k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    728

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

[gelöst] Schaltzustand Verzögern

Geplant Angeheftet Gesperrt Verschoben Blockly
262 Beiträge 4 Kommentatoren 23.0k Aufrufe 2 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • AphofisA Aphofis

    Entwarnung.
    Die verrückten Dosierwerte sind entstanden, da sich die Plus Leitung im Verteiler gelöst hatte.
    dh. ich werde die Tage den Verteiler der mit Schraubklemmen ist austauschen gegen eine Platine und das alle Kabel die
    an das Sammel Plus gehen auf der Platine verlöten und die Schraubklemme raus werfen.
    Nachdem ich das Plus Kabel vom Magnet Ventil eine neue Ader endhülse drauf gequetscht hatte, läuft die dosierung wieder Tadellos.
    Lag also nicht an der Steuerung siondern nur an der Hardware.

    AphofisA Offline
    AphofisA Offline
    Aphofis
    schrieb am zuletzt editiert von
    #251

    @paul53
    Mahlzeit, sag mal ist es möglich den Vliesfilter aus der Osmose Steuerung komplett raus zu nehmen und eine neue Blockly Steuerung für diesen zu erstellen wo das Vlies alle halbe Std. x ms eingeschaltet wird und aber auch nicht mehr als x ms am Tag !? Da das Vlies unten im Wasser an den umlenken Wellen kleben bleibt dreht der Motor das Vlies nicht weiter somit muss das Vlies kontinuierlich gedreht werden! Um zu verhindern das es fest klebt und ich es von Hand ständig lösen muss

    paul53P 1 Antwort Letzte Antwort
    0
    • AphofisA Aphofis

      @paul53
      Mahlzeit, sag mal ist es möglich den Vliesfilter aus der Osmose Steuerung komplett raus zu nehmen und eine neue Blockly Steuerung für diesen zu erstellen wo das Vlies alle halbe Std. x ms eingeschaltet wird und aber auch nicht mehr als x ms am Tag !? Da das Vlies unten im Wasser an den umlenken Wellen kleben bleibt dreht der Motor das Vlies nicht weiter somit muss das Vlies kontinuierlich gedreht werden! Um zu verhindern das es fest klebt und ich es von Hand ständig lösen muss

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #252

      @Aphofis sagte:

      ist es möglich den Vliesfilter aus der Osmose Steuerung komplett raus zu nehmen und eine neue Blockly Steuerung für diesen zu erstellen wo das Vlies alle halbe Std. x ms eingeschaltet wird und aber auch nicht mehr als x ms am Tag !?

      Sicher ist es möglich. Erwarte aber bitte nicht von mir, dass ich noch weiß, was wir damals programmiert haben.

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      AphofisA 2 Antworten Letzte Antwort
      0
      • paul53P paul53

        @Aphofis sagte:

        ist es möglich den Vliesfilter aus der Osmose Steuerung komplett raus zu nehmen und eine neue Blockly Steuerung für diesen zu erstellen wo das Vlies alle halbe Std. x ms eingeschaltet wird und aber auch nicht mehr als x ms am Tag !?

        Sicher ist es möglich. Erwarte aber bitte nicht von mir, dass ich noch weiß, was wir damals programmiert haben.

        AphofisA Offline
        AphofisA Offline
        Aphofis
        schrieb am zuletzt editiert von
        #253

        @paul53 nein das auf keinen Fall!
        Ich poste dir mal das JavaScript und die dazugehörigen datenpunkte
        Wenn ich es mal schaffe zu Hause zu sein :anguished:

        1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @Aphofis sagte:

          ist es möglich den Vliesfilter aus der Osmose Steuerung komplett raus zu nehmen und eine neue Blockly Steuerung für diesen zu erstellen wo das Vlies alle halbe Std. x ms eingeschaltet wird und aber auch nicht mehr als x ms am Tag !?

          Sicher ist es möglich. Erwarte aber bitte nicht von mir, dass ich noch weiß, was wir damals programmiert haben.

          AphofisA Offline
          AphofisA Offline
          Aphofis
          schrieb am zuletzt editiert von Aphofis
          #254

          @paul53

          So also Das hattest du programmiert, Da soll der Vliesfilter raus! Die Osmose soll so bleiben, die Osmose Steuerung läuft perfekt.
          Desweiteren, ist es möglich Osmose Restzeit ins Osmose System zu verlegen !?

          Aqua_Control.0.Osmose_System.Osmose.Restzeit
          

          bezügich des multiplikators fur das Vlies muss ich den Zettel suchen wo ich die berechnung drauf habe. Ich weiß leider nihct mehr was für eine Maßeinheit der multiplikator ist. Ich glaube das waren die ms pro mm bzw mm pro ms! ich weiß es nur nicht mehr genau.
          Der Vliesfilter soll dann alle 30 min einen Cm laufen. Tausche Heute die angerosteten Edelstahl Wellen für die Vlies Umlenkung gegen Kunstoff Wellen und dann sollte es klappen nur will ich trotzdem das dass Vlies regelmäßig läuft.
          In der Programmierung muss es aber so laufen das nur wenn Vliesfilter Schwimmer Normal true ist das nur dann Motor true sein kann weil die minus Leitung über diesen Schwimmer läuft.

          const idRestzeit = 'Osmose.Restzeit';
          const text_ein = ['Filter Max unterschritten, Skimmer & Osmose','\n','wurden wieder eingeschaltet'].join('');
          const text_aus = ['Filter Max erreicht, Skimmer & Osmose','\n','wurden abgeschaltet'].join('');
          
          createState(idRestzeit, 300, {type: 'number', unit: 's'});
          
          var Osmosefreigabe = !getState('sonoff.0.Aqua_Float.POWER4').val;
          var Schwimmer = getState("sonoff.0.Aqua_Float.POWER1").val;
          var Restzeit, timeout_aus, timeout_ein, Magnetventil_Kontrolle;
          
          function Magnetventil_Ein() {
            if (!Magnetventil_Kontrolle && Restzeit > 0 && Osmosefreigabe) {
              Magnetventil_Kontrolle = setInterval(function () {
                if (Restzeit > 0 && Schwimmer && Osmosefreigabe) {
                  Restzeit--;
                  setState(idRestzeit, 2 * Restzeit, true);
                } else {
                  setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                  clearInterval(Magnetventil_Kontrolle); 
                  Magnetventil_Kontrolle = null;
                }
              }, 2000);
              setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, true);
            }
          }
          
          // Skripstart
          setTimeout(function() {
              Restzeit = getState(idRestzeit).val / 2;
              if(Schwimmer && Osmosefreigabe) Magnetventil_Ein();
              else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
          }, 200);
          var entprell = null;
          on({id: 'sonoff.0.Aqua_Float.POWER1', change: "ne"}, function (obj) {
            log('Schwimmer: ' + obj.state.val)
            if(entprell) {
              clearTimeout(entprell);
              entprell = null;
            }  
            entprell = setTimeout(function() {
              Schwimmer = obj.state.val;
              if(Schwimmer) Magnetventil_Ein();
              else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
            }, 2000); // 2 s 
          });
          
          schedule("0 0 * * *", function () {
            Restzeit = 150;
            setState(idRestzeit, 300, true);
            if(Schwimmer) Magnetventil_Ein();
          });
          
          on({id: 'sonoff.0.Aqua_Float.POWER4', change: "ne"}, function (obj) {
            if (obj.state.val) {
              timeout_aus = setTimeout(function () {
                Osmosefreigabe = false;  
                setState("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, false);
                setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
              }, 5000);
              if (timeout_ein) {
                  clearTimeout(timeout_ein); 
                  timeout_ein = null;
              }
            } else {
              timeout_ein = setTimeout(function () {
                Osmosefreigabe = true;
                if(Schwimmer) Magnetventil_Ein();           
                setStateDelayed("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, true, 10000);
              }, 10000);
              if (timeout_aus) {
                  clearTimeout(timeout_aus); 
                  timeout_aus = null;
              }
            }
          });
           
          on({id: 'sonoff.0.Aqua_Power.POWER3', change: "ne"}, function (obj) {
            var txt;  
            if (obj.state.val) txt = text_ein;   
            else txt = text_aus;   
            sendTo("telegram.0", "send", {
              text: txt
            });
            log(txt);
          });
          

          03.png 02.png 01.png

          paul53P 1 Antwort Letzte Antwort
          0
          • AphofisA Aphofis

            @paul53

            So also Das hattest du programmiert, Da soll der Vliesfilter raus! Die Osmose soll so bleiben, die Osmose Steuerung läuft perfekt.
            Desweiteren, ist es möglich Osmose Restzeit ins Osmose System zu verlegen !?

            Aqua_Control.0.Osmose_System.Osmose.Restzeit
            

            bezügich des multiplikators fur das Vlies muss ich den Zettel suchen wo ich die berechnung drauf habe. Ich weiß leider nihct mehr was für eine Maßeinheit der multiplikator ist. Ich glaube das waren die ms pro mm bzw mm pro ms! ich weiß es nur nicht mehr genau.
            Der Vliesfilter soll dann alle 30 min einen Cm laufen. Tausche Heute die angerosteten Edelstahl Wellen für die Vlies Umlenkung gegen Kunstoff Wellen und dann sollte es klappen nur will ich trotzdem das dass Vlies regelmäßig läuft.
            In der Programmierung muss es aber so laufen das nur wenn Vliesfilter Schwimmer Normal true ist das nur dann Motor true sein kann weil die minus Leitung über diesen Schwimmer läuft.

            const idRestzeit = 'Osmose.Restzeit';
            const text_ein = ['Filter Max unterschritten, Skimmer & Osmose','\n','wurden wieder eingeschaltet'].join('');
            const text_aus = ['Filter Max erreicht, Skimmer & Osmose','\n','wurden abgeschaltet'].join('');
            
            createState(idRestzeit, 300, {type: 'number', unit: 's'});
            
            var Osmosefreigabe = !getState('sonoff.0.Aqua_Float.POWER4').val;
            var Schwimmer = getState("sonoff.0.Aqua_Float.POWER1").val;
            var Restzeit, timeout_aus, timeout_ein, Magnetventil_Kontrolle;
            
            function Magnetventil_Ein() {
              if (!Magnetventil_Kontrolle && Restzeit > 0 && Osmosefreigabe) {
                Magnetventil_Kontrolle = setInterval(function () {
                  if (Restzeit > 0 && Schwimmer && Osmosefreigabe) {
                    Restzeit--;
                    setState(idRestzeit, 2 * Restzeit, true);
                  } else {
                    setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                    clearInterval(Magnetventil_Kontrolle); 
                    Magnetventil_Kontrolle = null;
                  }
                }, 2000);
                setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, true);
              }
            }
            
            // Skripstart
            setTimeout(function() {
                Restzeit = getState(idRestzeit).val / 2;
                if(Schwimmer && Osmosefreigabe) Magnetventil_Ein();
                else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
            }, 200);
            var entprell = null;
            on({id: 'sonoff.0.Aqua_Float.POWER1', change: "ne"}, function (obj) {
              log('Schwimmer: ' + obj.state.val)
              if(entprell) {
                clearTimeout(entprell);
                entprell = null;
              }  
              entprell = setTimeout(function() {
                Schwimmer = obj.state.val;
                if(Schwimmer) Magnetventil_Ein();
                else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
              }, 2000); // 2 s 
            });
            
            schedule("0 0 * * *", function () {
              Restzeit = 150;
              setState(idRestzeit, 300, true);
              if(Schwimmer) Magnetventil_Ein();
            });
            
            on({id: 'sonoff.0.Aqua_Float.POWER4', change: "ne"}, function (obj) {
              if (obj.state.val) {
                timeout_aus = setTimeout(function () {
                  Osmosefreigabe = false;  
                  setState("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, false);
                  setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                }, 5000);
                if (timeout_ein) {
                    clearTimeout(timeout_ein); 
                    timeout_ein = null;
                }
              } else {
                timeout_ein = setTimeout(function () {
                  Osmosefreigabe = true;
                  if(Schwimmer) Magnetventil_Ein();           
                  setStateDelayed("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, true, 10000);
                }, 10000);
                if (timeout_aus) {
                    clearTimeout(timeout_aus); 
                    timeout_aus = null;
                }
              }
            });
             
            on({id: 'sonoff.0.Aqua_Power.POWER3', change: "ne"}, function (obj) {
              var txt;  
              if (obj.state.val) txt = text_ein;   
              else txt = text_aus;   
              sendTo("telegram.0", "send", {
                text: txt
              });
              log(txt);
            });
            

            03.png 02.png 01.png

            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von paul53
            #255

            @Aphofis sagte:

            Da soll der Vliesfilter raus!

            Ich kann in dem Script keine Vliesfilter-Steuerung finden.

            @Aphofis sagte in [gelöst] Schaltzustand Verzögern:

            ist es möglich Osmose Restzeit ins Osmose System zu verlegen !?

            Ja, dann muss die ID im Script geändert werden, das createState(idRestzeit) muss raus und der Datenpunkt muss manuell erzeugt werden.

            const idRestzeit = 'Aqua_Control.0.Osmose_System.Osmose.Restzeit';
            const text_ein = ['Filter Max unterschritten, Skimmer & Osmose','\n','wurden wieder eingeschaltet'].join('');
            const text_aus = ['Filter Max erreicht, Skimmer & Osmose','\n','wurden abgeschaltet'].join('');
             
            // createState(idRestzeit, 300, {type: 'number', unit: 's'}); // Muss manuell erstellt werden
            

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            AphofisA 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @Aphofis sagte:

              Da soll der Vliesfilter raus!

              Ich kann in dem Script keine Vliesfilter-Steuerung finden.

              @Aphofis sagte in [gelöst] Schaltzustand Verzögern:

              ist es möglich Osmose Restzeit ins Osmose System zu verlegen !?

              Ja, dann muss die ID im Script geändert werden, das createState(idRestzeit) muss raus und der Datenpunkt muss manuell erzeugt werden.

              const idRestzeit = 'Aqua_Control.0.Osmose_System.Osmose.Restzeit';
              const text_ein = ['Filter Max unterschritten, Skimmer & Osmose','\n','wurden wieder eingeschaltet'].join('');
              const text_aus = ['Filter Max erreicht, Skimmer & Osmose','\n','wurden abgeschaltet'].join('');
               
              // createState(idRestzeit, 300, {type: 'number', unit: 's'}); // Muss manuell erstellt werden
              
              AphofisA Offline
              AphofisA Offline
              Aphofis
              schrieb am zuletzt editiert von Aphofis
              #256

              @paul53
              Das schon mal einfach!
              Hattenst du beim Programmieren nihct diese beiden Steuerungen zusammen gelegt!?
              Dann muss ich noch mal gucken und dann weiß ich vllt auch warum der Vliesfilter nicht läuft. Da keine Steuerung dafür aktiv ist.
              Dann ist das wohl die Vliesfilter Steuerung!
              Die war die ganze Zeit nihct aktiv! egal ich möchte trotzdem das die dann jede halbe stunde X ms läuft wenn schwimmer vlieafilter true sonst gehts eh nicht.

              <xml xmlns="https://developers.google.com/blockly/xml">
                <variables>
                  <variable id="jelrI7)a+8oXZV(*|VPG">schwimmer</variable>
                  <variable id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</variable>
                  <variable id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</variable>
                  <variable type="undefined" id="Intervall">Intervall</variable>
                  <variable type="timeout" id="timeout">timeout</variable>
                </variables>
                <block type="comment" id="5z}DP4%./aV[wt`Fx4$t" x="-2013" y="-787">
                  <field name="COMMENT">Vlies Schwimmer normal</field>
                  <next>
                    <block type="variables_set" id="q^$BreH*yiE%[?k6w~Cu">
                      <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                      <value name="VALUE">
                        <block type="get_value" id="[z_,Lk{/T{ix%}b/^$WM">
                          <field name="ATTR">val</field>
                          <field name="OID">sonoff.0.Aqua_Float.POWER3</field>
                        </block>
                      </value>
                      <next>
                        <block type="variables_set" id="54%k%%U$jnaK1m1E.%SH">
                          <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                          <value name="VALUE">
                            <block type="math_arithmetic" id="@jS^)bBYfX#1dH:D1kdH">
                              <field name="OP">DIVIDE</field>
                              <value name="A">
                                <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="q!^ViYZx3LnzVq1kp_Za">
                                  <field name="NUM">1</field>
                                </shadow>
                                <block type="get_value" id="q^Na^3~X:M*%vFn_~M82">
                                  <field name="ATTR">val</field>
                                  <field name="OID">Aqua_Control.0.Vliesfilter.Restzeit</field>
                                </block>
                              </value>
                              <value name="B">
                                <shadow type="math_number" id="S7Sc+~JrKqP70}B!6YdK">
                                  <field name="NUM">2</field>
                                </shadow>
                              </value>
                            </block>
                          </value>
                          <next>
                            <block type="on_ext" id=".C1d#(gWIO$3af%qZpd=">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                              <field name="CONDITION">ne</field>
                              <field name="ACK_CONDITION"></field>
                              <value name="OID0">
                                <shadow type="field_oid" id="ao*zhM3bl`?#R.|56@u2">
                                  <field name="oid">sonoff.0.Aqua_Float.POWER3</field>
                                </shadow>
                              </value>
                              <statement name="STATEMENT">
                                <block type="timeouts_cleartimeout" id="JsI0fYRACRn|cg%P`lFp">
                                  <field name="NAME">schwimmer</field>
                                  <next>
                                    <block type="timeouts_settimeout" id="N#We))|a%fz}L[Q+Cx^q">
                                      <field name="NAME">timeout</field>
                                      <field name="DELAY">5</field>
                                      <field name="UNIT">sec</field>
                                      <statement name="STATEMENT">
                                        <block type="variables_set" id="DBP2g$aqWChGwu[v*4!%">
                                          <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                                          <value name="VALUE">
                                            <block type="on_source" id="K11}(or[Z:OS!(#vxqHG">
                                              <field name="ATTR">state.val</field>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="procedures_callnoreturn" id="PS|Lsb]Ll|M)1A-*=;MW">
                                              <mutation name="Vliesmotor"></mutation>
                                            </block>
                                          </next>
                                        </block>
                                      </statement>
                                    </block>
                                  </next>
                                </block>
                              </statement>
                              <next>
                                <block type="schedule" id="(1I$6}V5IN*70(H;=,o%">
                                  <field name="SCHEDULE">0 0 * * *</field>
                                  <statement name="STATEMENT">
                                    <block type="variables_set" id="{)f?@KVtoNY|AFCWejAB">
                                      <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                      <value name="VALUE">
                                        <block type="math_number" id="Rqh{,?m@M#5bO:hk2qxN">
                                          <field name="NUM">20</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="update" id="+r+/i.Ri,fl}QCeX@?61">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                          <field name="OID">Aqua_Control.0.Vliesfilter.Restzeit</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE">
                                            <block type="math_number" id="]lwb)]#RcLa^7jMqMB77">
                                              <field name="NUM">40</field>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="procedures_callnoreturn" id="4]}?^U%FVW-Xhma?(A5M">
                                              <mutation name="Vliesmotor"></mutation>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </statement>
                                  <next>
                                    <block type="variables_set" id=",QNrt-4CE4Oj^jIk#,;Y">
                                      <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                      <value name="VALUE">
                                        <block type="get_value" id=")/E%PW9T*{q`1g=Um8*F">
                                          <field name="ATTR">val</field>
                                          <field name="OID">sonoff.0.Aqua_Float.POWER5</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="comment" id="bHD/a9YVFg5@jtgL}RAZ">
                                          <field name="COMMENT">Vlies Schwimmer max</field>
                                          <next>
                                            <block type="on_ext" id="*GLxbq=Y5W/kt`Ec^_^8">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                              <field name="CONDITION">ne</field>
                                              <field name="ACK_CONDITION"></field>
                                              <value name="OID0">
                                                <shadow type="field_oid" id=":`a*puT#US*_u;?L/x6J">
                                                  <field name="oid">sonoff.0.Aqua_Float.POWER5</field>
                                                </shadow>
                                              </value>
                                              <statement name="STATEMENT">
                                                <block type="variables_set" id="|?HCwmG:!WSA]G_SW,bk">
                                                  <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                                  <value name="VALUE">
                                                    <block type="on_source" id="2JAIjy|oUz(g|A5~5NZK">
                                                      <field name="ATTR">state.val</field>
                                                    </block>
                                                  </value>
                                                  <next>
                                                    <block type="controls_if" id="_6.CXzT9uKZMv|AhD2pB">
                                                      <value name="IF0">
                                                        <block type="variables_get" id="bGVV|MyBeYczZ:[4nke5">
                                                          <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                                        </block>
                                                      </value>
                                                      <statement name="DO0">
                                                        <block type="control" id="V1h::i|*Z}0C,x,4n[h[">
                                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                          <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                                                          <field name="WITH_DELAY">FALSE</field>
                                                          <value name="VALUE">
                                                            <block type="logic_boolean" id="?1XtN^D4|o#2R(0I)]46">
                                                              <field name="BOOL">FALSE</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </statement>
                                                      <next>
                                                        <block type="procedures_callnoreturn" id="4SLh!G5#1BX1Fr=Gc:)G">
                                                          <mutation name="Vliesmotor"></mutation>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </next>
                                                </block>
                                              </statement>
                                              <next>
                                                <block type="procedures_callnoreturn" id="SwYioD-vCN,({DQT,nlx">
                                                  <mutation name="Vliesmotor"></mutation>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
                <block type="procedures_defnoreturn" id="~}wgr=#9IHto`oZ`1i[U" x="-1512" y="-687">
                  <field name="NAME">Vliesmotor</field>
                  <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                  <statement name="STACK">
                    <block type="controls_if" id="qK^.hb={2:@M!ZVgr,,u">
                      <mutation elseif="1"></mutation>
                      <value name="IF0">
                        <block type="logic_operation" id="[P$,D8~!C1S-}Qc-W#F2">
                          <field name="OP">AND</field>
                          <value name="A">
                            <block type="variables_get" id="NzRA^q(PS(^dxlh?Hz=`">
                              <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="logic_negate" id="l#n/c,qraF+Y1Tx?C@JA">
                              <value name="BOOL">
                                <block type="variables_get" id="_M:.mt0cg%g*o6:2k*18">
                                  <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="controls_if" id="QywEwMFYFf*jv=~RG:hi">
                          <value name="IF0">
                            <block type="logic_operation" id="xx=Q]8#5BOXA?;HAZ|/Q">
                              <field name="OP">AND</field>
                              <value name="A">
                                <block type="logic_negate" id="_{hS@M9pcc_|dL-|wHIe">
                                  <value name="BOOL">
                                    <block type="variables_get" id="!lSD/;w.BC6Zye$P;+qB">
                                      <field name="VAR" id="Intervall" variabletype="undefined">Intervall</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <value name="B">
                                <block type="logic_compare" id="JbQbvT#3JW.9fVGJXtMe">
                                  <field name="OP">GTE</field>
                                  <value name="A">
                                    <block type="variables_get" id="qM,NQ2t^P6}UJ1c+OQ`P">
                                      <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="math_number" id="U=ZFPYpxi`%vn%M4zaBe">
                                      <field name="NUM">0</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="control" id="S$_E~?+C|0xeaXoh_M8M">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                              <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                              <field name="WITH_DELAY">FALSE</field>
                              <value name="VALUE">
                                <block type="logic_boolean" id="%02%L=N?!^~efNZ}mSgv">
                                  <field name="BOOL">TRUE</field>
                                </block>
                              </value>
                              <next>
                                <block type="timeouts_setinterval" id="54}UC3}t@D?RM1+Z792o">
                                  <field name="NAME">Intervall</field>
                                  <field name="INTERVAL">5</field>
                                  <field name="UNIT">sec</field>
                                  <statement name="STATEMENT">
                                    <block type="controls_if" id="(~Q|}=ic+sA#`@!Ma`~L">
                                      <mutation else="1"></mutation>
                                      <value name="IF0">
                                        <block type="logic_operation" id="A46f$uvOO-y~k${W6yj6">
                                          <field name="OP">AND</field>
                                          <value name="A">
                                            <block type="logic_compare" id="bpC5nI2I}O}Z#O{kySt_">
                                              <field name="OP">GT</field>
                                              <value name="A">
                                                <block type="variables_get" id="xk]/(@DMWUBgU#z6:]qZ">
                                                  <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="math_number" id="yO,,$wcKnI|3dJ-tuyV}">
                                                  <field name="NUM">0</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="variables_get" id="BSK6e#C8r)693?3tm_%s">
                                              <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <statement name="DO0">
                                        <block type="math_change" id="E`-ssA;X9+940MYh/jC~">
                                          <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                          <value name="DELTA">
                                            <shadow type="math_number" id="|SPdtjyTRk*g7kpbX@yh">
                                              <field name="NUM">-1</field>
                                            </shadow>
                                          </value>
                                          <next>
                                            <block type="update" id="e?4*zw6JeufCUI_A$tWA">
                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                              <field name="OID">Aqua_Control.0.Vliesfilter.Restzeit</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE">
                                                <block type="math_arithmetic" id="?(V0m_KR;zq]8QN4Nnt}">
                                                  <field name="OP">MULTIPLY</field>
                                                  <value name="A">
                                                    <shadow type="math_number" id="e-o]eN1KmMjXLGYbB5*-">
                                                      <field name="NUM">2</field>
                                                    </shadow>
                                                  </value>
                                                  <value name="B">
                                                    <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Jab%cXU;kqAhB|kiv+HG">
                                                      <field name="NUM">1</field>
                                                    </shadow>
                                                    <block type="variables_get" id="x3#fOwJi8qvpU_aB}+Qo">
                                                      <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                            </block>
                                          </next>
                                        </block>
                                      </statement>
                                      <statement name="ELSE">
                                        <block type="control" id=";ZPsI~I3!y;|Bll.nZi]">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                          <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE">
                                            <block type="logic_boolean" id="GV}0dox+Wzn)9/ho1)jJ">
                                              <field name="BOOL">FALSE</field>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="timeouts_clearinterval" id=".JS+sd^HrJ:7@PT?;b1@">
                                              <field name="NAME">Intervall</field>
                                            </block>
                                          </next>
                                        </block>
                                      </statement>
                                    </block>
                                  </statement>
                                </block>
                              </next>
                            </block>
                          </statement>
                        </block>
                      </statement>
                      <value name="IF1">
                        <block type="get_value" id="#Hsff,HhVj3Er3x^t0d{">
                          <field name="ATTR">val</field>
                          <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                        </block>
                      </value>
                      <statement name="DO1">
                        <block type="control" id="4|Vz)`RbK!({%B#^yBT@">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                          <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE">
                            <block type="logic_boolean" id="(F=#.PC)sS-H0v;,Jq$U">
                              <field name="BOOL">FALSE</field>
                            </block>
                          </value>
                        </block>
                      </statement>
                    </block>
                  </statement>
                </block>
              </xml>
              
              AphofisA 1 Antwort Letzte Antwort
              0
              • AphofisA Aphofis

                @paul53
                Das schon mal einfach!
                Hattenst du beim Programmieren nihct diese beiden Steuerungen zusammen gelegt!?
                Dann muss ich noch mal gucken und dann weiß ich vllt auch warum der Vliesfilter nicht läuft. Da keine Steuerung dafür aktiv ist.
                Dann ist das wohl die Vliesfilter Steuerung!
                Die war die ganze Zeit nihct aktiv! egal ich möchte trotzdem das die dann jede halbe stunde X ms läuft wenn schwimmer vlieafilter true sonst gehts eh nicht.

                <xml xmlns="https://developers.google.com/blockly/xml">
                  <variables>
                    <variable id="jelrI7)a+8oXZV(*|VPG">schwimmer</variable>
                    <variable id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</variable>
                    <variable id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</variable>
                    <variable type="undefined" id="Intervall">Intervall</variable>
                    <variable type="timeout" id="timeout">timeout</variable>
                  </variables>
                  <block type="comment" id="5z}DP4%./aV[wt`Fx4$t" x="-2013" y="-787">
                    <field name="COMMENT">Vlies Schwimmer normal</field>
                    <next>
                      <block type="variables_set" id="q^$BreH*yiE%[?k6w~Cu">
                        <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                        <value name="VALUE">
                          <block type="get_value" id="[z_,Lk{/T{ix%}b/^$WM">
                            <field name="ATTR">val</field>
                            <field name="OID">sonoff.0.Aqua_Float.POWER3</field>
                          </block>
                        </value>
                        <next>
                          <block type="variables_set" id="54%k%%U$jnaK1m1E.%SH">
                            <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                            <value name="VALUE">
                              <block type="math_arithmetic" id="@jS^)bBYfX#1dH:D1kdH">
                                <field name="OP">DIVIDE</field>
                                <value name="A">
                                  <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="q!^ViYZx3LnzVq1kp_Za">
                                    <field name="NUM">1</field>
                                  </shadow>
                                  <block type="get_value" id="q^Na^3~X:M*%vFn_~M82">
                                    <field name="ATTR">val</field>
                                    <field name="OID">Aqua_Control.0.Vliesfilter.Restzeit</field>
                                  </block>
                                </value>
                                <value name="B">
                                  <shadow type="math_number" id="S7Sc+~JrKqP70}B!6YdK">
                                    <field name="NUM">2</field>
                                  </shadow>
                                </value>
                              </block>
                            </value>
                            <next>
                              <block type="on_ext" id=".C1d#(gWIO$3af%qZpd=">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                <field name="CONDITION">ne</field>
                                <field name="ACK_CONDITION"></field>
                                <value name="OID0">
                                  <shadow type="field_oid" id="ao*zhM3bl`?#R.|56@u2">
                                    <field name="oid">sonoff.0.Aqua_Float.POWER3</field>
                                  </shadow>
                                </value>
                                <statement name="STATEMENT">
                                  <block type="timeouts_cleartimeout" id="JsI0fYRACRn|cg%P`lFp">
                                    <field name="NAME">schwimmer</field>
                                    <next>
                                      <block type="timeouts_settimeout" id="N#We))|a%fz}L[Q+Cx^q">
                                        <field name="NAME">timeout</field>
                                        <field name="DELAY">5</field>
                                        <field name="UNIT">sec</field>
                                        <statement name="STATEMENT">
                                          <block type="variables_set" id="DBP2g$aqWChGwu[v*4!%">
                                            <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                                            <value name="VALUE">
                                              <block type="on_source" id="K11}(or[Z:OS!(#vxqHG">
                                                <field name="ATTR">state.val</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="procedures_callnoreturn" id="PS|Lsb]Ll|M)1A-*=;MW">
                                                <mutation name="Vliesmotor"></mutation>
                                              </block>
                                            </next>
                                          </block>
                                        </statement>
                                      </block>
                                    </next>
                                  </block>
                                </statement>
                                <next>
                                  <block type="schedule" id="(1I$6}V5IN*70(H;=,o%">
                                    <field name="SCHEDULE">0 0 * * *</field>
                                    <statement name="STATEMENT">
                                      <block type="variables_set" id="{)f?@KVtoNY|AFCWejAB">
                                        <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                        <value name="VALUE">
                                          <block type="math_number" id="Rqh{,?m@M#5bO:hk2qxN">
                                            <field name="NUM">20</field>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="update" id="+r+/i.Ri,fl}QCeX@?61">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                            <field name="OID">Aqua_Control.0.Vliesfilter.Restzeit</field>
                                            <field name="WITH_DELAY">FALSE</field>
                                            <value name="VALUE">
                                              <block type="math_number" id="]lwb)]#RcLa^7jMqMB77">
                                                <field name="NUM">40</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="procedures_callnoreturn" id="4]}?^U%FVW-Xhma?(A5M">
                                                <mutation name="Vliesmotor"></mutation>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </statement>
                                    <next>
                                      <block type="variables_set" id=",QNrt-4CE4Oj^jIk#,;Y">
                                        <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                        <value name="VALUE">
                                          <block type="get_value" id=")/E%PW9T*{q`1g=Um8*F">
                                            <field name="ATTR">val</field>
                                            <field name="OID">sonoff.0.Aqua_Float.POWER5</field>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="comment" id="bHD/a9YVFg5@jtgL}RAZ">
                                            <field name="COMMENT">Vlies Schwimmer max</field>
                                            <next>
                                              <block type="on_ext" id="*GLxbq=Y5W/kt`Ec^_^8">
                                                <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                                <field name="CONDITION">ne</field>
                                                <field name="ACK_CONDITION"></field>
                                                <value name="OID0">
                                                  <shadow type="field_oid" id=":`a*puT#US*_u;?L/x6J">
                                                    <field name="oid">sonoff.0.Aqua_Float.POWER5</field>
                                                  </shadow>
                                                </value>
                                                <statement name="STATEMENT">
                                                  <block type="variables_set" id="|?HCwmG:!WSA]G_SW,bk">
                                                    <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                                    <value name="VALUE">
                                                      <block type="on_source" id="2JAIjy|oUz(g|A5~5NZK">
                                                        <field name="ATTR">state.val</field>
                                                      </block>
                                                    </value>
                                                    <next>
                                                      <block type="controls_if" id="_6.CXzT9uKZMv|AhD2pB">
                                                        <value name="IF0">
                                                          <block type="variables_get" id="bGVV|MyBeYczZ:[4nke5">
                                                            <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                                          </block>
                                                        </value>
                                                        <statement name="DO0">
                                                          <block type="control" id="V1h::i|*Z}0C,x,4n[h[">
                                                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                            <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                                                            <field name="WITH_DELAY">FALSE</field>
                                                            <value name="VALUE">
                                                              <block type="logic_boolean" id="?1XtN^D4|o#2R(0I)]46">
                                                                <field name="BOOL">FALSE</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </statement>
                                                        <next>
                                                          <block type="procedures_callnoreturn" id="4SLh!G5#1BX1Fr=Gc:)G">
                                                            <mutation name="Vliesmotor"></mutation>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </statement>
                                                <next>
                                                  <block type="procedures_callnoreturn" id="SwYioD-vCN,({DQT,nlx">
                                                    <mutation name="Vliesmotor"></mutation>
                                                  </block>
                                                </next>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </next>
                                  </block>
                                </next>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                  <block type="procedures_defnoreturn" id="~}wgr=#9IHto`oZ`1i[U" x="-1512" y="-687">
                    <field name="NAME">Vliesmotor</field>
                    <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                    <statement name="STACK">
                      <block type="controls_if" id="qK^.hb={2:@M!ZVgr,,u">
                        <mutation elseif="1"></mutation>
                        <value name="IF0">
                          <block type="logic_operation" id="[P$,D8~!C1S-}Qc-W#F2">
                            <field name="OP">AND</field>
                            <value name="A">
                              <block type="variables_get" id="NzRA^q(PS(^dxlh?Hz=`">
                                <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                              </block>
                            </value>
                            <value name="B">
                              <block type="logic_negate" id="l#n/c,qraF+Y1Tx?C@JA">
                                <value name="BOOL">
                                  <block type="variables_get" id="_M:.mt0cg%g*o6:2k*18">
                                    <field name="VAR" id="9:SDRple|ege[7Ew8bgk">maxSchwimmer</field>
                                  </block>
                                </value>
                              </block>
                            </value>
                          </block>
                        </value>
                        <statement name="DO0">
                          <block type="controls_if" id="QywEwMFYFf*jv=~RG:hi">
                            <value name="IF0">
                              <block type="logic_operation" id="xx=Q]8#5BOXA?;HAZ|/Q">
                                <field name="OP">AND</field>
                                <value name="A">
                                  <block type="logic_negate" id="_{hS@M9pcc_|dL-|wHIe">
                                    <value name="BOOL">
                                      <block type="variables_get" id="!lSD/;w.BC6Zye$P;+qB">
                                        <field name="VAR" id="Intervall" variabletype="undefined">Intervall</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                                <value name="B">
                                  <block type="logic_compare" id="JbQbvT#3JW.9fVGJXtMe">
                                    <field name="OP">GTE</field>
                                    <value name="A">
                                      <block type="variables_get" id="qM,NQ2t^P6}UJ1c+OQ`P">
                                        <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <block type="math_number" id="U=ZFPYpxi`%vn%M4zaBe">
                                        <field name="NUM">0</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                              </block>
                            </value>
                            <statement name="DO0">
                              <block type="control" id="S$_E~?+C|0xeaXoh_M8M">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                                <field name="WITH_DELAY">FALSE</field>
                                <value name="VALUE">
                                  <block type="logic_boolean" id="%02%L=N?!^~efNZ}mSgv">
                                    <field name="BOOL">TRUE</field>
                                  </block>
                                </value>
                                <next>
                                  <block type="timeouts_setinterval" id="54}UC3}t@D?RM1+Z792o">
                                    <field name="NAME">Intervall</field>
                                    <field name="INTERVAL">5</field>
                                    <field name="UNIT">sec</field>
                                    <statement name="STATEMENT">
                                      <block type="controls_if" id="(~Q|}=ic+sA#`@!Ma`~L">
                                        <mutation else="1"></mutation>
                                        <value name="IF0">
                                          <block type="logic_operation" id="A46f$uvOO-y~k${W6yj6">
                                            <field name="OP">AND</field>
                                            <value name="A">
                                              <block type="logic_compare" id="bpC5nI2I}O}Z#O{kySt_">
                                                <field name="OP">GT</field>
                                                <value name="A">
                                                  <block type="variables_get" id="xk]/(@DMWUBgU#z6:]qZ">
                                                    <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                                  </block>
                                                </value>
                                                <value name="B">
                                                  <block type="math_number" id="yO,,$wcKnI|3dJ-tuyV}">
                                                    <field name="NUM">0</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <value name="B">
                                              <block type="variables_get" id="BSK6e#C8r)693?3tm_%s">
                                                <field name="VAR" id="jelrI7)a+8oXZV(*|VPG">schwimmer</field>
                                              </block>
                                            </value>
                                          </block>
                                        </value>
                                        <statement name="DO0">
                                          <block type="math_change" id="E`-ssA;X9+940MYh/jC~">
                                            <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                            <value name="DELTA">
                                              <shadow type="math_number" id="|SPdtjyTRk*g7kpbX@yh">
                                                <field name="NUM">-1</field>
                                              </shadow>
                                            </value>
                                            <next>
                                              <block type="update" id="e?4*zw6JeufCUI_A$tWA">
                                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                <field name="OID">Aqua_Control.0.Vliesfilter.Restzeit</field>
                                                <field name="WITH_DELAY">FALSE</field>
                                                <value name="VALUE">
                                                  <block type="math_arithmetic" id="?(V0m_KR;zq]8QN4Nnt}">
                                                    <field name="OP">MULTIPLY</field>
                                                    <value name="A">
                                                      <shadow type="math_number" id="e-o]eN1KmMjXLGYbB5*-">
                                                        <field name="NUM">2</field>
                                                      </shadow>
                                                    </value>
                                                    <value name="B">
                                                      <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Jab%cXU;kqAhB|kiv+HG">
                                                        <field name="NUM">1</field>
                                                      </shadow>
                                                      <block type="variables_get" id="x3#fOwJi8qvpU_aB}+Qo">
                                                        <field name="VAR" id="%t!mZ8PG#G[N~SK+`Kpf">restzeit</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                              </block>
                                            </next>
                                          </block>
                                        </statement>
                                        <statement name="ELSE">
                                          <block type="control" id=";ZPsI~I3!y;|Bll.nZi]">
                                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                            <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                                            <field name="WITH_DELAY">FALSE</field>
                                            <value name="VALUE">
                                              <block type="logic_boolean" id="GV}0dox+Wzn)9/ho1)jJ">
                                                <field name="BOOL">FALSE</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="timeouts_clearinterval" id=".JS+sd^HrJ:7@PT?;b1@">
                                                <field name="NAME">Intervall</field>
                                              </block>
                                            </next>
                                          </block>
                                        </statement>
                                      </block>
                                    </statement>
                                  </block>
                                </next>
                              </block>
                            </statement>
                          </block>
                        </statement>
                        <value name="IF1">
                          <block type="get_value" id="#Hsff,HhVj3Er3x^t0d{">
                            <field name="ATTR">val</field>
                            <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                          </block>
                        </value>
                        <statement name="DO1">
                          <block type="control" id="4|Vz)`RbK!({%B#^yBT@">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">sonoff.0.Aqua_Control.POWER2</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                              <block type="logic_boolean" id="(F=#.PC)sS-H0v;,Jq$U">
                                <field name="BOOL">FALSE</field>
                              </block>
                            </value>
                          </block>
                        </statement>
                      </block>
                    </statement>
                  </block>
                </xml>
                
                AphofisA Offline
                AphofisA Offline
                Aphofis
                schrieb am zuletzt editiert von Aphofis
                #257

                @paul53
                Kannst du mir vllt noch mal mit dieser steuerung helfen!?
                irgendwie will keine Osmose dosieren. Seid dem ich die neuen Stable Updates installiert hatte.
                Hatte die Geräte manuell getestet das funktioniert.
                Nur Schaltet die Steuerung nicht. Das wäre sehr nett.

                const idRestzeit = 'Aqua_Control.0.Osmose_System.Restzeit.Osmose.Restzeit';
                
                const text_ein = ['Filter Max unterschritten, Skimmer & Osmose','\n','wurden wieder eingeschaltet'].join('');
                
                const text_aus = ['Filter Max erreicht, Skimmer & Osmose','\n','wurden abgeschaltet'].join('');
                
                 
                
                createState(idRestzeit, 300, {type: 'number', unit: 's'});
                
                 
                
                var Osmosefreigabe = !getState('sonoff.0.Aqua_Float.POWER4').val;
                
                var Schwimmer = getState("sonoff.0.Aqua_Float.POWER1").val;
                
                var Restzeit, timeout_aus, timeout_ein, Magnetventil_Kontrolle;
                
                 
                
                function Magnetventil_Ein() {
                
                  if (!Magnetventil_Kontrolle && Restzeit > 0 && Osmosefreigabe) {
                
                    Magnetventil_Kontrolle = setInterval(function () {
                
                      if (Restzeit > 0 && Schwimmer && Osmosefreigabe) {
                
                        Restzeit--;
                
                        setState(idRestzeit, 2 * Restzeit, true);
                
                      } else {
                
                        setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                
                        clearInterval(Magnetventil_Kontrolle); 
                
                        Magnetventil_Kontrolle = null;
                
                      }
                
                    }, 2000);
                
                    setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, true);
                
                  }
                
                }
                
                 
                
                // Skripstart
                
                setTimeout(function() {
                
                    Restzeit = getState(idRestzeit).val / 2;
                
                    if(Schwimmer && Osmosefreigabe) Magnetventil_Ein();
                
                    else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                
                }, 200);
                
                var entprell = null;
                
                on({id: 'sonoff.0.Aqua_Float.POWER1', change: "ne"}, function (obj) {
                
                  log('Schwimmer: ' + obj.state.val)
                
                  if(entprell) {
                
                    clearTimeout(entprell);
                
                    entprell = null;
                
                  }  
                
                  entprell = setTimeout(function() {
                
                    Schwimmer = obj.state.val;
                
                    if(Schwimmer) Magnetventil_Ein();
                
                    else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                
                  }, 2000); // 2 s 
                
                });
                
                 
                
                schedule("0 0 * * *", function () {
                
                  Restzeit = 150;
                
                  setState(idRestzeit, 300, true);
                
                  if(Schwimmer) Magnetventil_Ein();
                
                });
                
                 
                
                on({id: 'sonoff.0.Aqua_Float.POWER4', change: "ne"}, function (obj) {
                
                  if (obj.state.val) {
                
                    timeout_aus = setTimeout(function () {
                
                      Osmosefreigabe = false;  
                
                      setState("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, false);
                
                      setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                
                    }, 5000);
                
                    if (timeout_ein) {
                
                        clearTimeout(timeout_ein); 
                
                        timeout_ein = null;
                
                    }
                
                  } else {
                
                    timeout_ein = setTimeout(function () {
                
                      Osmosefreigabe = true;
                
                      if(Schwimmer) Magnetventil_Ein();           
                
                      setStateDelayed("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, true, 10000);
                
                    }, 10000);
                
                    if (timeout_aus) {
                
                        clearTimeout(timeout_aus); 
                
                        timeout_aus = null;
                
                    }
                
                  }
                
                });
                
                 
                
                on({id: 'sonoff.0.Aqua_Power.POWER3', change: "ne"}, function (obj) {
                
                  var txt;  
                
                  if (obj.state.val) txt = text_ein;   
                
                  else txt = text_aus;   
                
                  sendTo("telegram.4", "send", {
                
                    text: txt
                
                  });
                
                  log(txt);
                
                });
                
                

                und der Datenpunkt Aqua_Control.0.Osmose_System.Restzeit.Osmose.Restzeit
                wird im Javascript Adapter ersetllt. wie muss der lauten, damit der im Root Verzeichnis
                Aqua_Control erstellt wird!?

                paul53P 1 Antwort Letzte Antwort
                0
                • AphofisA Aphofis

                  @paul53
                  Kannst du mir vllt noch mal mit dieser steuerung helfen!?
                  irgendwie will keine Osmose dosieren. Seid dem ich die neuen Stable Updates installiert hatte.
                  Hatte die Geräte manuell getestet das funktioniert.
                  Nur Schaltet die Steuerung nicht. Das wäre sehr nett.

                  const idRestzeit = 'Aqua_Control.0.Osmose_System.Restzeit.Osmose.Restzeit';
                  
                  const text_ein = ['Filter Max unterschritten, Skimmer & Osmose','\n','wurden wieder eingeschaltet'].join('');
                  
                  const text_aus = ['Filter Max erreicht, Skimmer & Osmose','\n','wurden abgeschaltet'].join('');
                  
                   
                  
                  createState(idRestzeit, 300, {type: 'number', unit: 's'});
                  
                   
                  
                  var Osmosefreigabe = !getState('sonoff.0.Aqua_Float.POWER4').val;
                  
                  var Schwimmer = getState("sonoff.0.Aqua_Float.POWER1").val;
                  
                  var Restzeit, timeout_aus, timeout_ein, Magnetventil_Kontrolle;
                  
                   
                  
                  function Magnetventil_Ein() {
                  
                    if (!Magnetventil_Kontrolle && Restzeit > 0 && Osmosefreigabe) {
                  
                      Magnetventil_Kontrolle = setInterval(function () {
                  
                        if (Restzeit > 0 && Schwimmer && Osmosefreigabe) {
                  
                          Restzeit--;
                  
                          setState(idRestzeit, 2 * Restzeit, true);
                  
                        } else {
                  
                          setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                  
                          clearInterval(Magnetventil_Kontrolle); 
                  
                          Magnetventil_Kontrolle = null;
                  
                        }
                  
                      }, 2000);
                  
                      setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, true);
                  
                    }
                  
                  }
                  
                   
                  
                  // Skripstart
                  
                  setTimeout(function() {
                  
                      Restzeit = getState(idRestzeit).val / 2;
                  
                      if(Schwimmer && Osmosefreigabe) Magnetventil_Ein();
                  
                      else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                  
                  }, 200);
                  
                  var entprell = null;
                  
                  on({id: 'sonoff.0.Aqua_Float.POWER1', change: "ne"}, function (obj) {
                  
                    log('Schwimmer: ' + obj.state.val)
                  
                    if(entprell) {
                  
                      clearTimeout(entprell);
                  
                      entprell = null;
                  
                    }  
                  
                    entprell = setTimeout(function() {
                  
                      Schwimmer = obj.state.val;
                  
                      if(Schwimmer) Magnetventil_Ein();
                  
                      else setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                  
                    }, 2000); // 2 s 
                  
                  });
                  
                   
                  
                  schedule("0 0 * * *", function () {
                  
                    Restzeit = 150;
                  
                    setState(idRestzeit, 300, true);
                  
                    if(Schwimmer) Magnetventil_Ein();
                  
                  });
                  
                   
                  
                  on({id: 'sonoff.0.Aqua_Float.POWER4', change: "ne"}, function (obj) {
                  
                    if (obj.state.val) {
                  
                      timeout_aus = setTimeout(function () {
                  
                        Osmosefreigabe = false;  
                  
                        setState("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, false);
                  
                        setState("sonoff.0.Aqua_Control.POWER1"/*Osmose_Magnetventil*/, false);
                  
                      }, 5000);
                  
                      if (timeout_ein) {
                  
                          clearTimeout(timeout_ein); 
                  
                          timeout_ein = null;
                  
                      }
                  
                    } else {
                  
                      timeout_ein = setTimeout(function () {
                  
                        Osmosefreigabe = true;
                  
                        if(Schwimmer) Magnetventil_Ein();           
                  
                        setStateDelayed("sonoff.0.Aqua_Power.POWER3"/*Aqua_Power_Skimmer*/, true, 10000);
                  
                      }, 10000);
                  
                      if (timeout_aus) {
                  
                          clearTimeout(timeout_aus); 
                  
                          timeout_aus = null;
                  
                      }
                  
                    }
                  
                  });
                  
                   
                  
                  on({id: 'sonoff.0.Aqua_Power.POWER3', change: "ne"}, function (obj) {
                  
                    var txt;  
                  
                    if (obj.state.val) txt = text_ein;   
                  
                    else txt = text_aus;   
                  
                    sendTo("telegram.4", "send", {
                  
                      text: txt
                  
                    });
                  
                    log(txt);
                  
                  });
                  
                  

                  und der Datenpunkt Aqua_Control.0.Osmose_System.Restzeit.Osmose.Restzeit
                  wird im Javascript Adapter ersetllt. wie muss der lauten, damit der im Root Verzeichnis
                  Aqua_Control erstellt wird!?

                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von
                  #258

                  @aphofis sagte: der Datenpunkt Aqua_Control.0.Osmose_System.Restzeit.Osmose.Restzeit wird im Javascript Adapter ersetllt. wie muss der lauten, damit der im Root Verzeichnis Aqua_Control erstellt wird!?

                  Man kann keinen Datenpunkt unter "Aqua_Control.0" mit createState() erstellen.

                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                  Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                  AphofisA 1 Antwort Letzte Antwort
                  0
                  • paul53P paul53

                    @aphofis sagte: der Datenpunkt Aqua_Control.0.Osmose_System.Restzeit.Osmose.Restzeit wird im Javascript Adapter ersetllt. wie muss der lauten, damit der im Root Verzeichnis Aqua_Control erstellt wird!?

                    Man kann keinen Datenpunkt unter "Aqua_Control.0" mit createState() erstellen.

                    AphofisA Offline
                    AphofisA Offline
                    Aphofis
                    schrieb am zuletzt editiert von Aphofis
                    #259

                    @paul53
                    OK wieder auf standard gestellt.
                    Nur war das nihct der Grund warum die steuerung nicht mehr funktioniert.
                    Schwimmer steht auf true Restzeit steht auf 300 sekunden nur Magnetventil wird nicht geschaltet.
                    muss vielleicht irgendein Datenpunkt neu definiert werden !?

                    paul53P 1 Antwort Letzte Antwort
                    0
                    • AphofisA Aphofis

                      @paul53
                      OK wieder auf standard gestellt.
                      Nur war das nihct der Grund warum die steuerung nicht mehr funktioniert.
                      Schwimmer steht auf true Restzeit steht auf 300 sekunden nur Magnetventil wird nicht geschaltet.
                      muss vielleicht irgendein Datenpunkt neu definiert werden !?

                      paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von paul53
                      #260

                      @aphofis sagte: muss vielleicht irgendein Datenpunkt neu definiert werden !?

                      Wie lautet jetzt die ID der Restzeit?
                      "sonoff.0.Aqua_Float.POWER4" ist auf false? (=Freigabe)

                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                      AphofisA 1 Antwort Letzte Antwort
                      1
                      • paul53P paul53

                        @aphofis sagte: muss vielleicht irgendein Datenpunkt neu definiert werden !?

                        Wie lautet jetzt die ID der Restzeit?
                        "sonoff.0.Aqua_Float.POWER4" ist auf false? (=Freigabe)

                        AphofisA Offline
                        AphofisA Offline
                        Aphofis
                        schrieb am zuletzt editiert von Aphofis
                        #261

                        @paul53
                        Der Wert wurde automatisch wieder in Javascript erstellt Pfad:

                        javascript.0.Osmose.Restzeit
                        

                        "sonoff.0.Aqua_Float.POWER4" ist der Filter Niveau Max und steht auf true !!! Muss ich mal testen ob der Schwimmer korrekt ist. da der Schwimmer unten auf false stehen sollte.

                        AphofisA 1 Antwort Letzte Antwort
                        0
                        • AphofisA Aphofis

                          @paul53
                          Der Wert wurde automatisch wieder in Javascript erstellt Pfad:

                          javascript.0.Osmose.Restzeit
                          

                          "sonoff.0.Aqua_Float.POWER4" ist der Filter Niveau Max und steht auf true !!! Muss ich mal testen ob der Schwimmer korrekt ist. da der Schwimmer unten auf false stehen sollte.

                          AphofisA Offline
                          AphofisA Offline
                          Aphofis
                          schrieb am zuletzt editiert von
                          #262

                          OK Fehler gefunden, der Schwimmer Power4 war mal wieder in der falschen Stellung. kommt beim Neustart des NodeMCU alle Jubeljahre vor, das der Schwimmerzustand verkehrt ist

                          1 Antwort Letzte Antwort
                          0
                          Antworten
                          • In einem neuen Thema antworten
                          Anmelden zum Antworten
                          • Älteste zuerst
                          • Neuste zuerst
                          • Meiste Stimmen


                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          683

                          Online

                          32.6k

                          Benutzer

                          82.0k

                          Themen

                          1.3m

                          Beiträge
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                          ioBroker Community 2014-2025
                          logo
                          • Anmelden

                          • Du hast noch kein Konto? Registrieren

                          • Anmelden oder registrieren, um zu suchen
                          • Erster Beitrag
                            Letzter Beitrag
                          0
                          • Home
                          • Aktuell
                          • Tags
                          • Ungelesen 0
                          • Kategorien
                          • Unreplied
                          • Beliebt
                          • GitHub
                          • Docu
                          • Hilfe