- Home
- Deutsch
- Skripten / Logik
- Blockly
- Überwachung programmieren (Mqtt-Gerät) ?
Überwachung programmieren (Mqtt-Gerät) ?
-
Hi
möchte euch bitten mir da zu helfen.
Es soll die Verbindung zum Gerät überwacht werden.
Smart Zähler per Mqtt Verunden, am Stromzähler der PV Anlage.
{"1.8.0":1329412,"2.8.0":112191923,"3.8.1":1171754,"4.8.1":5825866,"1.7.0":0,"2.7.0":779,"3.7.0":0,"4.7.0":210,"1.128.0":0}Überwachungsskript:
<xml xmlns="https://developers.google.com/blockly/xml">
<variables>
<variable id="BrQx4jB;k={w8|Lu7H">GridÜberwachungMerker</variable> </variables> <block type="comment" id="!O5*y@h_4{oH#[v35s7F" x="12" y="-212"> <field name="COMMENT">-------------Datenpunkte erzeugen-----------</field> <next> <block type="create" id="!HuCpXS@Er4zJUfKk7Z."> <field name="NAME">0_userdata.0.AMISFronius.11280</field> <value name="VALUE"> <block type="math_number" id="vpvqFMA%3YW}T},5Gwi/"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="S6twCn_r$MJpR,{(p[?J"> <field name="TEXT">{"name": "11.280","role": "","type": "number","desc": "Blockly erzeugt","unit": "","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field> </block> </value> <next> <block type="create" id="8j{IBw*;7JMTwD9SR49p"> <field name="NAME">0_userdata.0.AMISFronius.170</field> <value name="VALUE"> <block type="math_number" id="H3KR@Fi=O%.Tk?FL:s+F"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="G-Qm2eEOi$t6ZOk5Y.%T"> <field name="TEXT">{"name": "1.7.0","role": "","type": "number","desc": "Blockly erzeugt","unit": "W","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field> </block> </value> <next> <block type="create" id="GZD9U)C#QTPA-8.l@LBz"> <field name="NAME">0_userdata.0.AMISFronius.180</field> <value name="VALUE"> <block type="math_number" id="5m;z2}GW-5#PwUDe_lN("> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="zH(Q}J2UQ+k/cm1y{}cL"> <field name="TEXT">{"name": "1.8.0","role": "","type": "number","desc": "Blockly erzeugt","unit": "Wh","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field> </block> </value> <next> <block type="create" id="J;IaDKF*{
j]J,vTY}(o">
<field name="NAME">0_userdata.0.AMISFronius.270</field>
<value name="VALUE">
<block type="math_number" id="5m9K)eK)|dzSSAQ#eAl">
<field name="NUM">0</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="w}X}bl$nftPtXr7_O/w1">
<field name="TEXT">{"name": "2.7.0","role": "","type": "number","desc": "Blockly erzeugt","unit": "W","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="VwIOI)sFdf+M6tuCY},"> <field name="NAME">0_userdata.0.AMISFronius.280</field> <value name="VALUE"> <block type="math_number" id="^#g)/61S5_aH]DIg/#=p"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="gUv/KYl1gS,:ACHf2
}r">
<field name="TEXT">{"name": "2.8.0","role": "","type": "number","desc": "Blockly erzeugt","unit": "Wh","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="-^[poh=j1~Ny46ltc$H!">
<field name="NAME">0_userdata.0.AMISFronius.370</field>
<value name="VALUE">
<block type="math_number" id="P1Jq?WUP|!)YRg;]vG#x">
<field name="NUM">0</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="J0T-dp0GUw1TRLm5I5rp">
<field name="TEXT">{"name": "3.7.0","role": "","type": "number","desc": "Blockly erzeugt","unit": "var","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="M$}Ohe_bPNA_7m+0OiEM">
<field name="NAME">0_userdata.0.AMISFronius.381</field>
<value name="VALUE">
<block type="math_number" id="x}dcxrl$0$wMHL9/j)k">
<field name="NUM">0</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="Ri7)*SA=W;R+/w/hq$Pb">
<field name="TEXT">{"name": "3.8.1","role": "","type": "number","desc": "Blockly erzeugt","unit": "varh","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="ZXwHR;CKqcWFw828k?F"> <field name="NAME">0_userdata.0.AMISFronius.470</field> <value name="VALUE"> <block type="math_number" id="
3,i08U(eKJ!2nh9g|T"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="Ygy,?
zqasm.dRxEu7{9">
<field name="TEXT">{"name": "4.7.0","role": "","type": "number","desc": "Blockly erzeugt","unit": "var","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="r%KYf1.DD7O:3}UPw.{.">
<field name="NAME">0_userdata.0.AMISFronius.481</field>
<value name="VALUE">
<block type="math_number" id="k$c]1#[aTNaP!;zkge^"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="x,UtW8p%O|1+RG7xlP4!"> <field name="TEXT">{"name": "4.8.1","role": "","type": "number","desc": "Blockly erzeugt","unit": "varh","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field> </block> </value> <next> <block type="create" id="s0wKaBfJz-E-MR3v)A%{"> <field name="NAME">0_userdata.0.AMISFronius.PowerFronius</field> <value name="VALUE"> <block type="math_number" id="gLQqo,y[-y8z[h403efX"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="eItG-33
IfIi+buMTx1}">
<field name="TEXT">{"name": "PowerFronius","role": "","type": "number","desc": "Blockly erzeugt","unit": "W","min": -99999,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="lVbn$R0O2HDk2C$2]ew"> <field name="NAME">0_userdata.0.AMISFronius.PVPowerFronius</field> <value name="VALUE"> <block type="math_number" id="|J/h]lf7:H9$BwgczL=d"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="8ep8
uU8|5N1nn,d40i6">
<field name="TEXT">{"name": "PVPowerFronius","role": "","type": "number","desc": "Blockly erzeugt","unit": "W","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="Wj{{HiTssj%qMxVIKy+Y">
<field name="NAME">0_userdata.0.AMISFronius.PVÜberschussFronius</field>
<value name="VALUE">
<block type="math_number" id="cY8l^Q5XPHQ9:*7$^)([">
<field name="NUM">0</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="Ikbdk@,79+jU3Hxh=1Nk">
<field name="TEXT">{"name": "PVÜberschussFronius","role": "","type": "number","desc": "Blockly erzeugt","unit": "W","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="SL7[,atm!W,E7S[*qVn+">
<field name="NAME">0_userdata.0.AMISFronius.Grid_Caddy_Überwachung</field>
<value name="VALUE">
<block type="text" id="W7}pNe]jKQFmHD-E/55">
<field name="TEXT">false</field>
</block>
</value>
<value name="COMMON">
<block type="text" id=",p%ys)W7P@LUw@a=i77|">
<field name="TEXT">{"name": "Grid Caddy Überwachung","role": "","type": "boolean","read": true,"write": true,"desc": "Blockly erzeugt","def": false}</field>
</block>
</value>
<next>
<block type="create" id="~2#Bsvh+pYJYyih7jA#o">
<field name="NAME">0_userdata.0.AMISFronius.Verbrauch</field>
<value name="VALUE">
<block type="math_number" id="pLAXzV8HRg_dE~9Y0cG"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="FgGE%m|C^L)BKG0;sNFZ"> <field name="TEXT">{"name": "Verbrauch","role": "","type": "number","desc": "Blockly erzeugt","unit": "W","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field> </block> </value> <next> <block type="comment" id="X8[M[9%V$RJB8=JyN/V~"> <field name="COMMENT">--------Grid Überwachung-------------</field> <next> <block type="schedule" id="/s|2-R]TRMO+;A|0%Q0l"> <field name="SCHEDULE">* * * * * *</field> <statement name="STATEMENT"> <block type="variables_set" id="Gc;x6l6+JvYgxSM}7_Q["> <field name="VAR" id="BrQx4jB;k=_{w8
|Lu7H">GridÜberwachungMerker</field>
<value name="VALUE">
<block type="math_arithmetic" id="P-),PpHB5odHZj7Yh$y3">
<field name="OP">ADD</field>
<value name="A">
<shadow type="math_number" id="9Hszs/e/#{TtnZs!gg:Y">
<field name="NUM">1</field>
</shadow>
<block type="variables_get" id="@MUI]@?x5UiPDHvydHT">
<field name="VAR" id="BrQx4jB;k={w8|Lu7H">GridÜberwachungMerker</field> </block> </value> <value name="B"> <shadow type="math_number" id="+sm4MQrN)aPW$Tt(V3+;"> <field name="NUM">1</field> </shadow> </value> </block> </value> <next> <block type="controls_if" id="b}eu)RQ[KvK|)b$HvAby"> <value name="IF0"> <block type="logic_operation" id="HJ
VV8IX8SjFtCXpIjH{" inline="false">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="$(6a,sn{2c#1%?l$xMz?">
<field name="OP">GTE</field>
<value name="A">
<block type="variables_get" id="Wp|Ssv0ZC#2:Vq48bE!I">
<field name="VAR" id="BrQx4jB;k={w8|Lu7H">GridÜberwachungMerker</field> </block> </value> <value name="B"> <block type="math_number" id="qXjB.(1PWq%v9)gG:-E8"> <field name="NUM">60</field> </block> </value> </block> </value> <value name="B"> <block type="logic_negate" id="o[x-lt[*Lk[AK1QQQ+np"> <value name="BOOL"> <block type="get_value" id="Q5,6D7PCFwmhXP8*2b~U"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.AMISFronius.Grid_Caddy_Überwachung</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="debug" id="cdAPMbFWbCU2zqoY=9W$"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="{j,3Y2S/!)^A|n#$:IQx"> <field name="TEXT">GRID Caddy - ÜBERWACHUNG !! Emergency Stop.</field> </shadow> </value> <next> <block type="telegram" id="]+c_j+kq#L(:q,Qn#*-X"> <field name="INSTANCE">.0</field> <field name="LOG">warn</field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field> <value name="MESSAGE"> <shadow type="text" id=";()qJUE#t;i6DLLD)cx5"> <field name="TEXT">GRID Caddy - ÜBERWACHUNG !! Emergency Stop.</field> </shadow> </value> <next> <block type="control" id="B(GM_zfC1*!,ZtFzJMf9"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.AMISFronius.Grid_Caddy_Überwachung</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="/05]A@;;Gl[w]:cwoc_R"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="update" id="coN%sO+T[+(u7%Pf7*0b"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.AMISFronius.PowerFronius</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="*#!#nrKkUKreu5Vnq.fG"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="X:,Y(?}6MxOF+C=n)a}o"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.AMISFronius.PVPowerFronius</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="=_T4*X_q:sypFoW
7Oan">
<field name="NUM">0</field>
</block>
</value>
<next>
<block type="update" id="G/Po_XaGazaEWR-w-Q+">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">0_userdata.0.AMISFronius.PVÜberschussFronius</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="math_number" id="0Jf=O,3ZPY!Hu:c{eR(w">
<field name="NUM">0</field>
</block>
</value>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</statement>
<next>
<block type="on_ext" id="#xeCc]psk3ASFk91E%i"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="8"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="j5Ywa#anjKSfR3Qd.n1M"> <field name="oid">0_userdata.0.AMISFronius.170</field> </shadow> </value> <value name="OID1"> <shadow type="field_oid" id="kW2X]M:Wdm@Pi.y=jU@T"> <field name="oid">0_userdata.0.AMISFronius.270</field> </shadow> </value> <value name="OID2"> <shadow type="field_oid" id="e)1VpdY|NlAW6I}vt(q:"> <field name="oid">0_userdata.0.AMISFronius.180</field> </shadow> </value> <value name="OID3"> <shadow type="field_oid" id="yXrXtJv!wWK%pY[xo4J#"> <field name="oid">0_userdata.0.AMISFronius.280</field> </shadow> </value> <value name="OID4"> <shadow type="field_oid" id="HK?Gz0+]^o._tT.4r70U"> <field name="oid">0_userdata.0.AMISFronius.370</field> </shadow> </value> <value name="OID5"> <shadow type="field_oid" id="{C@MmU!jgU8kk)~fj[6E"> <field name="oid">0_userdata.0.AMISFronius.381</field> </shadow> </value> <value name="OID6"> <shadow type="field_oid" id="k*iAdCGLuvmdGjNCnn)x"> <field name="oid">0_userdata.0.AMISFronius.470</field> </shadow> </value> <value name="OID7"> <shadow type="field_oid" id="D%7PZy:g-sGR^WKfyb6^"> <field name="oid">0_userdata.0.AMISFronius.481</field> </shadow> </value> <statement name="STATEMENT"> <block type="variables_set" id="AR]8m6mIzpoE$y%;jwV4"> <field name="VAR" id="BrQx4jB;k=_{w8
|Lu7H">GridÜberwachungMerker</field>
<value name="VALUE">
<block type="math_number" id="8sUOk{J=BMH_.Cvu6Lc+">
<field name="NUM">0</field>
</block>
</value>
<next>
<block type="controls_if" id="op:K+:W+8IYDqdSfrCgD">
<value name="IF0">
<block type="get_value" id="uTLWdZKf6s.P6yM+io:U">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.AMISFronius.Grid_Caddy_Überwachung</field>
</block>
</value>
<statement name="DO0">
<block type="control" id="^(,{sC6@pWu_ner;N#4[">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">0_userdata.0.AMISFronius.Grid_Caddy_Überwachung</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="fc^!?Y/[7o/On2?Pq+["> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="debug" id="N{pn[|GruYgD2lOG4MI+"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="v8?jb.hF0gV
Gz=L~N[r">
<field name="TEXT">GRID Caddy - ÜBERWACHUNG !! Emergency Stop. -> aufgehoben</field>
</shadow>
</value>
<next>
<block type="telegram" id="n?#u#2M+8PX7w4UQSXd8">
<field name="INSTANCE">.0</field>
<field name="LOG">log</field>
<field name="SILENT">FALSE</field>
<field name="PARSEMODE">default</field>
<field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
<value name="MESSAGE">
<shadow type="text" id="LMzL1g%9Z+2;b%FAyN~]">
<field name="TEXT">GRID Caddy - ÜBERWACHUNG !! Emergency Stop. -> aufgehoben</field>
</shadow>
</value>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</statement>
<next>
<block type="comment" id="){ZW^w)ZVY;%p=k;P_4q">
<field name="COMMENT">--------Berechnungen-------------</field>
<next>
<block type="on_ext" id="aoFLaml@z+U_,V.H^(yN">
<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="^J!0(9|;hu)h^TZnKr"> <field name="oid">fronius.0.powerflow.P_PV</field> </shadow> </value> <statement name="STATEMENT"> <block type="update" id="~VkAuztOkQT^am.(DtuM"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.AMISFronius.PVPowerFronius</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="qAj3OvkponzKam_6,N!D"> <field name="ATTR">val</field> <field name="OID">fronius.0.powerflow.P_PV</field> </block> </value> </block> </statement> <next> <block type="on_ext" id="%YLMms;v)}v6ngzEMqQ#"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="Zt-ts[8?L7z#P+%]lT:d"> <field name="oid">0_userdata.0.AMISFronius.170</field> </shadow> </value> <value name="OID1"> <shadow type="field_oid" id="mP]MvPd1N]j;!hjWaM=:"> <field name="oid">0_userdata.0.AMISFronius.270</field> </shadow> </value> <statement name="STATEMENT"> <block type="update" id="N;~AdQb_gJ.n2@|.U)At"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.AMISFronius.PowerFronius</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="jpt1B?zXj:DC55DA([4:"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="5k0Ioo7QW0ya.aP(LTcH"> <field name="NUM">1</field> </shadow> <block type="get_value" id="|ew*tGO%,[i0#+Mc}^JI"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.AMISFronius.170</field> </block> </value> <value name="B"> <shadow type="math_number" id="y7z4B(h?b5yZfFV9Q|@z"> <field name="NUM">1</field> </shadow> <block type="get_value" id="e:(R]$ee![8^%4eu.5W0"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.AMISFronius.270</field> </block> </value> </block> </value> </block> </statement> <next> <block type="on_ext" id="xwjywFu75-DfW|1*1![O"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="txTG=_l=$)
!hv;=pf2"> <field name="oid">0_userdata.0.AMISFronius.PowerFronius</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="K]A{u+XY
M{Lm$/G(Ri">
<mutation else="1"></mutation>
<value name="IF0">
<block type="logic_compare" id="/EV6lbjYT-SVVz7%Ha$"> <field name="OP">LTE</field> <value name="A"> <block type="get_value" id="nEIL!;{#6IZ}hL(Ip3=M"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.AMISFronius.PowerFronius</field> </block> </value> <value name="B"> <block type="math_number" id="6NqDo7n^^o;ZUM]]s{K5"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="k75;YzOwn$P!7gv1nL5["> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.AMISFronius.PVÜberschussFronius</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="1X-WNmWLBq@cTO[h.2}-"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="fBC_6(gR{F)p|d:Odq2]"> <field name="NUM">1</field> </shadow> <block type="get_value" id="7tPiCf
(psJeYj6xDB="> <field name="ATTR">val</field> <field name="OID">0_userdata.0.AMISFronius.PowerFronius</field> </block> </value> <value name="B"> <shadow type="math_number" id="Jhsjve)QRT5zINSDAUlR"> <field name="NUM">-1</field> </shadow> </value> </block> </value> </block> </statement> <statement name="ELSE"> <block type="update" id="yCDUF
o~VvLekT~CHb7$">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">0_userdata.0.AMISFronius.PVÜberschussFronius</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="math_number" id=":m#arKmuoBrj1cJnK~N"> <field name="NUM">0</field> </block> </value> </block> </statement> </block> </statement> <next> <block type="comment" id="r6lhO|h)kh]#v9fN0yDU"> <field name="COMMENT">------------Verbrauch----------</field> <next> <block type="schedule" id="3gx0XvE):PR3]g:Gd!/e"> <field name="SCHEDULE">* * * * * *</field> <statement name="STATEMENT"> <block type="update" id="byuzZCC{?3ig.Wss|36."> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.AMISFronius.Verbrauch</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="]Fb=_:[-c@/O$T5P$S9S" inline="false"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="m_Pumc3c
%r3eSK]+oEB">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id="I}A9eM|3teDe:|0ckJn%">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.AMISFronius.PowerFronius</field>
</block>
</value>
<value name="B">
<shadow type="math_number" id="i~2Y8}ngdsLVrgv8PXN8">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id="hrsUtW:O[=KjoZ6K#DIG">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.AMISFronius.PVPowerFronius</field>
</block>
</value>
</block>
</value>
</block>
</statement>
</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>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</xml>
Auswertung bzw. Weitergabe an andere Blockly:
<xml xmlns="https://developers.google.com/blockly/xml">
<block type="comment" id="K[^T0mqr$6pJ:UzQvfL_" x="-2288" y="-1512">
<field name="COMMENT">deaktivieren</field>
<next>
<block type="schedule" id="wN.Z]41]D-rZ!-FO+(a">
<field name="SCHEDULE">* * * * </field>
<statement name="STATEMENT">
<block type="controls_if" id="}K?nmR@u~p?KFAUS$.kt">
<value name="IF0">
<block type="logic_operation" id="NfV)DJ(/^-1aR}W,5Y%P" inline="false">
<field name="OP">AND</field>
<value name="A">
<block type="logic_operation" id="6Es80Hxtdlz}50kZnw~" inline="false">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="C[P}Yj=dOjV~h?AUIo6B">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="{8|~|kWKzX=[#M?7M=|S">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.AMISFronius.Grid_Caddy_Überwachung</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="zPhpo0_H.,LdMlZ=uFF">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="xG$38iJs)RN}DX3VEEqz">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="Vc;#6qqvJ;Js:k||A18">
<field name="ATTR">val</field>
<field name="OID">fronius.0.info.connection</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="WRNg5/E74uR!swa34Wuc">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="+2B,hoASo(4fN8fITy(l">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="q+(7pUe3@$p6uSJ$(t39">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Zoe.EmergenyStop</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="g-O)0=#t#^+1,GG;A(l">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="control" id="6O!$zJQtxALp)#K}0Ip"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Zoe.EmergenyStop</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="z
WJUi~@eH@XrWZrrU|">
<field name="BOOL">FALSE</field>
</block>
</value>
<next>
<block type="telegram" id="v~]$)OcEv(IE!+55mRm7">
<field name="INSTANCE">.0</field>
<field name="LOG">warn</field>
<field name="SILENT">FALSE</field>
<field name="PARSEMODE">default</field>
<field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
<value name="MESSAGE">
<shadow type="text">
<field name="TEXT">PV - GRID ÜBERWACHUNG !! Emergency Stop.</field>
</shadow>
<block type="text" id="oDXh5HnQ$KxNiY_%xKF">
<field name="TEXT">PV - GRID ÜBERWACHUNG - deaktiviert</field>
</block>
</value>
</block>
</next>
</block>
</statement>
</block>
</statement>
</block>
</next>
</block>
<block type="comment" id="@4#Mkg$0m)-ezj=(.X8m" x="-1438" y="-1512">
<field name="COMMENT">--->> GRID</field>
<next>
<block type="on_ext" id="];OPob#qb~#F32L4}^:"> <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="?R9]{qe~!;hueaHz]fRT"> <field name="oid">0_userdata.0.AMISFronius.Grid_Caddy_Überwachung</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id=",fBow#RKbw],/SFuS=#j"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_compare" id="e}ff6|GZ%5q}L%lh(L$+"> <field name="OP">EQ</field> <value name="A"> <block type="on_source" id="ni:Ip^.16]N6ucNO{eGV"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="logic_boolean" id="OsNYFBf9nPr_=.izY?pV"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="*[h]RG5]Vh~uZ_J8;:IG"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Zoe.EmergenyStop</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="F$u4heNG
TznlH[W98k+">
<field name="BOOL">TRUE</field>
</block>
</value>
<next>
<block type="telegram" id=";#rg|W*[{I5bhQGw48pO">
<field name="INSTANCE">.0</field>
<field name="LOG">warn</field>
<field name="SILENT">FALSE</field>
<field name="PARSEMODE">default</field>
<field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
<value name="MESSAGE">
<shadow type="text" id="Edgsta?i|-%,BT.J].c"> <field name="TEXT">PV - GRID ÜBERWACHUNG !! Emergency Stop.</field> </shadow> <block type="text" id="p,-cCP85q(O/K9gaZ3Zs"> <field name="TEXT">PV - GRID ÜBERWACHUNG !! Emergency Stop.</field> </block> </value> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> <block type="comment" id="X0!gaw:K|{VDJ|eLn4V." x="-688" y="-1513"> <field name="COMMENT">--->> FRONIUS</field> <next> <block type="on_ext" id="M-nFjSx]Z@Vl(F09WLxk"> <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="vf~HCzj@c6(dI4KRcew~"> <field name="oid">fronius.0.info.connection</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id=".7nCKdAx0NP#mU|qW*zT"> <value name="IF0"> <block type="logic_compare" id="D_EGBhh~pbl?BGG@:D=#"> <field name="OP">EQ</field> <value name="A"> <block type="on_source" id="w*3y8f[SLT^jzf)V,v2f"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="logic_boolean" id="|,BcLGp*SW-{fP1D7?r!"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="controls_if" id="iFMuy+0$C@*a^iVa,o_5"> <value name="IF0"> <block type="logic_operation" id="UrtJ%{Md,3G4Dq]VOD31" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="[{:I!dhS{o;uO|!z=HQe"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="!up/]2E)=[q/][=Y4.+A"> <field name="ATTR">val</field> <field name="OID">kecontact.0.enableUser</field> </block> </value> <value name="B"> <block type="logic_boolean" id="!hWl7:
BUCsWq^:.^M]t">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="^la-mSw!~{H+S]O^tn97">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="KI%V(v]*7#knA2aVHO)J">
<field name="ATTR">val</field>
<field name="OID">javascript.0.Zoe.EmergenyStop</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="x1%}vjGz@fC,s4.NrS!"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="=eFI4?F7I6z.(0#zjwN5"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Zoe.EmergenyStop</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="WJn7B#yq*-@3G6u}L
)P">
<field name="BOOL">TRUE</field>
</block>
</value>
<next>
<block type="telegram" id="Pb|QNR9ruNjvcAj.2/p_">
<field name="INSTANCE">.0</field>
<field name="LOG">warn</field>
<field name="SILENT">FALSE</field>
<field name="PARSEMODE">default</field>
<field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
<value name="MESSAGE">
<shadow type="text" id="il(_Tea}8LQF$C{S`Mmf">
<field name="TEXT">PV - GRID ÜBERWACHUNG !! Emergency Stop.</field>
</shadow>
<block type="text" id="$rPGhb~4[PI86S}7J(fp">
<field name="TEXT">PV - FRONIUS ÜBERWACHUNG !! Emergency Stop.</field>
</block>
</value>
</block>
</next>
</block>
</statement>
</block>
</statement>
</block>
</statement>
</block>
</next>
</block>
</xml>
Es funktioniert zu 99%, aber das 1% mit Fehlauslösungen nervt.
Denke wenn keine Änderung vom Power kommt, löst mir das aus, aber das kann auch das Maximum vom PV-WR sein.
Ich möchte eine einfache Lösung, die ich auch zu 100% kapiere. Kein Java!
Danke! -
Step by Step, die Überwachung:
<xml xmlns="https://developers.google.com/blockly/xml">
<variables>
<variable id="BrQx4jB;k={w8|Lu7H">GridÜberwachungMerker</variable> </variables> <block type="comment" id="!O5*y@h_4{oH#[v35s7F" x="12" y="-212"> <field name="COMMENT">-------------Datenpunkte erzeugen-----------</field> <next> <block type="create" id="!HuCpXS@Er4zJUfKk7Z."> <field name="NAME">0_userdata.0.AMISFronius.11280</field> <value name="VALUE"> <block type="math_number" id="vpvqFMA%3YW}T},5Gwi/"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="S6twCn_r$MJpR,{(p[?J"> <field name="TEXT">{"name": "11.280","role": "","type": "number","desc": "Blockly erzeugt","unit": "","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field> </block> </value> <next> <block type="create" id="8j{IBw*;7JMTwD9SR49p"> <field name="NAME">0_userdata.0.AMISFronius.170</field> <value name="VALUE"> <block type="math_number" id="H3KR@Fi=O%.Tk?FL:s+F"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="G-Qm2eEOi$t6ZOk5Y.%T"> <field name="TEXT">{"name": "1.7.0","role": "","type": "number","desc": "Blockly erzeugt","unit": "W","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field> </block> </value> <next> <block type="create" id="GZD9U)C#QTPA-8.l@LBz"> <field name="NAME">0_userdata.0.AMISFronius.180</field> <value name="VALUE"> <block type="math_number" id="5m;z2}GW-5#PwUDe_lN("> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="zH(Q}J2UQ+k/cm1y{}cL"> <field name="TEXT">{"name": "1.8.0","role": "","type": "number","desc": "Blockly erzeugt","unit": "Wh","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field> </block> </value> <next> <block type="create" id="J;IaDKF*{
j]J,vTY}(o">
<field name="NAME">0_userdata.0.AMISFronius.270</field>
<value name="VALUE">
<block type="math_number" id="5m9K)eK)|dzSSAQ#eAl">
<field name="NUM">0</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="w}X}bl$nftPtXr7_O/w1">
<field name="TEXT">{"name": "2.7.0","role": "","type": "number","desc": "Blockly erzeugt","unit": "W","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="VwIOI)sFdf+M6tuCY},"> <field name="NAME">0_userdata.0.AMISFronius.280</field> <value name="VALUE"> <block type="math_number" id="^#g)/61S5_aH]DIg/#=p"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="gUv/KYl1gS,:ACHf2
}r">
<field name="TEXT">{"name": "2.8.0","role": "","type": "number","desc": "Blockly erzeugt","unit": "Wh","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="-^[poh=j1~Ny46ltc$H!">
<field name="NAME">0_userdata.0.AMISFronius.370</field>
<value name="VALUE">
<block type="math_number" id="P1Jq?WUP|!)YRg;]vG#x">
<field name="NUM">0</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="J0T-dp0GUw1TRLm5I5rp">
<field name="TEXT">{"name": "3.7.0","role": "","type": "number","desc": "Blockly erzeugt","unit": "var","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="M$}Ohe_bPNA_7m+0OiEM">
<field name="NAME">0_userdata.0.AMISFronius.381</field>
<value name="VALUE">
<block type="math_number" id="x}dcxrl$0$wMHL9/j)k">
<field name="NUM">0</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="Ri7)*SA=W;R+/w/hq$Pb">
<field name="TEXT">{"name": "3.8.1","role": "","type": "number","desc": "Blockly erzeugt","unit": "varh","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="ZXwHR;CKqcWFw828k?F"> <field name="NAME">0_userdata.0.AMISFronius.470</field> <value name="VALUE"> <block type="math_number" id="
3,i08U(eKJ!2nh9g|T"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="Ygy,?
zqasm.dRxEu7{9">
<field name="TEXT">{"name": "4.7.0","role": "","type": "number","desc": "Blockly erzeugt","unit": "var","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="r%KYf1.DD7O:3}UPw.{.">
<field name="NAME">0_userdata.0.AMISFronius.481</field>
<value name="VALUE">
<block type="math_number" id="k$c]1#[aTNaP!;zkge^"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="x,UtW8p%O|1+RG7xlP4!"> <field name="TEXT">{"name": "4.8.1","role": "","type": "number","desc": "Blockly erzeugt","unit": "varh","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field> </block> </value> <next> <block type="create" id="s0wKaBfJz-E-MR3v)A%{"> <field name="NAME">0_userdata.0.AMISFronius.PowerFronius</field> <value name="VALUE"> <block type="math_number" id="gLQqo,y[-y8z[h403efX"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="eItG-33
IfIi+buMTx1}">
<field name="TEXT">{"name": "PowerFronius","role": "","type": "number","desc": "Blockly erzeugt","unit": "W","min": -99999,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="lVbn$R0O2HDk2C$2]ew"> <field name="NAME">0_userdata.0.AMISFronius.PVPowerFronius</field> <value name="VALUE"> <block type="math_number" id="|J/h]lf7:H9$BwgczL=d"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="8ep8
uU8|5N1nn,d40i6">
<field name="TEXT">{"name": "PVPowerFronius","role": "","type": "number","desc": "Blockly erzeugt","unit": "W","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="Wj{{HiTssj%qMxVIKy+Y">
<field name="NAME">0_userdata.0.AMISFronius.PVÜberschussFronius</field>
<value name="VALUE">
<block type="math_number" id="cY8l^Q5XPHQ9:*7$^)([">
<field name="NUM">0</field>
</block>
</value>
<value name="COMMON">
<block type="text" id="Ikbdk@,79+jU3Hxh=1Nk">
<field name="TEXT">{"name": "PVÜberschussFronius","role": "","type": "number","desc": "Blockly erzeugt","unit": "W","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field>
</block>
</value>
<next>
<block type="create" id="SL7[,atm!W,E7S[*qVn+">
<field name="NAME">0_userdata.0.AMISFronius.Grid_Caddy_Überwachung</field>
<value name="VALUE">
<block type="text" id="W7}pNe]jKQFmHD-E/55">
<field name="TEXT">false</field>
</block>
</value>
<value name="COMMON">
<block type="text" id=",p%ys)W7P@LUw@a=i77|">
<field name="TEXT">{"name": "Grid Caddy Überwachung","role": "","type": "boolean","read": true,"write": true,"desc": "Blockly erzeugt","def": false}</field>
</block>
</value>
<next>
<block type="create" id="~2#Bsvh+pYJYyih7jA#o">
<field name="NAME">0_userdata.0.AMISFronius.Verbrauch</field>
<value name="VALUE">
<block type="math_number" id="pLAXzV8HRg_dE~9Y0cG"> <field name="NUM">0</field> </block> </value> <value name="COMMON"> <block type="text" id="FgGE%m|C^L)BKG0;sNFZ"> <field name="TEXT">{"name": "Verbrauch","role": "","type": "number","desc": "Blockly erzeugt","unit": "W","min": 0,"max": 99999,"def": 0,"read": true,"write": true}</field> </block> </value> <next> <block type="comment" id="X8[M[9%V$RJB8=JyN/V~"> <field name="COMMENT">--------Grid Überwachung-------------</field> <next> <block type="schedule" id="/s|2-R]TRMO+;A|0%Q0l"> <field name="SCHEDULE">* * * * * *</field> <statement name="STATEMENT"> <block type="variables_set" id="Gc;x6l6+JvYgxSM}7_Q["> <field name="VAR" id="BrQx4jB;k=_{w8
|Lu7H">GridÜberwachungMerker</field>
<value name="VALUE">
<block type="math_arithmetic" id="P-),PpHB5odHZj7Yh$y3">
<field name="OP">ADD</field>
<value name="A">
<shadow type="math_number" id="9Hszs/e/#{TtnZs!gg:Y">
<field name="NUM">1</field>
</shadow>
<block type="variables_get" id="@MUI]@?x5UiPDHvydHT">
<field name="VAR" id="BrQx4jB;k={w8|Lu7H">GridÜberwachungMerker</field> </block> </value> <value name="B"> <shadow type="math_number" id="+sm4MQrN)aPW$Tt(V3+;"> <field name="NUM">1</field> </shadow> </value> </block> </value> <next> <block type="controls_if" id="b}eu)RQ[KvK|)b$HvAby"> <value name="IF0"> <block type="logic_operation" id="HJ
VV8IX8SjFtCXpIjH{" inline="false">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="$(6a,sn{2c#1%?l$xMz?">
<field name="OP">GTE</field>
<value name="A">
<block type="variables_get" id="Wp|Ssv0ZC#2:Vq48bE!I">
<field name="VAR" id="BrQx4jB;k={w8|Lu7H">GridÜberwachungMerker</field> </block> </value> <value name="B"> <block type="math_number" id="qXjB.(1PWq%v9)gG:-E8"> <field name="NUM">60</field> </block> </value> </block> </value> <value name="B"> <block type="logic_negate" id="o[x-lt[*Lk[AK1QQQ+np"> <value name="BOOL"> <block type="get_value" id="Q5,6D7PCFwmhXP8*2b~U"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.AMISFronius.Grid_Caddy_Überwachung</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="debug" id="cdAPMbFWbCU2zqoY=9W$"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="{j,3Y2S/!)^A|n#$:IQx"> <field name="TEXT">GRID Caddy - ÜBERWACHUNG !! Emergency Stop.</field> </shadow> </value> <next> <block type="telegram" id="]+c_j+kq#L(:q,Qn#*-X"> <field name="INSTANCE">.0</field> <field name="LOG">warn</field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field> <value name="MESSAGE"> <shadow type="text" id=";()qJUE#t;i6DLLD)cx5"> <field name="TEXT">GRID Caddy - ÜBERWACHUNG !! Emergency Stop.</field> </shadow> </value> <next> <block type="control" id="B(GM_zfC1*!,ZtFzJMf9"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.AMISFronius.Grid_Caddy_Überwachung</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="/05]A@;;Gl[w]:cwoc_R"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="update" id="coN%sO+T[+(u7%Pf7*0b"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.AMISFronius.PowerFronius</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="*#!#nrKkUKreu5Vnq.fG"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="X:,Y(?}6MxOF+C=n)a}o"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.AMISFronius.PVPowerFronius</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="=_T4*X_q:sypFoW
7Oan">
<field name="NUM">0</field>
</block>
</value>
<next>
<block type="update" id="G/Po_XaGazaEWR-w-Q+">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">0_userdata.0.AMISFronius.PVÜberschussFronius</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="math_number" id="0Jf=O,3ZPY!Hu:c{eR(w">
<field name="NUM">0</field>
</block>
</value>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</statement>
<next>
<block type="on_ext" id="#xeCc]psk3ASFk91E%i"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="8"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="j5Ywa#anjKSfR3Qd.n1M"> <field name="oid">0_userdata.0.AMISFronius.170</field> </shadow> </value> <value name="OID1"> <shadow type="field_oid" id="kW2X]M:Wdm@Pi.y=jU@T"> <field name="oid">0_userdata.0.AMISFronius.270</field> </shadow> </value> <value name="OID2"> <shadow type="field_oid" id="e)1VpdY|NlAW6I}vt(q:"> <field name="oid">0_userdata.0.AMISFronius.180</field> </shadow> </value> <value name="OID3"> <shadow type="field_oid" id="yXrXtJv!wWK%pY[xo4J#"> <field name="oid">0_userdata.0.AMISFronius.280</field> </shadow> </value> <value name="OID4"> <shadow type="field_oid" id="HK?Gz0+]^o._tT.4r70U"> <field name="oid">0_userdata.0.AMISFronius.370</field> </shadow> </value> <value name="OID5"> <shadow type="field_oid" id="{C@MmU!jgU8kk)~fj[6E"> <field name="oid">0_userdata.0.AMISFronius.381</field> </shadow> </value> <value name="OID6"> <shadow type="field_oid" id="k*iAdCGLuvmdGjNCnn)x"> <field name="oid">0_userdata.0.AMISFronius.470</field> </shadow> </value> <value name="OID7"> <shadow type="field_oid" id="D%7PZy:g-sGR^WKfyb6^"> <field name="oid">0_userdata.0.AMISFronius.481</field> </shadow> </value> <statement name="STATEMENT"> <block type="variables_set" id="AR]8m6mIzpoE$y%;jwV4"> <field name="VAR" id="BrQx4jB;k=_{w8
|Lu7H">GridÜberwachungMerker</field>
<value name="VALUE">
<block type="math_number" id="8sUOk{J=BMH_.Cvu6Lc+">
<field name="NUM">0</field>
</block>
</value>
<next>
<block type="controls_if" id="op:K+:W+8IYDqdSfrCgD">
<value name="IF0">
<block type="get_value" id="uTLWdZKf6s.P6yM+io:U">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.AMISFronius.Grid_Caddy_Überwachung</field>
</block>
</value>
<statement name="DO0">
<block type="control" id="^(,{sC6@pWu_ner;N#4[">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">0_userdata.0.AMISFronius.Grid_Caddy_Überwachung</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="fc^!?Y/[7o/On2?Pq+["> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="debug" id="N{pn[|GruYgD2lOG4MI+"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="v8?jb.hF0gV
Gz=L~N[r">
<field name="TEXT">GRID Caddy - ÜBERWACHUNG !! Emergency Stop. -> aufgehoben</field>
</shadow>
</value>
<next>
<block type="telegram" id="n?#u#2M+8PX7w4UQSXd8">
<field name="INSTANCE">.0</field>
<field name="LOG">log</field>
<field name="SILENT">FALSE</field>
<field name="PARSEMODE">default</field>
<field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
<value name="MESSAGE">
<shadow type="text" id="LMzL1g%9Z+2;b%FAyN~]">
<field name="TEXT">GRID Caddy - ÜBERWACHUNG !! Emergency Stop. -> aufgehoben</field>
</shadow>
</value>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</statement>
<next>
<block type="comment" id="){ZW^w)ZVY;%p=k;P_4q">
<field name="COMMENT">--------Berechnungen-------------</field>
<next>
<block type="on_ext" id="aoFLaml@z+U_,V.H^(yN">
<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="^J!0(9|;hu)h^TZnKr"> <field name="oid">fronius.0.powerflow.P_PV</field> </shadow> </value> <statement name="STATEMENT"> <block type="update" id="~VkAuztOkQT^am.(DtuM"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.AMISFronius.PVPowerFronius</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="get_value" id="qAj3OvkponzKam_6,N!D"> <field name="ATTR">val</field> <field name="OID">fronius.0.powerflow.P_PV</field> </block> </value> </block> </statement> <next> <block type="on_ext" id="%YLMms;v)}v6ngzEMqQ#"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="Zt-ts[8?L7z#P+%]lT:d"> <field name="oid">0_userdata.0.AMISFronius.170</field> </shadow> </value> <value name="OID1"> <shadow type="field_oid" id="mP]MvPd1N]j;!hjWaM=:"> <field name="oid">0_userdata.0.AMISFronius.270</field> </shadow> </value> <statement name="STATEMENT"> <block type="update" id="N;~AdQb_gJ.n2@|.U)At"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.AMISFronius.PowerFronius</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="jpt1B?zXj:DC55DA([4:"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="5k0Ioo7QW0ya.aP(LTcH"> <field name="NUM">1</field> </shadow> <block type="get_value" id="|ew*tGO%,[i0#+Mc}^JI"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.AMISFronius.170</field> </block> </value> <value name="B"> <shadow type="math_number" id="y7z4B(h?b5yZfFV9Q|@z"> <field name="NUM">1</field> </shadow> <block type="get_value" id="e:(R]$ee![8^%4eu.5W0"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.AMISFronius.270</field> </block> </value> </block> </value> </block> </statement> <next> <block type="on_ext" id="xwjywFu75-DfW|1*1![O"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="txTG=_l=$)
!hv;=pf2"> <field name="oid">0_userdata.0.AMISFronius.PowerFronius</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="K]A{u+XY
M{Lm$/G(Ri">
<mutation else="1"></mutation>
<value name="IF0">
<block type="logic_compare" id="/EV6lbjYT-SVVz7%Ha$"> <field name="OP">LTE</field> <value name="A"> <block type="get_value" id="nEIL!;{#6IZ}hL(Ip3=M"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.AMISFronius.PowerFronius</field> </block> </value> <value name="B"> <block type="math_number" id="6NqDo7n^^o;ZUM]]s{K5"> <field name="NUM">0</field> </block> </value> </block> </value> <statement name="DO0"> <block type="update" id="k75;YzOwn$P!7gv1nL5["> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.AMISFronius.PVÜberschussFronius</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="1X-WNmWLBq@cTO[h.2}-"> <field name="OP">MULTIPLY</field> <value name="A"> <shadow type="math_number" id="fBC_6(gR{F)p|d:Odq2]"> <field name="NUM">1</field> </shadow> <block type="get_value" id="7tPiCf
(psJeYj6xDB="> <field name="ATTR">val</field> <field name="OID">0_userdata.0.AMISFronius.PowerFronius</field> </block> </value> <value name="B"> <shadow type="math_number" id="Jhsjve)QRT5zINSDAUlR"> <field name="NUM">-1</field> </shadow> </value> </block> </value> </block> </statement> <statement name="ELSE"> <block type="update" id="yCDUF
o~VvLekT~CHb7$">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">0_userdata.0.AMISFronius.PVÜberschussFronius</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="math_number" id=":m#arKmuoBrj1cJnK~N"> <field name="NUM">0</field> </block> </value> </block> </statement> </block> </statement> <next> <block type="comment" id="r6lhO|h)kh]#v9fN0yDU"> <field name="COMMENT">------------Verbrauch----------</field> <next> <block type="schedule" id="3gx0XvE):PR3]g:Gd!/e"> <field name="SCHEDULE">* * * * * *</field> <statement name="STATEMENT"> <block type="update" id="byuzZCC{?3ig.Wss|36."> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.AMISFronius.Verbrauch</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_arithmetic" id="]Fb=_:[-c@/O$T5P$S9S" inline="false"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="m_Pumc3c
%r3eSK]+oEB">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id="I}A9eM|3teDe:|0ckJn%">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.AMISFronius.PowerFronius</field>
</block>
</value>
<value name="B">
<shadow type="math_number" id="i~2Y8}ngdsLVrgv8PXN8">
<field name="NUM">1</field>
</shadow>
<block type="get_value" id="hrsUtW:O[=KjoZ6K#DIG">
<field name="ATTR">val</field>
<field name="OID">0_userdata.0.AMISFronius.PVPowerFronius</field>
</block>
</value>
</block>
</value>
</block>
</statement>
</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>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</xml>
jede Sekunde wird ein Zähler aufgezogen, nach einer bestimmten Zeit 60s (mehr als genug), wird der Fehler erzeugt
der Zähler wird sobald sich ein Wert geändert hat wieder auf 0 gesetzt und der Überwachungsmerker ggf. gelöscht.
Alternativ fällt mir gerade ein, der Timestamp von der Mqtt Übertragung.