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. (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

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
4 Beiträge 2 Kommentatoren 1.4k Aufrufe
  • Ä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.
  • M Offline
    M Offline
    Matten
    schrieb am zuletzt editiert von
    #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 Antwort Letzte Antwort
    0
    • rantanplanR Online
      rantanplanR Online
      rantanplan
      schrieb am zuletzt editiert von
      #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 Antwort Letzte Antwort
      0
      • M Offline
        M Offline
        Matten
        schrieb am zuletzt editiert von
        #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 Antwort Letzte Antwort
        0
        • rantanplanR Online
          rantanplanR Online
          rantanplan
          schrieb am zuletzt editiert von
          #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 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

          843

          Online

          32.4k

          Benutzer

          81.5k

          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