Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Mit Datenpunkt zählen

    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

    Mit Datenpunkt zählen

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

      Halli Hallo Ich bin jetzt absolut ratlos warum mein Skript nicht macht was es soll.😵

      Ich möchte einen Frequenzumrichter für meine Gartenpumpe steuern. Ich steuere mit verschiedenen Frequenzen zB 15,25,35,....
      Ich habe für jede Frequenz mit einen Datenpunkt angelegt, wenn der Datenpunkt höher als 1.2.3.4 ist wird der FU angeschaltet. das geht auch soweit. Ich habe verschiedene Skripts um den FU anzusteuern. Deswegen brauche ich diese Datenpunkte. Also soll der FU erst wieder abschalten wenn der Datenpunkt auf 0 wieder ist.

      InkedUnbenannt_LI.jpg

      <xml xmlns="https://developers.google.com/blockly/xml">
        <block type="on_ext" id="F)y(oPeAFI(Xn(XJXdfU" x="88" y="-512">
          <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
          <field name="CONDITION">any</field>
          <field name="ACK_CONDITION"></field>
          <value name="OID0">
            <shadow type="field_oid" id="`rI#4#iDM}_*Kh@RwtVh">
              <field name="oid">0_userdata.0.Gartensteuerung.Hauptventil</field>
            </shadow>
          </value>
          <statement name="STATEMENT">
            <block type="controls_if" id="O:g4U2T;~B8jsTKC2zoh">
              <value name="IF0">
                <block type="logic_compare" id="n8^B~-%}R=3Ri-TC-5Bx">
                  <field name="OP">EQ</field>
                  <value name="A">
                    <block type="get_value" id=".G=m,![h{+=)IWHGgiU0">
                      <field name="ATTR">val</field>
                      <field name="OID">0_userdata.0.Gartensteuerung.Hauptventil</field>
                    </block>
                  </value>
                  <value name="B">
                    <block type="logic_boolean" id="t(t$Gi#m*/(b,2zQr^T#">
                      <field name="BOOL">TRUE</field>
                    </block>
                  </value>
                </block>
              </value>
              <statement name="DO0">
                <block type="update" id=";/$hyF!RSJLXos**LWUR">
                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                  <field name="OID">0_userdata.0.Frequenzumrichter-läuft</field>
                  <field name="WITH_DELAY">FALSE</field>
                  <value name="VALUE">
                    <block type="logic_boolean" id=".?pNt(Wswepv{0Lfr4k?">
                      <field name="BOOL">TRUE</field>
                    </block>
                  </value>
                  <next>
                    <block type="request" id="SoV|5q,dWw?%eYO|FI(0">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                      <field name="WITH_STATEMENT">FALSE</field>
                      <field name="LOG"></field>
                      <value name="URL">
                        <shadow type="text" id="U0*};h%}s]iSz|:IWt,y">
                          <field name="TEXT">text</field>
                        </shadow>
                        <block type="text" id="m8=qo~0a9M#/0g+ya9)s">
                          <field name="TEXT">http://192.168.188.158/control?cmd=gpio,5,1</field>
                        </block>
                      </value>
                    </block>
                  </next>
                </block>
              </statement>
              <next>
                <block type="controls_if" id="0P/6^-3nm6fddb-]}cz|">
                  <value name="IF0">
                    <block type="logic_compare" id="(l+(:Z)x8:I8cqx(Z{T1">
                      <field name="OP">EQ</field>
                      <value name="A">
                        <block type="get_value" id="o?H]:XUPw~(WW[b~30O%">
                          <field name="ATTR">val</field>
                          <field name="OID">0_userdata.0.Gartensteuerung.Hauptventil</field>
                        </block>
                      </value>
                      <value name="B">
                        <block type="logic_boolean" id="Nc/ElA!Zi7JUU`W*H!7g">
                          <field name="BOOL">FALSE</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <statement name="DO0">
                    <block type="update" id="U[XbR:+!v`m*JWI^h$GQ">
                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                      <field name="OID">0_userdata.0.Frequenzumrichter-läuft</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE">
                        <block type="logic_boolean" id="yX}pV/+azl,?KATgk1I9">
                          <field name="BOOL">FALSE</field>
                        </block>
                      </value>
                      <next>
                        <block type="request" id="YNK9Z[vzd6}I{CF#sd2k">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                          <field name="WITH_STATEMENT">FALSE</field>
                          <field name="LOG"></field>
                          <value name="URL">
                            <shadow type="text" id="L8(U4;^ayR*aW)s%]hfF">
                              <field name="TEXT">text</field>
                            </shadow>
                            <block type="text" id="df8E1ZxO!S-,XBTS@}Af">
                              <field name="TEXT">http://192.168.188.158/control?cmd=gpio,5,0</field>
                            </block>
                          </value>
                          <next>
                            <block type="timeouts_wait" id="O-Yrl8s+a@h{+AtyEM:4">
                              <field name="DELAY">1000</field>
                              <field name="UNIT">ms</field>
                              <next>
                                <block type="update" id="8!JhHNeK`3{s=Iu(dP@]">
                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                  <field name="OID">0_userdata.0.Frequenzumrichter-Anforderung.50-Hz-Anforderung</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE">
                                    <block type="math_arithmetic" id="A=|-7U0HaJd.m-W*P6PM">
                                      <field name="OP">ADD</field>
                                      <value name="A">
                                        <shadow type="math_number" id="8g([+[s1h4)c+RnzQbZk">
                                          <field name="NUM">1</field>
                                        </shadow>
                                        <block type="get_value" id="32{lye0+$,NoKJa-64S6">
                                          <field name="ATTR">val</field>
                                          <field name="OID">0_userdata.0.Frequenzumrichter-Anforderung.50-Hz-Anforderung</field>
                                        </block>
                                      </value>
                                      <value name="B">
                                        <shadow type="math_number" id="od{4JH971A`Nyp5:P0+f">
                                          <field name="NUM">1</field>
                                        </shadow>
                                      </value>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="update" id="jlc7ZQ[Pa|9`DvS3Qc=|">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                      <field name="OID">0_userdata.0.Frequenzumrichter-Anforderung.50-Hz-Anforderung</field>
                                      <field name="WITH_DELAY">TRUE</field>
                                      <field name="DELAY_MS">4</field>
                                      <field name="UNIT">sec</field>
                                      <field name="CLEAR_RUNNING">FALSE</field>
                                      <value name="VALUE">
                                        <block type="math_arithmetic" id="Q-XOvfL9u0_tx#egiDJJ">
                                          <field name="OP">MINUS</field>
                                          <value name="A">
                                            <shadow type="math_number">
                                              <field name="NUM">1</field>
                                            </shadow>
                                            <block type="get_value" id="%L_e64LC/12[6e%s3W[a">
                                              <field name="ATTR">val</field>
                                              <field name="OID">0_userdata.0.Frequenzumrichter-Anforderung.50-Hz-Anforderung</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <shadow type="math_number" id="lXCf[V[Q.#CcJ*%{,tgV">
                                              <field name="NUM">1</field>
                                            </shadow>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                  </statement>
                </block>
              </next>
            </block>
          </statement>
        </block>
      </xml>
      

      So jetzt mein Problem:
      Im Datenpunkt wird der Wert um 1 erhöht wenn der Skript da angekommen ist. Dann nach 4sec soll der Wert wieder um 1 reduziert werden. Und genau das macht er nicht. Der Wert wird um zwei reduziert. Also von 1 auf -1 oder von 6 auf 4 oder von 2 auf 0 usw. Ich finde einfach nicht raus warum.
      Kann mir da BITTE jemand mal auf die Sprünge helfen?

      Gruß Bodo

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

        @bodo-krollpfeiffer sagte: Kann mir da BITTE jemand mal auf die Sprünge helfen?

        Das liegt an der asynchronen Abarbeitung von "steuere": Wenn der Wert erneut eingelesen wird, ist "steuere" noch nicht fertig. Deshalb verwendet man Variablen.

        Bild_2021-09-10_110439.png

        <xml xmlns="https://developers.google.com/blockly/xml">
         <variables>
           <variable id="j(#`e^fJSfCBuPqf~uuU">fu</variable>
         </variables>
         <block type="on_ext" id="F)y(oPeAFI(Xn(XJXdfU" x="88" y="-512">
           <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="`rI#4#iDM}_*Kh@RwtVh">
               <field name="oid">0_userdata.0.Gartensteuerung.Hauptventil</field>
             </shadow>
           </value>
           <statement name="STATEMENT">
             <block type="update" id=";/$hyF!RSJLXos**LWUR">
               <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
               <field name="OID">0_userdata.0.Frequenzumrichter-läuft</field>
               <field name="WITH_DELAY">FALSE</field>
               <value name="VALUE">
                 <block type="on_source" id="|^yF0d=dVnQ(7una2qd8">
                   <field name="ATTR">state.val</field>
                 </block>
               </value>
               <next>
                 <block type="controls_if" id="O:g4U2T;~B8jsTKC2zoh">
                   <mutation else="1"></mutation>
                   <value name="IF0">
                     <block type="on_source" id="yq4(^Mw%3~W?j*16Svim">
                       <field name="ATTR">state.val</field>
                     </block>
                   </value>
                   <statement name="DO0">
                     <block type="request" id="SoV|5q,dWw?%eYO|FI(0">
                       <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                       <field name="WITH_STATEMENT">FALSE</field>
                       <field name="LOG"></field>
                       <value name="URL">
                         <shadow type="text" id="U0*};h%}s]iSz|:IWt,y">
                           <field name="TEXT">text</field>
                         </shadow>
                         <block type="text" id="m8=qo~0a9M#/0g+ya9)s">
                           <field name="TEXT">http://192.168.188.158/control?cmd=gpio,5,1</field>
                         </block>
                       </value>
                     </block>
                   </statement>
                   <statement name="ELSE">
                     <block type="request" id="YNK9Z[vzd6}I{CF#sd2k">
                       <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="false"></mutation>
                       <field name="WITH_STATEMENT">FALSE</field>
                       <field name="LOG"></field>
                       <value name="URL">
                         <shadow type="text" id="L8(U4;^ayR*aW)s%]hfF">
                           <field name="TEXT">text</field>
                         </shadow>
                         <block type="text" id="df8E1ZxO!S-,XBTS@}Af">
                           <field name="TEXT">http://192.168.188.158/control?cmd=gpio,5,0</field>
                         </block>
                       </value>
                       <next>
                         <block type="variables_set" id="B1AIs:[TWUt0(cw?cL3p">
                           <field name="VAR" id="j(#`e^fJSfCBuPqf~uuU">fu</field>
                           <value name="VALUE">
                             <block type="get_value" id="32{lye0+$,NoKJa-64S6">
                               <field name="ATTR">val</field>
                               <field name="OID">0_userdata.0.Frequenzumrichter-Anforderung.50-Hz-Anforderung</field>
                             </block>
                           </value>
                           <next>
                             <block type="math_change" id="@:dSMzu;+JzX^=3C=qB9">
                               <field name="VAR" id="j(#`e^fJSfCBuPqf~uuU">fu</field>
                               <value name="DELTA">
                                 <shadow type="math_number" id="6c9DuSUj)OoonqI~w$kz">
                                   <field name="NUM">1</field>
                                 </shadow>
                               </value>
                               <next>
                                 <block type="update" id="8!JhHNeK`3{s=Iu(dP@]">
                                   <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                   <field name="OID">0_userdata.0.Frequenzumrichter-Anforderung.50-Hz-Anforderung</field>
                                   <field name="WITH_DELAY">TRUE</field>
                                   <field name="DELAY_MS">1</field>
                                   <field name="UNIT">sec</field>
                                   <field name="CLEAR_RUNNING">TRUE</field>
                                   <value name="VALUE">
                                     <block type="variables_get" id="{+wD1#/A66t/D}!vIm{!">
                                       <field name="VAR" id="j(#`e^fJSfCBuPqf~uuU">fu</field>
                                     </block>
                                   </value>
                                   <next>
                                     <block type="math_change" id="4g^!,6]GK,yiu^[5?fQf">
                                       <field name="VAR" id="j(#`e^fJSfCBuPqf~uuU">fu</field>
                                       <value name="DELTA">
                                         <shadow type="math_number" id="ZRa?6Gc?HlC%dF1S;4tg">
                                           <field name="NUM">-1</field>
                                         </shadow>
                                       </value>
                                       <next>
                                         <block type="update" id="jlc7ZQ[Pa|9`DvS3Qc=|">
                                           <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation>
                                           <field name="OID">0_userdata.0.Frequenzumrichter-Anforderung.50-Hz-Anforderung</field>
                                           <field name="WITH_DELAY">TRUE</field>
                                           <field name="DELAY_MS">5</field>
                                           <field name="UNIT">sec</field>
                                           <field name="CLEAR_RUNNING">TRUE</field>
                                           <value name="VALUE">
                                             <block type="variables_get" id="gsXt[D4[.v`S9}/Y20J6">
                                               <field name="VAR" id="j(#`e^fJSfCBuPqf~uuU">fu</field>
                                             </block>
                                           </value>
                                         </block>
                                       </next>
                                     </block>
                                   </next>
                                 </block>
                               </next>
                             </block>
                           </next>
                         </block>
                       </next>
                     </block>
                   </statement>
                 </block>
               </next>
             </block>
           </statement>
         </block>
        </xml>
        

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

        Support us

        ioBroker
        Community Adapters
        Donate

        504
        Online

        31.8k
        Users

        79.9k
        Topics

        1.3m
        Posts

        2
        2
        163
        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