Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage ] Blockly dynamischer Sonnenauf- und Sonnenuntergang

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Vorlage ] Blockly dynamischer Sonnenauf- und Sonnenuntergang

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

      @maddad:

      Irgendwo muss da doch noch die Aktion rein "mache xxx". `
      Hallo maddad

      Nein, nicht in dieses Blockly.

      Hier werden nur die Datenpunkte "MinutenSU" und "MinutenSA" geändert.

      Alles weitere habe ich in diesem Thread schon mal hier erklärt.

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

      Falls noch Fragen offen….fragen.

      Grüße

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

        Hallo rantanplan,

        danke für die schnelle Info.

        Werde mich da direkt ransetzen.

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

          Hallo rantanplan,

          könnte dies so funktionieren?

          Ich komm noch nicht ganz mit, wie die Rollos mitbekommen, ob sie nun rauf oder runter fahren sollen, da im KNX nur der Befehl "Bewegung" existiert und nicht "rauf" / "runter".

          Wie Raphael seinerzeit gefragt hat unter

          http://forum.iobroker.net/viewtopic.php … &hilit=knx
          5077_blockly-rollosu.jpg

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

            Hallo maddad

            Zu KNX kann ich nichts sagen.

            Aber das es da nur einen Datenpunkt gibt, kann ich fast nicht glauben.

            Mach doch mal einen Screenshot von den Datenpunkten.

            Doch nun zum Blockly.

            Am aller wichtigsten Blocklys NICHT unter "global" speichern!!!!!!!!!!!!!

            Da funktionieren die nicht.

            Du brauchst 2 Datenpunkte.

            Einen für wann sollen die Rollos hoch

            und einen für wann sollen die Rollos runter.

            Diese Datenpunkte verbindest Du mit einen VIS Widget.

            Damit kannst Du dann Deine gewünschten Minuten, relativ zum SA / SU, eintragen und bei bedarf ändern/anpassen.

            Ich habe mal ein Beispiel gemacht mit "RolloRunterMinSU" und "RolloRaufMinutenSA"
            147_beispiel.png

            Hier der Export:

            ! ````
            <xml xmlns="http://www.w3.org/1999/xhtml"><block type="create" id=",Aoq0Hdc,]ZX/L.Y+oVD" x="-237" y="238"><field name="NAME">RolloRunterMinSU</field>
            <statement name="STATEMENT"><block type="create" id="6l;U+C-{YZA7psTM7:2]"><field name="NAME">RolloRaufMinSA</field></block></statement></block>
            <block type="comment" id="zsN^-r6Dsd(J7L~q.paT" x="-488" y="338"><field name="COMMENT">Rollos abends</field>
            <next><block type="on_ext" id="=.XKxRH@M.;,RYLU^mEf"><mutation items="1"></mutation>
            <field name="CONDITION">ne</field>

                <value name="OID0"><shadow type="field_oid" id="13IE@2#p!v)}zKEIq|[m"><field name="oid">default</field></shadow> 
                  <block type="get_value" id="U6Gg=,UF{6k(*OYbT.TN"><field name="ATTR">val</field>
                    <field name="OID">HomeStatus.0.Zeiten.MinutenSU</field></block></value> 
                <statement name="STATEMENT"><block type="controls_if" id="@ke{A=-EG3`;E5+qeoh?"><value name="IF0"><block type="logic_compare" id="2q*3x{;9mv=t^^O|(B3k" inline="false"><field name="OP">EQ</field>
                        <value name="A"><block type="get_value" id="_*=rf)kkD))~^~Ox:sTZ"><field name="ATTR">val</field>
                            <field name="OID">HomeStatus.0.Zeiten.MinutenSU</field></block></value> 
                        <value name="B"><block type="get_value" id="/_]R5}vRQRsu@P[29TbN"><field name="ATTR">val</field>
                            <field name="OID">HomeStatus.0.Rollos.RolloMinutenSU</field></block></value></block></value> 
                    <statement name="DO0"><block type="comment" id="X0:ys-=,tyRa.U:bA/zt"><field name="COMMENT">Hier Rollos runter steuern</field></block></statement></block></statement></block></next></block> 
            

            <block type="comment" id="8u]?,)uA7.GqwkF*y9oD" x="13" y="338"><field name="COMMENT">Rollos morgens</field>
            <next><block type="on_ext" id="7jJfI#y=~C5kOFBU2BVn"><mutation items="1"></mutation>
            <field name="CONDITION">ne</field>

                <value name="OID0"><shadow type="field_oid" id="VUDy]7nRNo5w}hMg,R3Y"><field name="oid">default</field></shadow> 
                  <block type="get_value" id="Laf:!4)x4.sWEMjV^bNf"><field name="ATTR">val</field>
                    <field name="OID">HomeStatus.0.Zeiten.MinutenSA</field></block></value> 
                <statement name="STATEMENT"><block type="controls_if" id="%~=h.8ne*?#rw(Y0OpzS"><value name="IF0"><block type="logic_compare" id=":GZkXl|{!XdMJ~G8X79Q" inline="false"><field name="OP">EQ</field>
                        <value name="A"><block type="get_value" id=".Z|.rY@!KNB09A|ms7`Q"><field name="ATTR">val</field>
                            <field name="OID">HomeStatus.0.Zeiten.MinutenSA</field></block></value> 
                        <value name="B"><block type="get_value" id="XehC+%!g5eA{`Co8OY4A"><field name="ATTR">val</field>
                            <field name="OID">HomeStatus.0.Rollos.RolloMinutenSA</field></block></value></block></value> 
                    <statement name="DO0"><block type="comment" id="(amxK8n]eU?KM@F%2eAy"><field name="COMMENT">Hier Rollos rauf steuern</field></block></statement></block></statement></block></next></block></xml> 
            

            ! ````

            Grüße

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

              Hallo rantanplan,

              erstmal vielen Dank für das coole Blockly skript. Habe es direkt mal eingebunden 😄

              Das mit dem Skript in global meine ich hier irgendwo gelsen zu haben, finde es aber nicht mehr - ist auch egal - schon gelöscht. :lol:

              Habe als Bild meine Datenpunkte angehängt.

              Die Rollos werden über die Werte 0 und 1 gesteuert, wobei 0 für Rollo runter und 1 für Rollo rauf steht.

              Das Schlafzimmer z.B stand eben noch auf 1 = Rollo war oben.

              Habe das Rollo manuell über einen mechanischen Schalter (Aktor) herunter gefahren. Wie Du siehst ist der Wert nun auf 0.

              Es besteht aber nur Datenpunkt pro Rollo Bewegung. :?:

              Hast Du eine Ahnung was die Rollen "switch" und "value" zu bedeuten haben? Wurden genauso importiert, hab da noch nichts angefasst.

              Liebe Grüsse
              5077_datenpunkte.jpg

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

                @maddad:

                Hast Du eine Ahnung was die Rollen "switch" und "value" zu bedeuten haben? Wurden genauso importiert, hab da noch nichts angefasst. `
                Tut mir leid ich habe KNX nicht.

                Mach doch mal einen neuen Thread auf. Mit Betreff "Frage zu KNX"

                Hier gibt es bestimmt Mitglieder die KNX kennen und Dir gerne weiterhelfen.

                Grüße

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

                  Hallo Rantanplan,

                  das ist eine gute Idee. Ich glaube chefkoch999 hat schon mal damit gearbeitet.

                  Er müsste KNX haben.

                  Vielen Dank aber für Deine Unterstützung, Erklärungen und Hilfe

                  Grüsse aus der Klingenstadt Solingen

                  P 1 Reply Last reply Reply Quote 0
                  • P
                    Pistus @maddad last edited by Pistus

                    @rantanplan Hallo,
                    ich habe ein Solardach in Ost-Westrichtung ausgerichtet.
                    Da die Sonne im Osten auf- und im Westen unter geht, möchte ich je nach Sonnenstand die Leistung stündlich zwischen 7 und 19 Uhr anzeigen und in VIS darstellen.
                    Die Leistung des Ost- und Weststrang bekomme ich über Modbus. Der Sonnenstand soll mittels Halbkreis dargestellt werden.
                    Ist das machbar. Leider fehlen mir die Programmierkenntnisse für dieses Vorhaben. Evtl. ist die Idee auch für einen anderen User interessant. Gibt es dafür schon ein Beispiel?
                    solardach.jpg
                    Hinten am Dach ist Osten.

                    paul53 haus-automatisierung 2 Replies Last reply Reply Quote 0
                    • paul53
                      paul53 @Pistus last edited by

                      @pistus sagte: Der Sonnenstand

                      const suncalc = require('suncalc');
                      
                      const jsa = getObject("system.adapter.javascript.0");
                      const lat = jsa.native.latitude;
                      const long = jsa.native.longitude;
                      
                      schedule("* * * * *", function () {
                          const sunpos = suncalc.getPosition(new Date(), lat, long);
                          const h = sunpos.altitude * 180 / Math.PI; 
                          const a = sunpos.azimuth * 180 / Math.PI + 180;
                          
                          setState("0_userdata.0.Aussen.Sonne.Hoehe", Math.round(10 * h) / 10, true);
                          setState("0_userdata.0.Aussen.Sonne.Azimut", Math.round(a), true);
                      });
                      
                      1 Reply Last reply Reply Quote 0
                      • haus-automatisierung
                        haus-automatisierung Developer Most Active @Pistus last edited by

                        @pistus Dieser Thread ist über 6 Jahre alt...

                        P 1 Reply Last reply Reply Quote 0
                        • P
                          Pistus @haus-automatisierung last edited by

                          @haus-automatisierung
                          Du hast recht.

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          801
                          Online

                          31.7k
                          Users

                          79.8k
                          Topics

                          1.3m
                          Posts

                          blockly template
                          10
                          49
                          12665
                          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