- Home
- Deutsch
- Skripten / Logik
- Blockly
- Blockly Script für Gartenbewässerung
Blockly Script für Gartenbewässerung
-
was ist denn der Spoiler?
Dann würde ich das mal testen.. -
@Aidan sagte in Blockly Script für Gartenbewässerung:
was ist denn der Spoiler?
in diesem Beitrag
https://forum.iobroker.net/post/355350
das hier anklicken, das ist der Spoiler
Dann öffnet sich das hier. Den Inhalt kopieren und bei Dir in ein neues leeres Blockly importieren.
-
ah, ok. Danke habe ich gefunden..
Importiert habe ich es schon, werde mal testen ob ich damit klar komme.Ich hoffe Du bist für weitere Fragen offen^^
-
@Aidan sagte in Blockly Script für Gartenbewässerung:
Ich hoffe Du bist für weitere Fragen offen^^
klar, wir lernen doch alle von einander
-
@Aidan
Nutzt Du Alexa ? (Hast Du den iot Adapter installiert?) -
moin, nein Alexa nutzen wir nicht.
Ich habe mal versucht das nachzubauen.
Das Blockly gibt mir einen Error
Der Datenpunkt scheint zu funktionieren, da er mir die Zeit zurück gibt
Der Button in Vis geht auch. Sobald ich den Schieber betätige, dann ändert sich auch die Zeit.
Die Kanäle werden allerdings nicht aktiviert. was mache ich hier falsch?
-
Achso eine Sache habe ich noch nicht raus bekommen.
Du hast bei dem Blockly, stop zyklische Ausführung vorn links stehen.
Wofür ist das und wie kann ich das dann ändern? -
@Aidan sagte in Blockly Script für Gartenbewässerung:
Du hast bei dem Blockly, stop zyklische Ausführung vorn links stehen.
Das habe ich nur so genannt, weil meine Ventile so heißen und ich dann besser sehe welches stop ich nehmen muß, sind ja vier Stück drinn.
Unten , wenn Dein DP 0 erreicht hat, da fehlt auch noch das ausschalten.
Poste mal Deinen Blockly Export. -
Hier der Export..
<xml xmlns="http://www.w3.org/1999/xhtml">
<variables>
<variable type="undefined" id="vorn_rechts">vorn_rechts</variable>
<variable type="undefined" id="seite">seite</variable>
<variable type="undefined" id="vorn_links">vorn_links</variable>
<variable type="undefined" id="hinten">hinten</variable>
</variables>
<block type="procedures_defcustomnoreturn" id="eZsGA^2r{c%G,YpuLp]K" x="38" y="-113">
<mutation statements="false"></mutation>
<field name="NAME">Datenpunkte_erstellen</field>
<field name="SCRIPT">Ly9EYXRlbnB1bmt0IFJlc3R6ZWl0IEthbmFsIDErMgp7CiAgImZyb20iOiAic3lzdGVtLmFkYXB0ZXIuYWRtaW4uMCIsCiAgInVzZXIiOiAic3lzdGVtLnVzZXIuYWRtaW4iLAogICJ0cyI6IDE1Nzg3NzE2NTIyNDgsCiAgImNvbW1vbiI6IHsKICAgICJuYW1lIjogIkdhcnRlbmJld+Rzc2VydW5nIEthbmFsIDErMiIsCiAgICAicm9sZSI6ICJsZXZlbCIsCiAgICAidHlwZSI6ICJudW1iZXIiLAogICAgInVuaXQiOiAiTWludXRlbiIsCiAgICAic21hcnRUeXBlIjogIkxpZ2h0IiwKICAgICJieU9OIjogInN0b3JlZCIsCiAgICAibWluIjogMCwKICAgICJtYXgiOiAxMDAsCiAgICAicmVhZCI6IHRydWUsCiAgICAid3JpdGUiOiB0cnVlLAogICAgImRlZiI6IGZhbHNlCiAgfSwKICAibmF0aXZlIjoge30sCiAgImFjbCI6IHsKICAgICJvYmplY3QiOiAxNjM4LAogICAgIm93bmVyIjogInN5c3RlbS51c2VyLmFkbWluIiwKICAgICJvd25lckdyb3VwIjogInN5c3RlbS5ncm91cC5hZG1pbmlzdHJhdG9yIiwKICAgICJzdGF0ZSI6IDE2MzgKICB9LAogICJfaWQiOiAiamF2YXNjcmlwdC4wLkVpZ2VuZV9EYXRlbnB1bmt0ZS5HYXJ0ZW4uR2FydGVuYmV35HNzZXJ1bmcgS2FuYWwgMSsyIiwKICAidHlwZSI6ICJzdGF0ZSIKfQoKLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKCi8vRGF0ZW5wdW5rdCBSZXN0bGF1ZnplaXQgdm9ybiBsaW5rcyBlcnN0ZWxsZW4KY3JlYXRlU3RhdGUoIkVpZ2VuZV9EYXRlbnB1bmt0ZS4xMUdhcmRlbmEuQmV3YWVzc2VydW5nLjAxUmVzdGxhdWZ6ZWl0X3Zvcm5fbGlua3MiLCcwJywgewogICAgbmFtZTogJzAxUmVzdGxhdWZ6ZWl0IHZvcm4gbGlua3MnLCAKICAgICJ1bml0IjogJ01pbnV0ZW4nLAogICAgInJvbGUiOiAibGV2ZWwiLAogICAgInR5cGUiOiAibnVtYmVyIiwKICAgICJyZWFkIjogdHJ1ZSwKICAgICJ3cml0ZSI6IHRydWUsCiAgICAibWluIjogMCwKICAgICJtYXgiOiAxMDAsCiAgICAic21hcnROYW1lIjogewogICAgImRlIjogIkJld8Okc3NlcnVuZyB2b3JuIGxpbmtzIiwKICAgICJzbWFydFR5cGUiOiAiTElHSFQiLAogICAgICAiYnlPTiI6ICJzdG9yZWQiCn0KfSk7CgovLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwoKLy9EYXRlbnB1bmt0IFJlc3RsYXVmemVpdCB2b3JuIHJlY2h0cyBlcnN0ZWxsZW4KY3JlYXRlU3RhdGUoIkVpZ2VuZV9EYXRlbnB1bmt0ZS4xMUdhcmRlbmEuQmV3YWVzc2VydW5nLjAyUmVzdGxhdWZ6ZWl0X3Zvcm5fcmVjaHRzIiwnMCcsIHsKICAgIG5hbWU6ICcwMlJlc3RsYXVmemVpdCB2b3JuIHJlY2h0cycsCiAgICAidW5pdCI6ICdNaW51dGVuJywgCiAgICAicm9sZSI6ICJsZXZlbCIsCiAgICAidHlwZSI6ICJudW1iZXIiLAogICAgInJlYWQiOiB0cnVlLAogICAgIndyaXRlIjogdHJ1ZSwKICAgICJtaW4iOiAwLAogICAgIm1heCI6IDEwMCwKICAgICJzbWFydE5hbWUiOiB7CiAgICAiZGUiOiAiQmV3w6Rzc2VydW5nIHZvcm4gcmVjaHRzIiwKICAgICJzbWFydFR5cGUiOiAiTElHSFQiLAogICAgICAiYnlPTiI6ICJzdG9yZWQiCn0KfSk7Ci8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgovL0RhdGVucHVua3QgUmVzdGxhdWZ6ZWl0IHNlaXRlIGVyc3RlbGxlbgpjcmVhdGVTdGF0ZSgiRWlnZW5lX0RhdGVucHVua3RlLjExR2FyZGVuYS5CZXdhZXNzZXJ1bmcuMDNSZXN0bGF1ZnplaXRfc2VpdGUiLCcwJywgewogICAgbmFtZTogJzAzUmVzdGxhdWZ6ZWl0IHNlaXRlJywgCiAgICAidW5pdCI6ICdNaW51dGVuJywKICAgICJyb2xlIjogImxldmVsIiwKICAgICJ0eXBlIjogIm51bWJlciIsCiAgICAicmVhZCI6IHRydWUsCiAgICAid3JpdGUiOiB0cnVlLAogICAgIm1pbiI6IDAsCiAgICAibWF4IjogMTAwLAogICAgInNtYXJ0TmFtZSI6IHsKICAgICJkZSI6ICJCZXfDpHNzZXJ1bmcgc2VpdGUiLAogICAgInNtYXJ0VHlwZSI6ICJMSUdIVCIsCiAgICAgICJieU9OIjogInN0b3JlZCIKfQp9KTsKCi8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjCgovL0RhdGVucHVua3QgUmVzdGxhdWZ6ZWl0IGhpbnRlbiBlcnN0ZWxsZW4KY3JlYXRlU3RhdGUoIkVpZ2VuZV9EYXRlbnB1bmt0ZS4xMUdhcmRlbmEuQmV3YWVzc2VydW5nLjA0UmVzdGxhdWZ6ZWl0X2hpbnRlbiIsJzAnLCB7CiAgICBuYW1lOiAnMDRSZXN0bGF1ZnplaXQgaGludGVuJywgCiAgICAidW5pdCI6ICdNaW51dGVuJywKICAgICJyb2xlIjogImxldmVsIiwKICAgICJ0eXBlIjogIm51bWJlciIsCiAgICAicmVhZCI6IHRydWUsCiAgICAid3JpdGUiOiB0cnVlLAogICAgIm1pbiI6IDAsCiAgICAibWF4IjogMTAwLAogICAgInNtYXJ0TmFtZSI6IHsKICAgICJkZSI6ICJCZXfDpHNzZXJ1bmcgaGludGVuIiwKICAgICJzbWFydFR5cGUiOiAiTElHSFQiLAogICAgICAiYnlPTiI6ICJzdG9yZWQiCn0KfSk7Cg==</field>
<comment pinned="false" h="80" w="160">Datenpunkte erstellen</comment>
</block>
<block type="procedures_callcustomnoreturn" id="5Har+P[]9D2wa@;{[=0" x="37" y="-63"> <mutation name="Datenpunkte_erstellen"></mutation> <next> <block type="on_ext" id="5/ptqACnYz31iOb-NbIW"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="WI]u4z@Dd;-@XNhr9^P_"> <field name="oid">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="2*@?}Ok8QqU52Qn2@
b!">
<mutation elseif="1"></mutation>
<value name="IF0">
<block type="logic_compare" id="1[j|p(UE~h1DBn5wJ7:"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id=",~
!us}{rO~uL:vb+.GT">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field>
</block>
</value>
<value name="B">
<block type="math_number" id="cT_00-(:L^+n7QY[iOy"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="n,Do#P:-50o2y7b0BP00"> <mutation delay_input="false"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.1.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="el2lC)Aszs-[kpKw9m_P"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="]LDg]@E~ShG@:VE1RBGQ"> <mutation delay_input="false"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.2.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="2[y-
Z#$^?LqGfc%O-!j">
<field name="BOOL">TRUE</field>
</block>
</value>
<next>
<block type="control" id="Hs,abY%xSj(m#sAIbit}">
<mutation delay_input="false"></mutation>
<field name="OID">hm-rpc.1.PEQ0506191.3.STATE</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="Hl8({scKs4t7m+W[FoH">
<field name="BOOL">TRUE</field>
</block>
</value>
<next>
<block type="timeouts_clearinterval" id="0#?|oZ2(djTEa5Mbis("> <field name="NAME">vorn_links</field> <next> <block type="timeouts_setinterval" id="N~zH%wP-T4gSXPps3Z%+"> <field name="NAME">vorn_links</field> <field name="INTERVAL">1</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="update" id="),nr)4;Lmn{BaM1NuYAW" inline="false"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="/R!
2TR~+**Vn)~Pc./7">
<field name="OP">MINUS</field>
<value name="A">
<shadow type="math_number" id="^!a,FZ33ph(GV#[e(EeR">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id="B{.+NFC?uo|C@Y/Zk2m"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> </block> </value> <value name="B"> <shadow type="math_number" id="nh~,0m2g(HED8,CKti}b"> <field name="NUM">1</field> </shadow> <block type="math_number" id="^$v650r5yvYe!AWepgec"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="$L7^;}qtFM59DJmS.uAd"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="I1i?@9)BIUx(Piq1o_lC"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> </block> </value> <value name="B"> <block type="math_number" id="Qj+@a$rXruUrJoEDis@q"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO1"> <block type="timeouts_clearinterval" id="hcE9(0dj(]g(S!62e={@"> <field name="NAME">vorn_links</field> </block> </statement> </block> </statement> <next> <block type="on_ext" id="yV7O,iTMgnS6WY)DszOR" collapsed="true"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="7DeV9B{3erWGW?%;A/[o"> <field name="oid">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.02Restlaufzeit_vorn_rechts</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="{]O#~b~1y#^t?#v7ITeV"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_compare" id="r6u|0a#mY)z;VvY%^j]v"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="?5E$8fXw-7
WjmTY%|jj">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.02Restlaufzeit_vorn_rechts</field>
</block>
</value>
<value name="B">
<block type="math_number" id="HBWpVH90Kr7?9.V~tGFy">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="timeouts_clearinterval" id="u}b~a6RynBSedAtAlKdb">
<field name="NAME">vorn_rechts</field>
<next>
<block type="timeouts_setinterval" id="uXl[oHMRYzNh8yz7c6X"> <field name="NAME">vorn_rechts</field> <field name="INTERVAL">1</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="update" id="^8.?F
PkGbu;))ffNniu" inline="false">
<mutation delay_input="false"></mutation>
<field name="OID">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.02Restlaufzeit_vorn_rechts</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="math_arithmetic" id="{E@kR!g;WJJlz+xzE=;)">
<field name="OP">MINUS</field>
<value name="A">
<shadow type="math_number" id="^!a,FZ33ph(GV#[e(EeR">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id="adD7nI2@tpul$(BDp~}"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.02Restlaufzeit_vorn_rechts</field> </block> </value> <value name="B"> <shadow type="math_number" id="nh~,0m2g(HED8,CKti}b"> <field name="NUM">1</field> </shadow> <block type="math_number" id="xF)01v_HxKf|kB];32B?"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </statement> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="K1^A4Ch;$
K^~D4(6cji">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="g5C#@1ZUCLO^q,8zESti">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.02Restlaufzeit_vorn_rechts</field>
</block>
</value>
<value name="B">
<block type="math_number" id=".nzWs{7)nYK#fkK*%z~"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO1"> <block type="timeouts_clearinterval" id="+?.x0!(gNEV1h*PJb#gZ"> <field name="NAME">vorn_rechts</field> </block> </statement> </block> </statement> <next> <block type="on_ext" id="|2_C=%-L|T{M^aaj]/1*" collapsed="true"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="o.XJOb5EKJ|mC?yM!IY9"> <field name="oid">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.03Restlaufzeit_seite</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="rZDMN!Ch4^vts2RCP7xW"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_compare" id="zin{pERQR!xve%Si1fqp"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="9vyKWVk5Ffj:QyJxn;i."> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.03Restlaufzeit_seite</field> </block> </value> <value name="B"> <block type="math_number" id="H
9;UC,KNJ9uT1H9]Bf"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="timeouts_clearinterval" id="S8qm!UDsnYYx?~#zZ}Q2"> <field name="NAME">seite</field> <next> <block type="timeouts_setinterval" id="[=ZoL##yP[H-,p=h,sKf"> <field name="NAME">seite</field> <field name="INTERVAL">1</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="update" id="%TV/06yhHpyMmsPu*(5w" inline="false"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.03Restlaufzeit_seite</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="kA.m3FB0AkCmidhSb()M"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="^!a,FZ33ph(GV#[e(EeR"> <field name="NUM">1</field> </shadow> <block type="get_value" id="u~tQ9/XJ@l%+ck~gI;;p"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.03Restlaufzeit_seite</field> </block> </value> <value name="B"> <shadow type="math_number" id="nh~,0m2g(HED8,CKti}b"> <field name="NUM">1</field> </shadow> <block type="math_number" id="x?oxO8JLeXIyp=gb]|_!"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </statement> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="RwrPZ/zUQNN
Sx~Z;m:d">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="A.aFso1W+@#/ITn^N{h">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.03Restlaufzeit_seite</field>
</block>
</value>
<value name="B">
<block type="math_number" id="VC5,eTPUe).E%DBpy]+q">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<statement name="DO1">
<block type="timeouts_clearinterval" id="Yh!PpN)zW,?lU4UIHhoO">
<field name="NAME">seite</field>
</block>
</statement>
</block>
</statement>
<next>
<block type="on_ext" id="P+W9S,LcsfDur5CEa)x" collapsed="true"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="Uz}Dv~6[O4mK].dLm!w["> <field name="oid">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.04Restlaufzeit_hinten</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="P1M
?98GL2Oz3R:^Jrug">
<mutation elseif="1"></mutation>
<value name="IF0">
<block type="logic_compare" id="bk~|OQ;v!J/iU0P=GMAg">
<field name="OP">GT</field>
<value name="A">
<block type="get_value" id="6lI[S?BUA+7).3A7;UF-">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.04Restlaufzeit_hinten</field>
</block>
</value>
<value name="B">
<block type="math_number" id="v$JF9zv{[6tgGfVc$YA0">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="timeouts_clearinterval" id="Um0%bUHddA@DYT5G}J"> <field name="NAME">hinten</field> <next> <block type="timeouts_setinterval" id="[]ZfY/y~?[eL$fXt$6]^"> <field name="NAME">hinten</field> <field name="INTERVAL">1</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="update" id="p:Sb;|$v]XLKc?]}(:+I" inline="false"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.04Restlaufzeit_hinten</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="h3_xZ/~#?/(wvJqdOS)I"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="^!a,FZ33ph(GV#[e(EeR"> <field name="NUM">1</field> </shadow> <block type="get_value" id="VgTBr?x(*n=ff+2W[RC
">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.04Restlaufzeit_hinten</field>
</block>
</value>
<value name="B">
<shadow type="math_number" id="nh~,0m2g(HED8,CKti}b">
<field name="NUM">1</field>
</shadow>
<block type="math_number" id="1i/raxF_@zeTBjI?$.@">
<field name="NUM">1</field>
</block>
</value>
</block>
</value>
</block>
</statement>
</block>
</next>
</block>
</statement>
<value name="IF1">
<block type="logic_compare" id="YG+ug3_@*qJ6aP`YPVLl">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="kkyhtu]v?7~+)~IA1yPd">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Eigene_Datenpunkte.11Gardena.Bewaesserung.04Restlaufzeit_hinten</field>
</block>
</value>
<value name="B">
<block type="math_number" id="0R~[//jAu:jY;gtL85;3">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<statement name="DO1">
<block type="timeouts_clearinterval" id="ed03Rhn(4wM+]sdNS3US">
<field name="NAME">hinten</field>
</block>
</statement>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</xml>
-
Und der Datenpunkt
{
"from": "system.adapter.admin.0",
"user": "system.user.admin",
"ts": 1578771652248,
"common": {
"name": "Gartenbewässerung Kanal 1+2",
"role": "level",
"type": "number",
"unit": "Minuten",
"smartType": "Light",
"byON": "stored",
"min": 0,
"max": 100,
"read": true,
"write": true,
"def": false
},
"native": {
"name": "Gartenbewässerung Kanal 1+2",
"unit": "Minuten",
"role": "level",
"type": "number",
"min": 0,
"max": 100,
"read": true,
"write": true,
"smartName": {
"de": "Bewässerung Kanal 1+2",
"smartType": "LIGHT",
"byON": "stored"
}
},
"acl": {
"object": 1638,
"owner": "system.user.admin",
"ownerGroup": "system.group.administrator",
"state": 1638
},
"_id": "javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2",
"type": "state"
}
-
lösche mal bitte Deinen selbst angelegten Datenpunkt. (da ist auch ein SmartName für iot drinn gewesen, also den hier löschen: Gartenbewässerung Kanal 1+2) Das Blockly erstellt Dir dann den Datenpunkt neu. Aber bitte zuerst Deinen alten Datenpunkt löschen.
Export:
<xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="undefined" id="Kanal_1_und_2">Kanal_1_und_2</variable> </variables> <block type="procedures_defcustomnoreturn" id="eZsGA^2r{c%G,YpuLp]K" x="38" y="-113"> <mutation statements="false"></mutation> <field name="NAME">Datenpunkte_erstellen</field> <field name="SCRIPT">Ly9EYXRlbnB1bmt0IFJlc3RsYXVmemVpdCB2b3JuIGxpbmtzIGVyc3RlbGxlbgpjcmVhdGVTdGF0ZSgiRWlnZW5lX0RhdGVucHVua3RlLkdhcnRlbi5HYXJ0ZW5iZXfDpHNzZXJ1bmcgS2FuYWwgMSsyIiwnMCcsIHsKICAgIG5hbWU6ICdHYXJ0ZW5iZXfDpHNzZXJ1bmcgS2FuYWwgMSsyJywgCiAgICAidW5pdCI6ICdNaW51dGVuJywKICAgICJyb2xlIjogImxldmVsIiwKICAgICJ0eXBlIjogIm51bWJlciIsCiAgICAicmVhZCI6IHRydWUsCiAgICAid3JpdGUiOiB0cnVlLAogICAgIm1pbiI6IDAsCiAgICAibWF4IjogMTAwLAp9KTs=</field> <comment pinned="false" h="80" w="160">Datenpunkte erstellen</comment> </block> <block type="procedures_callcustomnoreturn" id="5Har+P[]9D2wa@;{[=0" x="37" y="-63"> <mutation name="Datenpunkte_erstellen"></mutation> <next> <block type="on_ext" id="5/ptqACnYz31iOb-NbIW"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="WI]u4z@Dd;-@XNhr9^P_"> <field name="oid">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> </shadow> </value> <statement name="STATEMENT"> <block type="comment" id="Br5lDq{dz^H]N=];|b+("> <field name="COMMENT">bei den deaktivierten Deine Geräte rein</field> <next> <block type="controls_if" id="2*@?}Ok8QqU52Qn2@b!"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_operation" id="F_P%fceZ![9xHWZ+++tT" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="1[j|p(UE~h1DBn5wJ7:"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id=",~!us}{rO~uL:vb+.GT"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> </block> </value> <value name="B"> <block type="math_number" id="cT_00-(:L^+n7QY[iOy"> <field name="NUM">0</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="|YmTgh[ed;3vmAms/zbK" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="xgM%$*4aPA8,xt?FF.[F"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="5rzH9GQCK22CcWk;(ec%" disabled="true"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.00021709A0EFE6.3.STATE</field> </block> </value> <value name="B"> <block type="logic_boolean" id="P_lHAKE=|xmL08FE/RdT"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_operation" id="o6|$`dEke|ODPLOa9WI3" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="(q8,SXrl^{%v$O|Em6+t"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="LNGGpwlay=mpw*a-g:Qw" disabled="true"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.00021A499BDC60.3.STATE</field> </block> </value> <value name="B"> <block type="logic_boolean" id="dejoFxf~S|}Cu2BhbdF@"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="Cqy2p,-hRjhVflV169z-"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="we;ZD4oLB-;Web:#3S9r" disabled="true"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.00021A499BDCB2.3.STATE</field> </block> </value> <value name="B"> <block type="logic_boolean" id="SIiXqJey3kq@su*lB2;2"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="n,Do#P:-50o2y7b0BP00"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.1.STATE</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">100</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"> <block type="logic_boolean" id="el2lC)Aszs-[kpKw9m_P"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="]LDg]@E~ShG@:VE1RBGQ"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.2.STATE</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">200</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"> <block type="logic_boolean" id="2[y-Z#$^?LqGfc%O-!j"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="Hs,abY%xSj(m#sAIbit}"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.3.STATE</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">300</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"> <block type="logic_boolean" id="Hl8({scKs4t7m+W[FoH"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="timeouts_clearinterval" id="0#?|oZ2(djTEa5Mbis("> <field name="NAME">Kanal_1_und_2</field> <next> <block type="timeouts_setinterval" id="N~zH%wP-T4gSXPps3Z%+"> <field name="NAME">Kanal_1_und_2</field> <field name="INTERVAL">1</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="update" id="),nr)4;Lmn{BaM1NuYAW" inline="false"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="/R!2TR~+**Vn)~Pc./7"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="^!a,FZ33ph(GV#[e(EeR"> <field name="NUM">1</field> </shadow> <block type="get_value" id="B{.+NFC?uo|C@Y/Zk2m"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> </block> </value> <value name="B"> <shadow type="math_number" id="nh~,0m2g(HED8,CKti}b"> <field name="NUM">1</field> </shadow> <block type="math_number" id="^$v650r5yvYe!AWepgec"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="$L7^;}qtFM59DJmS.uAd"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="I1i?@9)BIUx(Piq1o_lC"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> </block> </value> <value name="B"> <block type="math_number" id="Qj+@a$rXruUrJoEDis@q"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO1"> <block type="timeouts_clearinterval" id="hcE9(0dj(]g(S!62e={@"> <field name="NAME">Kanal_1_und_2</field> <next> <block type="control" id="%W(TTF@}Ex+U}w~|WtQD"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.1.STATE</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">100</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"> <block type="logic_boolean" id="nr(:0Wl7g;-nZ7(.|6pG"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="-5V2bD/c;r:.x^W@KNA1"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.2.STATE</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">200</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"> <block type="logic_boolean" id="l:DdS`??E({qUGXTC+R~"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="_tszV4-YQ(Hhlyu/8C-3"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.3.STATE</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">300</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"> <block type="logic_boolean" id="kOV:*+APP.sm6o)~OtO|"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </next> </block> </xml>
-
@Aidan
sieht jetzt so aus
-
Und falls Du dort diese Datenpunkte haben solltest, die kannst Du auch löschen. (auch im Javascript Ordner unter Eigene_Datenpunkte)
-
@Aidan sagte in Blockly Script für Gartenbewässerung:
Anforderung: Frau drückt Knopf, Pumpe auf Kanal1 geht an, Ventil auf Kanal2 geht auf. Laufdauer 10 Min.
Man könnte das auch mit einem festen Wert von 10 Minuten aufbauen, auch abschaltbar wenn die 10 Minuten noch nicht um sind.....(ich mach das mal eben und probiere das mal für Dich)
-
mir würde eine freieinstellbare Zeit deutlich mehr zusagen..
Lass uns diesen Pfad verfolgen.
probiere ich so gegen 14 Uhr, habe gerade familiäre Verpflichtungen.. -
sauber, das funzt-)
sehr fett!!
Allerdings wird die Restlaufzeit nicht aktuallisiert.Eine Verständnisfrage:
"Stop zyklische Ausführung" steht jetzt eine Minute drin.
Ich dachte dass es sich um den Aktuallisierungsstatus handelt und hatte es auf 1000ms gesetzt.
Das hatte allerdings zur Folge, dass die Kanäle nur eine Sek angeblieben sind.
Stelle ich es zurück auf eine Minute, hätte ich erwartet, dass auch nach einer minute die Kanäle abgestellt werden. Dann bleiben Sie aber in der vorgegeben Zeit aktive. Z.b. 5 Min.
Warum ist das so? -
@Aidan
Trotzdem hier noch die Variante zum schalten der 10 Minuten. Dann kann man über den Schalter an/ausschalten und es läft nach dem anschalten 10 Minuten und dann setzt sich der Schalter zurück. Wenn vor Ablauf der 10 Minuten ausgeschaltet wird, dann geht die Anzeige der Minuten auf 0. Zum ausprobieren das andere Blockly stoppen und den Datenpunkt nochmal löschen. In dieser Variante ist der Minutendatenpunkt nicht beschreibbar, quasi als Anzeige.
Die Geräte mußt Du noch austauschen, da habe ich ketzt drei Steckdosen von mir drinn. Zum probieren habe ich 5 Sekunden als Intervall eingestellt, dann muß man nicht immer eine Minute warten.<xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="undefined" id="Kanal_1_und_2">Kanal_1_und_2</variable> </variables> <block type="procedures_defcustomnoreturn" id="eZsGA^2r{c%G,YpuLp]K" x="13" y="13"> <mutation statements="false"></mutation> <field name="NAME">Datenpunkte_erstellen</field> <field name="SCRIPT">Ly9EYXRlbnB1bmt0IGVyc3RlbGxlbgpjcmVhdGVTdGF0ZSgiRWlnZW5lX0RhdGVucHVua3RlLkdhcnRlbi5HYXJ0ZW5iZXfDpHNzZXJ1bmcgS2FuYWwgMSsyIiwnMCcsIHsKICAgIG5hbWU6ICdHYXJ0ZW5iZXfDpHNzZXJ1bmcgS2FuYWwgMSsyJywgCiAgICAidW5pdCI6ICdNaW51dGVuJywKICAgICJyb2xlIjogImxldmVsIiwKICAgICJ0eXBlIjogIm51bWJlciIsCiAgICAicmVhZCI6IHRydWUsCiAgICAid3JpdGUiOiBmYWxzZSwKICAgICJtaW4iOiAwLAogICAgIm1heCI6IDEwMCwKfSk7CgovL0RhdGVucHVua3QgZXJzdGVsbGVuCmNyZWF0ZVN0YXRlKCJFaWdlbmVfRGF0ZW5wdW5rdGUuR2FydGVuLkdhcnRlbmJld8Okc3NlcnVuZ19hbl9hdXMiLCdmYWxzZScsIHsKICAgIG5hbWU6ICdHYXJ0ZW5iZXfDpHNzZXJ1bmdfYW5fYXVzJywgCiAgICAicm9sZSI6ICJzd2l0Y2giLAogICAgInR5cGUiOiAiYm9vbGVhbiIsCiAgICAicmVhZCI6IHRydWUsCiAgICAid3JpdGUiOiB0cnVlLAogICAgInN0YXRlcyI6IHsKICAgICAgInRydWUiOiAiZWluZ2VzY2hhbHRldCIsCiAgICAgICJmYWxzZSI6ICJhdXNnZXNjaGFsdGV0IgogICAgfQp9KTs=</field> <comment pinned="false" h="80" w="160">Datenpunkte erstellen</comment> </block> <block type="procedures_callcustomnoreturn" id="5Har+P[]9D2wa@;{[=0" x="13" y="63"> <mutation name="Datenpunkte_erstellen"></mutation> <next> <block type="on_ext" id="5/ptqACnYz31iOb-NbIW"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="WI]u4z@Dd;-@XNhr9^P_"> <field name="oid">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung_an_aus</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="2*@?}Ok8QqU52Qn2@b!"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_compare" id="ec;#603Bo`S8Z0Ch%}X;"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id=".gj$tX,X$6|o{J6`#xvP"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung_an_aus</field> </block> </value> <value name="B"> <block type="logic_boolean" id="sNd(p?Q-{brHl!_6#spN"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="timeouts_clearinterval" id="BYzyHv4ZICh{63d|L:)}"> <field name="NAME">Kanal_1_und_2</field> <next> <block type="update" id="E]ly/$(h:Sq8xDVTGnXI"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="mar$!5:a|d~fZ927=av`"> <field name="NUM">10</field> </block> </value> <next> <block type="controls_if" id="ESPssoO+}H.trL;.C1q^"> <value name="IF0"> <block type="logic_compare" id="Zs|aiY:pp~c+Mqvom,60"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="%0PF|)):iz6=5q7{8?yd"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.00021709A0EFE6.3.STATE</field> </block> </value> <value name="B"> <block type="logic_boolean" id="1ga!;~2O0v,9X4++R:l%"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="v|YlbV)QX)(u@^/%5R[e"> <mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.00021709A0EFE6.3.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="%x)g)$I/,6)B8(nOU|dN"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="n,Do#P:-50o2y7b0BP00" disabled="true"> <mutation delay_input="false"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.1.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="el2lC)Aszs-[kpKw9m_P"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </statement> <next> <block type="controls_if" id=".-CZ)=aU,-`8,czI3YQ("> <value name="IF0"> <block type="logic_compare" id="Wn/BZq!osS_r%#S^6]_j"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="(-}a7SN:RxSO,+HtMy|B"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.00021A499BDC60.3.STATE</field> </block> </value> <value name="B"> <block type="logic_boolean" id="}g+yBcic0%6tpBEHp1Hg"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="hYg{v%bSvg,BNg4MM%/x"> <mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.00021A499BDC60.3.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="f`_$=j)W9yE.:qs8fbBu"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="]LDg]@E~ShG@:VE1RBGQ" disabled="true"> <mutation delay_input="false"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.2.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="2[y-Z#$^?LqGfc%O-!j"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </statement> <next> <block type="controls_if" id="K%FG:Xl;KLD2oLQMpnYt"> <value name="IF0"> <block type="logic_compare" id="k^`6ln+@WsVI.KL[^+19"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="qct85Z/n@J(@ki,qfvBH"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.00021A499BDCB2.3.STATE</field> </block> </value> <value name="B"> <block type="logic_boolean" id="6w$di0!}I:{_F7/ccc6."> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="Fm?R{1n]@F@JV;z!_n`="> <mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.00021A499BDCB2.3.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="`Y~LOdh@~.dAmu.f68O("> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="$;t?7X*+VBu/JP?uA{y$" disabled="true"> <mutation delay_input="false"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.3.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="7G=YclGnkS~pl{ji/Z0U"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </statement> <next> <block type="timeouts_clearinterval" id="0#?|oZ2(djTEa5Mbis("> <field name="NAME">Kanal_1_und_2</field> <next> <block type="timeouts_setinterval" id="N~zH%wP-T4gSXPps3Z%+"> <field name="NAME">Kanal_1_und_2</field> <field name="INTERVAL">5</field> <field name="UNIT">sec</field> <statement name="STATEMENT"> <block type="update" id="),nr)4;Lmn{BaM1NuYAW"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="/R!2TR~+**Vn)~Pc./7"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="^!a,FZ33ph(GV#[e(EeR"> <field name="NUM">1</field> </shadow> <block type="get_value" id="B{.+NFC?uo|C@Y/Zk2m"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> </block> </value> <value name="B"> <shadow type="math_number" id="nh~,0m2g(HED8,CKti}b"> <field name="NUM">1</field> </shadow> <block type="math_number" id="^$v650r5yvYe!AWepgec"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id=",WiY7P[olrTdN[fsR_Eo"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="herLH3qV^8zcmZRNP*vc"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung_an_aus</field> </block> </value> <value name="B"> <block type="logic_boolean" id="amx~p2MPuY(ouMX4?^T-"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO1"> <block type="timeouts_clearinterval" id="bokYk)$0b/$;]9cJ-|8h"> <field name="NAME">Kanal_1_und_2</field> <next> <block type="update" id="l3Z{k(w)0~iK/9g47D^k"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="YZzwJSZ+,g2b[c}zh*6;"> <field name="NUM">0</field> </block> </value> <next> <block type="controls_if" id="N;wW?rIQqn*Gs3xZ9])."> <value name="IF0"> <block type="logic_compare" id="}[?8Q.@p,eU.)Ml*vD6@"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="=H`X(LUBnYIgDiF~Nb{m"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.00021709A0EFE6.3.STATE</field> </block> </value> <value name="B"> <block type="logic_boolean" id="LPe)bDC#Y4ig:f[^AwKv"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="ZRvAx(0g+gK,YJJl+EB)"> <mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.00021709A0EFE6.3.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="HAS9HUr9z)H@tHcXF~zO"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="HR:O9Fh_)37==!yDL01S" disabled="true"> <mutation delay_input="false"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.1.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="j/.F59o/Q?m{X6#4}?UE"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </statement> <next> <block type="controls_if" id="^JxPXhDc`1nWCcy2W4Dq"> <value name="IF0"> <block type="logic_compare" id="@2,3=fo?XNMU7Y/.,BAO"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="XLA0u.Xi@/KWM7sm/|Z,"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.00021A499BDC60.3.STATE</field> </block> </value> <value name="B"> <block type="logic_boolean" id="c`G$c^cP@xII$W@D_9~L"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="~pmeNI390A1adZlB)@5R"> <mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.00021A499BDC60.3.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="{zZh:e)IP]5l=}w.jC-d"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="*{,l7[4V*s=$L#ifD)Fd" disabled="true"> <mutation delay_input="false"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.2.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="k!D$_Cs{1VjZ9-0pmGp|"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </statement> <next> <block type="controls_if" id=";8*_f95WG*Y:A(wL|UcF"> <value name="IF0"> <block type="logic_compare" id="0bvBLvj:8#Q|gn*@A;s:"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="0}}9n2z;6B[L1(1Mk6:9"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.00021A499BDCB2.3.STATE</field> </block> </value> <value name="B"> <block type="logic_boolean" id="ktb+LSRFs9!ECC0dRS_m"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="Qm!X6q.^p%=a~+w)ROIR"> <mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.00021A499BDCB2.3.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="+d40*b8RVpC466rqyI3s"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="X4e`76remcja_mCnNa#O" disabled="true"> <mutation delay_input="false"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.3.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id=":r]@1rFw{.fF0E(UEOOt"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> <next> <block type="on_ext" id="yR;b5jVzTUO8%#,9jZiI"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="x+tfyRp+*rSV9x%mBb,#"> <field name="oid">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="Y*Isrju`imsZV3AJmN_c"> <value name="IF0"> <block type="logic_compare" id="{Djtw*}H)cj|R1v1du!="> <field name="OP">EQ</field> <value name="A"> <block type="on_source" id="nPaiZ#3+}}AX!xX7_b|c"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="math_number" id="J.$Jypxy0X)hU}a}w#!}"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="F!Rucqzk.U1dT2$}i}FX"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung_an_aus</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="eo/%0^$~?p3W-ufAKo}J"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </statement> </block> </next> </block> </next> </block> </xml>
Lade mal nochmal das Blockly, was Du letzendlich benutzen willst hier hoch. Ich habe jetzt noch eine Prüfung drinn, ab die "Steckdosen" an oder aus sind. Nur dann wird auch geschaltet (Duty Cycle)
-
@Aidan sagte in Blockly Script für Gartenbewässerung:
"Stop zyklische Ausführung" steht jetzt eine Minute drin.
zeig mal Dein Blockly
-
Mit dem Blockly funzt es
<xml xmlns="http://www.w3.org/1999/xhtml">
<variables>
<variable type="undefined" id="Kanal_1_und_2">Kanal_1_und_2</variable>
</variables>
<block type="procedures_defcustomnoreturn" id="eZsGA^2r{c%G,YpuLp]K" x="38" y="-113">
<mutation statements="false"></mutation>
<field name="NAME">Datenpunkte_erstellen</field>
<field name="SCRIPT">Ly9EYXRlbnB1bmt0IFJlc3RsYXVmemVpdCB2b3JuIGxpbmtzIGVyc3RlbGxlbgpjcmVhdGVTdGF0ZSgiRWlnZW5lX0RhdGVucHVua3RlLkdhcnRlbi5HYXJ0ZW5iZXfDpHNzZXJ1bmcgS2FuYWwgMSsyIiwnMCcsIHsKICAgIG5hbWU6ICdHYXJ0ZW5iZXfDpHNzZXJ1bmcgS2FuYWwgMSsyJywgCiAgICAidW5pdCI6ICdNaW51dGVuJywKICAgICJyb2xlIjogImxldmVsIiwKICAgICJ0eXBlIjogIm51bWJlciIsCiAgICAicmVhZCI6IHRydWUsCiAgICAid3JpdGUiOiB0cnVlLAogICAgIm1pbiI6IDAsCiAgICAibWF4IjogMTAwLAp9KTs=</field>
<comment pinned="false" h="80" w="160">Datenpunkte erstellen</comment>
</block>
<block type="procedures_callcustomnoreturn" id="5Har+P[]9D2wa@;{[=0" x="37" y="-63">
<mutation name="Datenpunkte_erstellen"></mutation>
<next>
<block type="on_ext" id="5/ptqACnYz31iOb-NbIW">
<mutation items="1"></mutation>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<value name="OID0">
<shadow type="field_oid" id="WI]u4z@Dd;-@XNhr9^P_">
<field name="oid">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field>
</shadow>
</value>
<statement name="STATEMENT">
<block type="comment" id="Br5lDq{dz^H]N=];|b+(">
<field name="COMMENT">bei den deaktivierten Deine Geräte rein</field>
<next>
<block type="controls_if" id="2*@?}Ok8QqU52Qn2@b!">
<mutation elseif="1"></mutation>
<value name="IF0">
<block type="logic_operation" id="F_P%fceZ![9xHWZ+++tT" inline="false">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="1[j|p(UE~h1DBn5wJ7:">
<field name="OP">GT</field>
<value name="A">
<block type="get_value" id=",~!us}{rO~uL:vb+.GT">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field>
</block>
</value>
<value name="B">
<block type="math_number" id="cT_00-(:L^+n7QY[iOy">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_operation" id="|YmTgh[ed;3vmAms/zbK" inline="false">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="xgM%$4aPA8,xt?FF.[F">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="5rzH9GQCK22CcWk;(ec%" disabled="true">
<field name="ATTR">val</field>
<field name="OID">hm-rpc.1.PEQ0506191.1.STATE</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="P_lHAKE=|xmL08FE/RdT">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_operation" id="o6|$dEke|ODPLOa9WI3" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="(q8,SXrl^{%v$O|Em6+t"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="LNGGpwlay=mpw*a-g:Qw" disabled="true"> <field name="ATTR">val</field> <field name="OID">hm-rpc.1.PEQ0506191.2.STATE</field> </block> </value> <value name="B"> <block type="logic_boolean" id="dejoFxf~S|}Cu2BhbdF@"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="Cqy2p,-hRjhVflV169z-"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="we;ZD4oLB-;Web:#3S9r" disabled="true"> <field name="ATTR">val</field> <field name="OID">hm-rpc.1.PEQ0506191.2.STATE</field> </block> </value> <value name="B"> <block type="logic_boolean" id="SIiXqJey3kq@su*lB2;2"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="n,Do#P:-50o2y7b0BP00"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.1.STATE</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">100</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"> <block type="logic_boolean" id="el2lC)Aszs-[kpKw9m_P"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="]LDg]@E~ShG@:VE1RBGQ"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.2.STATE</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">200</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"> <block type="logic_boolean" id="2[y-Z#$^?LqGfc%O-!j"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="Hs,abY%xSj(m#sAIbit}"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.3.STATE</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">300</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"> <block type="logic_boolean" id="Hl8({scKs4t7m+W[FoH"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="timeouts_clearinterval" id="0#?|oZ2(djTEa5Mbis("> <field name="NAME">Kanal_1_und_2</field> <next> <block type="timeouts_setinterval" id="N~zH%wP-T4gSXPps3Z%+"> <field name="NAME">Kanal_1_und_2</field> <field name="INTERVAL">1</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="update" id="),nr)4;Lmn{BaM1NuYAW" inline="false"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="/R!2TR~+**Vn)~Pc./7"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="^!a,FZ33ph(GV#[e(EeR"> <field name="NUM">1</field> </shadow> <block type="get_value" id="B{.+NFC?uo|C@Y/Zk2m"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> </block> </value> <value name="B"> <shadow type="math_number" id="nh~,0m2g(HED8,CKti}b"> <field name="NUM">1</field> </shadow> <block type="math_number" id="^$v650r5yvYe!AWepgec"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_compare" id="$L7^;}qtFM59DJmS.uAd"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="I1i?@9)BIUx(Piq1o_lC"> <field name="ATTR">val</field> <field name="OID">javascript.0.Eigene_Datenpunkte.Garten.Gartenbewässerung Kanal 1+2</field> </block> </value> <value name="B"> <block type="math_number" id="Qj+@a$rXruUrJoEDis@q"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO1"> <block type="timeouts_clearinterval" id="hcE9(0dj(]g(S!62e={@"> <field name="NAME">Kanal_1_und_2</field> <next> <block type="control" id="%W(TTF@}Ex+U}w~|WtQD"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.1.STATE</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">100</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"> <block type="logic_boolean" id="nr(:0Wl7g;-nZ7(.|6pG"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="-5V2bD/c;r:.x^W@KNA1"> <mutation delay_input="true"></mutation> <field name="OID">hm-rpc.1.PEQ0506191.2.STATE</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">200</field> <field name="UNIT">ms</field> <field name="CLEAR_RUNNING">TRUE</field> <value name="VALUE"> <block type="logic_boolean" id="l:DdS
??E({qUGXTC+R~">
<field name="BOOL">FALSE</field>
</block>
</value>
<next>
<block type="control" id="_tszV4-YQ(Hhlyu/8C-3">
<mutation delay_input="true"></mutation>
<field name="OID">hm-rpc.1.PEQ0506191.3.STATE</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">300</field>
<field name="UNIT">ms</field>
<field name="CLEAR_RUNNING">TRUE</field>
<value name="VALUE">
<block type="logic_boolean" id="kOV:+APP.sm6o)~OtO|">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</xml>
-
@Aidan
benutze bitte in Zukunft Code Tags (auch im Spoiler, oben aus der Leiste)