NEWS
Überschussnutzung Klimaanlage zum Heizen - Timeouts
-
Hi,
ich möchte die Klimaanlage zum zuheizen benutzen, wenn die PV mehr als 2000 W Überschuss "relativ konstant" anliegen. Dafür habe ich eine Liste genommen, die die Leistung meiner Photovolaik über 60 "Ereignisse" (ca. 60 Sekunden) glättet. Das funktioniert eigentlich schön.
Ergebnis:
Damit will ich dann die Klimannalge heizen lassen. Zunächst "Einstufig", sprich ein Gerät von 3 Stück. (Gerne würde ich das später auf mindestens 2 Geräte bzw. zwei Stufen erweitern. Dabei könnte auch der Energiezähler der Klimaanlage selbst ins Spiel gebracht werden. Das 3. Innengerät ist im Schlafzimmer, da wird nicht geheizt.)
Jetzt ist eine Klimaanlage zu heizen recht träge und sollte nicht dauernd ein uns ausgeschalten werden.
Ich begteife aber trotz Internetrecherche und Youtoube Videos nicht, wich die die Timeouts da sinnvoll einsetze, dass die Anlage - wenn sie an ist - z.B. nur alle 10 minuten checkt, ob sie sich ausschalten sollte?Könnte ihr mir evtl. einen Tip geben?
Prinzipiell funktioniert das Script so schon, ist aber nicht perfekt.
Danke euch!
ika -
@ika
Hart ausschalten ist sicher nicht gut für die Klimaanlage. Wie wäre es denn, wenn du statt dessen die Solltemperatur rauf oder runter setzt?
Dann fährt sie runter und reduziert die Leistungsaufnahme, geht aber nicht aus.Ansonsten, deine Mittelwertbildung gefällt mir, werde ich mal probehalber übernehmen-
-
@ika die Idee von @Linedancer ist nicht schlecht. Da musst du nur sicherstellen das deine Klimaanlage auf "Heizen" steht, nicht auf "Auto" oder "Kühlen". Dann würde die z.B. bei eingestellten 18 Grad nichts machen.
Meine Lösung ist das ich nur alle 15 Minuten prüfe ob ich die Klimaanlage ein- oder ausschalte. Auch um zu verhindern das diese zu oft ein- oder ausgeschaltet wird. Also fester Zeitplan der alles prüft und dann entscheidet.
Da ich für jeden Stromkreis den Verbrauch separat messe, kann ich genau sehen wieviel was verbraucht. Meine Logik für das Einschalten ist aber nur wieviel Überschuss vorhanden ist (mehr als -1.500W (Minus!)) den ich vom Stromzähler bekomme, die Logik für das Ausschalten ist wenn der Verbrauch am Stromzähler mehr als 150W ist. Also nicht hart bei 0.
Die Idee den Verbrauch der letzten 60 Ergebnisse bzw. Zeitraum ist gut, allerdings verstehe ich nicht wie das in deinem Skript funktionieren soll. Die Liste müsstest du bei jeder Änderung neu erstellen, und stehen da wirklich 60 verschiedenen Werte drin? Und wenn ja, wird der Wert im Datenpunkt wirklich 1x pro Sekunde aktualisiert?
Für Waschmaschine, Trockner und Co. habe ich eine Aufzeichnung im SQL-Adapter aktiviert. Die Werte werden alle 15 bis 60 Sekunden aktualisiert (Tasmota Zwischenstecker, kann man einstellen).
Per Blockly hole ich mir dann z.B. den Durchschnittswert der letzten 10 Minuten vom SQL-Adapter:
Die Prüfung auf
" "
musste ich - wie ich aus der Erinnerung meine - machen falls es keine Werte für den Zeitraum gibt, ansonsten würde reichen das es mindestens einen Wert in dem Zeitraum gibt. -
@bananajoe sagte in Überschussnutzung Klimaanlage zum Heizen - Timeouts:
Die Liste müsstest du bei jeder Änderung neu erstellen, und stehen da wirklich 60
Nein, er entfernt das älteste Element und fügt ein neues an.
Dadurch hat er immer 60 Elemente -
@ika sagte in Überschussnutzung Klimaanlage zum Heizen - Timeouts:
Jetzt ist eine Klimaanlage zu heizen recht träge und sollte nicht dauernd ein uns ausgeschalten werden.
Ich begteife aber trotz Internetrecherche und Youtoube Videos nicht, wich die die Timeouts da sinnvoll einsetze, dass die Anlage - wenn sie an ist - z.B. nur alle 10 minuten checkt, ob sie sich ausschalten sollte?Ich denke an dieser Stelle liegt ein Denkfehler vor. Du willst nicht alle 10 Minuten nachschauen ob ein/auszuschalten ist, sondern du willst sicherstellen das seit dem letzten Schaltvorgang mindestens 10 Minuten vergangen sind. Das ist nicht das gleiche.
Ich würde das so lösen (ok.. beim zusammensetzen hab ich 15 Minuten Wartezeit geplant, nicht 10:
Wie funktioniert das ganze:-
in einer Variable wird gespeichert ob geheizt werden darf oder nicht (Genug Überschuss da).
-
das schalten der Heizung wird über eine Änderung der Temperatur erreicht. Die doppelte Abfrage sogt dafür das immer nur der Übergang von <26 auf >= 26 und umgekehrt einen Event auslöst
-
Sollte die Freigabe der Heizung wegfallen kann das auch einen Event auslösen.
-
Der Schaltzeitpunkt wird berechnet. Dazu wird geschaut wie lange es her ist das die Heizung umgeschaltet wurde. (Die Zahl ist dabei in ms). Sind das weniger als 15 Minuten (oder 15601000 ms) dann wird der timeout in 1 ms ausgeführt, ansonsten in der entsprechenden Differenzzeit.
Wirklich geschaltet wird aber nur wenn der Soll- und der Ist-Wert sich unterscheiden.
A.
-
-
@martinp sagte in Überschussnutzung Klimaanlage zum Heizen - Timeouts:
@bananajoe sagte in Überschussnutzung Klimaanlage zum Heizen - Timeouts:
Die Liste müsstest du bei jeder Änderung neu erstellen, und stehen da wirklich 60
Nein, er entfernt das älteste Element und fügt ein neues an.
Dadurch hat er immer 60 Elementeah, stimmt, nicht weit genug geschaut.
-
Danke euch bis hier her.
Ich brauche - hoffentlich die kommenden Tage - etwas Zeit das anzuchauen und zu analysieren.Nur so viel vorab:
-
Ich schalte nicht Hart. Power ist hier der MelCloud Adapter der Klimaanlage. Dort kann ich auch Termperaturen etc. einstellen (will ich auch später hinzufügen) und das Gerät "sanft" ein und ausschalten. Messen kann ich die Leistung dann in einem zweiten Schritt tatsächlich mit einem Shelly. Die Anpassung der Solltemperatur ist ein top tip, schaue ich mir gerne mal an, wie die Anlage dann reagiert. (Im Sommer will ich damit dann auch kühlen können.)
-
Die Idee für die Glättung habe ich auch irgendwo hier im Forum gefunden und adaptiert. Ich lese dabei per IR-Reader meinen Smarten Stromzähle raus und der aktualisiert eher häufiger als 1x pro Sekunde. Experimentiere gerade etwas mit der Anzahl der Einträge in der Liste.
-
-
@ika Ich habe etwas ähnliches am Laufen, allerdings nicht mit Blockly.
Ich trigger tatsächlich auch nach Zeit und schreibe alle 10 Minuten den aktuellen Überschuss rotierend in 3 Datenpunkte. (X:09 und X:39 Uhr schreiben Datenpunkt 1, X:19 und X:49 Uhr schreiben Datenpunkt 2 und X:29 und X:59 Uhr schreiben Datenpunkt 3). Aus den 3 Datenpunkten bilde ich den Mittelwert.
Ich betrachte also die letzte halbe Stunde.Um X:00 Uhr und alle 10 Minuten danach wird dann für jedes der 3 Innengeräte ein Datenpunkt zum Einschalten (true/false) gesetzt.
Die Prüfung beinhaltet neben dem Überschuss noch pro Raum...- Fensterstatus
- Innentemperatur
- Außentemperatur
Wenn alles passt, wird 1 Innengerät eingeschaltet. Ist im nächsten Durchlauf immer noch alles passend, wird das zweite Gerät eingeschaltet...
Abgeschaltet werden sie erst wenn der Überschuss im Mittel bei 50W liegt. Dann auch wieder ein Gerät nach dem anderen.
Wichtig ist zu beachten, dass sobald eine Anlage läuft, der Überschussbetrag anders bewertet werden muss.
-
@ika sagte: Timeouts da sinnvoll einsetze, dass die Anlage - wenn sie an ist - z.B. nur alle 10 minuten checkt, ob sie sich ausschalten sollte?
Beispiel mit 2 Stufen, wobei zusammen mit Stufe 1 (Gerät 1) der Kompressor der Außeneinheit zuschaltet.
-
Hi, ich bin noch nicht dazu gekommen das ganz umzubauen, auch wenn ich eure Scripte - zumindest größtenteils - verstehe.
Daher will ich es morgen mal so versuchen:
Und vielleicht noch zwei Fragen die für euch vielleich klar sind:
- das Stop Block beim Timeout im "schalte ein" Block bewirkt, dass der Timer der Ausführungsverzögerung zurückgesetzt wird oder?
- Was macht der "Verzögerung" Block?
-
@ika sagte: das Stop Block beim Timeout im "schalte ein" Block bewirkt, dass der Timer der Ausführungsverzögerung zurückgesetzt wird oder?
Ja, der Timer wird gestoppt und die Variable
delay
wird auf null zurück gesetzt.@ika sagte in Überschussnutzung Klimaanlage zum Heizen - Timeouts:
Was macht der "Verzögerung" Block?
"nicht Verzögerung delay" verhindert, dass mehrere Timer gleichzeitig laufen, die sich dann nicht mehr stoppen lassen.
-
@ika
hmm, so geht es nicht, da schaltet er dauerhaft ein und aus im Sekundentakt....
muss mir das nochmal anschauen -
ok, ich habe zwischenzeitlich etwas experimentiert. Mit meiner Lösung klappt einstufig eigentlich seht gut. Aber aus irgend einem für mich nicht nachvollziehbaren Grund, klappt das nur einmal zuverlässig. Wenn die Anlage dann einmal abschaltet, schaltet sie mehrmals pro Sekunde ein uns aus. Woran liegt das?
und so sieht die Grafik dazu aus bzw. die Leisutngsaufnahme und Schaltzeitpunkte der Klimaanlage:
Bis auf den Fall um 14 Uhr schaut ist das genau was ich möchte. Vielleicht muss ich irgendwann noch einplanen, dass die Anlage am Anfang zum hochheizen (bzw. runterkühlen im Sommmer) eine Zeit lang mehr Energie benötigt.Ich habe aber jetzt mal das Script nachgebaut, das ich am ehesten glaube zu verstehen und werde es die kommenden Tage (wenn sich die Sonne mal wieder blicken lässt) testen. Was aber machen der Teil "Falls <Wert> von Objekt ID <Power> ohne eine Logik?
Spielereien wie weitere Abfragen zur Umwelt werde ich einbauen, wenn es so funktioniert, wie ich mir das vorstelle.
Ich danke euch!
-
@linedancer Das ist nicht die Stromzufuhr, sondern die Steuerung der Geräte über Wlan. ALso analog dem Ein- oder Ausschalten über die Fernbedienung
-
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/ausDas 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>
-
@ika sagte: die Eingangsleistung (peak ~3800 W
Dann muss der Einschaltgrenzwert auf mind. 4000 W erhöht werden, damit nicht getaktet wird.
@ika sagte in Überschussnutzung Klimaanlage zum Heizen - Timeouts:
dass ich folgende zwei Blöcke nicht verstehe.
Ich bin davon ausgegangen, dass es sich um ein Multisplit-Gerät handelt, was bedeutet, dass bei Einschalten des ersten Innengerätes (EG) der Kompressor des Außengerätes mit eingeschaltet wird, der die hohe Leistung hat. Bei Zuschalten des zweiten Innengerätes (OG) erhöht sich die Leistung nur noch gering - deshalb der niedrigere Einschaltgrenzwert.
"falls nicht Wert von Power" prüft, ob das betreffende Gerät noch ausgeschaltet ist.
-
@ika sagte: das aktuelle Script
Diese UND-Verknüpfung mit der Temperatur ist kontraproduktiv:
Außerdem sollte man auch für die Temperatur eine Hysterese vorsehen!