Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. (gelöst) Erster Versuch in Blockly

NEWS

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

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

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

(gelöst) Erster Versuch in Blockly

Scheduled Pinned Locked Moved Skripten / Logik
4 Posts 2 Posters 1.4k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    Matten
    wrote on last edited by
    #1

    Hallo, ich versuche gerade die Blocky Programmierung zu verstehen. Mein erster Script funktioniert nach vielem Probieren immer noch nicht. Das Licht soll eingeschaltet werden innerhalb einer bestimmten Uhrzeit und wenn der Dämmerungssensor einen gewissen Lichtwert erreicht sowie der Bewegungssensor (beim Betreten des Raumes) anspricht. Es handelt sich also um drei Bedingungen, die erfüllt sein müssen. Aber das mag Blockly wohl nicht?

    1882_blockly_bewegung.jpg

    Ev. kann mir jemand helfen?

    Hardware: NUC 386i, Proxmox: als VM ioBroker, HomeMatic, Hue(Zigbee), UnifiAC, Visualisierung: 24 Zoll Touchscreen Portrait Modus

    1 Reply Last reply
    0
    • rantanplanR Online
      rantanplanR Online
      rantanplan
      wrote on last edited by
      #2

      @Matten:

      Es handelt sich also um drei Bedingungen, die erfüllt sein müssen. Aber das mag Blockly wohl nicht?

      Ev. kann mir jemand helfen? `

      Hallo Matten

      Blockly mag noch nicht genug, aber schon eine ganze Menge. ;)

      Damit ein Blockly/Script startet, braucht es ein Ereignis (Änderung eines Datenpunktes oder Zeitpunkt usw.)

      Das nennt man "triggern".

      Ein Trigger ist also immer der äußere Rahmen.

      Wenn die Bedingung eines Triggers erfüllt wird, wird alles innerhalb des Triggers, einmalig, ausgeführt.

      Falls der Screenshot Dein ganzes Blockly darstellt, passiert da folgendes.

      Du startest das Script.

      Das überprüft den Zeitraum und die Helligkeit und macht…..gar nichts.

      Aber Du hast auch zwei Trigger in der "Falls-Abfrage".

      Die sind, solange das Script läuft, aktiv!

      Also JEDESMAL wenn "Sensor" wahr ist geht das Licht an und bei unwahr wieder aus.

      Der Zeitraum und die Helligkeit ist für das Blockly völlig egal. Das wurde ja schon abgeabeitet und interessiert nicht mehr.

      Du must also umgekehrt arbeiten.
      147_beispiel_matten.png

      Hier der Export:

      ! ````
      <xml xmlns="http://www.w3.org/1999/xhtml"><block type="comment" id="K!sci*{NQzk@Bz^;F[UO" x="-537" y="-287"><field name="COMMENT">Hier Sensor Motion triggern</field>
      <next><block type="on" id="XUrWd}9#^Va1(0a#ZNN1"><field name="OID">Object ID</field>
      <field name="CONDITION">ne</field>

          <statement name="STATEMENT"><block type="comment" id="r~^E^c-Cou6;r?;KUd`b"><field name="COMMENT">Wenn Bewegung erkannt</field>
              <next><block type="controls_if" id="STFO[,VcpV]lY*?C%Rn?"><mutation else="1"></mutation>
                  <value name="IF0"><block type="logic_compare" id="Fywuti(s[Z!#R9,JpF-Z"><field name="OP">EQ</field>
                      <value name="A"><block type="get_value" id="{QJ]r@C1eq!Z*%}7UC0I"><field name="ATTR">val</field>
                          <field name="OID">ID auswählen</field></block></value> 
                      <value name="B"><block type="logic_boolean" id="l?}J6KrWD8?|20h{??_b"><field name="BOOL">TRUE</field></block></value></block></value> 
                  <statement name="DO0"><block type="comment" id="Q;iev{6ZcQiGi[D]@*xz"><field name="COMMENT">Bedingungen abfragen</field>
                      <next><block type="controls_if" id="XP/m7.U8*tU)U``^D[5*"><value name="IF0"><block type="logic_operation" id="X!xHu--ZLypAk@I5v7]@"><field name="OP">AND</field>
                              <value name="A"><block type="time_compare_ex" id="j0bV]uZg5PS)MoURAJPV"><mutation end_time="true" actual_time="true"></mutation>
                                  <field name="USE_ACTUAL_TIME">TRUE</field>
                                  <field name="OPTION">not between</field>
                                  <value name="START_TIME"><shadow type="text" id="5lANYeXWEBh8duHHj)/H"><field name="TEXT">00:1</field></shadow></value> 
                                  <value name="END_TIME"><shadow type="text" id="J)uReokm)aS^v6eKgx+K"><field name="TEXT">09:00</field></shadow></value></block></value> 
                              <value name="B"><block type="logic_compare" id="Bd;2)7nDxQo30m0^z[Px"><field name="OP">LTE</field>
                                  <value name="A"><block type="get_value" id="^:XiP[fNCt9COd1:i6rT"><field name="ATTR">val</field>
                                      <field name="OID">ID auswählen</field></block></value> 
                                  <value name="B"><block type="math_number" id="@{?0rlk4knIjlfkytZ3X"><field name="NUM">30</field></block></value></block></value></block></value> 
                          <statement name="DO0"><block type="comment" id="CUQSg/Al0an.g3lMs~Yx"><field name="COMMENT">Nur einschalten wenn Lampe aus</field>
                              <next><block type="controls_if" id="s5~HbfA%`-UGwhfu@bc0"><value name="IF0"><block type="logic_compare" id="/gkAJF:6p4d;@jnxq6n^"><field name="OP">EQ</field>
                                      <value name="A"><block type="get_value" id="@HaT]Xwo`d2wW~}F}d%v"><field name="ATTR">val</field>
                                          <field name="OID">ID auswählen</field></block></value> 
                                      <value name="B"><block type="logic_boolean" id="mDcv[?ohY![*LzyZ(xjZ"><field name="BOOL">FALSE</field></block></value></block></value> 
                                  <statement name="DO0"><block type="control" id="US*SsJs_c-+O0O_/6L=E"><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="t#rI/n)mauclLezD^mSZ"><field name="BOOL">TRUE</field></block></value></block></statement></block></next></block></statement></block></next></block></statement> 
                  <statement name="ELSE"><block type="comment" id="4=HJoMi5Z38uLs?:S3gS"><field name="COMMENT">Hier kommt der Teil wenn keine Bewegung</field>
                      <next><block type="comment" id="U`HeF|/lW2UR3g#K~d~A"><field name="COMMENT">Und naturlich nur schalten wenn nötig :)</field>
                          <next><block type="controls_if" id="aDp(b?m(xLk(jDhL7qnu"><value name="IF0"><block type="logic_compare" id="D-|]s03CA}~Jz_9bPxyc"><field name="OP">EQ</field>
                                  <value name="A"><block type="get_value" id="}s97;!snvm!?9zWckE91"><field name="ATTR">val</field>
                                      <field name="OID">ID auswählen</field></block></value> 
                                  <value name="B"><block type="logic_boolean" id="rbM~}+H[tJhZAAUDlvh)"><field name="BOOL">TRUE</field></block></value></block></value> 
                              <statement name="DO0"><block type="control" id="%{X0K-ZO~GZOYRVm04}|"><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="Y1+7G0e^=]k_G[qEXQy}"><field name="BOOL">FALSE</field></block></value></block></statement></block></next></block></next></block></statement></block></next></block></statement></block></next></block></xml> 
      

      ! ````

      Bei Fragen fragen ;)

      Aber suche hier im Forum auch mal nach "Blockly" da gibt es schon reichlich Beispiele und Erklärungen.

      Grüße

      Rantanplan

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

      1 Reply Last reply
      0
      • M Offline
        M Offline
        Matten
        wrote on last edited by
        #3

        Hallo Rantanplan,

        danke für die wirklich schnelle Auskunft. Genau das, was du beschrieben hast fehlte mir, ich hatte einen völligen Denkfehler in der Herangehensweise. Ich werde es ausprobieren.

        Du hast mir sehr geholfen!

        Hardware: NUC 386i, Proxmox: als VM ioBroker, HomeMatic, Hue(Zigbee), UnifiAC, Visualisierung: 24 Zoll Touchscreen Portrait Modus

        1 Reply Last reply
        0
        • rantanplanR Online
          rantanplanR Online
          rantanplan
          wrote on last edited by
          #4

          Prima!

          Wenn Du weitergekommen bist, setzte bitte ein [Gelöst] in den Betreff Deines ersten Eintrags.

          Weitere Infos hier http://forum.iobroker.net/viewtopic.php?f=8&t=2451

          Grüße

          Rantanplan

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

          1 Reply Last reply
          0
          Reply
          • Reply as topic
          Log in to reply
          • Oldest to Newest
          • Newest to Oldest
          • Most Votes


          Support us

          ioBroker
          Community Adapters
          Donate

          806

          Online

          32.4k

          Users

          81.5k

          Topics

          1.3m

          Posts
          Community
          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
          ioBroker Community 2014-2025
          logo
          • Login

          • Don't have an account? Register

          • Login or register to search.
          • First post
            Last post
          0
          • Home
          • Recent
          • Tags
          • Unread 0
          • Categories
          • Unreplied
          • Popular
          • GitHub
          • Docu
          • Hilfe