Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Blockly] Lampe einschalten, wenn PC zwischen Sonnenuntergang und Sonnenaufgang eingeschaltet ist

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    690

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    5.8k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

[Blockly] Lampe einschalten, wenn PC zwischen Sonnenuntergang und Sonnenaufgang eingeschaltet ist

Scheduled Pinned Locked Moved Skripten / Logik
73 Posts 9 Posters 6.3k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    Modjo
    wrote on last edited by
    #1

    Hallo zusammen,

    ich stehe total auf dem Schlauch und benötige eure Hilfe.

    Ich möchte folgendes realisieren:

    Falls (if) ping.0.ioBroker.192_168_0_2 = true & Uhrzeit zwischen 18-06 Uhr

    Mache broadlink.0.learnedSignals.CODE_b21d34000c23230c230c230c0c23230c0d22230c0c23230c0c23230c230c230c0c230c230c230c220c230d22230c230c0c230c230c00016200000000 = button (Funksteckdose mit LED Kugel dran)

    Sonst (else) ping.0.ioBroker.192_168_0_2 = false & broadlink.0.learnedSignals.CODE_b21d34000c23230c230c230c0c23230c0d22230c0c23230c0c23230c230c230c0c230c230c230c220c230d22230c230c0c230c230c00016200000000 = button

    Mache broadlink.0.learnedSignals.CODE_b21d34000c23230c230c230c0c23230c0d22230c0c23230c0c23230c230c230c0c230c230c230c220c230d22230c230c0c230c230c00016200000000 = button

    Nochmal in Worten:

    Wenn ich den PC einschalte & es zwischen 18 & 6 Uhr morgens ist, dann schalte LED Kugel ein. Wenn der PC ausgeschaltet wird, schalte LED Kugel aus (auch nur zwischen 18-6 Uhr)

    Vielen Dank vorab für eure Hilfe.

    VG

    Modjo

    1 Reply Last reply
    0
    • MatzebhvM Offline
      MatzebhvM Offline
      Matzebhv
      wrote on last edited by
      #2

      Moin,

      hast du das schon mal mit Blockly versucht? Ist damit eigentlich relativ einfach.

      Gruß

      Matze

      1 Reply Last reply
      0
      • M Offline
        M Offline
        Modjo
        wrote on last edited by
        #3

        Ich glaube es gelöst zu haben. Ich habe jetzt nicht mit Uhrzeiten, sondern mit "Abenddämmerung" und "Sonnenaufgang" gearbeitet.
        4811_unbenannt.jpg

        1 Reply Last reply
        0
        • M Offline
          M Offline
          Modjo
          wrote on last edited by
          #4

          Hallo zusammen,

          irgend etwas stimmt da noch nicht. Die Funksteckdose schaltet die Lampe zwar an, sobald der Rechner über Ping erreichbar ist & auch wieder aus, sobald er aus ist und nicht mehr per Ping erreichbar ist, aber halt immer.

          Bedeutet, dass er gar nicht auf Abenddämmerung und Sonnenaufgang reagiert.

          Was mache ich falsch?

          Gruß

          1 Reply Last reply
          0
          • MatzebhvM Offline
            MatzebhvM Offline
            Matzebhv
            wrote on last edited by
            #5

            Moin,

            erstmal zu den Zeiten: die Astrozeiten sind ein tägliches, einmaliges Ereignis. Das kannst du so nicht verwenden. Dann triggerst du dein Script auf PC aus ganz ohne Zeit.

            Mach mal so:

            3514_blockly.png

            Musst natürlich die Datenpunkte für PC und Lampe einbauen.

            Matze

            1 Reply Last reply
            0
            • M Offline
              M Offline
              Modjo
              wrote on last edited by
              #6

              Jetzt müsste es passen. Ich habe die Uhrzeiten noch einmal angepasst. Doof nur, dass ich quasi im Winter und Sommer die Zeiten manuell ändern muss, da es unterschiedlich lange hell ist.

              Vielen Dank Matzebhv!

              Gruß
              4811_unbenannt.jpg

              1 Reply Last reply
              0
              • MatzebhvM Offline
                MatzebhvM Offline
                Matzebhv
                wrote on last edited by
                #7

                Hmm,

                ich bin mir grade nicht sicher. Probiere das doch einfach mal.

                3514_blockly.png

                Matze

                EDIT: Für die Astrofunktion muss im Admin dein Wohnort konfiguriert sein.

                Mit diesem Script kannst du dir die Astrodaten für den Tag anzeigen lassen.

                ! ````
                // Astrozeiten für heute - V1.0
                ! log("=====================");
                log("Astro Werte für heute");
                log("=====================");
                //----------------------------------------------------------------- Werte vom 3.12.2015
                var nightEnd = getAstroDate("nightEnd");
                log(" (0) nightEnd (Ende der Nacht)........................: " + nightEnd.toLocaleTimeString());      // 05:37
                var nauticalDawn = getAstroDate("nauticalDawn");
                log(" (1) nauticalDawn (naut. Dämmerung Morgens)...........: " + nauticalDawn.toLocaleTimeString());  // 06:13
                var dawn = getAstroDate("dawn");
                log(" (2) dawn (Dämmerung Morgens).........................: " + dawn.toLocaleTimeString());          // 06:52
                var sunrise = getAstroDate("sunrise");
                log(" (3) sunrise (Sonnenaufgang)..........................: " + sunrise.toLocaleTimeString());       // 07:26
                var sunriseEnd = getAstroDate("sunriseEnd");
                log(" (4) sunriseEnd (Ende des Sonnenaufgangs).............: " + sunriseEnd.toLocaleTimeString());    // 07:26
                var goldenHourEnd = getAstroDate("goldenHourEnd");
                log(" (5) goldenHourEnd (Ende der Golden Hour VM)..........: " + goldenHourEnd.toLocaleTimeString()); // 08:17
                var solarNoon = getAstroDate("solarNoon");
                log(" (6) solarNoon (Mittag)...............................: " + solarNoon.toLocaleTimeString());     // 11:49
                var goldenHour = getAstroDate("goldenHour");
                log(" (7) goldenHour (Start der Golden Hour NM)............: " + goldenHour.toLocaleTimeString());    // 15:22
                var sunsetStart = getAstroDate("sunsetStart");
                log(" (8) sunsetStart (Start des Sonnenuntergangs).........: " + sunsetStart.toLocaleTimeString());   // 16:08
                var sunset = getAstroDate("sunset");
                log(" (9) sunset (Sonnenuntergang).........................: " + sunset.toLocaleTimeString());        // 16:12
                var dusk = getAstroDate("dusk");
                log("(10) dusk (Dämmerung Abends)..........................: " + dusk.toLocaleTimeString());          // 16:47
                var nauticalDusk = getAstroDate("nauticalDusk");
                log("(11) nauticalDusk (naut. Dämmerung Abends)............: " + nauticalDusk.toLocaleTimeString());  // 17:25
                var night = getAstroDate("night");
                log("(12) night (Start der Nacht)..........................: " + night.toLocaleTimeString());         // 18:02
                var nadir = getAstroDate("nadir");
                log("(13) nadir (Mitternacht)..............................: " + nadir.toLocaleTimeString());         // 23:49
                log("=====================");
                var today = new Date();
                var tomorrow = today.setDate(today.getDate()+1);
                var tomorrowNight = getAstroDate("night", tomorrow);
                log("Night starts tomorrow at " + tomorrowNight.toLocaleTimeString());

                1 Reply Last reply
                0
                • M Offline
                  M Offline
                  Modjo
                  wrote on last edited by
                  #8

                  @Matzebhv:

                  Hmm,

                  ich bin mir grade nicht sicher. Probiere das doch einfach mal.

                  blockly.PNG

                  Matze

                  EDIT: Für die Astrofunktion muss im Admin dein Wohnort konfiguriert sein.

                  Mit diesem Script kannst du dir die Astrodaten für den Tag anzeigen lassen.

                  ! // Astrozeiten für heute - V1.0 ! log("====================="); log("Astro Werte für heute"); log("====================="); //----------------------------------------------------------------- Werte vom 3.12.2015 var nightEnd = getAstroDate("nightEnd"); log(" (0) nightEnd (Ende der Nacht)........................: " + nightEnd.toLocaleTimeString());      // 05:37 var nauticalDawn = getAstroDate("nauticalDawn"); log(" (1) nauticalDawn (naut. Dämmerung Morgens)...........: " + nauticalDawn.toLocaleTimeString());  // 06:13 var dawn = getAstroDate("dawn"); log(" (2) dawn (Dämmerung Morgens).........................: " + dawn.toLocaleTimeString());          // 06:52 var sunrise = getAstroDate("sunrise"); log(" (3) sunrise (Sonnenaufgang)..........................: " + sunrise.toLocaleTimeString());       // 07:26 var sunriseEnd = getAstroDate("sunriseEnd"); log(" (4) sunriseEnd (Ende des Sonnenaufgangs).............: " + sunriseEnd.toLocaleTimeString());    // 07:26 var goldenHourEnd = getAstroDate("goldenHourEnd"); log(" (5) goldenHourEnd (Ende der Golden Hour VM)..........: " + goldenHourEnd.toLocaleTimeString()); // 08:17 var solarNoon = getAstroDate("solarNoon"); log(" (6) solarNoon (Mittag)...............................: " + solarNoon.toLocaleTimeString());     // 11:49 var goldenHour = getAstroDate("goldenHour"); log(" (7) goldenHour (Start der Golden Hour NM)............: " + goldenHour.toLocaleTimeString());    // 15:22 var sunsetStart = getAstroDate("sunsetStart"); log(" (8) sunsetStart (Start des Sonnenuntergangs).........: " + sunsetStart.toLocaleTimeString());   // 16:08 var sunset = getAstroDate("sunset"); log(" (9) sunset (Sonnenuntergang).........................: " + sunset.toLocaleTimeString());        // 16:12 var dusk = getAstroDate("dusk"); log("(10) dusk (Dämmerung Abends)..........................: " + dusk.toLocaleTimeString());          // 16:47 var nauticalDusk = getAstroDate("nauticalDusk"); log("(11) nauticalDusk (naut. Dämmerung Abends)............: " + nauticalDusk.toLocaleTimeString());  // 17:25 var night = getAstroDate("night"); log("(12) night (Start der Nacht)..........................: " + night.toLocaleTimeString());         // 18:02 var nadir = getAstroDate("nadir"); log("(13) nadir (Mitternacht)..............................: " + nadir.toLocaleTimeString());         // 23:49 log("====================="); var today = new Date(); var tomorrow = today.setDate(today.getDate()+1); var tomorrowNight = getAstroDate("night", tomorrow); log("Night starts tomorrow at " + tomorrowNight.toLocaleTimeString()); `

                  Hey, vielen Dank für die Hilfe,

                  ich werde es wie folgt probieren:

                  VG
                  4811_unbenannt.jpg

                  1 Reply Last reply
                  0
                  • paul53P Offline
                    paul53P Offline
                    paul53
                    wrote on last edited by
                    #9

                    Da die "Aktuelle Zeit Astro" nicht nur die Uhrzeit, sondern auch das heutige Datum enthält, muss die "Von-Zeit" vor der "Bis-Zeit" liegen. Damit man trotzdem auf "dunkel" prüfen kann, gibt es "nicht zwischen". Etwa so:

                    493_ping_nachts.jpg

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    1 Reply Last reply
                    0
                    • M Offline
                      M Offline
                      Modjo
                      wrote on last edited by
                      #10

                      @paul53:

                      Da die "Aktuelle Zeit Astro" nicht nur die Uhrzeit, sondern auch das heutige Datum enthält, muss die "Von-Zeit" vor der "Bis-Zeit" liegen. Damit man trotzdem auf "dunkel" prüfen kann, gibt es "nicht zwischen". Etwa so:

                      Ping_nachts.JPG `

                      Hallo paul53,

                      jetzt habe ich einen Knoten im Kopf, hoffe aber, dass ich dich richtig verstanden habe.

                      Also nehmen wir mal folgendes Szenario an:

                      ****__Sonnenaufgang-Ende: 01.01.2018 06:00

                      Sonnenuntergang-Anfang 01.01.2018 20:00

                      Wenn: PC Wahr & Zeit nicht zwischen 01.01.2018 06:00 (Sonnenaufgang-Ende) und 01.01.2018 20:00 (Sonnenuntergang) (20:01-05:59)

                      Mache: Büro Kugel ein Wahr

                      Sonst Falls:

                      Wenn: PC Wahr & Zeit zwischen 01.01.2018 06:00 (Sonnenaufgang-Ende) und 01.01.2018 20:00 (Sonnenuntergang-Anfang) (06:00-20:00)

                      Mache: Büro Kugel aus Wahr

                      Sonst Falls:

                      Wenn: PC Unwahr

                      Mache: Büro Kugel aus Wahr__****

                      <u>ACHTUNG: Die Werte entsprechen nicht der Realität zur Jahreszeit, habe es nur zur Vereinfachung so gesetzt.</u>

                      Habe ich das richtig interpretiert?

                      Dann müsste es so aussehen:
                      4811_unbenannt.jpg

                      1 Reply Last reply
                      0
                      • paul53P Offline
                        paul53P Offline
                        paul53
                        wrote on last edited by
                        #11

                        Ein einfaches "sonst" zum Ausschalten der Kugel (s. mein Beispiel) macht das ganauso.

                        Anstelle "Wert von Objekt ID PC" kann man die Skriptvariable "value" testen, da sie bereits den Wert des Ping-Datenpunktes enthält.

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        1 Reply Last reply
                        0
                        • M Offline
                          M Offline
                          Modjo
                          wrote on last edited by
                          #12

                          @paul53:

                          Ein einfaches "sonst" zum Ausschalten der Kugel (s. mein Beispiel) macht das ganauso.

                          Anstelle "Wert von Objekt ID PC" kann man die Skriptvariable "value" testen, da sie bereits den Wert des Ping-Datenpunktes enthält. `
                          Also das "value" mag er nicht so gerne, also belasse ich bei "Wert von Objekt ID PC".

                          Nun sieht es wie folgt aus, was ich testen werde.

                          Vielen Dank für die Hilfe.

                          Gruß
                          4811_unbenannt.jpg

                          1 Reply Last reply
                          0
                          • M Offline
                            M Offline
                            Modjo
                            wrote on last edited by
                            #13

                            Leider funktioniert das irgendwie nicht. Tagsüber schaltet er das Licht auch an, sobald der Rechner per Ping erreichbar ist, als ob die "und" Bedinungung gar nicht vorhanden wäre.

                            Hat Jemand noch eine Idee?

                            VG

                            Modjo

                            1 Reply Last reply
                            0
                            • HomoranH Do not disturb
                              HomoranH Do not disturb
                              Homoran
                              Global Moderator Administrators
                              wrote on last edited by
                              #14

                              Nicht dass hier wieder der Tagesübergang probleme macht.

                              Dann musst du die Logik so umbauen, dass du in der Zeit keinen Tagesübergang hast.

                              Gruß

                              Rainer

                              kein Support per PN! - Fragen im Forum stellen -
                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                              Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton im Header. Danke!
                              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                              1 Reply Last reply
                              0
                              • M Offline
                                M Offline
                                mikiline
                                wrote on last edited by
                                #15

                                wahrscheinlich liegt es an UTC und aktueller Zeit vor Ort….

                                Bitte mal nur mit Debug Output die Zeiten ausgeben lassen. Dann findest den Fehler ganz bestimmt
                                2678_zeit.png

                                1 Reply Last reply
                                0
                                • rantanplanR Offline
                                  rantanplanR Offline
                                  rantanplan
                                  wrote on last edited by
                                  #16

                                  @Homoran:

                                  Nicht dass hier wieder der Tagesübergang probleme macht. `
                                  Wahrscheinlich.

                                  Der Tageswechsel muss berücksichtigt werden.
                                  147_beispiel.png

                                  Grüße

                                  [EDIT] Warum können die Leute im Betreff nicht Blockly erwähnen, wenn es um Blockly geht? :roll:

                                  Rantanplan

                                  CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                  1 Reply Last reply
                                  0
                                  • M Offline
                                    M Offline
                                    mikiline
                                    wrote on last edited by
                                    #17

                                    Hmmmm…... es gibt an einem Tag nur einen Sonnenaufgang und einen Sonnenuntergang.

                                    Versteht nicht ganz wieso man den Tageswechsel noch gesondert berücksichtigen muss......

                                    Ansonsten ist ja z.B 8 Uhr morgens der Aufgang und 18 Uhr der Untergang. Also wie man es dreht und wendet sollten da nur die Uhrzeiten berücksichtigt werden und nicht das Datum?

                                    Steh ich da auf dem Schlauch?

                                    1 Reply Last reply
                                    0
                                    • M Offline
                                      M Offline
                                      Modjo
                                      wrote on last edited by
                                      #18

                                      @Homoran:

                                      Nicht dass hier wieder der Tagesübergang probleme macht.

                                      Dann musst du die Logik so umbauen, dass du in der Zeit keinen Tagesübergang hast.

                                      Gruß

                                      Rainer `

                                      Hallo Rainer,

                                      leider verstehe ich nur Bahnhof :-D

                                      @mikiline:

                                      Hmmmm…... es gibt an einem Tag nur einen Sonnenaufgang und einen Sonnenuntergang.

                                      Versteht nicht ganz wieso man den Tageswechsel noch gesondert berücksichtigen muss......

                                      Ansonsten ist ja z.B 8 Uhr morgens der Aufgang und 18 Uhr der Untergang. Also wie man es dreht und wendet sollten da nur die Uhrzeiten berücksichtigt werden und nicht das Datum?

                                      Steh ich da auf dem Schlauch? `

                                      Sieht für mich ok aus:
                                      4811_unbenannt.jpg

                                      1 Reply Last reply
                                      0
                                      • rantanplanR Offline
                                        rantanplanR Offline
                                        rantanplan
                                        wrote on last edited by
                                        #19

                                        @Modjo:

                                        leider verstehe ich nur Bahnhof :-D `
                                        Obwohl ich nur Quereinsteiger bin, antworte ich mal für Rainer ;)

                                        Abfrage zwischen Sonnenaufgang und Sonnenuntergang geht. Ist ja der selbe Tag.

                                        Abfrage zwischen Sonnenuntergang und Sonnenaufgang geht nicht. Tageswechsel.

                                        Grüße

                                        Rantanplan

                                        CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                        1 Reply Last reply
                                        0
                                        • M Offline
                                          M Offline
                                          Modjo
                                          wrote on last edited by
                                          #20

                                          @rantanplan:

                                          @Homoran:

                                          Nicht dass hier wieder der Tagesübergang probleme macht. `
                                          Wahrscheinlich.

                                          Der Tageswechsel muss berücksichtigt werden.

                                          Beispiel.png

                                          Grüße

                                          [EDIT] Warum können die Leute im Betreff nicht Blockly erwähnen, wenn es um Blockly geht? :roll: `

                                          Hi,

                                          ich will gerade dein Beispiel folgen und es ausprobieren, nur leider finde ich dieses verschachtelte "oder" nicht in den Blöcken. Kannst du mir hier einen Tipp geben, wo ich das finde?

                                          Danke & Gruß

                                          1 Reply Last reply
                                          0

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          250

                                          Online

                                          32.7k

                                          Users

                                          82.6k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe