NEWS
Heizstab-Regelung geht nicht mehr
-
Hallo,
ich habe in meinem Warmwasserspeicher ein Heizstab, den ich mittels 2 Shellys Ein- und Ausschalte, gesteuert über ein Blockly.
Hatte kürzlich ein Stromausfall, was zum Tod meiner Nuk-SSD (Proxmox) führte. Nach Neuinstallation, funktioniert dieses Blockly nicht mehr, der Heizstab schaltet sich Ein, aber bei erreichen der Soll-Temperatur nicht mehr Aus.
Der zweite Sonst-Falls, (Oder) ist die aktuelle Wassertemp. zur SollTemp. die ich über Vis eingeben kann zu (Oder) SOC <= 80,
was dann den Heizstab Ausschalten sollten.
WarmwasserSpeichervorrang, soll den Heizstab nur einmaal am Tag Aufheizen. Und dient der weiteren Steuerung...
Kann einer mal drüberschauen ob da irgendwo ein Fehler ist, bzw. was falsch ist?<xml xmlns="https://developers.google.com/blockly/xml"> <block type="on_ext" id="S}9;@u-^#2Y066m=R{%B" x="-862" y="-162"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="j[Jh69`sc-i5YM6`;CRW"> <field name="oid">mqtt.0.DEYE_12K.DEYE_12K.BatteryCapacity</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="N*]80xx-0{rWbmg[Q_1S"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_multi_and" id="e10Eh/fCIp!suALCx+X~"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation> <value name="AND0"> <block type="logic_compare" id="RrOW%c:e#:x3.r+Wx]0q" inline="false"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="jl34PESRr[*n}5bS`92!"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Heizung.WarmWasserSpeicherVorrang</field> </block> </value> <value name="B"> <block type="logic_boolean" id="+wB[DFg@4vMs@-k{{5Ab"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <value name="AND1"> <block type="logic_compare" id="P9ZZ9lm~Fm`jzpE[S+3t"> <field name="OP">GTE</field> <value name="A"> <block type="on_source" id="9WF$2if_Z:J*NHlF4gyo"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="math_number" id="jpOy+N65:jVcPAw,k.-E"> <field name="NUM">97</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="debug" id="Qve[fRh,[D8AxU$-XP}%" disabled="true"> <field name="Severity">warn</field> <value name="TEXT"> <shadow type="text" id="MSKl_{8pQ3z/69/-gYWW"> <field name="TEXT">HeizstabStufe1</field> </shadow> <block type="text_join" id="H4=|E$?}:g~uayvMQ(9S"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="S~@sS-!/EtiJEcUIZ6u~"> <field name="TEXT">Heizstufe 1, </field> </block> </value> <value name="ADD1"> <block type="text" id=":EX5?oJ:uZ~~Fl:LDhUb"> <field name="TEXT">Warmwassertemperatur: </field> </block> </value> <value name="ADD2"> <block type="get_value" id="`jAtV*rirs][HB~%p;RZ"> <field name="ATTR">val</field> <field name="OID">mqtt.0.Heizung.HzWarmwasser.TemperatureHzWarmwasser</field> </block> </value> </block> </value> <next> <block type="control" id="9y[TJ2@?x*Baw^}L^ht5"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.scriptEnabled.tonis_projekte.Heizung.Automatik_Heisswasser_aus</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="*d{qPDGU?M-]^H6?_V$B"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="}#16tsDSE+4%`9%3(t(*"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">sonoff.0.Heizstab L1.POWER</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">5</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="8{s(P[l)M7dNu/7N}c},"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="oL@nCdw5u|@vcM)R5(B~"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">sonoff.0.Heizstab L3.POWER</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">15</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="FBt#=oV|!~LL39U,06I-"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_multi_or" id="G3v`j2Uh^mfoXLRlPg{h"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation> <value name="OR0"> <block type="logic_compare" id="*Y,tKiL%OU$4AAk$Jex0" inline="false"> <field name="OP">GTE</field> <value name="A"> <block type="get_value" id="jp(.!RM28*xtP0(2-4~/"> <field name="ATTR">val</field> <field name="OID">mqtt.0.Heizung.HzWarmwasser.TemperatureHzWarmwasser</field> </block> </value> <value name="B"> <block type="get_value" id="^EwNA?W%Do^w9o38/poN"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Heizung.HeizstabSollTemperatur2</field> </block> </value> </block> </value> <value name="OR1"> <block type="logic_compare" id="aXwhG;yxzL?)6UcZ.(ug"> <field name="OP">LTE</field> <value name="A"> <block type="on_source" id=",OX2(lTwpMWub5/!hfz="> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="math_number" id="F^_kzFNqb[1JHx%;@Sl1"> <field name="NUM">80</field> </block> </value> </block> </value> </block> </value> <statement name="DO1"> <block type="debug" id="%);iu_r0=ay2rN)s!V`9" disabled="true"> <field name="Severity">error</field> <value name="TEXT"> <shadow type="text" id=";g98|W:efZZawUjA_}4@"> <field name="TEXT">WarmwasserSpeicherVorrangWahr, Heizstab Aus</field> </shadow> </value> <next> <block type="update" id="B8JF(dNuGd~8!UQT0C@V"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Heizung.WarmWasserSpeicherVorrang</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="Ozl[Hr|TTP3c):?y$Ed8"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="@hip|_@e$G?#cxBW!]?w"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">sonoff.0.Heizstab L1.POWER</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">5</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="%o7ZlGBV)T5!YlnnVLQ}"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="control" id="ftg=;DDLK`ELH$E_C}2I"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">sonoff.0.Heizstab L3.POWER</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">15</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="DHNU(bZ$nBYwN,l#/6.!"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> <next> <block type="schedule" id="y|laB6X_UtmZRF::zx?B"> <field name="SCHEDULE">45 20 * * *</field> <statement name="STATEMENT"> <block type="update" id="N[.F}i~zicQH`U~u(ZCA"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Heizung.WarmWasserSpeicherVorrang</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="kZ2xjAZ)F6`@~!A]3Nd`"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="debug" id="pVt[tpA]AfapRuuMx]::" disabled="true"> <field name="Severity">error</field> <value name="TEXT"> <shadow type="text" id="O!PBJ46#KF?dUArL4!Ba"> <field name="TEXT">WarmwasserSpeicherVorrangUnwahr</field> </shadow> </value> </block> </next> </block> </statement> </block> </next> </block> </xml>
was bedeutet das im LOG?
2025-05-16 10:56:52.921 - [33mwarn[39m: javascript.0 (2681) at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2090:20) 2025-05-16 10:56:52.921 - [33mwarn[39m: javascript.0 (2681) at Object.<anonymous> (script.js.tonis_projekte.solaranlage.GrowattDatenParsen:26:3) 2025-05-16 10:56:52.921 - [33mwarn[39m: javascript.0 (2681) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1452:38) 2025-05-16 10:56:52.921 - [33mwarn[39m: javascript.0 (2681) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:645:29) 2025-05-16 10:56:52.921 - [33mwarn[39m: javascript.0 (2681) at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.ts:11048:62) 2025-05-16 10:56:52.921 - [33mwarn[39m: javascript.0 (2681) at processImmediate (node:internal/timers:483:21) 2025-05-16 10:56:52.921 - [33mwarn[39m: javascript.0 (2681) You are assigning a number to the state "0_userdata.0.Growatt.PVEnergyTotal" which expects a object. Please fix your code to use a object or change the state type to number. This warning might become an error in future versions. 2025-05-16 10:56:52.921 - [33mwarn[39m: javascript.0 (2681) at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2090:20) 2025-05-16 10:56:52.921 - [33mwarn[39m: javascript.0 (2681) at Object.<anonymous> (script.js.tonis_projekte.solaranlage.GrowattDatenParsen:27:3) 2025-05-16 10:56:52.921 - [33mwarn[39m: javascript.0 (2681) at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1452:38) 2025-05-16 10:56:52.921 - [33mwarn[39m: javascript.0 (2681) at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:645:29) 2025-05-16 10:56:52.921 - [33mwarn[39m: javascript.0 (2681) at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.ts:11048:62) 2025-05-16 10:56:52.922 - [33mwarn[39m: javascript.0 (2681) at processImmediate (node:internal/timers:483:21)
-
@tedesco1968 sagte in Heizstab-Regelung geht nicht mehr:
was bedeutet das im LOG?
You are assigning a number to the state "0_userdata.0.Growatt.PVEnergyTotal" which expects a object.
Das was da steht: Du weist einem DP einen Wert vom Typ
number
zu. Der DP erwartet aber einobject
.
Da das ein selbst erstellter DP ist, solltest Du den Typ auf "Zahl" umstellen.Warum hast Du die Debug-Blöcke deaktiviert? Die könnten hilfreich sein.
-
@codierknecht said in Heizstab-Regelung geht nicht mehr:
@tedesco1968 sagte in Heizstab-Regelung geht nicht mehr:
was bedeutet das im LOG?
You are assigning a number to the state "0_userdata.0.Growatt.PVEnergyTotal" which expects a object.
Das was da steht: Du weist einem DP einen Wert vom Typ
number
zu. Der DP erwartet aber einobject
.
Da das ein selbst erstellter DP ist, solltest Du den Typ auf "Zahl" umstellen.Warum hast Du die Debug-Blöcke deaktiviert? Die könnten hilfreich sein.
Hallo @Codierknecht ,
danke für deine Antwort, habe alle selbst erstellte DP jetzt auf Zahl umgestellt.
Wo stellt man dieses Debug-Blöcke um?Wieso kommen eigentlich bei diesen Blockly, diese Warnungen siehe Bild?
Ist das Blockly oben sonst OK?
-
@tedesco1968 sagte in Heizstab-Regelung geht nicht mehr:
Wieso kommen eigentlich bei diesen Blockly, diese Warnungen
was steht denn im code an der angemeckerten Stelle?
-
@tedesco1968 sagte: Ist das Blockly oben sonst OK?
Ist das der richtige Datenpunkt: "javascript.0.scriptEnabled.tonis_projekte.Heizung.Automatik_Heisswasser_aus"?
@tedesco1968 sagte in Heizstab-Regelung geht nicht mehr:
Wieso kommen eigentlich bei diesen Blockly, diese Warnungen siehe Bild?
Was steht im erzeugten Javascript-Code in Zeile 19? Außerdem findet man im Tab "Protokolle" weitere Informationen.
-
Hallo @paul53,
@paul53 said in Heizstab-Regelung geht nicht mehr:
@tedesco1968 sagte: Ist das Blockly oben sonst OK?
Ist das der richtige Datenpunkt: "javascript.0.scriptEnabled.tonis_projekte.Heizung.Automatik_Heisswasser_aus"?
Ja der ist richtig, schaltet ein script.
@tedesco1968 sagte in Heizstab-Regelung geht nicht mehr:
Wieso kommen eigentlich bei diesen Blockly, diese Warnungen siehe Bild?
Was steht im erzeugten Javascript-Code in Zeile 19? Außerdem stehen im Tab "Protokolle" weitere Informationen.
setState('0_userdata.0.Growatt.L3ThreePhaseGridVoltage' /* L3ThreePhaseGridVoltage */, getAttr((obj.state ? obj.state.val : ''), 'L3ThreePhaseGridVoltage'), true);
-
@homoran said in Heizstab-Regelung geht nicht mehr:
@tedesco1968 sagte in Heizstab-Regelung geht nicht mehr:
Wieso kommen eigentlich bei diesen Blockly, diese Warnungen
was steht denn im code an der angemeckerten Stelle?
Hallo @Homoran ,
verstehe deine Frage nicht, ich parse die Daten die ich als Json bekomme und schreibe diese in den selbsterstellten DP siehe Blockly.
Oder ist das so falsch? Funktioniert ja ausser der Warnungen -
@tedesco1968
Der DP "0_userdata.0.Growatt.L3ThreePhaseGridVoltage" existiert und ist vom Typ "number"? -
@paul53 said in Heizstab-Regelung geht nicht mehr:
0_userdata.0.Growatt.L3ThreePhaseGridVoltage" existiert und ist vom Typ "number"?
Hallo @paul53,
ja
-
@tedesco1968 sagte: ja
Dann schau mal im Tab "Protokolle" nach weiteren Informationen zu der Warnung.
-
@tedesco1968 sagte in Heizstab-Regelung geht nicht mehr:
verstehe deine Frage nicht
ist das Selbe was @paul53 gefragt hat
-
@tedesco1968 sagte in Heizstab-Regelung geht nicht mehr:
Wo stellt man dieses Debug-Blöcke um?
Nutze die Macht der rechten Maustaste ... "Block aktivieren"