NEWS
Intervall Pumpensteuerung für Poolfilteranlage (gelöst)
-
Da ihr mir schon öfters geholfen habt auf die zündende Idee zu kommen, versuche ich es wieder über diesen Weg. Ich scheitere immer am Detail.
Ich versuche eine Pumpensteuerung zu verwirklichen, die folgendes können muss.
1.) Pumpe wird durch Zigbee Schalter händisch ein- und aus geschaltet.
2.) Pumpe soll am Tag 8 Stunden laufen.
3.) Pumpe soll 2 Stunden laufen, dann 1 Stunde Pause machen. Bis die 8 Stunden Gesamtlaufzeit erreicht sind.
4.) Wenn ich die Pumpe ausschalte, soll der Intervall sich merken, wo er gestoppt wurde und beim wiedereinschalten von dort weitermachen, wo er gestoppt wurde.
5.) Wenn die Pumpe gerade im Pause Intervall ist, möchte ich sie mit dem Schalter trotzdem ein- und danach wieder ausschalten können. Wg. Filter rückspülen etc. Die Intervallsteuerung soll das natürlich mitbekommen und die Laufzeit dementsprechend hochzählen. Wenn ich die Pumpe eingeschaltet lasse, soll das Intervall 2 Stunden laufen, 1 Stunde Pause von vorne beginnen, aber nur bis zur Gesamtlaufzeit von 8 Stunden. Ist die Pumpe gerade am laufen, soll das Script innerhalb der Intervallsteuerung bleiben und sie nach dem erfolgreichen Rückspülen dort weitermachen lassen, wo die Timer waren.Ich habe folgende Datenpunkte angelegt:
Filterpumpe_state (true/false)
Filterpumpe_Minuten (0-60)
Filterpumpe_ Stunden (0-8)
Filterpumpe_Pause (0-60)Ich habe keine Idee, wie ich den Punkt 5 richtig realisiere, oder integriere.
Könnt ihr mich hier unterstützen?
Vielleicht hat jemand eine gute idee.
Danke im Voraus -
@muckel Poste mal dein bisheriges Programm.
-
-
Danke für deinen Input. Ich werde es mal einbauen und melde mich dann wieder.
Kann aber etwas dauern. -
@muckel
Version mit besserer Behandlung der Ausschaltpause: -
@paul53
Danke Paul.
Ich hab es mal so übernommen und werde es testen.
Ich melde mich nach dem Wochenende -
@muckel Etwas offtopic - meine Poolpumpe schafft auch nach Datenblatt mit 1/3 Einschaltdauer über den Tag den empfohlenen Wasserdurchsatz durch den Filter.
Vielleicht das Intervall nicht stur Tag und Nacht durchziehen. Ich pumpe derzeit noch über einen auf der Fritzbox hinterlegten Zeitplan für eine FritzDECT Schaltdose.
von 22:00 bis 5:00 bleibt die Pumpe aus, und pumpt tagsüber dafür mehr ... mein Sohn meinte, bei dem Brummen der Pumpe könne er nicht schlafen ... die Pumpe steht etwa 2 Meter vor seinem Zimmerfenster ... -
@martinp
Ich möchte keinen automatischen Zeitplan.
Sollte das Niveau mal unter dem Skimmer sein, würde die Pumpe trocken laufen.
Diese Steuerung soll nur die Filterung auf die Abendstunden ausdehnen, da sich der Zeitplan streckt.
Einschalten tun wir eher am Vormittag, wenn wir daran denken. -
@muckel ein regelmäßiges Intervall mit einem festen Duty-Cycle oder einen Zeitplan als Backup hinter der manuellen Bedienung aufstellen, ist doch vom Effekt her identisch ...
Wenn keiner eingreift, läuft die Pumpe über den Tag verteilt 1/3 und 2/3 der Zeit steht sie ...Noch eine Idee: Kann der Zigbee-Schalter auch die Leistung messen? wenn ja, wäre eine Trockenlauferkennung darüber möglich - die Stromaufnahme der Luft ziehenden Pumpe sollte deutlich niedriger liegen, als die beim Pumpen von Wasser ...
Vielleicht kann man sogar das notwendige Rückspülen daran erkennen, dass der Pumpenstrom auf einen Wert angestiegen ist, der deutlich oberhalb dessen liegt, was die Pumpe bei sauberem Filter braucht ... -
@martinp sagte in Intervall Pumpensteuerung für Poolfilteranlage:
Wenn keiner eingreift,
@muckel sagte in Intervall Pumpensteuerung für Poolfilteranlage:
würde die Pumpe trocken laufen.
deswegen überprüfe ich den Druck nach dem Anschalten
bleibt er zu lange zu niedrig schaltet die Pumpe dauerhaft aus.Bei reinem Timer geht das nicht
edit:
@MartinP
bitte keine langen Passagen ohne Kennzeichnung später hinzufügen!
Bereits geschriebene spätere Posts verlieten dadurch ihren Sinn -
@martinp
ja, da hast du recht.
Meine Pumpe läuft 8 Stunden am Tag.
Deine lt. Zeitplan 8,5 Stunden.Ich lasse den Poolroboter fahren und schalte in dieser zeit die Pumpe aus (ca. 2 Stunden).
Danach schalte ich sie wieder ein und das Programm startet wieder von dort, wo ich gestoppt habe. Was soll daran falsch sein? Somit ist gewährleistet, dass die Pumpe 8 Stunden am Tag läuft.Die Leistung messen ist ok. Könnte man so lösen. Trotzdem bin ich ein Befürworter von etwas menschlicher Kontrolle. Ich möchte ja auch noch einen Sinn haben.
-
@muckel auch wieder wahr. Aber z. B. über den Jahresurlaub, also etwas 2 Wochen unüberwacht soll die Anlage schon kommen ...
Vorher noch mal die Anlage durcharbeiten: Rückspülen, Wasser auffüllen, Werte messen und ggfs. korrigieren...
Wenn man da dann trotzdem gewisse Dinge automatisiert aus der Ferne vom Urlaubsort aus anschauen kann, beruhigt das schon ein wenig@Homoran Druckmesser ist natürlich verlässlicher, als der Stromaufnahme-Unterschied zwischen sauberem und verdreckten Filter ...
-
@martinp
für das gibts oma und opa. die füttern auch die katzen. -
Ich habe das Script jetzt seit 2 Tagen laufen. Heute wollte ich die von mir eingeschaltete Filterpumpe ausschalten. Ausschalten hat funktioniert, aber nach 1 Minute schaltet sie sich wieder ein.
Hab ich etwas falsch eingegeben? Kannst du dir das bitte nochmal ansehen.<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="nZ$BK)l@;[+rgUJ$FhO:">EDAus</variable> <variable id="xB7)L=eE^KUUHnTfj;se">lc</variable> <variable type="interval" id="IntervallEin">IntervallEin</variable> <variable type="interval" id="IntervallAus">IntervallAus</variable> <variable id="2hz8{tn:zt*=CQ`[Ese[">ED</variable> <variable id=";r4=GqL.S1la#OK}b6:V">AD</variable> </variables> <block type="variables_set" id="tYIvQYsA;3u*jSHq7EsY" x="-137" y="63"> <field name="VAR" id="nZ$BK)l@;[+rgUJ$FhO:">EDAus</field> <value name="VALUE"> <block type="get_value" id="kQr@%jsj1_vR:)Z)tVtd"> <field name="ATTR">val</field> <field name="OID">javascript.0.Filterpumpe_Einschaltdauer</field> </block> </value> <next> <block type="variables_set" id="lgPi+V4vG,/-A2,1fQL7"> <field name="VAR" id="xB7)L=eE^KUUHnTfj;se">lc</field> <value name="VALUE"> <block type="get_value" id="QsAah!Qi-kO}.ny-S`ul"> <field name="ATTR">lc</field> <field name="OID">deconz.0.Lights.23.on</field> </block> </value> <next> <block type="controls_if" id="c~2kU[Em-_:lIb~HYAsY"> <mutation else="1"></mutation> <value name="IF0"> <block type="get_value" id="IMP@N@zX_4nHZEqhuh0Q"> <field name="ATTR">val</field> <field name="OID">deconz.0.Lights.23.on</field> </block> </value> <statement name="DO0"> <block type="math_change" id="xs%avK{TM8aW}[OtP#3Q"> <field name="VAR" id="nZ$BK)l@;[+rgUJ$FhO:">EDAus</field> <value name="DELTA"> <shadow type="math_number" id="F6K*h9P=6Nnx@c%Nj?s@"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="l)x{BFYGYiv`=~68r%z^"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="B_X9B,SY2Dz/%,3:`]-3"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="jtT6tk;0RN8FT+`37~Tv"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="_t}z:eI/9wDD=ZP2:pK|"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="iDPPP/8,:t9cs!5M|d5d"> <field name="VAR" id="xB7)L=eE^KUUHnTfj;se">lc</field> </block> </value> <value name="B"> <shadow type="math_number" id="}2R64ENu1RwHDhJlo0g1"> <field name="NUM">1</field> </shadow> <block type="time_get" id="85E`aXy#3F.dlVO+Or6k"> <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation> <field name="OPTION">object</field> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="j9k^z9HrdchPQEiyg-PL"> <field name="NUM">60000</field> </shadow> </value> </block> </value> <next> <block type="procedures_callnoreturn" id="j|r@f32HC|9Ngk+eU@Rz"> <mutation name="Ein2h"> <arg name="lc"></arg> </mutation> <value name="ARG0"> <block type="variables_get" id=")=e!)$QUHU/15dpPk9~T"> <field name="VAR" id="xB7)L=eE^KUUHnTfj;se">lc</field> </block> </value> </block> </next> </block> </statement> <statement name="ELSE"> <block type="math_change" id=";6h(,OYfI`IYg!zhc0z-"> <field name="VAR" id=";r4=GqL.S1la#OK}b6:V">AD</field> <value name="DELTA"> <shadow type="math_number" id="F6K*h9P=6Nnx@c%Nj?s@"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="M(5%?iKjg4yKqA*oeNZZ"> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="B_X9B,SY2Dz/%,3:`]-3"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="(*#wN089^*c0k#$lLh}%"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="_t}z:eI/9wDD=ZP2:pK|"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="9eS5N}:%s-N=+qvRE}(`"> <field name="VAR" id="xB7)L=eE^KUUHnTfj;se">lc</field> </block> </value> <value name="B"> <shadow type="math_number" id="}2R64ENu1RwHDhJlo0g1"> <field name="NUM">1</field> </shadow> <block type="time_get" id="fr8+xNUTD-!Z+4|lQaS)"> <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation> <field name="OPTION">object</field> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="?@edo8EeHsGqR$C4cft%"> <field name="NUM">60000</field> </shadow> </value> </block> </value> <next> <block type="controls_if" id="oz)nUuG=|V@KIT._?!i|"> <value name="IF0"> <block type="logic_compare" id="6{b#.e1oXkogcK.%F)A-"> <field name="OP">LT</field> <value name="A"> <block type="variables_get" id="Uw|X^T#V5|hU{Q|JO:ZW"> <field name="VAR" id=";r4=GqL.S1la#OK}b6:V">AD</field> </block> </value> <value name="B"> <block type="math_number" id="*_zXT`U9(etK:o[A%08#"> <field name="NUM">60</field> </block> </value> </block> </value> <statement name="DO0"> <block type="procedures_callnoreturn" id="ny5=[Pc!NR}L1NIW@qj?"> <mutation name="Aus1h"></mutation> </block> </statement> </block> </next> </block> </statement> <next> <block type="schedule" id="~0j/7eBUjm#4Z@QH)Jmw"> <field name="SCHEDULE">3 3 * * *</field> <statement name="STATEMENT"> <block type="variables_set" id="W7D+b87.SR.C?D6o{v0Z"> <field name="VAR" id="nZ$BK)l@;[+rgUJ$FhO:">EDAus</field> <value name="VALUE"> <block type="math_number" id="Vnc*#N!Fkiw-vBI.:9]D"> <field name="NUM">0</field> </block> </value> <next> <block type="update" id="~;u@/v*Sg(KxJX7WVoW#"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Filterpumpe_Einschaltdauer</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="l?A=)BlnCH=y^Gy~++0d"> <field name="NUM">0</field> </block> </value> </block> </next> </block> </statement> <next> <block type="on" id="(GM/k~L4/?cg,YO2NG?b"> <field name="OID">deconz.0.Lights.23.on</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="controls_if" id=";Jp[]e3].gjIb;{LhTII"> <mutation else="1"></mutation> <value name="IF0"> <block type="on_source" id="$KG9YWGjytRYxRBio`=j"> <field name="ATTR">state.val</field> </block> </value> <statement name="DO0"> <block type="timeouts_clearinterval" id="-LyU[WO)_PBZdP)K!,3~"> <field name="NAME">IntervallAus</field> <next> <block type="procedures_callnoreturn" id=";r5|@SK`f@9,8Yu.kT.k"> <mutation name="Ein2h"> <arg name="lc"></arg> </mutation> <value name="ARG0"> <block type="on_source" id="Xq+w5h[4_Gy^coCi.0CS"> <field name="ATTR">state.lc</field> </block> </value> </block> </next> </block> </statement> <statement name="ELSE"> <block type="timeouts_clearinterval" id="jM{}t!6~=a=o6e0;YX16"> <field name="NAME">IntervallEin</field> <next> <block type="math_change" id="VRq{1!j8/GgDk2:CSi5:"> <field name="VAR" id="nZ$BK)l@;[+rgUJ$FhO:">EDAus</field> <value name="DELTA"> <shadow type="math_number" id="F6K*h9P=6Nnx@c%Nj?s@"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="_pvFY$`3~3y*tMwahjLx"> <field name="VAR" id="2hz8{tn:zt*=CQ`[Ese[">ED</field> </block> </value> <next> <block type="controls_if" id="|_l7JRgRwAwA{~J!5wGS"> <value name="IF0"> <block type="logic_compare" id="fNfqOkPA;vDd#|n9GZ67"> <field name="OP">LT</field> <value name="A"> <block type="variables_get" id="7E@.*X5I@y^Va~L0Q+CT"> <field name="VAR" id="nZ$BK)l@;[+rgUJ$FhO:">EDAus</field> </block> </value> <value name="B"> <block type="math_number" id="[[1fTEgjV!Ic(K*nx~am"> <field name="NUM">480</field> </block> </value> </block> </value> <statement name="DO0"> <block type="procedures_callnoreturn" id="chcT#J:Wtc=.ZV+;qZ@B"> <mutation name="Aus1h"></mutation> </block> </statement> <next> <block type="update" id="U{f)FBI`;wbA5f7?JPf_"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Filterpumpe_Einschaltdauer</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_round" id="Dh`oZ=CGjZ(@uMr4{POn"> <field name="OP">ROUND</field> <value name="NUM"> <shadow type="math_number" id="2d[|.YRWtcWNMQ2V~)5?"> <field name="NUM">3.1</field> </shadow> <block type="variables_get" id="P;Kykj?^GvyzKPgy08`F"> <field name="VAR" id="nZ$BK)l@;[+rgUJ$FhO:">EDAus</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </next> </block> <block type="procedures_defnoreturn" id="@VaHuIf1Cg^c{MnGu?X_" x="563" y="62"> <mutation> <arg name="lc" varid="xB7)L=eE^KUUHnTfj;se"></arg> </mutation> <field name="NAME">Ein2h</field> <comment pinned="false" h="80" w="160">Describe this function...</comment> <statement name="STACK"> <block type="timeouts_setinterval" id="r;(3Yr?#~gK!pcQj3!Fl"> <field name="NAME">IntervallEin</field> <field name="INTERVAL">1</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="variables_set" id="2;ka20hoE;0YJAlE(9qI"> <field name="VAR" id="2hz8{tn:zt*=CQ`[Ese[">ED</field> <value name="VALUE"> <block type="math_arithmetic" id="(j:_3r8j)7UV%INF.aK("> <field name="OP">DIVIDE</field> <value name="A"> <shadow type="math_number" id="B_X9B,SY2Dz/%,3:`]-3"> <field name="NUM">1</field> </shadow> <block type="math_arithmetic" id="~D:Xl]1n;I#sp9@f:jZ{"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="_t}z:eI/9wDD=ZP2:pK|"> <field name="NUM">1</field> </shadow> <block type="time_get" id="C/UBqf%hU@98#O17}.Q("> <mutation xmlns="http://www.w3.org/1999/xhtml" format="false" language="false"></mutation> <field name="OPTION">object</field> </block> </value> <value name="B"> <shadow type="math_number" id="}2R64ENu1RwHDhJlo0g1"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="0|j]#mgl3tZ6+^[Y%w~R"> <field name="VAR" id="xB7)L=eE^KUUHnTfj;se">lc</field> </block> </value> </block> </value> <value name="B"> <shadow type="math_number" id="s(lxK9jo*JUoJTi1`[Rw"> <field name="NUM">60000</field> </shadow> </value> </block> </value> <next> <block type="update" id="X{wgmB[ok.}LI,rN|qz6"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">javascript.0.Filterpumpe_Einschaltdauer</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_round" id="YZu1MDy7W7m=#=_!D=jI"> <field name="OP">ROUND</field> <value name="NUM"> <shadow type="math_number" id="2d[|.YRWtcWNMQ2V~)5?"> <field name="NUM">3.1</field> </shadow> <block type="math_arithmetic" id="}Lg]w%fv%i7rut-DJ7=8"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="*Tv;3^(0^y4(lzlg3Apd"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="r`~JDmB0!Rjf+!e6~bWr"> <field name="VAR" id="nZ$BK)l@;[+rgUJ$FhO:">EDAus</field> </block> </value> <value name="B"> <shadow type="math_number" id="t67l:~UtT`r[_9Mhm,#%"> <field name="NUM">0</field> </shadow> <block type="variables_get" id="mtA!m)SmS(}hPlT-A/Q3"> <field name="VAR" id="2hz8{tn:zt*=CQ`[Ese[">ED</field> </block> </value> </block> </value> </block> </value> <next> <block type="controls_if" id="x54F`8hxA9oWA++uPtQu"> <value name="IF0"> <block type="logic_operation" id="1v5*OZdSs*,^E`nn$XFX" inline="false"> <field name="OP">OR</field> <value name="A"> <block type="logic_compare" id="Td76.}*R_j/aqlWQiuAm"> <field name="OP">GTE</field> <value name="A"> <block type="math_arithmetic" id="DWNTHmcsHlZRiBaVH0#_"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="v5*.9Ro2U]l+7nCIF{6|"> <field name="NUM">1</field> </shadow> <block type="math_modulo" id="12!3JYl0#dVIJVC@V=3o"> <value name="DIVIDEND"> <shadow type="math_number" id="X8hVc}1$MYl/5V}({%qq"> <field name="NUM">64</field> </shadow> <block type="variables_get" id="2wG(,OT?j*A!MD)PujWH"> <field name="VAR" id="nZ$BK)l@;[+rgUJ$FhO:">EDAus</field> </block> </value> <value name="DIVISOR"> <shadow type="math_number" id="Tl[Ia(CXG!e|rI/HeRnI"> <field name="NUM">120</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="G%}oE^rQy0aH6K,f?KN1"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="p8z*MZ7mQu;fqrCi]RVQ"> <field name="VAR" id="2hz8{tn:zt*=CQ`[Ese[">ED</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="-oHE|qc~!YQ1(08R|7/L"> <field name="NUM">120</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id=")v$Z^|nl57L!NH;lDe/6"> <field name="OP">GTE</field> <value name="A"> <block type="math_arithmetic" id="?M=87[(b||G7f=wCFB5@"> <field name="OP">ADD</field> <value name="A"> <shadow type="math_number" id="K=%/GR36?*eoYlbeB{Q9"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="j8Zsjm;$HP4:k{jD|mq9"> <field name="VAR" id="nZ$BK)l@;[+rgUJ$FhO:">EDAus</field> </block> </value> <value name="B"> <shadow type="math_number" id="Q484x6)kIg,c]2kLgA|X"> <field name="NUM">1</field> </shadow> <block type="variables_get" id="i9Ip.Q7zn[52e.q;bN9A"> <field name="VAR" id="2hz8{tn:zt*=CQ`[Ese[">ED</field> </block> </value> </block> </value> <value name="B"> <block type="math_number" id="nKl%#qu;B-FPWY^r_]MT"> <field name="NUM">480</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="2cSSYA/{h|{5E{Ct,pYx"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">deconz.0.Lights.23.on</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="Ae8M=fSzjWOrj/~=fPJ^"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </statement> </block> <block type="procedures_defnoreturn" id="g/x1=4hsr.r;r0c-U-rv" x="562" y="437"> <field name="NAME">Aus1h</field> <comment pinned="false" h="80" w="160">Describe this function...</comment> <statement name="STACK"> <block type="timeouts_setinterval" id="}K]pjpP{zY(vX$#KGv[{"> <field name="NAME">IntervallAus</field> <field name="INTERVAL">1</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="math_change" id="sRH:o?)`m!JtD9d88-ib"> <field name="VAR" id=";r4=GqL.S1la#OK}b6:V">AD</field> <value name="DELTA"> <shadow type="math_number" id="v+|niKkGBUabYfF;N@OO"> <field name="NUM">1</field> </shadow> </value> <next> <block type="controls_if" id="T-nG=XDx}nn4y;bJ?:VK"> <value name="IF0"> <block type="logic_compare" id="b7`YqZ-);PiHN%Px;F6)"> <field name="OP">GTE</field> <value name="A"> <block type="variables_get" id="|9tr(gq9CH|FsFOUY0{L"> <field name="VAR" id=";r4=GqL.S1la#OK}b6:V">AD</field> </block> </value> <value name="B"> <block type="math_number" id="hTbDvY8^ctfS[wU/dx5k"> <field name="NUM">60</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="umhYmPId9YzSr!*11(**"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">deconz.0.Lights.23.on</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="ZGv$u_{/9sfdzu?Sreyn"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> </block> </next> </block> </statement> </block> </statement> </block> </xml>
-
@muckel sagte: nach 1 Minute schaltet sie sich wieder ein.
Das soll sie bei manuellem Ausschalten nicht? Dann muss man das detektieren, indem der
Ursprung
geprüft wird:Beim Skriptstart muss für
AD
"setze" verwendet werden.Außerdem sind "Aktuelle Zeit" und
lc
vertauscht (war mein Fehler).EDIT: Es fehlt das Rücksetzen von
AD
beim Ausschalten: -
@paul53
Danke.
Habs mal eingebaut und werde es testen.
Set und change hab ich übersehen.
Ich melde mich wieder. -
@paul53
Funktioniert perfekt.
Danke schön.
Ich stelle es auf "gelöst" -
Darf ich dich nochmals belästigen?
Ich habe einen Datenpunkt angelegt für die Minuten, welche die Pumpe in Betrieb ist
"Filterpumpe_Einschaltdauer" (Type: Number) Funktioniert natürlich.
Weil ich diese Minuten in SS:mm für eine Anzeige konvertieren möchte, habe ich einen zusätzlichen Datenpunkt angelegt. Diese Konvertierung funktioniert nicht.
"Filterpumpe_Einschaltdauer_Stunden_Minuten" (Type: string)Was mach ich falsch?
-
@muckel sagte: Was mach ich falsch?
Die Formatierungsfunktion benötigt ms und berücksichtigt die Zeitzone. Sie funktioniert daher nicht für Zeitdifferenzen (Dauer).
Vorschlag: -
@paul53
Jetzt passt es. Danke schön!