Navigation

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

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Klimaautomatik

    This topic has been deleted. Only users with topic management privileges can see it.
    • CrunkFX
      CrunkFX Forum Testing @Stephan Schleich last edited by

      @Stephan-Schleich Handypresence ist ja ein Trigger, nur wenn dieser erfüllt ist und nur in dem Moment wo sich der Zustand ändert wird der Rest in Blau ausgeführt, also ohne Handypresence Kein Klima. Ich tippe, dass du davon ausgehst, das sobald das handy da ist der wert darunter weiter abgefragt wird, dies ist aber nicht der fall, da sich der Zustand ja nur ändert sobald das handy registriert wird. Tausche Handypresence mit Raumtemperatur, diese wird regelmäßig abgefragt und kann dann checken ob das handy da ist.

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

        @Stephan-Schleich
        Wenn bei Anwesenheit um 20:00 Uhr eingeschaltet und um 22:30 Uhr ausgeschaltet werden soll, sind zwei zusätzliche Zeit-Trigger erforderlich.

        CrunkFX 1 Reply Last reply Reply Quote 0
        • CrunkFX
          CrunkFX Forum Testing @paul53 last edited by

          @paul53 Er scheint doch von biz realisieren zu wollen, oder?

          1 Reply Last reply Reply Quote 0
          • CrunkFX
            CrunkFX Forum Testing @Stephan Schleich last edited by CrunkFX

            @Stephan-Schleich Probier den Trigger mal so: Anmerkung 2019-09-15 190219.png

            <xml xmlns="http://www.w3.org/1999/xhtml">
              <block type="on_ext" id="a@{5xDrpUYXIbreg)1^;" x="88" y="163">
                <mutation items="1"></mutation>
                <field name="CONDITION">ne</field>
                <field name="ACK_CONDITION"></field>
                <value name="OID0">
                  <shadow type="field_oid" id="PMw4oO^)XPeu7GA=PnvA">
                    <field name="oid">Temp Wohnzimmer</field>
                  </shadow>
                </value>
                <statement name="STATEMENT">
                  <block type="controls_if" id="?kDy_%9m;]yP09:L0`j(">
                    <value name="IF0">
                      <block type="logic_operation" id="k*TD`s+{X_XvvhYa0h+q" inline="false">
                        <field name="OP">AND</field>
                        <value name="A">
                          <block type="logic_compare" id="rTRZuM4Z8wuq}dE~HC.B">
                            <field name="OP">EQ</field>
                            <value name="A">
                              <block type="get_value" id="2:A^/j6-{jh%J+?(Bw3V">
                                <field name="ATTR">val</field>
                                <field name="OID">Handypresence</field>
                              </block>
                            </value>
                            <value name="B">
                              <block type="logic_boolean" id="U,NvPa/O}E2U`Hi?qmsl">
                                <field name="BOOL">TRUE</field>
                              </block>
                            </value>
                          </block>
                        </value>
                        <value name="B">
                          <block type="logic_operation" id="[}-9pHab2mSeVkptzaMu" inline="false">
                            <field name="OP">AND</field>
                            <value name="A">
                              <block type="logic_compare" id="b2eN8`cP3-qT`n1*SZl.">
                                <field name="OP">EQ</field>
                                <value name="A">
                                  <block type="get_value" id="_SiD!r1D*O}.Tj133+`2">
                                    <field name="ATTR">val</field>
                                    <field name="OID">Klimaanlage Power</field>
                                  </block>
                                </value>
                                <value name="B">
                                  <block type="logic_boolean" id="?H8zS7E7j?E@ava]PPWM">
                                    <field name="BOOL">FALSE</field>
                                  </block>
                                </value>
                              </block>
                            </value>
                            <value name="B">
                              <block type="logic_operation" id="4@dDLiJO17s(|%b?t91P" inline="false">
                                <field name="OP">AND</field>
                                <value name="A">
                                  <block type="logic_compare" id="1GMQ[z|{Zd^N9lp0ZT/d">
                                    <field name="OP">GT</field>
                                    <value name="A">
                                      <block type="get_value" id="[gh#PxW]z[%{g*_~u-ia">
                                        <field name="ATTR">val</field>
                                        <field name="OID">Temp Wohnzimmer</field>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <block type="get_value" id="**|2!2x+hj6L9h5X[ri-">
                                        <field name="ATTR">val</field>
                                        <field name="OID">Temp Klimaanlage</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                                <value name="B">
                                  <block type="logic_operation" id="qsx8:`RN=fb6w%%P+-1D" inline="false">
                                    <field name="OP">AND</field>
                                    <value name="A">
                                      <block type="logic_compare" id="o^)Hjnas7T|NY_Qez*l|">
                                        <field name="OP">EQ</field>
                                        <value name="A">
                                          <block type="get_value" id="DwQN}{,=ftE$z2VW3B6`">
                                            <field name="ATTR">val</field>
                                            <field name="OID">Sommerzeit</field>
                                          </block>
                                        </value>
                                        <value name="B">
                                          <block type="logic_boolean" id="1Jkuv~xDK+cgwK*JOCg~">
                                            <field name="BOOL">TRUE</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <block type="logic_operation" id="zDQ.slhC+tLpLI8i?@ol" inline="false">
                                        <field name="OP">AND</field>
                                        <value name="A">
                                          <block type="time_compare" id="WUj:7BiOA=9fZ~1@a/o$">
                                            <mutation end_time="false"></mutation>
                                            <field name="OPTION">&gt;=</field>
                                            <field name="START_TIME">20:00</field>
                                          </block>
                                        </value>
                                        <value name="B">
                                          <block type="time_compare" id="Q4}2pZ48xgJqTIfg-!mv">
                                            <mutation end_time="false"></mutation>
                                            <field name="OPTION">&lt;=</field>
                                            <field name="START_TIME">23:30</field>
                                          </block>
                                        </value>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                              </block>
                            </value>
                          </block>
                        </value>
                      </block>
                    </value>
                  </block>
                </statement>
              </block>
            </xml>
            

            Die Objekte musst du natürlich aus deinem Objektkatalog noch anpassen.
            Übrigens wäre eine kleine Hysterese in Form eines Offset sicher hilfreich, sonst Klima an Klima aus ..........

            1 Reply Last reply Reply Quote 1
            • paul53
              paul53 @Stephan Schleich last edited by paul53

              @Stephan-Schleich:

              sollte aber doch auch ohne gehen oder?

              Nein, der Zustand des Trigger-Datenpunktes muss sich ändern, damit getriggert wird.

              Vorschlag:

              Blockly_temp.JPG

              <xml xmlns="https://developers.google.com/blockly/xml">
               <variables>
                 <variable id=",#[n}Gg5cU04i[r{vbVP">anwesend</variable>
                 <variable id="cYFNuA7+[ui2R{rh*Dy3">temperatur</variable>
                 <variable id="{_07)W}dyHfg7bV9kbMy">ein</variable>
               </variables>
               <block type="on_ext" id="YNj.._4x;GYL)^j8%b](" x="87" y="12">
                 <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="LOk{:^78XZ^`Cz!J;/UV">
                     <field name="oid">default</field>
                   </shadow>
                 </value>
                 <statement name="STATEMENT">
                   <block type="variables_set" id="9d==KjB!:@GS/!zL8kM7">
                     <field name="VAR" id=",#[n}Gg5cU04i[r{vbVP">anwesend</field>
                     <value name="VALUE">
                       <block type="on_source" id="R(xurYk?*HTWevL?#)`Q">
                         <field name="ATTR">state.val</field>
                       </block>
                     </value>
                     <next>
                       <block type="procedures_callnoreturn" id="oLAJ|Qxw}t`6{4fn!}O6">
                         <mutation name="kuehlen"></mutation>
                       </block>
                     </next>
                   </block>
                 </statement>
                 <next>
                   <block type="on_ext" id="OvSmm.g`|(g*QcRZ7;/]">
                     <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="u7@qHUUkQxMH=)u2_hnU">
                         <field name="oid">default</field>
                       </shadow>
                     </value>
                     <statement name="STATEMENT">
                       <block type="variables_set" id=",gNc73gdnP3n#0::,ggC">
                         <field name="VAR" id="cYFNuA7+[ui2R{rh*Dy3">temperatur</field>
                         <value name="VALUE">
                           <block type="on_source" id="1HCa;{|q*HMR0DV)0Dd.">
                             <field name="ATTR">state.val</field>
                           </block>
                         </value>
                         <next>
                           <block type="procedures_callnoreturn" id="Nk[%`8lHmL1%F`/lPC|W">
                             <mutation name="kuehlen"></mutation>
                           </block>
                         </next>
                       </block>
                     </statement>
                     <next>
                       <block type="schedule" id="*)bu;dEPPzy54LGvK(Ys">
                         <field name="SCHEDULE">0 20 * * *</field>
                         <statement name="STATEMENT">
                           <block type="procedures_callnoreturn" id="=%dEl#JJTv.%hmBZ*YEq">
                             <mutation name="kuehlen"></mutation>
                           </block>
                         </statement>
                         <next>
                           <block type="schedule" id="fbTw-^/AAjYH,pgYPBSX">
                             <field name="SCHEDULE">30 22 * * *</field>
                             <statement name="STATEMENT">
                               <block type="procedures_callnoreturn" id="ED)/87kx;~]Xp.zojoge">
                                 <mutation name="kuehlen"></mutation>
                               </block>
                             </statement>
                           </block>
                         </next>
                       </block>
                     </next>
                   </block>
                 </next>
               </block>
               <block type="procedures_defnoreturn" id="Bbf%9?1bkwu!iz%Ub-jw" x="412" y="13">
                 <field name="NAME">kuehlen</field>
                 <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                 <statement name="STACK">
                   <block type="controls_if" id="ppM%sPOym-1Y](hAm(q6">
                     <mutation else="1"></mutation>
                     <value name="IF0">
                       <block type="logic_operation" id="_Y_Qia}J9A,eUw2pZ=F," inline="false">
                         <field name="OP">AND</field>
                         <value name="A">
                           <block type="logic_operation" id="PvvH|_qg5eE])u7KHsev" inline="false">
                             <field name="OP">AND</field>
                             <value name="A">
                               <block type="variables_get" id="|fHqoQYX}=!Uqtl}OU34">
                                 <field name="VAR" id=",#[n}Gg5cU04i[r{vbVP">anwesend</field>
                               </block>
                             </value>
                             <value name="B">
                               <block type="get_value" id="p}DN%6$ZpGO_?6E2Zs-F">
                                 <field name="ATTR">val</field>
                                 <field name="OID">ID auswählen</field>
                               </block>
                             </value>
                           </block>
                         </value>
                         <value name="B">
                           <block type="time_compare" id="/bXbx6=z^~!_%!6vv@{?">
                             <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true"></mutation>
                             <field name="OPTION">between</field>
                             <field name="START_TIME">20:00</field>
                             <field name="END_TIME">22:30</field>
                           </block>
                         </value>
                       </block>
                     </value>
                     <statement name="DO0">
                       <block type="controls_if" id="C$6:9$56%C,R~=E:8/,B">
                         <mutation elseif="1"></mutation>
                         <value name="IF0">
                           <block type="logic_compare" id="~1dNq!mZ3VpOM0CIpt(m">
                             <field name="OP">GT</field>
                             <value name="A">
                               <block type="variables_get" id="p^OZN:AX-SU%8D{:06{P">
                                 <field name="VAR" id="cYFNuA7+[ui2R{rh*Dy3">temperatur</field>
                               </block>
                             </value>
                             <value name="B">
                               <block type="get_value" id="=wB;Z:WyX[Vx4SV9h`@H">
                                 <field name="ATTR">val</field>
                                 <field name="OID">ID auswählen</field>
                               </block>
                             </value>
                           </block>
                         </value>
                         <statement name="DO0">
                           <block type="variables_set" id="6t!@o?4QV9=ypvjtbd%Y">
                             <field name="VAR" id="{_07)W}dyHfg7bV9kbMy">ein</field>
                             <value name="VALUE">
                               <block type="logic_boolean" id="q8Wl4SyJP`H1e]pmN}Y-">
                                 <field name="BOOL">TRUE</field>
                               </block>
                             </value>
                           </block>
                         </statement>
                         <value name="IF1">
                           <block type="logic_compare" id="3)V;}[8e;Tn/@+ihB]-n">
                             <field name="OP">LTE</field>
                             <value name="A">
                               <block type="variables_get" id="rt}2n0apEDyd.p:^4v@R">
                                 <field name="VAR" id="cYFNuA7+[ui2R{rh*Dy3">temperatur</field>
                               </block>
                             </value>
                             <value name="B">
                               <block type="math_arithmetic" id="Gs^WPdkl#wmnd?]Wi;:#">
                                 <field name="OP">MINUS</field>
                                 <value name="A">
                                   <shadow type="math_number" id="^PXS$i.V;`!-*=Xf[CD1">
                                     <field name="NUM">1</field>
                                   </shadow>
                                   <block type="get_value" id="8SribB_vha]}voS^kI4R">
                                     <field name="ATTR">val</field>
                                     <field name="OID">ID auswählen</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <shadow type="math_number" id="a9-S~X+Z-NL^CelZoYfN">
                                     <field name="NUM">0.5</field>
                                   </shadow>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </value>
                         <statement name="DO1">
                           <block type="variables_set" id="2Vobz4w?b-m,l#)-VomB">
                             <field name="VAR" id="{_07)W}dyHfg7bV9kbMy">ein</field>
                             <value name="VALUE">
                               <block type="logic_boolean" id="j}dj89pmd.G|Jl%lBM,d">
                                 <field name="BOOL">FALSE</field>
                               </block>
                             </value>
                           </block>
                         </statement>
                       </block>
                     </statement>
                     <statement name="ELSE">
                       <block type="variables_set" id="-HI7mr0P;iOM-zDLWs[f">
                         <field name="VAR" id="{_07)W}dyHfg7bV9kbMy">ein</field>
                         <value name="VALUE">
                           <block type="logic_boolean" id="0ojp[euPAp=85{@qoN10">
                             <field name="BOOL">FALSE</field>
                           </block>
                         </value>
                       </block>
                     </statement>
                     <next>
                       <block type="controls_if" id="=cfhZNH7CAY%|79ke;UM">
                         <value name="IF0">
                           <block type="logic_compare" id=":aZi[XLG@INk`ILDgyK{">
                             <field name="OP">NEQ</field>
                             <value name="A">
                               <block type="variables_get" id="g]GQ2oybF[K8rp3ONc4V">
                                 <field name="VAR" id="{_07)W}dyHfg7bV9kbMy">ein</field>
                               </block>
                             </value>
                             <value name="B">
                               <block type="get_value" id="IiO5n~B0F3qVVXso_*s5">
                                 <field name="ATTR">val</field>
                                 <field name="OID">ID auswählen</field>
                               </block>
                             </value>
                           </block>
                         </value>
                         <statement name="DO0">
                           <block type="control" id="zHo{ISJ8zc)@eM,O;_tI">
                             <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="ev/:jFq,%1o4~a[_[WgD">
                                 <field name="VAR" id="{_07)W}dyHfg7bV9kbMy">ein</field>
                               </block>
                             </value>
                           </block>
                         </statement>
                       </block>
                     </next>
                   </block>
                 </statement>
               </block>
              </xml>
              

              1 Reply Last reply Reply Quote 1
              • Stephan Schleich
                Stephan Schleich last edited by Stephan Schleich

                @paul53 @CrunkFX Danke euch 2 für die Beispiele. Ich dachte der Trigger würde in gewissen Intervallen prüfen, dann ist es logisch warum es nicht klappt.

                Ich probier mal pauls Blockly da er mehrere Trigger abfrägt

                Bei dem rot markierten Feld bin ich mir unsicher, er frägt ab ob ich anwesend bin, ob die klima aus ist und ob's zwischen der genannten zeit liegt oder?
                Klima.png

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

                  @Stephan-Schleich:

                  Bei dem rot markierten Feld bin ich mir unsicher

                  Rechts oben soll "Sommerzeit" abgefragt werden.
                  Bei "steuere" fehlt noch die Datenpunkt-Zuweisung zu "Büro Klimaanlage Power".

                  Stephan Schleich 2 Replies Last reply Reply Quote 1
                  • Stephan Schleich
                    Stephan Schleich @paul53 last edited by

                    @paul53 Danke, teste ich die Tage 👍

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

                      @paul53 habs gerade mal getestet, leider passiert nichts automatisch.
                      Klima.png

                      Stephan Schleich 1 Reply Last reply Reply Quote 0
                      • Stephan Schleich
                        Stephan Schleich @Stephan Schleich last edited by Stephan Schleich

                        Ich weiß es ist eigentlich das selbe wie von Paul aber die Trigger Punkte haben iwie die Werte nicht richtig übernommen, so läufts bei mir

                        Klima.png

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        680
                        Online

                        32.0k
                        Users

                        80.4k
                        Topics

                        1.3m
                        Posts

                        3
                        16
                        560
                        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