Skip to content

Blockly

Hilfe für Skripterstellung mit Blockly

6.5k Topics 79.3k Posts

NEWS

  • Zendure Solar Flow ohne Cloud MQTT-Broker MIT Authentication

    29
    1
    0 Votes
    29 Posts
    4k Views
    Bernd1967B
    @maxclaudi Ja, funktioniert hier unter Windows.
  • PV Speicherladung in Abhängigkeit vom erwarteten Ertrag

    3
    2
    0 Votes
    3 Posts
    339 Views
    D
    @paul53 Danke, ich gehe es nochmal an
  • Ist das Auto Zuhause?

    blockly
    23
    0 Votes
    23 Posts
    2k Views
    A
    Hallo. Vielen Dank für die ganzen Feedback und Ideen, dass Thema anzugehen. Diese behalte ich mal im Hinterkopf für mögliche andere Punkte- Da ich das alles dazu nutzen möchte auszuwerten, ob mein Auto zuhause lädt, habe ich es etwas einfacher gemacht. Mein Auto gibt auch einen Geohash raus. Dieser passt für die Position "Laden" sehr gut, und es ist nur 1 Wert. Der wird ausgewertet, und weiterverwendet. Funktioniert für mich so weit optimal. Gruß Andreas
  • Wie kann man einen zu oft kommenden Trigger "entschleunigen"

    9
    1
    0 Votes
    9 Posts
    575 Views
    hg6806H
    @codierknecht Stimmt, so passt es jetzt
  • Unbekannte Variable - durch Upgrades entstanden??

    5
    1
    0 Votes
    5 Posts
    439 Views
    HomoranH
    @arteck sagte in Unbekannte Variable - durch Upgrades entstanden??: @homoran zeigmal das geraffel als javascript ..da kann man mehr sehen. hab die Variable aber mittlerweile gegen den Trigger-Wert-Block getauscht Spoiler var druck, aus_counter, Druckwaechter; // Beschreibe diese Funktion … async function Not_Aus() { setStateDelayed('hm-rpc.0.JEQ0646431.1.STATE' /* Poolpumpe.STATE */, false, 1000, false); setState('Messwerte.0.Pool.Not-Aus' /* Not-Aus */, true, true); } on({ id: [].concat(['hm-rpc.0.NEQ1547414.3.STATE']), change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; druck = (obj.state ? obj.state.val : '') - getState('Messwerte.0.Pool.Druckoffset').val; if (druck > 120) { // Pumpe Not-Aus bei zu viel Druck setState('Messwerte.0.Pool.Logdaten' /* Logdaten */, (['<font color=red><h2>ALARM!</h2></font>','<strong>Überdruck!</strong>','<br>','Der Pumpendruck beträgt ',druck,'kPa.<br> <br>'].join('')), true); await Not_Aus(); } }); on({ id: [].concat(['hm-rpc.0.JEQ0646431.1.STATE']), change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; if ((obj.state ? obj.state.val : '')) { setState('Messwerte.0.Pool.Logdaten' /* Logdaten */, (['<h3 style="color:lightgreen;">Pumpe an !</h3>','Wassertemperatur ',getState('hm-rpc.0.LEQ0773306.2.TEMPERATURE').val,' °C <br><br>'].join('')), true); // Überprüfung ob sich nach Start Druck aufbaut (() => { if (Druckwaechter) { clearInterval(Druckwaechter); Druckwaechter = null; }})(); Druckwaechter = setInterval(async () => { if (druck < 55) { setState('Messwerte.0.Pool.Logdaten' /* Logdaten */, (['Der Pumpendruck beträgt ',druck,'kPa, Pumpe zieht Luft! (',aus_counter + 1,')'].join('')), true); aus_counter = (typeof aus_counter === 'number' ? aus_counter : 0) + 1; if (aus_counter > 25) { // Pumpe Not-Aus bei zu wenig Druck (() => { if (Druckwaechter) { clearInterval(Druckwaechter); Druckwaechter = null; }})(); setState('Messwerte.0.Pool.Logdaten' /* Logdaten */, (['<font color=red><h2>ALARM!</h2></font>',aus_counter,' mal Unterdruck. ','Der Pumpendruck beträgt ',druck,'kPa.<br> <br>'].join('')), true); await Not_Aus(); } } else { setState('Messwerte.0.Pool.Logdaten' /* Logdaten */, (['Der Pumpendruck beträgt ',druck,'kPa, Pumpe OK!'].join('')), true); (() => { if (Druckwaechter) { clearInterval(Druckwaechter); Druckwaechter = null; }})(); aus_counter = 0; setState('Messwerte.0.Pool.Not-Aus' /* Not-Aus */, false, true); } }, 2000); } else { (() => { if (Druckwaechter) { clearInterval(Druckwaechter); Druckwaechter = null; }})(); aus_counter = 0; setStateDelayed('Messwerte.0.Pool.Logdaten' /* Logdaten */, (['<h3 style="color:orange;">Pumpe aus !</h3>','Wassertemperatur ',getState('hm-rpc.0.LEQ0773306.2.TEMPERATURE').val,' °C <br><br>'].join('')), true, 1000, false); } }); on({ id: [].concat(['hm-rpc.0.LEQ0773306.2.TEMPERATURE']), change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; if (getState('hm-rpc.0.JEQ0646431.1.STATE').val && (obj.state ? obj.state.val : '') > 29.2) { // Pumpe Not-Aus bei zu hoher Temperatur setState('Messwerte.0.Pool.Logdaten' /* Logdaten */, (['<font color=red><h2>ALARM!</h2></font>','<strong>Wasser zu warm!</strong>','<br>','Die Wassertemperatur beträgt ',(obj.state ? obj.state.val : ''),'°C.<br> <br>'].join('')), true); setStateDelayed('hm-rpc.0.JEQ0646431.1.STATE' /* Poolpumpe.STATE */, false, 2000, false); setState('Messwerte.0.Pool.Overheat' /* Overheat */, true, true); } else if ((obj.state ? obj.state.val : '') < 28.6) { setState('Messwerte.0.Pool.Overheat' /* Overheat */, false, true); } }); //
  • Heizstab-Regelung geht nicht mehr

    12
    1
    0 Votes
    12 Posts
    939 Views
    CodierknechtC
    @tedesco1968 sagte in Heizstab-Regelung geht nicht mehr: Wo stellt man dieses Debug-Blöcke um? Nutze die Macht der rechten Maustaste ... "Block aktivieren"
  • Blockly erkennt Änderung (wahr) obwohl DP unverändert

    5
    2
    0 Votes
    5 Posts
    377 Views
    paul53P
    @homoran sagte: Der Aktor meldet nich von sich aus von Zeit zu Zeit den Status? Im Bild des DP sieht man, dass der Zeitstempel jünger ist als die Letzte Änderung.
  • (Beendet) Shelly liefert beim Einschalten zu hohe Werte

    14
    0 Votes
    14 Posts
    848 Views
    HomoranH
    @peter-c sagte in (Beendet) Shelly liefert beim Einschalten zu hohe Werte: Der sieht einen erhöhten Leistungsbedarf und regelt den Inverter hoch Da hilft es dann auch nichts die Shelly-Werte zu "faken". Der Inverter wird trotzdem anspringen. Daran siehst du, dass das kein Überschwingen, sondern ein realer Verbrauch ist.
  • Automatisierungsproblems mit Präsenzsensoren (FP2) *Gelöst *

    9
    0 Votes
    9 Posts
    589 Views
    Horst BöttcherH
    @paul53 danke klappt alles
  • 2 CCU koppeln

    9
    1
    0 Votes
    9 Posts
    630 Views
    D
    Hallo @mcu, super Erklärung danke. Meine Datenpunkte sind seit der Umstellung nicht mehr ausgefallen. greetz dipsy
  • [gelöst] Verständnisfrage: exec versus http (GET)

    16
    1
    0 Votes
    16 Posts
    990 Views
    RaspiUserR
    @bananajoe sagte in [gelöst] Verständnisfrage: exec versus http (GET): per mqtt ... okay... schau ich mir an ...
  • Experten Hilfe Verbesserung, Verzicht auf 2ten Datenpunkt?

    3
    1
    0 Votes
    3 Posts
    183 Views
    maxclaudiM
    @sigi234 Gerne :-) persönliche Daten usw. entfernt. Blockly <xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="W8v*svw]j2ihd2,z}Tm=">setLimitProzentWert</variable> <variable id=":t,.iH$R*B]I6`WB(XiX">StepByStep-Limit-setzen</variable> <variable id="dIjm#f2?FFp5rZ8.*y*]">cURLsetLimit</variable> <variable id="{/aS[hsekcCjGOG[6k1K">InverterMaxGesamtleistung</variable> <variable id="Habz-i({!8`v2HZBqG.m">cURLstart</variable> <variable id="l]cCL,|tZ]/i+`s)[-v.">setLimitPart1</variable> <variable id="]}B6H?%6!5i!RoH45.IM">inverter1:</variable> <variable id="f#OJfojYX1NYb)`yqBX@">setLimitPart2</variable> <variable id="9IYq){UmB+g2}n!u$x|V">setLimitPart3</variable> <variable id="9EDv~bW6oT6sCJ(D,1eq">cURLstateLimit</variable> <variable id="qYV~7+z$kJxrAd1^~{Xz">LimitStatusObjekt</variable> <variable type="timeout" id="timeout2">timeout2</variable> <variable type="timeout" id="timeout3">timeout3</variable> <variable type="timeout" id="timeout">timeout</variable> </variables> <block type="comment" id="Na*iQF(;)e(+9GW,^f/c" x="63" y="1638"> <field name="COMMENT">setLimit 1v2</field> <next> <block type="update" id="iZ0+uBw,wW1MoMhc_ni6"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Datenpunkte.openDTUoB.StepByStep_SetLimit</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="18xe*2:DBG=R/aVM`bYc"> <field name="NUM">0</field> </block> </value> <next> <block type="on_ext" id="S`3;0}v*cL~wqdO0),NP"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION">false</field> <value name="OID0"> <shadow type="field_oid" id="wwAKX@H~PdbVcuxH^/qI"> <field name="oid">0_userdata.0.Datenpunkte.openDTUoB.SetLimit</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="0CUN=tvCh{RsdQ1|=$*`"> <value name="IF0"> <block type="logic_multi_and" id="w|W#f||IwbR]Mq/8ejvg"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation> <value name="AND0"> <block type="logic_compare" id="SDfz)kyLvr-Muxtjam!%"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="5EbBPt=#H^Aeiekvw!73"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Datenpunkte.openDTUoB.StepByStep_SetLimit</field> </block> </value> <value name="B"> <block type="math_number" id="z{XhZEGnyj}`wbbj:9L["> <field name="NUM">0</field> </block> </value> </block> </value> <value name="AND1"> <block type="logic_compare" id="fg,!q~X2XB]g[=kmDVR:"> <field name="OP">NEQ</field> <value name="A"> <block type="on_source" id="VLb2OizFb@%Wt8?m$U4i"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="on_source" id="1^Y8!VvR,N:|t}+u6w-s"> <field name="ATTR">oldState.val</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="U%ZpI+iIVsG^J@#[)|D;"> <field name="VAR" id="W8v*svw]j2ihd2,z}Tm=">setLimitProzentWert</field> <value name="VALUE"> <block type="on_source" id="{L;?PiTg#OvmEHqmYwP4"> <field name="ATTR">state.val</field> </block> </value> <next> <block type="controls_if" id="sD91qO}Q+pWvGs(%kP1T"> <value name="IF0"> <block type="logic_compare" id="JVtIy@G^GTE4/MoX7QfA"> <field name="OP">LT</field> <value name="A"> <block type="math_arithmetic" id="r6C2`maS0mniJX`ZhK1n"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="%4a8vxopU:;qEM|2Be8s"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="`Q^;R!u_4a;qGm*SX_S3"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="NsM~(D,HL9{xf0GkaUHp"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="[I!11Yg-*48Z-BTw$yMP"> <field name="VAR" id="{/aS[hsekcCjGOG[6k1K">InverterMaxGesamtleistung</field> </block> </value> <value name="B"> <shadow type="math_number" id="2)yAI_Z{clo8kP):B,jF"> <field name="NUM">1</field> </shadow> <block type="math_number" id="f+aK_qchHTO*=bfmGyMw"> <field name="NUM">100</field> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="f{z*kAe;R/fEewkD-dpx"> <field name="NUM">1</field> </shadow> <block type="get_value" id="QBZTB!}!AatT5$0}ftTP"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Datenpunkte.openDTUoB.SetLimit</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="HWD97snkEd|q2EAV6{Le"> <field name="NUM">60</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="7;V~RLI7O![n{9{`(Yr2"> <field name="VAR" id="W8v*svw]j2ihd2,z}Tm=">setLimitProzentWert</field> <value name="VALUE"> <block type="math_round" id=".Lg)$78b=*f5esi^j1-n"> <field name="OP">ROUNDUP</field> <value name="NUM"> <shadow type="math_number" id="x{nBUy%NP(zl_Y6YYA.,"> <field name="NUM">3.1</field> </shadow> <block type="math_arithmetic" id="+0pCuk?dc3s[@Fv.9F[M"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="zULjZ+oewSOf.czk,tJb"> <field name="NUM">1</field> </shadow> <block type="math_number" id="Om#mtgB;XT-N?a(~0GyX"> <field name="NUM">60</field> </block> </value> <value name="B"> <shadow type="math_number" id="m464lD4CIGIJvHufNQMK"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="^*yC8B4,89,0]^MM)Wj_"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id=")lz!Fl6fiSTE)%TfS~m0"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="?/f)8duX0z(Zf.3i$N1s"> <field name="VAR" id="{/aS[hsekcCjGOG[6k1K">InverterMaxGesamtleistung</field> </block> </value> <value name="B"> <shadow type="math_number" id="M~YtJr?mx#NAROoe5nt]"> <field name="NUM">1</field> </shadow> <block type="math_number" id="9{m[M3B}^fQ5KGUIis^n"> <field name="NUM">100</field> </block> </value> </block> </value> </block> </value> </block> </value> <next> <block type="debug" id="KRFm^MAWa6p5QN{8qmPt"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="!{C^^Da5T7I_3Ux~v+ih"> <field name="TEXT">test</field> </shadow> <block type="variables_get" id="y,W#ecF@e7j#}Xa3^6)C"> <field name="VAR" id="W8v*svw]j2ihd2,z}Tm=">setLimitProzentWert</field> </block> </value> </block> </next> </block> </statement> <next> <block type="controls_if" id="+C{gD_:~S{Bhz_.$]jk?"> <value name="IF0"> <block type="logic_compare" id="asEISEDAVnrp[1kxXTgz"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="r!9H1r`l^^4PcI~DT5tW"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Datenpunkte.openDTUoB.SetLimit</field> </block> </value> <value name="B"> <block type="math_number" id="m3e=QbKt#(^twI7OY0`Z"> <field name="NUM">100</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="6A4I$1@7uiEnIIe:AVY@"> <field name="VAR" id="W8v*svw]j2ihd2,z}Tm=">setLimitProzentWert</field> <value name="VALUE"> <block type="math_number" id=")$iByvAYI;XoIMoufBz0"> <field name="NUM">100</field> </block> </value> <next> <block type="debug" id="u,?GjJF1%UOkhZ_%!%OH"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="#3{0tq;z{_TJg#)CKg;;"> <field name="TEXT">test</field> </shadow> <block type="variables_get" id="yA0YQoE$d7?5DwKYsWh4"> <field name="VAR" id="W8v*svw]j2ihd2,z}Tm=">setLimitProzentWert</field> </block> </value> </block> </next> </block> </statement> <next> <block type="variables_set" id="9glsFn~Yb-o1E_,f9V9@"> <field name="VAR" id="dIjm#f2?FFp5rZ8.*y*]">cURLsetLimit</field> <value name="VALUE"> <block type="text_join" id="j#l7XXpjSQ]_pea6fDuO"> <mutation items="6"></mutation> <value name="ADD0"> <block type="variables_get" id="4|2b5S9~[d~u7c^Kvg|h"> <field name="VAR" id="Habz-i({!8`v2HZBqG.m">cURLstart</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="5)U~W]uguzsa2x*T^42a"> <field name="VAR" id="l]cCL,|tZ]/i+`s)[-v.">setLimitPart1</field> </block> </value> <value name="ADD2"> <block type="variables_get" id="qhul]J~,j~*Ey73k9o,c"> <field name="VAR" id="]}B6H?%6!5i!RoH45.IM">inverter1:</field> </block> </value> <value name="ADD3"> <block type="variables_get" id="5c=/e37}n+*7CQyO}Ijb"> <field name="VAR" id="f#OJfojYX1NYb)`yqBX@">setLimitPart2</field> </block> </value> <value name="ADD4"> <block type="variables_get" id="8dww^|kyY~ZiM5qh[RLV"> <field name="VAR" id="W8v*svw]j2ihd2,z}Tm=">setLimitProzentWert</field> </block> </value> <value name="ADD5"> <block type="variables_get" id="##LwqDXu_Ty^,5V=aU3g"> <field name="VAR" id="9IYq){UmB+g2}n!u$x|V">setLimitPart3</field> </block> </value> </block> </value> <next> <block type="comment" id="Y+nX-p}*xExWw]O`OX~{"> <field name="COMMENT">state abfragen</field> <next> <block type="exec" id="9b)!Xk~Q[EVq5OId-xq="> <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation> <field name="WITH_STATEMENT">TRUE</field> <field name="LOG"></field> <value name="COMMAND"> <shadow type="text" id="9;-TT-}BY,qROECr/9_6"> <field name="TEXT"></field> </shadow> <block type="variables_get" id="!yz!Hay,[YQQHpLUJ*Iv"> <field name="VAR" id="9EDv~bW6oT6sCJ(D,1eq">cURLstateLimit</field> </block> </value> <statement name="STATEMENT"> <block type="variables_set" id="]Q)e10Yc1,|BA0=+4/qL"> <field name="VAR" id="qYV~7+z$kJxrAd1^~{Xz">LimitStatusObjekt</field> <value name="VALUE"> <block type="convert_json2object" id="[Z?-h~j!H:[SSJ`S615*"> <value name="VALUE"> <block type="exec_result" id="q=5*b5rz@VdDwh)0I3e+"> <field name="ATTR">result</field> </block> </value> </block> </value> <next> <block type="debug" id="*2N(,pI+I/wa+WB0pY})"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="Tm#1Sc!?@o*[5^fVuc9E"> <field name="TEXT">test</field> </shadow> <block type="convert_json2object" id="]9/0o*OMO8//*4pp#`rU"> <value name="VALUE"> <block type="exec_result" id="f4)+;L@d@p`*4I4Q^GD#"> <field name="ATTR">result</field> </block> </value> </block> </value> <next> <block type="update" id="FfJM}@B,y+IyuV~:1w%o"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Datenpunkte.openDTUoB.StepByStep_SetLimit</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id=";cLk?eq+-nX?,Ly3S(Df"> <field name="NUM">1</field> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> <next> <block type="comment" id="irOfk_9RkkVxxbebgIyq"> <field name="COMMENT">setLimit 2v2&amp;#10;limit setzen&amp;#10;state abfragen</field> <next> <block type="on_ext" id="LcW]*D@bBIDIfRY85_ht"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION">true</field> <value name="OID0"> <shadow type="field_oid" id="Esl`z8CUt#,h~K~/67)j"> <field name="oid">0_userdata.0.Datenpunkte.openDTUoB.StepByStep_SetLimit</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="a9j[r{MnY}F}l::|y)|u"> <value name="IF0"> <block type="logic_compare" id="}f,J@LyGX4gdZ]C@,n5/"> <field name="OP">GT</field> <value name="A"> <block type="on_source" id="Me!AW.7.slwct,PV!F`P"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="math_number" id="0HxZtvu{Ol[[^E4mpd%V"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="~-29zc|RN/R59_vcu.C7"> <field name="VAR" id=":t,.iH$R*B]I6`WB(XiX">StepByStep-Limit-setzen</field> <value name="VALUE"> <block type="on_source" id="D%;`=63r+bcOYP}!.6XT"> <field name="ATTR">state.val</field> </block> </value> <next> <block type="comment" id="7;6ArsM!Q}Rb=pV?a+VO"> <field name="COMMENT">limit setzen</field> <next> <block type="logic_switch_case" id="SoQ_l$3)L#9$[+~a.h2z"> <mutation xmlns="http://www.w3.org/1999/xhtml" case="2"></mutation> <value name="CONDITION"> <block type="variables_get" id="-E8Gd6qi^}jZPrt=NeJ;"> <field name="VAR" id=":t,.iH$R*B]I6`WB(XiX">StepByStep-Limit-setzen</field> </block> </value> <value name="CASECONDITION0"> <block type="math_number" id="hPBf+v5hSB$zAi}.!g,Y"> <field name="NUM">1</field> </block> </value> <statement name="CASE0"> <block type="controls_if" id="(/j1x$g%@DmMT*)iLOTL"> <value name="IF0"> <block type="logic_compare" id="QtPdP?Gq5NsbGxyo2fWR"> <field name="OP">EQ</field> <value name="A"> <block type="get_attr" id="Dv?{gFgf0YRVdZo(~1sg"> <value name="PATH"> <shadow type="text" id="$?(@MG+6%N9V1i-UUYPm"> <field name="TEXT">attribute1</field> </shadow> <block type="text_join" id="CJ0,qBY]A/bO#c~CcMwW"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="x{(.M$Y|v,ic??.#xrJD"> <field name="VAR" id="]}B6H?%6!5i!RoH45.IM">inverter1:</field> </block> </value> <value name="ADD1"> <block type="text" id="0Y~I*gJoy^tgUTq;3!+u"> <field name="TEXT">.limit_set_status</field> </block> </value> </block> </value> <value name="OBJECT"> <shadow type="get_object" id="d2Q3/Nn./At|M(8$u8?}"> <field name="OID">Object ID</field> </shadow> <block type="variables_get" id=")TvN^4!0-x^gh|md`GD;"> <field name="VAR" id="qYV~7+z$kJxrAd1^~{Xz">LimitStatusObjekt</field> </block> </value> </block> </value> <value name="B"> <block type="text" id="Mq37N$6;wqc*N-9U6TD8"> <field name="TEXT">Ok</field> </block> </value> </block> </value> <statement name="DO0"> <block type="timeouts_cleartimeout" id="A)u(E;W]v9r}zAdXf0NX"> <field name="NAME">timeout</field> <next> <block type="timeouts_settimeout" id="bba:UZz4kL,E_wPwG1Gx"> <field name="NAME">timeout</field> <field name="DELAY">3000</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="exec" id="jJa!HRPJ+*2zo}86?xe,"> <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation> <field name="WITH_STATEMENT">TRUE</field> <field name="LOG"></field> <value name="COMMAND"> <shadow type="text" id="9;-TT-}BY,qROECr/9_6"> <field name="TEXT"></field> </shadow> <block type="variables_get" id="uYF9)8*S*b]lVBesa,@."> <field name="VAR" id="dIjm#f2?FFp5rZ8.*y*]">cURLsetLimit</field> </block> </value> <statement name="STATEMENT"> <block type="debug" id="16c6x[N:=ziG_cW+F6R("> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="$T#tK3mN:AHkMD{1`drJ"> <field name="TEXT">test</field> </shadow> <block type="convert_json2object" id="K5S4w-vpAuBS$K#ERtTa"> <value name="VALUE"> <block type="exec_result" id="uGyI9Rx3h7IQDdZ}^%FN"> <field name="ATTR">result</field> </block> </value> </block> </value> </block> </statement> <next> <block type="update" id="cGf3(QxbQ*HzfORXpv0@"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Datenpunkte.openDTUoB.StepByStep_SetLimit</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="B+7`Le[lTOJ!JE@Dm|tV"> <field name="NUM">2</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </statement> <value name="CASECONDITION1"> <block type="math_number" id="=Z00,W(i%aVs5E3Q/@wT"> <field name="NUM">2</field> </block> </value> <statement name="CASE1"> <block type="timeouts_cleartimeout" id="6Xt{E`vrFM%ZyMX_h)Uc"> <field name="NAME">timeout2</field> <next> <block type="timeouts_settimeout" id="NpxU/17PPns2F|8}@(Z6"> <field name="NAME">timeout2</field> <field name="DELAY">3000</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="exec" id="?GX_~r0CQoRfl(/w,d+v"> <mutation xmlns="http://www.w3.org/1999/xhtml" with_statement="true"></mutation> <field name="WITH_STATEMENT">TRUE</field> <field name="LOG"></field> <value name="COMMAND"> <shadow type="text" id="9;-TT-}BY,qROECr/9_6"> <field name="TEXT"></field> </shadow> <block type="variables_get" id="FD{Ta;YrV3K31Dn_QK$S"> <field name="VAR" id="9EDv~bW6oT6sCJ(D,1eq">cURLstateLimit</field> </block> </value> <statement name="STATEMENT"> <block type="variables_set" id="Lnz$7g0M5ez*%EZf_3N3"> <field name="VAR" id="qYV~7+z$kJxrAd1^~{Xz">LimitStatusObjekt</field> <value name="VALUE"> <block type="convert_json2object" id="59[qo(R/it!Aq?3?pXR#"> <value name="VALUE"> <block type="exec_result" id="?u:XdVwYJVGbr/23NSi2"> <field name="ATTR">result</field> </block> </value> </block> </value> <next> <block type="debug" id="1ei;!-3fXh|/G/;g59I?"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="Tm#1Sc!?@o*[5^fVuc9E"> <field name="TEXT">test</field> </shadow> <block type="convert_json2object" id="rqnzUoxRg#g+U?Tva]=`"> <value name="VALUE"> <block type="exec_result" id="%$%T4?r20x7l4amiEpI9"> <field name="ATTR">result</field> </block> </value> </block> </value> </block> </next> </block> </statement> <next> <block type="update" id="T7Xgbyqi.MSg9X@fUIdb"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Datenpunkte.openDTUoB.StepByStep_SetLimit</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="vU4KG8^k9fZa1auIBG3~"> <field name="NUM">3</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> </statement> <value name="CASECONDITION2"> <block type="math_number" id="DgrfN*L45FSUCK*Jzw)!"> <field name="NUM">3</field> </block> </value> <statement name="CASE2"> <block type="timeouts_cleartimeout" id="9kiE0kp)/0HM0Afql%*Z"> <field name="NAME">timeout3</field> <next> <block type="timeouts_settimeout" id="!7AFr+9ySeMuw%Yy2I{@"> <field name="NAME">timeout3</field> <field name="DELAY">3000</field> <field name="UNIT">ms</field> <statement name="STATEMENT"> <block type="controls_if" id="]iaSt|r#Tx{fd4z#,m$k"> <value name="IF0"> <block type="logic_compare" id="4=rcc${Vch%X/W=nDF01"> <field name="OP">EQ</field> <value name="A"> <block type="get_attr" id="F^YZ``-z{=V+/UWP0l2{"> <value name="PATH"> <shadow type="text" id="$?(@MG+6%N9V1i-UUYPm"> <field name="TEXT">attribute1</field> </shadow> <block type="text_join" id="[dpHK40N9mH)Z11rXi%B"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="pRR2G%J}#=0(}/)/[7VA"> <field name="VAR" id="]}B6H?%6!5i!RoH45.IM">inverter1:</field> </block> </value> <value name="ADD1"> <block type="text" id="Y)/{mIBZ}I)f1y,kfkbc"> <field name="TEXT">.limit_set_status</field> </block> </value> </block> </value> <value name="OBJECT"> <shadow type="get_object" id="d2Q3/Nn./At|M(8$u8?}"> <field name="OID">Object ID</field> </shadow> <block type="variables_get" id="VJXybZ:OHaZWV/G]QLcj"> <field name="VAR" id="qYV~7+z$kJxrAd1^~{Xz">LimitStatusObjekt</field> </block> </value> </block> </value> <value name="B"> <block type="text" id="hd$x9(-,y|Y:pe{W6!k!"> <field name="TEXT">Ok</field> </block> </value> </block> </value> <statement name="DO0"> <block type="debug" id="a#f:[zm1/S8f~JPK^*#r"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="BM:OwK6_*Nf-Q)i+1mGm"> <field name="TEXT">OK OK</field> </shadow> </value> <next> <block type="update" id="YQGQ](oXqf7:g#gC+tbp"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Datenpunkte.openDTUoB.StepByStep_SetLimit</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="c)1eX@lQ|D2g$J3Ow-v9"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="-.(dId,bM7zJkY]`p0]t"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Datenpunkte.openDTUoB.SetLimit</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="L`~mb^zyX4LD{6QgpZph"> <field name="VAR" id="W8v*svw]j2ihd2,z}Tm=">setLimitProzentWert</field> </block> </value> </block> </next> </block> </next> </block> </statement> <next> <block type="controls_if" id="9-v8F|28!9PvhzjljAIi"> <value name="IF0"> <block type="logic_compare" id="EOo(3g(93VG`b9XanCqu"> <field name="OP">EQ</field> <value name="A"> <block type="get_attr" id="C8x=;n%K}glz*Wlk(_}!"> <value name="PATH"> <shadow type="text" id="$?(@MG+6%N9V1i-UUYPm"> <field name="TEXT">attribute1</field> </shadow> <block type="text_join" id="_E)D4Y.#h6W5l!@eM2-p"> <mutation items="2"></mutation> <value name="ADD0"> <block type="variables_get" id="QymSYCxq7+(LH`DEOD$@"> <field name="VAR" id="]}B6H?%6!5i!RoH45.IM">inverter1:</field> </block> </value> <value name="ADD1"> <block type="text" id="kI?qgT.P.pUF(YlYnC2D"> <field name="TEXT">.limit_set_status</field> </block> </value> </block> </value> <value name="OBJECT"> <shadow type="get_object" id="d2Q3/Nn./At|M(8$u8?}"> <field name="OID">Object ID</field> </shadow> <block type="variables_get" id="l.can+bpr0V1LSFpNlf0"> <field name="VAR" id="qYV~7+z$kJxrAd1^~{Xz">LimitStatusObjekt</field> </block> </value> </block> </value> <value name="B"> <block type="text" id="Rs39ZwY?c`e)1aWyK(aG"> <field name="TEXT">Pending</field> </block> </value> </block> </value> <statement name="DO0"> <block type="debug" id="70XRa;_O-CeL9+Lh8`*{"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="8=CS2CUp}c)3h`)@,[;%"> <field name="TEXT">PENDING AUSSTEHEND .... in Bearbeitung</field> </shadow> </value> <next> <block type="update" id="dH,uk??i7QE^vzivKU]L"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Datenpunkte.openDTUoB.StepByStep_SetLimit</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="{n6YJ^^pW-@X}vymz_6f"> <field name="NUM">2</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </xml>
  • Anfängerfrage Konvertierung Text zu Zahl

    13
    1
    0 Votes
    13 Posts
    710 Views
    M
    @paul53 DANKE! Hat funktioniert! Einfach Spitze Eure Hilfe hier!
  • Was stimmt hier nicht, skript geht auf einmal nicht mehr

    4
    1
    0 Votes
    4 Posts
    288 Views
    A
    @thomas-braun die Uhrzeit ist bei mir so mit den Ausrufezeichen, ich kann da nichts verändern. kommt aus dem Baustein so.
  • Fragen zu einem "Falls" mit Veroderung

    6
    1
    0 Votes
    6 Posts
    348 Views
    hg6806H
    @homoran Wie gerade wohl zeitgleich geschrieben sind die Werte negativ. Jetzt klappt es.
  • Listen: Aus Objekt erstellen oder auf Objekt arbeiten?

    7
    1
    0 Votes
    7 Posts
    430 Views
    paul53P
    @ckassiopaia sagte: oder ich hatte irgendeinen anderen Konten im Script.... In deinem gezeigten Skript hast du Text in Liste gewandelt. Es darf nicht gewandelt werden, wenn eine Liste eingelesen wird. @paul53 sagte in Listen: Aus Objekt erstellen oder auf Objekt arbeiten?: Wenn der DP vom Typ "array" ist, muss er ohne jegliche Wandlung eingelesen werden, denn die Wandlung von JSON in ein Array erledigt dann der Javascript-Adapter.
  • bei PV-Überschuss --> Steckdose schalten

    12
    0 Votes
    12 Posts
    799 Views
    MartinPM
    @homoran Nichtsdestotrotz ist es sicher besser, die überschüssige Energie vom Dach entweder in Warmwasser zu stecken, oder sich gleich einen Akku anzuschaffen ... Warmwasser wird auch in den Sommermonaten gebraucht... Die Hue Schaltsteckdosen haben auch 10 A - Relais (2300 Watt Schaltleistung) Die werden nicht lange halten, wenn sie andauernd einen 2000 Watt Radiator schalten sollen... Wenn der Ölradiator einen integrierten (... und auf Wunschtemperatur gestellten) Thermostaten hat, ist wenigstens gewährleistet dass ein zu schlichtes Blockly den Radiator nicht auch im August bei 35°C Raumtemperatur anwirft ... Benötige eine ganz einfache Schaltung. Wenn PV-Überschuss (gemessen über den Lesekopf von Tibber) da ist, soll eine Steckdose (angeschlossener Ölradiator) geschaltet werden.
  • PV MaximumWert über Blockly

    4
    0 Votes
    4 Posts
    356 Views
    HomoranH
    @tedesco1968 Sorry, da fehlt noch was! um 00:01 muss auch due Variable wieder auf 0 gesetzt werden setze kWmax auf 0
  • Logging Information auf NAS (Synology)

    1
    0 Votes
    1 Posts
    147 Views
    No one has replied
  • Fyta Daten auslesen

    3
    0 Votes
    3 Posts
    404 Views
    mcm1957M
    @mrx552 https://forum.iobroker.net/topic/80655/test-fyta-adapter

713

Online

32.7k

Users

82.3k

Topics

1.3m

Posts