NEWS
Betriebsstundenzähler / Laufzeit / Start
-
Aber dein Bild aus Homematic ist doch von einem CUxD Gerät, welches sowieso die
Laufzeiten anzeigt. Warum dann das Ganze noch in iobroker? Liegt doch schon mehr oder weniger in HM vor. -
@lesiflo das stimmt... Aber nicht in echt zeit.,in HM wird die zeit nur angezeigt wenn die Heidi stopt. Durch mein Skript sehe ich immer wenn ich drauf gehe wie lange die Heidi aktuell schon läuft. Und bekomme als Vergleich die letzte Laufzeit angezeigt. Das war das was ich eigentlich bei mir wollte
-
@pupsi
Doch das ist schon in Echtzeit. Ich benutze das Ganze u.a. für die Steuerung meiner Poolpumpe. Schau dir doch ganz einfach mal in HM an wie sich die Zeiten ändern.[TIME_ON_1H]: Laufzeit innerhalb der letzen Stunde
[TIME_ON]: Zeit seit dem letzten Einschalten
[TIME_ON_SUM]: Heutige Laufzeit
[TIME_ON_24H]: Laufzeit in den letzten 24 Std -
Hallo, ich habe dein Blockly genutzt und etwas angepasst.
Danke für dein Script.
Jetzt sind nur noch 2 Datenpunkte anzupassen (im Script wird dann nur noch "Trigger_State" genutzt, und außerdem stehen h,m,s zur Verfügung.
Desweiteren ist jetzt auch ein Durchschnitt integriert.
(P.S. unnütze Variablen habe ich auch entfernt.)
Screenshot Blockly:
Screenshot Node-red Dashboard:
Stelle wo der Datenpunkt welcher "triggert" geändert wird:
<xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="" id="`._J%HrwB/s_.vuyh?N6">sek</variable> <variable type="undefined" id="Laufzeit_Aktuell_s">Laufzeit_Aktuell_s</variable> <variable type="" id="WTs)G/fB4r9Mv:`m+3OP">gesamt_sek</variable> <variable type="" id="5]288,z*1HXMf%~PfJp4">gesamt_schnitt_sek</variable> </variables> <block type="procedures_defcustomnoreturn" id="W-nXq2.wZ=32mxVz/7er" x="-812" y="-862"> <mutation statements="false"></mutation> <field name="NAME">Objekte_anlegen</field> <field name="SCRIPT">Y3JlYXRlU3RhdGUoJ1B1bXBlLldlcnRlLkFrdHVlbGxfcycsIDAsIHsgbmFtZTogJ0FrdHVlbGxfcycsIGRlc2M6ICdBa3R1ZWxsX3MnLCB0eXBlOiAnbWl4ZWQnLCB1bml0OiAncycsIG1pbjogJzAnLCBtYXg6ICc2MCcscmVhZDogdHJ1ZSwgd3JpdGU6IHRydWUgfSk7IA0KY3JlYXRlU3RhdGUoJ1B1bXBlLldlcnRlLkFrdHVlbGxfbScsIDAsIHsgbmFtZTogJ0FrdHVlbGxfbScsIGRlc2M6ICdBa3R1ZWxsX20nLCB0eXBlOiAnbWl4ZWQnLCB1bml0OiAnbScsIG1pbjogJzAnLCBtYXg6ICc2MCcscmVhZDogdHJ1ZSwgd3JpdGU6IHRydWUgfSk7IA0KY3JlYXRlU3RhdGUoJ1B1bXBlLldlcnRlLkFrdHVlbGxfaCcsIDAsIHsgbmFtZTogJ0FrdHVlbGxfaCcsIGRlc2M6ICdBa3R1ZWxsX2gnLCB0eXBlOiAnbWl4ZWQnLCB1bml0OiAnaCcsIG1pbjogJzAnLCBtYXg6ICcxMDAwMDAwJyxyZWFkOiB0cnVlLCB3cml0ZTogdHJ1ZSB9KTsgDQoNCmNyZWF0ZVN0YXRlKCdQdW1wZS5XZXJ0ZS5MZXR6dGVfTGF1ZnplaXRfcycsIDAsIHsgbmFtZTogJ0xldHp0ZV9MYXVmemVpdF9zJywgZGVzYzogJ0xldHp0ZV9MYXVmemVpdF9zJywgdHlwZTogJ21peGVkJywgdW5pdDogJ3MnLCBtaW46ICcwJywgbWF4OiAnNjAnLHJlYWQ6IHRydWUsIHdyaXRlOiB0cnVlIH0pOyANCmNyZWF0ZVN0YXRlKCdQdW1wZS5XZXJ0ZS5MZXR6dGVfTGF1ZnplaXRfbScsIDAsIHsgbmFtZTogJ0xldHp0ZV9MYXVmemVpdF9tJywgZGVzYzogJ0xldHp0ZV9MYXVmemVpdF9tJywgdHlwZTogJ21peGVkJywgdW5pdDogJ20nLCBtaW46ICcwJywgbWF4OiAnNjAnLHJlYWQ6IHRydWUsIHdyaXRlOiB0cnVlIH0pOyANCmNyZWF0ZVN0YXRlKCdQdW1wZS5XZXJ0ZS5MZXR6dGVfTGF1ZnplaXRfaCcsIDAsIHsgbmFtZTogJ0xldHp0ZV9MYXVmemVpdF9oJywgZGVzYzogJ0xldHp0ZV9MYXVmemVpdF9oJywgdHlwZTogJ21peGVkJywgdW5pdDogJ2gnLCBtaW46ICcwJywgbWF4OiAnMTAwMDAwMCcscmVhZDogdHJ1ZSwgd3JpdGU6IHRydWUgfSk7IA0KDQpjcmVhdGVTdGF0ZSgnUHVtcGUuV2VydGUuTGF1ZnplaXRfU3VtbWVfcycsIDAsIHsgbmFtZTogJ0xhdWZ6ZWl0X1N1bW1lX3MnLCBkZXNjOiAnU3VtbWVfcycsIHR5cGU6ICdtaXhlZCcsIHVuaXQ6ICdzJywgbWluOiAnMCcsIG1heDogJzYwJyxyZWFkOiB0cnVlLCB3cml0ZTogdHJ1ZSB9KTsgDQpjcmVhdGVTdGF0ZSgnUHVtcGUuV2VydGUuTGF1ZnplaXRfU3VtbWVfbScsIDAsIHsgbmFtZTogJ0xhdWZ6ZWl0X1N1bW1lX20nLCBkZXNjOiAnU3VtbWVfbScsIHR5cGU6ICdtaXhlZCcsIHVuaXQ6ICdtJywgbWluOiAnMCcsIG1heDogJzYwJyxyZWFkOiB0cnVlLCB3cml0ZTogdHJ1ZSB9KTsgDQpjcmVhdGVTdGF0ZSgnUHVtcGUuV2VydGUuTGF1ZnplaXRfU3VtbWVfaCcsIDAsIHsgbmFtZTogJ0xhdWZ6ZWl0X1N1bW1lX2gnLCBkZXNjOiAnU3VtbWVfaCcsIHR5cGU6ICdtaXhlZCcsIHVuaXQ6ICdoJywgbWluOiAnMCcsIG1heDogJzEwMDAwMDAnLHJlYWQ6IHRydWUsIHdyaXRlOiB0cnVlIH0pOyANCg0KY3JlYXRlU3RhdGUoJ1B1bXBlLldlcnRlLkR1cmNoc2Nobml0dF9zJywgMCwgeyBuYW1lOiAnRHVyY2hzY2huaXR0X3MnLCBkZXNjOiAnU2Nobml0dF9zJywgdHlwZTogJ21peGVkJywgdW5pdDogJ3MnLCBtaW46ICcwJywgbWF4OiAnNjAnLHJlYWQ6IHRydWUsIHdyaXRlOiB0cnVlIH0pOyANCmNyZWF0ZVN0YXRlKCdQdW1wZS5XZXJ0ZS5EdXJjaHNjaG5pdHRfbScsIDAsIHsgbmFtZTogJ0R1cmNoc2Nobml0dF9tJywgZGVzYzogJ1NjaG5pdHRfbScsIHR5cGU6ICdtaXhlZCcsIHVuaXQ6ICdtJywgbWluOiAnMCcsIG1heDogJzYwJyxyZWFkOiB0cnVlLCB3cml0ZTogdHJ1ZSB9KTsgDQpjcmVhdGVTdGF0ZSgnUHVtcGUuV2VydGUuRHVyY2hzY2huaXR0X2gnLCAwLCB7IG5hbWU6ICdEdXJjaHNjaG5pdHRfaCcsIGRlc2M6ICdTY2huaXR0X2gnLCB0eXBlOiAnbWl4ZWQnLCB1bml0OiAnaCcsIG1pbjogJzAnLCBtYXg6ICcxMDAwMDAwJyxyZWFkOiB0cnVlLCB3cml0ZTogdHJ1ZSB9KTsgDQoNCmNyZWF0ZVN0YXRlKCdQdW1wZS5XZXJ0ZS5BbnphaGxfU3RhcnRzJywgMCwgeyBuYW1lOiAnQW56YWhsX1N0YXJ0cycsIGRlc2M6ICdBbnphaGxfU3RhcnRzJywgdHlwZTogJ21peGVkJywgbWluOiAnMCcsIG1heDogJzEwMDAwMDAnLHJlYWQ6IHRydWUsIHdyaXRlOiB0cnVlIH0pOw0KDQoNCmNyZWF0ZVN0YXRlKCdQdW1wZS5SZXNldCcsIDAsIHsgbmFtZTogJ1Jlc2V0JywgZGVzYzogJ1Jlc2V0JywgdHlwZTogJ2Jvb2xlYW4nLCBkZWY6IGZhbHNlLCByZWFkOiB0cnVlLCB3cml0ZTogdHJ1ZSB9KTsgDQpjcmVhdGVTdGF0ZSgnUHVtcGUuVHJpZ2dlcl9TdGF0ZScsIDAsIHsgbmFtZTogJ1RyaWdnZXJfU3RhdGUnLCBkZXNjOiAnU3RhdGUnLCB0eXBlOiAnYm9vbGVhbicscmVhZDogdHJ1ZSwgd3JpdGU6IHRydWUgfSk7IA0K</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="on" id="mrzT0$K(*i}mn@!iz~-:" x="-412" y="-862"> <field name="OID">hm-rpc.0.QEQ1896053.1.STATE</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="update" id="j${Go*V+/]9nQEQb)Tan"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Trigger_State</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id=")I},{3{:g9~Tuy-=g(sE"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.QEQ1896053.1.STATE</field> </block> </value> <next> <block type="controls_if" id="A*{|)KbnzDg,]Rn*q?S["> <value name="IF0"> <block type="logic_compare" id="cxP7E:xk!O3/:)]{-_CA"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="?$}?^kRoZ7MLw{3Ved-F"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Trigger_State</field> </block> </value> <value name="B"> <block type="logic_boolean" id="_`mcB7p*P/[V//1~~HUw"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="^zfNT4I`+c;l.4SPrc)U"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Anzahl_Starts</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="a2CCbCXYG]s~,J9qN]ib"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="2.4zwts3h%uDHtL{]8H*"> <field name="NUM">1</field> </shadow> <block type="get_value" id="[0ut#Lx,?9IHBa~QKXlm"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Anzahl_Starts</field> </block> </value> <value name="B"> <shadow type="math_number" id="}?P0!jT=]9hNU{-xT{q/"> <field name="NUM">1</field> </shadow> </value> </block> </value> </block> </statement> </block> </next> </block> </statement> </block> <block type="procedures_callcustomnoreturn" id="HF#.W1f%#+x02SpI-*hb" x="-812" y="-812"> <mutation name="Objekte_anlegen"></mutation> </block> <block type="comment" id="%^j5-uBopS=8V9a*eIQ3" x="-262" y="-837"> <field name="COMMENT">Hier anpassen</field> </block> <block type="comment" id="VkGr5cUgwT?}d(txPKkf" x="-12" y="-787"> <field name="COMMENT">Hier anpassen</field> </block> <block type="comment" id="rtC,x~r%k~3IwH9+?anM" x="-837" y="-687"> <field name="COMMENT">Logik</field> <next> <block type="on_ext" id="%mv~N?|o[O{KJGWFDSIB"> <mutation items="1"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="RtrfDb=-#wtZrjE$FCHX"> <field name="oid">javascript.0.Pumpe.Trigger_State</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="jb^yk|8anDUd]jV8f-k!"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_compare" id="`iovX:O-vmVZr+dwf#W+"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="POi}N*Uw?T(}9gD-@ou$"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Trigger_State</field> </block> </value> <value name="B"> <block type="logic_boolean" id="R7Z~zD).!PPUx8xdhP^?"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="procedures_callnoreturn" id="6Y?^z|vm[[MOPNwV17__"> <mutation name="Func_Timer"></mutation> <next> <block type="debug" id="^3#h4tF;yAPRR{^.f.0S"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id=")K~XOh^S/bgd2p,o?!v%"> <field name="TEXT">Timer gestartet</field> </shadow> </value> </block> </next> </block> </statement> <statement name="ELSE"> <block type="timeouts_clearinterval" id="XhGFs7DmyY!NcyN0E~kt"> <field name="NAME">Laufzeit_Aktuell_s</field> <next> <block type="update" id="KY90+B/-c6=BaiMcgkZn"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Letzte_Laufzeit_s</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="k]g$b6bfo7S]l@h:6Cz="> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_s</field> </block> </value> <next> <block type="update" id="k5s1*6UKz@8qY2dF;d${"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Letzte_Laufzeit_m</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="B8*b__x^sFOFl-ysZr1D"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_m</field> </block> </value> <next> <block type="update" id="zH|J)@7DOsaX5u`sX|`#"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Letzte_Laufzeit_h</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="*hy5.yWr2^G]qiT^dIqS"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_h</field> </block> </value> <next> <block type="update" id="H_g)|16phhN71`H(FfVS"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_s</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="*mIO#E*!}!|Su1FI1)#9"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="c}e~mH.Hgml{M{jolpBG"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_m</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="Dbr|d{r%BtSpX%NWY|93"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="k2iQG|%IjQ`bI#b6v^sI"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_h</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="=9V9p*56%30IE.6#V9HO"> <field name="NUM">0</field> </block> </value> <next> <block type="debug" id="/+{*[kR*O^f9gT572CCp"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="iTT]MSB?LDC[RG5qZpw0"> <field name="TEXT">Timer gestoppt</field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> <block type="procedures_defnoreturn" id="Q9YfA6]Ded/p{|_o(0Kp" x="-37" y="-612"> <field name="NAME">Func_Timer</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="timeouts_setinterval" id="~WVUtN`I{IbtuL}^58k4"> <field name="NAME">Laufzeit_Aktuell_s</field> <field name="INTERVAL">1</field> <field name="UNIT">sec</field> <statement name="STATEMENT"> <block type="comment" id="8_duLr-.(aEikHKSr?gh"> <field name="COMMENT">Aktueller Zähler</field> <next> <block type="update" id=")v)?5CGQV#`0I)$W-}N+"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_s</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="v+Dqx;*+TdX4oUsrUFxd"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="2.4zwts3h%uDHtL{]8H*"> <field name="NUM">1</field> </shadow> <block type="get_value" id="lNkb)jISQP2_fqNyO9jH"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_s</field> </block> </value> <value name="B"> <shadow type="math_number" id="/6-TEs0ne!3+)JjBV])?"> <field name="NUM">1</field> </shadow> </value> </block> </value> <next> <block type="controls_if" id="v:RR]X_q[9RRNNL+qMca"> <value name="IF0"> <block type="logic_compare" id="r=^bXvfkpa9J@O.:S}NJ"> <field name="OP">GTE</field> <value name="A"> <block type="get_value" id="#70R^Hmq3k3LM1mp9Ns8"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_s</field> </block> </value> <value name="B"> <block type="math_number" id="N}y6/3hw_RLPB$f+{,:/"> <field name="NUM">59</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="/sag{UZ8!-M(pq)J5ZYD"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_m</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="R3g=Ny@xe+)D#4/#62Q("> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="2.4zwts3h%uDHtL{]8H*"> <field name="NUM">1</field> </shadow> <block type="get_value" id="^Ed;2/-$Wy,,E+vqO~z="> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_m</field> </block> </value> <value name="B"> <shadow type="math_number" id="1)O_%:_pImADbf#*k;yu"> <field name="NUM">1</field> </shadow> </value> </block> </value> <next> <block type="update" id="*((KC:`hMf@,ebW|EyD*"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_s</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="VU7,9uHv!/,9?mFd?/D+"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </statement> <next> <block type="controls_if" id="/c:FLWUC~sI|[Ptz255Z"> <value name="IF0"> <block type="logic_compare" id="bpAx84n/S8yFXl8o=oTG"> <field name="OP">GTE</field> <value name="A"> <block type="get_value" id="GLvLShC=oSo$%%dYg,v9"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_m</field> </block> </value> <value name="B"> <block type="math_number" id="uw9-!FTZ#V4$mGl`zeT^"> <field name="NUM">59</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="8Ax*H!e^{G,HwZm{`?L]"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_h</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="T!fB-3?DB%1isY++:##~"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="2.4zwts3h%uDHtL{]8H*"> <field name="NUM">1</field> </shadow> <block type="get_value" id="b/JqwbGnQ*4:u}5X3^iV"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_h</field> </block> </value> <value name="B"> <shadow type="math_number" id="C.{d~;2ejK.c/t1+]*b?"> <field name="NUM">1</field> </shadow> </value> </block> </value> <next> <block type="update" id="~@M$2,:@kDlUguZ9w^Kl"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_m</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="wpg7/%C1sy);Cko,J9fy"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </statement> <next> <block type="comment" id="k(fxQUp?GN%1S9v9%Qa:"> <field name="COMMENT">Summe Zähler</field> <next> <block type="update" id="^n~j*wboqPv})(U1:w}h"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_s</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="e0=QK]-v/.3XE7BniXNO"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="2.4zwts3h%uDHtL{]8H*"> <field name="NUM">1</field> </shadow> <block type="get_value" id="L2J`q[?$7eJ,}@%~5%%*"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_s</field> </block> </value> <value name="B"> <shadow type="math_number" id="9(dr=|bcAX_*I$Ndv}!3"> <field name="NUM">1</field> </shadow> </value> </block> </value> <next> <block type="controls_if" id="Ct2:lOu!pdOuE?xX-f$*"> <value name="IF0"> <block type="logic_compare" id="q`B!!Tjb8FO2_(eO|4s$"> <field name="OP">GTE</field> <value name="A"> <block type="get_value" id="8_,iZ:)tA^9Pz6d-Vrii"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_s</field> </block> </value> <value name="B"> <block type="math_number" id="W.d/mA~aNq;F)gNW_Z4C"> <field name="NUM">59</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="?m_[5Ne{;/!E-U%eLzRJ"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_m</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="m/F1W9d]iZ|)~])]G:/-"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="2.4zwts3h%uDHtL{]8H*"> <field name="NUM">1</field> </shadow> <block type="get_value" id=":y5YhPvv}?-fXPwc318o"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_m</field> </block> </value> <value name="B"> <shadow type="math_number" id="#aRbaqLZ}m|zzB(!SK+w"> <field name="NUM">1</field> </shadow> </value> </block> </value> <next> <block type="update" id="{z_7=mnFsj|@hm+7g,JG"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_s</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="Fub,U5u2[l6r-(Pp^J!f"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </statement> <next> <block type="controls_if" id="v-HDIq0.Kesq,nZd%UsG"> <value name="IF0"> <block type="logic_compare" id="(9PrCfgmC3M*i0+xvqE`"> <field name="OP">GTE</field> <value name="A"> <block type="get_value" id="y6z1|;VC;MHeyx{XOXqk"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_m</field> </block> </value> <value name="B"> <block type="math_number" id="UP^){TE?}qK_}cLQio%4"> <field name="NUM">59</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="z(?YCS1v6MdLoa]Hb/AT"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_h</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="k$`!I2_Eqiruy!muTLVs"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="2.4zwts3h%uDHtL{]8H*"> <field name="NUM">1</field> </shadow> <block type="get_value" id="r:mU8()v|ar|MP.(;F!y"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_h</field> </block> </value> <value name="B"> <shadow type="math_number" id="Mp#F0kxnMFo4H}*k4Sv4"> <field name="NUM">1</field> </shadow> </value> </block> </value> <next> <block type="update" id="=whO,B%EN(*bkp)u`Woq"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_m</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id=":y?:9I5=%X!))6-8zhQ)"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </statement> <next> <block type="comment" id="~Ju$q7Xgb?^Rw5E;U:ei"> <field name="COMMENT">Durchschnitt errechnen</field> <next> <block type="variables_set" id="~M}PIB`#cgtic|D]17WS"> <field name="VAR" id="WTs)G/fB4r9Mv:`m+3OP" variabletype="">gesamt_sek</field> <value name="VALUE"> <block type="math_number" id="iNANOi=9?%l5Zz)hjT9r"> <field name="NUM">0</field> </block> </value> <next> <block type="variables_set" id="BO{)IrDB]FZ[/A0WK0Vk"> <field name="VAR" id="WTs)G/fB4r9Mv:`m+3OP" variabletype="">gesamt_sek</field> <value name="VALUE"> <block type="math_arithmetic" id="D|/FCqyVulKHknu6M_*X"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="2.4zwts3h%uDHtL{]8H*"> <field name="NUM">1</field> </shadow> <block type="get_value" id="[]Wj9b*//!k[a8{*%R`z"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_h</field> </block> </value> <value name="B"> <shadow type="math_number" id="s2lFJ)I;J6a0qe@z3hCa"> <field name="NUM">3600</field> </shadow> </value> </block> </value> <next> <block type="math_change" id="ez#9WulX3)-{k)kzjf%k"> <field name="VAR" id="WTs)G/fB4r9Mv:`m+3OP" variabletype="">gesamt_sek</field> <value name="DELTA"> <shadow type="math_number" id="5D`89jsax92)ItK@rtme"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="ZU*zoE1`!cu-$2x#eAT_"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="2.4zwts3h%uDHtL{]8H*"> <field name="NUM">1</field> </shadow> <block type="get_value" id="}sxFF,tS0uF-]5lJ3u06"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_m</field> </block> </value> <value name="B"> <shadow type="math_number" id="H/OoK4#NW%:ZESsd%DW@"> <field name="NUM">60</field> </shadow> </value> </block> </value> <next> <block type="math_change" id="o-jh3@J,N`yyx`fK:nMb"> <field name="VAR" id="WTs)G/fB4r9Mv:`m+3OP" variabletype="">gesamt_sek</field> <value name="DELTA"> <shadow type="math_number" id="5D`89jsax92)ItK@rtme"> <field name="NUM">1</field> </shadow> <block type="get_value" id="=zaw%Tj,QjQ!m4FgCr{1"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_s</field> </block> </value> <next> <block type="variables_set" id="#/g*k_Sa!|::27K}Oswv"> <field name="VAR" id="5]288,z*1HXMf%~PfJp4" variabletype="">gesamt_schnitt_sek</field> <value name="VALUE"> <block type="math_arithmetic" id="Y.5yH8_lxVe:-2=6~a7D"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="2.4zwts3h%uDHtL{]8H*"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="r;#)Owv7{/1ggZDuJ4R4"> <field name="VAR" id="WTs)G/fB4r9Mv:`m+3OP" variabletype="">gesamt_sek</field> </block> </value> <value name="B"> <shadow type="math_number" id="{rQU6,sO@l4T;^}|LEEK"> <field name="NUM">3600</field> </shadow> <block type="get_value" id="k?1(FmPCLlG)m*h)f0j/"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Werte.Anzahl_Starts</field> </block> </value> </block> </value> <next> <block type="update" id="enjTc`WJpoQ0)gk]lx5H"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Durchschnitt_s</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="procedures_callcustomreturn" id="62Klb,:y])1pJ(Lj%~dY"> <mutation name="func_gesamt_s_zu_s"> <arg name="sek"></arg> </mutation> <value name="ARG0"> <block type="variables_get" id="-u$|K(36k0R`#;ZNo5#C"> <field name="VAR" id="5]288,z*1HXMf%~PfJp4" variabletype="">gesamt_schnitt_sek</field> </block> </value> </block> </value> <next> <block type="update" id="-ts%*aptg?8vXy.]DnwK"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Durchschnitt_m</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="procedures_callcustomreturn" id="3,3H4{85j1PBC*Ji+u3x"> <mutation name="func_gesamt_s_zu_m"> <arg name="sek"></arg> </mutation> <value name="ARG0"> <block type="variables_get" id="N0N9iw84C+dcGi`ojosy"> <field name="VAR" id="5]288,z*1HXMf%~PfJp4" variabletype="">gesamt_schnitt_sek</field> </block> </value> </block> </value> <next> <block type="update" id="Y|ODWg/F:arz@Mr_DDS$"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Durchschnitt_h</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="procedures_callcustomreturn" id="V*XnYQEoHSHmJ8x4t654"> <mutation name="func_gesamt_s_zu_h"> <arg name="sek"></arg> </mutation> <value name="ARG0"> <block type="variables_get" id=":BP=O}wCLTc[{52sd9mK"> <field name="VAR" id="5]288,z*1HXMf%~PfJp4" variabletype="">gesamt_schnitt_sek</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> <block type="comment" id="ZqDn};jgez6!$_F1Vqos" x="-837" y="-37"> <field name="COMMENT">RESET Alle Zähler</field> <next> <block type="on_ext" id="]/@.4.5e,@L#kM:3{;vc"> <mutation items="1"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="p9-N0w{fIg:J/q?nKaqi"> <field name="oid">javascript.0.Pumpe.Reset</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="id]|AgZU|3Uku_V]y4(V"> <value name="IF0"> <block type="logic_compare" id=",2t8e=0=|@lCUvcs[4?X"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="bs%~ugm/x!|)$a9HLJ]7"> <field name="ATTR">val</field> <field name="OID">javascript.0.Pumpe.Reset</field> </block> </value> <value name="B"> <block type="logic_boolean" id="H0ByN9LiE[YR:=m:0!V-"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="/Di4!_.kVbFe5f(kg@/l"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_h</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="PUglxf#a=bB{/MsIcvuL"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id=")apYIhp4wszeo{D}],gz"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_m</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="iH(pTpz[RB2=QJUu;Y6D"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="(?S^;ByA!L7`kcV{N+#1"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Laufzeit_Summe_s</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="6./-!y81Yw)WC1811vJ*"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="p~|@bQ)5yOkfN3VmA^Di"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Anzahl_Starts</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="+iP*rHBo^6T;NWOnk[+!"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id=",0jT2$ko*M6QxwEKZ~q%"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_h</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="GeSr$Vkc~+k_S[058(D2"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="XAY!~pzLR~?YbY8q*Nv*"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_m</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="nr-mod+*oEr-rz%A/+|,"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="eBz5ZPFuwLONPf4zHZrH"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Aktuell_s</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="/eR#Se@[A-TxxoLIDD+Y"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="%H0GPQWSO@6E,vjxL#4Y"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Letzte_Laufzeit_h</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="~,qydQiq!k%6Y_z;X=vR"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="ejX~b]u@j0s_PA~Bg_6t"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Letzte_Laufzeit_m</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="i,;Z)-;0qDIAo{`b[8;A"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="[3x8:ZF8sHjR~,6#)}j5"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Letzte_Laufzeit_s</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="7Kq/t~Lzt%3d5F!8]Bje"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="02_sMkA]1gg@dYnj8FU@"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Durchschnitt_h</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="sG!06O/[J[a@eNe}a][W"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="H;41#!}l8F*8$g4/^eDT"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Durchschnitt_m</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="6cFF_!rVe{)I*?{^@yVS"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="/+e=bc|[2RrUrEyJzB~T"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Werte.Durchschnitt_s</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="?Fb8z{o6$}r$ucsng8-o"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="dfT;s/,.F-qjntgC+gW$"> <mutation delay_input="false"></mutation> <field name="OID">javascript.0.Pumpe.Reset</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="w1gy;Sx+`?BE-GKaFEKB"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> <block type="procedures_defcustomreturn" id="hk|~[`+!@2a1hH/A2i`." x="-87" y="563"> <mutation statements="false"> <arg name="sek" varid="`._J%HrwB/s_.vuyh?N6"></arg> </mutation> <field name="NAME">func_gesamt_s_zu_h</field> <field name="SCRIPT">ICAgIHZhciBzZWt1bmRlbiA9IHNlayU2MDsNCiAgICB2YXIgcmVzdF9taW4gPSBzZWslMzYwMCAtc2VrdW5kZW47DQogICAgdmFyIG1pbnV0ZW4gPSByZXN0X21pbi82MDsNCiAgICB2YXIgc3R1bmRlbiA9IChzZWsgLSByZXN0X21pbiAtIHNla3VuZGVuKS8zNjAwOw0KDQpyZXR1cm4gc3R1bmRlbjs=</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="procedures_defcustomreturn" id="QsH$QMFAkJxdsWpk^h;f" x="-87" y="588"> <mutation statements="false"> <arg name="sek" varid="`._J%HrwB/s_.vuyh?N6"></arg> </mutation> <field name="NAME">func_gesamt_s_zu_m</field> <field name="SCRIPT">ICAgIHZhciBzZWt1bmRlbiA9IHNlayU2MDsNCiAgICB2YXIgcmVzdF9taW4gPSBzZWslMzYwMCAtc2VrdW5kZW47DQogICAgdmFyIG1pbnV0ZW4gPSByZXN0X21pbi82MDsNCg0KcmV0dXJuIG1pbnV0ZW47</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="procedures_defcustomreturn" id="hnh!@5*[7@Pl/?YI^20l" x="-87" y="613"> <mutation statements="false"> <arg name="sek" varid="`._J%HrwB/s_.vuyh?N6"></arg> </mutation> <field name="NAME">func_gesamt_s_zu_s</field> <field name="SCRIPT">ICAgIHZhciBzZWt1bmRlbiA9IHNlayU2MDsNCnJldHVybiBzZWt1bmRlbi50b0ZpeGVkKDApOw==</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> </xml>
-
Super, wenn ich aber nicht Pumpe haben will sondern zB.: TV muss ich alles anpassen?
Und muss ich für jedes Gerät ein eigenes Blockly erstellen? -
@sigi234
Am besten und schnellsten geht das, wenn du den XML Code in einem Texteditor tust und Pumpe gegen "was auch immer" ersetzt dann importierst und erst jetzt deinen Datenpunkt welcher triggert anpasst. -
@kunigunde sagte in Betriebsstundenzähler / Laufzeit / Start:
@sigi234
Am besten und schnellsten geht das, wenn du den XML Code in einem Texteditor tust und Pumpe gegen "was auch immer" ersetzt dann importierst und erst jetzt deinen Datenpunkt welcher triggert anpasst.Jupp, aber pro Gerät ein Skript? Sehe ich das Richtig?
-
@sigi234
jupp -
@kunigunde sagte in Betriebsstundenzähler / Laufzeit / Start:
@sigi234
Am besten und schnellsten geht das, wenn du den XML Code in einem Texteditor tust und Pumpe gegen "was auch immer" ersetzt dann importierst und erst jetzt deinen Datenpunkt welcher triggert anpasst.Hallo @kunigunde , habe das mit dem ändern mal in einem Editor geändert (in Waschen)und anschließend das Script importiert. Komischerweise werden die Datenpunkte immer noch unter Javascript.0.Pumpe angelegt und nicht unter meinem, geänderten Namen. Hast du eine Idee, was ich noch zusätzlich ändern muss.
Baerny -
-
@sigi234
Danke funktioniert