Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Gelöst! Brauche Hilfe bei meinem Blockly Script

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Gelöst! Brauche Hilfe bei meinem Blockly Script

    This topic has been deleted. Only users with topic management privileges can see it.
    • haselchen
      haselchen Most Active @fuso last edited by haselchen

      @fuso

      Hab den Rest jetzt nicht kontrolliert, aber Dir fehlt ganz oben schon ein Trigger.
      So ein Block den Du in der Mitte hast .... Falls Objekt.....
      @paul53 als SkriptGott kann Dir da bestimmt expliziter helfen.

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @haselchen last edited by paul53

        @haselchen sagte:

        Dir fehlt ganz oben schon ein Trigger.

        So ist es. Es fehlt ein Trigger auf Änderung der Helligkeit.
        Außerdem sollte man die Tageszeit auswerten für Rollos hoch (morgens) und Rollos runter (abends), etwa so:

        Blockly_temp.JPG

        <xml xmlns="http://www.w3.org/1999/xhtml">
         <block type="comment" id="XViJG2mMWB.j4a8+PD+w" x="62" y="12">
           <field name="COMMENT">BRIGHTNESS</field>
           <next>
             <block type="on_ext" id="xJK_O{B.)T?lpYAcnq-m">
               <mutation items="1"></mutation>
               <field name="CONDITION">ne</field>
               <field name="ACK_CONDITION"></field>
               <value name="OID0">
                 <shadow type="field_oid" id=")B`yp96a^D{}(]Tz]N)9">
                   <field name="oid">default</field>
                 </shadow>
               </value>
               <statement name="STATEMENT">
                 <block type="controls_if" id="@SGJ4,.w7K~mYyaDam`H">
                   <value name="IF0">
                     <block type="get_value" id="2q.Nb.EiqrjV?z+qfSQU">
                       <field name="ATTR">val</field>
                       <field name="OID">ID auswählen</field>
                     </block>
                   </value>
                   <statement name="DO0">
                     <block type="controls_if" id="Nj+0s1yN{vOUf;y*[*x?">
                       <mutation else="1"></mutation>
                       <value name="IF0">
                         <block type="time_compare" id="].4Y,{~*vtI_p9;rtbvr">
                           <mutation end_time="false"></mutation>
                           <field name="OPTION">&lt;</field>
                           <field name="START_TIME">12:00</field>
                         </block>
                       </value>
                       <statement name="DO0">
                         <block type="controls_if" id="UZ]W,]k?Q`:DSsZEVz;F">
                           <value name="IF0">
                             <block type="logic_compare" id="g*a=Ydg?Q{?E}FRpAmbl">
                               <field name="OP">GTE</field>
                               <value name="A">
                                 <block type="on_source" id="ZQ`Y.mU![PO_kuvbm|R~">
                                   <field name="ATTR">state.val</field>
                                 </block>
                               </value>
                               <value name="B">
                                 <block type="get_value" id="7JE+1/c(OU@oS4kAH/@K">
                                   <field name="ATTR">val</field>
                                   <field name="OID">ID auswählen</field>
                                 </block>
                               </value>
                             </block>
                           </value>
                           <statement name="DO0">
                             <block type="comment" id="CkOaf^F4:!eYr5FAWo#-">
                               <field name="COMMENT">alle Rollos</field>
                               <next>
                                 <block type="update" id="mc~-LbOT0:5cHE4(Lh@N">
                                   <mutation delay_input="false"></mutation>
                                   <field name="OID">Object ID</field>
                                   <field name="WITH_DELAY">FALSE</field>
                                   <value name="VALUE">
                                     <block type="logic_boolean" id="`73uZct;o_gRvqS.fE8)">
                                       <field name="BOOL">TRUE</field>
                                     </block>
                                   </value>
                                 </block>
                               </next>
                             </block>
                           </statement>
                         </block>
                       </statement>
                       <statement name="ELSE">
                         <block type="controls_if" id="x*fhKED*dkz.5J.^v_52">
                           <value name="IF0">
                             <block type="logic_compare" id="1eZ@h](1w-{B$dMAZHH}">
                               <field name="OP">LTE</field>
                               <value name="A">
                                 <block type="on_source" id="XV,_q_$5SrOjf=upI$xU">
                                   <field name="ATTR">state.val</field>
                                 </block>
                               </value>
                               <value name="B">
                                 <block type="get_value" id=",NG5N9))VQazI9j%]w+l">
                                   <field name="ATTR">val</field>
                                   <field name="OID">ID auswählen</field>
                                 </block>
                               </value>
                             </block>
                           </value>
                           <statement name="DO0">
                             <block type="comment" id="mGAxCR@VOc#mU{o5!bTH">
                               <field name="COMMENT">alle Rollos</field>
                               <next>
                                 <block type="update" id="KU#d,5}vBr{xJIHV|Cfj">
                                   <mutation delay_input="false"></mutation>
                                   <field name="OID">Object ID</field>
                                   <field name="WITH_DELAY">FALSE</field>
                                   <value name="VALUE">
                                     <block type="logic_boolean" id=".7:f5F^:z3ePJMn@yrBp">
                                       <field name="BOOL">FALSE</field>
                                     </block>
                                   </value>
                                 </block>
                               </next>
                             </block>
                           </statement>
                         </block>
                       </statement>
                     </block>
                   </statement>
                 </block>
               </statement>
               <next>
                 <block type="comment" id="qVjmMOLch6Rh9k^jnYRg">
                   <field name="COMMENT">alle Rollos</field>
                   <next>
                     <block type="on_ext" id="K_6#A@,l]H:$5]b@!V,!">
                       <mutation items="1"></mutation>
                       <field name="CONDITION">ne</field>
                       <field name="ACK_CONDITION"></field>
                       <value name="OID0">
                         <shadow type="field_oid" id="AP/25R3Jbc@=X@npQGf|">
                           <field name="oid">default</field>
                         </shadow>
                       </value>
                       <statement name="STATEMENT">
                         <block type="controls_if" id=";?y92$eR?ltPAWMlt$%P">
                           <mutation else="1"></mutation>
                           <value name="IF0">
                             <block type="on_source" id="IpQ-hwff|@pIt`D.(Qfm">
                               <field name="ATTR">state.val</field>
                             </block>
                           </value>
                           <statement name="DO0">
                             <block type="comment" id="[[]DvuL.UTc3(639$G6~">
                               <field name="COMMENT">Rollos hoch</field>
                             </block>
                           </statement>
                           <statement name="ELSE">
                             <block type="comment" id=";IUXX`?aAo$XT5y{}#KN">
                               <field name="COMMENT">Rollos runter</field>
                             </block>
                           </statement>
                         </block>
                       </statement>
                     </block>
                   </next>
                 </block>
               </next>
             </block>
           </next>
         </block>
         <block type="comment" id="Ias1iDR8q(PuBi@I$4?X" x="337" y="87">
           <field name="COMMENT">Dämmerung Ja/Nein</field>
         </block>
         <block type="comment" id="2Lr=pCPIzgHf3z03PJ/k" x="612" y="138">
           <field name="COMMENT">Grenzwert</field>
         </block>
         <block type="comment" id="G9/}V*VkS*k1tzmA8:uk" x="463" y="212">
           <field name="COMMENT">hoch</field>
         </block>
         <block type="comment" id="KD@[/2|hij~hCd={KM|#" x="462" y="337">
           <field name="COMMENT">runter</field>
         </block>
        </xml>
        

        1 Reply Last reply Reply Quote 1
        • F
          fuso last edited by

          Hi,

          danke für Eure Hilfestellung.
          Ja das mit dem fehlenden trigger habe ich nun schon verstanden und habe in der Zwischenzeit auch schon ganz schön was rumprobiert. Aber irgendwie will es doch noch nicht klappen.
          @paul53
          ich werde dein Blockly mal so ausprobieren, vielen dank für Deine Arbeit.
          Aber ich möchte trotzdem gerne wissen, warum mein zusammengebautes Blockly nicht funktioniert. Will ja noch lernen und nicht immer auf die Hilfe von Anderen hoffen müssen.

          Das Objekt "Schwellenwert_überschritten" ändert sich einfach nicht. Am fehlenden Trigger sollte es ja nicht liegen, oder?
          Der zustand sollte von false nach true wechseln, wenn der Schwellenwert der in der Visu eingegeben höher ist als der vom Helligkeitsmesser. das ist doch nicht so schwierig, dachte ich. Wenn ich meinen Trigger Wetterstation_Brightness auf aktualisieren stelle sollte der doch jedesmal die Bedingung prüfen? Oder verstehe ich das falsch? Wie kann ich eigentlich sicherstellen, daß das Ereignis nur einmal Erfolgt? Die Rollos sollen ja nicht minütlich, oder jedesmal wenn sich die Helligkeit ändert nach oben oder unten geschickt werden.
          Ach ja und für mein Test Script habe ich als Ausgang eine Schaltbare Steckdose angeschlossen, sodaß die Rollos nicht dauert losgeschickt werden

          Vielen dank nochmals für die Inputs
          f5cfd3ce-98ff-48c5-a2c8-809c7c661b00-image.png

          paul53 1 Reply Last reply Reply Quote 0
          • paul53
            paul53 @fuso last edited by

            @fuso sagte:

            Am fehlenden Trigger sollte es ja nicht liegen, oder?

            Im Gegenteil: Trigger innerhalb eines Triggers funktioniert nicht. Deshalb wir in meinem Beispiel der Datenpunkt "Dämmerung Ja/Nein" innerhalb des Triggers "Helligkeit" geprüft.

            @fuso sagte in Brauche Hilfe bei meinem Blockly Script:

            Wie kann ich eigentlich sicherstellen, daß das Ereignis nur einmal Erfolgt?

            Damit bei schwankender Helligkeit um den Grenzwert der Zustand "Rollos hoch/runter" sich nicht ständig ändert, werte ich die Tageszeit aus. Der nachfolgende Trigger "alle Rollos" reagiert nur auf Wertänderung, also nur zweimal am Tag.

            1 Reply Last reply Reply Quote 0
            • F
              fuso last edited by

              Hallo Paul,

              so jetzt habe ich mal mein Blockly umgebaut, so wie Du´s mir in der hilfestellung gezeigt hast.
              d6faa308-76ca-4f8c-9462-b5d416d94d25-image.png

              Ja und jetzt habe ich gerade im log gesehen, daß ich noch ein anderes problem habe. Wie finde ich denn raus um welches Objekt es sich hier handelt?
              Ich habe nochmal nachgeschaut, eigentlich sollte alles richtig konfiguriert sein
              31db29a1-40f7-49d4-9f9a-3efda91cd6a9-image.png

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @fuso last edited by paul53

                @fuso sagte:

                Wie finde ich denn raus um welches Objekt es sich hier handelt?

                Man kann nicht auf "Wert von Objekt" Triggern, sondern man muss die Datenpunkt-ID an den Trigger übergeben: Auf default klicken und den Datenpunkt im Selektor-Fenster auswählen.

                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @paul53 last edited by paul53

                  vertippt.

                  1 Reply Last reply Reply Quote 0
                  • F
                    fuso last edited by

                    Hallo Paul,

                    ja, das war der richtige Hinweis. Oh je, es gibt noch viel zu lernen. Es scheint zu laufen jetzt. Einzig mit dem trigger muss ich doch nochmal spielen, weil er jetzt bei jeder Helligkeitsänderung triggert und meine Rollos losschickt. Ist nur ein Schönheitsfehler, da beiß ich mich selber durch.
                    Vielen dank für die Hilfe

                    Fuso

                    paul53 1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 @fuso last edited by

                      @fuso sagte:

                      weil er jetzt bei jeder Helligkeitsänderung triggert und meine Rollos losschickt.

                      @paul53 sagte in Brauche Hilfe bei meinem Blockly Script:

                      Der nachfolgende Trigger "alle Rollos" reagiert nur auf Wertänderung, also nur zweimal am Tag.

                      1 Reply Last reply Reply Quote 0
                      • F
                        fuso last edited by

                        Hallo paul,
                        nochmals danke. Das habe ich natürlich in Deinem ersten post übersehen. Komme leider heute nicht mehr wirklich zum testen. Hab aber die Scripte gerade am laufen. Schau mer mal, ob das heute abend funktioniert.

                        Gruß

                        1 Reply Last reply Reply Quote 0
                        • F
                          fuso last edited by

                          Hallo zusammen,

                          möchte mal kurz Feedback zu meinem Thema geben. Also läuft alles.
                          Vielen dank nochmal

                          fuso

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

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          789
                          Online

                          32.0k
                          Users

                          80.4k
                          Topics

                          1.3m
                          Posts

                          blockly
                          3
                          12
                          787
                          Loading More Posts
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes
                          Reply
                          • Reply as topic
                          Log in to reply
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                          The ioBroker Community 2014-2023
                          logo