Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Rollläden per Astro steuern

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.2k

Rollläden per Astro steuern

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
38 Beiträge 9 Kommentatoren 10.0k Aufrufe 1 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • rantanplanR Offline
    rantanplanR Offline
    rantanplan
    schrieb am zuletzt editiert von
    #17

    @FredRatz:

    so ??? 😉 Einfach Value umbenennen ? SO einfach ??? `
    Hallo FredRatz

    Weist Du was eine Variable ist?

    Eine Variable ist ein Platzhalter für einen Wert.

    Du hast den Namen einer Variablen geändert.

    Damit hat sie immer noch keinen Inhalt!!!

    Für wahr/true und unwahr/false gibt es einen Baustein.
    147_beispiel.png

    Grüße

    Rantanplan

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

    1 Antwort Letzte Antwort
    0
    • F Offline
      F Offline
      FredRatz
      schrieb am zuletzt editiert von
      #18

      OK, dann so
      3688_5.jpg

      1 Antwort Letzte Antwort
      0
      • rantanplanR Offline
        rantanplanR Offline
        rantanplan
        schrieb am zuletzt editiert von
        #19

        Jetzt kommt es drauf an was in Deinem "nächster Sonnenaufgang Uhrzeit" steht.

        Dem Namen nach eine Uhrzeit. Also z.B. 07:00.

        Du triggerst aber auf "Falls Objekt nächster Sonnenaufgang Uhrzeit = wahr"

        Wie soll das funktionieren?

        Probiere es mal so.
        147_beispiel.png

        Grüße

        Rantanplan

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

        1 Antwort Letzte Antwort
        0
        • F Offline
          F Offline
          FredRatz
          schrieb am zuletzt editiert von
          #20

          Hi Rantanplan,

          ich habe jetzt erst diese Trigger Funktion "astro" richtig erkannt… macht die denn nicht genau das was ich will ???

          "Execute some action on astrological event. Following events are possible:"
          3688_6.jpg

          1 Antwort Letzte Antwort
          0
          • F Offline
            F Offline
            FredRatz
            schrieb am zuletzt editiert von
            #21

            Perfekt.. hat funktioniert.. habe Offset -245 minuten eingegeben und mich unten im haus ein wenig "rumgetrieben"… meine Frau hat nicht schlecht gestaunt als plötzlich der Rollo nach unten ging ;-))))

            Jetzt ist nur die Frage wie ich alle 8 Rollos steuern kann ? je 7mal das skript kopieren ???

            1 Antwort Letzte Antwort
            0
            • F Offline
              F Offline
              FredRatz
              schrieb am zuletzt editiert von
              #22

              @FredRatz:

              Jetzt ist nur die Frage wie ich alle 8 Rollos steuern kann ? je 7mal das skript kopieren ??? `

              Sorry, habs auch gefunden, kann mehrere "steuere" Elemente unter ein Trigger-Element gruppieren… cooool 😉
              3688_7.jpg

              1 Antwort Letzte Antwort
              0
              • rantanplanR Offline
                rantanplanR Offline
                rantanplan
                schrieb am zuletzt editiert von
                #23

                Das "+" musst Du nicht setzen.

                Rantanplan

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

                1 Antwort Letzte Antwort
                0
                • F Offline
                  F Offline
                  FredRatz
                  schrieb am zuletzt editiert von
                  #24

                  so, nachdem meine Rolläden mit diesem einfachen Blockly jetzt schon mehrere Tage prima hoch- und runter fahren wird es Zeit dass ich es erweitere 🙂

                  Meine Frau meint dass sie manchmal zu früh hochfahren ( es also noch draussen zu dunkel ist wegen Bewölkung etc. ) oder sie auch ab und an zu früh runter fahren, wenn es trotz sundown noch relativ hell ist.

                  Jetzt habe ich mir eine ccu2 geholt, in ioBroker intergriert und meinen Homematic IP Bewegungsmelder mit Helligkeits-Sensor für innen ( HmIP-SMI ) angelernt. Warum habe ich das so gemacht ? Mit Homematic IP kann ich derzeit leider nicht auf die Helligkeitswerte zugreifen… mit der CCU2 schon ;-(

                  Also, habe ich jetzt in iobroker auch Werte für die Helligkeit draussen ( der Melder steht nahe am Fenster ) die ich gerne zur Steuerung der Rolläden nutzen möchte.

                  Mir ist nur nicht ganz klar wie ich mit dem Blockly den Astro-Trigger mit einer Bedingung verknüpfe ?

                  Die Logik soll so sein:

                  Wenn

                  "Astro-Sonnenaufgang" erreicht ist UND gleichzeitig mindestens Helligkeit XY erreicht ist sollen die Rollos hochfahren,

                  andernfalls

                  erst wenn Helligkeit XY erreicht ist.

                  Ein kurzer Hint welche(s) Blockly-Element(e) ich nutzen muss wären schon ausreichend.. ich würds dann versuchen zusammen zu kleben 😉 Hab gesucht aber auf den ersten Blick nichts gefunden womit sich der Astro-Trigger mit solch einer Logik-Funktion verknüpfen lässt.

                  Ich hab mal versucht anzufangen wie unten im Blockly, finde aber da schon keinen Platzhalter für den Wert der Helligkeit zum Vergleichen....

                  viele Grüße

                  Freddy
                  3688_13.jpg

                  1 Antwort Letzte Antwort
                  0
                  • DutchmanD Online
                    DutchmanD Online
                    Dutchman
                    Developer Most Active Administrators
                    schrieb am zuletzt editiert von
                    #25

                    hmip-smi ist der helligkeitssensensor ?

                    due koenntest einen trigger block nemen mit 2 bedingungen, eine ist die astrozeit und die andere der helligkeits wert.

                    Danach eine if afrage worin beide bedinungen erfuellt sein muessen. Der block triggert dan auf astro UND helligkeitswert, die if abfrage entscheidet was passieren soll

                    ~Dutch

                    1 Antwort Letzte Antwort
                    0
                    • rantanplanR Offline
                      rantanplanR Offline
                      rantanplan
                      schrieb am zuletzt editiert von
                      #26

                      @FredRatz:

                      Die Logik soll so sein:

                      Wenn

                      "Astro-Sonnenaufgang" erreicht ist UND gleichzeitig mindestens Helligkeit XY erreicht ist sollen die Rollos hochfahren,

                      andernfalls

                      erst wenn Helligkeit XY erreicht ist. `
                      Hallo FredRatz

                      Du weist ja, dass in Deinem Beispiel der äußere Wertbaustein keine Funktion hat?

                      Schau Dir mal den Beitrag an.

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

                      Damit könntest Du einen Zeitbereich um die Astrozeit "herum" überwachen und die Helligkeit überprüfen.

                      Grüße

                      Rantanplan

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

                      1 Antwort Letzte Antwort
                      0
                      • F Offline
                        F Offline
                        FredRatz
                        schrieb am zuletzt editiert von
                        #27

                        was haltet ihr davon ? Kann man erkennen was es geben soll ? 😉

                        var schedule;
                        
                        if (compareTime("17:00", "null", ">=")) {
                          schedule = schedule('* * * * *', function () {
                            schedule({astro: "sunset", shift: 10}, function () {
                              if (getState("hm-rpc.1.0009156996083E.1.ILLUMINATION").val <= 2) {
                                setState("fhem.0.EG_Rolladen_3.down"/*EG_Rolladen_3 down*/, 'true');
                                setState("fhem.0.EG_Rolladen_6.down"/*EG_Rolladen_6 down*/, 'true');
                                setState("fhem.0.EG_Rolladen_7.down"/*EG_Rolladen_7 down*/, 'true');
                              } else {
                                if (getState("hm-rpc.1.0009156996083E.1.ILLUMINATION").val <= 2) {
                                  setState("fhem.0.EG_Rolladen_3.down"/*EG_Rolladen_3 down*/, 'true');
                                  setState("fhem.0.EG_Rolladen_6.down"/*EG_Rolladen_6 down*/, 'true');
                                  setState("fhem.0.EG_Rolladen_7.down"/*EG_Rolladen_7 down*/, 'true');
                                }
                              }
                            });
                          });
                        }
                        
                        

                        Blockly:
                        3688_14.jpg

                        1 Antwort Letzte Antwort
                        0
                        • AlCalzoneA Offline
                          AlCalzoneA Offline
                          AlCalzone
                          Developer
                          schrieb am zuletzt editiert von
                          #28

                          Ich übersetze mal:

                          Wenn es beim Skriptstart später als 17 Uhr ist,

                          registriere einen Schedule, der jede Minute ausgeführt wird

                          und der bei jedem Aufruf einen weiteren Schedule für den Sonnenuntergang registriert.

                          Ich befürchte das ist nicht ganz was du vor hattest.

                          Tipp: Die roten Trigger-Blocks sollten ganz außen sein und nicht geschachtelt werden, sonst bekommst du ganz schnell ein Problem.

                          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                          1 Antwort Letzte Antwort
                          0
                          • F Offline
                            F Offline
                            FredRatz
                            schrieb am zuletzt editiert von
                            #29

                            Nun, die Idee war eigentlich dass ab 17.00h der Cron anläuft und minütlich abprüft ob jetzt "Sonnenuntergang+10 Minuten" ist. Falls ja, soll er prüfen ob es auch schon dunkel genug ist und, falls dies auch positiv, die Rolläden schliessen.

                            Falls dies nicht zutrifft ( "Sonnenuntergang+10 Minuten" UND dunkel genug ) dann soll er nur prüfen ob dunkel genug und dann die Rollos schliessen.

                            Wo liegt mein Denkfehler ?

                            1 Antwort Letzte Antwort
                            0
                            • AlCalzoneA Offline
                              AlCalzoneA Offline
                              AlCalzone
                              Developer
                              schrieb am zuletzt editiert von
                              #30

                              Was in den Skripten auf oberster Ebene steht (in deinem Fall "falls Uhrzeit >= 17:00") wird nur bei Skriptstart einmalig ausgeführt und danach nicht mehr.

                              Deswegen sollten hier Triggerblöcke (Farbe rot) stehen, die eben beim Skriptstart wiederkehrende Aktionen definieren oder Zeitpläne aufstellen. Triggerblöcke in Triggerblöcken sorgt dafür dass du ungewollt vielfache Instanzen eines Triggers definierst und beim Auslösen möglicherweise einen Befehl 100x ausführst.

                              Die Abfragen im Inneren scheinen mir auch doppelt:

                              Falls Helligkeit <= 2 schließe Rolladen
                              sonst falls Helligkeit <= 2 schließe Rolladen
                              

                              > prüft ob jetzt "Sonnenuntergang+10 Minuten"
                              Da hast du den falschen Block. Du hast einen, der einen Zeitplan setzt (rot!), dessen Inhalt bei Sonnenuntergang + 10 Minuten ausgeführt wird.

                              Um zu prüfen, ob eine Bedingung wahr ist, brauchst du einen "falls"-Block (wie du im Inneren des Astro-Block) eingesetzt hast.

                              Welcher der richtige ist, kann ich dir mangels iobroker-Zugriff gerade nicht sagen, aber folgende Logik solltest du umsetzen:

                              Cron: * * * * *
                              | Falls Uhrzeit >= 17 Uhr: (kann man evtl in den Cron integrieren mit geeigneter Cron-Syntax)
                              | | Falls Weitere Prüfungen erfolgreich:
                              | | | Rolladen schließen
                              | | |_
                              | |_
                              |_
                              
                              

                              Deine Logik mit Sonnenuntergang und dunkel scheint mir auch unnötig.

                              Falls (nach Sonnenuntergang und dunkel) oder (dunkel) lässt sich doch reduzieren auf falls dunkel, oder?

                              Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                              1 Antwort Letzte Antwort
                              0
                              • rantanplanR Offline
                                rantanplanR Offline
                                rantanplan
                                schrieb am zuletzt editiert von
                                #31

                                @FredRatz:

                                Nun, die Idee war eigentlich dass ab 17.00h der Cron anläuft und minütlich abprüft ob jetzt "Sonnenuntergang+10 Minuten" ist. Falls ja, soll er prüfen ob es auch schon dunkel genug ist und, falls dies auch positiv, die Rolläden schliessen.

                                Falls dies nicht zutrifft ( "Sonnenuntergang+10 Minuten" UND dunkel genug ) dann soll er nur prüfen ob dunkel genug und dann die Rollos schliessen.

                                Wo liegt mein Denkfehler ? `
                                Nach 17 Uhr wird jede Minute ein "Sonnenuntergang+10" gestartet.

                                Sobald es 1x nach 17 Uhr war, wird IMMER JEDE MINUTE "Sonnenuntergang+10" gestartet!!!!!!

                                Da bricht Dein System relativ schnell zusammen.

                                Auch in Deinem "Falls…..sonst....." sehe ich keinen Unterschied bzw. Sinn.

                                Also der ganze Denkansatz ist falsch.

                                Falls Du Dir mal die Mühe gemacht hast und meinen verlinkten Beitrag gelesen hast.....

                                Hier ein schell zusammengeklicktes Beispiel, basierend auf den o.g. Beitrag.
                                147_beispiel.png

                                Hier der Export.

                                ! ````
                                <xml xmlns="http://www.w3.org/1999/xhtml"><block type="comment" id="k=LtfYvNDe`(J%N5]sF5" x="88" y="-87"><field name="COMMENT">Variable initialisieren</field>
                                <next><block type="variables_set" id="VwPNSWgQz0b}#gUz;}u5"><field name="VAR">bereits_gestartet</field>
                                <value name="VALUE"><block type="logic_boolean" id="UgV1~LLb~%)Pa_19#8x]"><field name="BOOL">FALSE</field></block></value>
                                <next><block type="comment" id="[Z@oAB^F(}uykoUifNnn"><field name="COMMENT">Minuten SU triggern</field>
                                <next><block type="on_ext" id="(oVOmM!,;7%^]vT^AYu7"><mutation items="1"></mutation>
                                <field name="CONDITION">ne</field>

                                            <value name="OID0"><shadow type="field_oid" id="n48g#XXq.r^6RR=f%OMb"><field name="oid">javascript.0.MinutenSU</field></shadow></value> 
                                            <statement name="STATEMENT"><block type="comment" id=";3D9S2}Cy;#bHcXn@[`:"><field name="COMMENT">Ab 10 Minuten NACH Sonnenuntergang</field>
                                                <next><block type="controls_if" id="wbmg3;B5Z!+-b]%6iBmA"><mutation elseif="1"></mutation>
                                                    <value name="IF0"><block type="logic_compare" id="6G3N!Pp7!B9P2G=^%6-v"><field name="OP">LTE</field>
                                                        <value name="A"><block type="get_value" id="9:1CyygCawRkXExtBLy4"><field name="ATTR">val</field>
                                                            <field name="OID">javascript.0.MinutenSU</field></block></value> 
                                                        <value name="B"><block type="math_number" id="%;}F(+9B~2+7l@E!u00;"><field name="NUM">-10</field></block></value></block></value> 
                                                    <statement name="DO0"><block type="comment" id="o?nNdN52MBcy!5MB1TSZ"><field name="COMMENT">Helligkeit prüfen</field>
                                                        <next><block type="controls_if" id="3nm@L=P|{FUbrCnZp`~Z"><value name="IF0"><block type="logic_compare" id="5n:ykZT5]4j;w%bLm8P@"><field name="OP">LTE</field>
                                                                <value name="A"><block type="get_value" id="MyiPT/zuQgfGA0xwr4+U"><field name="ATTR">val</field>
                                                                    <field name="OID">hm-rpc.0.LEQ0169150.1.BRIGHTNESS</field></block></value> 
                                                                <value name="B"><block type="math_number" id="R_Nw2NK}`@xqA/Ar,l^7"><field name="NUM">2</field></block></value></block></value> 
                                                            <statement name="DO0"><block type="controls_if" id="!o9x6dgOo[L;UcMQ:X_W"><value name="IF0"><block type="logic_compare" id="N,@+T!KC_sk!7z_`Ar.^"><field name="OP">EQ</field>
                                                                    <value name="A"><block type="variables_get" id="ffAnc9oIO?3PS!zPm}/!"><field name="VAR">bereits_gestartet</field></block></value> 
                                                                    <value name="B"><block type="logic_boolean" id="*meG-Q|FnZ2%MPZSu5_h"><field name="BOOL">FALSE</field></block></value></block></value> 
                                                                <statement name="DO0"><block type="comment" id="-:nf8=T?3i[|p,Z7g~Sx"><field name="COMMENT">Rollos runter</field>
                                                                    <next><block type="variables_set" id=")uy`BScK,=,yQ*Ge*Am)"><field name="VAR">bereits_gestartet</field>
                                                                        <value name="VALUE"><block type="logic_boolean" id="}gUrRzz9`T{MuBkT2O5F"><field name="BOOL">TRUE</field></block></value></block></next></block></statement></block></statement></block></next></block></statement> 
                                                    <value name="IF1"><block type="logic_compare" id="*WGJ6lSqIBr}]=:IQ;N^"><field name="OP">EQ</field>
                                                        <value name="A"><block type="get_value" id="mk+W~n9%EJCRo`ej=wR6"><field name="ATTR">val</field>
                                                            <field name="OID">javascript.0.MinutenSU</field></block></value> 
                                                        <value name="B"><block type="math_number" id="0PotS.LEM(Hy:h+YF1Ma"><field name="NUM">999</field></block></value></block></value> 
                                                    <statement name="DO1"><block type="comment" id="f`H01m{=ZlTQ(mmc^4ti"><field name="COMMENT">Vorbereitung nächster Sonnenuntergang</field>
                                                        <next><block type="variables_set" id="O=0XKDJG;zkGh3p`+.;T"><field name="VAR">bereits_gestartet</field>
                                                            <value name="VALUE"><block type="logic_boolean" id="#ddZ~mIf=V,wa!%=J2to"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></statement></block></next></block></next></block></next></block></xml> 
                                

                                ! ````

                                Grüße

                                Rantanplan

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

                                1 Antwort Letzte Antwort
                                0
                                • F Offline
                                  F Offline
                                  FredRatz
                                  schrieb am zuletzt editiert von
                                  #32

                                  Sorry falls ich nerve 😉

                                  ich habe mir natürlich Dein Herangehen angeschaut Rantanplan, versuche aber gerne auch die Dinge selbst zu entwickeln, so verstehe ich es am schnellsten. Ich habe vor ca. 30 Jahren Programmierung Cobol und PL/1 "gelernt", von dem her sind gewissen Grundkenntnisse noch vorhanden, aber eher rudimentär…

                                  was haltet ihr von folgendem ?
                                  3688_15.jpg

                                  1 Antwort Letzte Antwort
                                  0
                                  • AlCalzoneA Offline
                                    AlCalzoneA Offline
                                    AlCalzone
                                    Developer
                                    schrieb am zuletzt editiert von
                                    #33

                                    @FredRatz:

                                    was haltet ihr von folgendem ? `
                                    Jetzt musst du das Intervall nur noch stoppen, sobald die Bedingung zum Runterfahren erfüllt ist. Sonst siehts gut aus.

                                    Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                    1 Antwort Letzte Antwort
                                    0
                                    • F Offline
                                      F Offline
                                      FredRatz
                                      schrieb am zuletzt editiert von
                                      #34

                                      so ? 😉
                                      3688_zwischenablage01.jpg

                                      1 Antwort Letzte Antwort
                                      0
                                      • AlCalzoneA Offline
                                        AlCalzoneA Offline
                                        AlCalzone
                                        Developer
                                        schrieb am zuletzt editiert von
                                        #35

                                        Jup!

                                        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                        1 Antwort Letzte Antwort
                                        0
                                        • tobetobeT Offline
                                          tobetobeT Offline
                                          tobetobe
                                          schrieb am zuletzt editiert von
                                          #36

                                          Hallo Belei,
                                          @Belei:

                                          Die Signale konnte ich schon mit dem RFLINK Adapter abgreifen und einbinden.

                                          Sie werden z.b. als:

                                          rflink.0.channels.BrelMotor_1.BLIND_08 mit True,False und einem Stop Button angelegt. `
                                          Ich habe das gleiche mit Rohrmotor24 (ebenfalls BrelMotor) und RFLink vor. Die Objekte der Motoren werden wie bei dir erkannt. Ich scheitere jedoch an der Steuerung über VIS. Könntest du mir bitte mal zeigen, welche Widgets du verwendest, und welche Parameter du an die Objekte im RFLink schickst?

                                          Recht herzlichen Dank.

                                          Beste Grüße
                                          tobetobe

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          712

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe