NEWS
Zeit messen, in der ein Luftentfeuchter an war
-
Hallo,
ich steuere einen Luftentfeuchter, der bei einer Luftfeuchtigkeit > 60% im Keller anspringt und bei 58% wieder ausgeht.
Wie kann ich die Zeit erfassen, in der der Luftentfeuchter an ist?
Dieses würde ich gerne in einen State schreiben, den ich dann schön mit Flot darstellen kann.
Vielleicht noch eine andere, technische Frage: Anstatt 60% als festen Schwellwert zu nutzen, kann man das auch pfiffiger machen? Wenn die Wand warm ist, kann man ja vielleicht mehr als 60% erlauben? Hier fehlen mir Grundlagen zum Thema Schimmelbildung….vielleicht hat jemand von Euch ja mehr Erfahrung.
Danke
Christof
-
Ich habe mir ein Script gebastelt, das mir den Stromverbrauch berechnet. Es schreib den Startwert in eine Variable und den Endwert. Die beiden werden dann subtrahiert und ich hab den Verbrauch. Ggf. Geht das auch wenn man die Zeit dort einsetzt.
Ich starte den Trockner deutlich später (bei 68%) und lasse ihn bis 60% laufen. Problematisch ist es eigentlich nur, wenn warme Luft (wärmer als der Raum) mit hoher Feuchtigkeit auf die kalten Wände trifft. Dann kondensiert das Wasser. Ggf kannst du dir auch die absolute feuchte berechnen, dann weißt du wann lüften was bringt und wann nicht.
Hier mal mein Export von meinem Trockner Script (ein Blockly)
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id=":ROJ@N_D=Q%GCc9K}z}5" x="38" y="63"><mutation items="1"></mutation> <field name="CONDITION">any</field> <value name="OID0"><shadow type="field_oid" id="5V|dkOvzmM@1f)i6?=-C"><field name="oid">netatmo.0.BN-Friesdorf.Keller.Humidity.Humidity</field></shadow></value> <statement name="STATEMENT"><block type="controls_if" id="j_^7|7Mual6u4@`8_w5U"><value name="IF0"><block type="logic_compare" id="t/?owzvRa.Gd7GR@|+o6" inline="false"><field name="OP">EQ</field> <value name="A"><block type="get_value" id=".;l^H,V:CW#7m{d^~i{h"><field name="ATTR">val</field> <field name="OID">javascript.0.Trockner.Lufttrockner_Automatik_on</field></block></value> <value name="B"><block type="logic_boolean" id="Mtl#ZK0u8?hA,U0qK{#o"><field name="BOOL">TRUE</field></block></value></block></value> <statement name="DO0"><block type="controls_if" id="Q_IQUh:I-6G[K8wr/yRy"><mutation elseif="1"></mutation> <value name="IF0"><block type="logic_compare" id="^WnEw4(W~ug4TO*IX)3U" inline="false"><field name="OP">GTE</field> <value name="A"><block type="get_value" id="6J}MN5e/.7qn:K5vg{%4"><field name="ATTR">val</field> <field name="OID">netatmo.0.BN-Friesdorf.Keller.Humidity.Humidity</field></block></value> <value name="B"><block type="math_number" id="Rl;dT0qD=l-y)(]CGLXP"><field name="NUM">68</field></block></value></block></value> <statement name="DO0"><block type="control" id="FZGcPUk9Xe4lVV~,l8CR"><mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.LTK0120725.1.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="DJ[9kA+Y`3+t@E34p}?."><field name="BOOL">TRUE</field></block></value></block></statement> <value name="IF1"><block type="logic_compare" id="-wHa`3Mh;W@P_Z+c1b86" inline="false"><field name="OP">LTE</field> <value name="A"><block type="get_value" id="u:=WcDZ#~Zn5DqIwz@|*"><field name="ATTR">val</field> <field name="OID">netatmo.0.BN-Friesdorf.Keller.Humidity.Humidity</field></block></value> <value name="B"><block type="math_number" id="wB~4`;wU~utxd@;bA6LY"><field name="NUM">60</field></block></value></block></value> <statement name="DO1"><block type="control" id="gl1x)@Tmdu!|FZ9Y(e#Q"><mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.LTK0120725.1.STATE</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="0h04LV7@Qlfw8E8TLNmO"><field name="BOOL">FALSE</field></block></value></block></statement></block></statement></block></statement> <next><block type="on_ext" id="Mt!nURLt|}W4b{NiD`eR"><mutation items="1"></mutation> <field name="CONDITION">ne</field> <value name="OID0"><shadow type="field_oid" id="*#*f7+ja=`(XlEDsJpBR"><field name="oid">hm-rpc.0.LTK0120725.1.STATE</field></shadow></value> <statement name="STATEMENT"><block type="controls_if" id="?Zx]/=Jz2toVEhlL[W}~"><mutation else="1"></mutation> <value name="IF0"><block type="logic_compare" id="600#W}W]Ek.S!EXK^BNb" inline="false"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="u?W4X8(MJ){{[ez}nBM="><field name="ATTR">val</field> <field name="OID">hm-rpc.0.LTK0120725.1.STATE</field></block></value> <value name="B"><block type="logic_boolean" id="bD%pv-ly|`C6HmCnEQsj"><field name="BOOL">TRUE</field></block></value></block></value> <statement name="DO0"><block type="update" id="8*LT]go;;RmKc84pUf6n"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Trockner.Lufttrockner_Status_on</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="math_number" id="|s}uSQtFKEX)u|^(M+Qf"><field name="NUM">1</field></block></value> <next><block type="variables_set" id="lKI-+VlN9j{lRbno9eOL"><field name="VAR">Stromzähler_Beginn</field> <value name="VALUE"><block type="math_arithmetic" id="pqol-:SlthbzQZ{J8=~#"><field name="OP">DIVIDE</field> <value name="A"><shadow type="math_number" id="j`I}nuE0pp)`7vJ--SSv"><field name="NUM">1</field></shadow> <block type="get_value" id="Q:B~mW3M[{RXx8cVU%7T"><field name="ATTR">val</field> <field name="OID">hm-rpc.0.LTK0120725.2.ENERGY_COUNTER</field></block></value> <value name="B"><shadow type="math_number" id=":7?6lka*Rqyxjca|8fS_"><field name="NUM">1000</field></shadow></value></block></value> <next><block type="pushover" id="u,g~oFTXn8kn-Sjcy:~?"><field name="PRIORITY">0</field> <value name="MESSAGE"><shadow type="text" id="K5NNriQiL_DsF(|{:U;^"><field name="TEXT">Trocknung im Büro UG wurde gestartet.</field></shadow></value> <value name="TITLE"><block type="text" id="B%fd%J:],#1z95C^v`gF"><field name="TEXT">Lufttrockner</field></block></value></block></next></block></next></block></statement> <statement name="ELSE"><block type="update" id="91y*3,9aHH].]U9dkWNI"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Trockner.Lufttrockner_Status_on</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="math_number" id="8UzVdyD8(rR0F`5PCDZ@"><field name="NUM">0</field></block></value> <next><block type="variables_set" id="-@U207#t340Ie:qKbng]"><field name="VAR">Stromzähler_Ende</field> <value name="VALUE"><block type="math_arithmetic" id="1O1YoOE:MD)yDvrh=D~`"><field name="OP">DIVIDE</field> <value name="A"><shadow type="math_number" id="+L%s!KX{xyFcd2V}4tVh"><field name="NUM">1</field></shadow> <block type="get_value" id="K-=,K4CvyBVDL*Ldgrnb"><field name="ATTR">val</field> <field name="OID">hm-rpc.0.LTK0120725.2.ENERGY_COUNTER</field></block></value> <value name="B"><shadow type="math_number" id="mtFo1=!zzofPD?WrvA!#"><field name="NUM">1000</field></shadow></value></block></value> <next><block type="variables_set" id="V3?i7eh4kS5po*]udKWD"><field name="VAR">Stromverbrauch</field> <value name="VALUE"><block type="math_arithmetic" id="aj?xu_8F6(kKwNkm*OR^"><field name="OP">DIVIDE</field> <value name="A"><shadow type="math_number" id="xkvXpH}^y_%EZ-q-T_jq"><field name="NUM">1</field></shadow> <block type="math_round" id="LIS;;Rccg41?G;QR{JfI"><field name="OP">ROUND</field> <value name="NUM"><shadow type="math_number" id="[~c+blf9GQ03OV%WHS3a"><field name="NUM">3.1</field></shadow> <block type="math_arithmetic" id="B{?HiiV`v[qf!*ojx?g@"><field name="OP">MULTIPLY</field> <value name="A"><shadow type="math_number" id="cKL.vDT@U1AdMje#(|U#"><field name="NUM">1</field></shadow> <block type="math_arithmetic" id="EBW37VKFg32D87)7H35k"><field name="OP">MINUS</field> <value name="A"><shadow type="math_number" id="K:C1[slGeKPmKYP;53g-"><field name="NUM">1</field></shadow> <block type="variables_get" id="h3!255L?egBZ_%[A.H3x"><field name="VAR">Stromzähler_Ende</field></block></value> <value name="B"><shadow type="math_number" id="3pkhNKo--EJWfr%P:*,v"><field name="NUM">1</field></shadow> <block type="variables_get" id="8kz{cSCJi;F;):mekIC^"><field name="VAR">Stromzähler_Beginn</field></block></value></block></value> <value name="B"><shadow type="math_number" id="K]8F5W`#%5%TMVJ(*ZGP"><field name="NUM">100</field></shadow></value></block></value></block></value> <value name="B"><shadow type="math_number" id="Q-Poc:9*w=T6GBZ)WMyt"><field name="NUM">100</field></shadow></value></block></value> <next><block type="pushover" id="Lt}X?#fd{1+NNL;r}}6a"><field name="PRIORITY">0</field> <value name="MESSAGE"><shadow type="text" id="F#Xw4,hNRtH1OSdV24Q{"><field name="TEXT">Trocknung im Büro UG wurde beendet.</field></shadow> <block type="text_join" id="dlQGV1Tbzh-|,q#]OYU+"><mutation items="3"></mutation> <value name="ADD0"><block type="text" id="`d(h9lVC3Zc`Z8o(*Y._"><field name="TEXT">Trocknung im Büro UG wurde beendet. Der Stromverbrauch für den Trockenvorgang lag bei</field></block></value> <value name="ADD1"><block type="variables_get" id="G.-,cSw4~h~?vgD)meus"><field name="VAR">Stromverbrauch</field></block></value> <value name="ADD2"><block type="text" id="}Bh7s)wK``+*FlE]p7vH"><field name="TEXT">kWh.</field></block></value></block></value> <value name="TITLE"><block type="text" id=",H+b9xSHGhduyRJ*U-9p"><field name="TEXT">Lufttrockner</field></block></value></block></next></block></next></block></next></block></statement></block></statement></block></next></block></xml>
Hoffe das hilft weiter oder bringt dich auf weitere Ideen die hier mal geteilt werden
Gruß walkinlarge
Gesendet von iPad mit Tapatalk
-
Vielleicht noch eine andere, technische Frage: Anstatt 60% als festen Schwellwert zu nutzen, kann man das auch pfiffiger machen? Wenn die Wand warm ist, kann man ja vielleicht mehr als 60% erlauben? Hier fehlen mir Grundlagen zum Thema Schimmelbildung….vielleicht hat jemand von Euch ja mehr Erfahrung.
Danke
Christof `
Wenn du nur mit einem Luftentfeuchter arbeitest, ist der Vergleich der relativen Luftfeuchte gut. So wie du das eingestellt hast, ist das OK. Ich habe bei mir auch eine Auslöseschwelle von 67 %, von wo es bis 55 % heruntertrocknet. Ab (gefühlt) 70 % fängt das Werkzeug im Keller an zu rosten und Papier wird klamm.
Um Strom zu sparen (die Luftentfeuchter fressen ja richtig, und wenn einer jeden 2. Tag mit 900 Watt durchläuft summiert sich das) habe ich in erster Linie eine Entfeuchtung via Kellerfensterlüftung. Bei der Lüftung kommt es aber nicht auf den Vergleich der relativen Luftfeuchte zwischen innen und außen an, sondern auf den Vergleich der absoluten Feuchte. Da spielt die Temperatur der Luft innen und außen noch eine Rolle, so dass es bei unterschiedlichen Temperaturen zu unterschiedlicher Wasserspeicherkapazität der Luft kommt (absolute Feuchte in z.B. Gramm pro Kubikmeter Luft).
Vergleicht man nur die relative (%), dann führt das dazu, dass im Sommer die warme Luft mit 50 % Feuchte in den Keller weht der 60 % Feuchte hat und trotzdem beschlagen die Wände, da die warme Luft an der kalten Wand kondensiert.
Bei mir ist das so als Faustregel, dass ich im Winter, Frühling und Herbst immer lüften kann (außer es ist eher neblig und regnerisch, wohne am See), im Sommer maximal in kühleren Sommernächten.
Wenn du dich für das Thema der absoluten Feuchte interessierst, suche hier mal nach Kellerbelüftung und ähnliches, da gibt es viele Skripte zur Berechnung etc.
-
Wie kann ich die Zeit erfassen, in der der Luftentfeuchter an ist? `
const idEntfeuchter = '...'; const idED = 'Entfeuchter.ED'; // Einschaltdauer createState(idED, 0, {type: 'number', unit: 'h'); // Datenpunkt für ED erzeugen on(idEntfeuchter, function(dp) { if(!dp.state.val) { // Entfeuchter schaltet aus setState(idED, (dp.state.lc - dp.oldState.lc) / 3600000, true); } });
-
Bitte , Zeit in ms
-
Hi,
ich würde am liebsten einen State haben, in dem die Gesamtzeit der Laufzeit pro Tag geloggt wird.
Mit````
setState(idED, (dp.state.lc - dp.oldState.lc) / 3600000, true);Ich könnte die Laufzeit pro Tag aufaddieren - problematisch wird aber der Übergang in den neuen Tag, wenn währenddessen der Entfeuchter läuft. Dann zähle ich ja am neuen Tag die Laufzeit des alten Tages mit. Doch irgendwie schwieriger als gedacht. Alternativ könnte ich ja alle paar Sekunden einen Zähler hochzählen, wenn der Entfeuchter läuft - ich habe nur die Sorge, ob das zu viel für meinen Raspi ist. Habt Ihr hier eine Idee, wie das möglichst einfach gehen könnte? Danke Christof
-
Deine Kreativität ist aber auch nicht wirklich ausgeprägt. Mach doch ne "wenn" Bedingung zum Datum rein und schreib das ganze in eine Variable.