Skip to content
  • Home
  • 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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Das Ultimative Markisen / Rolladen Blockly - Script

NEWS

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

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

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

Das Ultimative Markisen / Rolladen Blockly - Script

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
blocklyclimate
80 Beiträge 18 Kommentatoren 33.8k Aufrufe 16 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.
  • smileS Offline
    smileS Offline
    smile
    schrieb am zuletzt editiert von Negalein
    #24

    So, ich habe das Blockly jetzt mal Stück für Stück umgesetzt.

    Das mit den Systemvariablen funktioniert sehr gut.

    Aber wie erwartet Springt bei wechselhafter Sonne das Rollo ständig hin und her.

    Deshalb habe ich jetzt jeweils einen Timout eingefügt, der nach einer gewissen Zeit nochmal prüft, ob immer noch alle Bedingungen wahr sind, und erst dann die Rolladen fährt.

    3472_rollo_automatik_mit_timeouts.png

    Allerdings bekomme ich die Fehlermeldung:

    17:19:51.877 [error] javascript.0 script.js.Beschattung_Auto_NEU compile failed: SyntaxError: Unexpected identifier

    Dies ist das aktuelle Blockly:

     <xml xmlns="http://www.w3.org/1999/xhtml"><block type="comment" id="IR94DiuG7v6~=Zg2dVp6" x="-862" y="4413"><field name="COMMENT">Variablen initialisieren</field>
        <next><block type="procedures_callnoreturn" id="iW:+%8blE]XvSDS~rIw5"><mutation name="InitVariablen"></mutation>
            <next><block type="comment" id="_:tJ@Ut#F5ws5(QdD#18"><field name="COMMENT">Variablen überwachen</field>
                <next><block type="comment" id="Mlyo7L0-(5%m9dgr4!hg"><field name="COMMENT">Wenn sich eine ändert, startet Trigger</field>
                    <next><block type="on_ext" id="QiHPKverivP=8WkSGytV"><mutation items="5"></mutation>
                        <field name="CONDITION">ne</field>
    
                        <value name="OID0"><shadow type="field_oid" id="+,BC{lp_F!LRvdS~JX5?"><field name="oid">javascript.0.Sonne vormittag</field></shadow></value> 
                        <value name="OID1"><shadow type="field_oid" id="Yp8-^gw:4dzjsmj2:E|X"><field name="oid">javascript.0.Sonne nachmittag</field></shadow></value> 
                        <value name="OID2"><shadow type="field_oid" id="_L%Q;_E;przz^IB8H7ku"><field name="oid">javascript.0.Wind</field></shadow></value> 
                        <value name="OID3"><shadow type="field_oid" id="4%FQBEBoKZscIw(xCfvK"><field name="oid">javascript.0.Regen</field></shadow></value> 
                        <value name="OID4"><shadow type="field_oid" id="(YD{}gWxz15@1erb8dYW"><field name="oid">javascript.0.Temperatur</field></shadow></value> 
                        <statement name="STATEMENT"><block type="comment" id="KBTszICK@=[wDZb5;*~,"><field name="COMMENT">Rollo Automatik Vormittags</field>
                            <next><block type="comment" id="8ad`[k`vChnAS/G:n55C"><field name="COMMENT">Rollo runter</field>
                                <next><block type="controls_if" id="PE7b{%TNQd*9zP!jf^Vh"><value name="IF0"><block type="time_compare" id="wiw`_@oW7L;@Lqp}_Bbk"><mutation end_time="true"></mutation>
                                        <field name="OPTION">between</field>
                                        <field name="START_TIME">12:45</field>
                                        <field name="END_TIME">15:00</field></block></value> 
                                    <statement name="DO0"><block type="controls_if" id="-qm_GxNYec;/oVqc#/FG"><mutation elseif="1"></mutation>
                                        <value name="IF0"><block type="logic_operation" id="3MvSq_rbvziv0hO!pv4X" inline="false"><field name="OP">AND</field>
                                            <value name="A"><block type="logic_compare" id="(4xyzp46rX#2!bau(%nV"><field name="OP">EQ</field>
                                                <value name="A"><block type="get_value" id="xXd].0z/eJi_OfvmDFxA"><field name="ATTR">val</field>
                                                    <field name="OID">javascript.0.Sonne vormittag</field></block></value> 
                                                <value name="B"><block type="logic_boolean" id="yM7D*3,6*!%NyTfs.y0#"><field name="BOOL">TRUE</field></block></value></block></value> 
                                            <value name="B"><block type="logic_operation" id="S};QeEeRv)|[*|0@2)c8" inline="false"><field name="OP">AND</field>
                                                <value name="A"><block type="logic_compare" id="vu2.^T;[R(_T6hOXlr_."><field name="OP">EQ</field>
                                                    <value name="A"><block type="get_value" id="~F:Z},!7~ykNJwrOkbGO"><field name="ATTR">val</field>
                                                        <field name="OID">javascript.0.Temperatur</field></block></value> 
                                                    <value name="B"><block type="logic_boolean" id="aM_V+TG|fstf69LZO525"><field name="BOOL">TRUE</field></block></value></block></value> 
                                                <value name="B"><block type="logic_operation" id="_=4D??A;0FI8ra-O(0F?" inline="false"><field name="OP">AND</field>
                                                    <value name="A"><block type="logic_compare" id="[PHCg{Ie(#.YcDNAWXmd"><field name="OP">EQ</field>
                                                        <value name="A"><block type="get_value" id="8{ERfH|U})t=s3IU#^13"><field name="ATTR">val</field>
                                                            <field name="OID">javascript.0.Wind</field></block></value> 
                                                        <value name="B"><block type="text" id="um}}z7,tc/4!Hi@tah*5"><field name="TEXT">Kein Wind</field></block></value></block></value> 
                                                    <value name="B"><block type="logic_compare" id="LMn!w9FZvoVEuwl%D6mY"><field name="OP">EQ</field>
                                                        <value name="A"><block type="get_value" id="2%;WPqm*uJ|_WvU=(n|D"><field name="ATTR">val</field>
                                                            <field name="OID">javascript.0.Regen</field></block></value> 
                                                        <value name="B"><block type="logic_boolean" id="u,L[}8Jtx4Cc-;-ZZSdj"><field name="BOOL">FALSE</field></block></value></block></value></block></value></block></value></block></value> 
                                        <statement name="DO0"><block type="timeouts_cleartimeout" id="~}{/Ke;zWRs*|29FD;^`"><field name="NAME">rollo vormittag hoch</field>
                                            <next><block type="timeouts_settimeout" id="T}#8)DPS~6z/0K{(zJuZ"><field name="NAME">timeout Rollo vormittag runter</field>
                                                <field name="DELAY">2</field>
                                                <field name="UNIT">min</field>
                                                <statement name="STATEMENT"><block type="controls_if" id="q/)rtF35i@Xv2F=;]Iqj"><value name="IF0"><block type="logic_operation" id="*X`dQPE`f%%-B3@k+DJ." inline="false"><field name="OP">AND</field>
                                                        <value name="A"><block type="logic_compare" id="otcq/KN#l(cJsZRfdh]%"><field name="OP">EQ</field>
                                                            <value name="A"><block type="get_value" id="j#I:xz+vB,Sa=n].e[w."><field name="ATTR">val</field>
                                                                <field name="OID">javascript.0.Sonne vormittag</field></block></value> 
                                                            <value name="B"><block type="logic_boolean" id="Qq4l_|`rdoTiycyoIa-8"><field name="BOOL">TRUE</field></block></value></block></value> 
                                                        <value name="B"><block type="logic_operation" id="!Xz/Tv,S7BXPcQD5sYz}" inline="false"><field name="OP">AND</field>
                                                            <value name="A"><block type="logic_compare" id="*7z[Z|;k.%cGkc8=9__f"><field name="OP">EQ</field>
                                                                <value name="A"><block type="get_value" id="/FoDQ*IQR(F~C(3klDhH"><field name="ATTR">val</field>
                                                                    <field name="OID">javascript.0.Temperatur</field></block></value> 
                                                                <value name="B"><block type="logic_boolean" id="?I+NJ-hkSzhqAubTzKpB"><field name="BOOL">TRUE</field></block></value></block></value> 
                                                            <value name="B"><block type="logic_operation" id="0XTlJZv=A:@.RUX`+xK," inline="false"><field name="OP">AND</field>
                                                                <value name="A"><block type="logic_compare" id="!9RHUQ?0cx(aAzKed=^b"><field name="OP">EQ</field>
                                                                    <value name="A"><block type="get_value" id="m#+kbM5c:NLIU?6FVnzO"><field name="ATTR">val</field>
                                                                        <field name="OID">javascript.0.Wind</field></block></value> 
                                                                    <value name="B"><block type="text" id="j]Fp^P|OKPUNJ}i?aWiw"><field name="TEXT">Kein Wind</field></block></value></block></value> 
                                                                <value name="B"><block type="logic_compare" id="(zY_O^yD_EJH6.HGzMfC"><field name="OP">EQ</field>
                                                                    <value name="A"><block type="get_value" id="OiGGRpAy}P1u2^0g3ohK"><field name="ATTR">val</field>
                                                                        <field name="OID">javascript.0.Regen</field></block></value> 
                                                                    <value name="B"><block type="logic_boolean" id="s?V/;Ams?GK#5Ak!GaN0"><field name="BOOL">FALSE</field></block></value></block></value></block></value></block></value></block></value> 
                                                    <statement name="DO0"><block type="controls_if" id="2C_;cBna5MA0KX:d7W[Z"><value name="IF0"><block type="logic_compare" id="o0E{x9{3_F5Pu7]2)Ny`"><field name="OP">GT</field>
                                                            <value name="A"><block type="get_value" id="O*bY@=(A9JVKR5?_b#zt"><field name="ATTR">val</field>
                                                                <field name="OID">hm-rpc.0.JEQ0299861.1.LEVEL</field></block></value> 
                                                            <value name="B"><block type="text" id="bAd6iS3:QTbdXKZ(Gm4@"><field name="TEXT">2</field></block></value></block></value> 
                                                        <statement name="DO0"><block type="control" id="E0FqB.vmqN)0oxR3i8Tl"><mutation delay_input="false"></mutation>
                                                            <field name="OID">hm-rpc.0.BidCoS-RF.15.PRESS_SHORT</field>
                                                            <field name="WITH_DELAY">FALSE</field>
                                                            <value name="VALUE"><block type="logic_boolean" id="*o*giSZH_/A33/dtxt1M"><field name="BOOL">TRUE</field></block></value> 
                                                            <next><block type="debug" id="_/q;4w4IIxw)vN12fc,0"><field name="Severity">log</field>
                                                                <value name="TEXT"><shadow type="text" id="?Hj,KRuyA#BUy`)g(pDz"><field name="TEXT">***Rollo vormittag runter</field></shadow></value></block></next></block></statement> 
                                                        <next><block type="controls_if" id="da_(t)1H+*[|uObdu^7E"><value name="IF0"><block type="logic_compare" id="@1{B?Sr;8on}:0~Z/bv}"><field name="OP">GT</field>
                                                                <value name="A"><block type="get_value" id="92TuOd8vS[yojxAkXsdz"><field name="ATTR">val</field>
                                                                    <field name="OID">hm-rpc.0.JEQ0299851.1.LEVEL</field></block></value> 
                                                                <value name="B"><block type="text" id=":Ky@O(uLcK*h5cE|MRl4"><field name="TEXT">2</field></block></value></block></value> 
                                                            <statement name="DO0"><block type="control" id="OhJ*jMYtH]-,vuf7J0Nj"><mutation delay_input="false"></mutation>
                                                                <field name="OID">hm-rpc.0.BidCoS-RF.17.PRESS_SHORT</field>
                                                                <field name="WITH_DELAY">FALSE</field>
                                                                <value name="VALUE"><block type="logic_boolean" id="T58k4CuSjyRb#}@QqaZN"><field name="BOOL">TRUE</field></block></value></block></statement></block></next></block></statement></block></statement></block></next></block></statement> 
                                        <value name="IF1"><block type="logic_operation" id="vJ5:~jZO:NC(Pd96O(;G" inline="false"><field name="OP">OR</field>
                                            <value name="A"><block type="logic_compare" id="Ad!8`?NG.(OL.g_odN~o"><field name="OP">EQ</field>
                                                <value name="A"><block type="get_value" id="S7/gkd+O%sL!3genk)cI"><field name="ATTR">val</field>
                                                    <field name="OID">javascript.0.Sonne vormittag</field></block></value> 
                                                <value name="B"><block type="logic_boolean" id="cV7C3CPU?!!gNIn%QV9z"><field name="BOOL">FALSE</field></block></value></block></value> 
                                            <value name="B"><block type="logic_compare" id="G2+kr0haz~Ox4Vo!EM)W"><field name="OP">EQ</field>
                                                <value name="A"><block type="get_value" id="5io?01yhTDr)?mdJJ_F2"><field name="ATTR">val</field>
                                                    <field name="OID">javascript.0.Temperatur</field></block></value> 
                                                <value name="B"><block type="logic_boolean" id="2^[cXK3WpM)m8XR{oyk("><field name="BOOL">FALSE</field></block></value></block></value></block></value> 
                                        <statement name="DO1"><block type="timeouts_cleartimeout" id="Mjl{H_9sTe[P(_7,VBnN"><field name="NAME">timeout Rollo vormittag runter</field>
                                            <next><block type="timeouts_settimeout" id="?0iD9}*T9:9/%vN%)!r]"><field name="NAME">timeout rollo vormittag hoch</field>
                                                <field name="DELAY">5</field>
                                                <field name="UNIT">min</field>
                                                <statement name="STATEMENT"><block type="comment" id="oaDOVEV9`{g3RKT)aHQ2"><field name="COMMENT">Rollo vormittag hoch</field>
                                                    <next><block type="controls_if" id="FcNEyO_Z11Ce7C=:!(}S"><value name="IF0"><block type="logic_operation" id="zS}/%ym4_1Z*Hl7P_5JW" inline="false"><field name="OP">AND</field>
                                                            <value name="A"><block type="logic_compare" id="tOT:^|;vdkZ9v/{*1/Kr"><field name="OP">EQ</field>
                                                                <value name="A"><block type="get_value" id="[D}eHU4Yahb-p,ar^5F2"><field name="ATTR">val</field>
                                                                    <field name="OID">javascript.0.Sonne vormittag</field></block></value> 
                                                                <value name="B"><block type="logic_boolean" id="VmlrqRhpWk~p{Y^#/?r@"><field name="BOOL">FALSE</field></block></value></block></value> 
                                                            <value name="B"><block type="logic_compare" id="f*}_1;3,:iqoO[l.3?}Q"><field name="OP">EQ</field>
                                                                <value name="A"><block type="get_value" id=".(P=.~ll??lL@o~hw=dv"><field name="ATTR">val</field>
                                                                    <field name="OID">javascript.0.Temperatur</field></block></value> 
                                                                <value name="B"><block type="logic_boolean" id="EZ/ve5Y2|x^;X#NN}lES"><field name="BOOL">FALSE</field></block></value></block></value></block></value> 
                                                        <statement name="DO0"><block type="controls_if" id="Ikr|]3GS7cUr1l-!`~}`"><value name="IF0"><block type="logic_compare" id="~6U1U.`obRseMnyazi!n"><field name="OP">LT</field>
                                                                <value name="A"><block type="get_value" id="Z3^aVRk+QqhVuP4k0TZn"><field name="ATTR">val</field>
                                                                    <field name="OID">hm-rpc.0.JEQ0299861.1.LEVEL</field></block></value> 
                                                                <value name="B"><block type="text" id="n,!VeekwVG~sM94[XNQN"><field name="TEXT">99</field></block></value></block></value> 
                                                            <statement name="DO0"><block type="control" id="|s@Eet(_I#Q9o(yH}a1-"><mutation delay_input="false"></mutation>
                                                                <field name="OID">hm-rpc.0.BidCoS-RF.14.PRESS_SHORT</field>
                                                                <field name="WITH_DELAY">FALSE</field>
                                                                <value name="VALUE"><block type="logic_boolean" id=";I`bgCeW)=yB0|zr/3G,"><field name="BOOL">TRUE</field></block></value> 
                                                                <next><block type="debug" id="aW#DciwZNc9w%K}AjQ]U"><field name="Severity">log</field>
                                                                    <value name="TEXT"><shadow type="text" id="Tg8;)d7uK2wltZucmF[l"><field name="TEXT">***Rollo vormittag hoch</field></shadow></value></block></next></block></statement> 
                                                            <next><block type="controls_if" id="Zg^9xF`u;g67wy8/U@To"><value name="IF0"><block type="logic_compare" id="!Ar%r9;J+0}x)E5}ZE`Y"><field name="OP">LT</field>
                                                                    <value name="A"><block type="get_value" id="-[3W?T{(ij8b`9-5OQrn"><field name="ATTR">val</field>
                                                                        <field name="OID">hm-rpc.0.JEQ0299851.1.LEVEL</field></block></value> 
                                                                    <value name="B"><block type="text" id="T@LFM75gL}gt3-LjhRl,"><field name="TEXT">99</field></block></value></block></value> 
                                                                <statement name="DO0"><block type="control" id="Xzb5[el97QU~kgep1wCC"><mutation delay_input="false"></mutation>
                                                                    <field name="OID">hm-rpc.0.BidCoS-RF.16.PRESS_SHORT</field>
                                                                    <field name="WITH_DELAY">FALSE</field>
                                                                    <value name="VALUE"><block type="logic_boolean" id="(V5s4MZvm7i;rUo#W{Zd"><field name="BOOL">TRUE</field></block></value></block></statement></block></next></block></statement></block></next></block></statement></block></next></block></statement></block></statement> 
                                    <next><block type="comment" id="WebbG)%):f^o3IOrXx9k"><field name="COMMENT">Rollo Automatik Nachmittags</field>
                                        <next><block type="comment" id="*v7W|OD.Y(0IB%Uz2N0O"><field name="COMMENT">Rollo runter</field>
                                            <next><block type="controls_if" id="`1r57@w,vq.]_)1URYw{"><value name="IF0"><block type="time_compare" id="mv#=V=^xD_3#5K7@0,;#"><mutation end_time="true"></mutation>
                                                    <field name="OPTION">between</field>
                                                    <field name="START_TIME">15:01</field>
                                                    <field name="END_TIME">22:00</field></block></value> 
                                                <statement name="DO0"><block type="controls_if" id="06]icFPv.|4I]5RZFVxK"><mutation elseif="1"></mutation>
                                                    <value name="IF0"><block type="logic_operation" id="%JLXvkH!H]F!S/wjx~wC" inline="false"><field name="OP">AND</field>
                                                        <value name="A"><block type="logic_compare" id="Bb;9]KvdUlEyzxrIXb1:"><field name="OP">EQ</field>
                                                            <value name="A"><block type="get_value" id="vnK_E/VE]9[ca}v28HKz"><field name="ATTR">val</field>
                                                                <field name="OID">javascript.0.Sonne nachmittag</field></block></value> 
                                                            <value name="B"><block type="logic_boolean" id="F@Y#j%Mie~w7nL=F1i|!"><field name="BOOL">TRUE</field></block></value></block></value> 
                                                        <value name="B"><block type="logic_operation" id="EuMu#c3~{hb}Qf^5C~dM" inline="false"><field name="OP">AND</field>
                                                            <value name="A"><block type="logic_compare" id="=M`hZ/bd^,dTzI.C;~77"><field name="OP">EQ</field>
                                                                <value name="A"><block type="get_value" id="9WHeiTYXI:.5O0F,y4vH"><field name="ATTR">val</field>
                                                                    <field name="OID">javascript.0.Temperatur</field></block></value> 
                                                                <value name="B"><block type="logic_boolean" id="@=TAutx,+7j3#;Z#m#~D"><field name="BOOL">TRUE</field></block></value></block></value> 
                                                            <value name="B"><block type="logic_operation" id="F]]pQKq8!;^N!RS|q-DD" inline="false"><field name="OP">AND</field>
                                                                <value name="A"><block type="logic_compare" id="*7_=PW:A3NV[19A61SQd"><field name="OP">EQ</field>
                                                                    <value name="A"><block type="get_value" id="lOI6siE#eqgO^G;6LOTS"><field name="ATTR">val</field>
                                                                        <field name="OID">javascript.0.Wind</field></block></value> 
                                                                    <value name="B"><block type="text" id="2W0SO-0/%;;1tj_g*J(~"><field name="TEXT">Kein Wind</field></block></value></block></value> 
                                                                <value name="B"><block type="logic_compare" id="Xu]tK/#?vK+Q~#R+Jc@2"><field name="OP">EQ</field>
                                                                    <value name="A"><block type="get_value" id="cg/u.?5ei[TT7,abYD2m"><field name="ATTR">val</field>
                                                                        <field name="OID">javascript.0.Regen</field></block></value> 
                                                                    <value name="B"><block type="logic_boolean" id="Mr*(#Lx14PQ`YS2aWN,="><field name="BOOL">FALSE</field></block></value></block></value></block></value></block></value></block></value> 
                                                    <statement name="DO0"><block type="timeouts_cleartimeout" id="X5u-BUdw8MX^)SUh9F{7"><field name="NAME">Rollo nachmittag hoch</field>
                                                        <next><block type="timeouts_settimeout" id="1^)pOzA#RdD9/VQ!Soh6"><field name="NAME">Rollo nachmittag runter</field>
                                                            <field name="DELAY">2</field>
                                                            <field name="UNIT">min</field>
                                                            <statement name="STATEMENT"><block type="controls_if" id="Lx3s/gzfzb;qB!{GM[gY"><value name="IF0"><block type="logic_operation" id=".eB^#@yULPVpr}R`Dm|t" inline="false"><field name="OP">AND</field>
                                                                    <value name="A"><block type="logic_compare" id="}gX_z*%m4c0xn]7,Vy*x"><field name="OP">EQ</field>
                                                                        <value name="A"><block type="get_value" id="z]F5:Fc#=tFf21@3z,J?"><field name="ATTR">val</field>
                                                                            <field name="OID">javascript.0.Sonne nachmittag</field></block></value> 
                                                                        <value name="B"><block type="logic_boolean" id="88~~+=HtNg4esSgwsda,"><field name="BOOL">TRUE</field></block></value></block></value> 
                                                                    <value name="B"><block type="logic_operation" id="~qp}s)_QK@sa~iXf(yZQ" inline="false"><field name="OP">AND</field>
                                                                        <value name="A"><block type="logic_compare" id="=hBREHB0KFI,)e`~BCpC"><field name="OP">EQ</field>
                                                                            <value name="A"><block type="get_value" id="~mPKvt-7Dhbk#UY7`{lK"><field name="ATTR">val</field>
                                                                                <field name="OID">javascript.0.Temperatur</field></block></value> 
                                                                            <value name="B"><block type="logic_boolean" id="s%3-knhlS-x_{uYNS_16"><field name="BOOL">TRUE</field></block></value></block></value> 
                                                                        <value name="B"><block type="logic_operation" id="VPQ7XoUWt5#0ryH4eeFr" inline="false"><field name="OP">AND</field>
                                                                            <value name="A"><block type="logic_compare" id="EdGc+P0x@R)ff[o?NQx5"><field name="OP">EQ</field>
                                                                                <value name="A"><block type="get_value" id=".HV4ZH0m-cr:g_%6o`5T"><field name="ATTR">val</field>
                                                                                    <field name="OID">javascript.0.Wind</field></block></value> 
                                                                                <value name="B"><block type="text" id="{%X]2BeEbcHR[6K2QTfM"><field name="TEXT">Kein Wind</field></block></value></block></value> 
                                                                            <value name="B"><block type="logic_compare" id="s3=q2q{xt4ZEO0Psl^(!"><field name="OP">EQ</field>
                                                                                <value name="A"><block type="get_value" id="[hoXpLD;!X}V/20:a2+/"><field name="ATTR">val</field>
                                                                                    <field name="OID">javascript.0.Regen</field></block></value> 
                                                                                <value name="B"><block type="logic_boolean" id="e6X+9VfXH@e@F`dWHE=C"><field name="BOOL">FALSE</field></block></value></block></value></block></value></block></value></block></value> 
                                                                <statement name="DO0"><block type="controls_if" id="cmE{`w9X:d6z~U(;h)q2"><value name="IF0"><block type="logic_compare" id="}=t1L@V75YROUx76UtJI"><field name="OP">GT</field>
                                                                        <value name="A"><block type="get_value" id="(-6;[Tvq`yFSRfRQ)fl}"><field name="ATTR">val</field>
                                                                            <field name="OID">hm-rpc.0.JEQ0299861.1.LEVEL</field></block></value> 
                                                                        <value name="B"><block type="text" id="e6IT6bR~(kd2lU2kVwxg"><field name="TEXT">2</field></block></value></block></value> 
                                                                    <statement name="DO0"><block type="control" id="rK5dtkmDK*?o6+RNY!m`"><mutation delay_input="false"></mutation>
                                                                        <field name="OID">hm-rpc.0.BidCoS-RF.15.PRESS_SHORT</field>
                                                                        <field name="WITH_DELAY">FALSE</field>
                                                                        <value name="VALUE"><block type="logic_boolean" id="DB6`gmw]VEd;qu(#2Q6u"><field name="BOOL">TRUE</field></block></value> 
                                                                        <next><block type="debug" id="fL%g,ko,Dt)KCSec1Mxs"><field name="Severity">log</field>
                                                                            <value name="TEXT"><shadow type="text" id="9NmAa%Ys0-|_#,l3n?{d"><field name="TEXT">Rollo Nachmittag runter</field></shadow></value></block></next></block></statement> 
                                                                    <next><block type="controls_if" id="=(kBQkiVxmc{IK@/BnN["><value name="IF0"><block type="logic_compare" id="HW^lkc(tnxE9sXz3el7H"><field name="OP">GT</field>
                                                                            <value name="A"><block type="get_value" id="F(VWL|VR}uTz}AH-KkJR"><field name="ATTR">val</field>
                                                                                <field name="OID">hm-rpc.0.JEQ0299851.1.LEVEL</field></block></value> 
                                                                            <value name="B"><block type="text" id=";I?@e#;0`~G,k:C2l/fn"><field name="TEXT">2</field></block></value></block></value> 
                                                                        <statement name="DO0"><block type="control" id="s9V*Poyqeda}hCDiq8Rg"><mutation delay_input="false"></mutation>
                                                                            <field name="OID">hm-rpc.0.BidCoS-RF.17.PRESS_SHORT</field>
                                                                            <field name="WITH_DELAY">FALSE</field>
                                                                            <value name="VALUE"><block type="logic_boolean" id="AGAWadFeku(FsPj@{7!T"><field name="BOOL">TRUE</field></block></value></block></statement></block></next></block></statement></block></statement> 
                                                            <next><block type="comment" id="O{YbPLA=F^.HAH{7yxQ9"><field name="COMMENT">Rollo hoch</field></block></next></block></next></block></statement> 
                                                    <value name="IF1"><block type="logic_operation" id="deYn|DwA4C6WDszez|N?" inline="false"><field name="OP">OR</field>
                                                        <value name="A"><block type="logic_compare" id="3otRi*ZZ^.DmSmOsCTd5"><field name="OP">EQ</field>
                                                            <value name="A"><block type="get_value" id="GNsq}r-(XJSOr#`TkcpG"><field name="ATTR">val</field>
                                                                <field name="OID">javascript.0.Sonne nachmittag</field></block></value> 
                                                            <value name="B"><block type="logic_boolean" id="sL%{*o]@E}F?hUE5;5dt"><field name="BOOL">FALSE</field></block></value></block></value> 
                                                        <value name="B"><block type="logic_compare" id="!5R4nTl9UB9Gu2I|!.r_"><field name="OP">EQ</field>
                                                            <value name="A"><block type="get_value" id="iC^b3Q8DO:ajXg=5n9l2"><field name="ATTR">val</field>
                                                                <field name="OID">javascript.0.Temperatur</field></block></value> 
                                                            <value name="B"><block type="logic_boolean" id="oqzjT`0qWZaBrhW;Zj;X"><field name="BOOL">FALSE</field></block></value></block></value></block></value> 
                                                    <statement name="DO1"><block type="timeouts_cleartimeout" id="^HI|eFvbUmSTO1n2|Bf0"><field name="NAME">Rollo nachmittag runter</field>
                                                        <next><block type="timeouts_settimeout" id="Benx4L,ZBQGc;)MHknHr"><field name="NAME">Rollo nachmittag hoch</field>
                                                            <field name="DELAY">5</field>
                                                            <field name="UNIT">min</field>
                                                            <statement name="STATEMENT"><block type="controls_if" id="eeMI^qg1j/uDpWqAIFXQ"><value name="IF0"><block type="logic_operation" id="*BWPJXNg^kr3XJ{9?z^8" inline="false"><field name="OP">OR</field>
                                                                    <value name="A"><block type="logic_compare" id=",r5Nx.DEwfuDX^8C|^c}"><field name="OP">EQ</field>
                                                                        <value name="A"><block type="get_value" id="V|;op3(W{NQ?#b{W0bD;"><field name="ATTR">val</field>
                                                                            <field name="OID">javascript.0.Sonne nachmittag</field></block></value> 
                                                                        <value name="B"><block type="logic_boolean" id="H]h{/}~#8r~@|CVRjp},"><field name="BOOL">FALSE</field></block></value></block></value> 
                                                                    <value name="B"><block type="logic_compare" id="oMHk,}k^DBafPb99od(s"><field name="OP">EQ</field>
                                                                        <value name="A"><block type="get_value" id="DJv1TOA+,4P#o*x`lM!3"><field name="ATTR">val</field>
                                                                            <field name="OID">javascript.0.Temperatur</field></block></value> 
                                                                        <value name="B"><block type="logic_boolean" id="?f~fnHgEgxgpbid}!;q1"><field name="BOOL">FALSE</field></block></value></block></value></block></value> 
                                                                <statement name="DO0"><block type="controls_if" id="BrJx+TOrgC5::]2b6fbQ"><value name="IF0"><block type="logic_compare" id="9CZ5^vv#K7S*_ZK7igZ4"><field name="OP">LT</field>
                                                                        <value name="A"><block type="get_value" id="@gEto~k2Uj|q@{ey{Tce"><field name="ATTR">val</field>
                                                                            <field name="OID">hm-rpc.0.JEQ0299861.1.LEVEL</field></block></value> 
                                                                        <value name="B"><block type="text" id="628tYGpk@^xz0j%8gjg1"><field name="TEXT">99</field></block></value></block></value> 
                                                                    <statement name="DO0"><block type="control" id="[.MirZd!YIUo`BuD`xh("><mutation delay_input="false"></mutation>
                                                                        <field name="OID">hm-rpc.0.BidCoS-RF.14.PRESS_SHORT</field>
                                                                        <field name="WITH_DELAY">FALSE</field>
                                                                        <value name="VALUE"><block type="logic_boolean" id=":h7Xrq;];:`O~hOcdFnM"><field name="BOOL">TRUE</field></block></value> 
                                                                        <next><block type="debug" id="wZGbdZc`b{R[dNh*fI4K"><field name="Severity">log</field>
                                                                            <value name="TEXT"><shadow type="text" id="B;0bWlKqmT,NEPc1X1i;"><field name="TEXT">Rollo Nachmittag hoch</field></shadow></value></block></next></block></statement> 
                                                                    <next><block type="controls_if" id="zS@pM}dP.?Jj;g[l7Nl3"><value name="IF0"><block type="logic_compare" id="_ujq6r5ysA7(d^7bI=1:"><field name="OP">LT</field>
                                                                            <value name="A"><block type="get_value" id=";*Ch*E/(v7s,CiFe1TKY"><field name="ATTR">val</field>
                                                                                <field name="OID">hm-rpc.0.JEQ0299851.1.LEVEL</field></block></value> 
                                                                            <value name="B"><block type="text" id="9OU@m_5Y|FF]Mwi~Jf*n"><field name="TEXT">99</field></block></value></block></value> 
                                                                        <statement name="DO0"><block type="control" id="+r4~Y6o!J(VNB`CJ,RJ|"><mutation delay_input="false"></mutation>
                                                                            <field name="OID">hm-rpc.0.BidCoS-RF.16.PRESS_SHORT</field>
                                                                            <field name="WITH_DELAY">FALSE</field>
                                                                            <value name="VALUE"><block type="logic_boolean" id="wEUqg4[?ueXUUhE=ikAG"><field name="BOOL">TRUE</field></block></value></block></statement></block></next></block></statement></block></statement></block></next></block></statement></block></statement></block> 
      <block type="procedures_defnoreturn" id="(+6Mz{Je,L}7n^5*t*wO" x="-362" y="4463"><field name="NAME">InitVariablen</field>
        <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
        <statement name="STACK"><block type="control" id="XPIeH#R01T5KR1EP?ge6"><mutation delay_input="false"></mutation>
            <field name="OID">javascript.0.Temperatur</field>
            <field name="WITH_DELAY">FALSE</field>
            <value name="VALUE"></value> 
            <next><block type="control" id="p?`r0r!rP+l-DL?HVpBE"><mutation delay_input="false"></mutation>
                <field name="OID">javascript.0.Wind</field>
                <field name="WITH_DELAY">FALSE</field>
                <value name="VALUE"></value> 
                <next><block type="control" id="d:8g!N[q^)G{PlAhNaz-"><mutation delay_input="false"></mutation>
                    <field name="OID">javascript.0.Regen</field>
                    <field name="WITH_DELAY">FALSE</field>
                    <value name="VALUE"></value> 
                    <next><block type="control" id="aE`7d?_]rfE]MD%PNtMy"><mutation delay_input="false"></mutation>
                        <field name="OID">javascript.0.Sonne nachmittag</field>
                        <field name="WITH_DELAY">FALSE</field>
                        <value name="VALUE"></value> 
                        <next><block type="control" id="}j@12@xg3yqq;4gXl%rl"><mutation delay_input="false"></mutation>
                            <field name="OID">javascript.0.Sonne vormittag</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE"></value></block></next></block></next></block></next></block></next></block></statement></block></next></block></next></block></next></block></next></block></next></block></statement></block></next></block></next></block></next></block></next></block></xml> 
    

    Woran könnte die Fehlermeldung liegen?

    Ohne die Timeouts fahren die Rollos ständig rauf und runter. Ohne die Timeouts hatte das Script jedoch keine Fehlermeldung angezeigt.


    io.broker @ debian @ virtualbox @ Windows 10 Pro / Node 18.17.1, npm 9.6.7 / CCU3 / IR.Trans Server / Daslight 4 / Mobotix IP Cams / Qnap NAS / Sonos /

    Mein Rolladen - Blockly: https://forum.iobroker.net/topic/6442/das-ultimative-markisen-rolladen-blockly-script

    1 Antwort Letzte Antwort
    0
    • smileS Offline
      smileS Offline
      smile
      schrieb am zuletzt editiert von
      #25

      Problem gelöst - man sollte in Timouts keine Leerzeichen verwenden!

      Habe es jetzt geändert in z.B. "timeout_Rollo_vormittag_runter" dann taucht der Fehler nicht mehr auf.

      Jetzt mal schauen wie sich das in der Praxis verhält 8-)


      io.broker @ debian @ virtualbox @ Windows 10 Pro / Node 18.17.1, npm 9.6.7 / CCU3 / IR.Trans Server / Daslight 4 / Mobotix IP Cams / Qnap NAS / Sonos /

      Mein Rolladen - Blockly: https://forum.iobroker.net/topic/6442/das-ultimative-markisen-rolladen-blockly-script

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

        @smile:

        Problem gelöst - man sollte in Timouts keine Leerzeichen verwenden! `
        Hätte ich nicht gewusst.

        Aber ich benutze grundsätzlich keine Leerzeichen und Umlaute in Variablen und Gerätenamen.

        Funktioniert heutzutage meistens….aber nicht immer. ;)

        Grüße

        Rantanplan

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

        1 Antwort Letzte Antwort
        0
        • paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von
          #27

          ` > Javascript-Variablennamen

          bestehen aus Buchstaben (wobei auch ein Unterstrich "_" als Buchstabe zählt),

          aus Ziffern,

          dürfen keine Leerzeichen enthalten und keine Bindestriche enthalten,

          dürfen nicht mit einer Zahl, einem Sonderzeichen oder Satzzeichen anfangen,

          dürfen nicht mit einem Schlüsselwort übereinstimmen.

          Das erste Zeichen muss ein Buchstabe oder ein Unterstrich sein. `

          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 Antwort Letzte Antwort
          0
          • BuZZyB Offline
            BuZZyB Offline
            BuZZy
            schrieb am zuletzt editiert von
            #28

            Ich würde einen Mittelwert über eine bestimmte Zeit bilden für die Helligkeit..

            z.B.: Wenn die durchschnittliche Helligkeit über 15 Minuten gerechnet > 205 dann ausfahren..

            Beim Einfahren würde ich sicherheitshalber dann nochmal vor dem "Einfahrbefehl" prüfen ob die aktuelle Helligkeit auch < 205 ist.

            So kannst du z.B. wenn die ersten 10 Minuten "die Helligkeit dunkel ist", und nur die letzten 5 Minuten die Sonne schien - der Durchschnittswert über 15 Minuten gesehen also unter 205 ist nochmal gegensteuern und die Beschattung ausgefahren lassen.

            Gruß

            1 Antwort Letzte Antwort
            0
            • smileS Offline
              smileS Offline
              smile
              schrieb am zuletzt editiert von
              #29

              So, heute gibt es ein kleines Zwischenfeedback:

              Fakt 1: Ohne Timeouts bei der Abfrage von Helligkeit funktioniert es nicht. Die Markisen fahren dann dauernd rauf und runter.

              Momentan ist ein Timout für das runterfahren auf 2 Minuten gestellt und für das Hochfahren auf 4 Minuten. Nach Ende des Timeouts kommt eine weitere Abfrage ob die Werte noch "wahr" sind:
              3472_rollo_autonmatik_timeouts___stop_timeouts.png

              Fakt 2: Die Auslöung von Aktionen über "Falls Objekt ID wurde geändert" funktioniert für alle Werte gut, außer für REGEN. Hier kam der Wert schon so manches mal zu spät. Das heißt Regen kam, Regensensor war true, Aber das Script hat dies nur verzögert umgesetzt. Warum auch immer.

              Ich werde bei der zeitkritischen Regen-Abfrage doch nochmal die "Abfrage nach Zeitplan" und dann 2-sekündlich oder so ausprobieren (müssen)

              Fakt 3: Der Helligkeitssensor alleine wie angesprochen taugt nur bedingt zur korrekten Erfassung von "Sonnenenergie". Denn Hell ist es auch wenn es bewölkt, 16° ist, und Herbst, und man eigentlich die Sonne zur Energiegewinnung nutzen möchte.

              Hier habe ich bereits zusätzliche Faktoren wie die Abfrage der Nachttemperatur (Als Einschätzung welche Jahreszeit wir gerade haben) mit eingefügt, aber das alleine scheint noch nicht zu reichen.

              Aktuell muss ich gucken ob man so etwas wie Sonnenwerte von umliegenden Wetterstationen abfragen kann und diese mit einbinden kann.

              Alternativ mal den Homematic Bewegungsmelder als Helligkeitsmelder testen.

              @BuZZy:

              Ich würde einen Mittelwert über eine bestimmte Zeit bilden für die Helligkeit..

              z.B.: Wenn die durchschnittliche Helligkeit über 15 Minuten gerechnet > 205 dann ausfahren..

              Beim Einfahren würde ich sicherheitshalber dann nochmal vor dem "Einfahrbefehl" prüfen ob die aktuelle Helligkeit auch < 205 ist.

              So kannst du z.B. wenn die ersten 10 Minuten "die Helligkeit dunkel ist", und nur die letzten 5 Minuten die Sonne schien - der Durchschnittswert über 15 Minuten gesehen also unter 205 ist nochmal gegensteuern und die Beschattung ausgefahren lassen.

              Gruß `
              Danke, das würde durchaus Schwankungen ausgleichen, das funktioniert jedoch mit den Timeouts auch ganz gut, es löst jedoch nicht das angesprochene Problem mit der Helligkeit / Sonnenenergie, welche nicht dasselbe ist.

              Ich halte euch auf dem Laufenden :-)


              io.broker @ debian @ virtualbox @ Windows 10 Pro / Node 18.17.1, npm 9.6.7 / CCU3 / IR.Trans Server / Daslight 4 / Mobotix IP Cams / Qnap NAS / Sonos /

              Mein Rolladen - Blockly: https://forum.iobroker.net/topic/6442/das-ultimative-markisen-rolladen-blockly-script

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

                @smile:

                Ohne Timeouts bei der Abfrage von Helligkeit funktioniert es nicht. Die Markisen fahren dann dauernd rauf und runter.

                Momentan ist ein Timout für das runterfahren auf 2 Minuten gestellt und für das Hochfahren auf 4 Minuten. Nach Ende des Timeouts kommt eine weitere Abfrage ob die Werte noch "wahr" sind: `
                Denkanstoß, wurde an anderer Stelle auch Badewannenprinzip getauft und für Anwesenheitserkennung verwendet:

                Du hast eine Zählervariable für die Helligkeit.

                In regelmäßigen Abständen (z.B. jede Minute) wird die Helligkeit gemessen und wenn diese über einem bestimmten Wert liegt, die Zählervariable um eine bestimmte Menge erhöht. Allerdings nur bis zu einem Maximalwert (Badewanne voll)

                Ebenfalls in regelmäßigen Abständen wird von dieser Zählervariable ein fixer Wert abgezogen (Abfluss ist offen), sofern die Variable > 0 ist.

                Anhand des Wertes der Zählervariable wird dann entschieden, ob es hell ist oder nicht:

                0 ... A | ... | B ... max
                 dunkel    ?    hell
                

                Das erfordert natürlich tuning der Parameter, kann aber dein System träge genug machen, dass es nicht bei jeder Wolke denkt es ist dunkel und trotzdem zügig reagiert.

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

                1 Antwort Letzte Antwort
                0
                • smileS Offline
                  smileS Offline
                  smile
                  schrieb am zuletzt editiert von
                  #31

                  Ja dieses Prinzip ist mir bekannt, da es vorher in IP Symcon exakt so bei mir lief.

                  Habe es mit Blockly allerdings nicht hinbekommen. Im Verlauf dieses Threads siehst du dass ich es schonmal mit "Schleifen" versucht habe, hat aber nicht so richtig geklappt.

                  Gesendet von meinem SM-N910F mit Tapatalk


                  io.broker @ debian @ virtualbox @ Windows 10 Pro / Node 18.17.1, npm 9.6.7 / CCU3 / IR.Trans Server / Daslight 4 / Mobotix IP Cams / Qnap NAS / Sonos /

                  Mein Rolladen - Blockly: https://forum.iobroker.net/topic/6442/das-ultimative-markisen-rolladen-blockly-script

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

                    Bin nicht der Blockly-Typ, aber ich schätze du brauchst einen zweiten Block (im gleichen Skript) mit Schedule (nicht Schleife), der die Helligkeit überwacht und die Berechnung der Badewannenvariable (bzw. State) übernimmt.

                    In deinem Hauptblock überwachst du dann diesen State statt direkt die Helligkeit und reagierst entsprechend. Dürfte auch den Hauptblock etwas vereinfachen.

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

                    1 Antwort Letzte Antwort
                    0
                    • smileS Offline
                      smileS Offline
                      smile
                      schrieb am zuletzt editiert von
                      #33

                      @AlCalzone:

                      Bin nicht der Blockly-Typ, aber ich schätze du brauchst einen zweiten Block (im gleichen Skript) mit Schedule (nicht Schleife), der die Helligkeit überwacht und die Berechnung der Badewannenvariable (bzw. State) übernimmt.

                      In deinem Hauptblock überwachst du dann diesen State statt direkt die Helligkeit und reagierst entsprechend. Dürfte auch den Hauptblock etwas vereinfachen. `
                      Ja Schleife war wohl nicht der richtige Ansatz, grundsätzlich meinte ich auch eine zeitgesteuerte Abfrage, sowas hatte ich in IPSymcon.

                      Das sehe ich auch als vorteilhafter an - verkleinert den Hauptblock und ist auch eindeutiger mit der zeitgesteuerten Abfrage.

                      Komme momentan mit den Timeouts gut klar, aber hab trotzdem interessehalber gerade mal überlegt wie man das in Blockly machen könnte.

                      So vielleicht?
                      filename="Helligkeitszähler mit Zeitplan.png" index="0">~~
                      Dabei ist mir aufgefallen dass ich nur einen Baustein "erhöhe um" finden konnte und nicht "verringere um"…

                      Kann man mit "-1" arbeiten?


                      io.broker @ debian @ virtualbox @ Windows 10 Pro / Node 18.17.1, npm 9.6.7 / CCU3 / IR.Trans Server / Daslight 4 / Mobotix IP Cams / Qnap NAS / Sonos /

                      Mein Rolladen - Blockly: https://forum.iobroker.net/topic/6442/das-ultimative-markisen-rolladen-blockly-script

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

                        @smile:

                        Kann man mit "-1" arbeiten? `
                        2 + -1 = 1

                        Du kannst aber auch so arbeiten.
                        147_beispiel.png

                        Ich hatte Dir schon am Anfang empfohlen alles in mehrere Blocklys zu packen. :roll:

                        Grüße

                        Rantanplan

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

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

                          @AlCalzone:

                          Denkanstoß, wurde an anderer Stelle auch Badewannenprinzip getauft und für Anwesenheitserkennung verwendet:

                          Du hast eine Zählervariable für die Helligkeit.

                          In regelmäßigen Abständen (z.B. jede Minute) wird die Helligkeit gemessen und wenn diese über einem bestimmten Wert liegt, die Zählervariable um eine bestimmte Menge erhöht. Allerdings nur bis zu einem Maximalwert (Badewanne voll)

                          Ebenfalls in regelmäßigen Abständen wird von dieser Zählervariable ein fixer Wert abgezogen (Abfluss ist offen), sofern die Variable > 0 ist.

                          Anhand des Wertes der Zählervariable wird dann entschieden, ob es hell ist oder nicht:

                          0 ... A | ... | B ... max
                           dunkel    ?    hell
                          

                          Das erfordert natürlich tuning der Parameter, kann aber dein System träge genug machen, dass es nicht bei jeder Wolke denkt es ist dunkel und trotzdem zügig reagiert. `

                          Hier gibts das "Badewannenprinzip"

                          http://forum.iobroker.net/viewtopic.php … zip#p45130

                          Grüße

                          Rantanplan

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

                          1 Antwort Letzte Antwort
                          0
                          • smileS Offline
                            smileS Offline
                            smile
                            schrieb am zuletzt editiert von
                            #36

                            Ich habe das Badewannenprinzip in Blockly für die Rolladensteuerung / Markisensteuerung nun mal umgesetzt und test es aus.

                            Läuft nun weitegehend mit extern angelegten Variablen.

                            So sieht die Abfrage aus:
                            3472_sonnendaten-badewanne.png

                            Und so sieht dann das separate Blockly zum Ausfahren der Rolläden aus (deutlich aufgeräumter und ohne Timeouts):
                            3472_beschattung_ausfahren_neu.png

                            Danke nochmal für die weiterführende Hilfe.

                            Es sind also nun 3 separate Blockly Scripte. Im Anhang zum Download falls das schon jemanden weiterhelfen kann.

                            Nächste Ziele sind:

                            • Temperaturdifferenz-Messung hinter einer Glasscheibe um die Sonnenergie genauer zu erfassen (als Alternative zur Helligkeit)

                            • Energiegewinnungs - Modus: Wetterdaten vorhersehen und dadurch intelligent die Wohnung mit Sonnenenergie "aufladen", falls es Abends/Nachts wieder sehr kühl wird. Dementsprechend soll die Beschattung natürlich anders reagieren.


                            io.broker @ debian @ virtualbox @ Windows 10 Pro / Node 18.17.1, npm 9.6.7 / CCU3 / IR.Trans Server / Daslight 4 / Mobotix IP Cams / Qnap NAS / Sonos /

                            Mein Rolladen - Blockly: https://forum.iobroker.net/topic/6442/das-ultimative-markisen-rolladen-blockly-script

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

                              @smile:

                              Nächste Ziele sind:

                              • Temperaturdifferenz-Messung hinter einer Glasscheibe um die Sonnenergie genauer zu erfassen (als Alternative zur Helligkeit)

                              • Energiegewinnungs - Modus: Wetterdaten vorhersehen und dadurch intelligent die Wohnung mit Sonnenenergie "aufladen", falls es Abends/Nachts wieder sehr kühl wird. Dementsprechend soll die Beschattung natürlich anders reagieren. `
                                Na, mit Kleinigkeiten gibst Du Dich nicht ab. ;)

                              Man wächst mit den Aufgaben :D

                              Falls Du Hilfe brauchst…..hier gibt es Helfer.

                              Grüße

                              Rantanplan

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

                              1 Antwort Letzte Antwort
                              0
                              • smileS Offline
                                smileS Offline
                                smile
                                schrieb am zuletzt editiert von
                                #38

                                So ich war heute zusammen mit einem guten Freund wieder fleißig und habe das Beschattungs Script weiter optimiert.

                                Hinzugekommen ist nun eine Abfrage, ob ich Sonnenergie nutzen oder Sonnenenergie aussperren möchte.

                                Dies unterscheidet sich je nach Jahreszeit, Außentemperatur und Innentemperatur.

                                Wenn es also Herbst / Winter ist, und die Temperaturen bereits kühl sind (Ich messe Nachts um 3h die Außentemperatur), dann sollen die Beschattungen so viel wie möglich eingefahren bleiben, damit Sonnenenergie reinkommt. Umgekehrt im Sommer, sollen sie die Energie aussperren.
                                3472_energie-gewinnung-durch-sonne.png

                                Dieses Script hat aber ebenfalls noch Einfluss auf die Steuerung der Fußbodenheizung und der Klimaanlage.

                                So soll die Klimaanlage natürlich nicht laufen, wenn ich Energie gewinnen möchte. Umgekehrt soll die Fußbodenheizung nicht laufen, wenn ich Energie aussperren möchte.

                                Die Vorhersage der Sonnenenergie nutze ich nur für das Heizungsscript. Beschattung bleibt davon vorerst unberührt.


                                io.broker @ debian @ virtualbox @ Windows 10 Pro / Node 18.17.1, npm 9.6.7 / CCU3 / IR.Trans Server / Daslight 4 / Mobotix IP Cams / Qnap NAS / Sonos /

                                Mein Rolladen - Blockly: https://forum.iobroker.net/topic/6442/das-ultimative-markisen-rolladen-blockly-script

                                1 Antwort Letzte Antwort
                                0
                                • smileS Offline
                                  smileS Offline
                                  smile
                                  schrieb am zuletzt editiert von smile
                                  #39

                                  Das Beschattungs - Blockly ist vorerst fertig und wurde nun recht ausgiebig getestet, es läuft sehr gut.

                                  Es sind 5 Scripte die damit verknüpft sind.

                                  Hier mal ein Überblück wie es läuft:

                                  1. Gewünschte Innentemperatur festlegen und anhand dessen auswerten ob diese auch hinhaut oder es zu warm oder zu kühl ist.
                                  3472_wunsch-temperatur_feststellen.png

                                  2. Anhand von Jahreszeit, und der vorher beschriebenen Wunschtemperatur festlegen ob Energie gewonnen oder Energie ausgesperrt werden soll.
                                  3472_energie-gewinnungs-modus.png

                                  3. Alle relevanten Wetterdaten außen erfassen (Sonne, Wind, Regen) - Sonne nach Badewannen Prinzip, also mit Verzögerung damit die Beschattung nicht ständig rein und raus geht.
                                  3472_klimadaten_au_en_erfassen.png

                                  4. Die Beschattung / Rolläden anhand der vorher erfassten Werte intelligent nach Sonne (verzögert) runtefahren oder reinfahren.
                                  3472_beschattung_automatik_sonne.png

                                  5. Die Beschattung bei kritischen Werten wie Regen oder Wind sofort (ohne Verzögerung) einfahren.
                                  3472_beschattung_automatik_wind_regen.png

                                  In den txt Dateien sind die entsprechenden Blockly Exporte.

                                  Viel Spaß damit, ich hoffe dem einen oder anderen kann es helfen.

                                  Vielen Dank an rantanplan an die Unterstützung sowie alle anderen.

                                  Dieselben Klimadaten werden auch genutzt, um die Fußbodenheizung zu steuern. Siehe hier:
                                  Fußbodenheizung

                                  Stand: 21.04.2019

                                  • Sonnenwärme_Vorschau.txt
                                  • Solltemperatur-Blockly.txt
                                  • Klimadaten außen erfassen.txt
                                  • Energiemodus_Heizperiode_Blockly.txt
                                  • Beschattung_Automatik_Regen-Wind_Export.txt
                                  • Beschattung_Automatik_Sonne_Export.txt

                                  io.broker @ debian @ virtualbox @ Windows 10 Pro / Node 18.17.1, npm 9.6.7 / CCU3 / IR.Trans Server / Daslight 4 / Mobotix IP Cams / Qnap NAS / Sonos /

                                  Mein Rolladen - Blockly: https://forum.iobroker.net/topic/6442/das-ultimative-markisen-rolladen-blockly-script

                                  M 1 Antwort Letzte Antwort
                                  1
                                  • S Offline
                                    S Offline
                                    simpixo
                                    schrieb am zuletzt editiert von
                                    #40

                                    @smile:

                                    3. Alle relevanten Wetterdaten außen erfassen (Sonne, Wind, Regen) - Sonne nach Badewannen Prinzip, also mit Verzögerung damit die Beschattung nicht ständig rein und raus geht.

                                    Klimadaten außen erfassen.png `

                                    Hallo Smile

                                    Welche Wetterstation benutzt du hier genau?

                                    Gruß

                                    Adrian

                                    1 Antwort Letzte Antwort
                                    0
                                    • smileS Offline
                                      smileS Offline
                                      smile
                                      schrieb am zuletzt editiert von
                                      #41

                                      @simpixo:

                                      @smile:

                                      3. Alle relevanten Wetterdaten außen erfassen (Sonne, Wind, Regen) - Sonne nach Badewannen Prinzip, also mit Verzögerung damit die Beschattung nicht ständig rein und raus geht.

                                      Klimadaten außen erfassen.png Welche Wetterstation benutzt du hier genau?
                                      Für Wind und Helligkeit nehme ich die Homematic https://www.elv.de/homematic-funk-kombisensor.html?refid=SEM_30003?refid=SEM_30003&gclid=Cj0KCQjw1JbPBRCrARIsAOKj2Pm9K26HTuisSm53V9Wv-rZnurMx5b0tCHj5J7ZrW6dbFkEaf235htgaArRxEALw_wcB

                                      Helligkeit funktioniert jedoch nur bedingt, denn hell ist es nach der Wetterstation auch wenn es hell ist aber die Sonne nicht wirklich scheint.

                                      Deshalb gibt es die vielen Verknüpfungen zu den Temperaturen. Zusammen mit dem Script läuft das aber sehr gut so.

                                      Für Regensensorik kannst du das Ding jedoch knicken, da nehme ich einen normalen https://www.conrad.de/de/regenmelder-1-st-regme-12-v-b-b-thermo-technik-l-x-b-x-h-85-x-85-x-60-mm-187621.html?gclid=Cj0KCQjw1JbPBRCrARIsAOKj2PnrI5m3oiqBtBXm-XfZl6PmDYKt_3nPqHuv76bErSJH9NTycpl-r6caAnx2EALw_wcB&insert_kz=VQ&ef_id=WPIDoQAABAgKVK-e:20171017204736:s welcher einen umgebauten Homematic Fensterkontakt schaltet.

                                      Geht sicherlich auch mit dem Homematic Regensensor, jedoch hatte ich mit dem auch mal Zuverlässigkeits-Probleme, daher diese Lösung.


                                      io.broker @ debian @ virtualbox @ Windows 10 Pro / Node 18.17.1, npm 9.6.7 / CCU3 / IR.Trans Server / Daslight 4 / Mobotix IP Cams / Qnap NAS / Sonos /

                                      Mein Rolladen - Blockly: https://forum.iobroker.net/topic/6442/das-ultimative-markisen-rolladen-blockly-script

                                      1 Antwort Letzte Antwort
                                      0
                                      • M Offline
                                        M Offline
                                        muckel
                                        schrieb am zuletzt editiert von
                                        #42

                                        Hallo Smile!

                                        Könntest du bitte dein "Klimadatenaußenerfassen.txt" nochmals hochladen.

                                        Ich bekomme einen Import Error.

                                        Danke im Voraus

                                        Liebe Grüße

                                        1 Antwort Letzte Antwort
                                        0
                                        • smileS Offline
                                          smileS Offline
                                          smile
                                          schrieb am zuletzt editiert von Negalein
                                          #43

                                          Na klar, hier kommt es nochmal neu, als TXT und hier als Code.

                                           <xml xmlns="http://www.w3.org/1999/xhtml"><block type="schedule" id="!LT)#j}MPt[UXkpKSgaH" x="-938" y="-3312"><field name="SCHEDULE">*/2 * * * *</field>
                                              <statement name="STATEMENT"><block type="comment" id="14}z2@Y0`tb8dLOwV4_#"><field name="COMMENT">Abfrage Sonne Vormittag</field>
                                                  <next><block type="controls_if" id="t7yCKxf:b#O:O#.mTcm0"><value name="IF0"><block type="logic_compare" id="E9e]QBwXCT`1y|{v?=zU"><field name="OP">GT</field>
                                                          <value name="A"><block type="get_value" id="}l*BsjV(Ly;R`TLR#ygG"><field name="ATTR">val</field>
                                                              <field name="OID">hm-rpc.0.NEQ1100463.1.BRIGHTNESS</field></block></value> 
                                                          <value name="B"><block type="math_number" id="T1]py,8=Mr}?*wc;deL["><field name="NUM">201</field></block></value></block></value> 
                                                      <statement name="DO0"><block type="controls_if" id=",X,[,Ro9G0)12.^Yeq:A"><value name="IF0"><block type="logic_compare" id=")k5uB?0~qs-.DY}l?M;R"><field name="OP">LT</field>
                                                              <value name="A"><block type="get_value" id="d?r7,5KPl4Qr~nqK!wEt"><field name="ATTR">val</field>
                                                                  <field name="OID">javascript.0.Count_Sonne</field></block></value> 
                                                              <value name="B"><block type="math_number" id="SZs8Ov!bkM1]G,smqrlm"><field name="NUM">5</field></block></value></block></value> 
                                                          <statement name="DO0"><block type="control" id="bQ={G~at|PPqm1zl;v0Q"><mutation delay_input="false"></mutation>
                                                              <field name="OID">javascript.0.Count_Sonne</field>
                                                              <field name="WITH_DELAY">FALSE</field>
                                                              <value name="VALUE"><block type="math_arithmetic" id=",g5B[~3az!AUK-_u62U?"><field name="OP">ADD</field>
                                                                  <value name="A"><shadow type="math_number" id="nMRH}I.JPiB^vn+{ztFe"><field name="NUM">1</field></shadow> 
                                                                    <block type="get_value" id="1%}X`^lx8/5G-w|~G5.N"><field name="ATTR">val</field>
                                                                      <field name="OID">javascript.0.Count_Sonne</field></block></value> 
                                                                  <value name="B"><shadow type="math_number" id="H0[*xZdkWMmLt;QlM4TC"><field name="NUM">2.5</field></shadow></value></block></value></block></statement></block></statement> 
                                                      <next><block type="controls_if" id="T2nEKl1l~:gpzIn[cw[v"><value name="IF0"><block type="logic_compare" id="|(zjR2;f.0+Y0yq#Vu1n"><field name="OP">LT</field>
                                                              <value name="A"><block type="get_value" id="H~nQMQ|b{.QVj,_KO{J0"><field name="ATTR">val</field>
                                                                  <field name="OID">hm-rpc.0.NEQ1100463.1.BRIGHTNESS</field></block></value> 
                                                              <value name="B"><block type="math_number" id="aVcOp`H|]2Gs}WWoG_Ee"><field name="NUM">200</field></block></value></block></value> 
                                                          <statement name="DO0"><block type="controls_if" id=")vIke:QSu)U1=r|a=F%s"><value name="IF0"><block type="logic_compare" id="U|zezrE^_Dz{i6nHr2~d"><field name="OP">GT</field>
                                                                  <value name="A"><block type="get_value" id="BQV.=S!0wA};O_tq0CW?"><field name="ATTR">val</field>
                                                                      <field name="OID">javascript.0.Count_Sonne</field></block></value> 
                                                                  <value name="B"><block type="math_number" id="ppO!s_(~|oC1srIenB=o"><field name="NUM">0</field></block></value></block></value> 
                                                              <statement name="DO0"><block type="control" id="94#BMt`V1=p,y0BjWeI("><mutation delay_input="false"></mutation>
                                                                  <field name="OID">javascript.0.Count_Sonne</field>
                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                  <value name="VALUE"><block type="math_arithmetic" id="uM)sV9;Cl-MTQpXSciKY"><field name="OP">MINUS</field>
                                                                      <value name="A"><shadow type="math_number" id="nMRH}I.JPiB^vn+{ztFe"><field name="NUM">1</field></shadow> 
                                                                        <block type="get_value" id="Fj,a#Sbc|JLHamxdvjI]"><field name="ATTR">val</field>
                                                                          <field name="OID">javascript.0.Count_Sonne</field></block></value> 
                                                                      <value name="B"><shadow type="math_number" id="@LXQipW3MJ`k!7@cBJ)!"><field name="NUM">1</field></shadow></value></block></value></block></statement></block></statement> 
                                                          <next><block type="controls_if" id="U;DVO:.?Qb5i:xucQN4,"><value name="IF0"><block type="logic_operation" id="6^}f7@j6oR5;Z=m5qo7e" inline="false"><field name="OP">AND</field>
                                                                  <value name="A"><block type="logic_compare" id=";yu9X~U@gCG7]hu|N+CC"><field name="OP">GTE</field>
                                                                      <value name="A"><block type="get_value" id="HCT!-SFF#?V4C}hZ6vw["><field name="ATTR">val</field>
                                                                          <field name="OID">javascript.0.Count_Sonne</field></block></value> 
                                                                      <value name="B"><block type="math_number" id=";9[S+4G!!ZGP.yn}dGBQ"><field name="NUM">5</field></block></value></block></value> 
                                                                  <value name="B"><block type="logic_compare" id="a}qpvtwrGWZ{mq@RwZu:"><field name="OP">EQ</field>
                                                                      <value name="A"><block type="get_value" id="sJz4!qJ~2ymGA`+0jhI~"><field name="ATTR">val</field>
                                                                          <field name="OID">javascript.0.Sonne vormittag</field></block></value> 
                                                                      <value name="B"><block type="logic_boolean" id="qGsul^y.sa|pxCU4`ftF"><field name="BOOL">FALSE</field></block></value></block></value></block></value> 
                                                              <statement name="DO0"><block type="control" id="LzY2y7N|];DFJhpsr*GF"><mutation delay_input="false"></mutation>
                                                                  <field name="OID">javascript.0.Sonne vormittag</field>
                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                  <value name="VALUE"><block type="logic_boolean" id="X6}CStLs/,agz1r*)Qg4"><field name="BOOL">TRUE</field></block></value> 
                                                                  <next><block type="debug" id="aNXkXdXVkN)/q6~g?iuw"><field name="Severity">log</field>
                                                                      <value name="TEXT"><shadow type="text" id="]E;|kP1P~%KjOa|~1_.G"><field name="TEXT">***Sonne vormittag da</field></shadow></value></block></next></block></statement> 
                                                              <next><block type="controls_if" id="Nld)#@oM(7bQXsl!ka:R"><value name="IF0"><block type="logic_operation" id="%JN-]kpYmfVO/+K:bNvA" inline="false"><field name="OP">AND</field>
                                                                      <value name="A"><block type="logic_compare" id="|}I14xq7E0k!Iu`.pIdL"><field name="OP">LTE</field>
                                                                          <value name="A"><block type="get_value" id=":H):wT:?1qh_g#m}qiqr"><field name="ATTR">val</field>
                                                                              <field name="OID">javascript.0.Count_Sonne</field></block></value> 
                                                                          <value name="B"><block type="math_number" id="UdE!|W5[=RsEw@hYdQ]Q"><field name="NUM">0</field></block></value></block></value> 
                                                                      <value name="B"><block type="logic_compare" id="1-G~.wFPh1:/T(..%h!D"><field name="OP">EQ</field>
                                                                          <value name="A"><block type="get_value" id="QD.,}wQQC[3yb!X]TWbR"><field name="ATTR">val</field>
                                                                              <field name="OID">javascript.0.Sonne vormittag</field></block></value> 
                                                                          <value name="B"><block type="logic_boolean" id="2uioy}D_@l(5VPPD8SRu"><field name="BOOL">TRUE</field></block></value></block></value></block></value> 
                                                                  <statement name="DO0"><block type="control" id="oLwRwTiMa_VHDTJ?Wuwc"><mutation delay_input="false"></mutation>
                                                                      <field name="OID">javascript.0.Sonne vormittag</field>
                                                                      <field name="WITH_DELAY">FALSE</field>
                                                                      <value name="VALUE"><block type="logic_boolean" id="j)8?TDqL#ob(}3%?AU*%"><field name="BOOL">FALSE</field></block></value> 
                                                                      <next><block type="debug" id="CBvLn^xu0jpzRT0PSG|k"><field name="Severity">log</field>
                                                                          <value name="TEXT"><shadow type="text" id="vnYEqh.!ihiX`PcU@,Y-"><field name="TEXT">***Sonne vormittag weg</field></shadow></value></block></next></block></statement> 
                                                                  <next><block type="comment" id="fb!tZTKi(lMo~rlxd[IR"><field name="COMMENT">Abfrage Sonne Nachmittag</field>
                                                                      <next><block type="controls_if" id="9,jPH9@.DKY16K3zQoNE"><value name="IF0"><block type="logic_compare" id="v;=}p)8kn2@)O~M/]A={"><field name="OP">GT</field>
                                                                              <value name="A"><block type="get_value" id="alF%|DBVoLMpo~rf?EvA"><field name="ATTR">val</field>
                                                                                  <field name="OID">hm-rpc.0.NEQ1100463.1.BRIGHTNESS</field></block></value> 
                                                                              <value name="B"><block type="math_number" id="=Z+hc=SJZH/N1H;aPIe{"><field name="NUM">195</field></block></value></block></value> 
                                                                          <statement name="DO0"><block type="controls_if" id="Rn]IyQC/]bnFt9:-C8U;"><value name="IF0"><block type="logic_compare" id="Xz_~.8YsCRExFR;U9KRT"><field name="OP">LT</field>
                                                                                  <value name="A"><block type="get_value" id="8[3;*d31D4%_h%`*;@nh"><field name="ATTR">val</field>
                                                                                      <field name="OID">javascript.0.Count_Sonne_Nachmittag</field></block></value> 
                                                                                  <value name="B"><block type="math_number" id="_CL:TdIFx{!yFZaJ;uo;"><field name="NUM">5</field></block></value></block></value> 
                                                                              <statement name="DO0"><block type="control" id="9v;:)+2ug~n_3vW6Z);("><mutation delay_input="false"></mutation>
                                                                                  <field name="OID">javascript.0.Count_Sonne_Nachmittag</field>
                                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                                  <value name="VALUE"><block type="math_arithmetic" id="GHlZ:1_aW6U0LFp)Bz`5"><field name="OP">ADD</field>
                                                                                      <value name="A"><shadow type="math_number" id="nMRH}I.JPiB^vn+{ztFe"><field name="NUM">1</field></shadow> 
                                                                                        <block type="get_value" id="@%uiNy0n?7_jGQAX+(aG"><field name="ATTR">val</field>
                                                                                          <field name="OID">javascript.0.Count_Sonne_Nachmittag</field></block></value> 
                                                                                      <value name="B"><shadow type="math_number" id="1MiEb2r6ERxq{;`H+_m)"><field name="NUM">2.5</field></shadow></value></block></value></block></statement></block></statement> 
                                                                          <next><block type="controls_if" id="FY*_Ui+K?Wk)0L31xLTm"><value name="IF0"><block type="logic_compare" id="m5O5n}DG6r*)^MbgH8b:"><field name="OP">LT</field>
                                                                                  <value name="A"><block type="get_value" id="z4NGJ8pn(bXFs0^#UX78"><field name="ATTR">val</field>
                                                                                      <field name="OID">hm-rpc.0.NEQ1100463.1.BRIGHTNESS</field></block></value> 
                                                                                  <value name="B"><block type="math_number" id=")[.{^lnfj.l]5rXSO%-U"><field name="NUM">195</field></block></value></block></value> 
                                                                              <statement name="DO0"><block type="controls_if" id="?+_/[{bJo#j_%kd{v~sK"><value name="IF0"><block type="logic_compare" id="bScqjjgFCl9bqPD2MUU("><field name="OP">GT</field>
                                                                                      <value name="A"><block type="get_value" id="5;Oy]TqxrrJJoDm=;Cce"><field name="ATTR">val</field>
                                                                                          <field name="OID">javascript.0.Count_Sonne_Nachmittag</field></block></value> 
                                                                                      <value name="B"><block type="math_number" id="@5Y8?|+lE;[*42]tvDHq"><field name="NUM">0</field></block></value></block></value> 
                                                                                  <statement name="DO0"><block type="control" id="xnJb|G8@Sz6*PBqLLnk["><mutation delay_input="false"></mutation>
                                                                                      <field name="OID">javascript.0.Count_Sonne_Nachmittag</field>
                                                                                      <field name="WITH_DELAY">FALSE</field>
                                                                                      <value name="VALUE"><block type="math_arithmetic" id="I8YR}H|i|7!;g!#]vjeH"><field name="OP">MINUS</field>
                                                                                          <value name="A"><shadow type="math_number" id="nMRH}I.JPiB^vn+{ztFe"><field name="NUM">1</field></shadow> 
                                                                                            <block type="get_value" id="a=YMs9gocb/9RnNyP*Xv"><field name="ATTR">val</field>
                                                                                              <field name="OID">javascript.0.Count_Sonne_Nachmittag</field></block></value> 
                                                                                          <value name="B"><shadow type="math_number" id="tleKjpnRNcQjOlSG)WbU"><field name="NUM">1</field></shadow></value></block></value></block></statement></block></statement> 
                                                                              <next><block type="controls_if" id="Q)r2Sx5Gw:`c^ra8S)[C"><value name="IF0"><block type="logic_operation" id="%j?sZi`vo.U_DKQ;.zl_" inline="false"><field name="OP">AND</field>
                                                                                      <value name="A"><block type="logic_compare" id="rd4m7{aGCDkarRn!;k+~"><field name="OP">GTE</field>
                                                                                          <value name="A"><block type="get_value" id="PA5L-w89e%?[z2CNS]*:"><field name="ATTR">val</field>
                                                                                              <field name="OID">javascript.0.Count_Sonne_Nachmittag</field></block></value> 
                                                                                          <value name="B"><block type="math_number" id="QsfD{cOVBrbZS)dq!@KJ"><field name="NUM">5</field></block></value></block></value> 
                                                                                      <value name="B"><block type="logic_compare" id="-U;C[0TCY:JSci:1EO|%"><field name="OP">EQ</field>
                                                                                          <value name="A"><block type="get_value" id="6jKsQx:SCO2PjK1B,)QN"><field name="ATTR">val</field>
                                                                                              <field name="OID">javascript.0.Sonne nachmittag</field></block></value> 
                                                                                          <value name="B"><block type="logic_boolean" id="QP([z.q=LYDX?;%5?Zl("><field name="BOOL">FALSE</field></block></value></block></value></block></value> 
                                                                                  <statement name="DO0"><block type="control" id="7*RMi=_35%+8X(vJ,i)P"><mutation delay_input="false"></mutation>
                                                                                      <field name="OID">javascript.0.Sonne nachmittag</field>
                                                                                      <field name="WITH_DELAY">FALSE</field>
                                                                                      <value name="VALUE"><block type="logic_boolean" id="k:G~C8G86vQ%a[gG4bSL"><field name="BOOL">TRUE</field></block></value> 
                                                                                      <next><block type="debug" id="v]?)h87yvRgZd+?nxF!4"><field name="Severity">log</field>
                                                                                          <value name="TEXT"><shadow type="text" id="?k{[GWyML4z0xL{xS1z."><field name="TEXT">***Sonne nachmittag da</field></shadow></value></block></next></block></statement> 
                                                                                  <next><block type="controls_if" id="oEQ^2Vo.^6hSN:ugnkOK"><value name="IF0"><block type="logic_operation" id="vkqAJ]a=6vy+~Sov|m*i" inline="false"><field name="OP">AND</field>
                                                                                          <value name="A"><block type="logic_compare" id="`*!:.d30}Z-nP6pnAiY1"><field name="OP">LTE</field>
                                                                                              <value name="A"><block type="get_value" id="0@Gp*m|lpiL(*v5+4R#p"><field name="ATTR">val</field>
                                                                                                  <field name="OID">javascript.0.Count_Sonne_Nachmittag</field></block></value> 
                                                                                              <value name="B"><block type="math_number" id=";[@MC;+RFJk-Oj0;V8;6"><field name="NUM">0</field></block></value></block></value> 
                                                                                          <value name="B"><block type="logic_compare" id="O72bla=|L8Lz47WRf3:e"><field name="OP">EQ</field>
                                                                                              <value name="A"><block type="get_value" id="y^!LL.nCFF,9br.)Rcm/"><field name="ATTR">val</field>
                                                                                                  <field name="OID">javascript.0.Sonne nachmittag</field></block></value> 
                                                                                              <value name="B"><block type="logic_boolean" id="tb~+vPby]Xz2tHuq1tT8"><field name="BOOL">TRUE</field></block></value></block></value></block></value> 
                                                                                      <statement name="DO0"><block type="control" id="[dwzHn.nlns=7ZygD`P@"><mutation delay_input="false"></mutation>
                                                                                          <field name="OID">javascript.0.Sonne nachmittag</field>
                                                                                          <field name="WITH_DELAY">FALSE</field>
                                                                                          <value name="VALUE"><block type="logic_boolean" id="VM}`(BgB%}0MmBCvRqgK"><field name="BOOL">FALSE</field></block></value> 
                                                                                          <next><block type="debug" id="v1Y1=vjkx2#J^!NQ=ehf"><field name="Severity">log</field>
                                                                                              <value name="TEXT"><shadow type="text" id="=w9fhs[n;A41m}lAy@d%"><field name="TEXT">***Sonne nachmittag weg</field></shadow></value></block></next></block></statement></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></next></block></statement> 
                                              <next><block type="comment" id="aZ2ev/eW/hh(ON|#6QN^"><field name="COMMENT">Abfrage Temperatur Außen</field>
                                                  <next><block type="on_ext" id="7,z@].TfiSVhfV-NYgAZ"><mutation items="1"></mutation>
                                                      <field name="CONDITION">ne</field>
                                          
                                                      <value name="OID0"><shadow type="field_oid" id="rEjxbS*^`GP{J:6Zk553"><field name="oid">hm-rpc.0.NEQ1100463.1.TEMPERATURE</field></shadow></value> 
                                                      <statement name="STATEMENT"><block type="comment" id="R1b?TU=gt%1lDFGUTRn)"><field name="COMMENT">Aktuelle Temperatur</field>
                                                          <next><block type="controls_if" id="`5RefTXs(B)i#R%%E1+r"><mutation elseif="1"></mutation>
                                                              <value name="IF0"><block type="logic_compare" id="^!Fi,bdwG.XTSg#mm)yH"><field name="OP">GT</field>
                                                                  <value name="A"><block type="get_value" id="ja+8D%Wlq0Z?dzqP7r7l"><field name="ATTR">val</field>
                                                                      <field name="OID">hm-rpc.0.NEQ1100463.1.TEMPERATURE</field></block></value> 
                                                                  <value name="B"><block type="text" id="AxH|zsgkq.|Nw%6OK4Xg"><field name="TEXT">16.1</field></block></value></block></value> 
                                                              <statement name="DO0"><block type="control" id="nLH?R~{YL,5M3/;=^w7@"><mutation delay_input="false"></mutation>
                                                                  <field name="OID">javascript.0.Temperatur</field>
                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                  <value name="VALUE"><block type="logic_boolean" id="~frbMi?G%~[KjVCQ-#:i"><field name="BOOL">TRUE</field></block></value> 
                                                                  <next><block type="debug" id="J_c-+Z^^+ssKe[2HTa-:"><field name="Severity">log</field>
                                                                      <value name="TEXT"><shadow type="text" id="{!1DpB7lf1/u1z)X3tz!"><field name="TEXT">*** Außentemperatur warm</field></shadow></value></block></next></block></statement> 
                                                              <value name="IF1"><block type="logic_compare" id=")%4/VNgmmVHZ@flcpDFh"><field name="OP">LT</field>
                                                                  <value name="A"><block type="get_value" id="t}E`rI8k_N?,ouFpYa1w"><field name="ATTR">val</field>
                                                                      <field name="OID">hm-rpc.0.NEQ1100463.1.TEMPERATURE</field></block></value> 
                                                                  <value name="B"><block type="text" id="hD_oO]FIIY_v,w*8eMI0"><field name="TEXT">16</field></block></value></block></value> 
                                                              <statement name="DO1"><block type="control" id="2pVT?[TWw4Su!%e^w3YH"><mutation delay_input="false"></mutation>
                                                                  <field name="OID">javascript.0.Temperatur</field>
                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                  <value name="VALUE"><block type="logic_boolean" id="/C]Z54G(2bU.gKYeq:cn"><field name="BOOL">FALSE</field></block></value> 
                                                                  <next><block type="debug" id="*;ZY?GX1tOMSzB,qwXd%"><field name="Severity">log</field>
                                                                      <value name="TEXT"><shadow type="text" id="4N*fA3R=|9|YxDtLb!NI"><field name="TEXT">***Außentemperatur kühl</field></shadow></value></block></next></block></statement> 
                                                              <next><block type="comment" id="#:oxk@|p.dfdIqcqqtMY"><field name="COMMENT">Tiefsttemperatur Nachts</field>
                                                                  <next><block type="controls_if" id="UGkup1I3v^B1v31,]u-s"><value name="IF0"><block type="logic_operation" id="NA*SvxUv%,u]HPut*AR9"><field name="OP">AND</field>
                                                                          <value name="A"><block type="time_compare" id="Er]#dZmiT096wW?Bf;@p"><mutation end_time="false"></mutation>
                                                                              <field name="OPTION">==</field>
                                                                              <field name="START_TIME">03:00</field></block></value> 
                                                                          <value name="B"><block type="logic_compare" id="i[.mk2^Nv2w-:]NuGFZ7"><field name="OP">LT</field>
                                                                              <value name="A"><block type="get_value" id="U1;IyB`U_;])xa|fF?81"><field name="ATTR">val</field>
                                                                                  <field name="OID">hm-rpc.0.NEQ1100463.1.TEMPERATURE</field></block></value> 
                                                                              <value name="B"><block type="text" id=":sj!dItIB+HdPFfWezp8"><field name="TEXT">12</field></block></value></block></value></block></value> 
                                                                      <statement name="DO0"><block type="control" id="#d)Ys!x]f?=}=)1wG)0n"><mutation delay_input="false"></mutation>
                                                                          <field name="OID">javascript.0.AußenTemperaturNachts</field>
                                                                          <field name="WITH_DELAY">FALSE</field>
                                                                          <value name="VALUE"><block type="text" id="=q%:YM9^ft3S7M6`Ch?o"><field name="TEXT">kühl</field></block></value></block></statement> 
                                                                      <next><block type="controls_if" id="o2{Hec:.f-S[BCZH|~gL"><value name="IF0"><block type="logic_operation" id="qI%IjyS81C;gISX_2!hM"><field name="OP">AND</field>
                                                                              <value name="A"><block type="time_compare" id="A/7B+hk,Dfax:wPmP4g#"><mutation end_time="false"></mutation>
                                                                                  <field name="OPTION">==</field>
                                                                                  <field name="START_TIME">03:00</field></block></value> 
                                                                              <value name="B"><block type="logic_compare" id="/{zLh5VazNRP:o~!`xnc"><field name="OP">GT</field>
                                                                                  <value name="A"><block type="get_value" id="XMvp9MuKmmF*;bls@`~v"><field name="ATTR">val</field>
                                                                                      <field name="OID">hm-rpc.0.NEQ1100463.1.TEMPERATURE</field></block></value> 
                                                                                  <value name="B"><block type="text" id="|oZH`]kqc`P@+HG7kHTb"><field name="TEXT">12.1</field></block></value></block></value></block></value> 
                                                                          <statement name="DO0"><block type="control" id="B-wJtoVvzcQ{xt}G}tkq"><mutation delay_input="false"></mutation>
                                                                              <field name="OID">javascript.0.AußenTemperaturNachts</field>
                                                                              <field name="WITH_DELAY">FALSE</field>
                                                                              <value name="VALUE"><block type="text" id="=]jp5{l=];4+`A~b_=PO"><field name="TEXT">warm</field></block></value></block></statement></block></next></block></next></block></next></block></next></block></statement> 
                                                      <next><block type="comment" id="X*Ef!;L5GF/7suxDtmHD"><field name="COMMENT">Abfrage Wind</field>
                                                          <next><block type="on_ext" id="K(de=mCR#,!P*c6Y:F]S"><mutation items="1"></mutation>
                                                              <field name="CONDITION">ne</field>
                                          
                                                              <value name="OID0"><shadow type="field_oid" id="s3s()7EHK)ufjxJhKrTK"><field name="oid">hm-rpc.0.NEQ1100463.1.WIND_SPEED</field></shadow></value> 
                                                              <statement name="STATEMENT"><block type="controls_if" id="?~q|Q[OA!ba,KzH-=jeY"><value name="IF0"><block type="logic_compare" id=".z?EAXF3F-d-CSxY2oic"><field name="OP">GT</field>
                                                                      <value name="A"><block type="get_value" id="mVio*BnNs7bz[y*hr52W"><field name="ATTR">val</field>
                                                                          <field name="OID">hm-rpc.0.NEQ1100463.1.WIND_SPEED</field></block></value> 
                                                                      <value name="B"><block type="text" id="~F*TEA=B%;v?o`Glzmmn"><field name="TEXT">35,1</field></block></value></block></value> 
                                                                  <statement name="DO0"><block type="control" id="m1ose1GTtgx5,xbhYE`E"><mutation delay_input="false"></mutation>
                                                                      <field name="OID">javascript.0.Wind</field>
                                                                      <field name="WITH_DELAY">FALSE</field>
                                                                      <value name="VALUE"><block type="text" id="M[5|Az1s9ir+Ri[6u0~I"><field name="TEXT">Wind Stufe 1</field></block></value> 
                                                                      <next><block type="debug" id="xGS%P79ci%opn=P~W*{D"><field name="Severity">log</field>
                                                                          <value name="TEXT"><shadow type="text" id="5Fal!NoLDxP/kzteCYE["><field name="TEXT">***Wind Stufe 1</field></shadow></value></block></next></block></statement> 
                                                                  <next><block type="controls_if" id="!~;z[}n=~=33BH3MY..g"><value name="IF0"><block type="logic_compare" id="H}u1|Anm5-qyjjAczuiT"><field name="OP">GT</field>
                                                                          <value name="A"><block type="get_value" id="Cg0tip=_t/4@IVRl,9|g"><field name="ATTR">val</field>
                                                                              <field name="OID">hm-rpc.0.NEQ1100463.1.WIND_SPEED</field></block></value> 
                                                                          <value name="B"><block type="text" id="Y~dX9#A58W1!=CZ7WeoC"><field name="TEXT">43</field></block></value></block></value> 
                                                                      <statement name="DO0"><block type="control" id="X^5Z^z?Jpk(Z_[v8Ga8*"><mutation delay_input="false"></mutation>
                                                                          <field name="OID">javascript.0.Wind</field>
                                                                          <field name="WITH_DELAY">FALSE</field>
                                                                          <value name="VALUE"><block type="text" id="CmQA[F6/JfzL[f|U3YV("><field name="TEXT">Wind Stufe 2</field></block></value> 
                                                                          <next><block type="debug" id="5pK)Oi2{;w2yS6FS6l6["><field name="Severity">log</field>
                                                                              <value name="TEXT"><shadow type="text" id="^m9zf|8FHVGByI?;qxST"><field name="TEXT">***Wind Stufe 2</field></shadow></value></block></next></block></statement> 
                                                                      <next><block type="controls_if" id="w6|7v=Sdw-1,z{,Qhmzp"><value name="IF0"><block type="logic_compare" id="D]lT,xb:gj0V!n=VDAhw"><field name="OP">LT</field>
                                                                              <value name="A"><block type="get_value" id="]3W[C5iQ4,:~eRhBm^r)"><field name="ATTR">val</field>
                                                                                  <field name="OID">hm-rpc.0.NEQ1100463.1.TEMPERATURE</field></block></value> 
                                                                              <value name="B"><block type="text" id="UtpR5EoQ8rtjV]c{K(9|"><field name="TEXT">35</field></block></value></block></value> 
                                                                          <statement name="DO0"><block type="control" id=".jyso.,CdgX#u7~P)2uL"><mutation delay_input="false"></mutation>
                                                                              <field name="OID">javascript.0.Wind</field>
                                                                              <field name="WITH_DELAY">FALSE</field>
                                                                              <value name="VALUE"><block type="text" id="/{Z3me![Hs@YMz,EgEbn"><field name="TEXT">Kein Wind</field></block></value> 
                                                                              <next><block type="debug" id="zG}V({]JlgY*kwxkul%b"><field name="Severity">log</field>
                                                                                  <value name="TEXT"><shadow type="text" id="F{;!)tNl,dDm0m6.-nOv"><field name="TEXT">***Kein Wind</field></shadow></value></block></next></block></statement></block></next></block></next></block></statement> 
                                                              <next><block type="comment" id="v~MV?RP]n#U5m]8^_Ho)"><field name="COMMENT">Abfrage Regen</field>
                                                                  <next><block type="on_ext" id="FE`/TImiZzeZ~5P4+-OY"><mutation items="1"></mutation>
                                                                      <field name="CONDITION">ne</field>
                                          
                                                                      <value name="OID0"><shadow type="field_oid" id="rjL*~9[Rku7Pzi%ywqS]"><field name="oid">hm-rpc.0.LEQ1288980.1.STATE</field></shadow></value> 
                                                                      <statement name="STATEMENT"><block type="controls_if" id="%ts,q}!3,M-u3k^Wv3,w"><mutation elseif="1"></mutation>
                                                                          <value name="IF0"><block type="logic_compare" id="3bPUL*Hr,6(cM{.Ul2+b"><field name="OP">EQ</field>
                                                                              <value name="A"><block type="get_value" id="L{)XNNtIlztZlRhFprXO"><field name="ATTR">val</field>
                                                                                  <field name="OID">hm-rpc.0.LEQ1288980.1.STATE</field></block></value> 
                                                                              <value name="B"><block type="logic_boolean" id="_dPsLwjD?dvf79m}O4@1"><field name="BOOL">TRUE</field></block></value></block></value> 
                                                                          <statement name="DO0"><block type="timeouts_cleartimeout" id="{OwF~K}!PB|C3pWI^zp;"><field name="NAME">timeout_Regen</field>
                                                                              <next><block type="control" id="_B6ii=u^#FOQMKM0~ck)"><mutation delay_input="false"></mutation>
                                                                                  <field name="OID">javascript.0.Regen</field>
                                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                                  <value name="VALUE"><block type="logic_boolean" id="9h%14idCSJ)Zww-~VoJ2"><field name="BOOL">TRUE</field></block></value> 
                                                                                  <next><block type="debug" id="w0=BI[3GhX|IVGuCu?s2"><field name="Severity">log</field>
                                                                                      <value name="TEXT"><shadow type="text" id=";6k6%@4D%_Fl`Dys81cD"><field name="TEXT">***Regen</field></shadow></value> 
                                                                                      <next><block type="controls_if" id="?u/jDEjfj7Jz.Nffr|Ko" disabled="true"><value name="IF0"><block type="logic_compare" id="j?2(k.k].sH,:^;%bDb^"><field name="OP">EQ</field>
                                                                                              <value name="A"><block type="variables_get" id="kWrmCdA4:oL`|zk|-=r}"><field name="VAR">Regen_push</field></block></value> 
                                                                                              <value name="B"><block type="logic_boolean" id="d3xBP}2*L.B(Q@at_OEm"><field name="BOOL">FALSE</field></block></value></block></value> 
                                                                                          <statement name="DO0"><block type="pushover" id="ei(z_l.-T34cdCAO7P=a"><field name="INSTANCE">.0</field>
                                          
                                                                                              <field name="PRIORITY">0</field>
                                                                                              <field name="LOG">debug</field>
                                                                                              <value name="MESSAGE"><shadow type="text" id="[N{KFm+TArs_OPQ`pTGE"><field name="TEXT">Es regnet in Braak</field></shadow></value> 
                                                                                              <next><block type="variables_set" id="T^[+6)ppO/AMk6q_+mI~"><field name="VAR">Regen_push</field>
                                                                                                  <value name="VALUE"><block type="logic_boolean" id="17O.3-Yj=2|--omd;vfZ"><field name="BOOL">TRUE</field></block></value></block></next></block></statement></block></next></block></next></block></next></block></statement> 
                                                                          <value name="IF1"><block type="logic_compare" id="`Pz^)jiw,=aT:2*;=j1S"><field name="OP">EQ</field>
                                                                              <value name="A"><block type="get_value" id="@GTwWN{#a;X%^tKd0o^x"><field name="ATTR">val</field>
                                                                                  <field name="OID">hm-rpc.0.LEQ1288980.1.STATE</field></block></value> 
                                                                              <value name="B"><block type="logic_boolean" id="oUHbso]%wb,5_31.)eKO"><field name="BOOL">FALSE</field></block></value></block></value> 
                                                                          <statement name="DO1"><block type="timeouts_settimeout" id="b_MyrWSc%gTiH|Oa1eNc"><field name="NAME">timeout_Regen</field>
                                                                              <field name="DELAY">7</field>
                                                                              <field name="UNIT">min</field>
                                                                              <statement name="STATEMENT"><block type="control" id="-!3H62_/4}:7WB,a8~A("><mutation delay_input="false"></mutation>
                                                                                  <field name="OID">javascript.0.Regen</field>
                                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                                  <value name="VALUE"><block type="logic_boolean" id="l(KF5-BVSs)G+CuMx6I_"><field name="BOOL">FALSE</field></block></value> 
                                                                                  <next><block type="variables_set" id="-L2Ka4fIJAE^v+XVwn1+" disabled="true"><field name="VAR">Regen_push</field>
                                                                                      <value name="VALUE"><block type="logic_boolean" id="MH6_{#OOip0Zg3*o^YR_"><field name="BOOL">FALSE</field></block></value> 
                                                                                      <next><block type="debug" id="Y~M4~W8vo7O{HKJ,u*,u"><field name="Severity">log</field>
                                                                                          <value name="TEXT"><shadow type="text" id="6Y5_mH6_ar=m!SXSs];+"><field name="TEXT">***Kein Regen</field></shadow></value></block></next></block></next></block></statement></block></statement></block></statement></block></next></block></next></block></next></block></next></block></next></block></next></block> 
                                            <block type="create" id="}=Y-O-vl`*2YuCcv_F^*" x="-2788" y="4237"><field name="NAME">Sonne vormittag</field>
                                              <statement name="STATEMENT"><block type="create" id="4434IyAnZn93df[8IL)B"><field name="NAME">Sonne nachmittag</field>
                                                  <statement name="STATEMENT"><block type="create" id="08D_xiK+@q-Cwp#{9j|4"><field name="NAME">Temperatur</field>
                                                      <statement name="STATEMENT"><block type="create" id="c6,QVVu?U2CJiT*E=Pp*"><field name="NAME">Wind</field>
                                                          <statement name="STATEMENT"><block type="create" id="1At9e*9_D.Nm?V/plCkh"><field name="NAME">Regen</field></block></statement></block></statement></block></statement></block></statement></block> 
                                            <block type="create" id="q.YGV]LYAqg[6=A)Pv/+" x="-2748" y="4317"><field name="NAME">Sonne vormittag</field>
                                              <statement name="STATEMENT"><block type="create" id="DWxso}y[DrtacF4Q]@Up"><field name="NAME">Sonne nachmittag</field>
                                                  <statement name="STATEMENT"><block type="create" id="mEc#HPl1?xXK5XpS:5ax"><field name="NAME">Temperatur</field>
                                                      <statement name="STATEMENT"><block type="create" id="=|8=g*dM0k3or(4cOe%m"><field name="NAME">Wind</field>
                                                          <statement name="STATEMENT"><block type="create" id="d[6|S2QCtL}S8NG9a8;a"><field name="NAME">Regen</field></block></statement></block></statement></block></statement></block></statement></block></xml> 
                                          

                                          3472_abfrage_klimadaten_au_en.txt


                                          io.broker @ debian @ virtualbox @ Windows 10 Pro / Node 18.17.1, npm 9.6.7 / CCU3 / IR.Trans Server / Daslight 4 / Mobotix IP Cams / Qnap NAS / Sonos /

                                          Mein Rolladen - Blockly: https://forum.iobroker.net/topic/6442/das-ultimative-markisen-rolladen-blockly-script

                                          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

                                          832

                                          Online

                                          32.4k

                                          Benutzer

                                          81.6k

                                          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
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe