Timeout oder was muß ich dafür nutzen
Verfasst: Mo 1. Mai 2023, 16:50
Hallo allerseits,
ich habe einen Wassergeführten Kaminofen einbauen lassen und habe nun das Problem, daß der Ladomat angesteuert werden muß.
Zum Einsatz hierfür kommen 2 Temperaturfühler der eine ist in der Tauchhülse der Wassertasche im Ofen und der andere am Abgasrohr.
Folgendes Szenario ergibt sich daraus, das Abgasrohr (DS18B20-1) ist kalt! Der Ofen wird angefeuert, die Temperatur (DS18B20-2) in der Wassertasche steigt und bei 57°C schaltet die Umwälzpumpe des Ladomat ein!
Soweit so gut, jetzt kommt aber mein Problem, die U-Pumpe soll abschalten wenn das Abgasrohr unter 45°C fällt, da dieses aber beim Start noch kleiner 45°C ist, wird die U-Pumpe gleich wieder abgeschaltet. Gibt es die Möglichkeit,daß das abschalten nach dem einschalten der U-Pumpe für eine gewisse Zeit unterbunden wird?
Ich habe in meinem Blockly die Temperatur (DS18B20-2) im (Abschalter) mit UND verknüpft da der Ofen normalerweise im Kaltzustand keine Wärme über 55°C hat, das Problem hier ist aber auch, daß das Abgasrohr nicht schnell genug auf Temperatur kommt und somit die U-Pumpe abschaltet.
Ich weis leider nicht ob ich diese Timeouts oder Trigger verwenden muß, da ich absoluter Laie bin.
Vielen Dank falls mir jemand in meinem Blockly helfen kann.
MfG
Björn
<xml xmlns="https://developers.google.com/blockly/xml">
<block type="on" id="H6cN!}4tE6Ax6)z^ekFn" x="-228" y="408">
<field name="OID">sonoff.0.Temp Ofen.DS18B20-2_Temperature</field>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<statement name="STATEMENT">
<block type="controls_if" id="44uQX`fC7/?D6eP8Ba#_">
<value name="IF0">
<block type="logic_compare" id="G_/#DgxNv5d;QCm+sgVX">
<field name="OP">GTE</field>
<value name="A">
<block type="get_value" id="*n/TTk^R0$k1IpEY4bwK">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.DS18B20-2_Temperature</field>
</block>
</value>
<value name="B">
<block type="math_number" id="Y3!S~f1}-)khz;XWh?AT">
<field name="NUM">57</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="controls_if" id=";2kk%NNU+wV4^IdZPoaC">
<value name="IF0">
<block type="logic_compare" id="}j*~8gr9xR/OK20V}m7z">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="2-j.0D7E935nUki_tkKa">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.POWER</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="IUs)WVMnk*@$[sk[EIvF">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="control" id=":RG?/Z!zASF2Rab}Optv">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">sonoff.0.Temp Ofen.POWER</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="f#%Gza`}M?c#_kPG+u+3">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</statement>
</block>
</statement>
</block>
</statement>
<next>
<block type="on" id="w0XT`yJIx#?=]~)p3DLS">
<field name="OID">sonoff.0.Temp Ofen.DS18B20-1_Temperature</field>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<statement name="STATEMENT">
<block type="controls_if" id="LO2Jra85]KfdC=5N$An,">
<value name="IF0">
<block type="logic_operation" id="Ls|~*~}1DG^+{OX!:KCE">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="``2$hS(?O{acj0Y{E)?;">
<field name="OP">GTE</field>
<value name="A">
<block type="get_value" id="1#RmoW9_Dn[KM23:YZ.H">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.DS18B20-2_Temperature</field>
</block>
</value>
<value name="B">
<block type="math_number" id="Sumf{+w3)XAlz4I~TL-p">
<field name="NUM">55</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="99a7s`_m`iZ$YTqHgD!@">
<field name="OP">LTE</field>
<value name="A">
<block type="get_value" id="L5vBr4KfM1=}x}`%h|sj">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.DS18B20-1_Temperature</field>
</block>
</value>
<value name="B">
<block type="math_number" id="mSS/2SfWS61uY~c^],A|">
<field name="NUM">45</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="controls_if" id="TiE`*YpH/tQ,#/q_u-7X">
<value name="IF0">
<block type="logic_compare" id="ESK6WN1;fqOmy%kA%yI5">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="Zs3gT9ixgt8~WGLO8HGu">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.POWER</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="~1#Q/xd*tBT.Kg{Qo=GQ">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="control" id="i)s52#I4LR3.LlMFb[P1">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">sonoff.0.Temp Ofen.POWER</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="ak}NfC$V4rE+vEkK]}qK">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</statement>
</block>
</statement>
</block>
</statement>
<next>
<block type="on" id="86Q*!c@6n0VXAG@wp6TX">
<field name="OID">sonoff.0.Temp Ofen.DS18B20-2_Temperature</field>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<statement name="STATEMENT">
<block type="controls_if" id="z%hd.|K|#WJ{18VOT`(]">
<value name="IF0">
<block type="logic_operation" id="p(|/2;9j4G,}%{2o@BZE">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="2lVoYip;%rSOC.Ftai^=">
<field name="OP">GTE</field>
<value name="A">
<block type="get_value" id="pM87C5G[8C%kO$,PS_JM">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.DS18B20-2_Temperature</field>
</block>
</value>
<value name="B">
<block type="math_number" id="q5eXLnMjAr0zvI6n,f^m">
<field name="NUM">55</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="ys@@6%$Pu}rCyZD#61uX">
<field name="OP">LTE</field>
<value name="A">
<block type="get_value" id="4ih+|3Jr^CGmw|GV#%]{">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.DS18B20-1_Temperature</field>
</block>
</value>
<value name="B">
<block type="math_number" id="Nu6uglEzV/_b2_pD;XHA">
<field name="NUM">45</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="controls_if" id="d59dlT@69=ZLhq6-t?y=">
<value name="IF0">
<block type="logic_compare" id="=O5vo;v*-tz*9T%!om{N">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="ta[=~wP+wGyek6|qT{zU">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.POWER</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="oZuiGX}nyaFc+HQT5I~?">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="control" id="x]y=wpfm-Ctu=_fP5@H:">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">sonoff.0.Temp Ofen.POWER</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="Ayi]P?KG!GweU!dMF,|7">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</statement>
</block>
</statement>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</xml>
ich habe einen Wassergeführten Kaminofen einbauen lassen und habe nun das Problem, daß der Ladomat angesteuert werden muß.
Zum Einsatz hierfür kommen 2 Temperaturfühler der eine ist in der Tauchhülse der Wassertasche im Ofen und der andere am Abgasrohr.
Folgendes Szenario ergibt sich daraus, das Abgasrohr (DS18B20-1) ist kalt! Der Ofen wird angefeuert, die Temperatur (DS18B20-2) in der Wassertasche steigt und bei 57°C schaltet die Umwälzpumpe des Ladomat ein!
Soweit so gut, jetzt kommt aber mein Problem, die U-Pumpe soll abschalten wenn das Abgasrohr unter 45°C fällt, da dieses aber beim Start noch kleiner 45°C ist, wird die U-Pumpe gleich wieder abgeschaltet. Gibt es die Möglichkeit,daß das abschalten nach dem einschalten der U-Pumpe für eine gewisse Zeit unterbunden wird?
Ich habe in meinem Blockly die Temperatur (DS18B20-2) im (Abschalter) mit UND verknüpft da der Ofen normalerweise im Kaltzustand keine Wärme über 55°C hat, das Problem hier ist aber auch, daß das Abgasrohr nicht schnell genug auf Temperatur kommt und somit die U-Pumpe abschaltet.
Ich weis leider nicht ob ich diese Timeouts oder Trigger verwenden muß, da ich absoluter Laie bin.
Vielen Dank falls mir jemand in meinem Blockly helfen kann.
MfG
Björn
<xml xmlns="https://developers.google.com/blockly/xml">
<block type="on" id="H6cN!}4tE6Ax6)z^ekFn" x="-228" y="408">
<field name="OID">sonoff.0.Temp Ofen.DS18B20-2_Temperature</field>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<statement name="STATEMENT">
<block type="controls_if" id="44uQX`fC7/?D6eP8Ba#_">
<value name="IF0">
<block type="logic_compare" id="G_/#DgxNv5d;QCm+sgVX">
<field name="OP">GTE</field>
<value name="A">
<block type="get_value" id="*n/TTk^R0$k1IpEY4bwK">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.DS18B20-2_Temperature</field>
</block>
</value>
<value name="B">
<block type="math_number" id="Y3!S~f1}-)khz;XWh?AT">
<field name="NUM">57</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="controls_if" id=";2kk%NNU+wV4^IdZPoaC">
<value name="IF0">
<block type="logic_compare" id="}j*~8gr9xR/OK20V}m7z">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="2-j.0D7E935nUki_tkKa">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.POWER</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="IUs)WVMnk*@$[sk[EIvF">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="control" id=":RG?/Z!zASF2Rab}Optv">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">sonoff.0.Temp Ofen.POWER</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="f#%Gza`}M?c#_kPG+u+3">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</statement>
</block>
</statement>
</block>
</statement>
<next>
<block type="on" id="w0XT`yJIx#?=]~)p3DLS">
<field name="OID">sonoff.0.Temp Ofen.DS18B20-1_Temperature</field>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<statement name="STATEMENT">
<block type="controls_if" id="LO2Jra85]KfdC=5N$An,">
<value name="IF0">
<block type="logic_operation" id="Ls|~*~}1DG^+{OX!:KCE">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="``2$hS(?O{acj0Y{E)?;">
<field name="OP">GTE</field>
<value name="A">
<block type="get_value" id="1#RmoW9_Dn[KM23:YZ.H">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.DS18B20-2_Temperature</field>
</block>
</value>
<value name="B">
<block type="math_number" id="Sumf{+w3)XAlz4I~TL-p">
<field name="NUM">55</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="99a7s`_m`iZ$YTqHgD!@">
<field name="OP">LTE</field>
<value name="A">
<block type="get_value" id="L5vBr4KfM1=}x}`%h|sj">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.DS18B20-1_Temperature</field>
</block>
</value>
<value name="B">
<block type="math_number" id="mSS/2SfWS61uY~c^],A|">
<field name="NUM">45</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="controls_if" id="TiE`*YpH/tQ,#/q_u-7X">
<value name="IF0">
<block type="logic_compare" id="ESK6WN1;fqOmy%kA%yI5">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="Zs3gT9ixgt8~WGLO8HGu">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.POWER</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="~1#Q/xd*tBT.Kg{Qo=GQ">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="control" id="i)s52#I4LR3.LlMFb[P1">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">sonoff.0.Temp Ofen.POWER</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="ak}NfC$V4rE+vEkK]}qK">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</statement>
</block>
</statement>
</block>
</statement>
<next>
<block type="on" id="86Q*!c@6n0VXAG@wp6TX">
<field name="OID">sonoff.0.Temp Ofen.DS18B20-2_Temperature</field>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<statement name="STATEMENT">
<block type="controls_if" id="z%hd.|K|#WJ{18VOT`(]">
<value name="IF0">
<block type="logic_operation" id="p(|/2;9j4G,}%{2o@BZE">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="2lVoYip;%rSOC.Ftai^=">
<field name="OP">GTE</field>
<value name="A">
<block type="get_value" id="pM87C5G[8C%kO$,PS_JM">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.DS18B20-2_Temperature</field>
</block>
</value>
<value name="B">
<block type="math_number" id="q5eXLnMjAr0zvI6n,f^m">
<field name="NUM">55</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="ys@@6%$Pu}rCyZD#61uX">
<field name="OP">LTE</field>
<value name="A">
<block type="get_value" id="4ih+|3Jr^CGmw|GV#%]{">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.DS18B20-1_Temperature</field>
</block>
</value>
<value name="B">
<block type="math_number" id="Nu6uglEzV/_b2_pD;XHA">
<field name="NUM">45</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="controls_if" id="d59dlT@69=ZLhq6-t?y=">
<value name="IF0">
<block type="logic_compare" id="=O5vo;v*-tz*9T%!om{N">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="ta[=~wP+wGyek6|qT{zU">
<field name="ATTR">val</field>
<field name="OID">sonoff.0.Temp Ofen.POWER</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="oZuiGX}nyaFc+HQT5I~?">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="control" id="x]y=wpfm-Ctu=_fP5@H:">
<mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
<field name="OID">sonoff.0.Temp Ofen.POWER</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE">
<block type="logic_boolean" id="Ayi]P?KG!GweU!dMF,|7">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</statement>
</block>
</statement>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</xml>