NEWS
PV Strom Aufteilung
-
Es wird ein ZEV. Heisst, es wird eine offizielle über 4 Wohnungen und 1 Allgemein sowie über die PV Anlage geben. Mein Auftrag ist es, mit Hilfe weiterer Messungen heraus zu bekommen, wer wann wieviel PV bekommt.
Heisst: nur die Gesamtmessung kann einen negativen Wert aufweisen und nur bei Überschuss.
Wohnung und Allgemein werden nur beziehen können.
Daher die Formel.
Die Bezüger haben also einen gewissen Bedarf der sich zu jedem Zeitpunkt ändern kann. Genau gleich mit ist es bei der PV Produktion. -
@marco-willi sagte in PV Strom Aufteilung:
es wird eine offizielle über 4 Wohnungen und 1 Allgemein sowie über die PV Anlage geben.
das hab ich vermutet.
@marco-willi sagte in PV Strom Aufteilung:
Die Bezüger haben also einen gewissen Bedarf der sich zu jedem Zeitpunkt ändern kann.
das ist klar, aber erst der nächste Schritt, wenn die Basis stimmig ist.
@marco-willi sagte in PV Strom Aufteilung:
wer wann wieviel PV bekommt.
...um den anteiligen Solarstrom mit dem EVU Strom zu verrechnen.
Vielleicht habe ich dann den Denkfehler.
Wenn jemand 100% Solarstrom bekommt bezieht dieser (an dem Tag) nichts vom EVU.
Aber es bleibt mehr Solarstrom für die übrigen.
Die brauchen dann weniger vom EVU zu beziehen weil andere gespart haben.Irgendwie kommt mir das nicht richtig vor
-
Es stimmt schon. Die, die den grössten Verbrauch haben, sparen am meisten ein. Aus deiner Sicht ist das nicht unbedingt fair. Ich kenne deine Ansicht. Aber das Problem hat man ja immer bei einer Gemeinschaftsanlage. Am besten man speist alles ein und das Geld kommt in eine gemeinsame Kasse.
Wenn du aber weiter denkst, was passiert mit dieser Kasse? Wie wird das Geld darin aufgeteilt? Nach Wohnfläche? Wertquote? Nutzung
Wir finanzieren das Projekt nach Wertquote. Also werden einige deutlich mehr bezahlen als andere. Wie es der Zufall will, entspricht das auch in etwa der Nutzung. Also der, der am meisten Strom verbraucht profitiert auch am meisten/ das ist auch der, der am meisten bezahlt.
Abgerechnet wird zum gleichen Preis wie es die EVU macht.
Sofern mir jemand mit dem skript helfen kann, wären wir zumindest aber für die Zukunft gerüstet. Intern möchte ich die PV Energie dann verbilligt oder gar kostenlos, allenfalls sogar eine Mischrechnung anbieten.
Das ist dann aber der Schritt, den wir gehen, sobald die Anlage amortisiert ist.
Das Gebäude ist übrigends schon älter. Hier wirt alles durch die Wertquote aufgeteilt. Da kann ich nichts dran rütteln.Ja erst mal Dank, dass du mir zugehört (gelesen) hast. Sind doch lange Texte. Was sein muss, muss sein.
Wie sieht es aus. Kannst du mir behilflich sein, meine Formel um zu setzen?
Den Eigenbedarf kriege ich noch hin. Auch den Referenzwert habe ich hinbekommen.
Nacher wird es tricky. -
@marco-willi
nur kurz:
die "Kasse" wäre der negative Zählerstand.Aber noch mehr Gedanken dazu.
Zähler 1 bleibt unter dem Referenzwert.
Er gat nur seinen Braten 2h in der Röhre gehabt und 2kWh verbraucht.
Aber in dieser Zeit hat gar keine Sonne geschienen. Wie kann er dann Solarstrom verbraucht haben?Die ganze Sache kann beliebig komplex gestaltet werden.
Das könnte alles per Skripting lösbar sein.Aber das muss klar sein, bevor jemand bereit sein würde dir das zu entwickeln.
Ein ständiges: "Ach nee, sooo hatte ich das nicht gedacht, mach das mal anders" wird dir eohl niemand unterstützen. -
@homoran verständlich.
Also, es wird immer zuerst Produktion - Rücklieferung gerechnet. Somit weiss man immer was der Eigenverbrauch insgesammt ist. Wenn keine Produktion oder 0 minus Rücklieferung 0 = Eigenverbrauch 0 also auch Referenzwert 0. dann wird nichts aufgeteilt.
-
@marco-willi sagte: PV Produktion-Rücklieferung=Eigenbedarf
Mein Ansatz wäre:
- Leistungen zum Zähler zugeordnet in einer Liste zu erfassen
- Die Liste nach aufsteigender Leistung zu sortieren
- Aus der sortierten Liste die Leistungszuweisung zu ermitteln aus gemessener Leistung bzw. aus einem Restmittelwert, wenn die Leistung größer ist.
Inhalt der JS-Funktion sortObjectNum(arr, attr):
function sortAttr(a, b) { return parseFloat(a[attr]) - parseFloat(b[attr]); } arr.sort(sortAttr);
Ich habe vorausgesetzt, dass die gemessenen Leistungswerte in einer Struktur unter "alias.0" vorhanden sind und die zugewiesenen Leistungen unter "0_userdata.0" mit identischer Struktur.
Die zugewiesenen Leistungen müssen dann noch über die Zeit integriert werden. -
@marco-willi sagte: Shelly 3EM dafür benutzen werde und somit 2 Datenpunkte habe für Verbrauch und Rückspeisung.
Ich habe schon mehrfach gelesen, dass die Energiewerte im Shelly 3EM nicht saldierend ermittelt werden. Man muss also die Leistung (positiv bei Bezug, negativ bei Einspeisung) über die Zeit integrieren.
-
@paul53 uffff erschlagen von Bausteinen die ich noch nie genutzt habe. Hast dich brutal rein gehängt. Danke.
Muss ich erst mal nachbauen um zu verstehen, was wie wo geschieht. -
@marco-willi sagte: Beispiel:
Eigenbedarf 10 kW
Zähler 1 hat einen Bedarf von 6kW
Zähler 2 5kW
Zähler 3 1kW
Zähler 4 500W
Zähler 5 0WSchleifendurchläufe:
- Restmittel 2 kW, Restleistung 10 kW, Restanzahl 4
- Restmittel 2,5 kW, Restleistung 9,5 kW, Restanzahl 3
- Restmittel 3,17 kW, Restleistung 8,5 kW, Restanzahl 2
- Restmittel 4,25 kW, Restleistung 4,25 kW, Restanzahl 1
- Restmittel 4,25 kW, Restleistung 0, Restanzahl 0
-
Leider sind noch Fehler enthalten die ich verschlimmbessert habe und meine Bedingungen sind auch noch nicht alle erfüllt aber im Moment funktioniert es. Kannst du dir das mal anschauen?
Fehler habe ich noch bei Variablen, meinte ich und die fehlende Bedingung ist Produktion - Rücklieferung.Ich hoffe ich habe das jetzt richtig gepostet
-
@marco-willi sagte: Ich hoffe ich habe das jetzt richtig gepostet
Nein, Export-XML bitte hier in Code tags einfügen und bitte auch als Bild.
@marco-willi sagte in PV Strom Aufteilung:
fehlende Bedingung ist Produktion - Rücklieferung.
Die sollte im Trigger-Datenpunkt "PV Eigenbedarf" enthalten sein.
Die Leistungen sind alle in W? -
Xml tags ist das symbol </> oder? Zeigt mir an, dass der code zu lange ist. Die fehlende Bedingung war in meinem code und nicht in deinem gemeint.
Ja, die Datenpunkte sind alle in Watt. Ich nutze momentane Werte, keine Zählerstände. -
@marco-willi sagte: symbol </> oder? Zeigt mir an, dass der code zu lange ist.
Wirklich? Mein Export in Code tags (Symbol </>):
-
@marco-willi sagte in PV Strom Aufteilung:
meine Bedingungen sind auch noch nicht alle erfüllt
was für Bedingungen hast du dem Programmierer denn gestellt?
-
so, jetzt am computer. Das mit den Bildern wird aber noch schwierig. Kenn den Computer so gar nicht... bin ein neuer Mac User. Sorry
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="dTTm]Y;f*9fW4IR]M3nv">zaehler</variable> <variable id="tf?~U:?IZv!S/0cEDw*M">verbrauch</variable> <variable id="Am?{@M!fHmePD.l=^yFu">ZählerNummer_</variable> <variable id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</variable> <variable id="jz(WYo2RH^XV%P$8`cAz">rest ab 2te</variable> <variable id="$0Z58`kKviMG[zyjoa$3">rest ab 3te</variable> <variable id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</variable> <variable id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</variable> <variable id="PY}*+`j;}H}^Lm+C9N$n">1_5 Teil</variable> <variable id="9Xtnev|xAV30$qnZw.?W">Wert_1ste</variable> <variable id="s}`NhkS#bbbkKnhEvlh}">Wert_2te</variable> <variable id="1F^o@YN[2g~LM-V]o$b!">Wert_4te</variable> <variable id="LvJdi,HZcN8CJ5(TUGN?">Wert_5te</variable> <variable id=";UV.oZ3B2@*-Y0JW8g|U">Wert_3te</variable> <variable id="2RGq,EZh=7ChG@rYK.*W">Gesamtbezug</variable> <variable id="rqWg-2(,)x%vFfNUoj?$">Liste</variable> </variables> <block type="procedures_defcustomreturn" id="^T@L{N7^b-s1(5r#zk*v" x="1288" y="-288"> <mutation statements="false"> <arg name="zaehler" varid="dTTm]Y;f*9fW4IR]M3nv"></arg> <arg name="verbrauch" varid="tf?~U:?IZv!S/0cEDw*M"></arg> </mutation> <field name="NAME">Zähler</field> <field name="SCRIPT">cmV0dXJuIHsNCiAgICBaYWVobGVyOiB6YWVobGVyLA0KICAgIFZlcmJyYXVjaDogdmVyYnJhdWNoDQp9Ow==</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="procedures_defnoreturn" id="ANpB/okan5xoK~us}a_e" x="1312" y="-212"> <field name="NAME">Zäler 1</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="variables_set" id="|rQ%!g)n`1LOP$zwQ8_F"> <field name="VAR" id="Am?{@M!fHmePD.l=^yFu">ZählerNummer_</field> <value name="VALUE"> <block type="get_attr" id="9XM9cI)[=kb)az%gz!z/"> <value name="PATH"> <shadow type="text" id="H@E)D?=PD`2V7ibfc60g"> <field name="TEXT">Zaehler</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id="fuubQ1?tZqrX7Vs*H}?1"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="JYkAZ;x.)_K^5A`6@oYx"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="=@xY|bQ)JaDm_7^]fX^;"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="54l5%IR?.Wtby#]c4e~Y"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> <value name="VALUE"> <block type="get_attr" id="`zXEN1b/Ju=/^]]`Im2h"> <value name="PATH"> <shadow type="text" id="0;7*([hf%b4;Nc=KEO{x"> <field name="TEXT">Verbrauch</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id="[!(#CrDWa/XZLZWXS1$%"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="1boqahr4uBXjqn8ndCVs"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="Ky]0|GZG3lyoqP=gvYDu"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id=".1hnjQxtK_1yPqXvig,z"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> <value name="VALUE"> <block type="text_join" id="YIperZRgXA!]-jNUBOA#"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="Y}|1:U[/pZY_Zes3~p;!"> <field name="TEXT">0_userdata.0.SolarWEG.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="G,4-%l36rWxi[jJ5)3#v"> <field name="VAR" id="Am?{@M!fHmePD.l=^yFu">ZählerNummer_</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </statement> </block> <block type="comment" id="5qfBqyY|]AMN:E.Y7l+{" x="513" y="13"> <field name="COMMENT">Z01=Anteil PV Allgemein</field> <next> <block type="comment" id="u*;qU~y$M4OsdioBE*Fr"> <field name="COMMENT">Z02=Anteil PV Willi</field> <next> <block type="comment" id="jp$uy?Z?UJw_n]axA~xK"> <field name="COMMENT">Z03=Anteil PV Gubser</field> <next> <block type="comment" id="6EZ_e{|T]La]X0Kj$:/J"> <field name="COMMENT">Z04=Anteil PV Lang</field> <next> <block type="comment" id="T/8N3nC*e#qL4#(8-$n("> <field name="COMMENT">Z05=Anteil PV Giger</field> </block> </next> </block> </next> </block> </next> </block> </next> </block> <block type="schedule" id="SeGHl$+Bs!qV^vqOAu[(" x="163" y="38"> <field name="SCHEDULE">* * * * *</field> <statement name="STATEMENT"> <block type="control" id="G,g#g^ql6R_dBd7wIhFM"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.SolarWEG.Zähler01</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="o_kPP5E|v)vZ25=HV`?B"> <field name="NUM">1</field> </block> </value> <next> <block type="control" id="=t2,Z4%xJ+A{qJ9qZF=U"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.SolarWEG.Zähler02</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="}GJ0b~P4T7RvuOcRpqND"> <field name="NUM">1</field> </block> </value> <next> <block type="control" id="-abg#h.o@9bWaVD3i!}("> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.SolarWEG.Zähler03</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="SVwE8Ml*vfoZZR6Mbt8^"> <field name="NUM">1</field> </block> </value> <next> <block type="control" id="UHib!d4.,AF77ZuG05Bs"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.SolarWEG.Zähler04</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="DBe$r(%#H($lQ^peX#z("> <field name="NUM">1</field> </block> </value> <next> <block type="control" id="04GS!$r@?Y=@x2,Q)o@x"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.SolarWEG.Zähler05</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="@{qXv13)%~]2}:)T39C-"> <field name="NUM">1</field> </block> </value> <next> <block type="variables_set" id="j6hAstkHo=/enSd;1r|("> <field name="VAR" id="2RGq,EZh=7ChG@rYK.*W">Gesamtbezug</field> <value name="VALUE"> <block type="math_arithmetic" id="=QhEpQ_%E6BhzlYGf6[]" inline="false"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="_~gE^U8$~Dx:?.4d%^RW"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="K+im.;E7iiXZ7yRBAgoE" inline="false"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="tkM|NasEp+@@ASFwTb8#"> <field name="NUM">1</field> </shadow> <block type="get_value" id="g3|eKa!v*zF_Ee*TF:OO"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Zähler_1</field> </block> </value> <value name="B"> <shadow type="math_number" id="xr}gZw1*rvRNiZYZuZXn"> <field name="NUM">1</field> </shadow> <block type="get_value" id="(d@A$PU^{-Q`-#]D(DbO"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Zähler_2</field> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id=".~7_E)hzO,,L9S+q^N9h"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="P/:5efp4ISL4wp@VF2[f" inline="false"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="tkM|NasEp+@@ASFwTb8#"> <field name="NUM">1</field> </shadow> <block type="get_value" id="s#Y(39CZUn*`Cr3!ATJS"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Zähler_3</field> </block> </value> <value name="B"> <shadow type="math_number" id="xr}gZw1*rvRNiZYZuZXn"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="Hblk6Gx+(wU|8Q-,eK]1" inline="false"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="tkM|NasEp+@@ASFwTb8#"> <field name="NUM">1</field> </shadow> <block type="get_value" id="8$}X=Qpq5PKU}O`fdY.+"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Zähler_4</field> </block> </value> <value name="B"> <shadow type="math_number" id="Zjf:l.g@/PeIooKY!*`k"> <field name="NUM">1</field> </shadow> <block type="get_value" id="dGD_UU/@=l`4P3muef!/"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Zähler_5</field> </block> </value> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="HRYM}}D$#KT1j5_.)/d$"> <field name="VAR" id="PY}*+`j;}H}^Lm+C9N$n">1_5 Teil</field> <value name="VALUE"> <block type="math_arithmetic" id="m9KJs(^L3E)lc1c(HgTm"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="HHDfl/7_QMOoHQ`cGgRm"> <field name="NUM">1</field> </shadow> <block type="get_value" id="@jz~_*W,%`8@P)M`HjHj"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Solar_Erzeugung</field> </block> </value> <value name="B"> <shadow type="math_number" id="o`HB))n[QSUP8;sy+x*P"> <field name="NUM">5</field> </shadow> </value> </block> </value> <next> <block type="variables_set" id="$D^5JNKp:x%p3+~Cy5%g"> <field name="VAR" id="rqWg-2(,)x%vFfNUoj?$">Liste</field> <value name="VALUE"> <block type="lists_create_with" id="VA`wrfQhk$]Y/.kJ/iJu"> <mutation items="5"></mutation> <value name="ADD0"> <block type="procedures_callcustomreturn" id="SqMZ[qtiCH,wckJT0%:H"> <mutation name="Zähler"> <arg name="zaehler"></arg> <arg name="verbrauch"></arg> </mutation> <value name="ARG0"> <block type="text" id="=tm:mra?l9NFq:++3%zI"> <field name="TEXT">Zähler01</field> </block> </value> <value name="ARG1"> <block type="get_value" id="!?}$Q##qcwAr`r-Xh~)J"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Zähler_1</field> </block> </value> </block> </value> <value name="ADD1"> <block type="procedures_callcustomreturn" id="/D^2/:Ij|$#YeZMV-juN"> <mutation name="Zähler"> <arg name="zaehler"></arg> <arg name="verbrauch"></arg> </mutation> <value name="ARG0"> <block type="text" id="93z4=INPlW+iYBc279U?"> <field name="TEXT">Zähler02</field> </block> </value> <value name="ARG1"> <block type="get_value" id="WCf{_Q1bYMED:DV2k3%."> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Zähler_2</field> </block> </value> </block> </value> <value name="ADD2"> <block type="procedures_callcustomreturn" id="42C`@j6,{KJ:*wLek2++"> <mutation name="Zähler"> <arg name="zaehler"></arg> <arg name="verbrauch"></arg> </mutation> <value name="ARG0"> <block type="text" id="1B?-Dtk=%NF0Ol@XoS^K"> <field name="TEXT">Zähler03</field> </block> </value> <value name="ARG1"> <block type="get_value" id="=B]00ybj*}KA7;l;}}.P"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Zähler_3</field> </block> </value> </block> </value> <value name="ADD3"> <block type="procedures_callcustomreturn" id="THo/J%u/Gpb$N^(+]l_W"> <mutation name="Zähler"> <arg name="zaehler"></arg> <arg name="verbrauch"></arg> </mutation> <value name="ARG0"> <block type="text" id="hMd+`TL}aKQG@w^9I`uX"> <field name="TEXT">Zähler04</field> </block> </value> <value name="ARG1"> <block type="get_value" id="^$*pv`P}uHtFaQx!3M]r"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Zähler_4</field> </block> </value> </block> </value> <value name="ADD4"> <block type="procedures_callcustomreturn" id="f6Z:.JN7Kljatcd5!$/x"> <mutation name="Zähler"> <arg name="zaehler"></arg> <arg name="verbrauch"></arg> </mutation> <value name="ARG0"> <block type="text" id="Ha$7Q4Vz:{D}N@%29kNU"> <field name="TEXT">Zähler05</field> </block> </value> <value name="ARG1"> <block type="get_value" id="N}Nbl@r+^Qhz1M3vUYdY"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Zähler_5</field> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="X7:u!seN2IG;;/sAz#fY"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> <value name="VALUE"> <block type="convert_jsonata" id="rZwcgUE0VDc(k@gP,])_"> <value name="EXPRESSION"> <shadow type="text" id="Jzh0?fmT4!/[A2HL.!$b"> <field name="TEXT">$^(Verbrauch)</field> </shadow> </value> <value name="TARGET"> <block type="variables_get" id="N1C%LACBsP%bfOVU@9w:"> <field name="VAR" id="rqWg-2(,)x%vFfNUoj?$">Liste</field> </block> </value> </block> </value> <next> <block type="debug" id="{F^e[uY#[qgYRJNS(#s="> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="PzTYJ=Ris)2sri]/=o.("> <field name="TEXT">test</field> </shadow> <block type="variables_get" id="agX[a-P=R_j@L+J;hTH#"> <field name="VAR" id="rqWg-2(,)x%vFfNUoj?$">Liste</field> </block> </value> <next> <block type="debug" id="dduw8J}KeX!ZyMysUZb0"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="PzTYJ=Ris)2sri]/=o.("> <field name="TEXT">test</field> </shadow> <block type="text_join" id="J:.hyJ;XnKt2Vzah;AU4"> <mutation items="6"></mutation> <value name="ADD0"> <block type="text" id="2.sWz[3U8p$9Km=$wl]r"> <field name="TEXT">Es werden </field> </block> </value> <value name="ADD1"> <block type="get_value" id="R1I=6SI4Y5cZEpPX^U.h"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Solar_Erzeugung</field> </block> </value> <value name="ADD2"> <block type="text" id="`fTX;wjU]u/aKdmUC]lS"> <field name="TEXT">W erzeugt. </field> </block> </value> <value name="ADD3"> <block type="text" id="$ctDhY:N}@?f|si4F+mE"> <field name="TEXT">1/5 davon sind: </field> </block> </value> <value name="ADD4"> <block type="variables_get" id="!M2d7+4TO%mc[%klC,IF"> <field name="VAR" id="PY}*+`j;}H}^Lm+C9N$n">1_5 Teil</field> </block> </value> <value name="ADD5"> <block type="text" id="vwBB5T7A{s0L9@AoMk0?"> <field name="TEXT">W</field> </block> </value> </block> </value> <next> <block type="debug" id="%C!T_36a0H^%0U?6J%E{"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="PMeeDCoj%7;i}]Lk}Cx1"> <field name="TEXT">test</field> </shadow> <block type="variables_get" id="_xrM:]o[#RIr1,!b!/V)"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <next> <block type="procedures_callnoreturn" id="t9h:5W4IV3^A~:vX^#T?"> <mutation name="1ste"></mutation> </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> <block type="procedures_defnoreturn" id="7YP@fw0x2br`??Lv@w)p" x="1313" y="12"> <field name="NAME">Zäler 2</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="variables_set" id="I_Hzj)n3E?{*I_hj0#8:"> <field name="VAR" id="Am?{@M!fHmePD.l=^yFu">ZählerNummer_</field> <value name="VALUE"> <block type="get_attr" id="ph6.G41;TZ/pXKc`sAL?"> <value name="PATH"> <shadow type="text" id="6Y(xvT:XmWkCQ_fOI6$%"> <field name="TEXT">Zaehler</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id="XH5JBu[ooOkWt[:m!}Vt"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="O/$u`15-DNZ6o8NwHDlK"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="L)4bU8^~ovvn-]U6x2Mf"> <field name="NUM">2</field> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="LVCAEV%vd[R/DMHjm_D7"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> <value name="VALUE"> <block type="get_attr" id="-CVup1C4jPY]Ru][O]Qy"> <value name="PATH"> <shadow type="text" id="`V;88RIptMOFp^%6/T1E"> <field name="TEXT">Verbrauch</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id="~1|S`:F*:e_|y^PFMn9h"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="X+BcO@IUV]Qx4_UR*gO."> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="xN;:|h4B#l+)dQ,?6COp"> <field name="NUM">2</field> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="peA}4+bc:5oX*/Y/^ZFF"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> <value name="VALUE"> <block type="text_join" id="E/#8:_9!iyt06*2h^()g"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="Be5$M^j!xjZwVUBxhn)G"> <field name="TEXT">0_userdata.0.SolarWEG.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="MEF?OE9(Ey@3^FVsEFT|"> <field name="VAR" id="Am?{@M!fHmePD.l=^yFu">ZählerNummer_</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </statement> </block> <block type="comment" id="OHbkd-#h-O}k/j9],#WG" x="788" y="213"> <field name="COMMENT">Z1 Mw Allgemein</field> <next> <block type="comment" id="YZZ[$w+,!YsoAOl,:|VB"> <field name="COMMENT">Z2 Mw Willi</field> <next> <block type="comment" id="Z0VGN#5XN1CEiLExZh~F"> <field name="COMMENT">Z3 Mw Gubser</field> <next> <block type="comment" id="|dr)RqPKsG+DrF|2j]U)"> <field name="COMMENT">Z4 Mw Lang</field> <next> <block type="comment" id="6tkTCaw_34mB0~Wmg.}g"> <field name="COMMENT">Z5 Mw Giger</field> </block> </next> </block> </next> </block> </next> </block> </next> </block> <block type="procedures_defnoreturn" id="3I(Z[b/.mHEHLwDW^:rf" x="1313" y="238"> <field name="NAME">Zähler 3</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="variables_set" id="Z+c4n:C=eO%37`*Uj:#N"> <field name="VAR" id="Am?{@M!fHmePD.l=^yFu">ZählerNummer_</field> <value name="VALUE"> <block type="get_attr" id="O~,r_.xlNt:,rU4Xv,,k"> <value name="PATH"> <shadow type="text" id="K^ac66x^]?!=4Tp;x@8O"> <field name="TEXT">Zaehler</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id="b1VSH{*:I/=/edCEnPE4"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="FqFxqs:u`bNisVz_foS{"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="t(vU`nN(71gr?]Uy]+!+"> <field name="NUM">3</field> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="erUoMIb:gXtia2~):2i]"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> <value name="VALUE"> <block type="get_attr" id=";{humSZ%cG$y@Gl}:Xf:"> <value name="PATH"> <shadow type="text" id="qWlF4#n.sIa(D(~y^LN0"> <field name="TEXT">Verbrauch</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id=";VK-q!N8_PCm4DFV_NwN"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="-uTP;]v/=aM,hU}~+-`8"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="$9D-$QJI$|`oJf#|XW?l"> <field name="NUM">3</field> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="Ccw:}J2[X2z`QT3l%uCY"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> <value name="VALUE"> <block type="text_join" id="rS/iQ^P}Y~%J9u{-E8Q9"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="Xn-##vDRPNvxF0)f4kC;"> <field name="TEXT">0_userdata.0.SolarWEG.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="BDWw:j.Tut!_5WLdzj~Y"> <field name="VAR" id="Am?{@M!fHmePD.l=^yFu">ZählerNummer_</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </statement> </block> <block type="procedures_defnoreturn" id="#q4j3!`Nirls4.;c!{3|" x="1313" y="463"> <field name="NAME">Zähler 4</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="variables_set" id="BB{d~*_[.#LvnJJ*+itw"> <field name="VAR" id="Am?{@M!fHmePD.l=^yFu">ZählerNummer_</field> <value name="VALUE"> <block type="get_attr" id="ESK9!8)NB`Z=0n-C/QQd"> <value name="PATH"> <shadow type="text" id=";W^xL:o(V~^Ck#NCeqNK"> <field name="TEXT">Zaehler</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id="]Fd:VqryYgtQq/.9FgsN"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="#VTndo)Dqr]#q2rD$QA6"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="eZoM`+K;5(4TvS7?EFUR"> <field name="NUM">4</field> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="I2swv%pK7Y}zz?IC0$3f"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> <value name="VALUE"> <block type="get_attr" id="}8@ctSseXxh4yw^86~lx"> <value name="PATH"> <shadow type="text" id="=z[/@V3Xps43sRK;bSB["> <field name="TEXT">Verbrauch</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id="c?_Y/T;u3Fams*v8!$f*"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="pyTN`#csJ9LpYR6I85(m"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="j/Zp/lWH}ZY79LiYR;8;"> <field name="NUM">4</field> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="y.oNeoyJzIUql2IVw[Li"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> <value name="VALUE"> <block type="text_join" id="u[c2Z.PO+Emv2Q9$..=?"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="VQs7chN;PeRriRaF_KGB"> <field name="TEXT">0_userdata.0.SolarWEG.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="EL7@]r?=-uUwWp_#|y;-"> <field name="VAR" id="Am?{@M!fHmePD.l=^yFu">ZählerNummer_</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </statement> </block> <block type="procedures_defnoreturn" id=":+lv4f]pnlGyCWDaYCV?" x="1313" y="688"> <field name="NAME">Zähler 5</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="variables_set" id="HF9zb=uDd@f7Q#bl?(s}"> <field name="VAR" id="Am?{@M!fHmePD.l=^yFu">ZählerNummer_</field> <value name="VALUE"> <block type="get_attr" id="v05_N1g#v(?DEe`}kV6h"> <value name="PATH"> <shadow type="text" id="uT$ur)yg}@ke)=vmEO^-"> <field name="TEXT">Zaehler</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id="w8:1D2NBr|GTP+7r!wnt"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="IdPkVO6T4Kv5cJe^e@q="> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="21Nce}:py)Bl1RUfGybF"> <field name="NUM">5</field> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="EaagpP]UP;neL(6FL7DO"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> <value name="VALUE"> <block type="get_attr" id="+$^5]$2M$L^3!]O7hHU{"> <value name="PATH"> <shadow type="text" id="MMOcG!GCd0wWM8C_5,Qj"> <field name="TEXT">Verbrauch</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id="=V%P]o?`{kTxiI@D[bh9"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="4EUzmOW%J457y~C}9)g5"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="i_!MZc*Xj^VGz$/%pDvY"> <field name="NUM">5</field> </block> </value> </block> </value> </block> </value> <next> <block type="variables_set" id="-e+Cwt65ZW|e7y?F#b]k"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> <value name="VALUE"> <block type="text_join" id="TgPJiC{+A+vtwz*m~8ki"> <mutation items="2"></mutation> <value name="ADD0"> <block type="text" id="/Jl_ZrL+_oGy]r3+@O?("> <field name="TEXT">0_userdata.0.SolarWEG.</field> </block> </value> <value name="ADD1"> <block type="variables_get" id="BHRi?H!!S~aiOv^+?Ns?"> <field name="VAR" id="Am?{@M!fHmePD.l=^yFu">ZählerNummer_</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </statement> </block> <block type="procedures_defnoreturn" id="jF$lDUq8mp-iFRvT$lD(" x="1313" y="913"> <field name="NAME">Alles größer</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="debug" id="3t$}YmKLB`I([!a4zENG"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="=jYFEm)}ZIDgK@VM=eg9"> <field name="TEXT">alle größer</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id="7Ezo,5vF0ip{z;|K?$$M"> <mutation name="Zäler 1"></mutation> <next> <block type="control_ex" id="Gd|WP]47t-IW6F%sq%Hg"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="lhRvGSu$5AR#2MVkZ3V4"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="GNb23rXp%:TH#[+Ei%0R"> <field name="BOOL">TRUE</field> </shadow> <block type="variables_get" id="XdWrR{2487^Hmp(d#fnp"> <field name="VAR" id="PY}*+`j;}H}^Lm+C9N$n">1_5 Teil</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="0T#7657D7!!=RzNUH$?Q"> <field name="NUM">0</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id="zN3/iL@Sk!,dVB]y-dxY"> <mutation name="Zäler 2"></mutation> <next> <block type="control_ex" id="*d#}$xJbq$*NQ}Z*z]Y="> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="/.XVCX]ts`NoE`zf]sqQ"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="GNb23rXp%:TH#[+Ei%0R"> <field name="BOOL">TRUE</field> </shadow> <block type="variables_get" id="YR~DL(T_PYi,0sjXqb2A"> <field name="VAR" id="PY}*+`j;}H}^Lm+C9N$n">1_5 Teil</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="DGu,_AjC*pk*?yL+!L%M"> <field name="NUM">0</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id=";A8s@MFG;#J+$;87q+CJ"> <mutation name="Zähler 3"></mutation> <next> <block type="control_ex" id="i]_7rbMzL[Jr#Ob/+g*l"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="+~=K{QOe?RSM$WW8@oa;"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="GNb23rXp%:TH#[+Ei%0R"> <field name="BOOL">TRUE</field> </shadow> <block type="variables_get" id="{ZLxI:afR~h[g3$m.^uo"> <field name="VAR" id="PY}*+`j;}H}^Lm+C9N$n">1_5 Teil</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="d.R}./w33cfih,6J^X#N"> <field name="NUM">0</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id="I03+5+nkS|HqC}HpWeSd"> <mutation name="Zähler 4"></mutation> <next> <block type="control_ex" id="QxVC@.lPCD,[@U(i_Ol5"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="6@b%b0QPXuOViF[#2V|r"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="GNb23rXp%:TH#[+Ei%0R"> <field name="BOOL">TRUE</field> </shadow> <block type="variables_get" id="yyMO*6uJ)CIRX]pxs|tJ"> <field name="VAR" id="PY}*+`j;}H}^Lm+C9N$n">1_5 Teil</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="xnZ^F/+FsiqB[9Y?jt(X"> <field name="NUM">0</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id="58dq[/;:HPgkwU`[!GUa"> <mutation name="Zähler 5"></mutation> <next> <block type="control_ex" id="x/ERJqZpB+WhlQ)eVG2*"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="{:S+r`2G8ADQGYabqVc$"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="GNb23rXp%:TH#[+Ei%0R"> <field name="BOOL">TRUE</field> </shadow> <block type="variables_get" id="D:|xE2OBc4u4Po9Ydk86"> <field name="VAR" id="PY}*+`j;}H}^Lm+C9N$n">1_5 Teil</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="[J1[:]9zv5de$`a*cu]["> <field name="NUM">0</field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> <block type="procedures_defnoreturn" id="~-JVqzzPa4TW+}sWh`C]" x="1663" y="913"> <field name="NAME">ab zwei größer</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="debug" id="u}kGgz-D};)h46#}~.f@"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="OOV.Ji7eM:]A`E7e]bN-"> <field name="TEXT">ab zwei größer</field> </shadow> </value> <next> <block type="variables_set" id="9/-G0${(Yn/Q)g}o]pZf"> <field name="VAR" id="jz(WYo2RH^XV%P$8`cAz">rest ab 2te</field> <value name="VALUE"> <block type="math_arithmetic" id="WOzb$L1X4!YU?@NyJBMz" inline="false"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="_QD]%tR$[VL*Y5Ur_q:*"> <field name="NUM">1</field> </shadow> <block type="get_value" id="bSc=@MN#*E5q4.l9M#WK"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Solar_Erzeugung</field> </block> </value> <value name="B"> <shadow type="math_number" id="cB!wj5WEYUajeu4Z9#@T"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="~9T)JdF}/5/!s$@H3$KW"> <field name="VAR" id="9Xtnev|xAV30$qnZw.?W">Wert_1ste</field> </block> </value> </block> </value> <next> <block type="procedures_callnoreturn" id="1zvu~nE,Zg#%Ey,eO/+x"> <mutation name="Zäler 2"></mutation> <next> <block type="control_ex" id="m;+`{oR{plbdmMhJ{,qn"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="eUJoC`n{{7wph!KNq*W,"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="GNb23rXp%:TH#[+Ei%0R"> <field name="BOOL">TRUE</field>
-
und
</shadow> <block type="math_arithmetic" id="qS8-`m%kL-BS_{Q2$d%^"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="t;3gR;seZYShH)$?{I=("> <field name="NUM">1</field> </shadow> <block type="variables_get" id="tEBykc|yB%.JasIM1id("> <field name="VAR" id="jz(WYo2RH^XV%P$8`cAz">rest ab 2te</field> </block> </value> <value name="B"> <shadow type="math_number" id="(6YQIxRIxo;-:~k.]]}V"> <field name="NUM">2</field> </shadow> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="Jr3H*+D`!A(g#N.4o`p9"> <field name="NUM">0</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id=".=D}24*e?jEo6]ntW*hB"> <mutation name="Zähler 3"></mutation> <next> <block type="control_ex" id="N:#8psGnspPq@L~G|XNT"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="`j[JJ|iWrIi8~phxMFXk"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="QiQ@@z:u`NM(egOfeIh4"> <field name="BOOL">TRUE</field> </shadow> <block type="math_arithmetic" id="kqio3Ce1PUD7`xKm19uF"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="t;3gR;seZYShH)$?{I=("> <field name="NUM">1</field> </shadow> <block type="variables_get" id="vsZwm@s+UDaN;LKzDd!b"> <field name="VAR" id="jz(WYo2RH^XV%P$8`cAz">rest ab 2te</field> </block> </value> <value name="B"> <shadow type="math_number" id="!=zcja1xu{qX2j!kW,CD"> <field name="NUM">2</field> </shadow> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="BQPrBYQ$u$n?;Giox3la"> <field name="NUM">0</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id="K;+O{1HIR1a9LZNzD_f0"> <mutation name="Zähler 4"></mutation> <next> <block type="control_ex" id="/@RP1:A:JBftuL}I^pfD"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="VCjDZaDH3iR`AiLVA5.k"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="QiQ@@z:u`NM(egOfeIh4"> <field name="BOOL">TRUE</field> </shadow> <block type="math_arithmetic" id="w+42-(~6JE?L~+U-)dpF"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="t;3gR;seZYShH)$?{I=("> <field name="NUM">1</field> </shadow> <block type="variables_get" id=",`*GlnZ[t83%JY.4SjLH"> <field name="VAR" id="jz(WYo2RH^XV%P$8`cAz">rest ab 2te</field> </block> </value> <value name="B"> <shadow type="math_number" id="zl+My.KSe9`#(3|WbESd"> <field name="NUM">2</field> </shadow> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="y_c`ED:NG3dA_I]1ujPN"> <field name="NUM">0</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id="HX-#6oA_Gb34]7NOYuS)"> <mutation name="Zähler 5"></mutation> <next> <block type="control_ex" id="1FGN,uqM.P-j$`|7tp)1"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="f@6BhD?}[s~.7J$!?s-i"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="QiQ@@z:u`NM(egOfeIh4"> <field name="BOOL">TRUE</field> </shadow> <block type="math_arithmetic" id="(v*`[/ic_8+x~0Fqa,Rl"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="t;3gR;seZYShH)$?{I=("> <field name="NUM">1</field> </shadow> <block type="variables_get" id="F4fJGg!VkTE-$L|.(!$u"> <field name="VAR" id="jz(WYo2RH^XV%P$8`cAz">rest ab 2te</field> </block> </value> <value name="B"> <shadow type="math_number" id="?VDn_e0{wlEfB^c8@a3|"> <field name="NUM">2</field> </shadow> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="~ta2os!r@srSP2y*$lX:"> <field name="NUM">0</field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> <block type="procedures_defnoreturn" id="slt*~3~O;KsF-HT_T4#Z" x="2238" y="913"> <field name="NAME">ab drei größer</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="debug" id="cOYvs:s1`!5aoSF2DA,G"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="y0V%-XaN70{KCIlq8PPA"> <field name="TEXT">ab drei größer</field> </shadow> </value> <next> <block type="variables_set" id="Hzqf1Y,|dB=o~=%yF3L5"> <field name="VAR" id="jz(WYo2RH^XV%P$8`cAz">rest ab 2te</field> <value name="VALUE"> <block type="math_arithmetic" id="i#6z%!/.05`NfS]yV#%A" inline="false"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="_QD]%tR$[VL*Y5Ur_q:*"> <field name="NUM">1</field> </shadow> <block type="get_value" id="0b[3R-;:BH[RYMoWTMvD"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Solar_Erzeugung</field> </block> </value> <value name="B"> <shadow type="math_number" id="cB!wj5WEYUajeu4Z9#@T"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="b(^T33.zC?Ah+@^$|VUY"> <field name="VAR" id="9Xtnev|xAV30$qnZw.?W">Wert_1ste</field> </block> </value> </block> </value> <next> <block type="procedures_callnoreturn" id="@nj,{ht`M`pT48FA;_.o"> <mutation name="Zähler 3"></mutation> <next> <block type="control_ex" id="YE#Lv(M9J8NeI?VhJhFS"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="UWeB3cG%Hau2*J[EqDLn"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="QiQ@@z:u`NM(egOfeIh4"> <field name="BOOL">TRUE</field> </shadow> <block type="math_arithmetic" id=":t]9{@:9sAph!1uy1oWO"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="t;3gR;seZYShH)$?{I=("> <field name="NUM">1</field> </shadow> <block type="variables_get" id="7;;MQk@[so1Cu4V}1=Xb"> <field name="VAR" id="jz(WYo2RH^XV%P$8`cAz">rest ab 2te</field> </block> </value> <value name="B"> <shadow type="math_number" id="iR(0Uf-2M93!T3vbaCDz"> <field name="NUM">2</field> </shadow> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="+E/I(NQX0)dxMk2ytV`L"> <field name="NUM">0</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id="3[z|XEb[vTuRC488g]9b"> <mutation name="Zähler 4"></mutation> <next> <block type="control_ex" id="OA5KJWr;]OChy)-TQVy1"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="zL8a[^|Q1X09r3r.j|Nu"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="QiQ@@z:u`NM(egOfeIh4"> <field name="BOOL">TRUE</field> </shadow> <block type="math_arithmetic" id="JxGJV@P~G/p0mhYmd*U,"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="t;3gR;seZYShH)$?{I=("> <field name="NUM">1</field> </shadow> <block type="variables_get" id="46H4tYW9tIpa?n.w[enU"> <field name="VAR" id="jz(WYo2RH^XV%P$8`cAz">rest ab 2te</field> </block> </value> <value name="B"> <shadow type="math_number" id="VP6`B+oQ4/4;a0SjE@Kd"> <field name="NUM">2</field> </shadow> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="CH]6?F)tC7+ycsTHeqt$"> <field name="NUM">0</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id="WDHML%rd0Ur[)r=D_I%w"> <mutation name="Zähler 5"></mutation> <next> <block type="control_ex" id="cP5jBjOo7s5I2f`4=0jB"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="C=:xCgU`ZQ{D{Z=wRldB"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="QiQ@@z:u`NM(egOfeIh4"> <field name="BOOL">TRUE</field> </shadow> <block type="math_arithmetic" id="gx#m,5{Z@W2baSAym@vw"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="t;3gR;seZYShH)$?{I=("> <field name="NUM">1</field> </shadow> <block type="variables_get" id="$t1el%+2r;eDLS4@6:fh"> <field name="VAR" id="jz(WYo2RH^XV%P$8`cAz">rest ab 2te</field> </block> </value> <value name="B"> <shadow type="math_number" id="gLxH@r?in`b}8FVCve=S"> <field name="NUM">2</field> </shadow> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="f8WQ^|wiqZ9)%h.mX^`z"> <field name="NUM">0</field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> <block type="procedures_defnoreturn" id="D/2|B_#},fyC(n0w#2Xl" x="2813" y="888"> <field name="NAME">ab vier grösser</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="debug" id="B(F;gN6Jk~snn%K%MP;/"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="28u$%3HRWml/27^1N0$s"> <field name="TEXT">ab drei größer</field> </shadow> </value> <next> <block type="variables_set" id="L.OQ`?]Uzp]*kF^3oKF#"> <field name="VAR" id="jz(WYo2RH^XV%P$8`cAz">rest ab 2te</field> <value name="VALUE"> <block type="math_arithmetic" id="+KDSmxg!euC}#LvM2.Sw" inline="false"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="_QD]%tR$[VL*Y5Ur_q:*"> <field name="NUM">1</field> </shadow> <block type="get_value" id="W|KAgVFFg^iTNXi^HVAq"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Solar_Erzeugung</field> </block> </value> <value name="B"> <shadow type="math_number" id="cB!wj5WEYUajeu4Z9#@T"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="Pv!ui_8#Z4#UuGllt{|0"> <field name="VAR" id="9Xtnev|xAV30$qnZw.?W">Wert_1ste</field> </block> </value> </block> </value> <next> <block type="procedures_callnoreturn" id="`U|K],V-9$W/=u?Hp]){"> <mutation name="Zähler 4"></mutation> <next> <block type="control_ex" id="EL,D|Q%2xrk[,O}jl1Bi"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="rOF5;=)4J|.D5g@L8|F-"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="QiQ@@z:u`NM(egOfeIh4"> <field name="BOOL">TRUE</field> </shadow> <block type="math_arithmetic" id="a*cmy96u$Oo[dzBUytB}"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="t;3gR;seZYShH)$?{I=("> <field name="NUM">1</field> </shadow> <block type="variables_get" id=")(pypYk?K88$Sa5b*2~/"> <field name="VAR" id="jz(WYo2RH^XV%P$8`cAz">rest ab 2te</field> </block> </value> <value name="B"> <shadow type="math_number" id="*[,*-e*V:ffuG+G.zY:/"> <field name="NUM">2</field> </shadow> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="/TDajhA#Cp9VP/3NBj_h"> <field name="NUM">0</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id="{E6%-}RV6NKGXRWt/;B?"> <mutation name="Zähler 5"></mutation> <next> <block type="control_ex" id="ElA7rM]e4R/CwrQhlPsC"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="V36T;1`B5SZF]!S/2mv="> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="QiQ@@z:u`NM(egOfeIh4"> <field name="BOOL">TRUE</field> </shadow> <block type="math_arithmetic" id="](Ou;DCR{T=sf6cI*Y!="> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="t;3gR;seZYShH)$?{I=("> <field name="NUM">1</field> </shadow> <block type="variables_get" id="Yd-bN,aMlG+uK@niZrK]"> <field name="VAR" id="jz(WYo2RH^XV%P$8`cAz">rest ab 2te</field> </block> </value> <value name="B"> <shadow type="math_number" id="yO_=r@+CRARI$2A;bM+R"> <field name="NUM">2</field> </shadow> </value> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="/yQKPlP`}}Dc1yM%!ens"> <field name="NUM">0</field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> <block type="procedures_defnoreturn" id="d|Gva)g{7[re]h!LJ.6i" x="3413" y="888"> <field name="NAME">5t grösster</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="debug" id="d+x4guefo1qTrA[l_+E+"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="$`|v9;CJj%Gr-._mc!.v"> <field name="TEXT">ab vier größer</field> </shadow> </value> <next> <block type="variables_set" id="^bh^[0K9FuO1ymr#]TP-"> <field name="VAR" id="$0Z58`kKviMG[zyjoa$3">rest ab 3te</field> <value name="VALUE"> <block type="math_arithmetic" id="@C=m5OrxI,Ng5N-A%a6Y" inline="false"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="k53?o}|~Xo*;h$Kzc-Aa"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="=hc:h;Y3/ON6D$Y)VYQ9" inline="false"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="_QD]%tR$[VL*Y5Ur_q:*"> <field name="NUM">1</field> </shadow> <block type="get_value" id="9kH$MC@W$k}NVEJuJ}:1"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.SolarWEG.Solar_Erzeugung</field> </block> </value> <value name="B"> <shadow type="math_number" id="cB!wj5WEYUajeu4Z9#@T"> <field name="NUM">1</field> </shadow> <block type="variables_get" id=".3gGgQvPMhm($TLuS9pI"> <field name="VAR" id="9Xtnev|xAV30$qnZw.?W">Wert_1ste</field> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="8${![]vD+}ZV$-sOq_yD"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="+#1Z_sQn1}M_XKY^k]W5"> <field name="VAR" id="s}`NhkS#bbbkKnhEvlh}">Wert_2te</field> </block> </value> </block> </value> <next> <block type="procedures_callnoreturn" id="]idLN9fk5-2Te]Rvn5DI"> <mutation name="Zähler 5"></mutation> <next> <block type="control_ex" id="A{;1vnc=ZB[%,:pwFo#;"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="DO]$F^%eZX;KudD*qS|H"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="QiQ@@z:u`NM(egOfeIh4"> <field name="BOOL">TRUE</field> </shadow> <block type="variables_get" id="y3*XTCJiu3WoIx8%RW9I"> <field name="VAR" id="$0Z58`kKviMG[zyjoa$3">rest ab 3te</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id=",CX_deI=EbT#KpT{-v:Q"> <field name="NUM">0</field> </shadow> </value> <next> <block type="debug" id="K5%YWyL%PE~z.?}-qk4L"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id=")S:;(%B7Apz;bm{FkRzd"> <field name="TEXT">Verbrauch von dritt größtem ist größer 1/3 der Erzeugung, also bekommt er den Rest</field> </shadow> <block type="text_join" id="9YFNC#1Zq{=[|JU0vbNi"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="xjHn5X}ds4lbahny(s5o"> <field name="TEXT">Verbrauch von dritt größtem ist größer 1/5 der Erzeugung, also bekommt er den Rest: </field> </block> </value> <value name="ADD1"> <block type="variables_get" id="pLj)!.!)_1mOkaPICcrM"> <field name="VAR" id="$0Z58`kKviMG[zyjoa$3">rest ab 3te</field> </block> </value> <value name="ADD2"> <block type="text" id="D:$Lp]{})0UlgzeA*`hD"> <field name="TEXT">W</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> </block> <block type="procedures_defnoreturn" id=")k!Yb1JbF165;uCP,x`;" x="163" y="1263"> <field name="NAME">1ste</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="procedures_callnoreturn" id="9c]$)pQ4#U2`J|$j;I6:"> <mutation name="Zäler 1"></mutation> <next> <block type="controls_if" id="pSSk+SN3-J}tg`UT61cE"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_compare" id="3djY6~,xmE%u}X|#|`!/"> <field name="OP">LT</field> <value name="A"> <block type="get_attr" id="]0LWJ@8c61*Zw@(@7}u3"> <value name="PATH"> <shadow type="text" id="(doN?Z,@[F3Lkj~SHP0F"> <field name="TEXT">Verbrauch</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id="WB=W907+2M.b`Cd@P;^d"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="Zb:LQ:Ai9Y}Ged[wE31V"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="os+(^|`JWLS}?O2GO8-n"> <field name="NUM">1</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="variables_get" id="qz6m*K3Ns.ZUMvA7XOX-"> <field name="VAR" id="PY}*+`j;}H}^Lm+C9N$n">1_5 Teil</field> </block> </value> </block> </value> <statement name="DO0"> <block type="debug" id="b6a(o@L_.=2z?hp.bK_9"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="cr_1YE1irZ,/xW[`~=.c"> <field name="TEXT">kleinster verbraucher ist kleiner 1/3 der Erzeugung</field> </shadow> <block type="text_join" id="q%/|J:Xy)MFrgN2{U_;("> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="r,%smyMyAx70%KtwU=9!"> <field name="TEXT">kleinster verbraucher ist kleiner 1/5 der Erzeugung: </field> </block> </value> <value name="ADD1"> <block type="variables_get" id=";O~|pj#@UoY8jB0GQU[0"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <value name="ADD2"> <block type="text" id=")ItEm@`67fVhH[J))jCZ"> <field name="TEXT">W</field> </block> </value> </block> </value> <next> <block type="control_ex" id="/aCTQ;VR,.J/6ToFUxNF"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="1dey5%:ixM/9ej+[(!.]"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="GNb23rXp%:TH#[+Ei%0R"> <field name="BOOL">TRUE</field> </shadow> <block type="variables_get" id="-9gL|pbx@y,GUyJR}fEd"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="#G?h(Fg4Z[aeS9XjSg6/"> <field name="NUM">0</field> </shadow> </value> <next> <block type="variables_set" id="a{ESioPh#Z*]wpdnZ5JM"> <field name="VAR" id="9Xtnev|xAV30$qnZw.?W">Wert_1ste</field> <value name="VALUE"> <block type="variables_get" id="UYd5+Z6%yoW4z;AYNkM7"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <next> <block type="procedures_callnoreturn" id="wIj#}:?:4-U/VThhgS`h"> <mutation name="2te"></mutation> </block> </next> </block> </next> </block> </next> </block> </statement> <statement name="ELSE"> <block type="debug" id="MGli|aXhwAi7;s?CZBLi"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="ycpHX8wE6|7%aEwCwTZx"> <field name="TEXT">kleinste Verbrauch ist größer 1/5 der Erzeugung, also sind alle größer als erzeugung</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id="Jx[=oj27K+U]mmral~Vf"> <mutation name="Alles größer"></mutation> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> <block type="procedures_defnoreturn" id="*?[M|k2McK]{f@,:mvs0" x="163" y="1838"> <field name="NAME">2te</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="procedures_callnoreturn" id="rXJc?v~a0i1hWO9SSa$s"> <mutation name="Zäler 2"></mutation> <next> <block type="controls_if" id="ZK[Mm#3C)8[kH7}fB3=,"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_compare" id="Y|FEm6t5SE,wo1/=~*N)"> <field name="OP">LT</field> <value name="A"> <block type="get_attr" id="W$V})SfDIQlx?^9C]HHI"> <value name="PATH"> <shadow type="text" id="/fSp%8JldFG)S~++Y:bz"> <field name="TEXT">Verbrauch</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id="{)=2e+[A4`rG(Gb%h!$*"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="g4~P}65ZKW7h#P-NZ,{I"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="Xd!e_ASb[p^xThoTjN/%"> <field name="NUM">2</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="variables_get" id="Zmp^lj[__yltUH]tFRFP"> <field name="VAR" id="PY}*+`j;}H}^Lm+C9N$n">1_5 Teil</field> </block> </value> </block> </value> <statement name="DO0"> <block type="debug" id="-?PxgJM]uIcamg8U(^0C"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="vmF:GDm%7ufKil(UFYcT"> <field name="TEXT">Verbrauch von zweit größtem ist kleiner 1/3 der Erzeugung</field> </shadow> <block type="text_join" id="Sv:Df6KaS0hL)XFdcg0{"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="5.NNIi=T:k2X0[3uNsD="> <field name="TEXT">Verbrauch von zweit größtem ist kleiner 1/5 der Erzeugung: </field> </block> </value> <value name="ADD1"> <block type="variables_get" id="O]FXSn33*9JlkfKq`Q2U"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <value name="ADD2"> <block type="text" id="tP~JK]Y}EpF[]I0G7J[W"> <field name="TEXT">W</field> </block> </value> </block> </value> <next> <block type="control_ex" id="f=LP:~8fj#)[VTYt}c?S"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="Ie{Z^Yts0v^7rq4]a`/a"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="GNb23rXp%:TH#[+Ei%0R"> <field name="BOOL">TRUE</field> </shadow> <block type="variables_get" id="X^/4{?Ib97KV?gcf$%}4"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="D[gD#[U6~S6dek:X7ZSc"> <field name="NUM">0</field> </shadow> </value> <next> <block type="variables_set" id="7u2P$(Q=sU?FR6o_`c9K"> <field name="VAR" id="s}`NhkS#bbbkKnhEvlh}">Wert_2te</field> <value name="VALUE"> <block type="variables_get" id="J5sS;hP6WDy34W529dST"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <next> <block type="procedures_callnoreturn" id="b!p[QTn|PO_1q!gKx`:Z"> <mutation name="3te"></mutation> </block> </next> </block> </next> </block> </next> </block> </statement> <statement name="ELSE"> <block type="debug" id="^I%]x%9OBKRt*M.I%$S{"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="Sv9IVn$8U=*{K{~P91lR"> <field name="TEXT">Verbrauch von zweit größtem ist größer 1/5 der Erzeugung, also alle weiteren auch</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id="djbAtLt]+qcjG_A|LG}L"> <mutation name="ab zwei größer"></mutation> <next> <block type="variables_set" id="5-demYd$NUunsdnMG`DR"> <field name="VAR" id="s}`NhkS#bbbkKnhEvlh}">Wert_2te</field> <value name="VALUE"> <block type="variables_get" id="[pUW+s+d:cy{W:2~,26%"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> <block type="procedures_defnoreturn" id="O=vz(qcihs2+iVH`akUa" x="163" y="2438"> <field name="NAME">3te</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="procedures_callnoreturn" id=":4%{5$1|32/cT[AO@WKq"> <mutation name="Zähler 3"></mutation> <next> <block type="controls_if" id="D{s}JF~Ltg:-nmyDMcJ#"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_compare" id="u)_Wm3yHx]4`/[VS[HIm"> <field name="OP">LT</field> <value name="A"> <block type="get_attr" id="D6AAZE$3`;xx{}xKXT_n"> <value name="PATH"> <shadow type="text" id="MKfmff9vg]a0gvhvl(m1"> <field name="TEXT">Verbrauch</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id="{!yp]dtZcAHuw$A;~J8B"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="*f[WW_o7C0z=SL*bRMKI"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="?}de8mBG,sLQqG#cj}$G"> <field name="NUM">3</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="variables_get" id="Ib5O$!%zQJ#8D,u9CKe,"> <field name="VAR" id="PY}*+`j;}H}^Lm+C9N$n">1_5 Teil</field> </block> </value> </block> </value> <statement name="DO0"> <block type="debug" id="~8+_d|~bw2YlJmNQ.Eq3"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="(q[8(@oPyCzimm/KM*t?"> <field name="TEXT">Verbrauch von dritt größtem ist kleiner 1/3 der Erzeugung, also bekommt jeder 1/3 der erzeugung</field> </shadow> <block type="text_join" id="a5{^v-RO~dzUceY#x[kC"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="]?b,fGRC6-)5K,cphLPo"> <field name="TEXT">Verbrauch von dritt größtem ist kleiner 1/5 der Erzeugung, also bekommt jeder 1/3 der erzeugung: </field> </block> </value> <value name="ADD1"> <block type="variables_get" id="b*hCl#Mq#RfVvE7zUE]v"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <value name="ADD2"> <block type="text" id="eHmQ-$~SM^6BL]p26ep$"> <field name="TEXT">W</field> </block> </value> </block> </value> <next> <block type="control_ex" id="4mcok9njHDSZ+8yL=Xp2"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="]@na!y}BG~sYKNA3q2lZ"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="GNb23rXp%:TH#[+Ei%0R"> <field name="BOOL">TRUE</field> </shadow> <block type="variables_get" id="g!EnU=YPke@bm!QneQdE"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="%j59`B.Jr$34c=U),rtX"> <field name="NUM">0</field> </shadow> </value> <next> <block type="variables_set" id="`Qi6l.*?MO=!t*eGeo5@"> <field name="VAR" id=";UV.oZ3B2@*-Y0JW8g|U">Wert_3te</field> <value name="VALUE"> <block type="variables_get" id="VaLW20b?t6|i8qAaGMd-"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <next> <block type="procedures_callnoreturn" id="D771Fum89TO4XiFC:n$)"> <mutation name="4te"></mutation> </block> </next> </block> </next> </block> </next> </block> </statement> <statement name="ELSE"> <block type="debug" id="2*+i|`nj_a,(r_jtCyz_"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="[o~-R`_@,dn~K*O::`-."> <field name="TEXT">Verbrauch vom dritt größtem ist größer 1/5 der Erzeugung, also alle weiteren auch</field> </shadow> </value> <next> <block type="procedures_callnoreturn" id=")uLKJbJs6-jxIzaxTnTX"> <mutation name="ab drei größer"></mutation> <next> <block type="variables_set" id="KlHM457qfI9rs~G6_1`k"> <field name="VAR" id=";UV.oZ3B2@*-Y0JW8g|U">Wert_3te</field> <value name="VALUE"> <block type="variables_get" id="H@5~WSBF+y1)zk0R*fP1"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> <block type="procedures_defnoreturn" id="l|y)O@@Ui!T!ha0};SYX" x="163" y="3063"> <field name="NAME">4te</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="procedures_callnoreturn" id="67HI8.5F9CAB/}-sOH#T"> <mutation name="Zähler 4"></mutation> <next> <block type="controls_if" id="]C|#9Ge$zO?U,G8yhJMx"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_compare" id="qrQCPHhNBMf[E^$9gyz["> <field name="OP">LT</field> <value name="A"> <block type="get_attr" id="-1~z@sg``RSEu-A..dOG"> <value name="PATH"> <shadow type="text" id="fU_N45UM-Bgh@ZU$c*]y"> <field name="TEXT">Verbrauch</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id="/R,TVrCS@$6c=]:aQa]["> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="af1nHfpN6(_wkiUr(%xF"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="Bjpb96j*T4_se^ifIv6{"> <field name="NUM">4</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="variables_get" id="PS9cR{MgA0DWSH2S01qs"> <field name="VAR" id="PY}*+`j;}H}^Lm+C9N$n">1_5 Teil</field> </block> </value> </block> </value> <statement name="DO0"> <block type="debug" id="{X-tB)GAoAp:axuBE0;g"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="(q[8(@oPyCzimm/KM*t?"> <field name="TEXT">Verbrauch von dritt größtem ist kleiner 1/3 der Erzeugung, also bekommt jeder 1/3 der erzeugung</field> </shadow> <block type="text_join" id="D4=RJ|3%:6[-~#6{fZVk"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="E}4*saujr#E/ziv0n_%D"> <field name="TEXT">Verbrauch von viert größtem ist kleiner 1/5 der Erzeugung, also bekommt jeder 1/3 der erzeugung: </field> </block> </value> <value name="ADD1"> <block type="variables_get" id="]5np8X~/[n#Kt*]1I.(l"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <value name="ADD2"> <block type="text" id="8$Q4b@.KNZqo/;n#J;;3"> <field name="TEXT">W</field> </block> </value> </block> </value> <next> <block type="control_ex" id="eM?cpr:-izS~~U,yzi4p"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="W0BhKryj0ib.|m%NvII2"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="GNb23rXp%:TH#[+Ei%0R"> <field name="BOOL">TRUE</field> </shadow> <block type="variables_get" id="|d1X-d|I]f=9dos]ZPa["> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="p9:E~goGpA:r-ALIBtC`"> <field name="NUM">0</field> </shadow> </value> <next> <block type="variables_set" id=")[15ePYPJoZ%S_D{by!D"> <field name="VAR" id="1F^o@YN[2g~LM-V]o$b!">Wert_4te</field> <value name="VALUE"> <block type="variables_get" id="a^$K$.GgHt~c|:%$=1%#"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <next> <block type="procedures_callnoreturn" id=",8;cE3Hi{WS+f6)rCMP*"> <mutation name="5te"></mutation> </block> </next> </block> </next> </block> </next> </block> </statement> <statement name="ELSE"> <block type="debug" id="zOoWrQ,Wc17^q?9SQ~bg"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id=";]r$n^.JDeim$kQ[lVe-"> <field name="TEXT">Verbrauch von viert größtem ist größer 1/5 der Erzeugung, also alle weiteren auch</field> </shadow> </value> <next> <block type="variables_set" id="Q*`U^L$!MggZx%f8,1rd"> <field name="VAR" id="1F^o@YN[2g~LM-V]o$b!">Wert_4te</field> <value name="VALUE"> <block type="variables_get" id="^1S8hormOvff#(`~~k#("> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <next> <block type="procedures_callnoreturn" id=";Y)B?4{sth`HynMnXr)E"> <mutation name="ab vier grösser"></mutation> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> <block type="procedures_defnoreturn" id="4NvFzS{_qs6}=cL~_46O" x="163" y="3663"> <field name="NAME">5te</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"> <block type="procedures_callnoreturn" id="(gn:f8LSnRnlh#$33t0q"> <mutation name="Zähler 5"></mutation> <next> <block type="controls_if" id="h4)a]Q_/RqVU:7sN[*CD"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_compare" id="o+k9}40Osd^jJC#%9}%V"> <field name="OP">LT</field> <value name="A"> <block type="get_attr" id="gh/hY^tQX`.j]8b@M!%W"> <value name="PATH"> <shadow type="text" id="9)9gi;}yeIsGyP%38AY+"> <field name="TEXT">Verbrauch</field> </shadow> </value> <value name="OBJECT"> <block type="lists_getIndex" id="c]cI5(rnhJ*#Eel_!I%g"> <mutation statement="false" at="true"></mutation> <field name="MODE">GET</field> <field name="WHERE">FROM_START</field> <value name="VALUE"> <block type="variables_get" id="2+.D@.Em!q;@1|5n6ZZ-"> <field name="VAR" id="`=*LwlEhb/8gjZU.W8pv">Liste_sortiert</field> </block> </value> <value name="AT"> <block type="math_number" id="JUD_[Ob9S0SMH!OlYUU*"> <field name="NUM">5</field> </block> </value> </block> </value> </block> </value> <value name="B"> <block type="variables_get" id="?_yv4xk$pWh(loE*/5uh"> <field name="VAR" id="PY}*+`j;}H}^Lm+C9N$n">1_5 Teil</field> </block> </value> </block> </value> <statement name="DO0"> <block type="debug" id="xv]9aFT;/e(QLcqtb%1M"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="(q[8(@oPyCzimm/KM*t?"> <field name="TEXT">Verbrauch von dritt größtem ist kleiner 1/3 der Erzeugung, also bekommt jeder 1/3 der erzeugung</field> </shadow> <block type="text_join" id="{qeuFy.@c;NqQ8[@R]=a"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="ou;vOehDWy-:5EWK]nZ0"> <field name="TEXT">Verbrauch von fünft größtem ist kleiner 1/5 der Erzeugung, also bekommt jeder 1/3 der erzeugung: </field> </block> </value> <value name="ADD1"> <block type="variables_get" id=".tmb085.DNN7IsJ,mn!Z"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <value name="ADD2"> <block type="text" id="6gSiZ)ZVgO8nJx-?aTv9"> <field name="TEXT">W</field> </block> </value> </block> </value> <next> <block type="control_ex" id="FNmi*1!2LQ(h3iPJeLuC"> <field name="TYPE">false</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="OID"> <shadow type="field_oid" id="*yA?v[`NTMbhC#I^nuOt"> <field name="oid">Object ID</field> </shadow> <block type="variables_get" id="TfW||2?yl=1`[,FrQaNt"> <field name="VAR" id="nl~Kh$W3axP]rB5;Vu,#">Zähler_ID</field> </block> </value> <value name="VALUE"> <shadow type="logic_boolean" id="GNb23rXp%:TH#[+Ei%0R"> <field name="BOOL">TRUE</field> </shadow> <block type="variables_get" id="$)91PWz*IiR4E`T[Umq,"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <value name="DELAY_MS"> <shadow type="math_number" id="T8%P~H:z*Z+2+lAT.xGw"> <field name="NUM">0</field> </shadow> </value> </block> </next> </block> </statement> <statement name="ELSE"> <block type="debug" id="v7Z3*PJ!u^mmuR.`1bP]"> <field name="Severity">info</field> <value name="TEXT"> <shadow type="text" id="Za2t)!4lo:7ee,IY9!vl"> <field name="TEXT">Verbrauch von fünft größtem ist größer 1/5 der Erzeugung, also alle weiteren auch</field> </shadow> </value> <next> <block type="variables_set" id="aQvJbeK*P,,^%9+CCZ:s"> <field name="VAR" id="LvJdi,HZcN8CJ5(TUGN?">Wert_5te</field> <value name="VALUE"> <block type="variables_get" id="tB7HpKWpU4|qz7BY6U3u"> <field name="VAR" id="mf$nRg:n*]=]rUqF8p]~">ZählerVerbrauch_</field> </block> </value> <next> <block type="procedures_callnoreturn" id="y_!FeCID2XM/ZztZLOVF"> <mutation name="5t grösster"></mutation> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </xml>
-
@marco-willi du hast aus knapp 500 Zeilen jetzt 2500 Zeilen gemacht?
-
@homoran wie gesagt, ich musste den Code unterteilen, ich bekam immer ne Fehlermeldung, mehr als 10‘000 Zeichen würden nicht gehen. Hier noch die Bilder welche ich noch zu Beginn mit nur 3 Zählern hatte. Ich habe dann auf 5 erweitert.
-
@marco-willi
So große Blocklys baut man nicht! Wer soll da durchsteigen?
Das Blockly hat nichts mit der Aufteilung des Eigenverbrauchs auf die 5 Verbraucher zu tun! Das sollte ein separates Skript sein.
Für jeden Verbraucher erstellt man ein eigenes Skript (Export / Import mit ID-Anpassung). Ebenso für die PV / Eigenverbrauch. -
@paul53
Ich habe das skript nicht gebaut nur erweitert. Zumindest ist es für mich bis auf zwei drei punkte verständlich und nachvollziehbar.