Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. PV Überschuss -> Wetter -> Mindestlaufzeit

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    PV Überschuss -> Wetter -> Mindestlaufzeit

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

      @hennerich sagte: weiß nicht wo ...

      Das passt doch schon. Außerdem zusammen mit dem Stopp der Verzögerung:

      Bild_2022-09-30_164644417.png

      <xml xmlns="https://developers.google.com/blockly/xml">
       <variables>
         <variable id="0yCRj*O9QX1#dhgtI-o5">grenzwertEin</variable>
         <variable id="k5G]U.qWO4-lc^#fGv0R">grenzwertAus</variable>
         <variable type="timeout" id="delayON">delayON</variable>
         <variable id="jD:V$.])KxCes_FflMoE">RestMinEIN</variable>
         <variable type="timeout" id="delayOFF">delayOFF</variable>
         <variable type="interval" id="IntervallEIN">IntervallEIN</variable>
         <variable id="amaP_B3+(hN0#V{xCDq{">RestMinAus</variable>
         <variable type="interval" id="IntervallAUS">IntervallAUS</variable>
       </variables>
       <block type="control" id="9.)4r%kZ1%Uf;Uil4tNE" x="88" y="-737">
         <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
         <field name="OID">0_userdata.0.WP-EIN</field>
         <field name="WITH_DELAY">FALSE</field>
         <value name="VALUE">
           <block type="logic_compare" id="#i9TTXCwv:!|r4Z!GG|C">
             <field name="OP">GT</field>
             <value name="A">
               <block type="get_value" id="|5$u^Ob!6lxj%^zdLtP3">
                 <field name="ATTR">val</field>
                 <field name="OID">javascript.0.Solar.Wechselrichter.PVLeistungAktuell</field>
               </block>
             </value>
             <value name="B">
               <block type="get_value" id="e{qbXHORf)Ry)koGvIAz">
                 <field name="ATTR">val</field>
                 <field name="OID">0_userdata.0.Test</field>
               </block>
             </value>
           </block>
         </value>
         <next>
           <block type="on_ext" id="}3~1BrwJhZsTt4(%VB$m">
             <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="-MQX`Qtp(z`+JHao5xfU">
                 <field name="oid">javascript.0.Solar.Wechselrichter.PVLeistungAktuell</field>
               </shadow>
             </value>
             <statement name="STATEMENT">
               <block type="variables_set" id="Md.!Zw!m:cAcvJ8WWfbK">
                 <field name="VAR" id="0yCRj*O9QX1#dhgtI-o5">grenzwertEin</field>
                 <comment pinned="false" h="80" w="160">Setze Wert von PV-Grenzwert EIN auf Variable GrenzWertEIN&#10;Beispiel: 4.000W</comment>
                 <value name="VALUE">
                   <block type="get_value" id="*_~$A8Ja.]@}FP_DxW.Q">
                     <field name="ATTR">val</field>
                     <field name="OID">0_userdata.0.Test</field>
                   </block>
                 </value>
                 <next>
                   <block type="variables_set" id="DH5y,u|E}^JG]$AxF_0?">
                     <field name="VAR" id="k5G]U.qWO4-lc^#fGv0R">grenzwertAus</field>
                     <comment pinned="false" h="80" w="160">Variable GrenzWertAUS entspricht dem Wert von GrenzWertEIN minus 1000&#10;Beispiel: 3.000W</comment>
                     <value name="VALUE">
                       <block type="math_arithmetic" id="Z:.{deRr:BeGa!O.8l|~">
                         <field name="OP">MINUS</field>
                         <value name="A">
                           <shadow type="math_number" id="!gdbsx5^mYvq;Q:l7wq@">
                             <field name="NUM">1</field>
                           </shadow>
                           <block type="variables_get" id="RgtOXkV@;:87B?hUY*QR">
                             <field name="VAR" id="0yCRj*O9QX1#dhgtI-o5">grenzwertEin</field>
                           </block>
                         </value>
                         <value name="B">
                           <shadow type="math_number" id="Vz!O1@CFR#ehods.od[(">
                             <field name="NUM">1000</field>
                           </shadow>
                         </value>
                       </block>
                     </value>
                     <next>
                       <block type="controls_if" id="n!=jZJE^6mHBKDpXo.~H">
                         <mutation elseif="1"></mutation>
                         <value name="IF0">
                           <block type="logic_compare" id="F,$^e-N/uEfaAGnUH!X)">
                             <field name="OP">LTE</field>
                             <comment pinned="false" h="80" w="160">Wenn Wert von PVLeistungAktuell kleiner/gleich GrenzWertEIN ist&#10;Beispiel:&#10;Wert=5.000W&#10;Grenzwert=4.000W</comment>
                             <value name="A">
                               <block type="on_source" id=")CaD4fVQ_}/GB[^hJUPS">
                                 <field name="ATTR">state.val</field>
                               </block>
                             </value>
                             <value name="B">
                               <block type="variables_get" id="ep2Vxwy;n/9,oj@j-*(e">
                                 <field name="VAR" id="0yCRj*O9QX1#dhgtI-o5">grenzwertEin</field>
                               </block>
                             </value>
                           </block>
                         </value>
                         <statement name="DO0">
                           <block type="timeouts_cleartimeout" id="Jou2^[9@NXb05W+8,!cA">
                             <field name="NAME">delayON</field>
                             <comment pinned="false" h="80" w="160">delayON wird angehalten</comment>
                             <next>
                               <block type="timeouts_clearinterval" id="V)x0n#Y%Np{UpZf3SvKi">
                                 <field name="NAME">IntervallEIN</field>
                               </block>
                             </next>
                           </block>
                         </statement>
                         <value name="IF1">
                           <block type="logic_compare" id="$HL3+5/toZG]vvR5!xBb">
                             <field name="OP">LTE</field>
                             <value name="A">
                               <block type="on_source" id="Db-m`vymJ+K:XZ`UzM(-">
                                 <field name="ATTR">oldState.val</field>
                               </block>
                             </value>
                             <value name="B">
                               <block type="variables_get" id="{[UO_?.lT2(Z`F}t9Pcr">
                                 <field name="VAR" id="0yCRj*O9QX1#dhgtI-o5">grenzwertEin</field>
                               </block>
                             </value>
                           </block>
                         </value>
                         <statement name="DO1">
                           <block type="timeouts_settimeout" id="U|4oJ2qg;rWY^j%.*/ab">
                             <field name="NAME">delayON</field>
                             <field name="DELAY">10</field>
                             <field name="UNIT">min</field>
                             <statement name="STATEMENT">
                               <block type="control" id="W7P9H}{Vzd#7x;;z:$tZ">
                                 <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                 <field name="OID">0_userdata.0.WP-EIN</field>
                                 <field name="WITH_DELAY">FALSE</field>
                                 <value name="VALUE">
                                   <block type="logic_boolean" id=":S^|DZu!LD-Ow%3ZtW{#">
                                     <field name="BOOL">TRUE</field>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="timeouts_clearinterval" id="OcD6YI+XBS7Y:V/aw/e{">
                                     <field name="NAME">IntervallEIN</field>
                                     <next>
                                       <block type="telegram" id="ev!(EAJRtv]p)o7VsK`P" collapsed="true">
                                         <field name="INSTANCE"></field>
                                         <field name="LOG"></field>
                                         <field name="SILENT">FALSE</field>
                                         <field name="PARSEMODE">default</field>
                                         <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                         <value name="MESSAGE">
                                           <shadow type="text" id="lO=Ipl$lGa$1f7oy@s3n">
                                             <field name="TEXT">Wärmepumpe EIN</field>
                                           </shadow>
                                         </value>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </statement>
                             <next>
                               <block type="variables_set" id="$?/xu6+$``%_J`Sn/J10">
                                 <field name="VAR" id="jD:V$.])KxCes_FflMoE">RestMinEIN</field>
                                 <value name="VALUE">
                                   <block type="math_number" id="j@O(2`{X!qMH%62G~i(2">
                                     <field name="NUM">10</field>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="timeouts_setinterval" id="6OdsXm0TT-}6oXEf:Tq@">
                                     <field name="NAME">IntervallEIN</field>
                                     <field name="INTERVAL">1</field>
                                     <field name="UNIT">min</field>
                                     <statement name="STATEMENT">
                                       <block type="math_change" id="8vEQ.(5M+*D]Ix$BgU}T">
                                         <field name="VAR" id="jD:V$.])KxCes_FflMoE">RestMinEIN</field>
                                         <value name="DELTA">
                                           <shadow type="math_number" id="UY0dE7Un99ec|*AF_jdS">
                                             <field name="NUM">-1</field>
                                           </shadow>
                                         </value>
                                         <next>
                                           <block type="debug" id="@Q6u.OxwxjO@ibshZ]zr">
                                             <field name="Severity">log</field>
                                             <value name="TEXT">
                                               <shadow type="text">
                                                 <field name="TEXT">test</field>
                                               </shadow>
                                               <block type="text_join" id="[sg,%`/EWxk~IVDZ5P/e" inline="true">
                                                 <mutation items="2"></mutation>
                                                 <value name="ADD0">
                                                   <block type="variables_get" id="nj@#1:iuQJ6WqSf`rhUs">
                                                     <field name="VAR" id="jD:V$.])KxCes_FflMoE">RestMinEIN</field>
                                                   </block>
                                                 </value>
                                                 <value name="ADD1">
                                                   <block type="text" id="7G}tu]=T:^/O1S8OcN:J">
                                                     <field name="TEXT"> Min bis EIN</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                           </block>
                                         </next>
                                       </block>
                                     </statement>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </statement>
                         <next>
                           <block type="controls_if" id="JFN3wEK/Xvz4ybZHw{my">
                             <mutation elseif="1"></mutation>
                             <value name="IF0">
                               <block type="logic_compare" id="XesGtKK2gp;RsCJ_mHH$">
                                 <field name="OP">GTE</field>
                                 <value name="A">
                                   <block type="on_source" id="pf^c?y.aH:xz+p5{4O68">
                                     <field name="ATTR">state.val</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <block type="variables_get" id="L*nZas:`}G[90Bwa*K^e">
                                     <field name="VAR" id="k5G]U.qWO4-lc^#fGv0R">grenzwertAus</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <statement name="DO0">
                               <block type="timeouts_cleartimeout" id="-8DbsnCmf)j-=Oj^:]Rg">
                                 <field name="NAME">delayOFF</field>
                                 <next>
                                   <block type="timeouts_clearinterval" id="]b7WtT?+ZL|9^~Q-J0Sr">
                                     <field name="NAME">IntervallAUS</field>
                                   </block>
                                 </next>
                               </block>
                             </statement>
                             <value name="IF1">
                               <block type="logic_compare" id="2lv;nFUd}r-SgTS#v_L*">
                                 <field name="OP">GTE</field>
                                 <value name="A">
                                   <block type="on_source" id="91}fz=s636Ti:.cl~Ni@">
                                     <field name="ATTR">oldState.val</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <block type="variables_get" id="wsSKB;8]gL%$/b6P-mOB">
                                     <field name="VAR" id="k5G]U.qWO4-lc^#fGv0R">grenzwertAus</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <statement name="DO1">
                               <block type="timeouts_settimeout" id="WT/T-l8!$DEtY$S|Zm6w">
                                 <field name="NAME">delayOFF</field>
                                 <field name="DELAY">25</field>
                                 <field name="UNIT">min</field>
                                 <statement name="STATEMENT">
                                   <block type="control" id="t|s4f6HoY9$j2j)l.{cg">
                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                     <field name="OID">0_userdata.0.WP-EIN</field>
                                     <field name="WITH_DELAY">FALSE</field>
                                     <value name="VALUE">
                                       <block type="logic_boolean" id="]E?N5uh`{KcG;mry8y*p">
                                         <field name="BOOL">FALSE</field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="timeouts_clearinterval" id="-}xX_,-$8~O;#j1Vtwia">
                                         <field name="NAME">IntervallAUS</field>
                                         <next>
                                           <block type="telegram" id="3p@)nLs/8f`8pp]!{or7" collapsed="true">
                                             <field name="INSTANCE"></field>
                                             <field name="LOG"></field>
                                             <field name="SILENT">FALSE</field>
                                             <field name="PARSEMODE">default</field>
                                             <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                             <value name="MESSAGE">
                                               <shadow type="text" id="$.^J0P}^mH4v]}GiV6XX">
                                                 <field name="TEXT">Wärmepumpe AUS</field>
                                               </shadow>
                                             </value>
                                           </block>
                                         </next>
                                       </block>
                                     </next>
                                   </block>
                                 </statement>
                                 <next>
                                   <block type="variables_set" id="%H*TfRWa)GZS:,iSPG:4">
                                     <field name="VAR" id="amaP_B3+(hN0#V{xCDq{">RestMinAus</field>
                                     <value name="VALUE">
                                       <block type="math_number" id="exPm748C31FAvA^Qt/hw">
                                         <field name="NUM">25</field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="timeouts_setinterval" id="Ht7o2jnKLT877}x=|Z|m">
                                         <field name="NAME">IntervallAUS</field>
                                         <field name="INTERVAL">1</field>
                                         <field name="UNIT">min</field>
                                         <statement name="STATEMENT">
                                           <block type="math_change" id="@`5N(frN2x6F@0|C/ciE">
                                             <field name="VAR" id="amaP_B3+(hN0#V{xCDq{">RestMinAus</field>
                                             <value name="DELTA">
                                               <shadow type="math_number" id=",+*FYp+HyhOAyb(WCK?]">
                                                 <field name="NUM">-1</field>
                                               </shadow>
                                             </value>
                                             <next>
                                               <block type="debug" id="-;OQ]YTA^qzPA:M]]`W)">
                                                 <field name="Severity">log</field>
                                                 <value name="TEXT">
                                                   <shadow type="text" id="MPIvK@;Fu2s})Ru}el}u">
                                                     <field name="TEXT">test</field>
                                                   </shadow>
                                                   <block type="text_join" id="txt^1ilNKmJl+pZBW/(O" inline="true">
                                                     <mutation items="2"></mutation>
                                                     <value name="ADD0">
                                                       <block type="variables_get" id="0h7!L${!94v;Zt9v,In|">
                                                         <field name="VAR" id="amaP_B3+(hN0#V{xCDq{">RestMinAus</field>
                                                       </block>
                                                     </value>
                                                     <value name="ADD1">
                                                       <block type="text" id="IWR)h8^!qbv4}9e6kb9~">
                                                         <field name="TEXT"> Min bis AUS</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                               </block>
                                             </next>
                                           </block>
                                         </statement>
                                       </block>
                                     </next>
                                   </block>
                                 </next>
                               </block>
                             </statement>
                           </block>
                         </next>
                       </block>
                     </next>
                   </block>
                 </next>
               </block>
             </statement>
           </block>
         </next>
       </block>
      </xml>
      

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

        @paul53

        ...hattest du jetzt noch was geändert?
        Denn zwischenzeitlich sah das Script so aus:

        30.9.2022, 16:45:38.640	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 24 Min bis AUS
        30.9.2022, 16:46:38.639	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 23 Min bis AUS
        30.9.2022, 16:47:32.262	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 4 Min bis EIN
        30.9.2022, 16:47:38.639	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 22 Min bis AUS
        30.9.2022, 16:48:32.261	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 4 Min bis EIN
        30.9.2022, 16:48:38.639	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 21 Min bis AUS
        30.9.2022, 16:49:21.067	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 3 Min bis EIN
        30.9.2022, 16:49:32.262	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 2 Min bis EIN
        30.9.2022, 16:49:38.641	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 20 Min bis AUS
        30.9.2022, 16:50:21.066	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 1 Min bis EIN
        30.9.2022, 16:50:32.262	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 0 Min bis EIN
        30.9.2022, 16:50:38.641	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 19 Min bis AUS
        30.9.2022, 16:51:21.067	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: -1 Min bis EIN
        30.9.2022, 16:51:32.262	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: -2 Min bis EIN
        30.9.2022, 16:51:38.640	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 18 Min bis AUS
        30.9.2022, 16:52:21.068	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: -3 Min bis EIN
        30.9.2022, 16:52:32.262	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: -4 Min bis EIN
        30.9.2022, 16:52:38.641	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 17 Min bis AUS
        30.9.2022, 16:53:32.263	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: -5 Min bis EIN
        30.9.2022, 16:53:38.641	[info ]: javascript.0 (22662) script.js.PV.Steuerung_Wärmepumpe: 16 Min bis AUS
        

        Und 16:53 Uhr kam im Telegram Wärmepumpe EIN

        passt auch ganz gut dazu:
        63dec1fb-066d-4730-b544-48beb78b33e3-image.png
        Nur verstehe ich nicht, warum bis -5min gezählt wird

        paul53 2 Replies Last reply Reply Quote 0
        • paul53
          paul53 @hennerich last edited by paul53

          @hennerich sagte: warum bis -5min gezählt wird

          Mach es besser nur mit Intervallen, dann werden sicher keine negativen Minuten ausgegeben:

          Blockly_temp.JPG

          <xml xmlns="https://developers.google.com/blockly/xml">
           <variables>
             <variable id="0yCRj*O9QX1#dhgtI-o5">grenzwertEin</variable>
             <variable id="k5G]U.qWO4-lc^#fGv0R">grenzwertAus</variable>
             <variable id="jD:V$.])KxCes_FflMoE">RestMinEIN</variable>
             <variable type="interval" id="IntervallEIN">IntervallEIN</variable>
             <variable id="amaP_B3+(hN0#V{xCDq{">RestMinAus</variable>
             <variable type="interval" id="IntervallAUS">IntervallAUS</variable>
           </variables>
           <block type="control" id="9.)4r%kZ1%Uf;Uil4tNE" x="88" y="-737">
             <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
             <field name="OID">0_userdata.0.WP-EIN</field>
             <field name="WITH_DELAY">FALSE</field>
             <value name="VALUE">
               <block type="logic_compare" id="#i9TTXCwv:!|r4Z!GG|C">
                 <field name="OP">GT</field>
                 <value name="A">
                   <block type="get_value" id="|5$u^Ob!6lxj%^zdLtP3">
                     <field name="ATTR">val</field>
                     <field name="OID">javascript.0.Solar.Wechselrichter.PVLeistungAktuell</field>
                   </block>
                 </value>
                 <value name="B">
                   <block type="get_value" id="e{qbXHORf)Ry)koGvIAz">
                     <field name="ATTR">val</field>
                     <field name="OID">0_userdata.0.Test</field>
                   </block>
                 </value>
               </block>
             </value>
             <next>
               <block type="on_ext" id="}3~1BrwJhZsTt4(%VB$m">
                 <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="-MQX`Qtp(z`+JHao5xfU">
                     <field name="oid">javascript.0.Solar.Wechselrichter.PVLeistungAktuell</field>
                   </shadow>
                 </value>
                 <statement name="STATEMENT">
                   <block type="variables_set" id="Md.!Zw!m:cAcvJ8WWfbK">
                     <field name="VAR" id="0yCRj*O9QX1#dhgtI-o5">grenzwertEin</field>
                     <comment pinned="false" h="80" w="160">Setze Wert von PV-Grenzwert EIN auf Variable GrenzWertEIN&#10;Beispiel: 4.000W</comment>
                     <value name="VALUE">
                       <block type="get_value" id="*_~$A8Ja.]@}FP_DxW.Q">
                         <field name="ATTR">val</field>
                         <field name="OID">0_userdata.0.Test</field>
                       </block>
                     </value>
                     <next>
                       <block type="variables_set" id="DH5y,u|E}^JG]$AxF_0?">
                         <field name="VAR" id="k5G]U.qWO4-lc^#fGv0R">grenzwertAus</field>
                         <comment pinned="false" h="80" w="160">Variable GrenzWertAUS entspricht dem Wert von GrenzWertEIN minus 1000&#10;Beispiel: 3.000W</comment>
                         <value name="VALUE">
                           <block type="math_arithmetic" id="Z:.{deRr:BeGa!O.8l|~">
                             <field name="OP">MINUS</field>
                             <value name="A">
                               <shadow type="math_number" id="!gdbsx5^mYvq;Q:l7wq@">
                                 <field name="NUM">1</field>
                               </shadow>
                               <block type="variables_get" id="RgtOXkV@;:87B?hUY*QR">
                                 <field name="VAR" id="0yCRj*O9QX1#dhgtI-o5">grenzwertEin</field>
                               </block>
                             </value>
                             <value name="B">
                               <shadow type="math_number" id="Vz!O1@CFR#ehods.od[(">
                                 <field name="NUM">1000</field>
                               </shadow>
                             </value>
                           </block>
                         </value>
                         <next>
                           <block type="controls_if" id="n!=jZJE^6mHBKDpXo.~H">
                             <mutation elseif="1"></mutation>
                             <value name="IF0">
                               <block type="logic_compare" id="F,$^e-N/uEfaAGnUH!X)">
                                 <field name="OP">LTE</field>
                                 <comment pinned="false" h="80" w="160">Wenn Wert von PVLeistungAktuell kleiner/gleich GrenzWertEIN ist&#10;Beispiel:&#10;Wert=5.000W&#10;Grenzwert=4.000W</comment>
                                 <value name="A">
                                   <block type="on_source" id=")CaD4fVQ_}/GB[^hJUPS">
                                     <field name="ATTR">state.val</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <block type="variables_get" id="ep2Vxwy;n/9,oj@j-*(e">
                                     <field name="VAR" id="0yCRj*O9QX1#dhgtI-o5">grenzwertEin</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <statement name="DO0">
                               <block type="timeouts_clearinterval" id="V)x0n#Y%Np{UpZf3SvKi">
                                 <field name="NAME">IntervallEIN</field>
                               </block>
                             </statement>
                             <value name="IF1">
                               <block type="logic_compare" id="$HL3+5/toZG]vvR5!xBb">
                                 <field name="OP">LTE</field>
                                 <value name="A">
                                   <block type="on_source" id="Db-m`vymJ+K:XZ`UzM(-">
                                     <field name="ATTR">oldState.val</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <block type="variables_get" id="{[UO_?.lT2(Z`F}t9Pcr">
                                     <field name="VAR" id="0yCRj*O9QX1#dhgtI-o5">grenzwertEin</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <statement name="DO1">
                               <block type="variables_set" id="$?/xu6+$``%_J`Sn/J10">
                                 <field name="VAR" id="jD:V$.])KxCes_FflMoE">RestMinEIN</field>
                                 <value name="VALUE">
                                   <block type="math_number" id="j@O(2`{X!qMH%62G~i(2">
                                     <field name="NUM">10</field>
                                   </block>
                                 </value>
                                 <next>
                                   <block type="timeouts_setinterval" id="6OdsXm0TT-}6oXEf:Tq@">
                                     <field name="NAME">IntervallEIN</field>
                                     <field name="INTERVAL">1</field>
                                     <field name="UNIT">min</field>
                                     <statement name="STATEMENT">
                                       <block type="math_change" id="8vEQ.(5M+*D]Ix$BgU}T">
                                         <field name="VAR" id="jD:V$.])KxCes_FflMoE">RestMinEIN</field>
                                         <value name="DELTA">
                                           <shadow type="math_number" id="UY0dE7Un99ec|*AF_jdS">
                                             <field name="NUM">-1</field>
                                           </shadow>
                                         </value>
                                         <next>
                                           <block type="debug" id="@Q6u.OxwxjO@ibshZ]zr">
                                             <field name="Severity">log</field>
                                             <value name="TEXT">
                                               <shadow type="text">
                                                 <field name="TEXT">test</field>
                                               </shadow>
                                               <block type="text_join" id="[sg,%`/EWxk~IVDZ5P/e" inline="true">
                                                 <mutation items="2"></mutation>
                                                 <value name="ADD0">
                                                   <block type="variables_get" id="nj@#1:iuQJ6WqSf`rhUs">
                                                     <field name="VAR" id="jD:V$.])KxCes_FflMoE">RestMinEIN</field>
                                                   </block>
                                                 </value>
                                                 <value name="ADD1">
                                                   <block type="text" id="7G}tu]=T:^/O1S8OcN:J">
                                                     <field name="TEXT"> Min bis EIN</field>
                                                   </block>
                                                 </value>
                                               </block>
                                             </value>
                                             <next>
                                               <block type="controls_if" id="1Wpe}*_BFo^@%Z~OAQRT">
                                                 <value name="IF0">
                                                   <block type="logic_compare" id="u8hVie-dh,a$XB8qpKj{">
                                                     <field name="OP">LTE</field>
                                                     <value name="A">
                                                       <block type="variables_get" id="1(F!2NV|I,7O31Yr|qp0">
                                                         <field name="VAR" id="jD:V$.])KxCes_FflMoE">RestMinEIN</field>
                                                       </block>
                                                     </value>
                                                     <value name="B">
                                                       <block type="math_number" id=",}pv;q%rNLNrYjudNDC9">
                                                         <field name="NUM">0</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <statement name="DO0">
                                                   <block type="control" id="W7P9H}{Vzd#7x;;z:$tZ">
                                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                     <field name="OID">0_userdata.0.WP-EIN</field>
                                                     <field name="WITH_DELAY">FALSE</field>
                                                     <value name="VALUE">
                                                       <block type="logic_boolean" id=":S^|DZu!LD-Ow%3ZtW{#">
                                                         <field name="BOOL">TRUE</field>
                                                       </block>
                                                     </value>
                                                     <next>
                                                       <block type="timeouts_clearinterval" id="OcD6YI+XBS7Y:V/aw/e{">
                                                         <field name="NAME">IntervallEIN</field>
                                                         <next>
                                                           <block type="telegram" id="ev!(EAJRtv]p)o7VsK`P">
                                                             <field name="INSTANCE"></field>
                                                             <field name="LOG"></field>
                                                             <field name="SILENT">FALSE</field>
                                                             <field name="PARSEMODE">default</field>
                                                             <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                                             <value name="MESSAGE">
                                                               <shadow type="text" id="lO=Ipl$lGa$1f7oy@s3n">
                                                                 <field name="TEXT">Wärmepumpe EIN</field>
                                                               </shadow>
                                                             </value>
                                                           </block>
                                                         </next>
                                                       </block>
                                                     </next>
                                                   </block>
                                                 </statement>
                                               </block>
                                             </next>
                                           </block>
                                         </next>
                                       </block>
                                     </statement>
                                   </block>
                                 </next>
                               </block>
                             </statement>
                             <next>
                               <block type="controls_if" id="JFN3wEK/Xvz4ybZHw{my">
                                 <mutation elseif="1"></mutation>
                                 <value name="IF0">
                                   <block type="logic_compare" id="XesGtKK2gp;RsCJ_mHH$">
                                     <field name="OP">GTE</field>
                                     <value name="A">
                                       <block type="on_source" id="pf^c?y.aH:xz+p5{4O68">
                                         <field name="ATTR">state.val</field>
                                       </block>
                                     </value>
                                     <value name="B">
                                       <block type="variables_get" id="L*nZas:`}G[90Bwa*K^e">
                                         <field name="VAR" id="k5G]U.qWO4-lc^#fGv0R">grenzwertAus</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <statement name="DO0">
                                   <block type="timeouts_clearinterval" id="]b7WtT?+ZL|9^~Q-J0Sr">
                                     <field name="NAME">IntervallAUS</field>
                                   </block>
                                 </statement>
                                 <value name="IF1">
                                   <block type="logic_compare" id="2lv;nFUd}r-SgTS#v_L*">
                                     <field name="OP">GTE</field>
                                     <value name="A">
                                       <block type="on_source" id="91}fz=s636Ti:.cl~Ni@">
                                         <field name="ATTR">oldState.val</field>
                                       </block>
                                     </value>
                                     <value name="B">
                                       <block type="variables_get" id="wsSKB;8]gL%$/b6P-mOB">
                                         <field name="VAR" id="k5G]U.qWO4-lc^#fGv0R">grenzwertAus</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <statement name="DO1">
                                   <block type="variables_set" id="%H*TfRWa)GZS:,iSPG:4">
                                     <field name="VAR" id="amaP_B3+(hN0#V{xCDq{">RestMinAus</field>
                                     <value name="VALUE">
                                       <block type="math_number" id="exPm748C31FAvA^Qt/hw">
                                         <field name="NUM">25</field>
                                       </block>
                                     </value>
                                     <next>
                                       <block type="timeouts_setinterval" id="Ht7o2jnKLT877}x=|Z|m">
                                         <field name="NAME">IntervallAUS</field>
                                         <field name="INTERVAL">1</field>
                                         <field name="UNIT">min</field>
                                         <statement name="STATEMENT">
                                           <block type="math_change" id="@`5N(frN2x6F@0|C/ciE">
                                             <field name="VAR" id="amaP_B3+(hN0#V{xCDq{">RestMinAus</field>
                                             <value name="DELTA">
                                               <shadow type="math_number" id=",+*FYp+HyhOAyb(WCK?]">
                                                 <field name="NUM">-1</field>
                                               </shadow>
                                             </value>
                                             <next>
                                               <block type="debug" id="-;OQ]YTA^qzPA:M]]`W)">
                                                 <field name="Severity">log</field>
                                                 <value name="TEXT">
                                                   <shadow type="text" id="MPIvK@;Fu2s})Ru}el}u">
                                                     <field name="TEXT">test</field>
                                                   </shadow>
                                                   <block type="text_join" id="txt^1ilNKmJl+pZBW/(O" inline="true">
                                                     <mutation items="2"></mutation>
                                                     <value name="ADD0">
                                                       <block type="variables_get" id="0h7!L${!94v;Zt9v,In|">
                                                         <field name="VAR" id="amaP_B3+(hN0#V{xCDq{">RestMinAus</field>
                                                       </block>
                                                     </value>
                                                     <value name="ADD1">
                                                       <block type="text" id="IWR)h8^!qbv4}9e6kb9~">
                                                         <field name="TEXT"> Min bis AUS</field>
                                                       </block>
                                                     </value>
                                                   </block>
                                                 </value>
                                                 <next>
                                                   <block type="controls_if" id="?IMwxL_uHBjdEGK=)R*I">
                                                     <value name="IF0">
                                                       <block type="logic_compare" id="2RrQaGw$N$F_z~k%|w%G">
                                                         <field name="OP">LTE</field>
                                                         <value name="A">
                                                           <block type="variables_get" id="9Md)4i:M.ZxW}|J))UVf">
                                                             <field name="VAR" id="amaP_B3+(hN0#V{xCDq{">RestMinAus</field>
                                                           </block>
                                                         </value>
                                                         <value name="B">
                                                           <block type="math_number" id=",eF=U5ho90[Db0wRJ0q^">
                                                             <field name="NUM">0</field>
                                                           </block>
                                                         </value>
                                                       </block>
                                                     </value>
                                                     <statement name="DO0">
                                                       <block type="control" id="t|s4f6HoY9$j2j)l.{cg">
                                                         <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                         <field name="OID">0_userdata.0.WP-EIN</field>
                                                         <field name="WITH_DELAY">FALSE</field>
                                                         <value name="VALUE">
                                                           <block type="logic_boolean" id="]E?N5uh`{KcG;mry8y*p">
                                                             <field name="BOOL">FALSE</field>
                                                           </block>
                                                         </value>
                                                         <next>
                                                           <block type="timeouts_clearinterval" id="-}xX_,-$8~O;#j1Vtwia">
                                                             <field name="NAME">IntervallAUS</field>
                                                             <next>
                                                               <block type="telegram" id="3p@)nLs/8f`8pp]!{or7">
                                                                 <field name="INSTANCE"></field>
                                                                 <field name="LOG"></field>
                                                                 <field name="SILENT">FALSE</field>
                                                                 <field name="PARSEMODE">default</field>
                                                                 <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                                                 <value name="MESSAGE">
                                                                   <shadow type="text" id="$.^J0P}^mH4v]}GiV6XX">
                                                                     <field name="TEXT">Wärmepumpe AUS</field>
                                                                   </shadow>
                                                                 </value>
                                                               </block>
                                                             </next>
                                                           </block>
                                                         </next>
                                                       </block>
                                                     </statement>
                                                   </block>
                                                 </next>
                                               </block>
                                             </next>
                                           </block>
                                         </statement>
                                       </block>
                                     </next>
                                   </block>
                                 </statement>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                     </next>
                   </block>
                 </statement>
               </block>
             </next>
           </block>
          </xml>
          

          B 1 Reply Last reply Reply Quote 0
          • H
            hennerich @paul53 last edited by

            @paul53 sagte in PV Überschuss -> Wetter -> Mindestlaufzeit:

            Oder man verwendet gleich ein Intervall und stoppt es, wenn es runter gezählt hat. Beispiel mit 1/10 Minuten:

            Bild_2022-09-30_150252593.png

            Meinst du so wie du hier geschrieben hattest oder wie genau?

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

              @hennerich sagte: wie genau?

              Hab ich doch gepostet, sogar mit Export.

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

                @paul53
                Entschuldige, das sah für mich genau gleich aus ... 😊 👍

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

                  @hennerich sagte: zwischenzeitlich sah das Script so aus:

                  Ein- und Ausverzögerungen können nicht gleichzeitig erfolgen. Offenbar wurde das IntervallEIN nicht gestoppt bei zu geringer PV-Leistung

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

                    @paul53

                    Dein Script wirft jetzt gar keine Info Meldungen mehr aus ...

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

                      @hennerich sagte: wirft jetzt gar keine Info Meldungen mehr aus ...

                      Treffen denn die Bedingungen für den Start eines Intervalls zu (erstmaliges Überschreiten von grenzwertEin bzw. erstmaliges Unterschreiten von grenzwertAus)?

                      H 1 Reply Last reply Reply Quote 1
                      • H
                        hennerich @paul53 last edited by hennerich

                        @paul53

                        Ja, du hast recht
                        bd846efa-a4ae-4c6c-bfaa-3fc37cfeee8a-image.png

                        Das Log sagt jetzt:

                        17:21:30.688	info	javascript.0 (22662) script.js.PV.Test: 24 Min bis AUS
                        17:22:30.689	info	javascript.0 (22662) script.js.PV.Test: 23 Min bis AUS
                        17:23:30.689	info	javascript.0 (22662) script.js.PV.Test: 22 Min bis AUS
                        17:24:30.689	info	javascript.0 (22662) script.js.PV.Test: 21 Min bis AUS
                        17:25:30.689	info	javascript.0 (22662) script.js.PV.Test: 20 Min bis AUS
                        

                        Ich war bei 17:18 Uhr noch bei 4,8kW, dann bei 17:20 Uhr bei 2,3kW und bei 17:24 Uhr bei 1,6kW.

                        1 Reply Last reply Reply Quote 0
                        • B
                          BG+ @paul53 last edited by

                          @paul53

                          Hallo Paul,

                          vielleicht hast du noch eine Antwort, wenn ich dieses ältere Thema wieder aufgreife.
                          Zwei Fragen:

                          Die Mindestlaufzeit ist doch eigentlich eine Nachlaufzeit, richtig? Wenn meine Wärmepumpe schon 3h gelaufen ist, dann muss ich nicht mehr 30 Minuten warten, bis ich ausschalte. Wiederum brauche ich auch ein delayOFF wegen der Verschattung, damit er nicht zu oft ausschaltet. Wie könnte man das mit der Mindestlaufzeit und Nachlaufzeit separat sauber aufbauen? Zusätzlicher Timer?

                          Ist es richtig, wenn der Wert innerhalb der Hysterese fällt, dass dann mehrmals eingeschaltet wird? Also zum Beispiel
                          GrenzwertEIN = 5000
                          GrenzwertAUS = 4000
                          Wenn jetzt der Wert auf 4800 fällt und dann wieder auf 5500 steigt, wir im Betrieb erneut das "Einschalten" gesendet?

                          Schöne Grüße
                          Ben

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

                            @bg sagte: delayOFF wegen der Verschattung, damit er nicht zu oft ausschaltet.

                            Es ist dafür gedacht, dass nicht bei jeder kleinen Wolke ausgeschaltet wird. Als Nebeneffekt bewirkt es eine Mindesteinschaltdauer.

                            @bg sagte in PV Überschuss -> Wetter -> Mindestlaufzeit:

                            Wenn jetzt der Wert auf 4800 fällt und dann wieder auf 5500 steigt, wir im Betrieb erneut das "Einschalten" gesendet?

                            Ja, nach der Einschaltverzögerung. Das kann / sollte man durch Prüfen des Aktor-Wertes verhindern.

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            415
                            Online

                            31.9k
                            Users

                            80.2k
                            Topics

                            1.3m
                            Posts

                            3
                            48
                            2824
                            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