Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Umschalten bei einem gewissen wert

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Umschalten bei einem gewissen wert

    This topic has been deleted. Only users with topic management privileges can see it.
    • F
      Fritzk last edited by

      Als Anfänger habe ich mich jetzt auch mal an blockly versucht.
      Das Script soll einen Schalter bei überschreiten eines wertes einschalten und bei unterschreiten des wertes ausschalten.
      Soweit funktioniert es auch, aber solang der wert über 80 ist schaltet es jede sekunde ein. Was kann ich da ändern so das es nur einmal schaltet wenn der wert höher als 80 ist und einmal schaltet wenn der wert kleiner wie 80 ist

      Blockly.gif

      Thomas Braun Homoran paul53 3 Replies Last reply Reply Quote 0
      • Thomas Braun
        Thomas Braun Most Active @Fritzk last edited by

        @Fritzk Nur einen Trigger verwenden
        if, then, else

        1 Reply Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators @Fritzk last edited by

          @Fritzk sagte in Umschalten bei einem gewissen wert:

          Was kann ich da ändern so das es nur einmal schaltet

          Falls WERT > 80 UND Schalter ist false

          1 Reply Last reply Reply Quote 0
          • dslraser
            dslraser Forum Testing Most Active last edited by

            und auch drann denken das der Wert auch = 80 sein kann.

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

              @Fritzk sagte:

              nur einmal schaltet wenn der wert höher als 80 ist und einmal schaltet wenn der wert kleiner wie 80 ist

              Nur schalten, wenn Istzustand != Sollzustand:

              Blockly_temp.JPG

              Asgothian A 2 Replies Last reply Reply Quote 0
              • Asgothian
                Asgothian Developer @paul53 last edited by

                @paul53
                Hmm.. geht das nicht auch ohne extra Variable und aktuellen Wert holen :

                Screen Shot 2020-10-30 at 21.20.56 .png

                A.

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

                  @Asgothian sagte:

                  geht das nicht auch ohne extra Variable und aktuellen Wert holen :

                  So geht es natürlich auch. Nachteil: Zweimal setState(), was deutlich mehr Ressourcen (RAM) verbraucht als getState().

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

                    @paul53
                    Ich möchte so ähnlich im dem Blockly ab einem wert von 10kw Einspeisung die Boilerpumpe einschalten. Unter 10kw wieder aus. Könnt ihr mir das Skript anpassen bzw so ändern das ich es selbst nachbauen kann?

                    Samson71 1 Reply Last reply Reply Quote 0
                    • Samson71
                      Samson71 Global Moderator @a0377016 last edited by

                      @a0377016 sagte in Umschalten bei einem gewissen wert:

                      Könnt ihr mir das Skript anpassen bzw so ändern das ich es selbst nachbauen kann?

                      Dann zeig doch mal Deinen anzupassenden Versuch, der "umgebaut" werden soll.

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

                        @paul53 said in Umschalten bei einem gewissen wert:

                        @Asgothian sagte:

                        geht das nicht auch ohne extra Variable und aktuellen Wert holen :

                        So geht es natürlich auch. Nachteil: Zweimal setState(), was deutlich mehr Ressourcen (RAM) verbraucht als getState().

                        @paul53 said in Umschalten bei einem gewissen wert:

                        @Fritzk sagte:

                        nur einmal schaltet wenn der wert höher als 80 ist und einmal schaltet wenn der wert kleiner wie 80 ist

                        Nur schalten, wenn Istzustand != Sollzustand:

                        Blockly_temp.JPG

                        Ich möchte meiner Boilerpumpe ab Wert 10KW einschalten lassen. Unter 10kw aus. Könnt ihr mir das Skript anpassen?

                        Samson71 F 2 Replies Last reply Reply Quote 0
                        • Samson71
                          Samson71 Global Moderator @a0377016 last edited by

                          @a0377016
                          Warum bitte Mehrfachposts???

                          A 1 Reply Last reply Reply Quote 0
                          • A
                            a0377016 @Samson71 last edited by

                            @samson71
                            Sorry mein Fehler

                            1 Reply Last reply Reply Quote 0
                            • F
                              Fritzk @a0377016 last edited by

                              @a0377016
                              hab jetzt folgendes Blockly am laufen.

                              <xml xmlns="https://developers.google.com/blockly/xml">
                                <block type="on_ext" id="=13=V!WX4z5cEfo=Xc?;" x="13" y="12">
                                  <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                                  <field name="CONDITION">ne</field>
                                  <field name="ACK_CONDITION"></field>
                                  <value name="OID0">
                                    <shadow type="field_oid" id="D9)K[URRT:rK|b?ID9@^">
                                      <field name="oid">modbus.0.holdingRegisters.1.40074_Netz_Leistung</field>
                                    </shadow>
                                  </value>
                                  <statement name="STATEMENT">
                                    <block type="controls_if" id="ZywckQEwc-g3|bX1`Nl4">
                                      <mutation elseif="1"></mutation>
                                      <value name="IF0">
                                        <block type="logic_operation" id="^F4rvJ=n~Mio9!#nyeUt">
                                          <field name="OP">AND</field>
                                          <value name="A">
                                            <block type="logic_compare" id="GnL^My,h)8aorqIidR*#">
                                              <field name="OP">GT</field>
                                              <value name="A">
                                                <block type="on_source" id="9=@^y@L*%y{pI9+xL6~(">
                                                  <field name="ATTR">state.val</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="math_number" id="-#Q)U1[?.GE4^qnX~`Hw">
                                                  <field name="NUM">80</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="logic_compare" id="4_Jr.u-YFRO.#V+)#nPr">
                                              <field name="OP">LTE</field>
                                              <value name="A">
                                                <block type="on_source" id="!7EJVK)kRLAuLJ+|z#QQ">
                                                  <field name="ATTR">oldState.val</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="math_number" id="4m-%!:$k[#0_W`!CLLMf">
                                                  <field name="NUM">80</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <statement name="DO0">
                                        <block type="control" id="}1aLEN]lXiaTfGGNGC4a">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                          <field name="OID">shelly.0.SHSW-1#E09806962EAB#1.Relay0.Switch</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE">
                                            <block type="logic_boolean" id="X3L)zgaHWceez+1wx8OO">
                                              <field name="BOOL">TRUE</field>
                                            </block>
                                          </value>
                                        </block>
                                      </statement>
                                      <value name="IF1">
                                        <block type="logic_operation" id="VO{L%xyIzM]}P!_#$~$D">
                                          <field name="OP">AND</field>
                                          <value name="A">
                                            <block type="logic_compare" id="@$-b*ai@{+NAJ39lq`Bc">
                                              <field name="OP">LT</field>
                                              <value name="A">
                                                <block type="on_source" id="hMx(}mw=|Bov-)!|Hy_P">
                                                  <field name="ATTR">state.val</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="math_number" id="{h4M2A%F]4-rG,V8wWH+">
                                                  <field name="NUM">80</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="logic_compare" id="5BfN@jqY#|ir?_U0,FE_">
                                              <field name="OP">GTE</field>
                                              <value name="A">
                                                <block type="on_source" id="T!(5oKqz6@DoB^1Jzu0y">
                                                  <field name="ATTR">oldState.val</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <block type="math_number" id="$+[513*k-EV-#Gv,C$XM">
                                                  <field name="NUM">80</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <statement name="DO1">
                                        <block type="control" id="WSKY6uW#HuBF%v7Z(BJi">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                          <field name="OID">shelly.0.SHSW-1#E09806962EAB#1.Relay0.Switch</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE">
                                            <block type="logic_boolean" id="b{Esv~`7NL]4lcAFg?1}">
                                              <field name="BOOL">FALSE</field>
                                            </block>
                                          </value>
                                        </block>
                                      </statement>
                                    </block>
                                  </statement>
                                </block>
                              </xml>
                              

                              Musst nur deine Datenpunkte anpassen

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              390
                              Online

                              31.9k
                              Users

                              80.2k
                              Topics

                              1.3m
                              Posts

                              8
                              13
                              1678
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo