NEWS
Nochmal Waschmaschine (Blockly)
-
Hi,
ja genau so wars es.
Habe jetzt nochmal eine Kurzwäsche gemacht (Jetzt ist die Wäsche weg)
Telegram Waschmaschine läuft kam, saying nicht.
Waschmaschine fertig, nichts kam , State false
Bin jetzt ratlos. Für heute bin ich fertig.
Vielleicht kannst du mir helfen.
Morgen würde ich dann den Staubsauger nehmen(gute Idee) :lol: Dann ist die Wohnung auch sauber.
-
Morgen würde ich dann den Staubsauger nehmen(gute Idee) :lol: Dann ist die Wohnung auch sauber. `
Lol ich sehe den Fehler nicht aber werde nochmal in Ruhe drüber schauen
–-----------------------
Send from mobile device
-
Das ist das Objekt das ich manuell angelegt hatte,
das scheint i.O. zu sein.
-
Wähle Deine Datenpunkte nochmal im Blockly explizit aus.
Vielleicht ist bei dem ganz Ex- und Import was schief gelaufen.
-
EDIT: Es gab noch Probleme beim Einschalten einiger Geräte. Neue Version weiter unten.
Bild und Export habe ich hier gelöscht.
Hallo
Ich wollte sowieso mal unsere Waschmaschine überwachen.
Habe das alles mal etwas zusammengerafft.
ACHTUNG!!
Die Logik hat sich zum Blockly von totocotonio geändert.
Bei mir geht das über die Variable "WaschmaschineAN".
Das hat eine umgekehrte Logik zu "WaschmaschineFertig"
(WaschmaschineFertig = wahr bedeutet bei mir WaschmaschineAN = unwahr)
"WaschmaschineAN" dient bei mir nur der Visualisierung.
Die POWER Werte und Länge des Timeouts muss man an seine Waschmaschine anpassen.
Habe auch noch ein bisschen aus der "Trickkiste" reingepackt. Ihr wollt ja lernen.
Grüße
-
Zur Erklärung der trickkiste: die variabelen Wert und vorheriger Wert die rantanplan Benutzt sind die Werte des triggers.
Dadurch erspart man sich den Block "Wert von object xxx"
–-----------------------
Send from mobile device
-
gelöscht.
Rantanplan hat was neues gemacht
-
Hallo Rantanplan,
ich werde verrückt.
Ich habe dein Blockly eingebaut, angepasst.
Timer auf eine Miunte gstellt.
Fön eingebaut :lol:
Beim Start des Föns Meldung: läuft. OK
Fön aus
1 Minute Später Meldung: fertig. OK
Und jetzt 2 Minuten Später die Meldung : Läuft
Standby Steckdose schwankt mit fön drin zwischen
0.03 und 0.04W
Wo habe ich den da meinen Denkfehler
-
Wo habe ich denn da den Denkfehler gemacht. Weil der Fön direkt wieder auf die unter 0.04 Watt geht und
die Leistung kleiner 2.5 watt ist. `
Hast Du oben mein "<0.07" auf "<0.04" gestellt?
-
Hi,
0,05 , denn wenn ich ihn auf 0.04 Stelle ändert sich der State gar nicht
Auf kleiner = 0.04 W scheint es zu gehen.
-
Hi,
0,05 , denn wenn ich ihn auf 0.04 Stelle ändert sich der State gar nicht `
Steckdose aus = 0 W
Steckdose ein wenn Lüfter angeschlossen = ? W
-
Habe jetzt auch mal unterschiedliche Geräte an den Funkstecker gehängt.
Unterschiedliche Einschaltspannungen ist ein Problem. Kann man sehr schön in der WEBUI der CCU sehen.
Wenn ich mir überlege wie viel unterschiedliche Waschmaschienen es gibt. :roll:
Ich denk mir was anderes aus.
-
Noch ein Versuch. (sonst wird wieder mit der Hand gewaschen
)
Ich habe jetzt einige Geräte an meiner Funksteckdose angeschlossen.
Problem waren die Spannungsspitzen, die einige Geräte erzeugten und dann nach kurzer Zeit auf den StandBy Level gingen.
Dafür habe ich nun einen Timeout eingesetzt.
Beispiel jetzt ohne viele Worte.
(Ich muss zum Essen. Sonst muss ich die nächsten 4 Wochen waschen :lol: )
Export.
! ````
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="variables_set" id="pE;t15K()B2=@=,RY5D_" x="-713" y="-137"><field name="VAR">GrenzWertInWatt</field>
<value name="VALUE"><block type="math_number" id="OB=)nO2pXH:1HNwm(JpG"><field name="NUM">2.5</field></block></value>
<next><block type="comment" id="|2tm%?,yK/o3_AA)J{ah"><field name="COMMENT">Steckdose überwachen</field>
<next><block type="on_ext" id="n)UklDS{=z!-#^HfL@Ly"><mutation items="1"></mutation>
<field name="CONDITION">ne</field><value name="OID0"><shadow type="field_oid" id="@Uda~stBc8L/=2DFzrvo"><field name="oid">hm-rpc.0.LEQ0661170.2.POWER</field></shadow></value> <statement name="STATEMENT"><block type="controls_if" id="=n/Jfc]x(Ib[NRPJZ%7X"><mutation elseif="3"></mutation> <value name="IF0"><block type="logic_compare" id="?m1STicTe5=N-/f:Ji2s"><field name="OP">EQ</field> <value name="A"><block type="on_source" id="QjKQBx`PdHENcy)eGM,5"><field name="ATTR">oldState.val</field></block></value> <value name="B"><block type="math_number" id=":(p2PWPzD2(~R-q9upeS"><field name="NUM">0</field></block></value></block></value> <statement name="DO0"><block type="timeouts_settimeout" id="v[ws-ZxN:-nNl,kERlT8"><field name="NAME">Einschaltverzögerung</field> <field name="DELAY">10</field> <field name="UNIT">sec</field> <statement name="STATEMENT"><block type="comment" id="UyUTD{W;Ef;u2!)%y5h|"><field name="COMMENT">Funkstecker wurde eingeschaltet</field> <next><block type="comment" id="^wiM;VZ*5RLS-+SMsG7?"><field name="COMMENT">Einschaltleistung abfangen</field></block></next></block></statement></block></statement> <value name="IF1"><block type="logic_operation" id="s(;r=_ekdU*dF=_Tsrbb" inline="false"><field name="OP">AND</field> <value name="A"><block type="logic_compare" id="d_lZY_VlNaa40/Pob=Um"><field name="OP">GT</field> <value name="A"><block type="on_source" id="`c4GU.`+o2_G+Vdxq;n/"><field name="ATTR">state.val</field></block></value> <value name="B"><block type="variables_get" id="FD[JnQcwajuYLgGmTX`."><field name="VAR">GrenzWertInWatt</field></block></value></block></value> <value name="B"><block type="logic_compare" id="zC,(}TPXAvX2yd^k`W._"><field name="OP">EQ</field> <value name="A"><block type="get_value" id=";a;[[bw/v2oQnG9DHZIn"><field name="ATTR">val</field> <field name="OID">HomeStatus.0.Sonstiges.WaschmaschineAN</field></block></value> <value name="B"><block type="logic_boolean" id=";a5=vVD`86hstjR{4y~+"><field name="BOOL">FALSE</field></block></value></block></value></block></value> <statement name="DO1"><block type="control" id="S6URE:3#}}.v#e!X.A4D"><mutation delay_input="false"></mutation> <field name="OID">HomeStatus.0.Sonstiges.WaschmaschineAN</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="QqpwRU?xP?P=bvS9HS[1"><field name="BOOL">TRUE</field></block></value> <next><block type="procedures_callnoreturn" id="=!*WIp};Ta`)XeMMk,iR"><mutation name="Melden"><arg name="Meldetext"></arg></mutation> <value name="ARG0"><block type="text" id="{QcAY3oi:,FGG.929?TS"><field name="TEXT">Waschmaschine LÄUFT</field></block></value></block></next></block></statement> <value name="IF2"><block type="logic_compare" id="Yuagp|w@)mC+asceXLLu"><field name="OP">GT</field> <value name="A"><block type="on_source" id="P(tu4AS{);E?w-p?]{1q"><field name="ATTR">state.val</field></block></value> <value name="B"><block type="variables_get" id="ou6,Zi?vbs[;{]@93U`!"><field name="VAR">GrenzWertInWatt</field></block></value></block></value> <statement name="DO2"><block type="comment" id="H90l#sdGb5I}Wqsbz=9s"><field name="COMMENT">Timer stoppen</field> <next><block type="procedures_callnoreturn" id="zo=cPu~=j#pus6bWVaJl"><mutation name="checkFertig"><arg name="parameter"></arg></mutation> <value name="ARG0"><block type="logic_boolean" id="1SYbGS^3xkqD/Uj?{bvJ"><field name="BOOL">FALSE</field></block></value></block></next></block></statement> <value name="IF3"><block type="logic_operation" id="_@|YxZPYI(z3![Q=ZbX4" inline="false"><field name="OP">AND</field> <value name="A"><block type="logic_compare" id="Ge6FX#6b5WYoc;wF%%iH"><field name="OP">LT</field> <value name="A"><block type="on_source" id="0Vw33+AwVD~={g{aHa~d"><field name="ATTR">state.val</field></block></value> <value name="B"><block type="variables_get" id="NufLwbvZR1.fEmqJNOTZ"><field name="VAR">GrenzWertInWatt</field></block></value></block></value> <value name="B"><block type="logic_compare" id="X[1t=zl25bQ]aHT[:`,8"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="4WFkiPOYU?#zQhOL)0u("><field name="ATTR">val</field> <field name="OID">HomeStatus.0.Sonstiges.WaschmaschineAN</field></block></value> <value name="B"><block type="logic_boolean" id="?jrLY7K)k;1?sa!Ef{VO"><field name="BOOL">TRUE</field></block></value></block></value></block></value> <statement name="DO3"><block type="comment" id="}Q59!:8+Dc~b~LwZhq-("><field name="COMMENT">Timer starten</field> <next><block type="procedures_callnoreturn" id=";MD%1IF[[H29g_f=vvYH"><mutation name="checkFertig"><arg name="parameter"></arg></mutation> <value name="ARG0"><block type="logic_boolean" id="/yX*,4aU!HHUO#/2U-NR"><field name="BOOL">TRUE</field></block></value></block></next></block></statement></block></statement></block></next></block></next></block>
<block type="procedures_defnoreturn" id="l1.gm
YNTt2#Ww;_Stf+" x="-62" y="-37"><mutation><arg name="Meldetext"></arg></mutation> <field name="NAME">Melden</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"><block type="debug" id="SYQu;@N0JgE!W~[JZcZ_"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="4+J8c.^+FrkDV^]dAda-"><field name="TEXT">test</field></shadow> <block type="variables_get" id="KuX^Hf4/i6gnp|rmq9WR"><field name="VAR">Meldetext</field></block></value> <next><block type="telegram" id="wH+*?1;8L0VjK1Z7kg[i"><value name="MESSAGE"><shadow type="text" id="%5P)E^1xJK@PFTHr7#jG"><field name="TEXT">text</field></shadow> <block type="variables_get" id="b+NYSEXrl]fx5Ms:F4Jp"><field name="VAR">Meldetext</field></block></value></block></next></block></statement></block> <block type="procedures_defnoreturn" id="sDP?w~)oJD}Z95[_?EY0" x="-62" y="163"><mutation><arg name="parameter"></arg></mutation> <field name="NAME">checkFertig</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> <statement name="STACK"><block type="comment" id="V2@7jqv5RTl+}q}xfEsZ"><field name="COMMENT">Timer stoppen</field> <next><block type="timeouts_cleartimeout" id="y7iPL;/^^,*);q|%Pk6;"><field name="NAME">timeout</field> <next><block type="controls_if" id="*DX-*|5t*M5.|5Qw0p76"><value name="IF0"><block type="logic_compare" id="[-Hs2uzeFf6L7XO4:d6g"><field name="OP">EQ</field> <value name="A"><block type="variables_get" id="uT*6f!Y:?Sivq1F-y;7_"><field name="VAR">parameter</field></block></value> <value name="B"><block type="logic_boolean" id="w?1)4.uK{/ey3NJ)NjH:"><field name="BOOL">TRUE</field></block></value></block></value> <statement name="DO0"><block type="comment" id="fU
TRz:hy1K[t@GmyY:"><field name="COMMENT">Timer starten</field>
<next><block type="timeouts_settimeout" id="k%sy5:QdTn+3f@{OZshs"><field name="NAME">timeout</field>
<field name="DELAY">3</field>
<field name="UNIT">min</field>
<statement name="STATEMENT"><block type="control" id="UOquZ.)w|Dv~5_@iCHO"><mutation delay_input="false"></mutation>
<field name="OID">HomeStatus.0.Sonstiges.WaschmaschineAN</field>
<field name="WITH_DELAY">FALSE</field>
<value name="VALUE"><block type="logic_boolean" id="ttQizIf!/AB*HLfb9Kw1"><field name="BOOL">FALSE</field></block></value>
<next><block type="procedures_callnoreturn" id="HHrpaU=vtt6v1JInTG~l"><mutation name="Melden"><arg name="Meldetext"></arg></mutation>
<value name="ARG0"><block type="text" id="leE4:W;JI@,LD;n0Gs6r"><field name="TEXT">Waschmaschine FERTIG</field></block></value></block></next></block></statement></block></next></block></statement></block></next></block></next></block></statement></block></xml>! ````
Grüße
-
Dein Block bei eeinschaltverzögerung ist Lehr führt also nichts aus ?
–-----------------------
Send from mobile device
-
Dein Block bei eeinschaltverzögerung ist Lehr führt also nichts aus ? `
Ja, soll ja nur eine Zeit überbrücken. Also nur eine kurze Programmpause.
Manche Geräte gehen beim Einstecken/Einschalten bis zu 10W nach oben und gehen dann nach ein paar Sekunden in den StandBy runter.
Diese Zeit soll überbrückt werden.
Grüße
-
Dein Block bei eeinschaltverzögerung ist Lehr führt also nichts aus ? `
Ja, soll ja nur eine Zeit überbrücken. Also nur eine kurze Programmpause.
Manche Geräte gehen beim Einstecken/Einschalten bis zu 10W nach oben und gehen dann nach ein paar Sekunden in den StandBy runter.
Diese Zeit soll überbrückt werden.
Grüße `
ja ok verstehe die logic aber nicht, was ueberbruckst du da genau ?
So wie ich es jetzt sehe startest du eine verzoegerung die nichts ausfuehrt, also wofuer die verzoegerung ?
-
Power = 0 W
Gerät einstecken oder Funkstecker einschalten.
Power = 15 W
falls vorheriger Wert = 0 mache 10 Sekunden NICHTS.
In der Zeit geht Power wieder auf 0.5 W
Alles ist gut und NICHTS ist passiert oder wurde ausgeführt.
Jetzt wird Gerät zum Waschen eingeschaltet
Power > 2.5 W
Dann kommt der normale Ablauf.
Habe ich es verständlich erklärt?
Grüße
-
Power = 0 W
Gerät einstecken oder Funkstecker einschalten.
Power = 15 W
falls vorheriger Wert = 0 mache 10 Sekunden NICHTS.
In der Zeit geht Power wieder auf 0.5 W
Alles ist gut und NICHTS ist passiert oder wurde ausgeführt.
Jetzt wird Gerät zum Waschen eingeschaltet
Power > 2.5 W
Dann kommt der normale Ablauf.
Habe ich es verständlich erklärt?
Grüße `
verstehen, dan kannst du den delay aber weglassen das nutzt nichts
was jetzt passiert:
wen voriger wert = 0 ==> Mache garnichts (das wuerde auch so passieren ohne die 10sek einschaltverzoegerung er macht einfach nichts weil voriger wert 0 war)
wen wert power gaendert wird und voriger wert nich 0 war dan sonst < 2.5 passiert nichts, bei > 2.5 und waschmachine unwahr geht die logic weiter.
Ergo der timeout 10sec ist nutzlos, die einfache IF abfrage voriger wert = 0 ohne eine ausloese baustein wuerde genau dasselber erreichen.
Es aere anders wen du in diesen block eine variable einen status gibts welche du spaeter abfragen willst.
Hoffe ist verstaendlich was ich meine
~Dutch
-
verstehen, dan kannst du den delay aber weglassen das nutzt nichts
was jetzt passiert:
wen voriger wert = 0 ==> Mache garnichts (das wuerde auch so passieren ohne die 10sek einschaltverzoegerung er macht einfach nichts weil voriger wert 0 war)
wen wert power gaendert wird und voriger wert nich 0 war dan sonst < 2.5 passiert nichts, bei > 2.5 und waschmachine unwahr geht die logic weiter.
Ergo der timeout 10sec ist nutzlos, die einfache IF abfrage voriger wert = 0 ohne eine ausloese baustein wuerde genau dasselber erreichen.
Es aere anders wen du in diesen block eine variable einen status gibts welche du spaeter abfragen willst.
Hoffe ist verstaendlich was ich meine
~Dutch `
Ja, wenn alles so einfach wäre.
Ich hatte nur einfacher beschrieben.
Ich hatte doch geschrieben, dass ich mehrere Geräte angeschlossen hatte.
Und fast alle reagieren unterschiedlich.
Falls Du eine Funkmesssteckdose hast, probiere es mal aus.
0 -> 10 -> 6 -> 8 -> 0.5 (Zahlen nur Beispiele)
Am interessantesten war bei mir ein Ventilator mit Heizung von Dyson.
Aber spätestens nach 10 Sekunden waren alle auf StandBy.
Keine Ahnung was heutige Waschmaschinen intern alles nacheinander einschalten.
Nach 10 Sekunden sollte aber alles erledigt sein.
Wenn nicht muss die Pause erhöht werden.
Also nicht nutzlos
Bin mal gespannt ob es bei totocotonio klappt.
Aber wahrscheinlich wäscht seine Frau heute nicht mehr.
Grüße
-
Also bei mir klappt es
Musste nur Parameter anpassen.
"GrenzWertWatt" ist bei mir 4
Im StandBy wechselt auch die Wattzahl.
Da war 3 Min. Wartezeit für die Fertigmeldung zu lang.
Habe ich auf 40 Sek. gesetzt.
Frau ist begeistert
Parameter muss jeder für seine Waschmaschine anpassen.
Werte vom Funkstecker lassen sich sehr gut über die WebUI der CCU beobachten.
Grüße