NEWS
Heizungsteuerung Pumpe
-
@nicoloma sagte in Heizungsteuerung Pumpe:
Block einfach neben drann
genau, das erste Bild. Debug ist 22, dies wäre also schon mal gegeben.
Es würde aber keine Rolle spielen ob irgendwo nebenan oder zuoberst am bestehenden Block, wichtig ist dass er NICHT im Trigger-Block ist, damit die Meldung sofort kommt wenn das Skript gestartet wird, damit wir den Wert gesehen haben
-
@kusi
Ok erledigt, wir warten mal -
@kusi sagte: Dies musste noch eingefügt werden, ganz zu Beginn.
Besser, man setzt die Variable auf den Wert der Pumpe.
-
@paul53 sagte in Heizungsteuerung Pumpe:
Besser, man setzt die Variable auf den Wert der Pumpe.
Stimmt, daran habe ich nicht gedacht.
Hatte sowieso langsam vor nach dir zu rufen. Schön dass du da bist, vielen Dank. -
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id=",%qw_kzk75Ldl}%UHJ9V">Pumpe eingeschaltet</variable> <variable type="timeout" id="Ausschaltverzögerung">Ausschaltverzögerung</variable> <variable type="timeout" id="Nachtlauf starten">Nachtlauf starten</variable> <variable type="timeout" id="Nachlauf stoppen">Nachlauf stoppen</variable> </variables> <block type="debug" id="9c#~K3H94g[uxG5{J6wO" x="213" y="-437"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="),RS)}tV;dQrYxCt]+g?"> <field name="TEXT">Brennertemperatur über 30°C, Pumpe eingeschaltet </field> </shadow> <block type="get_value" id="Sj:xH9Zb#%7%Rw_BmF|M"> <field name="ATTR">val</field> <field name="OID">mqtt.0.TEMPHEIZ.Brenner.Brenner</field> </block> </value> </block> <block type="variables_set" id="kTAgE)kg)Z(`|_`xoQa6" x="-262" y="-387"> <field name="VAR" id=",%qw_kzk75Ldl}%UHJ9V">Pumpe eingeschaltet</field> <value name="VALUE"> <block type="logic_boolean" id=":-]Ie*jT4O}1-[BM0-lS"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="on" id="-_}V6XBjmyVJIcy*Lu3;"> <field name="OID">mqtt.0.TEMPHEIZ.Brenner.Brenner</field> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="controls_if" id="#Ds?4McICW;:G~M|=Fc["> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_operation" id="mqYMYETRe9)=oSDC=CsQ" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="/;;Ify12tzpgjz/{o4j}"> <field name="OP">GTE</field> <value name="A"> <block type="on_source" id="U)/v.]L38mg90_#3K.|-"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="math_number" id="U!Am,v`c+oTR,Z?$;T$b"> <field name="NUM">30</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="1afxEBdABF8;I_vE_3O`"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="l7Q2bbS]4OOgBLDEW?]J"> <field name="VAR" id=",%qw_kzk75Ldl}%UHJ9V">Pumpe eingeschaltet</field> </block> </value> <value name="B"> <block type="logic_boolean" id="/PdV4*:tJiQZ$pTSc^8N"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id=")XN3EO2@i;_uKhWMxPm="> <field name="VAR" id=",%qw_kzk75Ldl}%UHJ9V">Pumpe eingeschaltet</field> <value name="VALUE"> <block type="logic_boolean" id="KC_npjr@%^O!Oh%]P(rA"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="control" id="Prq4xfKP@+a;J$zZSG6w"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">tuya.0.03000500c4dd571fcd07.1</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="C,5k7R#Mqbi|pzf*KEb5"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="timeouts_cleartimeout" id="@lu{#3qRX5bj89]VG^9e"> <field name="NAME">Ausschaltverzögerung</field> <next> <block type="timeouts_cleartimeout" id="%n,0EEnF~N}d%SRN67$%"> <field name="NAME">Nachtlauf starten</field> <next> <block type="timeouts_cleartimeout" id="bb~jPAnHz@PZkx%=|U:@"> <field name="NAME">Nachlauf stoppen</field> <next> <block type="debug" id="(mhOwxH:/bno4?-ue@7w"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="M7)y1DDqBCuT?BM0}[W;"> <field name="TEXT">Brennertemperatur über 30°C, Pumpe eingeschaltet </field> </shadow> </value> </block> </next> </block> </next> </block> </next> </block> </next> </block> </next> </block> </statement> <value name="IF1"> <block type="logic_operation" id="y/LE1nM68{Xyf8|qBY1X" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="pjfhafjMHqBd640opgQT"> <field name="OP">LT</field> <value name="A"> <block type="on_source" id="j?9U#TPM]gplB1:pgb^i"> <field name="ATTR">state.val</field> </block> </value> <value name="B"> <block type="math_number" id="0MZBs]qjABr%qN}KYv+A"> <field name="NUM">30</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="{VAsdwu[Em)YPQr*!mVP"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="YN,vJ.A!}WrHV{.kT-LI"> <field name="VAR" id=",%qw_kzk75Ldl}%UHJ9V">Pumpe eingeschaltet</field> </block> </value> <value name="B"> <block type="logic_boolean" id="3=$~b4YG-E;3H,6Pu)Zw"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> </block> </value> <statement name="DO1"> <block type="variables_set" id="-/)iMmSKc?]#P@*k$7:d"> <field name="VAR" id=",%qw_kzk75Ldl}%UHJ9V">Pumpe eingeschaltet</field> <value name="VALUE"> <block type="logic_boolean" id="Nosrz5E%6d|~K6,|{L]S"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="debug" id="/g8{I`N{w.]e8s3sU`(X"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="]ISsuCeKYW||b.3PeGT~"> <field name="TEXT">Brennertemperatur unter 30°C, Start Nachlaufpumpe </field> </shadow> </value> <next> <block type="timeouts_settimeout" id="+77-=4}w;2*QM9Zsa=xl"> <field name="NAME">Ausschaltverzögerung</field> <field name="DELAY">6</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="[7ImuyN;#cl~.b7cfAy="> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">tuya.0.03000500c4dd571fcd07.1</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id=":pWUo6$ntfgf!f6^b$|{"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="debug" id="FS-hqnB`LEM-`fp7jK@)"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="8O#7XA~eR/whkWH4XakH"> <field name="TEXT">Stop Nachlauf Pumpe</field> </shadow> </value> <next> <block type="timeouts_settimeout" id="c((9vDlt:5%K)QpE(;~q"> <field name="NAME">Nachtlauf starten</field> <field name="DELAY">8</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="je,+9aj0Xe=C~9iGnYb3"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">tuya.0.03000500c4dd571fcd07.1</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="iLkKg_|Z$081[FpcQ.cf"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="timeouts_settimeout" id="UKLe_Xyph4zqSIP!vU$P"> <field name="NAME">Nachlauf stoppen</field> <field name="DELAY">2</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="~:`BRUf24K]Od[V.zVwV"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">tuya.0.03000500c4dd571fcd07.1</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="VV~o*,=e`l.apItWtF}|"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> </xml>
-
@nicoloma
Besser auf "wurde geändert" triggern. -
@paul53 ok das habe ich geändert. Aber wie mach ich das mit dem "Wert der Pumpe als variable setzten"
Danke vorab schon mal auch an dich
-
@nicoloma sagte in Heizungsteuerung Pumpe:
"Wert der Pumpe als variable setzten"
Damit nimmt die Variable bei einem Skript-Neustart den Zustand der Pumpe an. So läuft das Skript richtig, falls die Pumpe beim Skript-Neustart bereits laufen sollte.
-
@nicoloma sagte: wie mach ich das mit dem "Wert der Pumpe als variable setzten"
setze Pumpe_eingeschaltet auf Wert vom Objekt ID heiz-an-aus
-
@nicoloma sagte: Wenn der Brenner sich ausschaltet soll die Pumpe sich 8 Minuten lang ausschalten, danach wieder kurz 2 Minuten lang laufen
Wozu soll das gut sein? 6 Minuten Nachlauf sollten genügen, um einen Wärmestau zu verhindern.
Oder ist die "Brenner-Temperatur" tatsächlich eine Vorlauf-Temperatur? Dann müsste die Pumpe ständig laufen. -
-
-
@kusi
Was soll ich sagen. Leider geht sie jetzt nicht diese 2 Minuten an. nach der 6 min pause.Jetzt weis ich nicht ob es war weil ich die 6 Minuten korregiert habe.
-
@nicoloma sagte in Heizungsteuerung Pumpe:
6 Minuten korregiert habe
Hast du die Korrektur während den 6 Minuten "Ausschaltverzögerung" gemacht, oder BEVOR die Heizung lief?
Weil der "sonst falls"-Block setzt voraus, dass die Brennertemperatur unter 30°C ist UND die Pumpe eingeschaltet ist!Hast du die Änderungen von @paul53 berücksichtigt?
--> Trigger auf "wurde geändert"
--> "setze Pumpe_eingeschaltet auf Wert vom Objekt ID heiz-an-aus" -
@kusi
ja die änderung habe ich gemacht.
Ich weis nicht zu wann ich das gespeichert habe.
-
@nicoloma also das Skript nochmals testen
-
-
Funktioniert
Klasse vielen vielen dank, Ihr seid klasse -
-
@nicoloma Ein tolles Ersparnis.