Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blocky - was mache ich falsch?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Blocky - was mache ich falsch?

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

      Den Trigger würde ich auf „aktualisiert“ setzen. Den ersten „falls“-Baustein, der den Strahler prüft, würde ich mit „und“ ergänzen und dort die Astro Funktion hinziehen. Somit fällt der zweite verschachtelte „falls“-Baustein weg. Dann steuerst Du den Strahler mit wahr. Zusätzlich noch einen weiteren Steuer-Baustein, der den Strahler verzögert um 30 Minuten ausschaltet.

      So sparst Du Dir auch den kompletten zweiten Trigger.

      Probier mal und gib gern Rückmeldung.

      Gesendet von iPhone mit Tapatalk

      1 Reply Last reply Reply Quote 0
      • B
        baluderbär last edited by

        Hallo Stefan,

        danke für deinen Input. Jetzt läuft es (Umsetzung siehe Bild). Habe zum Testen die Geräte verändert und Sonnenuntergang und -aufgang vertauscht..

        Mal schauen ob es bei Sonnenuntergang funktioniert.

        Viele Grüße

        Balu
        1525_2.jpg

        1 Reply Last reply Reply Quote 0
        • R
          RappiRN Most Active last edited by

          Das Problem im ersten Bild war, dass der "steuere" Block nicht in der zweiten "falls" Klammer drin war,, deshalb wurde das zweite "falls" nicht beachtet! An der Lösung kannst du ja sehen, das es jede Menge Wege nach Rom gibt! 🙂

          Enrico

          1 Reply Last reply Reply Quote 0
          • B
            baluderbär last edited by

            Kann es sein, dass die Astro-Funktion nur einmal nach Script-Start funktioniert?

            Alle meine Scripte die bei Sonnenuntergang starten sollen, bleiben ohne Funktion.

            Kann das jemand bestätigen oder geht es nur mir so?

            Gruß Balu

            1 Reply Last reply Reply Quote 0
            • R
              RappiRN Most Active last edited by

              Zeig doch mal bitte ein Beispiel.

              Enrico

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

                @baluderbär:

                Kann das jemand bestätigen…. `
                Nö.

                Ein Bild sagt mehr als 1000 Worte 😉

                Grüße

                1 Reply Last reply Reply Quote 0
                • B
                  baluderbär last edited by

                  Hallo Enrico,

                  hier zwei Beispiele (Sonnenuntergang bei mir hier 16:32)

                  Gruß Balu
                  1525_1.jpg
                  1525_2.jpg

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

                    Ist das ein HM Bewegungsmelder?

                    Die trigger ich anders.

                    Pack doch mal einen Debug-Baustein in den Trigger.

                    Dann kannst Du im LOG sehen ob der überhaupt startet.

                    Dann schau doch mal ob Deine Astrozeiten stimmen.
                    147_beispiel.png

                    Export:

                    ! <xml xmlns="http://www.w3.org/1999/xhtml"><block type="debug" id="M-vD.JjX#wC?S3qGe/BB" x="-687" y="-12"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="+84Za%BiKQHPNHbyG(N^"><field name="TEXT">test</field></shadow> <block type="convert_from_date" id="0,:_rdSmLn9IQHV6?i2_"><mutation format="false" language="false"></mutation> <field name="OPTION">hh:mm</field> <value name="VALUE"><block type="time_astro" id="Ac`+=HqFPWPrrICLXt7f"><field name="TYPE">sunset</field> <field name="OFFSET">0</field></block></value></block></value> <next><block type="debug" id="]V7r;LFZBPjks8Pj:xs+"><field name="Severity">log</field> <value name="TEXT"><shadow type="text" id="+84Za%BiKQHPNHbyG(N^"><field name="TEXT">test</field></shadow> <block type="convert_from_date" id="-uXXdCJ*@o|n[Oa,X1-9"><mutation format="false" language="false"></mutation> <field name="OPTION">hh:mm</field> <value name="VALUE"><block type="time_astro" id="T_^j1b0hI*c[_eG%y-P+"><field name="TYPE">sunrise</field> <field name="OFFSET">0</field></block></value></block></value></block></next></block></xml> !

                    Und "STATE" ist meist wahr/unwahr true/false.

                    Grüße

                    1 Reply Last reply Reply Quote 0
                    • B
                      baluderbär last edited by

                      Hallo,

                      hab es mal abgeändert (mit Debug):

                      Ergebnis:

                      17:38:57.518	[info]	javascript.0 Stop script script.js.common.Licht_AZ_Tuer
                      17:38:57.535	[info]	javascript.0 Start javascript script.js.common.Licht_AZ_Tuer
                      17:38:57.535	[info]	javascript.0 script.js.common.Licht_AZ_Tuer: false
                      17:38:57.535	[info]	javascript.0 script.js.common.Licht_AZ_Tuer: Tue Nov 28 2017 07:54:52 GMT+0100 (Mitteleuropäische Zeit)
                      17:38:57.535	[info]	javascript.0 script.js.common.Licht_AZ_Tuer: Tue Nov 28 2017 16:34:07 GMT+0100 (Mitteleuropäische Zeit)
                      17:38:57.535	[info]	javascript.0 script.js.common.Licht_AZ_Tuer: registered 0 subscriptions and 0 schedules
                      

                      Astrozeiten sollten also stimmen. Und bzgl. dem Bewegungsmelder: ja, es ist einer von HM.

                      Gruß Balu
                      1525_3.jpg

                      1 Reply Last reply Reply Quote 0
                      • B
                        baluderbär last edited by

                        Hab jetzt nur mal die Astrozeiten ausgewertet. Es muss wohl an der ersten Abfrage liegen. Die aktuelle Zeit liegt dementsprechend nicht dazwischen. Nur wieso?

                        Sonnenuntergang, Sonnenaufgang und aktuelle Zeit passen.

                        • 17:50:26.215 [info] javascript.0 Stop script script.js.common.Licht_AZ_Tuer_Test
                        17:50:26.220 [info] javascript.0 Start javascript script.js.common.Licht_AZ_Tuer_Test
                        
                        17:50:26.220 [info] javascript.0 script.js.common.Licht_AZ_Tuer_Test: false
                        
                        17:50:26.220 [info] javascript.0 script.js.common.Licht_AZ_Tuer_Test: 17:50:26
                        
                        17:50:26.220 [info] javascript.0 script.js.common.Licht_AZ_Tuer_Test: Tue Nov 28 2017 07:54:52 GMT+0100 (Mitteleuropäische Zeit)
                        
                        17:50:26.220 [info] javascript.0 script.js.common.Licht_AZ_Tuer_Test: Tue Nov 28 2017 16:34:07 GMT+0100 (Mitteleuropäische Zeit)
                        
                        17:50:26.220 [info] javascript.0 script.js.common.Licht_AZ_Tuer_Test: registered 0 subscriptions and 0 schedules 
                        

                        Gruß Balu
                        1525_4.jpg

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

                          Das sieht ja schon mal gut aus.

                          Die Ausgabe von "false" ist Dir auch klar?

                          Das ist das Ergebnis von Deiner Bedingung "Wert von xyz =0 <u>UND</u> Zeit zwischen …....."

                          Bei einer UND Bedingung müssen BEIDE Aussagen WAHR sein.

                          Da Deine Lampe wohl aus war (LEVEL=0) stimmt die zweite Bedingung nicht.

                          Und da haben wir's.

                          Ist die aktuelle Zeit zwischen Sonnenuntergang und Sonnenaufgang? -->Ergibt immer FALSE

                          Zeitbereiche die über den Tageswechsel gehen muss man anders abfragen.

                          Liegt aktuelle Zeit zwischen Sonnenuntergang und 23:59

                          <u>ODER</u>

                          Liegt die aktuelle Zeit zwischen 00:00 und Sonnenaufgang

                          Grüße

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

                            Mit Zeiten arbeiten ist recht kompliziert.

                            Falls Du mehrere Sachen mit Sonnenaufgang und -untergang machen möchtest, schau Dir mal dieses Blockly an.

                            http://forum.iobroker.net/viewtopic.php … tro#p48209

                            Grüße

                            1 Reply Last reply Reply Quote 0
                            • B
                              baluderbär last edited by

                              Habe es jetzt so umgesetzt und funktioniert erst einmal. Sollte dann hoffentlich auch nach 00:00 Uhr gehen 🙂

                              Danke für deine Hilfe.

                              Eine andere Frage: wie kann ich Werte in einer Variablen speichern? Im konkreten Fall den Wert von "Sonnenmittag". Am liebsten wäre mir, wenn der Wert in einen Datenpunkt geschrieben werden würde. So wie ich es versuche funktioniert es nicht. Muss ich zuerst eine Variable anlegen oder geschieht das automatisch?

                              Oder kann ich die Werte aus dem Skript

                              // Astrozeiten für heute - V1.0
                              
                              log("=====================");
                              log("Astro Werte für heute");
                              log("=====================");
                              //-----------------------------------------------------------------
                              var nightEnd = getAstroDate("nightEnd");
                              log(" (0) nightEnd (Ende der Nacht)........................: " + nightEnd.toLocaleTimeString());
                              var nauticalDawn = getAstroDate("nauticalDawn");
                              log(" (1) nauticalDawn (naut. Dämmerung Morgens)...........: " + nauticalDawn.toLocaleTimeString());
                              var dawn = getAstroDate("dawn");
                              log(" (2) dawn (Dämmerung Morgens).........................: " + dawn.toLocaleTimeString());
                              var sunrise = getAstroDate("sunrise");
                              log(" (3) sunrise (Sonnenaufgang)..........................: " + sunrise.toLocaleTimeString());
                              var sunriseEnd = getAstroDate("sunriseEnd");
                              log(" (4) sunriseEnd (Ende des Sonnenaufgangs).............: " + sunriseEnd.toLocaleTimeString());
                              var goldenHourEnd = getAstroDate("goldenHourEnd");
                              log(" (5) goldenHourEnd (Ende der Golden Hour VM)..........: " + goldenHourEnd.toLocaleTimeString());
                              var solarNoon = getAstroDate("solarNoon");
                              log(" (6) solarNoon (Mittag)...............................: " + solarNoon.toLocaleTimeString());
                              var goldenHour = getAstroDate("goldenHour");
                              log(" (7) goldenHour (Start der Golden Hour NM)............: " + goldenHour.toLocaleTimeString());
                              var sunsetStart = getAstroDate("sunsetStart");
                              log(" (8) sunsetStart (Start des Sonnenuntergangs).........: " + sunsetStart.toLocaleTimeString());
                              var sunset = getAstroDate("sunset");
                              log(" (9) sunset (Sonnenuntergang).........................: " + sunset.toLocaleTimeString());
                              var dusk = getAstroDate("dusk");
                              log("(10) dusk (Dämmerung Abends)..........................: " + dusk.toLocaleTimeString());
                              var nauticalDusk = getAstroDate("nauticalDusk");
                              log("(11) nauticalDusk (naut. Dämmerung Abends)............: " + nauticalDusk.toLocaleTimeString());
                              var night = getAstroDate("night");
                              log("(12) night (Start der Nacht)..........................: " + night.toLocaleTimeString());
                              var nadir = getAstroDate("nadir");
                              log("(13) nadir (Mitternacht)..............................: " + nadir.toLocaleTimeString());
                              log("=====================");
                              var today = new Date();
                              var tomorrow = today.setDate(today.getDate()+1);
                              var tomorrowNight = getAstroDate("night", tomorrow);
                              log("Night starts tomorrow at " + tomorrowNight.toLocaleTimeString());
                              

                              automatisch in Datenpunkte schreiben? Im Log zeigt er mir folgende Werte an:

                              18:35:33.488	[info]	javascript.0 Stop script script.js.common.Astrozeiten
                              18:35:33.495	[info]	javascript.0 Start javascript script.js.common.Astrozeiten
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: =====================
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: Astro Werte für heute
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: =====================
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: (0) nightEnd (Ende der Nacht)........................: 06:01:26
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: (1) nauticalDawn (naut. Dämmerung Morgens)...........: 06:39:20
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: (2) dawn (Dämmerung Morgens).........................: 07:18:50
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: (3) sunrise (Sonnenaufgang)..........................: 07:54:52
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: (4) sunriseEnd (Ende des Sonnenaufgangs).............: 07:58:43
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: (5) goldenHourEnd (Ende der Golden Hour VM)..........: 08:47:20
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: (6) solarNoon (Mittag)...............................: 12:14:29
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: (7) goldenHour (Start der Golden Hour NM)............: 15:41:39
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: (8) sunsetStart (Start des Sonnenuntergangs).........: 16:30:16
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: (9) sunset (Sonnenuntergang).........................: 16:34:07
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: (10) dusk (Dämmerung Abends)..........................: 17:10:09
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: (11) nauticalDusk (naut. Dämmerung Abends)............: 17:49:39
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: (12) night (Start der Nacht)..........................: 18:27:33
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: (13) nadir (Mitternacht)..............................: 00:14:29
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: =====================
                              18:35:33.496	[info]	javascript.0 script.js.common.Astrozeiten: Night starts tomorrow at 18:27:08
                              

                              Gruß Balu
                              1525_6.jpg
                              1525_5.jpg

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

                                @baluderbär:

                                Eine andere Frage: wie kann ich Werte in einer Variablen speichern? `

                                Mit Blockly globale Variablen (State) geht mit dem Baustein "Zustand erzeugen".

                                Die findest Du dann unter Objekte/Javascrip.0.

                                Ich habe Dir mal ein Beispiel gemacht.

                                Script 1x Starten und wieder beenden.

                                Damit werden die Variablen angelegt.
                                147_beispiel.png

                                Export:

                                ! <xml xmlns="http://www.w3.org/1999/xhtml"><block type="create" id="AV^rbElg]V*Y7a6{.a]L" x="63" y="113"><field name="NAME">Sonnenaufgang</field> <statement name="STATEMENT"><block type="create" id="L`pgki4hz7qYrBas|sg5"><field name="NAME">Sonnenuntergang</field></block></statement></block> <block type="comment" id="zpl3%ouxz+|Kzu/{{QVW" x="83" y="234"><field name="COMMENT">Jeden Tag um 00:01 Uhr</field> <next><block type="schedule" id="u,*D2BbzoUO6VN,jtjVN"><field name="SCHEDULE">1 0 * * *</field> <statement name="STATEMENT"><block type="control" id="K/koHmN?NeusI_YfMw]8"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Sonnenaufgang</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="time_astro" id="X?^;i?qe+k|A/B.Eeo!E"><field name="TYPE">sunrise</field> <field name="OFFSET">0</field></block></value> <next><block type="control" id="B)]VVSxyMSuzRP0|NQej"><mutation delay_input="false"></mutation> <field name="OID">javascript.0.Sonnenuntergang</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"><block type="time_astro" id="e88~:IM:Isfm)QVjN#d#"><field name="TYPE">sunset</field> <field name="OFFSET">0</field></block></value></block></next></block></statement></block></next></block></xml> !

                                Das Script startet immer um 00:01 Uhr und füllt die Variablen mit den aktuellen Astrozeiten.

                                Kannst Du beliebig erweitern.

                                Grüße

                                1 Reply Last reply Reply Quote 0
                                • B
                                  baluderbär last edited by

                                  Danke, echt klasse wie einem geholfen wird, danke rantanplan. Werde ich später mal umsetzen.

                                  Gruß Balu

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    RappiRN Most Active last edited by

                                    In deinem Post mit den vielen Ausschnitten ist bei Bild 5 ein Fehler zu sehen.

                                    Da ist der ausführende Teil unter der "falls"-Bedingung, nicht in der "falls"-Bedingung. Und dann noch, ist da ein Dimmer an den LED-Spots? Wenn nicht muss da wahr oder eben für aus false rein. Oder soll das für die Verzögerung sein??

                                    Enrico

                                    Edit: Ok, ich habe grad gesehen, dass da ja LEVEL steht, also Dimmer! :oops: Aber soll das Licht sofort beim Schließen der Tür wieder ausgehen?

                                    1 Reply Last reply Reply Quote 0
                                    • B
                                      baluderbär last edited by

                                      Danke für den Hinweis, werde es ändern.

                                      An den LED-Spots hängt ein Dimmer, richtig. Und die Spots sollen nur auf 30% hochfahren. Dass es gleich wieder ausgehen soll ist richtig (Tür schließen - Licht aus)

                                      Gruß Balu

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

                                        Also ohne näher zu schauen, muss das erste steuere oben in die zange geschoben werden, nicht darunter

                                        Gesendet von meinem F5121 mit Tapatalk

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

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        844
                                        Online

                                        31.9k
                                        Users

                                        80.2k
                                        Topics

                                        1.3m
                                        Posts

                                        5
                                        19
                                        1863
                                        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