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. Blockly
  5. Umschalten bei einem gewissen wert

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    2.9k

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Umschalten bei einem gewissen wert

Geplant Angeheftet Gesperrt Verschoben Blockly
13 Beiträge 8 Kommentatoren 2.3k Aufrufe 6 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.
  • dslraserD Offline
    dslraserD Offline
    dslraser
    Forum Testing Most Active
    schrieb am zuletzt editiert von
    #4

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

    1 Antwort Letzte Antwort
    0
    • F Fritzk

      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

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #5

      @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

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      AsgothianA A 2 Antworten Letzte Antwort
      0
      • paul53P 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

        AsgothianA Offline
        AsgothianA Offline
        Asgothian
        Developer
        schrieb am zuletzt editiert von
        #6

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

        Screen Shot 2020-10-30 at 21.20.56 .png

        A.

        ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
        "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

        paul53P 1 Antwort Letzte Antwort
        0
        • AsgothianA Asgothian

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

          Screen Shot 2020-10-30 at 21.20.56 .png

          A.

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #7

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

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          A 1 Antwort Letzte Antwort
          0
          • paul53P 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

            A Offline
            A Offline
            a0377016
            schrieb am zuletzt editiert von
            #8

            @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?

            Samson71S 1 Antwort Letzte Antwort
            0
            • A a0377016

              @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?

              Samson71S Offline
              Samson71S Offline
              Samson71
              Global Moderator
              schrieb am zuletzt editiert von
              #9

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

              Markus

              Bitte beachten:
              Hinweise für gute Forenbeiträge
              Maßnahmen zum Schutz des Forums

              1 Antwort Letzte Antwort
              0
              • paul53P 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 Offline
                A Offline
                a0377016
                schrieb am zuletzt editiert von
                #10

                @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?

                Samson71S F 2 Antworten Letzte Antwort
                0
                • A a0377016

                  @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?

                  Samson71S Offline
                  Samson71S Offline
                  Samson71
                  Global Moderator
                  schrieb am zuletzt editiert von
                  #11

                  @a0377016
                  Warum bitte Mehrfachposts???

                  Markus

                  Bitte beachten:
                  Hinweise für gute Forenbeiträge
                  Maßnahmen zum Schutz des Forums

                  A 1 Antwort Letzte Antwort
                  0
                  • Samson71S Samson71

                    @a0377016
                    Warum bitte Mehrfachposts???

                    A Offline
                    A Offline
                    a0377016
                    schrieb am zuletzt editiert von
                    #12

                    @samson71
                    Sorry mein Fehler

                    1 Antwort Letzte Antwort
                    0
                    • A a0377016

                      @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?

                      F Offline
                      F Offline
                      Fritzk
                      schrieb am zuletzt editiert von
                      #13

                      @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 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

                      654

                      Online

                      32.6k

                      Benutzer

                      82.3k

                      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