NEWS
Wasserzähler - Version 2 - all-in-device
-
Danke für die Info, läuft bis jetzt prima.
Nicht wundern, das Bild wird etwas kleiner dargestellt als bisher!Da man ja jetzt auch TimeStamp bekommt könnte ich mal ein paar Tips von euch gebrauchen:
Ich lese bisher alle 5 min den Zählerstand aus und zeige damit jeweils die letzte halbe Stunde im VIS an.
Dann wird wieder überschrieben.
Der Wasserzähler liest alle 4,75 min im Standart und somit überschneidet sich das ganze.
Was müsste ich im Blockly tun um die Daten jeweils dann abzulesen wenn Sie vom Zähler reinkommen.
Bin da leider noch nicht so fit. Jedes Beispiel ist willkommen.
Anbei nochmal das Bild und den Blockly Script
Wasserzähler.txt
Sicherlich kommen da den Profis die Tränen;-) funktioniert aber einwandfrei.
Fürs Blockly braucht man Telegram!LG Horst
-
@hasont Anbei Teil meines Blocky Scripts:
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="fb%^b%(.P(De7B%I+^fp">Wasserverbrauch_alt_speichern</variable> <variable id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</variable> </variables> <block type="comment" id="nZLIgu,pmh4[2*$0MI%?" x="-1713" y="-1387"> <field name="COMMENT">Einlesen des neuen MQTT Wertes </field> <next> <block type="on_ext" id="4Psx1wuqrX65nv_lkDB}"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="3Q)hsz!uvKk?{unC*,0E"> <field name="oid">mqtt.0.wasserzaehler.zaehlerstand</field> </shadow> </value> <statement name="STATEMENT"> <block type="variables_set" id="wR=JtsBFCJou1i6LdCw~"> <field name="VAR" id="fb%^b%(.P(De7B%I+^fp">Wasserverbrauch_alt_speichern</field> <value name="VALUE"> <block type="get_value" id="pL9_YEK1IWWA6.!#W)bd"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserverbrauch.Wasserverbrauch_alt</field> </block> </value> <next> <block type="control" id="6DzKEv?-~d]3U=;Btcop"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserverbrauch.Wasserverbrauch_alt</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="o5`@Rv8Ul:#hrNuvl,2|"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserverbrauch.Wasserverbrauch_aktuell</field> </block> </value> <next> <block type="control" id="}]Q8$qsGmL/BOYA_~4FM"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserverbrauch.Wasserverbrauch_aktuell</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="Pih,sstkIbC`EncyUqge"> <field name="ATTR">val</field> <field name="OID">mqtt.0.wasserzaehler.zaehlerstand</field> </block> </value> <next> <block type="controls_if" id="[)h5!Wt?#u]$;DJ*fSen"> <value name="IF0"> <block type="logic_compare" id="}I^P3N/ka`dJ[#)ravN7"> <field name="OP">NEQ</field> <value name="A"> <block type="variables_get" id="yiT6k|}2%QxC5Ip2;7;^"> <field name="VAR" id="fb%^b%(.P(De7B%I+^fp">Wasserverbrauch_alt_speichern</field> </block> </value> <value name="B"> <block type="get_value" id="UX+:bzMd8g/f6b{dN+lx"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserverbrauch.Wasserverbrauch_aktuell</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="z)/Gd*s9,-W6[D752=D?"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> <value name="VALUE"> <block type="math_arithmetic" id="xt-H^j-:43Irbg7Fhml("> <field name="OP">MINUS</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="X_rWlPD~o/J^KhVZi%6o"> <field name="NUM">1</field> </shadow> <block type="get_value" id="A4Sx?OtCp2T?h#I(031U"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserverbrauch.Wasserverbrauch_aktuell</field> </block> </value> <value name="B"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="+qND:7;^kTj.azwuZHHi"> <field name="NUM">1</field> </shadow> <block type="get_value" id="@R6Vro4Waf_mK|.+!]^0"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserverbrauch.Wasserverbrauch_alt</field> </block> </value> </block> </value> <next> <block type="controls_if" id="8K}#}[Fk:%g~F#3)+NAF"> <value name="IF0"> <block type="logic_operation" id="lR$k8X3;ySVntotf-vFz"> <field name="OP">OR</field> <value name="A"> <block type="logic_compare" id="q0zW=|U!.1,jkAy[X!b$"> <field name="OP">LTE</field> <value name="A"> <block type="variables_get" id="Hnk,pbHq`B?Nb}~w$=$H"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <block type="math_number" id="7E.:+JU.a]LF)/p!,#;*"> <field name="NUM">30</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="6Ig?RU}s(dFcicEuhcm0"> <field name="OP">GTE</field> <value name="A"> <block type="variables_get" id="jcdb+L_Z#8kmj7e(cq:1"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <block type="math_number" id="9=%(A.)%}-%Ym9CUISV^"> <field name="NUM">120</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="CDT0?0zH4r9GW/H*Y2$f"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserverbrauch.Wasserverbrauch_gerechnet</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="*aA/fh;#]Di_eXq6nL,^"> <field name="n">4</field> <value name="x"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="a?I?-VQtRV1uduc!*;@I"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="XGWua76GS6aHpO3imk]l"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Tq{Zc)v77pwV^ctJd{|J"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="|~8@Y)]z.lKE{$Sr]Phs"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <shadow type="math_number" id="@6AZ4Y}v+0qS8p%_qu{H"> <field name="NUM">1000</field> </shadow> </value> </block> </value> </block> </value> <next> <block type="control" id="0(_/h8O2,M[gEb`Ic4=2"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hm-rega.0.30965</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="A_V2Dl3Tco*!@[~Lr1n~"> <field name="n">4</field> <value name="x"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="a?I?-VQtRV1uduc!*;@I"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="XY5vn6~5Da?Zt0namcfQ"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="TlPoMg6n6S:en?y89?T4"> <field name="NUM">1</field> </shadow> <block type="get_value" id="Il/T*4`06v:{m@*OFmkc"> <field name="ATTR">val</field> <field name="OID">hm-rega.0.30965</field> </block> </value> <value name="B"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="%8A!l4mo_0a=h,ezfnVP"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="lKu:^o1-H]d/0,7P%Ipo"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Tq{Zc)v77pwV^ctJd{|J"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="XB}ackBd~?1d)cTC#bwV"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <shadow type="math_number" id="RP9x3%P{}.7k42Qpi5y;"> <field name="NUM">1000</field> </shadow> </value> </block> </value> </block> </value> </block> </value> <next> <block type="control" id="5fng!*j2(M,$$,YwlLHx"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hm-rega.0.30969</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="-3@,nGkZ]@$FU1Ry}%PA"> <field name="n">4</field> <value name="x"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="a?I?-VQtRV1uduc!*;@I"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="(E?id-LI#NfEL|Jt:.vZ"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="TlPoMg6n6S:en?y89?T4"> <field name="NUM">1</field> </shadow> <block type="get_value" id="0E2;EjD-PBt:GCDwPU~H"> <field name="ATTR">val</field> <field name="OID">hm-rega.0.30969</field> </block> </value> <value name="B"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="%8A!l4mo_0a=h,ezfnVP"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="G9U[WP2t4_f8T+_0LGXB"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Tq{Zc)v77pwV^ctJd{|J"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="34;qZzQ3Z+JnD{P-NYW:"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <shadow type="math_number" id="G:AdLWj}|(?]]ENs(!55"> <field name="NUM">1000</field> </shadow> </value> </block> </value> </block> </value> </block> </value> <next> <block type="control" id="oBT%X]5xBNnY,5AICE3X"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hm-rega.0.30966</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id=",P%Ylnd^*u1LkcG9X]:W"> <field name="n">4</field> <value name="x"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="a?I?-VQtRV1uduc!*;@I"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="|(*+rA~Ej?$2*?ityV)U"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="TlPoMg6n6S:en?y89?T4"> <field name="NUM">1</field> </shadow> <block type="get_value" id="]ziDJBvg89Wq:.R;J:!,"> <field name="ATTR">val</field> <field name="OID">hm-rega.0.30966</field> </block> </value> <value name="B"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="%8A!l4mo_0a=h,ezfnVP"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="e.p_|Smt|,NX(RunG)gt"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Tq{Zc)v77pwV^ctJd{|J"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="P5_c8#OAPy=l^ASZ;$es"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <shadow type="math_number" id="YDm1,jv1{.k2e(?8V)(|"> <field name="NUM">1000</field> </shadow> </value> </block> </value> </block> </value> </block> </value> <next> <block type="control" id="R5$.Na4^BAFjW2ARqTxN"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hm-rega.0.30967</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="e{,b!INUIeaJ}fkB8}m@"> <field name="n">4</field> <value name="x"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="a?I?-VQtRV1uduc!*;@I"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="!-w04:ct]D5r!DJQmLSW"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="TlPoMg6n6S:en?y89?T4"> <field name="NUM">1</field> </shadow> <block type="get_value" id="HgghGzkzow#w{s|+|+a:"> <field name="ATTR">val</field> <field name="OID">hm-rega.0.30967</field> </block> </value> <value name="B"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="%8A!l4mo_0a=h,ezfnVP"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="nllQn,{7d8IO(@Lg3M:B"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Tq{Zc)v77pwV^ctJd{|J"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="MJ/ZuL+#^.3AQq~epH3J"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <shadow type="math_number" id="J^_v%Hn7gX*W7f[-+mgU"> <field name="NUM">1000</field> </shadow> </value> </block> </value> </block> </value> </block> </value> <next> <block type="control" id="=E[:Y4;({rV9PgxM??W#"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hm-rega.0.30968</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="pIPk0X$;_7l#cS6]J[a)"> <field name="n">4</field> <value name="x"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="a?I?-VQtRV1uduc!*;@I"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="`:+j8dW)6S#f{T%Ai9u5"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="TlPoMg6n6S:en?y89?T4"> <field name="NUM">1</field> </shadow> <block type="get_value" id="vuDO5{C4d)Z4!.?z)/v."> <field name="ATTR">val</field> <field name="OID">hm-rega.0.30968</field> </block> </value> <value name="B"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="P!TIMt7*.bBC#4%Idw8j"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="`,M`KPfi72=ir~XGyo;+"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Tq{Zc)v77pwV^ctJd{|J"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="^v@w@K@=*~ET7Z1v-oO@"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <shadow type="math_number" id="@~]Yp/KY$~_P8PTXoQKy"> <field name="NUM">1000</field> </shadow> </value> </block> </value> </block> </value> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> <block type="comment" id="$f;2YJblP5aT5TAGfFMx" x="-512" y="-1087"> <field name="COMMENT">Maximaler Durchfluss pro Sekunde x 30 Sekunden Abtastrate, 120 Liter Ziffernwechsel</field> </block> <block type="comment" id="qSxx=;Q,jlnWfNVxu*TC" x="-1712" y="-487"> <field name="COMMENT">reset heute</field> <next> <block type="schedule" id="v;%?AXWh:txx%4R+2:U,"> <field name="SCHEDULE">0 0 * * *</field> <statement name="STATEMENT"> <block type="control" id="+%wEpsL(Ww[z8Tfc-X$0"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hm-rega.0.31100</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="2D{+Qa%pnz-R43!M3Fr0"> <field name="ATTR">val</field> <field name="OID">hm-rega.0.30965</field> </block> </value> <next> <block type="control" id="o03K_LgrizESb@J0r`gL"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hm-rega.0.30965</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="+|Dv5/%]/%.QIWBB+**C"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> <block type="comment" id="ox+@jzn`KXVwX.fOTB$," x="-812" y="-462"> <field name="COMMENT">Wasserverbrauch letzte 5 min zurücksetzen</field> <next> <block type="on_ext" id="j=c,w9.$Xq;DsB5^}pBB"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="}z+=RenMSy8(B@XhK@0K"> <field name="oid">hm-rega.0.30969</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="%|yEAWaJ*FP|KJ!T/+Y$"> <value name="IF0"> <block type="logic_compare" id="_EAAa*G$MT%4=Rg?[~bP"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="tZQSY0`YcA7JL[M$Ws@g"> <field name="ATTR">val</field> <field name="OID">hm-rega.0.30969</field> </block> </value> <value name="B"> <block type="math_number" id="Pd*)$#q#9Ay-w#:cv1+7"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="lU:dL+CfL4WMPIg8M38w"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">hm-rega.0.30969</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">5</field> <field name="UNIT">min</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="math_number" id="sH;+ugos5JXLrj_4BfDg"> <field name="NUM">0</field> </block> </value> </block> </statement> </block> </statement> </block> </next> </block> <block type="comment" id="f}lW@jf:=d$f0yptTr$b" x="-1712" y="-137"> <field name="COMMENT">reset Woche</field> <next> <block type="schedule" id="CS=RSPfa:iN5AMzgx~+$"> <field name="SCHEDULE">0 0 * * 1</field> <statement name="STATEMENT"> <block type="control" id="t0cN(g{+b8)OJ-/00/~|"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hm-rega.0.31101</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="):/cfCdq~Md|vN,`/o0|"> <field name="ATTR">val</field> <field name="OID">hm-rega.0.30966</field> </block> </value> <next> <block type="control" id=".l7{U_lCbkh?eh[J76.L"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hm-rega.0.30966</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="NQ{Xt.0IXvoF}I^AtomT"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> <block type="comment" id="L0xCte;w,mCtr5``[I6d" x="-812" y="-112"> <field name="COMMENT">reset Monatserster um 0:00</field> <next> <block type="schedule" id="ZJuIT}CXu@.%G_,asO#;"> <field name="SCHEDULE">0 0 1 * *</field> <statement name="STATEMENT"> <block type="control" id="e4CSH~@KH=*]lpuxtu=H"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hm-rega.0.31102</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="vd_9A0Lx!_;e=Z^9V))G"> <field name="ATTR">val</field> <field name="OID">hm-rega.0.30967</field> </block> </value> <next> <block type="control" id="Q+iLqKVdxopT4]nO6QAy"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hm-rega.0.30967</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="WcF0pJahHrFD!v-d+zv("> <field name="NUM">0</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> <block type="comment" id="oHR,JG*z8K2lOHmdJgUI" x="-1712" y="113"> <field name="COMMENT">reset Jahr</field> <next> <block type="schedule" id="#CJ#r$^ohJ=^7![RC?r["> <field name="SCHEDULE">0 0 1 1 *</field> <statement name="STATEMENT"> <block type="control" id="Yd{OxT;_R~B9P,Psmp5V"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hm-rega.0.31103</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="UYH]mq6ma|o#0tn5lU*9"> <field name="ATTR">val</field> <field name="OID">hm-rega.0.30968</field> </block> </value> <next> <block type="control" id="RjxS0F1e!{}R=?k0u5hu"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hm-rega.0.30968</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="Gv+;Fb{zqvo$M?Mv;DML"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> </xml>
-
@pfried
Danke dir, ich schau mir das mal an.
Die in deinen Blockly-Daten angelegten hm-rega Werte würde ich dann wie die im Bild umbenennen und anlegen.
Denke ich könnte da so einiges übernehmen wenn ich darf.
LG
Horst -
@hasont Sicher, dazu gibt es ja eine Community!
-
@pfried
Habs mal angepasst installiert, danke dir.
Mal sehen ob ich dann SourceAnalytics bei mir deinstalliere.
SourceAnalytics ist ja schon sehr mächtig und mit deinem Blockly könnte man bei Bedarf auch mal von Hand nachbessern.
Bei mir läuft über SourceAnalytics nur Gas-, Wasser- und Gartenwasserzähler
Hab das Blockly inkl. der Datenanlage ohne HomeMatic mal beigefügt.
Muss aber erst noch getestet werden ob alles richtig ist und läuft.Danke natürlich auch an JomJol für das neue Update
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="fb%^b%(.P(De7B%I+^fp">Wasserverbrauch_alt_speichern</variable> <variable id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</variable> </variables> <block type="procedures_defcustomnoreturn" id="9J$a1]{I0b8Tky$a[.EJ" x="-1712" y="-1537"> <mutation statements="false"></mutation> <field name="NAME">Felder anlegen</field> <field name="SCRIPT">Y3JlYXRlU3RhdGUoJ2phdmFzY3JpcHQuMC5XYXNzZXJ6YWVobGVyJywge25hbWU6ICJXYXNzZXJ6YWVobGVyIn0pOw0KY3JlYXRlU3RhdGUoJ2phdmFzY3JpcHQuMC5XYXNzZXJ6YWVobGVyLldhc3NlcnphZWhsZXJfYWx0Jywge25hbWU6ICJXYXNzZXJ6YWVobGVyX2FsdCJ9KTsNCmNyZWF0ZVN0YXRlKCdqYXZhc2NyaXB0LjAuV2Fzc2VyemFlaGxlci5XYXNzZXJ6YWVobGVyX2FrdHVlbGwnLCB7bmFtZTogIldhc3NlcnphZWhsZXJfYWt0dWVsbCJ9KTsNCmNyZWF0ZVN0YXRlKCdqYXZhc2NyaXB0LjAuV2Fzc2VyemFlaGxlci5XYXNzZXJ6YWVobGVyX2dlcmVjaG5ldCcsIHtuYW1lOiAiV2Fzc2VyemFlaGxlcl9nZXJlY2huZXQifSk7DQpjcmVhdGVTdGF0ZSgnamF2YXNjcmlwdC4wLldhc3NlcnphZWhsZXIuV2Fzc2VyemFlaGxlcl81bWluJywge25hbWU6ICJXYXNzZXJ6YWVobGVyXzVtaW4ifSk7DQpjcmVhdGVTdGF0ZSgnamF2YXNjcmlwdC4wLldhc3NlcnphZWhsZXIuV2Fzc2VyemFlaGxlcl9IZXV0ZScsIHtuYW1lOiAiV2Fzc2VyemFlaGxlcl9IZXV0ZSJ9KTsNCmNyZWF0ZVN0YXRlKCdqYXZhc2NyaXB0LjAuV2Fzc2VyemFlaGxlci5XYXNzZXJ6YWVobGVyX1dvY2hlJywge25hbWU6ICJXYXNzZXJ6YWVobGVyX1dvY2hlIn0pOw0KY3JlYXRlU3RhdGUoJ2phdmFzY3JpcHQuMC5XYXNzZXJ6YWVobGVyLldhc3NlcnphZWhsZXJfTW9uYXQnLCB7bmFtZTogIldhc3NlcnphZWhsZXJfTW9uYXQifSk7DQpjcmVhdGVTdGF0ZSgnamF2YXNjcmlwdC4wLldhc3NlcnphZWhsZXIuV2Fzc2VyemFlaGxlcl9KYWhyJywge25hbWU6ICJXYXNzZXJ6YWVobGVyX0phaHIifSk7DQpjcmVhdGVTdGF0ZSgnamF2YXNjcmlwdC4wLldhc3NlcnphZWhsZXIuV2Fzc2VydmVyYnJhdWNoX0dlc3Rlcm4nLCB7bmFtZTogIldhc3NlcnZlcmJyYXVjaF9HZXN0ZXJuIn0pOw0KY3JlYXRlU3RhdGUoJ2phdmFzY3JpcHQuMC5XYXNzZXJ6YWVobGVyLldhc3NlcnZlcmJyYXVjaF9sZXR6dGVfV29jaGUnLCB7bmFtZTogIldhc3NlcnZlcmJyYXVjaF9sZXR6dGVfV29jaGUifSk7DQpjcmVhdGVTdGF0ZSgnamF2YXNjcmlwdC4wLldhc3NlcnphZWhsZXIuV2Fzc2VydmVyYnJhdWNoX2xldHp0ZXJfTW9uYXQnLCB7bmFtZTogIldhc3NlcnZlcmJyYXVjaF9sZXR6dGVyX01vbmF0In0pOw0KY3JlYXRlU3RhdGUoJ2phdmFzY3JpcHQuMC5XYXNzZXJ6YWVobGVyLldhc3NlcnZlcmJyYXVjaF9sZXR6dGVzX0phaHInLCB7bmFtZTogIldhc3NlcnZlcmJyYXVjaF9sZXR6dGVzX0phaHIifSk7</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="procedures_callcustomnoreturn" id="geg;!c-MHma4J;I-!F?z" x="-1712" y="-1512"> <mutation name="Felder anlegen"></mutation> </block> <block type="comment" id="nZLIgu,pmh4[2*$0MI%?" x="-1713" y="-1387"> <field name="COMMENT">Einlesen des neuen MQTT Wertes </field> <next> <block type="on_ext" id="4Psx1wuqrX65nv_lkDB}"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="3Q)hsz!uvKk?{unC*,0E"> <field name="oid">mqtt.0.wasserzaehler.zaehlerstand</field> </shadow> </value> <statement name="STATEMENT"> <block type="variables_set" id="wR=JtsBFCJou1i6LdCw~"> <field name="VAR" id="fb%^b%(.P(De7B%I+^fp">Wasserverbrauch_alt_speichern</field> <value name="VALUE"> <block type="get_value" id="pL9_YEK1IWWA6.!#W)bd"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_alt</field> </block> </value> <next> <block type="control" id="6DzKEv?-~d]3U=;Btcop"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_alt</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="o5`@Rv8Ul:#hrNuvl,2|"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_aktuell</field> </block> </value> <next> <block type="control" id="}]Q8$qsGmL/BOYA_~4FM"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_aktuell</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="Pih,sstkIbC`EncyUqge"> <field name="ATTR">val</field> <field name="OID">mqtt.0.wasserzaehler.zaehlerstand</field> </block> </value> <next> <block type="controls_if" id="[)h5!Wt?#u]$;DJ*fSen"> <value name="IF0"> <block type="logic_compare" id="}I^P3N/ka`dJ[#)ravN7"> <field name="OP">NEQ</field> <value name="A"> <block type="variables_get" id="yiT6k|}2%QxC5Ip2;7;^"> <field name="VAR" id="fb%^b%(.P(De7B%I+^fp">Wasserverbrauch_alt_speichern</field> </block> </value> <value name="B"> <block type="get_value" id="UX+:bzMd8g/f6b{dN+lx"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_aktuell</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="z)/Gd*s9,-W6[D752=D?"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> <value name="VALUE"> <block type="math_arithmetic" id="xt-H^j-:43Irbg7Fhml("> <field name="OP">MINUS</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="X_rWlPD~o/J^KhVZi%6o"> <field name="NUM">1</field> </shadow> <block type="get_value" id="A4Sx?OtCp2T?h#I(031U"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_aktuell</field> </block> </value> <value name="B"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="+qND:7;^kTj.azwuZHHi"> <field name="NUM">1</field> </shadow> <block type="get_value" id="@R6Vro4Waf_mK|.+!]^0"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_alt</field> </block> </value> </block> </value> <next> <block type="controls_if" id="8K}#}[Fk:%g~F#3)+NAF"> <value name="IF0"> <block type="logic_operation" id="lR$k8X3;ySVntotf-vFz"> <field name="OP">OR</field> <value name="A"> <block type="logic_compare" id="q0zW=|U!.1,jkAy[X!b$"> <field name="OP">LTE</field> <value name="A"> <block type="variables_get" id="Hnk,pbHq`B?Nb}~w$=$H"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <block type="math_number" id="7E.:+JU.a]LF)/p!,#;*"> <field name="NUM">30</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="6Ig?RU}s(dFcicEuhcm0"> <field name="OP">GTE</field> <value name="A"> <block type="variables_get" id="jcdb+L_Z#8kmj7e(cq:1"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <block type="math_number" id="9=%(A.)%}-%Ym9CUISV^"> <field name="NUM">120</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="CDT0?0zH4r9GW/H*Y2$f"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_gerechnet</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="*aA/fh;#]Di_eXq6nL,^"> <field name="n">4</field> <value name="x"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="a?I?-VQtRV1uduc!*;@I"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="XGWua76GS6aHpO3imk]l"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Tq{Zc)v77pwV^ctJd{|J"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="|~8@Y)]z.lKE{$Sr]Phs"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <shadow type="math_number" id="@6AZ4Y}v+0qS8p%_qu{H"> <field name="NUM">1000</field> </shadow> </value> </block> </value> </block> </value> <next> <block type="control" id="0(_/h8O2,M[gEb`Ic4=2"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Heute</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="A_V2Dl3Tco*!@[~Lr1n~"> <field name="n">4</field> <value name="x"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="a?I?-VQtRV1uduc!*;@I"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="XY5vn6~5Da?Zt0namcfQ"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="TlPoMg6n6S:en?y89?T4"> <field name="NUM">1</field> </shadow> <block type="get_value" id="Il/T*4`06v:{m@*OFmkc"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Heute</field> </block> </value> <value name="B"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="%8A!l4mo_0a=h,ezfnVP"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="lKu:^o1-H]d/0,7P%Ipo"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Tq{Zc)v77pwV^ctJd{|J"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="XB}ackBd~?1d)cTC#bwV"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <shadow type="math_number" id="RP9x3%P{}.7k42Qpi5y;"> <field name="NUM">1000</field> </shadow> </value> </block> </value> </block> </value> </block> </value> <next> <block type="control" id="5fng!*j2(M,$$,YwlLHx"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_5min</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="-3@,nGkZ]@$FU1Ry}%PA"> <field name="n">4</field> <value name="x"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="a?I?-VQtRV1uduc!*;@I"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="(E?id-LI#NfEL|Jt:.vZ"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="TlPoMg6n6S:en?y89?T4"> <field name="NUM">1</field> </shadow> <block type="get_value" id="0E2;EjD-PBt:GCDwPU~H"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_5min</field> </block> </value> <value name="B"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="%8A!l4mo_0a=h,ezfnVP"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="G9U[WP2t4_f8T+_0LGXB"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Tq{Zc)v77pwV^ctJd{|J"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="34;qZzQ3Z+JnD{P-NYW:"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <shadow type="math_number" id="G:AdLWj}|(?]]ENs(!55"> <field name="NUM">1000</field> </shadow> </value> </block> </value> </block> </value> </block> </value> <next> <block type="control" id="oBT%X]5xBNnY,5AICE3X"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Woche</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id=",P%Ylnd^*u1LkcG9X]:W"> <field name="n">4</field> <value name="x"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="a?I?-VQtRV1uduc!*;@I"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="|(*+rA~Ej?$2*?ityV)U"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="TlPoMg6n6S:en?y89?T4"> <field name="NUM">1</field> </shadow> <block type="get_value" id="]ziDJBvg89Wq:.R;J:!,"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Woche</field> </block> </value> <value name="B"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="%8A!l4mo_0a=h,ezfnVP"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="e.p_|Smt|,NX(RunG)gt"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Tq{Zc)v77pwV^ctJd{|J"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="P5_c8#OAPy=l^ASZ;$es"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <shadow type="math_number" id="YDm1,jv1{.k2e(?8V)(|"> <field name="NUM">1000</field> </shadow> </value> </block> </value> </block> </value> </block> </value> <next> <block type="control" id="R5$.Na4^BAFjW2ARqTxN"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Monat</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="e{,b!INUIeaJ}fkB8}m@"> <field name="n">4</field> <value name="x"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="a?I?-VQtRV1uduc!*;@I"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="!-w04:ct]D5r!DJQmLSW"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="TlPoMg6n6S:en?y89?T4"> <field name="NUM">1</field> </shadow> <block type="get_value" id="HgghGzkzow#w{s|+|+a:"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Monat</field> </block> </value> <value name="B"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="%8A!l4mo_0a=h,ezfnVP"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="nllQn,{7d8IO(@Lg3M:B"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Tq{Zc)v77pwV^ctJd{|J"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="MJ/ZuL+#^.3AQq~epH3J"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <shadow type="math_number" id="J^_v%Hn7gX*W7f[-+mgU"> <field name="NUM">1000</field> </shadow> </value> </block> </value> </block> </value> </block> </value> <next> <block type="control" id="=E[:Y4;({rV9PgxM??W#"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Jahr</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_rndfixed" id="pIPk0X$;_7l#cS6]J[a)"> <field name="n">4</field> <value name="x"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="a?I?-VQtRV1uduc!*;@I"> <field name="NUM">3.1234</field> </shadow> <block type="math_arithmetic" id="`:+j8dW)6S#f{T%Ai9u5"> <field name="OP">ADD</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="TlPoMg6n6S:en?y89?T4"> <field name="NUM">1</field> </shadow> <block type="get_value" id="vuDO5{C4d)Z4!.?z)/v."> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Jahr</field> </block> </value> <value name="B"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="P!TIMt7*.bBC#4%Idw8j"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="`,M`KPfi72=ir~XGyo;+"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow xmlns="http://www.w3.org/1999/xhtml" type="math_number" id="Tq{Zc)v77pwV^ctJd{|J"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="^v@w@K@=*~ET7Z1v-oO@"> <field name="VAR" id="S~g:}fW6Tm:Aw?GxUkaZ">Wasser gerechnet</field> </block> </value> <value name="B"> <shadow type="math_number" id="@~]Yp/KY$~_P8PTXoQKy"> <field name="NUM">1000</field> </shadow> </value> </block> </value> </block> </value> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> <block type="comment" id="$f;2YJblP5aT5TAGfFMx" x="-512" y="-1087"> <field name="COMMENT">Maximaler Durchfluss pro Sekunde x 30 Sekunden Abtastrate, 120 Liter Ziffernwechsel</field> </block> <block type="comment" id="qSxx=;Q,jlnWfNVxu*TC" x="-1712" y="-487"> <field name="COMMENT">reset heute</field> <next> <block type="schedule" id="v;%?AXWh:txx%4R+2:U,"> <field name="SCHEDULE">0 0 * * *</field> <statement name="STATEMENT"> <block type="control" id="+%wEpsL(Ww[z8Tfc-X$0"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserverbrauch_Gestern</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="2D{+Qa%pnz-R43!M3Fr0"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Heute</field> </block> </value> <next> <block type="control" id="o03K_LgrizESb@J0r`gL"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Heute</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="+|Dv5/%]/%.QIWBB+**C"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> <block type="comment" id="ox+@jzn`KXVwX.fOTB$," x="-812" y="-462"> <field name="COMMENT">Wasserverbrauch letzte 5 min zurücksetzen</field> <next> <block type="on_ext" id="j=c,w9.$Xq;DsB5^}pBB"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="}z+=RenMSy8(B@XhK@0K"> <field name="oid">javascript.0.Wasserzaehler.Wasserzaehler_5min</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="%|yEAWaJ*FP|KJ!T/+Y$"> <value name="IF0"> <block type="logic_compare" id="_EAAa*G$MT%4=Rg?[~bP"> <field name="OP">GT</field> <value name="A"> <block type="get_value" id="tZQSY0`YcA7JL[M$Ws@g"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_5min</field> </block> </value> <value name="B"> <block type="math_number" id="Pd*)$#q#9Ay-w#:cv1+7"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="lU:dL+CfL4WMPIg8M38w"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_5min</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">5</field> <field name="UNIT">min</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="math_number" id="sH;+ugos5JXLrj_4BfDg"> <field name="NUM">0</field> </block> </value> </block> </statement> </block> </statement> </block> </next> </block> <block type="comment" id="f}lW@jf:=d$f0yptTr$b" x="-1712" y="-137"> <field name="COMMENT">reset Woche</field> <next> <block type="schedule" id="CS=RSPfa:iN5AMzgx~+$"> <field name="SCHEDULE">0 0 * * 1</field> <statement name="STATEMENT"> <block type="control" id="t0cN(g{+b8)OJ-/00/~|"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserverbrauch_letzte_Woche</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="):/cfCdq~Md|vN,`/o0|"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Woche</field> </block> </value> <next> <block type="control" id=".l7{U_lCbkh?eh[J76.L"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Woche</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="NQ{Xt.0IXvoF}I^AtomT"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> <block type="comment" id="L0xCte;w,mCtr5``[I6d" x="-812" y="-112"> <field name="COMMENT">reset Monatserster um 0:00</field> <next> <block type="schedule" id="ZJuIT}CXu@.%G_,asO#;"> <field name="SCHEDULE">0 0 1 * *</field> <statement name="STATEMENT"> <block type="control" id="e4CSH~@KH=*]lpuxtu=H"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserverbrauch_letzter_Monat</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="vd_9A0Lx!_;e=Z^9V))G"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Monat</field> </block> </value> <next> <block type="control" id="Q+iLqKVdxopT4]nO6QAy"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Monat</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="WcF0pJahHrFD!v-d+zv("> <field name="NUM">0</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> <block type="comment" id="oHR,JG*z8K2lOHmdJgUI" x="-1712" y="113"> <field name="COMMENT">reset Jahr</field> <next> <block type="schedule" id="#CJ#r$^ohJ=^7![RC?r["> <field name="SCHEDULE">0 0 1 1 *</field> <statement name="STATEMENT"> <block type="control" id="Yd{OxT;_R~B9P,Psmp5V"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserverbrauch_letztes_Jahr</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="UYH]mq6ma|o#0tn5lU*9"> <field name="ATTR">val</field> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Jahr</field> </block> </value> <next> <block type="control" id="RjxS0F1e!{}R=?k0u5hu"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Wasserzaehler.Wasserzaehler_Jahr</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="Gv+;Fb{zqvo$M?Mv;DML"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </statement> </block> </next> </block> </xml>
-
Ich habe mir ein Telegramm eingerichtet welches mir, sollte ein Fehler übermittelt werden, eine Nachricht sendet.
Ich erhalte merkwürdigerweise recht viele Meldung.Beispiel: Negative Rate - Returned old value - read value: 157.981 - raw value: 00157.981 - checked value: 157.981003
Der Raw Wert ist korrekt. Ich weiß nicht wo die 3 zusätzlichen Stellen wieder herkommen.Ebenso hier
Negative Rate - Returned old value - read value: 157.581 - raw value: 00157.581 - checked value: 157.580994
-
@jomjol Guten Morgen Josef, könntest Du bitte einmal den Algorithmus des MQTT: flow rate veröffentlichen. Ich bekomme diesen Wert nicht mit meinem bisherigen, über Blocky berechneten Werten, in Übereinstimmung. Weis aber nicht wo der Fehler liegt.... Liebe Grüße Paul
-
@pfried @jomjol
Hallo, nach dem Update gestern haben sich über Nacht beide Zähler vom WLAN getrennt.
Es wurden noch Bilder gemacht aber Connection Lost > auch direkt in der Fritzbox.
Nach Stromlosmachen läuft wieder alles.
Zum Thema Berechnung kann ich Paul zustimmen.
Angezeigter Wert z.B. 1,2l und der von dir berechnete Wert 0.00167Zum Thema WLAN melde ich mich sobald ich was rausgefunden habe.
LG
Horst -
Hallo, da mein Wasserzähler jetzt schon längere Zeit einwandfrei läuft, hätte ich evtl noch ein anderes Projekt.
Meint ihr der ESP könnte ohne weiteres Training die Ziffern auslesen: -
@coyote sagte in Wasserzähler - Version 2 - all-in-device:
Meint ihr der ESP könnte ohne weiteres Training die Ziffern auslesen:
wenn ich mir das Foto von dem digitalen wasserzähler vor ein paar Posts ansehe, müsste es unter einigen Voraussezungen passen.
- keine Reflexionen
- "irgendwie" das Bild weißer bekommen
- Referenzpunkte für die Kalibrierung des Fotos müssten existieren
Ist das Display beleuchtet, und daher so blau?
-
@homoran
Ja, Display ist beleuchtet.
Ich muss es mir mal genau anschauen, ob ich Referenzpunkte setzen könnte.
Eigentlich ist es Quatsch das zu machen, in dem Gerät um PH und Chlor zu messen, ist ja ein ESP verbaut und die Daten sind auch über eine App abrufbar.
Hätte sie eben gerne in iobroker, am einfachsten über MQTT, aber keine Ahnung wie ich da die Daten her bekomme.
Daher kam mir die Idee mit dem ESP32Cam -
@jomjol
Hallo, nun hat es scheinbar wieder zeitgleich beide Zähler erwischt. Muss Stromlos machen damit die wieder ins WLAN kommen. Die Fritzbox ist auf dem Stand 7.25 seit März!
Beide heißen im Netz "Watermeter"
Hatte die Version 6.7 drauf. Was hab ich seit gestern getan:
Ich hab nur die Config.ini mit den 2 neuen Parametern erweitert.
Sonst auf der SD Karte nichts geändert.
Dann hab ich die Firmware.bin und HTML.zip übers Web-Interface aufgespielt.
Ich kann sagen, dass beide von ca. 17:00 - 23:00 gestern gelaufen sind.
Heute morgen war das WLAN tot und seit 9:00 bis mind. 15:00 lief alles.
Jetzt beim nachsehen wieder WLAN weg aber Fotos werden gemacht.
Schalte das Log an!!LG
Horst -
@hasont Hallo Horst,
versuche doch testweise mal einem der beiden einen anderen Hostnamen zu geben, vielleicht bewirkt das schon etwas -
@michmein
Hallo Michael, hab mal Karte raus und da Stand in der WLAN.ini "gasmeter".
Komisch, in der Fritzbox 7590 stand bei beiden Zählern "watermeter".
Ich hab noch ne zweite Fritzbox 7490 und die wird im Mash nur eingeschaltet wenn ich im Dach arbeite.
Trotzdem hatte sich der Gaszähler im Keller heute Mittag mit dieser Fritzbox 7490 verbunden.
Auch gestern Abend hatte ich die 7490 an.
Hab jetzt beim Gaszähler auch das gateway in der WLAN.ini mit angegeben.
Mal sehen.LG Horst
-
@hasont vielleicht hat die fritzbox die Namen einfach mal gespeichert. Ich drücke dir die Daumen das du dem Phänomen auf die Schliche kommst!
-
@hasont Man muss auf der Firitzbox und bei den Repeatern aufpassen wenn ein SW Upgrade oder ein Reboot passiert (sieht man im LOG der Fritzbox). Es ist nämlich leider so, dass wenn der ESP das WLAN nicht findet, dass er sich dann einfach nicht mehr verbindet. Obwohl Josef mir versichert hat, dass die ESP ständig versuchen ins WLAN zu kommen konnte ich diese Sache (bei mir) replizieren. Habe bei dem Gasmeter und Wassermeter einen FritzRepeater. Wenn der Repeater z.B. ein SW Upgrade bekommt (das geht bei mir automatisch) verlieren beide ESPs das WLAN und ich muss beide ESPs vom Strom nehmen und so zu rebooten.
-
@pfried sagte in Wasserzähler - Version 2 - all-in-device:
@hasont Man muss auf der Firitzbox und bei den Repeatern aufpassen wenn ein SW Upgrade oder ein Reboot passiert (sieht man im LOG der Fritzbox). Es ist nämlich leider so, dass wenn der ESP das WLAN nicht findet, dass er sich dann einfach nicht mehr verbindet. Obwohl Josef mir versichert hat, dass die ESP ständig versuchen ins WLAN zu kommen konnte ich diese Sache (bei mir) replizieren. Habe bei dem Gasmeter und Wassermeter einen FritzRepeater. Wenn der Repeater z.B. ein SW Upgrade bekommt (das geht bei mir automatisch) verlieren beide ESPs das WLAN und ich muss beide ESPs vom Strom nehmen und so zu rebooten.
@pfried, @Hasont,
welche Version verwendet ihr? in der aktuellen Rolling ist der WLan-Code upgedated und der Reconnect funktioniert bei mir aktuell auch nicht. Bin gerade dran, dass zu testen. Bei den älternen Versionen habe ich in meinem Netz keine Problem - egal ob ich die FritzBox reboote oder nicht.
LG,
jomjol -
@pfried sagte in Wasserzähler - Version 2 - all-in-device:
@jomjol Guten Morgen Josef, könntest Du bitte einmal den Algorithmus des MQTT: flow rate veröffentlichen. Ich bekomme diesen Wert nicht mit meinem bisherigen, über Blocky berechneten Werten, in Übereinstimmung. Weis aber nicht wo der Fehler liegt.... Liebe Grüße Paul
Hier der Code:
double difference = difftime(currenttime, lastvalue); // in Sekunden difference /= 60; // in Minuten FlowRateAct = (Value - PreValue) / difference;
Du bist nicht der einzige, der eine Abweichung zu einer manuelle Berechnung findet. Ich habe ehrlich gesagt noch keine Zeit, das zu prüfen. Sag gerne Bescheid, wenn du den Fehler findest.
Danke und Gruß,
jomjol -
@jomjol Nachdem ich ein Update-Junkie bin bin ich auf v7.0.1
-
@pfried sagte in Wasserzähler - Version 2 - all-in-device:
@jomjol Nachdem ich ein Update-Junkie bin bin ich auf v7.0.1
in der neueste Rolling von heute Morgen behoben.