Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly Astro-Rolladensteuerung

    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

    Blockly Astro-Rolladensteuerung

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

      Habe das ursprüngliche Skript mal neu eingefügt und meine Geräte eingebunden. Nun funktioniert es auch. Was auch immer da falsch war, das Skript scheint zu laufen.

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

        nachdem es bei mir jetzt mir dem Hochfahren immer noch Probleme gab habe ich mal analysiert..

        Man probiert ja rumm und testet.. und dabei stellte ich fest, dass die Variable Arbeitstag beim Scriptstart wohl überschrieben wird… Die hat dann erstmal keinen Wert...

        Und hoch prüft ja immer auf true..

        Ich dachte, dass wenn eine Variable bei createstate schon existiert, dass die dann beibehalten wird ?

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

          ` > >Und den Baustein "Zustand erzeugen" könnte ich jetzt theoretisch aus dem Script löschen da er ja schon erstellt ist, oder macht es Sinn ihn dauerhaft so stehen zu lassen?

          Der kann theoretisch raus. Vorteil den dazulassen: wenn du die Scripte exportierst und neu / woanders einbindest ( Systemcrash oder ähnliches ) werden die benötigten Datenpunkte automatisch neu erzeugt. `

          Ich muss hier nochmal nachfassen…

          Wenn ich den Zustand im Script erzeugen lasse, dann wird jedesmal, wenn der Javascript Adapter neu startet, der Datenpunkt auch neu erzeugt und viel schlimmer: er hat keinen Anfangswert (false oder true).. Wenn dies nun nach dem Zeitpunkt, an dem geprüft wird, ob es ein Arbeitstag ist passiert, dann gehen die Rollos morgens nicht hoch.. Also habe ich direkt nach dem Zustand erzeugen den Wert auf true gesetzt...

          Prompt ist heute morgen um 7:00 alles im Haus wach gewesen....

          Wie kann ich im Blockly prüfen, ob ein Datenpunkt schon existiert ? , damit nur für den Fall, dass dies nicht so ist der Datenpunkt erzeugt wird ?

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

            @mameier1234:

            Wenn ich den Zustand im Script erzeugen lasse, dann wird jedesmal, wenn der Javascript Adapter neu startet, der Datenpunkt auch neu erzeugt und viel schlimmer: er hat keinen Anfangswert (false oder true).. Wenn dies nun nach dem Zeitpunkt, an dem geprüft wird, ob es ein Arbeitstag ist passiert, dann gehen die Rollos morgens nicht hoch.. Also habe ich direkt nach dem Zustand erzeugen den Wert auf true gesetzt…

            Prompt ist heute morgen um 7:00 alles im Haus wach gewesen.... `
            Da wirst Du etwas falsch programmiert haben.

            Datenpunkte (global) werden nicht neu angelegt wenn sie schon vorhanden sind. Die Inhalte bleiben erhalten!

            Variablen (lokal) haben bei Script-Start keinen Zustand und sollten initialisiert werden.

            Grüße

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

              Hallo,

              da ich aktuell auch an diesem Thema dran bin, in sehr ähnlicher Art: passt das so mit dem Blocky Script eurer Meinung nach?

              Anforderungen für aufgehende Rollos:

              • Hochfahren soll sich nach der Zeit des Sonnenaufgangs richten

              • Frühestens jedoch ab 07 Uhr soll ein Rollo hochgefahren werden (sprich wenn der Sonnenaufgang früher ist soll trotzdem erst ab 07 Uhr hochgefahren werden)

              • Wochentag ist aktuell egal

              Anforderungen für herunterfahrende Rollos:

              • Herunterfahren soll sich nach der Zeit des Sonnenuntergangs richten

              • Spätestens jedoch ab 21 Uhr soll ein Rollo heruntergefahren werden (sprich wenn der Sonnenuntergang später ist soll trotzdem bis 21 Uhr heruntergefahren werden)

              • Wochentag ist aktuell egal

              Durch meinen Aufbau muss ich jeweils das gleiche Relais einschalten und wieder ausschalten nach einer bestimmten Zeit. Die Zeit richtet sich nach der Position und Länge der Rolladen. Es sollen nach und nach die Rolladen hoch- bzw. heruntergefahren werden.

              Meine ersten Versuche für das Herunterfahren der Rollos (bisher nur zwei Rollos eingestellt):

              9311_down.png

               <xml xmlns="http://www.w3.org/1999/xhtml"><block type="comment" id="V3Qiff8:Udc_Oz:dFt{." x="-12" y="188"><field name="COMMENT">Rolladen spätestens um 21:00 Uhr schließen, unabhängig vom Zeitpunkt des Sonnenunterganges</field>
                  <next><block type="controls_if" id="ZmdNI/n9l#D!_zw9@=TM"><value name="IF0"><block type="time_compare_ex" id="Me{oe]?dD`NjgYiMO_]6"><mutation end_time="false" actual_time="true"></mutation>
                          <field name="USE_ACTUAL_TIME">TRUE</field>
                          <field name="OPTION"><</field>
                          <value name="START_TIME"><shadow type="text" id="]zjUQj]-wxcIItij4)J!"><field name="TEXT">21:00</field></shadow></value></block></value> 
                      <statement name="DO0"><block type="astro" id="oCTx5cQc,z-+P:x]E%s-"><field name="TYPE">sunset</field>
                          <field name="OFFSET">0</field>
                          <statement name="STATEMENT"><block type="timeouts_settimeout" id="H4/j52eMLM;@[FcV[lU("><field name="NAME">timeout</field>
                              <field name="DELAY">1000</field>
                              <field name="UNIT">ms</field>
                              <statement name="STATEMENT"><block type="control" id="O,XW~5.2zU-Va(PUHg]7"><mutation delay_input="false"></mutation>
                                  <field name="OID">modbus.5.coils.548_eg0204</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE"><block type="logic_boolean" id="hg9XNw9n`{A8bd%!Zo)l"><field name="BOOL">TRUE</field></block></value> 
                                  <next><block type="control" id="|A(fXW.7Zkrp%7o;SILK"><mutation delay_input="true"></mutation>
                                      <field name="OID">modbus.5.coils.548_eg0204</field>
                                      <field name="WITH_DELAY">TRUE</field>
                                      <field name="DELAY_MS">30</field>
                                      <field name="UNIT">sec</field>
                                      <field name="CLEAR_RUNNING">FALSE</field>
                                      <value name="VALUE"><block type="logic_boolean" id="%pM:J4@^+M2D}9AbJl0g"><field name="BOOL">FALSE</field></block></value></block></next></block></statement> 
                              <next><block type="timeouts_settimeout" id="}BO:cComxHZh73@?wO6y"><field name="NAME">timeout2</field>
                                  <field name="DELAY">2000</field>
                                  <field name="UNIT">ms</field>
                                  <statement name="STATEMENT"><block type="control" id="h9JqkQuX-O!DT_Fmg*vL"><mutation delay_input="false"></mutation>
                                      <field name="OID">modbus.5.coils.557_eg0213</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE"><block type="logic_boolean" id="C-*mwTs~r.8`|di|Ga)6"><field name="BOOL">TRUE</field></block></value> 
                                      <next><block type="control" id="T.ZXH;%]g(cDhfBtPBPt"><mutation delay_input="true"></mutation>
                                          <field name="OID">modbus.5.coils.557_eg0213</field>
                                          <field name="WITH_DELAY">TRUE</field>
                                          <field name="DELAY_MS">20</field>
                                          <field name="UNIT">sec</field>
                                          <field name="CLEAR_RUNNING">FALSE</field>
                                          <value name="VALUE"><block type="logic_boolean" id="Y+}rkc%eJKnI5@RgA7Li"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></next></block></statement></block></statement></block></next></block></xml> 
              

              Meine ersten Versuche für das Hochfahren der Rollos (bisher nur ein Rollo eingestellt):

              9311_up.png

               <xml xmlns="http://www.w3.org/1999/xhtml"><block type="comment" id="S?S}TM-;HO2ooC1K!R6~" x="-87" y="-37"><field name="COMMENT">Rolladen frühestens ab 07 Uhr öffnen, unabhängig vom Zeitpunkt des Sonnenaufgangs</field>
                  <next><block type="controls_if" id="s]*y%-ygrc#|C,sg9dNb"><value name="IF0"><block type="time_compare_ex" id="8Oph^mggw9Ac!-t(MSIv"><mutation end_time="false" actual_time="true"></mutation>
                          <field name="USE_ACTUAL_TIME">TRUE</field>
                          <field name="OPTION">></field>
                          <value name="START_TIME"><shadow type="text" id="Cm_)CGN%),AcpwZ-gM2,"><field name="TEXT">07:00</field></shadow></value></block></value> 
                      <statement name="DO0"><block type="astro" id="tG(/)%OB/(DO(NY5=}Bz"><field name="TYPE">sunrise</field>
                          <field name="OFFSET">0</field>
                          <statement name="STATEMENT"><block type="timeouts_settimeout" id="45?/:B@vx%AQPdh!7=Tm"><field name="NAME">timeout</field>
                              <field name="DELAY">1000</field>
                              <field name="UNIT">ms</field>
                              <statement name="STATEMENT"><block type="control" id="O,XW~5.2zU-Va(PUHg]7"><mutation delay_input="false"></mutation>
                                  <field name="OID">modbus.5.coils.521_eg0009</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE"><block type="logic_boolean" id="hg9XNw9n`{A8bd%!Zo)l"><field name="BOOL">TRUE</field></block></value> 
                                  <next><block type="control" id="|A(fXW.7Zkrp%7o;SILK"><mutation delay_input="true"></mutation>
                                      <field name="OID">modbus.5.coils.521_eg0009</field>
                                      <field name="WITH_DELAY">TRUE</field>
                                      <field name="DELAY_MS">30</field>
                                      <field name="UNIT">sec</field>
                                      <field name="CLEAR_RUNNING">FALSE</field>
                                      <value name="VALUE"><block type="logic_boolean" id="%pM:J4@^+M2D}9AbJl0g"><field name="BOOL">FALSE</field></block></value></block></next></block></statement></block></statement></block></statement></block></next></block></xml> 
              
              1 Reply Last reply Reply Quote 0
              • G
                Gerni last edited by

                Hi,

                Ich nutze mein gepostetes o.s. Skript noch so wie es da steht. Hatte es jetzt deaktiviert aufgrund Nachwuchs - er soll durch ein fahrendes Rollo ja nicht geweckt werden. Ich habe es jetzt wieder aktiviert.

                Problem:

                Die Rollos bewegen sich jede Nacht gegen 12 Uhr also 00:00 Uhr auf den eingestellten Wert. NIcht aber gemäß Astro. Zu 00:00 Uhr passiert lt. Skript aber keine Bewegung sondern um 00:10 soll ja nur geprüft werden ob Feiertag bzw Wochentag oder Wochenende ist. Der "Feiertage" Adapter prüft im STandard lt. Cron um 00:00 UHr welche Art von Tag es ist.

                Jemand ne Idee?

                Gruß

                Stefan

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

                  Guten Morgen zusammen.

                  Habe gerade an dem Blockly die Zeiten von 7:00 auf 7:30 geändert. Script gespeichert dann kommt der Fehler.

                  zudem kommt im LOG

                  javascript.0	2018-12-30 08:49:23.325	error	at TCP.onread (net.js:601:20)
                  javascript.0	2018-12-30 08:49:23.325	error	at Socket.Readable.push (_stream_readable.js:208:10)
                  javascript.0	2018-12-30 08:49:23.325	error	at readableAddChunk (_stream_readable.js:250:11)
                  javascript.0	2018-12-30 08:49:23.325	error	at addChunk (_stream_readable.js:263:12)
                  javascript.0	2018-12-30 08:49:23.325	error	at Socket.emit (events.js:211:7)
                  javascript.0	2018-12-30 08:49:23.325	error	at emitOne (events.js:116:13)
                  javascript.0	2018-12-30 08:49:23.325	error	at Socket._ultron.on (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/WebSocket.js:138:22)
                  javascript.0	2018-12-30 08:49:23.325	error	at Receiver.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:139:10)
                  javascript.0	2018-12-30 08:49:23.324	error	at Receiver.startLoop (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:165:16)
                  javascript.0	2018-12-30 08:49:23.324	error	at Receiver.getData (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:330:12)
                  javascript.0	2018-12-30 08:49:23.324	error	at Receiver.dataMessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:389:14)
                  javascript.0	2018-12-30 08:49:23.324	error	at Receiver._receiver.onmessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/WebSocket.js:141:47)
                  javascript.0	2018-12-30 08:49:23.324	error	at WebSocket.emit (events.js:211:7)
                  javascript.0	2018-12-30 08:49:23.324	error	at emitOne (events.js:116:13)
                  javascript.0	2018-12-30 08:49:23.324	error	at WebSocket.onMessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/EventTarget.js:99:16)
                  javascript.0	2018-12-30 08:49:23.324	error	at WebSocket.ws.onmessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transports/websocket.js:147:10)
                  javascript.0	2018-12-30 08:49:23.324	error	at WS.Transport.onData (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transport.js:137:8)
                  javascript.0	2018-12-30 08:49:23.324	error	at WS.Transport.onPacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transport.js:145:8)
                  javascript.0	2018-12-30 08:49:23.324	error	at WS.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:133:20)
                  javascript.0	2018-12-30 08:49:23.324	error	at WS. <anonymous>(/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/socket.js:273:10)
                  javascript.0	2018-12-30 08:49:23.324	error	at Socket.onPacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/socket.js:456:14)
                  javascript.0	2018-12-30 08:49:23.324	error	at Socket.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:133:20)
                  javascript.0	2018-12-30 08:49:23.324	error	at Socket. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15)
                  javascript.0	2018-12-30 08:49:23.324	error	at Manager.ondata (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:335:16)
                  javascript.0	2018-12-30 08:49:23.324	error	at Decoder.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-parser/index.js:251:12)
                  javascript.0	2018-12-30 08:49:23.323	error	at Decoder.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:133:20)
                  javascript.0	2018-12-30 08:49:23.323	error	at Decoder. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15)
                  javascript.0	2018-12-30 08:49:23.323	error	at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:345:8)
                  javascript.0	2018-12-30 08:49:23.323	error	at Manager.Emitter.emit (/opt/iobroker/node_modules/component-emitter/index.js:133:20)
                  javascript.0	2018-12-30 08:49:23.323	error	at Manager. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15)
                  javascript.0	2018-12-30 08:49:23.323	error	at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:244:12)
                  javascript.0	2018-12-30 08:49:23.323	error	at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:319:9)
                  javascript.0	2018-12-30 08:49:23.323	error	at Socket.adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:823:17)
                  javascript.0	2018-12-30 08:49:23.323	error	at createActiveObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1200:20)
                  javascript.0	2018-12-30 08:49:23.322	error	at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1146:37)
                  javascript.0	2018-12-30 08:49:23.322	error	at compile (/opt/iobroker/node_modules/iobroker.javascript/main.js:957:28)
                  javascript.0	2018-12-30 08:49:23.322	error	at Object.createScript (vm.js:80:10)
                  javascript.0	2018-12-30 08:49:23.322	error	SyntaxError: missing ) after argument list
                  javascript.0	2018-12-30 08:49:23.322	error	^^
                  javascript.0	2018-12-30 08:49:23.322	error	schedule(10 0 * * 1-5, function () {
                  javascript.0	2018-12-30 08:49:23.322	error	script.js.Rollo.Rollo_Steuerung_ compile failed: at script.js.Rollo.Rollo_Steuerung_:4</anonymous></anonymous></anonymous></anonymous>
                  

                  Selbst wenn ich mein gespeichertes Backup Script unverändert importiere kommt der Fehler.
                  5495_rollo_fehler.png

                  1 Reply Last reply Reply Quote 0
                  • J
                    Jan1 last edited by

                    Du hast Javascript Adapter 4.0.6 und den damit verbundenen Bug im CRON. Mach ein Downgrade auch 3.6.4 und es läuft wieder 😉

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

                      @Jan1:

                      Du hast Javascript Adapter 4.0.6 und den damit verbundenen Bug im CRON. Mach ein Downgrade auch 3.6.4 und es läuft wieder 😉 `
                      Selber Fehler im Bild nach dem Downgrade.

                      im LOG steht

                      javascript.0	2018-12-30 11:26:25.144	error	at Object.createScript (vm.js:80:10)
                      javascript.0	2018-12-30 11:26:25.144	error	SyntaxError: missing ) after argument list
                      javascript.0	2018-12-30 11:26:25.144	error	^^
                      javascript.0	2018-12-30 11:26:25.144	error	schedule(10 0 * * 1-5, function () {
                      javascript.0	2018-12-30 11:26:25.143	error	script.js.Rollo.Rollo_Steuerung_ compile failed: at script.js.Rollo.Rollo_Steuerung_:4
                      

                      EDIT

                      Nach einfügen des Musterscriptes geht es doch wieder.

                      1 Reply Last reply Reply Quote 0
                      • J
                        Jan1 last edited by

                        boote mal den Raspi durch

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        861
                        Online

                        31.8k
                        Users

                        79.9k
                        Topics

                        1.3m
                        Posts

                        11
                        42
                        10909
                        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