NEWS
Stalltür zu Licht an
-
Hallo, ich weiß es ist wahrscheinlich ein kleiner Fehler aber ich habe mal wieder keine Ahnung warum es nicht klappt.
Vielleicht kann mir einer von euch Helfen. Wir haben einen Hühnerstall und abends sind meine Frau und ich meist erst zuhause wenn es
dunkel ist nun sollen die Hühner nicht in ihrem Stall sitzen und die Tür ist auf.
Jetzt meine Frage Helligkeit zu gering Stalltür geht zu…. wenn zu dann soll nach 2 min. das Licht im Stall an gehen und das für 3 Std.
Zur zeit ist es so die Stalltür geht zu das licht macht was es will :? was mache ich falsch?
Danke schon mal im voraus von mir und den Hühnern
3893_stallt_r_zu_lichtan.jpg -
Das liegt daran, dass Du auf den Bewegungsmelder triggerst und deshalb das Script bei jeder Aktualisierung dessen abgearbeitet wird. Wird dabei einmal Deine Fallsbdedinnung erfüllt und einemal nicht, geht eben das licht immer aus und an. Also Das Script macht genau das was es soll :lol:
Etwas entschärfen kannst das mit geändert anstelle von aktualisiert, dann noch den Licht teil in einen timeout Block mit 2Minuten und die Verzögerung von 2 Minuten raus. So kann sich zumindest mal 2 Minuten lang beim Bewegungsmelder was ändern, ohne dass das Licht in Disco Betrieb wechselt.
-
Meinst du das so ?
Nach dem die Tür zu ist soll das licht nur ein mal nach 2 min an gehen und nach 3 Std aus.
3893_stall.jpg -
Ja bis auf das stop timeout. So werden zumindest mal Bewegungen innerhalb der 2 Minuten ignoriert. Musst mal testen, ob das schon reicht, sonst muss man noch mal drüber nachdenken. Warum das ganze passiert, habe ich ja geschrieben. Wie man es 100% löst, ist was anderes
-
Ich sehe gerade, dass ist ja gar nicht auf Bewegung getriggert, sondern auf die Helligkeit des Bewegungsmelder. Anscheinend gibt's wohl Schwankungen in der Helligkeit, die das verursachen.
Dann noch ein Tipp, rechte Maustaste auf den UND Block und externe Eingänge, dann das "=wahr" raus, da eh Grundfunktion vom falls Block und schon ist da schön übersichtlich.
-
Wenn der Schalter in der VISU auf AN "true" ist und die Helligkeit auf unter 68 gesunken ist soll die tür zu fahren. Nach 2 Min das licht an gehen und das soll nach 3 std wieder aus gehen.
Ist das dann so richtig ?
<block xmlns="http://www.w3.org/1999/xhtml" type="controls_if" id="3v{Hbuj23FRj/)3B`,g1" x="109" y="165"><value name="IF0"><block type="logic_operation" id="=(BUP}@X{zZd^x5vIU}R" inline="false"><field name="OP">AND</field> <value name="A"><block type="logic_compare" id="MZ0,Iu+z]zc4dpLt1ekC"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="y{qiG5][odrL?A]EyK=*"><field name="ATTR">val</field> <field name="OID">Schalter.0.Stall.AutoStallTuerZU</field></block></value> <value name="B"><block type="logic_boolean" id="@i}LD?wd^uSs![i`qeAn"><field name="BOOL">TRUE</field></block></value></block></value> <value name="B"><block type="logic_compare" id="T~@~^gO?!Y,9[6%+ohb4"><field name="OP">LTE</field> <value name="A"><block type="get_value" id="UDS]Yjvab)]y1FGG*X[!"><field name="ATTR">val</field> <field name="OID">hm-rpc.0.MEQ1423569.1.BRIGHTNESS</field></block></value> <value name="B"><block type="math_number" id="_JFkb-+A^rB5k^PE?AY:"><field name="NUM">68</field></block></value></block></value></block></value> <statement name="DO0"><block type="control" id="yY,cL/o9-Kb6NHI#:MS]"><mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.PEQ0095942.1.LEVEL</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="math_number" id="O`{I^#GR(30ba)VB!7zf"><field name="NUM">100</field></block></value> <next><block type="timeouts_settimeout" id="Y[gUyO!X(L~lWMTOaolj"><field name="NAME">timeout</field> <field name="DELAY">2</field> <field name="UNIT">min</field> <statement name="STATEMENT"><block type="control" id="{_Km|iHD`F(YYpw_ELS~"><mutation delay_input="false"></mutation> <field name="OID">sonoff.0.Licht_Huehnerstall.POWER</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="3hgW8Qt{r3etFphYLII."><field name="BOOL">TRUE</field></block></value> <next><block type="control" id="2~dNDSf-:~3/5ll]J;eX"><mutation delay_input="true"></mutation> <field name="OID">sonoff.0.Licht_Huehnerstall.POWER</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">180</field> <field name="UNIT">min</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="8*Dwh3n%91SycVOW{TPV"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></statement></block>
-
Wie wird den eigentlich der DP "AutoStalltürZu" gesetzt? Das versteh ich nicht wirklich. Das Tür Level 100, soll doch die Tür erst zu fahren, oder ist das nur ein Trigger der von VIS benutzt wird?
Das "=wahr" ist überflüssig
Ich würde dann auf den DP "AutoStalltürZu" triggern, denn so mach die wechselnde Helligkeit kein Problem.
Ich versteh Deine Aufgabe derzeit so, Du schaltetest irgendwo den DP "AutoStalltürZu" auf wahr und dann soll die Tür helligkeits-gesteuert zu fahren und das Licht nach 2 Minuten für 3 Stunden leuchten. Da ist alles abhängig vom gesetzten DP und somit sollte auch auf den getriggert werden. Alles andere kommt dann in die falls Bedingung mit rein.
Beim Trigger muss noch Dein DP rein, der hat in Deinem Export gefehlt
hier kann dann auch der Timeout wieder raus und ausschalten, falls nichts zutrifft, ist auch nicht verkehrt
-
Ok dann versuche ich das mal so.
Ja bei Objekte habe ich ein Objekt angelegt das als "Schalter" in der Visu auf an oder aus geschaltet werden kann(True/false) wenn es an ist soll der Ablauf wie beschrieben starten:
Helligkeit unter 68
Stalltür fährt zu
nach 2 min geht licht an, für 3 Std. Danke für deine Mühe und Hilfe
-
Wenn der schalter in der Visu auf AN/true ist und die Helligkeit unter 68 ist soll das Programm ablaufen.
<xml xmlns="http://www.w3.org/1999/xhtml"><block type="on_ext" id="ORNQv.joaPZbA5:;ghep" x="88" y="88"><mutation items="1"></mutation> <field name="CONDITION">ne</field> <value name="OID0"><shadow type="field_oid" id="k(0TzR6@*h1t7.|lBmjT"><field name="oid">hm-rpc.0.MEQ1423569.1.BRIGHTNESS</field></shadow></value> <statement name="STATEMENT"><block type="controls_if" id="3v{Hbuj23FRj/)3B`,g1"><mutation else="1"></mutation> <value name="IF0"><block type="logic_operation" id="=(BUP}@X{zZd^x5vIU}R" inline="false"><field name="OP">AND</field> <value name="A"><block type="logic_compare" id="MZ0,Iu+z]zc4dpLt1ekC"><field name="OP">EQ</field> <value name="A"><block type="get_value" id="y{qiG5][odrL?A]EyK=*"><field name="ATTR">val</field> <field name="OID">Schalter.0.Stall.AutoStallTuerZU</field></block></value> <value name="B"><block type="logic_boolean" id="@i}LD?wd^uSs![i`qeAn"><field name="BOOL">TRUE</field></block></value></block></value> <value name="B"><block type="logic_compare" id="T~@~^gO?!Y,9[6%+ohb4"><field name="OP">LTE</field> <value name="A"><block type="get_value" id="UDS]Yjvab)]y1FGG*X[!"><field name="ATTR">val</field> <field name="OID">hm-rpc.0.MEQ1423569.1.BRIGHTNESS</field></block></value> <value name="B"><block type="math_number" id="_JFkb-+A^rB5k^PE?AY:"><field name="NUM">68</field></block></value></block></value></block></value> <statement name="DO0"><block type="comment" id="{-e)J8j;7HJiF9eQ56k@"><field name="COMMENT">Stalltür</field> <next><block type="control" id="yY,cL/o9-Kb6NHI#:MS]"><mutation delay_input="false"></mutation> <field name="OID">hm-rpc.0.PEQ0095942.1.LEVEL</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="math_number" id="O`{I^#GR(30ba)VB!7zf"><field name="NUM">100</field></block></value> <next><block type="control" id="{_Km|iHD`F(YYpw_ELS~"><mutation delay_input="true"></mutation> <field name="OID">sonoff.0.Licht_Huehnerstall.POWER</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">2</field> <field name="UNIT">min</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="3hgW8Qt{r3etFphYLII."><field name="BOOL">TRUE</field></block></value> <next><block type="control" id="2~dNDSf-:~3/5ll]J;eX"><mutation delay_input="true"></mutation> <field name="OID">sonoff.0.Licht_Huehnerstall.POWER</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">180</field> <field name="UNIT">min</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="8*Dwh3n%91SycVOW{TPV"><field name="BOOL">FALSE</field></block></value></block></next></block></next></block></next></block></statement> <statement name="ELSE"><block type="control" id="LB|e;s/@3D*uQ(EW=B(l"><mutation delay_input="false"></mutation> <field name="OID">sonoff.0.Licht_Huehnerstall.POWER</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="logic_boolean" id="XxR0V@MWf0rv4EUH{pdU"><field name="BOOL">FALSE</field></block></value></block></statement></block></statement></block> <block type="comment" id="I)mUByoHyN2M`IiW25-C" x="387" y="138"><field name="COMMENT">Button AN/AUS in Visu</field></block> <block type="comment" id="tPmqsEOR0V.4ISJcqe6j" x="813" y="188"><field name="COMMENT">Helligkeit Bewegungsmelder</field></block></xml>
-
Ersetzte Dein Trigger DP "Helligkeit" durch den DP aus VIS und mach das "=wahr" weg. Dann läuft das, wie ich gestern schon geschrieben habe
Der Auslöser ist Dein Schalter in VIS und Trigger bedeutet nichts anderes als Auslöser, warum dann auf die Helligkeit triggern? Helligkeit ist ne falls Abfrage.
-
Muss dann nicht der Schalter immer ein mal auf AN oder AUS geschaltet werden damit das Programm wieder läuft ?
Die UND Verknüpfung weiß doch gar nicht den wert vom Button AN/AUS oder sehe ich das auch falsch?
3893_stall.jpg -
Das ist richtig, nur dachte ich Du schaltest das auch immer an und aus.
Beim Trigger oben auch nichts anhängen, sondern das vordefinierte Feld verwenden, oder den anderen Trigger, der eh nur ein Objekt erlaubt verwenden. Alternativ kannst ein Zeitplan als Trigger nehmen. Da stellst im CRON einfach den ungefähren Zeitraum ein, wann die ganzen Aktionen überhaupt in Betracht kommen. Der wiederholt dann im vordefinierten Abstand das Script und führt auch alles aus.
Mit der Helligkeit als Trigger und Helligkeit als Falls ist eben blöd, wenn das durch Wolken oder sonst was mal true oder false sein kann, dann macht Dein Stalllicht eben auch an/aus und die Hühner haben Dico :lol:
Was noch gut wäre, eine zusätzliche Helligkeitsabfrage auf nicht größer als. So kannst Helligkeitsschwankungen ausgleichen. Welche Werte dafür in Frage kommen, muss testen.
-
Wenn einer zuhause ist der die Tür zu machen kann ist das Programm auch ausgeschaltet aber wenn nicht dann soll es so ablaufen.
Der Zeitplan ist ne gute Idee aber geht dann nicht auch jede Std das licht an und aus wegen dem Zeitplan ?
Das mit dem UND verstehe ich nicht so ganz, der WERT vom Schalter True/False (AN/AUS) muss doch auch verglichen werden.
Wenn das UND nur den WERT hat True/False woher weis er dann das es richtig ist?
Ich breche mir einen ab für so einen kleinen scheiß tut mir echt leid für den ganzen Stress, herzlichen dank noch mal für deine tolle Hilfe !!!!!!
3893_stall.jpg
3893_stall2.jpg -
Dadurch lernst aber auch die Zusammenhänge zu verstehen.
Also zum "falls" Block, der prüft immer auf "true", deshalb ist es nicht nötig das nochmal extra als "= wahr" zu fragen, da doppelt abgefragt. Kann man machen, ist aber überflüssig. Du darfst nicht das eingetragene Objekt bei der Betrachtung in den Vordergrund stellen, sondern dessen Wert und da steht ja in der Regel true oder false.
Das Licht wird nur an und ausgehen, wenn die UND Bedingung dementsprechend erfüllt oder eben nicht erfüllt ist. Hier liegt auch die Schwierigkeit in dem Scriptz, da die Helligkeit und deren eingestellte Grenzen eben so ihre Tücken hat.
Da hilft einfach, wenn man sich selber die Frage stellt kann das Licht bei einer bestimmten Konstellation ungewollt an oder aus gehen und das Szenario durchspielt. Bei Dir ist eben die Helligkeit die Variable und hier kann es hilfreich sein, wenn man eine ober und unter Grenze einfügt um etwas mehr Ruhe rein zu bekommen.
-
Ok, dann muss das ja komplett das Problem beheben.
3893_stall.jpg -
Ok das klappt auch nicht jetzt ist iobroker abgeschmiert :?
-
Da haste auch ne schöne Endlosschleife gebastelt :lol:
Das wiederhole ist ne böse Geschichte, wenn man das falsch verwendet. In der Fünktion gefört wenn überhaupt 1 rein und nicht 100, wobei das doch überflüssig ist. Die Tür geht doch zu, wenn man sie direkt auf 100 setzt, oder nicht?
-
Ich glaube das Licht einschalten lasse ich raus, dass wird nichts wenn ich das so umsetzte geht wenn man das licht normal einschaltet immer aus.
Danke noch mal für alles !!
-
Nicht aufgeben, so kompliziert ist das nicht.
Für mich ist es nur bisschen schwerer mit der Hilfe da ich Deine DPs dazu nicht wirklich kenne, wie die gesetzt und gesteuert werden. Die Tür z.B., warum hat die ein Level, was steckt da für eine HW dahinter, wie ist die in IOBroker überhaupt eingebunden. Das gleiche dann auch noch mit dem Licht.
Bei mir ist es egal, wie ich meine Lichter Schalte, wenn ich den Wandschalter betätige, dann toggelt er den aktuellen Zustand.
-
Guten Morgen, habe es nicht schneller geschafft das zusammen zu stellen liege mit einer Grippe im bett
Also hier mal Bilder wie das aufgebaut ist.
Zu der Tür, sie wird mit einem Rollladenmotor auf und zu gefahren, gesteuert wird es von HM-LC-Bl1PBU-FM deswegen das Level.
Wenn du noch mehr Infos Brauchst sag das, eine Lösung würde natürlich toll sein. Meine Frau ist von der ganzen Sache schon genervt :roll:
als wir das Projekt angefangen haben dachte ich das ist doch kein Problem naja war es wie man sieht doch.
3893_licht.jpg
3893_schalter_tuer.jpg
3893_helligkeit.jpg
3893_tuer.jpg
3893_schalter_tuer_visu.jpg