Navigation

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

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Blockly Warmwasser Logik Probleme

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

      Hallo zusammen,

      ich bin mit meinem "Latein" am Ende und wollte fragen ob ihr mir bitte weiterhelfen könnt.

      Folgendes Ausgangsszenario :

      Ich würde gerne das Warmwasser bei meiner Heizung bei 2 Bedingungen triggern.
      1.) Warmwassermachen wenn Photovotaik über 3 KW macht und Warmwassertemperatur unter 46 ist
      2.) Wenn erste Bedingung nicht erfüllt soll SIe Warmwasser machen wenn meien Frau und ich zu Hause sind und Warmwassertemperatur unter 46 Grad ist.
      Das ganze auf der Zeitschine zwischen 4 Uhr morgens und 21 Uhr Abends.

      Unbenannt.png

      Anbei das Blockly welches ich gemacht habe.
      Die ganzen Einzelwerte funktionieren Ansicht, aber das Skript triggert nicht.

      Wo ist mein Denkfehler ?

      Danke euch und Gruß,
      Andi

      Thomas Braun paul53 2 Replies Last reply Reply Quote 0
      • Thomas Braun
        Thomas Braun Most Active @kmidt last edited by Thomas Braun

        @kmidt
        Im Zeitplan sind Zeitpunkte, an denen etwas ausgelöst werden soll. Kannst du für Zeiträume nicht verwenden.
        Füge die Zeiträume als weitere Bedingung ein.

        kmidt 1 Reply Last reply Reply Quote 0
        • kmidt
          kmidt @Thomas Braun last edited by

          @Thomas-Braun : Danke Dir, werde ich mal testen indem ich die Zeiten in die Bedingung einbaue.

          kmidt 1 Reply Last reply Reply Quote 0
          • kmidt
            kmidt @kmidt last edited by

            Wie fügt man Zeitpunkte in die Bedingung ein ? Finde da irgendwie nicht das richtige "Set"

            Thomas Braun 1 Reply Last reply Reply Quote 0
            • Thomas Braun
              Thomas Braun Most Active @kmidt last edited by

              @kmidt
              68f91da0-eedd-4a0d-80f2-79e16a93d71a-image.png

              kmidt 1 Reply Last reply Reply Quote 0
              • kmidt
                kmidt @Thomas Braun last edited by

                @Thomas-Braun Danke Dir

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

                  @kmidt sagte:

                  Anbei das Blockly welches ich gemacht habe.

                  Keine Trigger innerhalb von Triggern verwenden !
                  Bei der Temperaturauswertung muss eine Hysterese vorgesehen werden, da sonst bei Erhöhung gleich wieder abgeschaltet wird.

                  @kmidt sagte in Blockly Warmwasser Logik Probleme:

                  1.) Warmwassermachen wenn Photovotaik über 3 KW macht und Warmwassertemperatur unter 46 ist
                  2.) Wenn erste Bedingung nicht erfüllt soll SIe Warmwasser machen wenn meien Frau und ich zu Hause sind und Warmwassertemperatur unter 46 Grad ist.
                  Das ganze auf der Zeitschine zwischen 4 Uhr morgens und 21 Uhr Abends.

                  Vorschlag:

                  Blockly_temp.JPG

                  <xml xmlns="https://developers.google.com/blockly/xml">
                   <variables>
                     <variable id="/d~H3W^4DxjV(#wv]M7;">Temp_niedrig</variable>
                     <variable id="21-ar}1Bo[X=opmzLnWI">ein</variable>
                   </variables>
                   <block type="variables_set" id="tGy,Nh5b,p)#tb_`*hOf" x="38" y="-63">
                     <field name="VAR" id="/d~H3W^4DxjV(#wv]M7;">Temp_niedrig</field>
                     <value name="VALUE">
                       <block type="logic_compare" id="HSIVrT],;K{_UWr88P,1">
                         <field name="OP">LT</field>
                         <value name="A">
                           <block type="get_value" id="gu2-$b{kxz1F^77L)_=*">
                             <field name="ATTR">val</field>
                             <field name="OID">ID auswählen</field>
                           </block>
                         </value>
                         <value name="B">
                           <block type="math_number" id="]mST.~#8mD1!A7,4dc[K">
                             <field name="NUM">46</field>
                           </block>
                         </value>
                       </block>
                     </value>
                     <next>
                       <block type="schedule" id="8ZWLbJeE:}5kK1q]@4au">
                         <field name="SCHEDULE">* * * * *</field>
                         <statement name="STATEMENT">
                           <block type="variables_set" id="X+@nlgkp(!-`20lRyDt#">
                             <field name="VAR" id="21-ar}1Bo[X=opmzLnWI">ein</field>
                             <value name="VALUE">
                               <block type="logic_operation" id="*0hPSMS(50b3_nzQN%8e" inline="false">
                                 <field name="OP">AND</field>
                                 <value name="A">
                                   <block type="logic_operation" id=",?kg9~Ky6ni/qMASq%^O" inline="false">
                                     <field name="OP">AND</field>
                                     <value name="A">
                                       <block type="time_compare" id="V(9GU]9]EZOw16|GxC{f">
                                         <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true"></mutation>
                                         <field name="OPTION">between</field>
                                         <field name="START_TIME">04:00</field>
                                         <field name="END_TIME">21:00</field>
                                       </block>
                                     </value>
                                     <value name="B">
                                       <block type="variables_get" id="PK!C7}2y2vWE|[%TspYL">
                                         <field name="VAR" id="/d~H3W^4DxjV(#wv]M7;">Temp_niedrig</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <block type="logic_operation" id=":vbA=H}[)pdIQ%C*|wqT" inline="false">
                                     <field name="OP">OR</field>
                                     <value name="A">
                                       <block type="logic_compare" id=";xt^v6jqG$tB+!mGVP}U">
                                         <field name="OP">GT</field>
                                         <value name="A">
                                           <block type="get_value" id="q[!K,2Y,9L@[=-xQHEOw">
                                             <field name="ATTR">val</field>
                                             <field name="OID">ID auswählen</field>
                                           </block>
                                         </value>
                                         <value name="B">
                                           <block type="math_number" id="n=]I%P*{Y3OqS]V[%MEz">
                                             <field name="NUM">3</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <value name="B">
                                       <block type="logic_operation" id="65vHC5)Q.BGe~L+g`IVg" inline="false">
                                         <field name="OP">OR</field>
                                         <value name="A">
                                           <block type="logic_compare" id="KRPV^TB:)uyr1^8F(1y;">
                                             <field name="OP">EQ</field>
                                             <value name="A">
                                               <block type="get_value" id="{ZNG[#L16|qbzrt[a9q:">
                                                 <field name="ATTR">val</field>
                                                 <field name="OID">ID auswählen</field>
                                               </block>
                                             </value>
                                             <value name="B">
                                               <block type="text" id="8~e2K07LPyAL~C|E1iVL">
                                                 <field name="TEXT">present</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                         <value name="B">
                                           <block type="logic_compare" id="J2D-Dx::+7W{8FV$^2?e">
                                             <field name="OP">EQ</field>
                                             <value name="A">
                                               <block type="get_value" id="mS%hA*2sR6Pi)h(-jDr7">
                                                 <field name="ATTR">val</field>
                                                 <field name="OID">ID auswählen</field>
                                               </block>
                                             </value>
                                             <value name="B">
                                               <block type="text" id="z8))m19YK6|Kp9oF=,?n">
                                                 <field name="TEXT">present</field>
                                               </block>
                                             </value>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <next>
                               <block type="controls_if" id="nj?n79t)OZ:[eQV(#))R">
                                 <value name="IF0">
                                   <block type="logic_compare" id="tJ0TYY-`JlI[j{kIYuND">
                                     <field name="OP">NEQ</field>
                                     <value name="A">
                                       <block type="variables_get" id="fE~Lm3D|LrWv_El-.:jD">
                                         <field name="VAR" id="21-ar}1Bo[X=opmzLnWI">ein</field>
                                       </block>
                                     </value>
                                     <value name="B">
                                       <block type="get_value" id="pz[?/l(S#^-pfz,hd1E}">
                                         <field name="ATTR">val</field>
                                         <field name="OID">ID auswählen</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <statement name="DO0">
                                   <block type="control" id="l`fQ}Ke~9YOAmEs2MV7$">
                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                     <field name="OID">Object ID</field>
                                     <field name="WITH_DELAY">FALSE</field>
                                     <value name="VALUE">
                                       <block type="variables_get" id="z}b%Y:!:Kr)CzLN)$:Gb">
                                         <field name="VAR" id="21-ar}1Bo[X=opmzLnWI">ein</field>
                                       </block>
                                     </value>
                                   </block>
                                 </statement>
                               </block>
                             </next>
                           </block>
                         </statement>
                         <next>
                           <block type="comment" id="kJWe3l.R#b(oTi*+jsr-">
                             <field name="COMMENT">WW Temperatur</field>
                             <next>
                               <block type="on_ext" id="MLbl*tv!.7~3ja;;E`ir">
                                 <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="ZdQ@`=-6Lfg#GO1wo3Ge">
                                     <field name="oid">default</field>
                                   </shadow>
                                 </value>
                                 <statement name="STATEMENT">
                                   <block type="controls_if" id="DfBuUu:od$Jjec*6/D1=">
                                     <mutation elseif="1"></mutation>
                                     <value name="IF0">
                                       <block type="logic_compare" id=".ZfHRd7Pj@!`vt2.-Rlv">
                                         <field name="OP">LT</field>
                                         <value name="A">
                                           <block type="on_source" id="scgh_O85PmkFCs-N@3+;">
                                             <field name="ATTR">state.val</field>
                                           </block>
                                         </value>
                                         <value name="B">
                                           <block type="math_number" id="iLH|zK13|h64^|ObFe85">
                                             <field name="NUM">46</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <statement name="DO0">
                                       <block type="variables_set" id=".(},t:0hYHP,{NXn3,um">
                                         <field name="VAR" id="/d~H3W^4DxjV(#wv]M7;">Temp_niedrig</field>
                                         <value name="VALUE">
                                           <block type="logic_boolean" id="c2~H_GZ570t/)eT_i3l_">
                                             <field name="BOOL">TRUE</field>
                                           </block>
                                         </value>
                                       </block>
                                     </statement>
                                     <value name="IF1">
                                       <block type="logic_compare" id="}_H}N_QL%F5J4idn@tnB">
                                         <field name="OP">GTE</field>
                                         <value name="A">
                                           <block type="on_source" id="FiNyg:Q+]%yN?YA5T!0a">
                                             <field name="ATTR">state.val</field>
                                           </block>
                                         </value>
                                         <value name="B">
                                           <block type="math_number" id="!-g[q+)cO/N)69eM2q3m">
                                             <field name="NUM">60</field>
                                           </block>
                                         </value>
                                       </block>
                                     </value>
                                     <statement name="DO1">
                                       <block type="variables_set" id="XP_vaL}V,v;y,P/^js+H">
                                         <field name="VAR" id="/d~H3W^4DxjV(#wv]M7;">Temp_niedrig</field>
                                         <value name="VALUE">
                                           <block type="logic_boolean" id="wf=0ls028zL=Ty{-T=:_">
                                             <field name="BOOL">FALSE</field>
                                           </block>
                                         </value>
                                       </block>
                                     </statement>
                                   </block>
                                 </statement>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                     </next>
                   </block>
                  </xml>
                  

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

                    @paul53 : Mega Tip da hatte ich gar nicht dran gedacht. Bei mir fing das Script aber gar nicht an.
                    Muss jetzt mal warten bis 46 Grad erreicht sind. Aber danke für den TIP, sonst schaltet der ja direkt wieder ab

                    kmidt 1 Reply Last reply Reply Quote 0
                    • kmidt
                      kmidt @kmidt last edited by

                      @paul53 : Habe dein Vorschlag soweit verstanden, danke dafür-
                      Aber was ist nicht verstehe ist "setze ein" . Was triggert die Variable Ein ?

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

                        @kmidt sagte:

                        Aber was ist nicht verstehe ist "setze ein"

                        Die Variable ein wird auf das Ergebnis (false oder true) der logischen Verknüpfung gesetzt.

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

                          @paul53 : Habe dein Script mal umgesetzt, scheine aber noch einen Fehler drin zu haben ... mhhhh

                          Unbenannt.png

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

                            @kmidt sagte:

                            scheine aber noch einen Fehler drin zu haben

                            Der Vergleich ein != Wert von ... muss mit dem Wert von "WW machen state_switch" erfolgen.

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

                              @paul53 Wunderbar es triggert. Letzte Frage.

                              Oben der BLock mit "setze ein auf"

                              Meine Idee war das Warmwasser immer gemacht wird, wenn PV über 3 KW ist. Wenn dem nicht so ist solltrotzdem WW gemacht werden wenn meine Frau oder ich zu Hause sind.

                              Ist das mit dem Block so gegeben oder macht der mit PV auch nur WW wenn einer zu Hause ist ?

                              Ich danke DIr vielmals

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

                                @kmidt sagte:

                                Ist das mit dem Block so gegeben

                                Die 3 Bedingungen (PV > 3 / present / present) sind per ODER verknüpft.

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

                                  @paul53 Mega scheint so alles zu klappen. Vielen Vielen Dank

                                  efxz 1 Reply Last reply Reply Quote 0
                                  • efxz
                                    efxz @kmidt last edited by

                                    @kmidt

                                    könntest du bitte das funktionierende blockly posten?

                                    kmidt 1 Reply Last reply Reply Quote 0
                                    • kmidt
                                      kmidt @efxz last edited by

                                      @efxz Unbenannt.png

                                      Anbei das BLockly.

                                      efxz 1 Reply Last reply Reply Quote 0
                                      • efxz
                                        efxz @kmidt last edited by

                                        @kmidt 👍 👍 👍

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

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        585
                                        Online

                                        32.0k
                                        Users

                                        80.5k
                                        Topics

                                        1.3m
                                        Posts

                                        4
                                        18
                                        1002
                                        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