NEWS
Prozent Werte von min max ermitteln
-
moin ... ich bräucht hilfe oder ein blockly das ggfls.schon existent ist ...
ich möchte der Prozentwert aus einem minimalen und maximalen Wert errechnen.also angenommen, der Wert a entspricht 100% und der Wert b entspricht 0% , ist das hier dann die richtige Formel ?
wie bekomme ich die Berechnung mit Blockly umgesetzt um den Wert danach in einen selbst erstellten Datenpunkt zu schreiben ?
100-((%value%-a)/(b-a)*100)
-
@snupy sagte: wie bekomme ich die Berechnung mit Blockly umgesetzt
-
-
-
-
@snupy Was für einen Datentyp liefert denn dein Triggerobjekt ?
Numerisch ?
String ?Kannst du im Objektbaum an dem State auf den du triggerst nachsehen.
A.
-
@snupy sagte: Formel falsch ?
Poste bitte den erzeugten Javascript Code ohne die letzte Zeile in Code tags.
-
@paul53 ```
code_textvar Prozent, Wert; on({id: "sonoff.0.DVES_D3C424.ADS1115_A0"/*DVES_D3C424 ADS1115 A0*/, change: "any"}, async function (obj) { var value = obj.state.val; var oldValue = obj.oldState.val; Prozent = 100 * ((Wert - 11000) / (22000 - 11000)); setState("0_userdata.0.Balkonbewässerung.Bewaesserung_eins"/*Bewaesserung_eins*/, Prozent, true); });
-
@snupy
Wert darf keine selbst erstellte Variable sein, sondern unter "Trigger": -
@paul53 ... wiedermal vielen Dank ! scheint zu funktionieren
morgen nochmal ausführlicher Testen !
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="}7]=0jQY~,W*ZCR@PXX~">Prozent</variable> <variable id="]z*r%EOfdbJt3$f{o_c?">value</variable> </variables> <block type="on" id="au394Q-z52Nw{a1u`X;6" x="-387" y="-262"> <field name="OID">sonoff.0.DVES_D3C424.ADS1115_A0</field> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="variables_set" id="tJ}Mq?C7Ik^ygD%63Qoe"> <field name="VAR" id="}7]=0jQY~,W*ZCR@PXX~">Prozent</field> <value name="VALUE"> <block type="math_arithmetic" id="Fq9Ir^?5!2j^LF.{r1D5"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="%?3n+F!:b}}Jl^d/V5aI"> <field name="NUM">100</field> </shadow> </value> <value name="B"> <shadow type="math_number" id="Pg4jIa_`C4Xct~,dMNgf"> <field name="NUM">3.36</field> </shadow> <block type="math_arithmetic" id="1R49~Ygav7CP^^_Y[!~L"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="X%tm!Toh|@c4^/WPhB;,"> <field name="NUM">0</field> </shadow> <block type="math_arithmetic" id="X0k]!1x={F{75nzRylOQ"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="~7!NyLLjmTX0fV3923u="> <field name="NUM">0</field> </shadow> <block type="variables_get" id="I2uzM=!Ao[M_aDLtfYQ0"> <field name="VAR" id="]z*r%EOfdbJt3$f{o_c?">value</field> </block> </value> <value name="B"> <shadow type="math_number" id="u}D!qUp|WhiZr+ugnr$B"> <field name="NUM">11000</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="/)oSlA{]ToA]leNJkw^Q"> <field name="NUM">0</field> </shadow> <block type="math_arithmetic" id="Hx@=cH2CoNmmVE`znE|("> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="5MJz3Z}thv5jl;8s)c~#"> <field name="NUM">22000</field> </shadow> </value> <value name="B"> <shadow type="math_number" id="-p2=Tp27%GhF5Ruon41m"> <field name="NUM">11000</field> </shadow> </value> </block> </value> </block> </value> </block> </value> <next> <block type="update" id="},jWHgJ07.RwCI]YAQed"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Balkonbewässerung.Bewaesserung_eins</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="V8SB0|]11,?6V3T?GLFc"> <field name="n">1</field> <value name="x"> <shadow type="math_number" id="kRhY;bSb7+kg`~-rk.ac"> <field name="NUM">3.1234</field> </shadow> <block type="variables_get" id="hDpC/SORr~fKY:#Cy2;5"> <field name="VAR" id="}7]=0jQY~,W*ZCR@PXX~">Prozent</field> </block> </value> </block> </value> </block> </next> </block> </statement> </block> </xml>