Hi, ich habe das Script nun an einem sonnigen Tag testen können und es funktioniert eigentlich sehr gut.
Womit ich nicht gerechnet habe ist, dass zwei Geräte (auch wenn das 1. 5KW hat und das 2. mit 1,5 KW deutlich weniger Leistung) die Eingangsleistung (peak ~3800 W, Dauerbetrieb muss ich noch testen) massiv nach oben genschnell ist. Das führte dann zu einer Art Taktung. Im Sommer zum kühlen eingetlich kein Problem. Im Herbst/Winter/Frühling zum Heizen offensichtlich schon.
Einstufig hatte die Anlage deutlich weniger verbraucht (peak ~1300 W und Dauerbetrieb dann rund 800 W) und konnte konstant laufen:
Jetzt würde ich gerne mehrere Anpassungen machen:
- Bis der erste peak überschritten ist dauert es ca. 45 min - erst dann sollte Stude 2 hinzukommen (sprich seperate EInstellung für den delay.)
- Ich versorgen verschiedene Zimmer, ich würde gerne für jedes einen Temperaturgrenze einstellen können (Alternativ über die Anpassung der Wunschraumtemperatur)
- Ich hätte (für den Sommer) gerne die Möglichkeit eine 3. und 4. Stufe hinzuzufügen. Für das 3. Gerät im "Schlafzimmer" (nur im Sommer relevant da gekühlt aber nicht geheizt) und später evtl. die Wallbox bzw. eine Heizung im "Spielezimmer"
Cool wäre, wenn ich durch Schlater in folgender Art festlegen könnte, welche Überschussnutzung aktiv sein soll:
hier: Bezug Gesamtanlage; Überschuss Script aktiv/inaktiv; Wohnen an/aus; Schlafen an/aus; Büro an/aus
Das Problem, welche ich habe ist, dass ich folgende zwei Blöcke nicht verstehe. Gerne lese ich mir das auch an, wenn mir jemand einen TIp hat wonach ich suchen muss:
Hier nochmal das aktuelle Script grafisch und als code:
<xml xmlns="https://developers.google.com/blockly/xml">
<variables>
<variable id="4Gn:;E{l/[q@N.n`#%N-">ueberschuss</variable>
<variable id="{umJ-nLA;h3b;5lV|xVw">temperatur</variable>
<variable id="F3DfKKl}(f(-BN6KE?,p">grenzwertEIN</variable>
<variable type="timeout" id="delayON">delayON</variable>
<variable type="timeout" id="delayOFF">delayOFF</variable>
</variables>
<block type="on" id="O}Kl~Wy%DO2=[$c!ORLr" x="-2237" y="-555">
<field name="OID">javascript.0.pv.Ueberschuss_gemittelt</field>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<statement name="STATEMENT">
<block type="variables_set" id="9rM+k(|MF}@#ANARjH4}">
<field name="VAR" id="4Gn:;E{l/[q@N.n`#%N-">ueberschuss</field>
<value name="VALUE">
<block type="math_single" id="-|H9.V;$rWl0DQ`:5O#.">
<field name="OP">NEG</field>
<value name="NUM">
<shadow type="math_number" id="u2]m-{g-SgBo-+hW^#es">
<field name="NUM">9</field>
</shadow>
<block type="on_source" id="Az%=-*#Pxl^K$9?L^PrG">
<field name="ATTR">state.val</field>
</block>
</value>
</block>
</value>
<next>
<block type="variables_set" id=";WZ:Ppq9`(9L%qA6Vc!h">
<field name="VAR" id="{umJ-nLA;h3b;5lV|xVw">temperatur</field>
<value name="VALUE">
<block type="get_value" id="T1agm|,Fc*ylN9HKcE[Y">
<field name="ATTR">val</field>
<field name="OID">hmip.0.devices.3014F711A0000E5D898EA33C.channels.1.actualTemperature</field>
</block>
</value>
<next>
<block type="variables_set" id="juY}?yXa:1VPEb4K87Yg">
<field name="VAR" id="F3DfKKl}(f(-BN6KE?,p">grenzwertEIN</field>
<value name="VALUE">
<block type="logic_ternary" id="z}!pm(iivex,saz5=:+3">
<value name="IF">
<block type="get_value" id="Fs)4U?An%hb8N*4nkmnL">
<field name="ATTR">val</field>
<field name="OID">melcloud.0.devices.115410591.control.power</field>
</block>
</value>
<value name="THEN">
<block type="math_number" id="~wlGGheE~5r@NtqHNf*`">
<field name="NUM">700</field>
</block>
</value>
<value name="ELSE">
<block type="math_number" id="sx!f{_UV(}XAE|c$KDf!">
<field name="NUM">2000</field>
</block>
</value>
</block>
</value>
<next>
<block type="controls_if" id="4oKdE,9$x;2V-h}0s/[X">
<mutation elseif="1"></mutation>
<value name="IF0">
<block type="logic_compare" id="pa4~^1D+6m%5O:;yhn/k">
<field name="OP">LT</field>
<value name="A">
<block type="variables_get" id="3iC[.Nb@j*H+,;3/usv]">
<field name="VAR" id="4Gn:;E{l/[q@N.n`#%N-">ueberschuss</field>
</block>
</value>
<value name="B">
<block type="variables_get" id="^;qG_Plj?2xR9V|9$nY%">
<field name="VAR" id="F3DfKKl}(f(-BN6KE?,p">grenzwertEIN</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="timeouts_cleartimeout" id="X2w@nJSh3{Zfi?Ew5ZB)">
<field name="NAME">delayON</field>
</block>
</statement>
<value name="IF1">
<block type="logic_multi_and" id="qlG8G/8{}*{)PwfumkdN">
<mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
<value name="AND0">
<block type="logic_compare" id="*8g`N/-N4i-J.;I0;y`3">
<field name="OP">LTE</field>
<value name="A">
<block type="variables_get" id="Do0R6DT69RD:PH%p#BEK">
<field name="VAR" id="{umJ-nLA;h3b;5lV|xVw">temperatur</field>
</block>
</value>
<value name="B">
<block type="math_number" id="E$0qqdhF8aQhW_L/Kqm,">
<field name="NUM">25</field>
</block>
</value>
</block>
</value>
<value name="AND1">
<block type="logic_negate" id="rtDV;?lt}Og?RFoVQz,}">
<value name="BOOL">
<block type="timeouts_gettimeout" id="}gW19$A+]F,(#$xu?8XU">
<field name="NAME">delayON</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO1">
<block type="timeouts_settimeout" id="BR]Gb};mBCKXr5P3~,!o">
<field name="NAME">delayON</field>
<field name="DELAY">5</field>
<field name="UNIT">min</field>
<statement name="STATEMENT">
<block type="controls_if" id="$4quX@F$jevEjdm#i-rI">
<mutation elseif="1"></mutation>
<value name="IF0">
<block type="logic_negate" id="^Xd`^;l]E`qZo+i7-P#1">
<value name="BOOL">
<block type="get_value" id="5O8]ve/A}XjW7:gX?Zv|">
<field name="ATTR">val</field>
<field name="OID">melcloud.0.devices.115410591.control.power</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="comment" id="[kprbkovS?*3%jf@Y#aa">
<field name="COMMENT">EG Power Klima</field>
<next>
<block type="control" id="lo|%n=5M/0j:WBSqWf+M">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">melcloud.0.devices.115410591.control.power</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="uKI$`*$Ed:/Hs;OuOgZ_">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</next>
</block>
</statement>
<value name="IF1">
<block type="logic_negate" id="Em$hq=S+Np5t_%/cU!05">
<value name="BOOL">
<block type="get_value" id="h~H1usS*^O/lJ.[*qVg+">
<field name="ATTR">val</field>
<field name="OID">melcloud.0.devices.115412909.control.power</field>
</block>
</value>
</block>
</value>
<statement name="DO1">
<block type="comment" id="sVHJmjKGm5Q;CH4G{.a;">
<field name="COMMENT">DG Power Klima</field>
<next>
<block type="control" id="npaB%#$2OKNK2+]/.S)-">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">melcloud.0.devices.115412909.control.power</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="edQCsF00RtWSm9H:u)uo">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</next>
</block>
</statement>
</block>
</statement>
</block>
</statement>
<next>
<block type="controls_if" id=")Aa/#{~YgC2qXCg3}A(`">
<mutation elseif="1"></mutation>
<value name="IF0">
<block type="logic_multi_and" id="X8Y*^6vbO`}|~[J8BdT=">
<mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
<value name="AND0">
<block type="logic_compare" id="QedwPg6grC`o:5LRTL),">
<field name="OP">GT</field>
<value name="A">
<block type="variables_get" id="rB6xa-Mb]G*-mmckyQdy">
<field name="VAR" id="4Gn:;E{l/[q@N.n`#%N-">ueberschuss</field>
</block>
</value>
<value name="B">
<block type="math_number" id="/#ai3yJdU;7Kv[qIAuZs">
<field name="NUM">100</field>
</block>
</value>
</block>
</value>
<value name="AND1">
<block type="logic_compare" id="k|vAciG0%7f?w5RuBgg2">
<field name="OP">LT</field>
<value name="A">
<block type="variables_get" id="Ye:{AS?Sm[f!xLAG6teq">
<field name="VAR" id="{umJ-nLA;h3b;5lV|xVw">temperatur</field>
</block>
</value>
<value name="B">
<block type="math_number" id="2.ApX;=WA|)6oO3%`|HI">
<field name="NUM">25</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="timeouts_cleartimeout" id="m.z{TzIDQfl|/[=#RaK.">
<field name="NAME">delayOFF</field>
</block>
</statement>
<value name="IF1">
<block type="logic_multi_and" id="mt.Vi`^1yk*Q}u#.JJ[+">
<mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
<value name="AND0">
<block type="logic_compare" id="fSHG[5;g,{Nef3F~X/?U">
<field name="OP">LTE</field>
<value name="A">
<block type="variables_get" id="9MNFGY.j`KgnEIc3~,q]">
<field name="VAR" id="{umJ-nLA;h3b;5lV|xVw">temperatur</field>
</block>
</value>
<value name="B">
<block type="math_number" id="`9cMKWUdLvf9-YOQJ.cX">
<field name="NUM">25</field>
</block>
</value>
</block>
</value>
<value name="AND1">
<block type="logic_negate" id="SKw4uGK9I*MpneUwy1Vb">
<value name="BOOL">
<block type="timeouts_gettimeout" id="PG:8V(HFwayC?nKW:49u">
<field name="NAME">delayOFF</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO1">
<block type="timeouts_settimeout" id="i^RZHFAT=XkN~Dx05zGB">
<field name="NAME">delayOFF</field>
<field name="DELAY">5</field>
<field name="UNIT">min</field>
<statement name="STATEMENT">
<block type="controls_if" id="x*0McL5;K_m#{;6]c8vk">
<mutation elseif="1"></mutation>
<value name="IF0">
<block type="get_value" id="A*B-HXA;0?9s2z/XO|uL">
<field name="ATTR">val</field>
<field name="OID">melcloud.0.devices.115412909.control.power</field>
</block>
</value>
<statement name="DO0">
<block type="comment" id="az?eM.|@}b=xwJ2uCi:^">
<field name="COMMENT">DG Power Klima</field>
<next>
<block type="control" id="9{$@H/pJQRq?T9Xd|`J/">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">melcloud.0.devices.115412909.control.power</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="26;D`1LL!)%@)DR8^9q#">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</next>
</block>
</statement>
<value name="IF1">
<block type="get_value" id="{d77snzsCj=I9D46~:+O">
<field name="ATTR">val</field>
<field name="OID">melcloud.0.devices.115410591.control.power</field>
</block>
</value>
<statement name="DO1">
<block type="comment" id="F[^il?xn^VFWj(a!ZsBj">
<field name="COMMENT">EG Power Klima</field>
<next>
<block type="control" id="28UBpB@KC1bGC6FIw[J(">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">melcloud.0.devices.115410591.control.power</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="~(E6:hHq$,k4}z-h9T^T">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</next>
</block>
</statement>
</block>
</statement>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</xml>