Navigation

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

    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

    Hilfe bei Blockly Berechnung (Formel)

    This topic has been deleted. Only users with topic management privileges can see it.
    • Felix Merk
      Felix Merk @amg_666 last edited by

      @amg_666
      guter Ansatz!

      Kann das mal jemand für mich überprüfen? Wie mache ich in Blockly einen Wert hoch 2/3 ? bzw. Wert hoch 1,5?
      Ich habe mir nicht anders zu helfen gewusst als: Wurzel Wert * Wurzel Wert * Wurzel Wert....

      Passen die einzelnen Blöcke so?

      Liebe Grüße
      Felix

      Blocly_Feuchtkugel.JPG

      <xml xmlns="http://www.w3.org/1999/xhtml">
        <block type="math_arithmetic" id="3#^r^xtPlR)Ze(MZhI5`" x="-237" y="63">
          <field name="OP">MULTIPLY</field>
          <value name="A">
            <shadow type="math_number" id="JQT5tU%]ZecGlU4@*awi">
              <field name="NUM">1</field>
            </shadow>
            <block type="get_value" id="M6U!t21[|XqPe/uk9_1^">
              <field name="ATTR">val</field>
              <field name="OID">mqtt.0.lift.Sensoren.Temp</field>
            </block>
          </value>
          <value name="B">
            <shadow type="math_number" id="ctjeLIuj!n]T.^UBIQWW">
              <field name="NUM">1</field>
            </shadow>
            <block type="math_trig" id="VGBWu]i-7SAFO9=Uw)z;">
              <field name="OP">ATAN</field>
              <value name="NUM">
                <shadow type="math_number" id="%n@iOcl%Fj,;fghz%OJX">
                  <field name="NUM">45</field>
                </shadow>
                <block type="math_arithmetic" id="rGJezh[AMi$A_)kj!NH~">
                  <field name="OP">MULTIPLY</field>
                  <value name="A">
                    <shadow type="math_number" id="!a3k2S)i6glaeNT**OTo">
                      <field name="NUM">0.151977</field>
                    </shadow>
                  </value>
                  <value name="B">
                    <shadow type="math_number" id="Kij3;EDR[Jp!cPk6@Jmn">
                      <field name="NUM">1</field>
                    </shadow>
                    <block type="math_single" id="x)c4WRRD,p?on.q2m~$C">
                      <field name="OP">ROOT</field>
                      <value name="NUM">
                        <shadow type="math_number" id="$iTr9=`)5Q(=Y0Cqi@Ws">
                          <field name="NUM">9</field>
                        </shadow>
                        <block type="math_arithmetic" id="SF4zMNZRd/H,E0MbSpL)">
                          <field name="OP">ADD</field>
                          <value name="A">
                            <shadow type="math_number" id="k34:6xlfaOTs#H4Egow)">
                              <field name="NUM">1</field>
                            </shadow>
                            <block type="get_value" id="0*I.[p@!RU-;D!Rh/aLr">
                              <field name="ATTR">val</field>
                              <field name="OID">mqtt.0.lift.Sensoren.Feuchte</field>
                            </block>
                          </value>
                          <value name="B">
                            <shadow type="math_number" id="][=AINKNg[LRBk1_?MKa">
                              <field name="NUM">8.313659</field>
                            </shadow>
                          </value>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </value>
            </block>
          </value>
        </block>
        <block type="math_trig" id="+V-kj?2x6$`RZ)f%vW?b" x="-237" y="138">
          <field name="OP">ATAN</field>
          <value name="NUM">
            <shadow type="math_number" id="%n@iOcl%Fj,;fghz%OJX">
              <field name="NUM">45</field>
            </shadow>
            <block type="math_arithmetic" id="5`SS%x)p_[/{f$77@egm">
              <field name="OP">ADD</field>
              <value name="A">
                <shadow type="math_number" id="_/b$!?#yiwjHynAtuT^W">
                  <field name="NUM">0.151977</field>
                </shadow>
                <block type="get_value" id="R_M}a#2AWv/T-p}8]VB4">
                  <field name="ATTR">val</field>
                  <field name="OID">mqtt.0.lift.Sensoren.Temp</field>
                </block>
              </value>
              <value name="B">
                <shadow type="math_number" id="Kij3;EDR[Jp!cPk6@Jmn">
                  <field name="NUM">1</field>
                </shadow>
                <block type="get_value" id="u7PANch2jjl=cS/l9Sdp">
                  <field name="ATTR">val</field>
                  <field name="OID">mqtt.0.lift.Sensoren.Feuchte</field>
                </block>
              </value>
            </block>
          </value>
        </block>
        <block type="math_trig" id="he{#.mO.ew_Jj|@NrNUQ" x="-237" y="188">
          <field name="OP">ATAN</field>
          <value name="NUM">
            <shadow type="math_number" id="%n@iOcl%Fj,;fghz%OJX">
              <field name="NUM">45</field>
            </shadow>
            <block type="math_arithmetic" id="|rt6:r=iER5-yn==dYAN">
              <field name="OP">MINUS</field>
              <value name="A">
                <shadow type="math_number" id="_/b$!?#yiwjHynAtuT^W">
                  <field name="NUM">0.151977</field>
                </shadow>
                <block type="get_value" id="I_YM~GtkSk.ZcItv:lcK">
                  <field name="ATTR">val</field>
                  <field name="OID">mqtt.0.lift.Sensoren.Feuchte</field>
                </block>
              </value>
              <value name="B">
                <shadow type="math_number" id="Kij3;EDR[Jp!cPk6@Jmn">
                  <field name="NUM">1.676331</field>
                </shadow>
              </value>
            </block>
          </value>
        </block>
        <block type="math_arithmetic" id="JX4]@]aB9c(EwR{oon$3" x="-237" y="238">
          <field name="OP">MULTIPLY</field>
          <value name="A">
            <shadow type="math_number" id="#vkPUG*123UyF$x)O8?y">
              <field name="NUM">0.00391838</field>
            </shadow>
          </value>
          <value name="B">
            <shadow type="math_number" id="naGvWi=:s9Msgi2RKbp-">
              <field name="NUM">1</field>
            </shadow>
            <block type="math_arithmetic" id="yb0f##.w@mubL`v}d8*V">
              <field name="OP">MULTIPLY</field>
              <value name="A">
                <shadow type="math_number" id="?IE,Lb;Edgdb)uP;G]jW">
                  <field name="NUM">0.00391838</field>
                </shadow>
                <block type="math_single" id="BzDMFQe,?5qcF7G0JMWi">
                  <field name="OP">ROOT</field>
                  <value name="NUM">
                    <shadow type="math_number" id="5;Ccguw-S`/%7?(d]gO+">
                      <field name="NUM">9</field>
                    </shadow>
                    <block type="get_value" id="-Ok]}n`!4ZLTdA7OkvmN">
                      <field name="ATTR">val</field>
                      <field name="OID">mqtt.0.lift.Sensoren.Feuchte</field>
                    </block>
                  </value>
                </block>
              </value>
              <value name="B">
                <shadow type="math_number" id="p4=SM5($[5bmYk|{Q@`j">
                  <field name="NUM">1</field>
                </shadow>
                <block type="math_arithmetic" id="tg`{E}hi.E*69HEZQV=s">
                  <field name="OP">MULTIPLY</field>
                  <value name="A">
                    <shadow type="math_number" id="14fYOvfMrfVO:38j^HWB">
                      <field name="NUM">1</field>
                    </shadow>
                    <block type="math_single" id="4|UFEN`*Y!7~0Hn^PnV8">
                      <field name="OP">ROOT</field>
                      <value name="NUM">
                        <shadow type="math_number" id="5;Ccguw-S`/%7?(d]gO+">
                          <field name="NUM">9</field>
                        </shadow>
                        <block type="get_value" id=",]75lXE2fU2Z^$ajp%2O">
                          <field name="ATTR">val</field>
                          <field name="OID">mqtt.0.lift.Sensoren.Feuchte</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <value name="B">
                    <shadow type="math_number" id="*TL0AUxc%{f4`@ma9Xd{">
                      <field name="NUM">1</field>
                    </shadow>
                    <block type="math_single" id="}QdhKQ++%5x:zmZr`/Og">
                      <field name="OP">ROOT</field>
                      <value name="NUM">
                        <shadow type="math_number" id="5;Ccguw-S`/%7?(d]gO+">
                          <field name="NUM">9</field>
                        </shadow>
                        <block type="get_value" id="l0ER*|O4)jsuX#12kC?~">
                          <field name="ATTR">val</field>
                          <field name="OID">mqtt.0.lift.Sensoren.Feuchte</field>
                        </block>
                      </value>
                    </block>
                  </value>
                </block>
              </value>
            </block>
          </value>
        </block>
        <block type="math_arithmetic" id="|!0iKQdnBo|9J-3PG{-~" x="-238" y="313">
          <field name="OP">MINUS</field>
          <value name="A">
            <shadow type="math_number" id="d$[:Jl#qUw05@:Rg@0*^">
              <field name="NUM">1</field>
            </shadow>
            <block type="math_trig" id="pRz(RdH#(~gNpZ%QNWxB">
              <field name="OP">ATAN</field>
              <value name="NUM">
                <shadow type="math_number" id="%n@iOcl%Fj,;fghz%OJX">
                  <field name="NUM">45</field>
                </shadow>
                <block type="math_arithmetic" id="30Gu!y_WBDf#5k}tjL7l">
                  <field name="OP">MULTIPLY</field>
                  <value name="A">
                    <shadow type="math_number" id="_/b$!?#yiwjHynAtuT^W">
                      <field name="NUM">0.23101</field>
                    </shadow>
                  </value>
                  <value name="B">
                    <shadow type="math_number" id="F`tT#{Vi7*)+f4Vj7L?/">
                      <field name="NUM">1.676331</field>
                    </shadow>
                    <block type="get_value" id="GLH{ph7zme7Ak4!.BT`_">
                      <field name="ATTR">val</field>
                      <field name="OID">mqtt.0.lift.Sensoren.Feuchte</field>
                    </block>
                  </value>
                </block>
              </value>
            </block>
          </value>
          <value name="B">
            <shadow type="math_number" id="|+LJh(sF,bPu-=J]XiBi">
              <field name="NUM">4</field>
            </shadow>
          </value>
        </block>
      </xml>
      
      amg_666 1 Reply Last reply Reply Quote 0
      • Felix Merk
        Felix Merk @paul53 last edited by

        @paul53
        Hallo Paul, es geht ums Bogenmaß

        Liebe Grüße

        paul53 1 Reply Last reply Reply Quote 0
        • amg_666
          amg_666 @Felix Merk last edited by

          @Felix-Merk said in Hilfe bei Blockly Berechnung (Formel):

          Ich habe mir nicht anders zu helfen gewusst als: Wurzel Wert * Wurzel Wert * Wurzel Wert....

          irgendwas hoch 2/3 ist dasselbe wie Wurzel aus (irgendwas hoch 3) und hoch 3 scheint in blockly nicht zu gehen, ich hab nirgendwo "hoch x" gefunden, insofern sieht deine Lösung nicht schön aus, scheint aber so "alternativlos" zu sein 🙂

          Felix Merk 1 Reply Last reply Reply Quote 0
          • Felix Merk
            Felix Merk @amg_666 last edited by

            @amg_666

            ...habe ich befürchtet 🙂
            Könntest du mal überprüfen ob die einzelnen Terme so noch korrekt sind?
            Wegen Operatorrangfolge usw.?

            Ich seh den Wald vor Bäumen nicht mehr 🙂

            Liebe Grüße

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

              @Felix-Merk sagte.

              es geht ums Bogenmaß

              Die Blockly-Funktionen verwenden bzw. liefern Grad, müssen also umgerechnet werden (* Math.PI / 180).

              @Felix-Merk sagte in Hilfe bei Blockly Berechnung (Formel):

              Wert hoch 1,5?

              Blockly_temp.JPG

              Weshalb versuchst Du Blockly zu "vergewaltigen", wenn es in Javascript ganz einfach ist?

              return t * Math.atan(0.151977 * Math.sqrt(rh + 8.313659)) + Math.atan(t + rh) - Math.atan(rh - 1.676331) + 0.00391838 * Math.pow(rh, 1.5) * Math.atan(0.023101 * rh) - 4.686035;
              

              <xml xmlns="https://developers.google.com/blockly/xml">
               <variables>
                 <variable id="~aFm5k{$2?wI$XW=YnTP">t</variable>
                 <variable id="^n0#nhw9rfhv^H]ms-gl">rh</variable>
                 <variable id=";6~*#rXzT^;lw1zInB=Y">Tw</variable>
               </variables>
               <block type="procedures_defcustomreturn" id="$O*c54lA_?exlLWNe?aR" x="-138" y="12">
                 <mutation statements="false">
                   <arg name="t" varid="~aFm5k{$2?wI$XW=YnTP"></arg>
                   <arg name="rh" varid="^n0#nhw9rfhv^H]ms-gl"></arg>
                 </mutation>
                 <field name="NAME">Feuchtkugeltemperatur</field>
                 <field name="SCRIPT">cmV0dXJuIHQgKiBNYXRoLmF0YW4oMC4xNTE5NzcgKiBNYXRoLnNxcnQocmggKyA4LjMxMzY1OSkpICsgTWF0aC5hdGFuKHQgKyByaCkgLSBNYXRoLmF0YW4ocmggLSAxLjY3NjMzMSkgKyAwLjAwMzkxODM4ICogTWF0aC5wb3cocmgsIDEuNSkgKiBNYXRoLmF0YW4oMC4wMjMxMDEgKiByaCkgLSA0LjY4NjAzNTs=</field>
                 <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
               </block>
               <block type="variables_set" id="@IDbA3X9DV/*,!z6KiJX" x="-313" y="67">
                 <field name="VAR" id=";6~*#rXzT^;lw1zInB=Y">Tw</field>
                 <value name="VALUE">
                   <block type="procedures_callcustomreturn" id="3#.?]O1qD*hI_2Ua;)*V" inline="false">
                     <mutation name="Feuchtkugeltemperatur">
                       <arg name="t"></arg>
                       <arg name="rh"></arg>
                     </mutation>
                     <value name="ARG0">
                       <block type="get_value" id="]jaM-ghvd;yd3By4AD?}">
                         <field name="ATTR">val</field>
                         <field name="OID">ID auswählen</field>
                       </block>
                     </value>
                     <value name="ARG1">
                       <block type="get_value" id="E)mYGrtq4F$*H.1ylE)^">
                         <field name="ATTR">val</field>
                         <field name="OID">ID auswählen</field>
                       </block>
                     </value>
                   </block>
                 </value>
                 <next>
                   <block type="debug" id="a[rx?_XPBCkl_cmFBrsU">
                     <field name="Severity">log</field>
                     <value name="TEXT">
                       <shadow type="text" id="0q7.k0x.q!T9G/Cwft:V">
                         <field name="TEXT">test</field>
                       </shadow>
                       <block type="math_rndfixed" id="4O2lFcRDfzM=wma1L9CG">
                         <field name="n">1</field>
                         <value name="x">
                           <shadow type="math_number" id="aL81:vw~8|*`EtpvY1Td">
                             <field name="NUM">3.1234</field>
                           </shadow>
                           <block type="variables_get" id="}Rd-qh}*Y*,Ry5Grz+Mq">
                             <field name="VAR" id=";6~*#rXzT^;lw1zInB=Y">Tw</field>
                           </block>
                         </value>
                       </block>
                     </value>
                   </block>
                 </next>
               </block>
              </xml>
              

              Blockly_temp.JPG

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

                @paul53
                vielen Dank für deine Hilfe!

                Ich bin absoluter Einsteiger auf dem Gebiet - mit JS kenn ich mich gar nicht aus!
                Ziel wäre es die ermittelten Werte in ein erstellten Datenpunkt zu schreiben - kannst du mir da helfen?

                Gruß
                Felix

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

                  @Felix-Merk sagte:

                  ermittelten Werte in ein erstellten Datenpunkt zu schreiben

                  Blockly_temp.JPG

                  <xml xmlns="https://developers.google.com/blockly/xml">
                   <variables>
                     <variable id="~aFm5k{$2?wI$XW=YnTP">t</variable>
                     <variable id="^n0#nhw9rfhv^H]ms-gl">rh</variable>
                     <variable id=";6~*#rXzT^;lw1zInB=Y">Tw</variable>
                   </variables>
                   <block type="on_ext" id="WYu.?[F0%#ZB5B.vSWn8" x="-312" y="12">
                     <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                     <field name="CONDITION">ne</field>
                     <field name="ACK_CONDITION"></field>
                     <value name="OID0">
                       <shadow type="field_oid" id="$v5+W({B;8:Z=T|*TFsu">
                         <field name="oid">default</field>
                       </shadow>
                     </value>
                     <value name="OID1">
                       <shadow type="field_oid" id="9AG`pOEu/3N[Z)}zAh{m">
                         <field name="oid">default</field>
                       </shadow>
                     </value>
                     <statement name="STATEMENT">
                       <block type="variables_set" id="@IDbA3X9DV/*,!z6KiJX">
                         <field name="VAR" id=";6~*#rXzT^;lw1zInB=Y">Tw</field>
                         <value name="VALUE">
                           <block type="procedures_callcustomreturn" id="3#.?]O1qD*hI_2Ua;)*V" inline="false">
                             <mutation name="Feuchtkugeltemperatur">
                               <arg name="t"></arg>
                               <arg name="rh"></arg>
                             </mutation>
                             <value name="ARG0">
                               <block type="get_value" id="]jaM-ghvd;yd3By4AD?}">
                                 <field name="ATTR">val</field>
                                 <field name="OID">ID auswählen</field>
                               </block>
                             </value>
                             <value name="ARG1">
                               <block type="get_value" id="E)mYGrtq4F$*H.1ylE)^">
                                 <field name="ATTR">val</field>
                                 <field name="OID">ID auswählen</field>
                               </block>
                             </value>
                           </block>
                         </value>
                         <next>
                           <block type="update" id="JkGBb[FL.NogHmAA$6)d">
                             <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="math_rndfixed" id="4O2lFcRDfzM=wma1L9CG">
                                 <field name="n">1</field>
                                 <value name="x">
                                   <shadow type="math_number" id="aL81:vw~8|*`EtpvY1Td">
                                     <field name="NUM">3.1234</field>
                                   </shadow>
                                   <block type="variables_get" id="}Rd-qh}*Y*,Ry5Grz+Mq">
                                     <field name="VAR" id=";6~*#rXzT^;lw1zInB=Y">Tw</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                           </block>
                         </next>
                       </block>
                     </statement>
                   </block>
                   <block type="procedures_defcustomreturn" id="$O*c54lA_?exlLWNe?aR" x="-112" y="88">
                     <mutation statements="false">
                       <arg name="t" varid="~aFm5k{$2?wI$XW=YnTP"></arg>
                       <arg name="rh" varid="^n0#nhw9rfhv^H]ms-gl"></arg>
                     </mutation>
                     <field name="NAME">Feuchtkugeltemperatur</field>
                     <field name="SCRIPT">cmV0dXJuIHQgKiBNYXRoLmF0YW4oMC4xNTE5NzcgKiBNYXRoLnNxcnQocmggKyA4LjMxMzY1OSkpICsgTWF0aC5hdGFuKHQgKyByaCkgLSBNYXRoLmF0YW4ocmggLSAxLjY3NjMzMSkgKyAwLjAwMzkxODM4ICogTWF0aC5wb3cocmgsIDEuNSkgKiBNYXRoLmF0YW4oMC4wMjMxMDEgKiByaCkgLSA0LjY4NjAzNTs=</field>
                     <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                   </block>
                  </xml>
                  

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

                    @paul53

                    VIELEN HERZLICHEN DANK! Ich werde das heute Abend gleich testen

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

                      @paul53
                      kannst du mir das bitte noch als Blockly exportieren?
                      Ich finde das Objekt "Falls Objekt" mit zwei "Objekt IDs" nicht.... 😞

                      1 Reply Last reply Reply Quote 0
                      • L
                        Linedancer last edited by

                        Einfach auf das Zahnrad im Falls Baustein klicken.

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        994
                        Online

                        31.8k
                        Users

                        80.0k
                        Topics

                        1.3m
                        Posts

                        4
                        13
                        1934
                        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