Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Farbtemperatur (weiß) abhängig von Sonnenstand und Tageszeit

    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

    [Vorlage] Farbtemperatur (weiß) abhängig von Sonnenstand und Tageszeit

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

      Ich würde gerne die Farbtemperatur meiner Hue LEDs (CCT) in Abhängigkeit von Sonnenstand und Tageszeit schalten. Also morgens kalt (bis mittags) dann langsam immer wärmer bis abends richtig warm.

      Ein erster Plan ist: bei steigender Elevation. kalt lassen und wenn die Elevation fällt auf warm wechseln. Aber die Zeit dich ich habe bis die Dunkelheit kommt variiert natürlich durchs ganze Jahr. Also kann ich keine absoluten Werte (z. B. +10° pro halbe Stunde) nehmen.

      Habt ihr ne Idee wie ich das machen kann?

      Gesendet von meinem ONEPLUS A3003 mit Tapatalk

      Edit: Elevation & Azimut verwechselt.

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

        Ich habe mir das auch schon mal durch den kopf gehen lassen.

        Meine Ansätze wären es entweder aus der maximalen elevation (nicht azimut!) hochzurechnen oder den Zeitpunkt von elevation =0 des vortags zu speichern und zur Berechnung des Intervalls zu nehmen.

        Gruß

        Rainer

        1 Reply Last reply Reply Quote 0
        • M
          mrMuppet last edited by

          Ich habe jetzt eine Lösung gefunden. Es ist nichtz ganz einfach dazustellen und ich freue mich wenn der ein oder andere eine Vereinfachung findet, aber bei mir funktioniert es so schon mal.

          Ich brauche

          Tageszeit1 (z.B. "Golden Hour") zu der dann der Verlauf der Farbtemperatur beginnen soll.

          Tageszeit2 (z.B. "Nautische Abenddämmerung") zu der dann der Verlauf der Farbtemperatur beendet sein soll.

          Aktuelle Zeit

          Extrema°K für kaltes Licht - bei mir 325°

          Extrema °K für warmes Licht - bei mir 500°

          Zum einfachen Rechnen wandle ich die Zeiten in Minuten seit Tagesbeginn um. Keine Ahnung ob das nötig ist.

          Dann brauche ich die Länge des Verlaufs:

          Zeit2 - Zeit1

          und wieviel Zeit der aktuellen Verlaufsphase schon verstrichen ist:

          aktuelle.Zeit - Zeit1

          Dann rechne ich aus wieviel Prozent meiner Verlaufszeit ich erreicht habe:

          100 / Länge_des_Verlaufs * verstrichene_Zeit

          und finde dann raus welcher Wert diesem Prozentsatz in meine Hue-Farbtemperatur entspricht:

          (175/100*x)+325

          Das ganze funktioniert so im Moment nur, bei einem Verlauf von Tageslicht (kalt) zu Kunstlicht (warm). Wenn das ganze umgedreht werden soll, dann muss der Wert der mit 1,75 multipliziert wird, vorher noch von hundert substrahiert werden.

          Ich bin leider ein ziemlicher Mathe-noop, aber vielleicht kann jemand anders das ganze etwas optimieren.

          1136_tageslicht_temperatur_verlauf.gif

          ! <block 1999/xmlns="<URL url=" http:/www.w3.org/xhtml"="">http://www.w3.org/1999/xhtml" type="math_arithmetic" id="-%lK~cGYvFO2{1#qRj%" x="237.72003173828125" y="-962.1600341796875"> ! <field name="OP">ADD</field> ! <value name="A"><shadow type="math_number" id="3H~;i9KPv+;irq[Y.2+"><field name="NUM">1</field></shadow>
          ! <block type="math_number" id="+1QD+78.SC%}Vr|wz%Ew"><field name="NUM">325</field></block></value>
          ! <value name="B"><shadow type="math_number" id="]npZ_W6rM(on9.ifj6)"><field name="NUM">1</field></shadow>
          ! <block type="math_arithmetic" id="MVq:4z9-FFB;xttoJ
          Hu"><field name="OP">MULTIPLY</field>
          ! <value name="A"><shadow type="math_number" id="ytDc@lagY%1gE345CtTg"><field name="NUM">1</field></shadow>
          ! <block type="math_number" id="jR7Wx6TB_5DT~5IG(_;"><field name="NUM">1.75</field></block></value> ! <value name="B"><shadow type="math_number" id="e3q)bwf(Vk.{))SAXzy:"><field name="NUM">1</field></shadow> ! <block type="math_arithmetic" id="L|XdaWxdnjk3Dm3]-#pP"><field name="OP">MULTIPLY</field> ! <value name="A"><shadow type="math_number" id="L@-n{{i|.Ax-C)xB~VI^"><field name="NUM">1</field></shadow> ! <block type="math_arithmetic" id="vAIsHAc_bs]W}vq.7I]E"><field name="OP">DIVIDE</field> ! <value name="A"><shadow type="math_number" id="qHu#JQ4u|jY8ekshLA1"><field name="NUM">1</field></shadow>
          ! <block type="math_number" id="c=,)Yf14pQhq.J8{P3U"><field name="NUM">100</field></block></value> ! <value name="B"><shadow type="math_number" id=")=Ox[S!jr,?Ry4)5^DVe"><field name="NUM">1</field></shadow> ! <block type="math_arithmetic" id="{+tT}QVw[Rm{4D7W*{wG"><field name="OP">MINUS</field> ! <value name="A"><shadow type="math_number" id="5SBT/|sdh~7@k]xBc@:H"><field name="NUM">1</field></shadow> ! <block type="convert_from_date" id="/g}k*9=Sz)X#yR-=H2Zq"><mutation format="false" language="false"></mutation> ! <field name="OPTION">mid</field> ! <value name="VALUE"><block type="time_astro" id="lgK-X)=LcM7ri.:-V*~,"><field name="TYPE">nauticalDusk</field> ! <field name="OFFSET">0</field></block></value></block></value> ! <value name="B"><shadow type="math_number" id="b8*#CBUaOLj(J|K?*4."><field name="NUM">1</field></shadow>
          ! <block type="convert_from_date" id="_eG-E:|8vJ5C-EZMb9tK"><mutation format="false" language="false"></mutation>
          ! <field name="OPTION">mid</field>
          ! <value name="VALUE"><block type="time_astro" id="U(U~|4+~64IA]Jlky5p?"><field name="TYPE">goldenHour</field>
          ! <field name="OFFSET">0</field></block></value></block></value></block></value></block></value>
          ! <value name="B"><shadow type="math_number" id="[5_epI23]1iwBP1W*ajh"><field name="NUM">1</field></shadow>
          ! <block type="math_arithmetic" id="tnqQ8p{FPN}b+lLL05YJ"><field name="OP">MINUS</field>
          ! <value name="A"><shadow type="math_number" id="+cC]Doc(p2T/?Y9}/7[."><field name="NUM">1</field></shadow>
          ! <block type="time_get" id="Ly!ZBYRbl^P^UN~Z:zf`"><mutation format="false" language="false"></mutation>
          ! <field name="OPTION">mid</field></block></value>
          ! <value name="B"><shadow type="math_number" id=":OW}[*Q2Uv+QnMhP)ReM"><field name="NUM">1</field></shadow>
          ! <block type="convert_from_date" id="C!t=@(;-j^l^[~gu7WDu"><mutation format="false" language="false"></mutation>
          ! <field name="OPTION">mid</field>
          ! <value name="VALUE"><block type="time_astro" id="QwIM!4yrT3yRpfO6tW~i"><field name="TYPE">goldenHour</field>
          ! <field name="OFFSET">0</field></block></value></block></value></block></value></block></value></block></value></block>

          1 Reply Last reply Reply Quote 0
          • M
            mrMuppet last edited by

            Ich hab das ganze nochmal etwas vereinfacht:

            Ich habe alle Zeiten in "Minuten seit Tagesbeginn" konvertiert.

            Wir brauchen folgende Variablen:

            s - Startzeit der Übergangsphase (z.B. Golden Hour)

            e - Ende der Phase (Ende der Dämmerung)

            z - aktuelle Zeit

            w - maximaler ct-Wert in Hue (o.ä.) (Warmweiß) z.B. 500

            c - minimaler ct-Wert (Kaltweiß) z.B. 325

            [(z-s)*(w-c)/(e-s)]+c

            Die Formel ist dann für einen ansteigenden Weißwert (Abenddämmerung). Wenn das weiß im Lauf der Zeit immer kälter werden soll (morgens) müssen w&c getauscht werden.

            Ich hoffe immer noch darauf, dass jemand das ganze in eine ordentlich nutzbaren Code umschreibt. Wäre natürlich viel eleganter wenn man nur einmal oben die Variablen einsetzt und der Rest der Formel dann passt…

            https://forum.iobroker.net/viewtopic.php?f=22&t=21229 und er umschreibt meine von ioBroker gesetzten Weiß-Werte immer mit 500.

            1 Reply Last reply Reply Quote 0
            • V
              vsa last edited by

              Hallo, durch Zufall bin ich auf diesen interessanten Thread gestoßen. Seit Weihnachten habe ich nun auch ioBroker im Einsatz (in Verbindung mit Homekit/yahka) und bin bisher ganz angetan.

              Noch bin ich recht unerfahren mit iobroker und habe mal versucht den Blocky bei mir nachzubilden. Zumindest der sieht so aus wie auf Deinem geposteten gif. 😉 Den darunter geposteten Code.... wo gebe ich den denn ein? Und wie verknüpfe ich den anschließend? Sorry für meine Beginner-Fragen....

              vg vsa

              1 Reply Last reply Reply Quote 0
              • L
                loverz last edited by loverz

                Hallo zusammen,

                ich möchte das mit meinen unzähligen Hue Spots ebenfalls realisieren.

                Am liebsten wäre es mir jedoch die Sonne nachzubilden, also:

                Morgens Warmweiß
                Mittags Kaltweiß
                Abends Warmweiß

                Für mich ergibt es keinen Sinn morgens direkt auf Kaltweiß zu gehen, das ist doch ungemütlich nach dem Aufstehen 🐶

                Den Farbverlauf hätte ich gerne "LIVE" also sagen wir alle 30 Minuten, wenn die Lichter an sind soll sich die Farbe automatisch an den Sonnenstand anpassen.
                Außerdem soll natürlich beim Einschalten selbst die richtige Temperatur eingestellt werden.

                Ich schalte die Leuchten übrigens beim Ausschalten über KNX komplett stromlos.

                Hat jemand eine Blockly Vorlage, die ich als Basis nehmen kann?

                1 Reply Last reply Reply Quote 0
                • L
                  loverz last edited by

                  Scheint wohl eher ein "Nischen-Wunsch" zu sein .

                  Wenn sich hier niemand meldet, der die gleichen Pläne hat, dann muss ich mich wohl oder übel selbst dem Thema annehmen 😞

                  Ehrlich gesagt hab ich halt noch keinen blassen Schimmer wie ich das realisieren soll.

                  T 1 Reply Last reply Reply Quote 0
                  • T
                    Tirador @loverz last edited by

                    @loverz Hallo Loverz,

                    ich habe jetzt etwas rumgesucht, aber den Beitrag wiedergefunden. Die Steuerung der Farbtemperatur in Abhängigkeit der Tageszeit gibt es bereits in einem Skript:

                    Dynamisches Licht - Farbverlauf Tag/Nacht

                    Vielleicht ist es das was Du suchst 😉

                    L 1 Reply Last reply Reply Quote 1
                    • L
                      loverz @Tirador last edited by

                      @Tirador Super danke!

                      Ich kenne mich zwar nicht mit Java aus, aber ich versuche mich da mal etwas einzulesen.

                      1 Reply Last reply Reply Quote 0
                      • L
                        loverz last edited by

                        Ich hab mich auf die Suche nach etwas leichterem (also für mich Blockly) gemacht, wurde nicht fündig und hab nun selbst etwas gebastelt:
                        https://forum.iobroker.net/topic/37978/adaptive-lighting-sonne-nachempfinden-hue-deconz

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        795
                        Online

                        31.9k
                        Users

                        80.1k
                        Topics

                        1.3m
                        Posts

                        5
                        10
                        1582
                        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