Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Homematic Ip Bewegungsmelder in ioBroker

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Homematic Ip Bewegungsmelder in ioBroker

    This topic has been deleted. Only users with topic management privileges can see it.
    • G
      Gerni last edited by

      ok, ich habe das mal nachgebaut. Habe ich denn die ObjektIDs korrekt? Ist das der obere Ordner des Gerätes? State der Lampe ist ja der Eintrag in den Objekten wo auf "state" aufgeführt ist.
      3449_blockly.png

      1 Reply Last reply Reply Quote 0
      • K
        Kueppert last edited by

        Ich ziehe gerade um und hab die Bewegungsmelder von Hue. Ich hoffe damit geht es auch… Ich will in der ccu nix machen, sondern alles in ioBroker, daher lasse ich das mit der Zeit in Script 😉

        Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk

        1 Reply Last reply Reply Quote 0
        • Dutchman
          Dutchman Developer Most Active Administrators last edited by

          @Gerni:

          ok, ich habe das mal nachgebaut. Habe ich denn die ObjektIDs korrekt? Ist das der obere Ordner des Gerätes? State der Lampe ist ja der Eintrag in den Objekten wo auf "state" aufgeführt ist. `

          2 Fehler, in der ersten if Abfrage musst du auch den Wert des states abfragen mit status unwar er soll ihn ja Dan auf wahr setzen !

          Und bei der zweiten if auch den state ausfragen aber Dan mit war ( ist also richtig wie es jetzt steht)

          –-----------------------

          Send from mobile device

          1 Reply Last reply Reply Quote 0
          • Dutchman
            Dutchman Developer Most Active Administrators last edited by

            @Kueppert:

            Ich ziehe gerade um und hab die Bewegungsmelder von Hue. Ich hoffe damit geht es auch… Ich will in der ccu nix machen, sondern alles in ioBroker, daher lasse ich das mit der Zeit in Script 😉

            Gesendet von meinem HUAWEI RIO-L01 mit Tapatalk `
            In deinem Fall stimmt der Block, ausgegangen davon das der Wert dich immer bei Bewegung ändert

            Für euch beide gilt das man noch abfragen könnte ober der Bewegungsmelder true oder false meldet wen ihr versteht was ich meine

            –-----------------------

            Send from mobile device

            1 Reply Last reply Reply Quote 0
            • G
              Gerni last edited by

              Hm, ich bekomme es jedenfalls nicht zum Laufen. Vielleicht doch die Verknüpfung über CCU… :-S

              Liegt es vielleicht daran, dass es ein Homematic IP Bewegungsmelder ist? Wenn ich in der CCU eine Verknüpfung erstellen möchte wird mir auch nur die Homematic IP Steckdose angeboten nicht aber die normalen Funkaktoren.

              1 Reply Last reply Reply Quote 0
              • G
                Gerni last edited by

                Hi, Ich habe nochmal probiert gemäß eurer Lösung allerdings schaltet sich die Lampe nicht ein. Lt. Gerät in der Homematic WebUi wurde vom Bewegungsmelder aber eine Bewegung registriert.

                Über die CCU selbst kann ich kein Programm erstellen weil, da es ein Homematic IP Bewegungsmelder ist, nur die Homematic IP Steckdosen angezeigt nicht aber die normalen Aktoren.

                Es müsste ja also über ioBroker funktionieren, dazu ist es ja da - mehrere Systeme zu vereinen.

                Habt ihr noch Ideen wie ich die Bewegungsmelder Thematik lösen kann?

                Gruß

                Stefan
                3449_bewegtest.png

                1 Reply Last reply Reply Quote 0
                • Dutchman
                  Dutchman Developer Most Active Administrators last edited by

                  1. bau mal bitte am anfang einen debug block ein, es wuerde mich interessieren ob das script uberhaupt getriggerd wird.

                  (also unter dem commend "erst abfrage ….")

                  1. hast du mal mit z.b. history probiert den state des bewegungs melders zu loggen, dan haben wir data zum vergleich we ein trigger gekommen ist um mit dem script zu vergleichen
                  1 Reply Last reply Reply Quote 0
                  • G
                    Gerni last edited by

                    Hey Dutchman,

                    du fragst Sachen 😄 Ich kenne mich doch nicht wirklich damit aus aber mit jedem Problemchen lernt man dazu. Also was genau soll ich wie/wo machen?

                    Gruß

                    Stefan

                    1 Reply Last reply Reply Quote 0
                    • Dutchman
                      Dutchman Developer Most Active Administrators last edited by

                      @Gerni:

                      Hey Dutchman,

                      du fragst Sachen 😄 Ich kenne mich doch nicht wirklich damit aus aber mit jedem Problemchen lernt man dazu. Also was genau soll ich wie/wo machen?

                      Gruß

                      Stefan `

                      Mach Mal nen Export von deinem Block Dan baue ich dir das ein 😉

                      –-----------------------

                      Send from mobile device

                      1 Reply Last reply Reply Quote 0
                      • G
                        Gerni last edited by

                        Hey Dutchman,

                        Ich hoffe ich füge das hier richtig ein…

                        Kurze Ergänzung; Ich schicke den HomematicIP Bewegungsmelder zurück und bekommen voraussichtlich heute einen "normalen". Das dürfte in iobroker egal sein aber so bin ich letztlich etwas flexibler.

                        Gruß

                        Stefan

                         <xml xmlns="http://www.w3.org/1999/xhtml"><block type="comment" id="yPU2vv1V78ahqyWun+.i" x="148" y="79"><field name="COMMENT">Hier die richtige object ID rein, status des bewegungssensors</field>
                            <next><block type="comment" id="g:X%0M?7j?^`zW7~a?om"><field name="COMMENT">script laeuft bei jeder bewegungs erkennung</field>
                                <next><block type="on" id="X;Cp_fbl5.{}9+*MBtnW"><field name="OID">hm-rpc.1.000955699D465B.1.MOTION</field>
                                    <field name="CONDITION">true</field>
                        
                                    <statement name="STATEMENT"><block type="comment" id="(`]ET=A-FKQ9%a|we|GP"><field name="COMMENT">Erste abfrage, nur wen die lampe aus ist und richtige zeit dan lampe an</field>
                                        <next><block type="controls_if" id="r4;C-s:gJHryisv4KGb`"><value name="IF0"><block type="logic_operation" id="VUJ92lg?!sG@W_1TU+5g" inline="false"><field name="OP">AND</field>
                                                <value name="A"><block type="logic_compare" id="`xtzX4ItMfX=-#}(S#kG"><field name="OP">EQ</field>
                                                    <value name="A"><block type="get_value" id="8IKCOCv1DP?HzN^R2v=]"><field name="ATTR">val</field>
                                                        <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field></block></value> 
                                                    <value name="B"><block type="logic_boolean" id=":#Vwgl+3v(k_{TC+E:VU"><field name="BOOL">FALSE</field></block></value></block></value> 
                                                <value name="B"><block type="time_compare_ex" id="IAc`!raK?xuz.Tw@:(ha"><mutation end_time="true" actual_time="true"></mutation>
                                                    <field name="USE_ACTUAL_TIME">TRUE</field>
                                                    <field name="OPTION">between</field>
                                                    <value name="START_TIME"><shadow type="text" id="1OcFO;^q@As//Imia63q"><field name="TEXT">11:00</field></shadow></value> 
                                                    <value name="END_TIME"><shadow type="text" id="5u{)Q21X0tV=W@qNf)LG"><field name="TEXT">08:00</field></shadow></value></block></value></block></value> 
                                            <statement name="DO0"><block type="comment" id="qb/5eT%h{.Cu^S.s0}H-"><field name="COMMENT">hier den state der lampe rein</field>
                                                <next><block type="control" id="|~G:]+8EHMW;8*1-^?~j"><mutation delay_input="false"></mutation>
                                                    <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field>
                                                    <field name="WITH_DELAY">FALSE</field>
                                                    <value name="VALUE"><block type="logic_boolean" id="qsYjuh[gII/kw%kZfqH]"><field name="BOOL">TRUE</field></block></value></block></next></block></statement> 
                                            <next><block type="comment" id="DGo)ix{AcILVzNd3LRla"><field name="COMMENT">nach 5 minuten lampen wieder aus</field>
                                                <next><block type="comment" id="X.Ey];bFJ)WBFl=x2=EV"><field name="COMMENT">wen timeout bereits laeuft diesen erst resetten</field>
                                                    <next><block type="timeouts_cleartimeout" id="^9kndE@5R7DmO.Pb3ZWr"><field name="NAME">timeout</field>
                                                        <next><block type="timeouts_settimeout" id="1m)Q_r6s:]S6[6JqKIcH"><field name="NAME">timeout</field>
                                                            <field name="DELAY">300000</field>
                                                            <field name="UNIT">ms</field>
                                                            <statement name="STATEMENT"><block type="comment" id="]+(tO,M)cKeM[AN1/R/u"><field name="COMMENT">erst abfragen ob die lampe an ist um onnoetige schaltung zu vermeiden</field>
                                                                <next><block type="controls_if" id="q}VKP`-H5aXwG#1=6+qW"><value name="IF0"><block type="logic_compare" id="L*2)rU(:qyoz?.0*8BNs"><field name="OP">EQ</field>
                                                                        <value name="A"><block type="get_value" id="UN8Jw~z-SKy;+zp~TKs0"><field name="ATTR">val</field>
                                                                            <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field></block></value> 
                                                                        <value name="B"><block type="logic_boolean" id="ybSBu8-52}5A=K8lIT)0"><field name="BOOL">TRUE</field></block></value></block></value> 
                                                                    <statement name="DO0"><block type="comment" id="1;l_q@MgKet]7Me`|j+J"><field name="COMMENT">hier den state der lampe rein</field>
                                                                        <next><block type="control" id="ftP!r*}f{K0X.R)Uax?:"><mutation delay_input="false"></mutation>
                                                                            <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field>
                                                                            <field name="WITH_DELAY">FALSE</field>
                                                                            <value name="VALUE"><block type="logic_boolean" id="Z7hs,k@|2R:*~^FsIB~#"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></statement></block></next></block></next></block></next></block></next></block></next></block></statement></block></next></block></next></block></xml> 
                        
                        1 Reply Last reply Reply Quote 0
                        • Dutchman
                          Dutchman Developer Most Active Administrators last edited by

                          @Gerni:

                          Hey Dutchman,

                          Ich hoffe ich füge das hier richtig ein…

                          Kurze Ergänzung; Ich schicke den HomematicIP Bewegungsmelder zurück und bekommen voraussichtlich heute einen "normalen". Das dürfte in iobroker egal sein aber so bin ich letztlich etwas flexibler.

                          Gruß

                          Stefan `

                          Jup sehr gut, probier mal das hier was kommt dan im log ?

                          979_debug.jpg

                           <xml xmlns="http://www.w3.org/1999/xhtml"><block type="debug" id="G_+Po|VjgJ%V.xkw,O[C" x="138" y="12"><field name="Severity">log</field>
                              <value name="TEXT"><shadow type="text" id="[:kA}0y+F?O;}WY~BTCi"><field name="TEXT">Test 1 : Script activiert</field></shadow></value> 
                              <next><block type="comment" id="yPU2vv1V78ahqyWun+.i"><field name="COMMENT">Hier die richtige object ID rein, status des bewegungssensors</field>
                                  <next><block type="comment" id="g:X%0M?7j?^`zW7~a?om"><field name="COMMENT">script laeuft bei jeder bewegungs erkennung</field>
                                      <next><block type="on" id="X;Cp_fbl5.{}9+*MBtnW"><field name="OID">hm-rpc.1.000955699D465B.1.MOTION</field>
                                          <field name="CONDITION">true</field>
                          
                                          <statement name="STATEMENT"><block type="debug" id=":cJyXhQ+{7R!=%z~^`:m"><field name="Severity">log</field>
                                              <value name="TEXT"><shadow type="text" id="JG~~oPtHr6!jS[j`79`;"><field name="TEXT">Test 2 : Trigger erkannt</field></shadow></value> 
                                              <next><block type="comment" id="(`]ET=A-FKQ9%a|we|GP"><field name="COMMENT">Erste abfrage, nur wen die lampe aus ist und richtige zeit dan lampe an</field>
                                                  <next><block type="controls_if" id="r4;C-s:gJHryisv4KGb`"><value name="IF0"><block type="logic_operation" id="VUJ92lg?!sG@W_1TU+5g" inline="false"><field name="OP">AND</field>
                                                          <value name="A"><block type="logic_compare" id="`xtzX4ItMfX=-#}(S#kG"><field name="OP">EQ</field>
                                                              <value name="A"><block type="get_value" id="8IKCOCv1DP?HzN^R2v=]"><field name="ATTR">val</field>
                                                                  <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field></block></value> 
                                                              <value name="B"><block type="logic_boolean" id=":#Vwgl+3v(k_{TC+E:VU"><field name="BOOL">FALSE</field></block></value></block></value> 
                                                          <value name="B"><block type="time_compare_ex" id="IAc`!raK?xuz.Tw@:(ha"><mutation end_time="true" actual_time="true"></mutation>
                                                              <field name="USE_ACTUAL_TIME">TRUE</field>
                                                              <field name="OPTION">between</field>
                                                              <value name="START_TIME"><shadow type="text" id="1OcFO;^q@As//Imia63q"><field name="TEXT">11:00</field></shadow></value> 
                                                              <value name="END_TIME"><shadow type="text" id="5u{)Q21X0tV=W@qNf)LG"><field name="TEXT">08:00</field></shadow></value></block></value></block></value> 
                                                      <statement name="DO0"><block type="debug" id="/-a-agM)z)hG-=~[~Ep8"><field name="Severity">log</field>
                                                          <value name="TEXT"><shadow type="text" id="z#v-^8mtTjX^^Cd`wIzE"><field name="TEXT">Test 3 : IF abfragen ergebnis = lampe aus, schalte sie ein</field></shadow></value> 
                                                          <next><block type="comment" id="qb/5eT%h{.Cu^S.s0}H-"><field name="COMMENT">hier den state der lampe rein</field>
                                                              <next><block type="control" id="|~G:]+8EHMW;8*1-^?~j"><mutation delay_input="false"></mutation>
                                                                  <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field>
                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                  <value name="VALUE"><block type="logic_boolean" id="qsYjuh[gII/kw%kZfqH]"><field name="BOOL">TRUE</field></block></value></block></next></block></next></block></statement> 
                                                      <next><block type="debug" id="fw~S6QpIRB!j4([q.],B"><field name="Severity">log</field>
                                                          <value name="TEXT"><shadow type="text" id="!UJEOHxnh[@Y^v7MP_Iq"><field name="TEXT">Test 4 : If abfrage negatief durchlaufen, lampe war an</field></shadow></value> 
                                                          <next><block type="comment" id="DGo)ix{AcILVzNd3LRla"><field name="COMMENT">nach 5 minuten lampen wieder aus</field>
                                                              <next><block type="comment" id="X.Ey];bFJ)WBFl=x2=EV"><field name="COMMENT">wen timeout bereits laeuft diesen erst resetten</field>
                                                                  <next><block type="timeouts_cleartimeout" id="^9kndE@5R7DmO.Pb3ZWr"><field name="NAME">timeout</field>
                                                                      <next><block type="timeouts_settimeout" id="1m)Q_r6s:]S6[6JqKIcH"><field name="NAME">timeout</field>
                                                                          <field name="DELAY">300000</field>
                                                                          <field name="UNIT">ms</field>
                                                                          <statement name="STATEMENT"><block type="comment" id="]+(tO,M)cKeM[AN1/R/u"><field name="COMMENT">erst abfragen ob die lampe an ist um onnoetige schaltung zu vermeiden</field>
                                                                              <next><block type="controls_if" id="q}VKP`-H5aXwG#1=6+qW"><value name="IF0"><block type="logic_compare" id="L*2)rU(:qyoz?.0*8BNs"><field name="OP">EQ</field>
                                                                                      <value name="A"><block type="get_value" id="UN8Jw~z-SKy;+zp~TKs0"><field name="ATTR">val</field>
                                                                                          <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field></block></value> 
                                                                                      <value name="B"><block type="logic_boolean" id="ybSBu8-52}5A=K8lIT)0"><field name="BOOL">TRUE</field></block></value></block></value> 
                                                                                  <statement name="DO0"><block type="comment" id="1;l_q@MgKet]7Me`|j+J"><field name="COMMENT">hier den state der lampe rein</field>
                                                                                      <next><block type="control" id="ftP!r*}f{K0X.R)Uax?:"><mutation delay_input="false"></mutation>
                                                                                          <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field>
                                                                                          <field name="WITH_DELAY">FALSE</field>
                                                                                          <value name="VALUE"><block type="logic_boolean" id="Z7hs,k@|2R:*~^FsIB~#"><field name="BOOL">FALSE</field></block></value></block></next></block></statement> 
                                                                                  <next><block type="debug" id="EH79=Jzaz;H9}4EnJ4{,"><field name="Severity">log</field>
                                                                                      <value name="TEXT"><shadow type="text" id="gW=oLi/_kA_(-(Gcsn!,"><field name="TEXT">Test 5 : Timer beendet, laumpe aus</field></shadow></value></block></next></block></next></block></statement></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block></next></block></next></block></next></block></xml> 
                          
                          
                          1 Reply Last reply Reply Quote 0
                          • lobomau
                            lobomau last edited by

                            Ich habe den homematic IP BWM auch im Einsatz. Versuch doch erstmal mit meinen einfachen Einstellungen aus. Die EInstellungen im Script und im Gerät selbst müssen zu einander passen. Da habe ich auch etwas rumprobiert bis es passte:
                            1146_blockly.jpg
                            1146_ccu-bwm.jpg

                            1 Reply Last reply Reply Quote 0
                            • G
                              Gerni last edited by

                              @lobomau:

                              Ich habe den homematic IP BWM auch im Einsatz. Versuch doch erstmal mit meinen einfachen Einstellungen aus. Die EInstellungen im Script und im Gerät selbst müssen zu einander passen. Da habe ich auch etwas rumprobiert bis es passte: `

                              Diese hatte ich schon probiert. Aber auch über die WebUI konnte ich einen Homematic IP Bewegungsmelder nicht mit einem normalen Aktor verknüpfen. Mit dem normalen Bewegungsmelder funktioniert es jetzt zumindest. Wobei ich das Skript von Dutchman am Wochenende nochmal teste.

                              Gruß

                              Stefan

                              1 Reply Last reply Reply Quote 0
                              • lobomau
                                lobomau last edited by

                                @Gerni:

                                @lobomau:

                                Ich habe den homematic IP BWM auch im Einsatz. Versuch doch erstmal mit meinen einfachen Einstellungen aus. Die EInstellungen im Script und im Gerät selbst müssen zu einander passen. Da habe ich auch etwas rumprobiert bis es passte: `

                                Diese hatte ich schon probiert. Aber auch über die WebUI konnte ich einen Homematic IP Bewegungsmelder nicht mit einem normalen Aktor verknüpfen. Mit dem normalen Bewegungsmelder funktioniert es jetzt zumindest. Wobei ich das Skript von Dutchman am Wochenende nochmal teste.

                                Gruß

                                Stefan `
                                Zu Verknüpfungen innerhalb der homematic vom homematic IP BWM zu anderen Geräten kann ich nichts sagen. Die Scripte laufen bei mir alle auf dem ioBroker server.

                                1 Reply Last reply Reply Quote 0
                                • Dutchman
                                  Dutchman Developer Most Active Administrators last edited by

                                  @lobomau:

                                  Ich habe den homematic IP BWM auch im Einsatz. Versuch doch erstmal mit meinen einfachen Einstellungen aus. Die EInstellungen im Script und im Gerät selbst müssen zu einander passen. Da habe ich auch etwas rumprobiert bis es passte:
                                  filename="blockly.JPG" index="0">~~
                                  filename="ccu-BWM.JPG" index="1">~~ `

                                  Pass auf dieser Aufbau ist gefährlich…

                                  Du schaltest immer ohne Prüfung ob die Lampe an ist.

                                  Also auch wenn die Lampe an ist Schaltest du bei jeder neuen Bewegung nochmal das ab Signal, nach 5 Bewegungs Erkennungen also 4 überflüssige an Schaltungen damit sprengst du irgendwann deinen duty cycle [emoji6]

                                  –-----------------------

                                  Send from mobile device

                                  1 Reply Last reply Reply Quote 0
                                  • lobomau
                                    lobomau last edited by

                                    @Dutchman:

                                    @lobomau:

                                    Ich habe den homematic IP BWM auch im Einsatz. Versuch doch erstmal mit meinen einfachen Einstellungen aus. Die EInstellungen im Script und im Gerät selbst müssen zu einander passen. Da habe ich auch etwas rumprobiert bis es passte:

                                    blockly.JPG

                                    ccu-BWM.JPG `

                                    Pass auf dieser Aufbau ist gefährlich…

                                    Du schaltest immer ohne Prüfung ob die Lampe an ist.

                                    Also auch wenn die Lampe an ist Schaltest du bei jeder neuen Bewegung nochmal das ab Signal, nach 5 Bewegungs Erkennungen also 4 überflüssige an Schaltungen damit sprengst du irgendwann deinen duty cycle [emoji6]

                                    –-----------------------

                                    Send from mobile device `
                                    Das habe ich noch nicht ganz verstanden. Ich schalte doch nur Licht an, wenn es aus ist!?

                                    Den duty cycle habe ich Blick. Normal ist er sehr niedrig. Habe nun eine Geräte Einstellung gefunden, die fast den duty cycle gesprengt hat: die hm Steckdose mit Energieverbrauchsmessung. Ich habe darauf die Einstellungen etwas angepasst 😉

                                    1 Reply Last reply Reply Quote 0
                                    • Dutchman
                                      Dutchman Developer Most Active Administrators last edited by

                                      @lobomau:

                                      @Dutchman:

                                      @lobomau:

                                      Ich habe den homematic IP BWM auch im Einsatz. Versuch doch erstmal mit meinen einfachen Einstellungen aus. Die EInstellungen im Script und im Gerät selbst müssen zu einander passen. Da habe ich auch etwas rumprobiert bis es passte:

                                      blockly.JPG

                                      ccu-BWM.JPG `

                                      Pass auf dieser Aufbau ist gefährlich…

                                      Du schaltest immer ohne Prüfung ob die Lampe an ist.

                                      Also auch wenn die Lampe an ist Schaltest du bei jeder neuen Bewegung nochmal das ab Signal, nach 5 Bewegungs Erkennungen also 4 überflüssige an Schaltungen damit sprengst du irgendwann deinen duty cycle [emoji6]

                                      –-----------------------

                                      Send from mobile device `
                                      Das habe ich noch nicht ganz verstanden. Ich schalte doch nur Licht an, wenn es aus ist!?

                                      Den duty cycle habe ich Blick. Normal ist er sehr niedrig. Habe nun eine Geräte Einstellung gefunden, die fast den duty cycle gesprengt hat: die hm Steckdose mit Energieverbrauchsmessung. Ich habe darauf die Einstellungen etwas angepasst 😉 `

                                      Ich sollte erst Forum posts lesen und beantworten und dann ein Wein trinken und nicht andersum…

                                      Sorry mein Fehler du hast ja ne if Abfrage drinnen


                                      Send from mobile device

                                      1 Reply Last reply Reply Quote 0
                                      • lobomau
                                        lobomau last edited by

                                        Der Witz ist, ich hatte die vorher ohne die if Abfrage in Gebrauch. Bevor ich sie hier gezeigt habe, habe ich sie erst hinzugefügt und bei mir angepasst. Zum Wohle! 🙂

                                        1 Reply Last reply Reply Quote 0
                                        • G
                                          Gerni last edited by

                                          Jup sehr gut, probier mal das hier was kommt dan im log ?

                                          debug.JPG

                                           <xml xmlns="http://www.w3.org/1999/xhtml"><block type="debug" id="G_+Po|VjgJ%V.xkw,O[C" x="138" y="12"><field name="Severity">log</field>
                                              <value name="TEXT"><shadow type="text" id="[:kA}0y+F?O;}WY~BTCi"><field name="TEXT">Test 1 : Script activiert</field></shadow></value> 
                                              <next><block type="comment" id="yPU2vv1V78ahqyWun+.i"><field name="COMMENT">Hier die richtige object ID rein, status des bewegungssensors</field>
                                                  <next><block type="comment" id="g:X%0M?7j?^`zW7~a?om"><field name="COMMENT">script laeuft bei jeder bewegungs erkennung</field>
                                                      <next><block type="on" id="X;Cp_fbl5.{}9+*MBtnW"><field name="OID">hm-rpc.1.000955699D465B.1.MOTION</field>
                                                          <field name="CONDITION">true</field>
                                          
                                                          <statement name="STATEMENT"><block type="debug" id=":cJyXhQ+{7R!=%z~^`:m"><field name="Severity">log</field>
                                                              <value name="TEXT"><shadow type="text" id="JG~~oPtHr6!jS[j`79`;"><field name="TEXT">Test 2 : Trigger erkannt</field></shadow></value> 
                                                              <next><block type="comment" id="(`]ET=A-FKQ9%a|we|GP"><field name="COMMENT">Erste abfrage, nur wen die lampe aus ist und richtige zeit dan lampe an</field>
                                                                  <next><block type="controls_if" id="r4;C-s:gJHryisv4KGb`"><value name="IF0"><block type="logic_operation" id="VUJ92lg?!sG@W_1TU+5g" inline="false"><field name="OP">AND</field>
                                                                          <value name="A"><block type="logic_compare" id="`xtzX4ItMfX=-#}(S#kG"><field name="OP">EQ</field>
                                                                              <value name="A"><block type="get_value" id="8IKCOCv1DP?HzN^R2v=]"><field name="ATTR">val</field>
                                                                                  <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field></block></value> 
                                                                              <value name="B"><block type="logic_boolean" id=":#Vwgl+3v(k_{TC+E:VU"><field name="BOOL">FALSE</field></block></value></block></value> 
                                                                          <value name="B"><block type="time_compare_ex" id="IAc`!raK?xuz.Tw@:(ha"><mutation end_time="true" actual_time="true"></mutation>
                                                                              <field name="USE_ACTUAL_TIME">TRUE</field>
                                                                              <field name="OPTION">between</field>
                                                                              <value name="START_TIME"><shadow type="text" id="1OcFO;^q@As//Imia63q"><field name="TEXT">11:00</field></shadow></value> 
                                                                              <value name="END_TIME"><shadow type="text" id="5u{)Q21X0tV=W@qNf)LG"><field name="TEXT">08:00</field></shadow></value></block></value></block></value> 
                                                                      <statement name="DO0"><block type="debug" id="/-a-agM)z)hG-=~[~Ep8"><field name="Severity">log</field>
                                                                          <value name="TEXT"><shadow type="text" id="z#v-^8mtTjX^^Cd`wIzE"><field name="TEXT">Test 3 : IF abfragen ergebnis = lampe aus, schalte sie ein</field></shadow></value> 
                                                                          <next><block type="comment" id="qb/5eT%h{.Cu^S.s0}H-"><field name="COMMENT">hier den state der lampe rein</field>
                                                                              <next><block type="control" id="|~G:]+8EHMW;8*1-^?~j"><mutation delay_input="false"></mutation>
                                                                                  <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field>
                                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                                  <value name="VALUE"><block type="logic_boolean" id="qsYjuh[gII/kw%kZfqH]"><field name="BOOL">TRUE</field></block></value></block></next></block></next></block></statement> 
                                                                      <next><block type="debug" id="fw~S6QpIRB!j4([q.],B"><field name="Severity">log</field>
                                                                          <value name="TEXT"><shadow type="text" id="!UJEOHxnh[@Y^v7MP_Iq"><field name="TEXT">Test 4 : If abfrage negatief durchlaufen, lampe war an</field></shadow></value> 
                                                                          <next><block type="comment" id="DGo)ix{AcILVzNd3LRla"><field name="COMMENT">nach 5 minuten lampen wieder aus</field>
                                                                              <next><block type="comment" id="X.Ey];bFJ)WBFl=x2=EV"><field name="COMMENT">wen timeout bereits laeuft diesen erst resetten</field>
                                                                                  <next><block type="timeouts_cleartimeout" id="^9kndE@5R7DmO.Pb3ZWr"><field name="NAME">timeout</field>
                                                                                      <next><block type="timeouts_settimeout" id="1m)Q_r6s:]S6[6JqKIcH"><field name="NAME">timeout</field>
                                                                                          <field name="DELAY">300000</field>
                                                                                          <field name="UNIT">ms</field>
                                                                                          <statement name="STATEMENT"><block type="comment" id="]+(tO,M)cKeM[AN1/R/u"><field name="COMMENT">erst abfragen ob die lampe an ist um onnoetige schaltung zu vermeiden</field>
                                                                                              <next><block type="controls_if" id="q}VKP`-H5aXwG#1=6+qW"><value name="IF0"><block type="logic_compare" id="L*2)rU(:qyoz?.0*8BNs"><field name="OP">EQ</field>
                                                                                                      <value name="A"><block type="get_value" id="UN8Jw~z-SKy;+zp~TKs0"><field name="ATTR">val</field>
                                                                                                          <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field></block></value> 
                                                                                                      <value name="B"><block type="logic_boolean" id="ybSBu8-52}5A=K8lIT)0"><field name="BOOL">TRUE</field></block></value></block></value> 
                                                                                                  <statement name="DO0"><block type="comment" id="1;l_q@MgKet]7Me`|j+J"><field name="COMMENT">hier den state der lampe rein</field>
                                                                                                      <next><block type="control" id="ftP!r*}f{K0X.R)Uax?:"><mutation delay_input="false"></mutation>
                                                                                                          <field name="OID">hm-rpc.0.NEQ1502825.1.STATE</field>
                                                                                                          <field name="WITH_DELAY">FALSE</field>
                                                                                                          <value name="VALUE"><block type="logic_boolean" id="Z7hs,k@|2R:*~^FsIB~#"><field name="BOOL">FALSE</field></block></value></block></next></block></statement> 
                                                                                                  <next><block type="debug" id="EH79=Jzaz;H9}4EnJ4{,"><field name="Severity">log</field>
                                                                                                      <value name="TEXT"><shadow type="text" id="gW=oLi/_kA_(-(Gcsn!,"><field name="TEXT">Test 5 : Timer beendet, laumpe aus</field></shadow></value></block></next></block></next></block></statement></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement></block></next></block></next></block></next></block></xml> 
                                          
                                          

                                          Ich habe dieses Skript nun erstellt. Im Log steht dieses:

                                          javascript.0 2017-11-02 18:38:41.174 info script.js.Skripte.Skript1: Test 4 : If abfrage negatief durchlaufen, lampe war an

                                          javascript.0 2017-11-02 18:38:41.172 info script.js.Skripte.Skript1: Test 3 : IF abfragen ergebnis = lampe aus, schalte sie ein

                                          javascript.0 2017-11-02 18:38:41.170 info script.js.Skripte.Skript1: Test 2 : Trigger erkannt

                                          javascript.0 2017-11-02 18:34:08.564 info script.js.Skripte.Skript1: Test 4 : If abfrage negatief durchlaufen, lampe war an

                                          javascript.0 2017-11-02 18:34:08.563 info script.js.Skripte.Skript1: Test 3 : IF abfragen ergebnis = lampe aus, schalte sie ein

                                          javascript.0 2017-11-02 18:34:08.560 info script.js.Skripte.Skript1: Test 2 : Trigger erkannt

                                          Hilft das weiter? Es scheint nun also zu funktionieren.

                                          Lampe geht auch nach der Zeit entsprechend wieder aus. Was mir noch aufgefallen ist; in der Homematic Verknüpfung kann ich einen Helligkeitswert von 0-255 angeben und vorher die Helligkeit ermitteln lassen. Angezeigt wurde mir der Wert 14. Stelle ich nun also den Wert 20 ein und die Helligkeit liegt darunter (aktuell ja 14) lässt der BW die Lampe an gehen.

                                          Da ich das Skript über ioBroker laufen lassen möchte fehlt noch die Angabe der Helligkeit, oder? Denn in den Geräteeinstellung innerhalb Homematic kann ich diese Wert am Gerät nicht angeben. Da wird nur eine Stufe der letzten Messungen (alle 6 Minuten automatisch) angezeigt.

                                          Oder wie ist das mit dem Helligkeitswert?

                                          Gruß

                                          1 Reply Last reply Reply Quote 0
                                          • F
                                            firephaser last edited by

                                            Hallo zusammen,

                                            ich habe mir das Script kopiert und bei mir eingesetzt. Änderungen habe ich bis auf die Lampen und den Bewegungsmelder nicht groß geändert, einzig habe ich 2 Lampen in der If-Abfrage. Trotzdem ist es nun mehrfach vorgekommen das der Bewegungsmelder ausgelöst und der Timer gestartet wurde, obwohl die Lampen vorher schon an waren. Ist die Und-Verknüpfung falsch?

                                            Gruß Micha

                                            var timeout;
                                            
                                            // Schalten Nachts Gartenlicht an nach Bewegung
                                            // Schalte alles wieder aus nach 5 Min
                                            // ----------------------------------
                                            // http://forum.iobroker.net/viewtopic.php?f=8&t=8373&hilit=bewegungsmelder+blockly
                                            // Hier die richtige object ID rein, status des bewegungssensors
                                            // script laeuft bei jeder bewegungs erkennung
                                            on({id: "hm-rpc.0.xxx.1.MOTION"/*Bewegungsmelder-Carport:1.MOTION*/, change: "any", ack: true}, function (obj) {
                                              var value = obj.state.val;
                                              var oldValue = obj.oldState.val;
                                              // Erste abfrage, nur wen die lampe aus ist und richtige zeit dan lampe an
                                              if (getState("hm-rpc.0.xxx.1.STATE").val == false && getState("hm-rpc.0.xxx.3.STATE").val == false && getState("hm-rpc.0.xxx.1.BRIGHTNESS").val < 99) {
                                                // hier den state der lampe rein
                                                console.log('Bewegungsmelder Carport schaltet Licht Garten an');
                                                setState("hm-rpc.0.xxx.1.STATE"/*Licht Autoplatz.STATE*/, true);
                                                setState("hm-rpc.0.xxx.3.STATE"/*Sitzplatz Licht.STATE*/, true);
                                                setState("hm-rpc.0.xxx.1.STATE"/*Kugellampe-Tor:1.STATE*/, true);
                                                setState("hm-rpc.0.xxx.1.STATE"/*Kugellampe-Treppe:1.STATE*/, true);
                                                setState("hm-rpc.0.xxx.1.STATE"/*Außenlicht 1.STATE*/, true);
                                              }
                                              // nach 3 minuten lampen wieder aus
                                              // wen timeout bereits laeuft diesen erst resetten
                                              (function () {if (timeout) {clearTimeout(timeout); timeout = null;}})();
                                              timeout = setTimeout(function () {
                                                // erst abfragen ob die lampe an ist um onnoetige schaltung zu vermeiden
                                                if (getState("hm-rpc.0.xxx.1.STATE").val == true && getState("hm-rpc.0.xxx.3.STATE").val == true) {
                                                  // hier den state der lampe rein
                                                  console.log('Gartenlicht wird ausgeschaltet nach 3 min');
                                                  setState("hm-rpc.0.xxx.1.STATE"/*Licht Autoplatz.STATE*/, false);
                                                  setState("hm-rpc.0.xxxx.3.STATE"/*Sitzplatz Licht.STATE*/, false);
                                                  setState("hm-rpc.0.xxx.1.STATE"/*Kugellampe-Tor:1.STATE*/, false);
                                                  setState("hm-rpc.0.xxx.1.STATE"/*Kugellampe-Treppe:1.STATE*/, false);
                                                  setState("hm-rpc.0.xxx.1.STATE"/*Außenlicht 1.STATE*/, false);
                                                }
                                              }, 180000);
                                            });
                                            

                                            4781_bild_blocky1.png

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            840
                                            Online

                                            32.0k
                                            Users

                                            80.4k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            48
                                            7046
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo