Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Blockly Script

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Blockly Script

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

      Hallo zusammen,

      ich habe ein Problem mein Blockly Script so anzupassen, dass die Lichtsteuerung auch über einen zweiten Bewegungsmelder angesteuert werden kann.

      Im ersten Screenshot habe ich das erste Blockly Script gezeigt. Es funktioniert auch wie gewollt. Das Licht wird bei Bewegungserkennung eingeschaltet und wenn keine Bewegung erkannt wird, wird das Licht wieder ausgeschaltet.

      2023-01-18 07_13_23-Window.png

      Jetzt möchte ich einen zweiten Bewegungsmelder integrieren. Wenn Bewegungsmelder 1 oder 2 eine Bewegung erkennen, soll das Licht eingeschaltet werden. Nur wenn beide Bewegungsmelder keine Bewegung mehr erkannt haben, soll dass Licht wieder ausgeschaltet werden.

      2023-01-18 07_12_32-Window.png

      Könnt ihr mir helfen, das Script zu korrigieren?

      VG

      Codierknecht Homoran paul53 3 Replies Last reply Reply Quote 0
      • Codierknecht
        Codierknecht Developer Most Active @Takahara last edited by Codierknecht

        @takahara
        811ba657-bae7-4ba3-acc5-4e6a22c4bfc8-image.png
        Soll da tatsächlich nur ausgeschaltet werden, wenn die Helligkeit > 50 ist?
        Ich würde da statt und ein oder einsetzen.
        Die Prüfung auf on/off ist zwar semantisch korrekt, aber ich würde da ein = einseten - liest sich einfach besser.

        crunchip 1 Reply Last reply Reply Quote 0
        • crunchip
          crunchip Forum Testing Most Active @Codierknecht last edited by

          @codierknecht ich verstehe den ganzen unteren Teil nicht
          19ff3716-073e-4582-94a5-49f6bb907d41-image.png

          Codierknecht 1 Reply Last reply Reply Quote 0
          • Codierknecht
            Codierknecht Developer Most Active @crunchip last edited by

            @crunchip sagte in Blockly Script:

            ich verstehe den ganzen unteren Teil nicht

            Welchen Teil davon?

            Ich habe das so verstanden:

            In on/off hat er sich gemerkt, ob das Licht per BWM eingeschaltet wurde.
            Der Trigger ist einer seiner BWM.
            Wenn dann entweder die Helligkeit > 50 ist oder keine Bewegung, soll das Licht ausgehen. Aber nur, wenn über den BWM eingeschaltet.

            Natürlich könnte man das auch noch deutlich besser formulieren.
            Aus dem "sonst falls" würde ich einfach ein "sonst" machen. Die Bedingung wurde ja bereits oben abgefragt.
            Soll heißen: Im "falls" wird geprüft, ob Helligkeit <= 50. Ist sie > 50, reicht ein einfachen "sonst".
            Etwas seltsam ist das "on/off und wahr". Liest sich komisch, sollte aber funktionieren.

            Ich würde das Ganze allerdings grundsätzlich anders machen.
            Bei mir gäbe es einen eigenen Trigger auf die Helligkeit. Wenn die über 50 geht, wird ausgeschaltet - egal was sonst so passiert.

            crunchip Asgothian 2 Replies Last reply Reply Quote 0
            • crunchip
              crunchip Forum Testing Most Active @Codierknecht last edited by crunchip

              @codierknecht glaub jetzt hab ichs verstanden, das obere sonst, schaltet das Licht aus wenn keine Bewegung
              das untere sonst falls, ist dafür da, falls das Licht(ich nehme milight-smart-light an) anderweitig angeschaltet wurde, dann automatisch ausgeht, falls zu hell

              @codierknecht sagte in Blockly Script:

              "on/off und wahr"

              milight-smart-light
              a468e1b4-ea15-4643-b925-896babf9dc76-image.png

              achso das und, hmm hab ich so noch nicht probiert

              Codierknecht 1 Reply Last reply Reply Quote 0
              • Asgothian
                Asgothian Developer @Codierknecht last edited by

                @codierknecht

                Für mich ist das relativ klar. Der untere Zweig (Helligkeit > 50) dient dazu das Licht Auszuschalten wenn es hell wird. Ich gehe davon aus das Dach_helligkeitsensor:1.LOWEST_ILLUMINATION auch dann < 50 ist wenn das Licht an ist. Das Abschalten bei Ende der Bewegung ist schon im Falls Helligkeit <= 50 Zweig enthalten.

                Man hätte das SonstFalls also auch auf eine Abfrage von On/Off einkürzen können - beide Alternativen sind wenn diese Bedingung kommt sowieso wahr.

                @Takahara
                Zum Thema arbeiten mit 2 BWM: Du brauchst eine Variable MinBwmStatus. Diese setzt du direkt als erstes im Trigger auf Wert von (BWM1) oder Wert von (BWM2)

                In der Folge kannst du dann in deinem Falls Wert von BWM1 umstellen auf Falls MinBwmStatus

                A.

                paul53 1 Reply Last reply Reply Quote 0
                • Codierknecht
                  Codierknecht Developer Most Active @crunchip last edited by

                  @crunchip sagte in Blockly Script:

                  achso das und, hmm hab ich so noch nicht probiert

                  Macht man auch eher selten.
                  Semantisch ist das durchaus korrekt. Der "Wert von on/off" ist ja dann true.
                  Und ein true AND true ergibt wieder true. Besser lesen ließe sich das bei einem Vergleich aber mit =.

                  1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @Takahara last edited by

                    @takahara sagte in Blockly Script:

                    Könnt ihr mir helfen, das Script zu korrigieren?

                    könntest du bitte den Titel korrigieren?
                    So weiß niemand was du willst.

                    1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @Asgothian last edited by paul53

                      @asgothian sagte: Der untere Zweig (Helligkeit > 50) dient dazu das Licht Auszuschalten wenn es hell wird.

                      Das funktioniert nur, wenn auch auf Helligkeit getriggert wird.

                      EDIT: Das Ausschalten, wenn es heller wird, sollte nicht nötig sein, da BWM das Licht ohnehin nur für eine begrenzte Zeit einschalten.

                      1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @Takahara last edited by

                        @takahara sagte: helfen, das Script zu korrigieren?

                        Was funktioniert nicht? Was ist "set preset"?

                        Eine weniger Ressourcen verbrauchende Version:

                        Bild_2023-01-18_111900633.png

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        863
                        Online

                        32.0k
                        Users

                        80.5k
                        Topics

                        1.3m
                        Posts

                        6
                        10
                        337
                        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