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. Visualisierung
  4. Öffnungsgrad per Icon

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    15
    1
    562

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    622

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.9k

Öffnungsgrad per Icon

Geplant Angeheftet Gesperrt Verschoben Visualisierung
vishow-to
16 Beiträge 3 Kommentatoren 1.3k Aufrufe 7 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.
  • A Offline
    A Offline
    aldoa1
    schrieb am zuletzt editiert von aldoa1
    #1

    Hallo,
    gibt es eine Möglichkeit den Öffnungsgrad von Rollos etc. per Zeit zu ermitteln?
    Z.B. braucht der Rolle 30 Sekunden nach unten und 25 Sekunden nach oben.
    Könnte man dann ein Blockly Script erstellen und ermittelte Datenpunkte in einem VIS-Icon verwenden?
    Z.B. stoppe ich nach 15 Sekunden müsste das Icon den Status zur Hälfte anzeigen.
    Während des hoch- und runterfahren soll das Icon dies animiert darstellen.

    Hat jemand eine Idee?

    liv-in-skyL MichMeinM 3 Antworten Letzte Antwort
    0
    • A aldoa1

      Hallo,
      gibt es eine Möglichkeit den Öffnungsgrad von Rollos etc. per Zeit zu ermitteln?
      Z.B. braucht der Rolle 30 Sekunden nach unten und 25 Sekunden nach oben.
      Könnte man dann ein Blockly Script erstellen und ermittelte Datenpunkte in einem VIS-Icon verwenden?
      Z.B. stoppe ich nach 15 Sekunden müsste das Icon den Status zur Hälfte anzeigen.
      Während des hoch- und runterfahren soll das Icon dies animiert darstellen.

      Hat jemand eine Idee?

      liv-in-skyL Offline
      liv-in-skyL Offline
      liv-in-sky
      schrieb am zuletzt editiert von
      #2

      @aldoa1

      ganz umständlich:

      ein festes hintergrundwidget und davor ein widget, welches die eigene höhe mit einem binding abhängig von der zeit anzeigt
      da die zeiten unterschiedlich sind, muss man evtl für auf und zu ein eigenes vordergrund widget definieren

      aver vielleicht meldet sich noch jmd mit einer guten idee

      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

      1 Antwort Letzte Antwort
      0
      • A aldoa1

        Hallo,
        gibt es eine Möglichkeit den Öffnungsgrad von Rollos etc. per Zeit zu ermitteln?
        Z.B. braucht der Rolle 30 Sekunden nach unten und 25 Sekunden nach oben.
        Könnte man dann ein Blockly Script erstellen und ermittelte Datenpunkte in einem VIS-Icon verwenden?
        Z.B. stoppe ich nach 15 Sekunden müsste das Icon den Status zur Hälfte anzeigen.
        Während des hoch- und runterfahren soll das Icon dies animiert darstellen.

        Hat jemand eine Idee?

        liv-in-skyL Offline
        liv-in-skyL Offline
        liv-in-sky
        schrieb am zuletzt editiert von
        #3

        @aldoa1

        scrennmovie (1).gif

        nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

        1 Antwort Letzte Antwort
        0
        • A Offline
          A Offline
          aldoa1
          schrieb am zuletzt editiert von
          #4

          ja, so etwas. Nur wie bekomme ich die Höhe eines widget abhängig von der Zeit hin?

          liv-in-skyL 1 Antwort Letzte Antwort
          0
          • A aldoa1

            ja, so etwas. Nur wie bekomme ich die Höhe eines widget abhängig von der Zeit hin?

            liv-in-skyL Offline
            liv-in-skyL Offline
            liv-in-sky
            schrieb am zuletzt editiert von liv-in-sky
            #5

            @aldoa1 das wird

            über ein binding gemacht

            hier ein beipiel - bei dir müßte eine simple formel rein

            {value:controll-own.0.AAATEST.testTollo; value=Math.floor(290-(value*1.4))}
            

            der rollo-%-datenpunkt ist ja zwischen 0 und 100

            die bildhöhe ist ja anders - also: x ist ein faktor - abhängig von der tats. bildhöhe

            {value:controll-own.0.AAATEST.testTollo; value=value* x }
            

            du mußt den rollo dp einsetzen - bei mit im bsp ist das ein test dp

            nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

            A 1 Antwort Letzte Antwort
            0
            • liv-in-skyL liv-in-sky

              @aldoa1 das wird

              über ein binding gemacht

              hier ein beipiel - bei dir müßte eine simple formel rein

              {value:controll-own.0.AAATEST.testTollo; value=Math.floor(290-(value*1.4))}
              

              der rollo-%-datenpunkt ist ja zwischen 0 und 100

              die bildhöhe ist ja anders - also: x ist ein faktor - abhängig von der tats. bildhöhe

              {value:controll-own.0.AAATEST.testTollo; value=value* x }
              

              du mußt den rollo dp einsetzen - bei mit im bsp ist das ein test dp

              A Offline
              A Offline
              aldoa1
              schrieb am zuletzt editiert von
              #6

              @liv-in-sky

              danke für die erneute Hilfe.
              Leider verstehe ich es noch nicht.

              Das erste Binding kommt in ein eigenes Widget?
              Das zweite ist dann ein Icon-Widget und dort trage ich das Binding bei der Bildhöhe ein?

              Benötige ich noch ein Blockly Script wegen der Zeit?

              liv-in-skyL 1 Antwort Letzte Antwort
              0
              • A aldoa1

                Hallo,
                gibt es eine Möglichkeit den Öffnungsgrad von Rollos etc. per Zeit zu ermitteln?
                Z.B. braucht der Rolle 30 Sekunden nach unten und 25 Sekunden nach oben.
                Könnte man dann ein Blockly Script erstellen und ermittelte Datenpunkte in einem VIS-Icon verwenden?
                Z.B. stoppe ich nach 15 Sekunden müsste das Icon den Status zur Hälfte anzeigen.
                Während des hoch- und runterfahren soll das Icon dies animiert darstellen.

                Hat jemand eine Idee?

                MichMeinM Offline
                MichMeinM Offline
                MichMein
                schrieb am zuletzt editiert von
                #7

                @aldoa1 Hi, mit was werden die Rollos angesteuert?

                Gruß Michael
                Sofern Beiträge hilfreich für Dich sind, nutze das Voting unten rechts.

                MichMeinM 1 Antwort Letzte Antwort
                0
                • A aldoa1

                  @liv-in-sky

                  danke für die erneute Hilfe.
                  Leider verstehe ich es noch nicht.

                  Das erste Binding kommt in ein eigenes Widget?
                  Das zweite ist dann ein Icon-Widget und dort trage ich das Binding bei der Bildhöhe ein?

                  Benötige ich noch ein Blockly Script wegen der Zeit?

                  liv-in-skyL Offline
                  liv-in-skyL Offline
                  liv-in-sky
                  schrieb am zuletzt editiert von
                  #8

                  @aldoa1 du solltest einen datenpunkt haben, indem du siehst, wie der stand ist - kommt meist von einem adapter - zwischen 0 und 100%

                  hast du keinen solchen datenpunkt - musst du dir ein script machen das zählt

                  hast du einen adapter datenpunkt ?

                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                  A 1 Antwort Letzte Antwort
                  0
                  • liv-in-skyL liv-in-sky

                    @aldoa1 du solltest einen datenpunkt haben, indem du siehst, wie der stand ist - kommt meist von einem adapter - zwischen 0 und 100%

                    hast du keinen solchen datenpunkt - musst du dir ein script machen das zählt

                    hast du einen adapter datenpunkt ?

                    A Offline
                    A Offline
                    aldoa1
                    schrieb am zuletzt editiert von
                    #9

                    @liv-in-sky
                    ja den Adapter habe ich angelegt und deine Bindings angepasst. Wenn ich die Werte im Datenpunkt manuell ändere, sehe ich in einem html widget die Veränderung.

                    Das hatte ich testweise bei html Widget eingetragen:
                    {value:controll-own.0.AAATEST.testTollo; value=Math.floor(290-(value*1.4))}

                    Das Blockly Script zum zählen machen ich jetzt noch.
                    Der Adpater liefert das nicht.

                    Nur wohin mit beiden bindings im Verbindung mit dem icon widget?

                    liv-in-skyL 1 Antwort Letzte Antwort
                    0
                    • A aldoa1

                      @liv-in-sky
                      ja den Adapter habe ich angelegt und deine Bindings angepasst. Wenn ich die Werte im Datenpunkt manuell ändere, sehe ich in einem html widget die Veränderung.

                      Das hatte ich testweise bei html Widget eingetragen:
                      {value:controll-own.0.AAATEST.testTollo; value=Math.floor(290-(value*1.4))}

                      Das Blockly Script zum zählen machen ich jetzt noch.
                      Der Adpater liefert das nicht.

                      Nur wohin mit beiden bindings im Verbindung mit dem icon widget?

                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      schrieb am zuletzt editiert von
                      #10

                      @aldoa1

                      ich dachte eher an 2 img-widgets

                      • eines für den hintergrund - z.b ein symbolisches fenster

                      • das andere liegt über dem hintergrund-widget und beinhaltet das binding - als bild ein rollo oder eine frbl. fläche

                      • es muss einen datenpunkt zum steuern geben

                      das script kann das umrechnen übernehmen und somit muss das binding nur der datenpunkt in geschweiften klammern darstellen

                      das script: getriggert durch hoch oder runterfahren - das musst du irgendwie organisieren, dass du dafür die richtigen trigger hast - bzw du mußt auch wissen, wo es gerade steht

                      die berechnung im script hängt ja von der größe des bildes und der zeit ab - das musst du auch berechnen

                      als beispiel zum zählen geht sowas (testTollo ist der binding datenpunkt):

                      Image 3.png

                      wahrscheinlich musst du auch etwas coden für den momentnen zustand der rollo - da brauchst du irgendeinen dp, sonst ist bei neustart des scriptes nicht klar, wo die rollo steht - normal macht das ein adapter - den mußt du virtualisieren

                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                      A 1 Antwort Letzte Antwort
                      0
                      • liv-in-skyL liv-in-sky

                        @aldoa1

                        ich dachte eher an 2 img-widgets

                        • eines für den hintergrund - z.b ein symbolisches fenster

                        • das andere liegt über dem hintergrund-widget und beinhaltet das binding - als bild ein rollo oder eine frbl. fläche

                        • es muss einen datenpunkt zum steuern geben

                        das script kann das umrechnen übernehmen und somit muss das binding nur der datenpunkt in geschweiften klammern darstellen

                        das script: getriggert durch hoch oder runterfahren - das musst du irgendwie organisieren, dass du dafür die richtigen trigger hast - bzw du mußt auch wissen, wo es gerade steht

                        die berechnung im script hängt ja von der größe des bildes und der zeit ab - das musst du auch berechnen

                        als beispiel zum zählen geht sowas (testTollo ist der binding datenpunkt):

                        Image 3.png

                        wahrscheinlich musst du auch etwas coden für den momentnen zustand der rollo - da brauchst du irgendeinen dp, sonst ist bei neustart des scriptes nicht klar, wo die rollo steht - normal macht das ein adapter - den mußt du virtualisieren

                        A Offline
                        A Offline
                        aldoa1
                        schrieb am zuletzt editiert von
                        #11

                        @liv-in-sky

                        ich habe das rauf und runter icon mit einem materialdesign progress widget hinbekommen. Das ist normalerweise waagrecht. Mit css rotate habe ich es auf senkrecht formatiert.

                        Gesteuert wird das Widget über einen Datenpunkt (Zahl von 0 bis 100). Bei einem weitereren Datenpunkt ist ist die Zeit (Sekunden) eingetragen.

                        Ein Blockly berechnet nun die Prozente der Öffnung:

                        <xml xmlns="https://developers.google.com/blockly/xml">
                          <variables>
                            <variable id="k~N~xWa~9z$*7T|}dHjw">Level</variable>
                            <variable id="7XjR$HyI.O8[}%8B3HUu">Sekunden</variable>
                            <variable id="@-bmg,5A/CNGDI!}zr@0">n</variable>
                            <variable type="interval" id="Intervall">Intervall</variable>
                            <variable type="interval" id="Intervall2">Intervall2</variable>
                          </variables>
                          <block type="on" id="ES=rZ(C%/.:hu6vqKqg6" x="-162" y="-1012">
                            <field name="OID">javascript.0.Testtrigger</field>
                            <field name="CONDITION">ne</field>
                            <field name="ACK_CONDITION"></field>
                            <statement name="STATEMENT">
                              <block type="variables_set" id="FO_YTiy6!3ZRNkMI$[i6">
                                <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                <value name="VALUE">
                                  <block type="get_value" id="3[R;tQEPvMw])VT.U[k|">
                                    <field name="ATTR">val</field>
                                    <field name="OID">javascript.0.Garagentor-Level</field>
                                  </block>
                                </value>
                                <next>
                                  <block type="variables_set" id="Tp!!/-n:zAFip(T5cs;M">
                                    <field name="VAR" id="7XjR$HyI.O8[}%8B3HUu">Sekunden</field>
                                    <value name="VALUE">
                                      <block type="get_value" id="k9p@[;3wKtCdg#zHp2,6">
                                        <field name="ATTR">val</field>
                                        <field name="OID">javascript.0.Garagentor-Oeffnungszeit</field>
                                      </block>
                                    </value>
                                    <next>
                                      <block type="variables_set" id="R^JIoo(j03dec!yHBCrE">
                                        <field name="VAR" id="@-bmg,5A/CNGDI!}zr@0">n</field>
                                        <value name="VALUE">
                                          <block type="variables_get" id="UYfDiYQz]V^P$o6!LAF^">
                                            <field name="VAR" id="7XjR$HyI.O8[}%8B3HUu">Sekunden</field>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="controls_if" id="tHfq|I*zrOX0a2)jmU@i">
                                            <value name="IF0">
                                              <block type="logic_compare" id="na2rA$LRcOQDDcZB6!zz">
                                                <field name="OP">EQ</field>
                                                <value name="A">
                                                  <block type="variables_get" id="-EtIOjzp0shK%9(SIyqA">
                                                    <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                  </block>
                                                </value>
                                                <value name="B">
                                                  <block type="math_number" id="4_-qBYi=TQu-s;E0KU;t">
                                                    <field name="NUM">100</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <statement name="DO0">
                                              <block type="timeouts_setinterval" id="(zZf1a!X6?,s/rDZ%P}W">
                                                <field name="NAME">Intervall</field>
                                                <field name="INTERVAL">1</field>
                                                <field name="UNIT">sec</field>
                                                <statement name="STATEMENT">
                                                  <block type="controls_if" id="Atr6sN@3INF/%wnoM[6)">
                                                    <mutation else="1"></mutation>
                                                    <value name="IF0">
                                                      <block type="logic_compare" id="J_)m~yZtST)AqK9^(xP8">
                                                        <field name="OP">GTE</field>
                                                        <value name="A">
                                                          <block type="variables_get" id="v`Y/6dZF9F$zVMiD)Mhh">
                                                            <field name="VAR" id="@-bmg,5A/CNGDI!}zr@0">n</field>
                                                          </block>
                                                        </value>
                                                        <value name="B">
                                                          <block type="math_number" id="]v|z^tH5?KgrY8#7rvmw">
                                                            <field name="NUM">0</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                    <statement name="DO0">
                                                      <block type="variables_set" id="itWRzrQeza2P#uY2KQVW">
                                                        <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                        <value name="VALUE">
                                                          <block type="math_arithmetic" id="nIT6(ShvZN=TE:Gkl;(z">
                                                            <field name="OP">MULTIPLY</field>
                                                            <value name="A">
                                                              <shadow type="math_number" id="LIDB?.!Zi{7n(vGip#|I">
                                                                <field name="NUM">1</field>
                                                              </shadow>
                                                              <block type="math_arithmetic" id="vko{/B4Gr^g(F:g*ghD8">
                                                                <field name="OP">DIVIDE</field>
                                                                <value name="A">
                                                                  <shadow type="math_number" id="yS72~**=yT}``bhNlU3i">
                                                                    <field name="NUM">100</field>
                                                                  </shadow>
                                                                </value>
                                                                <value name="B">
                                                                  <shadow type="math_number" id="7-Ic$.$.|:{FSL8?84B|">
                                                                    <field name="NUM">1</field>
                                                                  </shadow>
                                                                  <block type="variables_get" id="vzM2GgTVqV@tDb.VU?Vf">
                                                                    <field name="VAR" id="7XjR$HyI.O8[}%8B3HUu">Sekunden</field>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </value>
                                                            <value name="B">
                                                              <shadow type="math_number" id="ew+Z2(jGi!l#gXMnbj;c">
                                                                <field name="NUM">1</field>
                                                              </shadow>
                                                              <block type="variables_get" id="(:pDc]K)YWPSkUS0K$^Y">
                                                                <field name="VAR" id="@-bmg,5A/CNGDI!}zr@0">n</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </value>
                                                        <next>
                                                          <block type="update" id="R#c4D4$,.fK?=S`4ITDh">
                                                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                            <field name="OID">javascript.0.Garagentor-Level</field>
                                                            <field name="WITH_DELAY">FALSE</field>
                                                            <value name="VALUE">
                                                              <block type="variables_get" id="3?bV-J}43]{~7,aEeO%C">
                                                                <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                              </block>
                                                            </value>
                                                            <next>
                                                              <block type="debug" id="~QwmT)%rd|yu[Avtk8li">
                                                                <field name="Severity">log</field>
                                                                <value name="TEXT">
                                                                  <shadow type="text" id="b!kmC=pk@Wbjbvyrb)(S">
                                                                    <field name="TEXT">test</field>
                                                                  </shadow>
                                                                  <block type="variables_get" id="KkubjDBhgOPz3Lp%HZ{T">
                                                                    <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                                  </block>
                                                                </value>
                                                                <next>
                                                                  <block type="math_change" id="}R-T}J{Q8!nt3,sraJj`">
                                                                    <field name="VAR" id="@-bmg,5A/CNGDI!}zr@0">n</field>
                                                                    <value name="DELTA">
                                                                      <shadow type="math_number" id="T#mPsXGN|=a.KcY$aTiM">
                                                                        <field name="NUM">-1</field>
                                                                      </shadow>
                                                                    </value>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </statement>
                                                    <statement name="ELSE">
                                                      <block type="timeouts_clearinterval" id="SNHb/i7T?}2X1tJZba,|">
                                                        <field name="NAME">Intervall</field>
                                                      </block>
                                                    </statement>
                                                  </block>
                                                </statement>
                                              </block>
                                            </statement>
                                            <next>
                                              <block type="controls_if" id="Fsa)%a^yM?xgg4`|Fo;R">
                                                <value name="IF0">
                                                  <block type="logic_compare" id="lZAP-uLJ49)O*ENScg)n">
                                                    <field name="OP">EQ</field>
                                                    <value name="A">
                                                      <block type="variables_get" id="OE6v1J(L6:2CPVj!.Hn%">
                                                        <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="math_number" id="x{p))3^_uzHY{yz.0$ba">
                                                        <field name="NUM">0</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <statement name="DO0">
                                                  <block type="timeouts_setinterval" id="#h+5-puG,XW`nb1T3,~1">
                                                    <field name="NAME">Intervall2</field>
                                                    <field name="INTERVAL">1</field>
                                                    <field name="UNIT">sec</field>
                                                    <statement name="STATEMENT">
                                                      <block type="controls_if" id="KK|=g64=gZ8}YS~Rx~B-">
                                                        <mutation else="1"></mutation>
                                                        <value name="IF0">
                                                          <block type="logic_compare" id="YNQB/0O$rzkfc]FCjGr.">
                                                            <field name="OP">GTE</field>
                                                            <value name="A">
                                                              <block type="variables_get" id="7,doWul5UOhcQ@f,fYkV">
                                                                <field name="VAR" id="@-bmg,5A/CNGDI!}zr@0">n</field>
                                                              </block>
                                                            </value>
                                                            <value name="B">
                                                              <block type="math_number" id="Hy+8N:Lq,A4V1QO.r-sU">
                                                                <field name="NUM">0</field>
                                                              </block>
                                                            </value>
                                                          </block>
                                                        </value>
                                                        <statement name="DO0">
                                                          <block type="variables_set" id="U@n2{Hc1A?ns:_28MQ$*">
                                                            <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                            <value name="VALUE">
                                                              <block type="math_arithmetic" id="4FGq7uKJ918~%ogcj4r_">
                                                                <field name="OP">ADD</field>
                                                                <value name="A">
                                                                  <shadow type="math_number">
                                                                    <field name="NUM">1</field>
                                                                  </shadow>
                                                                  <block type="math_arithmetic" id="Ib(vKZ`w*ZS5Da.e~6HZ">
                                                                    <field name="OP">DIVIDE</field>
                                                                    <value name="A">
                                                                      <shadow type="math_number" id="EkpXfXIT+3{McUQ6J[UY">
                                                                        <field name="NUM">100</field>
                                                                      </shadow>
                                                                    </value>
                                                                    <value name="B">
                                                                      <shadow type="math_number">
                                                                        <field name="NUM">1</field>
                                                                      </shadow>
                                                                      <block type="variables_get" id="S/o:^P}R,$#6,}1qTXz8">
                                                                        <field name="VAR" id="7XjR$HyI.O8[}%8B3HUu">Sekunden</field>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </value>
                                                                <value name="B">
                                                                  <shadow type="math_number">
                                                                    <field name="NUM">1</field>
                                                                  </shadow>
                                                                  <block type="variables_get" id="WJX~$Ka;v7bZ{Y/)*unT">
                                                                    <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </value>
                                                            <next>
                                                              <block type="update" id="]Y~O6j?3C4EGkRwDVIH6">
                                                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                <field name="OID">javascript.0.Garagentor-Level</field>
                                                                <field name="WITH_DELAY">FALSE</field>
                                                                <value name="VALUE">
                                                                  <block type="variables_get" id="c_~zw5t31()moXj(1PYA">
                                                                    <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                                  </block>
                                                                </value>
                                                                <next>
                                                                  <block type="debug" id="({+DI|zV`-Q5k,6JW#:?">
                                                                    <field name="Severity">log</field>
                                                                    <value name="TEXT">
                                                                      <shadow type="text">
                                                                        <field name="TEXT">test</field>
                                                                      </shadow>
                                                                      <block type="variables_get" id="oUuW5fxl=YMl^rR}4XK6">
                                                                        <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                                      </block>
                                                                    </value>
                                                                    <next>
                                                                      <block type="math_change" id="^.v#E{.:V^`!:9b])7MK">
                                                                        <field name="VAR" id="@-bmg,5A/CNGDI!}zr@0">n</field>
                                                                        <value name="DELTA">
                                                                          <shadow type="math_number" id="rbl|Y8X;TNV7Xx9T-H](">
                                                                            <field name="NUM">-1</field>
                                                                          </shadow>
                                                                        </value>
                                                                      </block>
                                                                    </next>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </statement>
                                                        <statement name="ELSE">
                                                          <block type="timeouts_clearinterval" id="Ca+~Sj5Q6a:^nYN8]_2E">
                                                            <field name="NAME">Intervall</field>
                                                          </block>
                                                        </statement>
                                                      </block>
                                                    </statement>
                                                  </block>
                                                </statement>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </next>
                                  </block>
                                </next>
                              </block>
                            </statement>
                          </block>
                        </xml>
                        

                        Was noch fehlt:
                        Ich muss noch erweitern um die unterschiedlichen Zeiten für hoch und runter.

                        Den Status ob des Öffnungsgrad prüfe ich dann noch mit dem magn. Türsensor am Garagentor. Ist das Tor zugefahren, wird sicherheitshalber immer der Level auf 100 gesetzt.

                        Mal schauen ob ich dann noch das Tor z.B. halbgeöffnet steuern kann. Dann müsste aber noch irgendwie die Richtung gespeichert werden?

                        liv-in-skyL 1 Antwort Letzte Antwort
                        0
                        • A aldoa1

                          @liv-in-sky

                          ich habe das rauf und runter icon mit einem materialdesign progress widget hinbekommen. Das ist normalerweise waagrecht. Mit css rotate habe ich es auf senkrecht formatiert.

                          Gesteuert wird das Widget über einen Datenpunkt (Zahl von 0 bis 100). Bei einem weitereren Datenpunkt ist ist die Zeit (Sekunden) eingetragen.

                          Ein Blockly berechnet nun die Prozente der Öffnung:

                          <xml xmlns="https://developers.google.com/blockly/xml">
                            <variables>
                              <variable id="k~N~xWa~9z$*7T|}dHjw">Level</variable>
                              <variable id="7XjR$HyI.O8[}%8B3HUu">Sekunden</variable>
                              <variable id="@-bmg,5A/CNGDI!}zr@0">n</variable>
                              <variable type="interval" id="Intervall">Intervall</variable>
                              <variable type="interval" id="Intervall2">Intervall2</variable>
                            </variables>
                            <block type="on" id="ES=rZ(C%/.:hu6vqKqg6" x="-162" y="-1012">
                              <field name="OID">javascript.0.Testtrigger</field>
                              <field name="CONDITION">ne</field>
                              <field name="ACK_CONDITION"></field>
                              <statement name="STATEMENT">
                                <block type="variables_set" id="FO_YTiy6!3ZRNkMI$[i6">
                                  <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                  <value name="VALUE">
                                    <block type="get_value" id="3[R;tQEPvMw])VT.U[k|">
                                      <field name="ATTR">val</field>
                                      <field name="OID">javascript.0.Garagentor-Level</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="variables_set" id="Tp!!/-n:zAFip(T5cs;M">
                                      <field name="VAR" id="7XjR$HyI.O8[}%8B3HUu">Sekunden</field>
                                      <value name="VALUE">
                                        <block type="get_value" id="k9p@[;3wKtCdg#zHp2,6">
                                          <field name="ATTR">val</field>
                                          <field name="OID">javascript.0.Garagentor-Oeffnungszeit</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="variables_set" id="R^JIoo(j03dec!yHBCrE">
                                          <field name="VAR" id="@-bmg,5A/CNGDI!}zr@0">n</field>
                                          <value name="VALUE">
                                            <block type="variables_get" id="UYfDiYQz]V^P$o6!LAF^">
                                              <field name="VAR" id="7XjR$HyI.O8[}%8B3HUu">Sekunden</field>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="controls_if" id="tHfq|I*zrOX0a2)jmU@i">
                                              <value name="IF0">
                                                <block type="logic_compare" id="na2rA$LRcOQDDcZB6!zz">
                                                  <field name="OP">EQ</field>
                                                  <value name="A">
                                                    <block type="variables_get" id="-EtIOjzp0shK%9(SIyqA">
                                                      <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="math_number" id="4_-qBYi=TQu-s;E0KU;t">
                                                      <field name="NUM">100</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <statement name="DO0">
                                                <block type="timeouts_setinterval" id="(zZf1a!X6?,s/rDZ%P}W">
                                                  <field name="NAME">Intervall</field>
                                                  <field name="INTERVAL">1</field>
                                                  <field name="UNIT">sec</field>
                                                  <statement name="STATEMENT">
                                                    <block type="controls_if" id="Atr6sN@3INF/%wnoM[6)">
                                                      <mutation else="1"></mutation>
                                                      <value name="IF0">
                                                        <block type="logic_compare" id="J_)m~yZtST)AqK9^(xP8">
                                                          <field name="OP">GTE</field>
                                                          <value name="A">
                                                            <block type="variables_get" id="v`Y/6dZF9F$zVMiD)Mhh">
                                                              <field name="VAR" id="@-bmg,5A/CNGDI!}zr@0">n</field>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="math_number" id="]v|z^tH5?KgrY8#7rvmw">
                                                              <field name="NUM">0</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <statement name="DO0">
                                                        <block type="variables_set" id="itWRzrQeza2P#uY2KQVW">
                                                          <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                          <value name="VALUE">
                                                            <block type="math_arithmetic" id="nIT6(ShvZN=TE:Gkl;(z">
                                                              <field name="OP">MULTIPLY</field>
                                                              <value name="A">
                                                                <shadow type="math_number" id="LIDB?.!Zi{7n(vGip#|I">
                                                                  <field name="NUM">1</field>
                                                                </shadow>
                                                                <block type="math_arithmetic" id="vko{/B4Gr^g(F:g*ghD8">
                                                                  <field name="OP">DIVIDE</field>
                                                                  <value name="A">
                                                                    <shadow type="math_number" id="yS72~**=yT}``bhNlU3i">
                                                                      <field name="NUM">100</field>
                                                                    </shadow>
                                                                  </value>
                                                                  <value name="B">
                                                                    <shadow type="math_number" id="7-Ic$.$.|:{FSL8?84B|">
                                                                      <field name="NUM">1</field>
                                                                    </shadow>
                                                                    <block type="variables_get" id="vzM2GgTVqV@tDb.VU?Vf">
                                                                      <field name="VAR" id="7XjR$HyI.O8[}%8B3HUu">Sekunden</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <value name="B">
                                                                <shadow type="math_number" id="ew+Z2(jGi!l#gXMnbj;c">
                                                                  <field name="NUM">1</field>
                                                                </shadow>
                                                                <block type="variables_get" id="(:pDc]K)YWPSkUS0K$^Y">
                                                                  <field name="VAR" id="@-bmg,5A/CNGDI!}zr@0">n</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </value>
                                                          <next>
                                                            <block type="update" id="R#c4D4$,.fK?=S`4ITDh">
                                                              <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                              <field name="OID">javascript.0.Garagentor-Level</field>
                                                              <field name="WITH_DELAY">FALSE</field>
                                                              <value name="VALUE">
                                                                <block type="variables_get" id="3?bV-J}43]{~7,aEeO%C">
                                                                  <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                                </block>
                                                              </value>
                                                              <next>
                                                                <block type="debug" id="~QwmT)%rd|yu[Avtk8li">
                                                                  <field name="Severity">log</field>
                                                                  <value name="TEXT">
                                                                    <shadow type="text" id="b!kmC=pk@Wbjbvyrb)(S">
                                                                      <field name="TEXT">test</field>
                                                                    </shadow>
                                                                    <block type="variables_get" id="KkubjDBhgOPz3Lp%HZ{T">
                                                                      <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                                    </block>
                                                                  </value>
                                                                  <next>
                                                                    <block type="math_change" id="}R-T}J{Q8!nt3,sraJj`">
                                                                      <field name="VAR" id="@-bmg,5A/CNGDI!}zr@0">n</field>
                                                                      <value name="DELTA">
                                                                        <shadow type="math_number" id="T#mPsXGN|=a.KcY$aTiM">
                                                                          <field name="NUM">-1</field>
                                                                        </shadow>
                                                                      </value>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </statement>
                                                      <statement name="ELSE">
                                                        <block type="timeouts_clearinterval" id="SNHb/i7T?}2X1tJZba,|">
                                                          <field name="NAME">Intervall</field>
                                                        </block>
                                                      </statement>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </statement>
                                              <next>
                                                <block type="controls_if" id="Fsa)%a^yM?xgg4`|Fo;R">
                                                  <value name="IF0">
                                                    <block type="logic_compare" id="lZAP-uLJ49)O*ENScg)n">
                                                      <field name="OP">EQ</field>
                                                      <value name="A">
                                                        <block type="variables_get" id="OE6v1J(L6:2CPVj!.Hn%">
                                                          <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <block type="math_number" id="x{p))3^_uzHY{yz.0$ba">
                                                          <field name="NUM">0</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <statement name="DO0">
                                                    <block type="timeouts_setinterval" id="#h+5-puG,XW`nb1T3,~1">
                                                      <field name="NAME">Intervall2</field>
                                                      <field name="INTERVAL">1</field>
                                                      <field name="UNIT">sec</field>
                                                      <statement name="STATEMENT">
                                                        <block type="controls_if" id="KK|=g64=gZ8}YS~Rx~B-">
                                                          <mutation else="1"></mutation>
                                                          <value name="IF0">
                                                            <block type="logic_compare" id="YNQB/0O$rzkfc]FCjGr.">
                                                              <field name="OP">GTE</field>
                                                              <value name="A">
                                                                <block type="variables_get" id="7,doWul5UOhcQ@f,fYkV">
                                                                  <field name="VAR" id="@-bmg,5A/CNGDI!}zr@0">n</field>
                                                                </block>
                                                              </value>
                                                              <value name="B">
                                                                <block type="math_number" id="Hy+8N:Lq,A4V1QO.r-sU">
                                                                  <field name="NUM">0</field>
                                                                </block>
                                                              </value>
                                                            </block>
                                                          </value>
                                                          <statement name="DO0">
                                                            <block type="variables_set" id="U@n2{Hc1A?ns:_28MQ$*">
                                                              <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                              <value name="VALUE">
                                                                <block type="math_arithmetic" id="4FGq7uKJ918~%ogcj4r_">
                                                                  <field name="OP">ADD</field>
                                                                  <value name="A">
                                                                    <shadow type="math_number">
                                                                      <field name="NUM">1</field>
                                                                    </shadow>
                                                                    <block type="math_arithmetic" id="Ib(vKZ`w*ZS5Da.e~6HZ">
                                                                      <field name="OP">DIVIDE</field>
                                                                      <value name="A">
                                                                        <shadow type="math_number" id="EkpXfXIT+3{McUQ6J[UY">
                                                                          <field name="NUM">100</field>
                                                                        </shadow>
                                                                      </value>
                                                                      <value name="B">
                                                                        <shadow type="math_number">
                                                                          <field name="NUM">1</field>
                                                                        </shadow>
                                                                        <block type="variables_get" id="S/o:^P}R,$#6,}1qTXz8">
                                                                          <field name="VAR" id="7XjR$HyI.O8[}%8B3HUu">Sekunden</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                  <value name="B">
                                                                    <shadow type="math_number">
                                                                      <field name="NUM">1</field>
                                                                    </shadow>
                                                                    <block type="variables_get" id="WJX~$Ka;v7bZ{Y/)*unT">
                                                                      <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <next>
                                                                <block type="update" id="]Y~O6j?3C4EGkRwDVIH6">
                                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                  <field name="OID">javascript.0.Garagentor-Level</field>
                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                  <value name="VALUE">
                                                                    <block type="variables_get" id="c_~zw5t31()moXj(1PYA">
                                                                      <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                                    </block>
                                                                  </value>
                                                                  <next>
                                                                    <block type="debug" id="({+DI|zV`-Q5k,6JW#:?">
                                                                      <field name="Severity">log</field>
                                                                      <value name="TEXT">
                                                                        <shadow type="text">
                                                                          <field name="TEXT">test</field>
                                                                        </shadow>
                                                                        <block type="variables_get" id="oUuW5fxl=YMl^rR}4XK6">
                                                                          <field name="VAR" id="k~N~xWa~9z$*7T|}dHjw">Level</field>
                                                                        </block>
                                                                      </value>
                                                                      <next>
                                                                        <block type="math_change" id="^.v#E{.:V^`!:9b])7MK">
                                                                          <field name="VAR" id="@-bmg,5A/CNGDI!}zr@0">n</field>
                                                                          <value name="DELTA">
                                                                            <shadow type="math_number" id="rbl|Y8X;TNV7Xx9T-H](">
                                                                              <field name="NUM">-1</field>
                                                                            </shadow>
                                                                          </value>
                                                                        </block>
                                                                      </next>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </statement>
                                                          <statement name="ELSE">
                                                            <block type="timeouts_clearinterval" id="Ca+~Sj5Q6a:^nYN8]_2E">
                                                              <field name="NAME">Intervall</field>
                                                            </block>
                                                          </statement>
                                                        </block>
                                                      </statement>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </statement>
                            </block>
                          </xml>
                          

                          Was noch fehlt:
                          Ich muss noch erweitern um die unterschiedlichen Zeiten für hoch und runter.

                          Den Status ob des Öffnungsgrad prüfe ich dann noch mit dem magn. Türsensor am Garagentor. Ist das Tor zugefahren, wird sicherheitshalber immer der Level auf 100 gesetzt.

                          Mal schauen ob ich dann noch das Tor z.B. halbgeöffnet steuern kann. Dann müsste aber noch irgendwie die Richtung gespeichert werden?

                          liv-in-skyL Offline
                          liv-in-skyL Offline
                          liv-in-sky
                          schrieb am zuletzt editiert von
                          #12

                          @aldoa1 hört sich gut an - das vollständige ergebnis würde ich gerne sehen

                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                          A 1 Antwort Letzte Antwort
                          0
                          • liv-in-skyL liv-in-sky

                            @aldoa1 hört sich gut an - das vollständige ergebnis würde ich gerne sehen

                            A Offline
                            A Offline
                            aldoa1
                            schrieb am zuletzt editiert von
                            #13

                            @liv-in-sky

                            ich bekomme es leider nicht hin mit dem ermitteln ob hoch oder runter.
                            Es gibt ja keinen Datenpunkt bei shelly für die Richtung.
                            Einen eigenen Datenpunkt habe ich gesetzt. Das funktioniert aber dann nur wenn der Türkontkat meldet "zu" oder "offen". Bei "zu" könnte ich dann den Datenpunkt die Richtung auf "hoch" stellen.

                            Was aber wenn der Türkontakt "offen" meldet. Das ist ja alles von Level > 0

                            liv-in-skyL 1 Antwort Letzte Antwort
                            0
                            • A aldoa1

                              @liv-in-sky

                              ich bekomme es leider nicht hin mit dem ermitteln ob hoch oder runter.
                              Es gibt ja keinen Datenpunkt bei shelly für die Richtung.
                              Einen eigenen Datenpunkt habe ich gesetzt. Das funktioniert aber dann nur wenn der Türkontkat meldet "zu" oder "offen". Bei "zu" könnte ich dann den Datenpunkt die Richtung auf "hoch" stellen.

                              Was aber wenn der Türkontakt "offen" meldet. Das ist ja alles von Level > 0

                              liv-in-skyL Offline
                              liv-in-skyL Offline
                              liv-in-sky
                              schrieb am zuletzt editiert von
                              #14

                              @aldoa1

                              momentan weiß ich nicht so wirklich , was genau für eine schaltung bzw aufbau du hast. wir können gerne mal teamviewen oder anydesk (bevorzugt) nutzen um gemeinsam das ganze anzuschauen

                              habe bis jetzt nur über das widget nachgedacht - die garagenschaltung war bisher nicht in meinem fokus

                              wie wird den das ganze geschalten? evtl muss du einen 2ten türöffner kontakt nehmen

                              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                              1 Antwort Letzte Antwort
                              0
                              • MichMeinM MichMein

                                @aldoa1 Hi, mit was werden die Rollos angesteuert?

                                MichMeinM Offline
                                MichMeinM Offline
                                MichMein
                                schrieb am zuletzt editiert von
                                #15

                                @MichMein sagte in Öffnungsgrad per Icon:

                                @aldoa1 Hi, mit was werden die Rollos angesteuert?

                                @aldoa1 ich frage nochmals nach, mit was für einem Gerät steuerst Du denn Deine Rollläden an?

                                Gruß Michael
                                Sofern Beiträge hilfreich für Dich sind, nutze das Voting unten rechts.

                                A 1 Antwort Letzte Antwort
                                0
                                • MichMeinM MichMein

                                  @MichMein sagte in Öffnungsgrad per Icon:

                                  @aldoa1 Hi, mit was werden die Rollos angesteuert?

                                  @aldoa1 ich frage nochmals nach, mit was für einem Gerät steuerst Du denn Deine Rollläden an?

                                  A Offline
                                  A Offline
                                  aldoa1
                                  schrieb am zuletzt editiert von
                                  #16

                                  @MichMein

                                  Im Beispiel geht es um die Garage.
                                  Die wird mit einem Shelly 1 gesteuert.

                                  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

                                  683

                                  Online

                                  32.6k

                                  Benutzer

                                  81.9k

                                  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