Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Blockly Verzögerung Verständnisfrage *gelöst*

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Blockly Verzögerung Verständnisfrage *gelöst*

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @surfer09 last edited by

      @surfer09 sagte: Wie müsste ich es denn wohl umbauen

      Prinzip:

      Blockly_temp.JPG

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

        @paul53 Jetzt überforderst du mich aber :-). Das Skript hatte ich vorhin bei meiner Suche nach einer Lösung schon gesehen, ich versteh's nur nicht und weiß nicht, wie ich das auf mein Skript übertragen soll. 😌

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

          @surfer09 sagte: wie ich das auf mein Skript übertragen soll.

          Baue es einfach nach und verwende als Trigger "smartmeter.0.1-0:16_7_0__255.value". Wie ich an deinem Skript sehe, sind die Werte ebenfalls negativ bei Einspeisung.

          Zur Erläuterung: Solange der Überschuss nicht 5 Minuten lang 2500 W übersteigt, wird der Timer delayOn gestoppt. Umgekehrt gilt es für das Ausschalten bei < 200 W Überschuss.

          <xml xmlns="https://developers.google.com/blockly/xml">
            <variables>
              <variable id="^=uP5@RSR`l|hFJn~fpS">ueberschuss</variable>
              <variable type="timeout" id="delayOn">delayOn</variable>
              <variable type="timeout" id="delayOff">delayOff</variable>
            </variables>
            <block type="on_ext" id="Bi(b0~M*#7vBa*4Fjm_}" x="-47" y="-136">
              <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=",PY@d;1NRAn=wBiN;I}i">
                  <field name="oid">smartmeter.0.1-0:16_7_0__255.value</field>
                </shadow>
              </value>
              <statement name="STATEMENT">
                <block type="variables_set" id="=:$Vs7VD8D_yS3G$:Ufd">
                  <field name="VAR" id="^=uP5@RSR`l|hFJn~fpS">ueberschuss</field>
                  <value name="VALUE">
                    <block type="math_arithmetic" id="G$a6K:JGJ[,=CD!1V6+;">
                      <field name="OP">MINUS</field>
                      <value name="A">
                        <shadow type="math_number" id="h$_o7x#:~s!r_?uj?;KG">
                          <field name="NUM">0</field>
                        </shadow>
                      </value>
                      <value name="B">
                        <shadow type="math_number" id="K@8XOX%`p.]Kg)eP%*:f">
                          <field name="NUM">1</field>
                        </shadow>
                        <block type="on_source" id="|,ww!2=osF^]?E]_?4}m">
                          <field name="ATTR">state.val</field>
                        </block>
                      </value>
                    </block>
                  </value>
                  <next>
                    <block type="controls_if" id=".A2Q7~K}2s^e1$AMvEQW">
                      <mutation elseif="1"></mutation>
                      <value name="IF0">
                        <block type="logic_compare" id="54}w6][Vvlz2B`HjhO?^">
                          <field name="OP">LTE</field>
                          <value name="A">
                            <block type="on_source" id="1=6l-TNTb$n@.7:;EN6Q">
                              <field name="ATTR">state.val</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="math_number" id="m6RS{rpyYQf.8*B_F#4A">
                              <field name="NUM">2500</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="timeouts_cleartimeout" id=",eKCW?*-M^Z.Q3tJJeIS">
                          <field name="NAME">delayOn</field>
                        </block>
                      </statement>
                      <value name="IF1">
                        <block type="logic_multi_and" id="H0~R#C6XS],#/!X!3SB*">
                          <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                          <value name="AND0">
                            <block type="time_compare_ex" id="$]0EoC)?q@$mLMAe{B)L">
                              <mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true" actual_time="true"></mutation>
                              <field name="USE_ACTUAL_TIME">TRUE</field>
                              <field name="OPTION">between</field>
                              <value name="START_TIME">
                                <shadow type="text" id="Ide=Ba^dJ}rlWv_6:w`;">
                                  <field name="TEXT">09:00</field>
                                </shadow>
                              </value>
                              <value name="END_TIME">
                                <shadow type="text" id="eagL~PIJ90Wy0YRvhl*@">
                                  <field name="TEXT">20:30</field>
                                </shadow>
                              </value>
                            </block>
                          </value>
                          <value name="AND1">
                            <block type="logic_negate" id="oaEa-L*O]Lm8ZxV}2UWD">
                              <value name="BOOL">
                                <block type="timeouts_gettimeout" id="kQ|1R?^J`56K;9VEz-;/">
                                  <field name="NAME">delayOn</field>
                                </block>
                              </value>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO1">
                        <block type="timeouts_settimeout" id="hq{w~@GSM?q..=;=BNor">
                          <field name="NAME">delayOn</field>
                          <field name="DELAY">5</field>
                          <field name="UNIT">min</field>
                          <statement name="STATEMENT">
                            <block type="controls_if" id="4q2zW(sff?srLiVUp?Z*">
                              <value name="IF0">
                                <block type="logic_negate" id="B6#|eUb,qXSYKJg^Sd_|">
                                  <value name="BOOL">
                                    <block type="get_value" id="*ujU{*[H!yQU-G+0u0)T">
                                      <field name="ATTR">val</field>
                                      <field name="OID">shelly.0.shellyplus1pm#e86beae68154#1.Relay0.Switch</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <statement name="DO0">
                                <block type="control" id="#MOLgyWt_Z#^uGRN_@~#">
                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                  <field name="OID">shelly.0.shellyplus1pm#e86beae68154#1.Relay0.Switch</field>
                                  <field name="WITH_DELAY">FALSE</field>
                                  <value name="VALUE">
                                    <block type="logic_boolean" id="QJTCt4$YJ*]2`Ysyxk#A">
                                      <field name="BOOL">TRUE</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="debug" id="#xf_Vi?T(!cCL2xRg_N|">
                                      <field name="Severity">warn</field>
                                      <value name="TEXT">
                                        <shadow type="text" id="`d{*cC/pD|-#Sa/T`KJ1">
                                          <field name="TEXT">Überschuss - Heizstab eingeschaltet</field>
                                        </shadow>
                                      </value>
                                    </block>
                                  </next>
                                </block>
                              </statement>
                            </block>
                          </statement>
                        </block>
                      </statement>
                      <next>
                        <block type="controls_if" id="SF9#Uf]^QpH8z7~u[}27">
                          <mutation elseif="1"></mutation>
                          <value name="IF0">
                            <block type="logic_compare" id="DdWy97[5oXFUu*^gFUSa">
                              <field name="OP">GTE</field>
                              <value name="A">
                                <block type="on_source" id="WNzkUt8gFOlwECJl#w/7">
                                  <field name="ATTR">state.val</field>
                                </block>
                              </value>
                              <value name="B">
                                <block type="math_number" id="K[7IOHX=L~{:m.GCiLCs">
                                  <field name="NUM">200</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO0">
                            <block type="timeouts_cleartimeout" id="ktE^dG(3+8Y{+m60@)Z%">
                              <field name="NAME">delayOff</field>
                            </block>
                          </statement>
                          <value name="IF1">
                            <block type="logic_negate" id="EfN(0OF/F.aBG=h,yv=P">
                              <value name="BOOL">
                                <block type="timeouts_gettimeout" id="Ftz[u3XuL.,?3w=)-xnb">
                                  <field name="NAME">delayOff</field>
                                </block>
                              </value>
                            </block>
                          </value>
                          <statement name="DO1">
                            <block type="timeouts_settimeout" id="n0x@~^oKM7u!2m8)0;|R">
                              <field name="NAME">delayOff</field>
                              <field name="DELAY">2</field>
                              <field name="UNIT">min</field>
                              <statement name="STATEMENT">
                                <block type="controls_if" id="{lS`z#HyrQ/Io5k%V9EZ">
                                  <value name="IF0">
                                    <block type="get_value" id="}HW^(]SED,e79JMzXJ5S">
                                      <field name="ATTR">val</field>
                                      <field name="OID">shelly.0.shellyplus1pm#e86beae68154#1.Relay0.Switch</field>
                                    </block>
                                  </value>
                                  <statement name="DO0">
                                    <block type="control" id="RakNjasG^$$z#ZUABtL5">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                      <field name="OID">shelly.0.shellyplus1pm#e86beae68154#1.Relay0.Switch</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE">
                                        <block type="logic_boolean" id="QD-OowK2lJqbX~b;9_vf">
                                          <field name="BOOL">FALSE</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="debug" id="idE{vj!X{wiKj|sW,dM-">
                                          <field name="Severity">warn</field>
                                          <value name="TEXT">
                                            <shadow type="text" id="`r,r(rlJosU`ny{CzRO/">
                                              <field name="TEXT">Heizstab ausgeschaltet</field>
                                            </shadow>
                                          </value>
                                        </block>
                                      </next>
                                    </block>
                                  </statement>
                                </block>
                              </statement>
                            </block>
                          </statement>
                        </block>
                      </next>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
          </xml>
          

          surfer09 1 Reply Last reply Reply Quote 1
          • surfer09
            surfer09 @paul53 last edited by surfer09

            @paul53 Ich glaube es ist vollbracht. 😉 Hätte ich so alleine mit Sicherheit nicht geschafft.

            ca489bfa-18a2-4fb5-835a-60ce7fadbdc6-grafik.png

            Danke @paul53!

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

              @surfer09 sagte: es ist vollbracht.

              Die Vergleiche sind falsch herum!

              Du meinst, dass so kurze Verzögerungen sinnvoll sind für das Schalten eines Heizstabes? Oder sind die nur zum Testen so kurz? Wie hoch ist die Leistungsaufnahme des Heizstabes?

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

                @paul53 Die Verzögerungen habe ich absichtlich erstmal so kurz gewählt. Werden dann noch angepasst.
                Der Heizstab hat 2KW.
                So müsste es richtig sein?!

                8ca6e454-1d9a-4a71-9ceb-33ffdf7016c0-grafik.png

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

                  @surfer09 sagte: Der Heizstab hat 2KW.

                  Die Hysterese ist mit 1980 W zu gering. Sie muss etwas höher sein, als die Leistungsaufnahme, da sonst im Grenzbereich ständig ein- und ausgeschaltet wird.

                  @surfer09 sagte in Blockly Verzögerung Verständnisfrage *gelöst*:

                  So müsste es richtig sein?!

                  Nein, die Vergleiche sind immer noch falsch herum.

                  Blockly_temp.JPG

                  Die Prüfung der Uhrzeit muss nur beim Einschalten erfolgen (falls überhaupt erforderlich).

                  surfer09 2 Replies Last reply Reply Quote 0
                  • surfer09
                    surfer09 @paul53 last edited by

                    @paul53 Okay, habe ich jetzt angepasst.
                    Das mit der Uhrzeit hatte ich absichtlich mit eingebaut. Ich hatte heute morgen nämlich auch ein Problem mit diesem Skript, was den Speicher etwas leeren soll. Das funktionierte heute morgen gar nicht.
                    Er schaltete andauernd ein und aus.

                    Angepasstes Skript:

                    7f5b8aae-ec4a-4040-82fc-2e0f34c0625e-grafik.png

                    4be637ab-6286-4897-883e-096984b0513b-grafik.png

                    Batterie leeren

                    b360f197-2c20-4604-9bde-1c996984b374-grafik.png

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

                      @paul53 sagte in Blockly Verzögerung Verständnisfrage *gelöst*:

                      @surfer09 sagte: Der Heizstab hat 2KW.

                      Die Hysterese ist mit 1980 W zu gering. Sie muss etwas höher sein, als die Leistungsaufnahme, da sonst im Grenzbereich ständig ein- und ausgeschaltet wird.

                      Du meinst so?

                      d431491e-f5ed-4804-b25b-92c35e2e93a1-grafik.png

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

                        @surfer09 sagte: Du meinst so?

                        Im Ernst: Nur 2020 W Hysterese?

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

                          @paul53 Ehrlich gesagt weiß ich jetzt nicht genau was damit gemeint ist. Wie hoch sollten die Werte denn sein?

                          Homoran paul53 2 Replies Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators @surfer09 last edited by

                            @surfer09 sagte in Blockly Verzögerung Verständnisfrage *gelöst*:

                            Wie hoch sollten die Werte denn sein?

                            so viel wie vernachlässigbar zusätzlich zum Heizstab laufen darf/könnte, ohne dass bei jedem Anschalten der WC Beleuchtung der Heizstab ausschalten muss.

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

                              @surfer09 sagte: Wie hoch sollten die Werte denn sein?

                              Ich hatte 2300 W vorgeschlagen (Hysterese: 2250 W).

                              Blockly_temp.JPG

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

                                @paul53 Okay, dann hatte ich das nicht so verstanden, dass ich das bei mir so hinterlegen sollte, Sorry! Ich dachte, der Code wäre ein Beispiel aus deinem privaten Bereich.
                                Ich hab's jetzt angepasst

                                6cb95175-b42d-4e4b-b71c-7be0907ec197-grafik.png

                                Und das bedeutet jetzt, dass mindestens 2250 Watt Überschuss nötig sind, um einzuschalten?

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

                                  @surfer09 sagte: mindestens 2250 Watt Überschuss nötig sind, um einzuschalten?

                                  Mind. 2300 W Überschuss zum Einschalten. Wie groß ist die PV-Anlage (Wp)?

                                  Übrigens: Wenn um 20:30 Uhr der Überschuss noch >= 50 W ist, bleibt der Heizstab die ganze Nacht eingeschaltet.

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

                                    @paul53 sagte in Blockly Verzögerung Verständnisfrage *gelöst*:

                                    @surfer09 sagte: mindestens 2250 Watt Überschuss nötig sind, um einzuschalten?

                                    Mind. 2300 W Überschuss zum Einschalten. Wie groß ist die PV-Anlage (Wp)?

                                    4,5 KW

                                    Übrigens: Wenn um 20:30 Uhr der Überschuss noch >= 50 W ist, bleibt der Heizstab die ganze Nacht eingeschaltet.

                                    Och ne, das geht ja auch nicht. Dann muss ich die Uhrzeit weiter nach hinten schieben.

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

                                      @surfer09 sagte: 4,5 KW

                                      Dann muss man den Heizstab nicht schon bei 2050 W aktivieren.

                                      @surfer09 sagte in Blockly Verzögerung Verständnisfrage *gelöst*:

                                      Dann muss ich die Uhrzeit weiter nach hinten schieben.

                                      ... oder die Prüfung der Uhrzeit beim Ausschalten ganz weglassen.

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

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      736
                                      Online

                                      32.0k
                                      Users

                                      80.4k
                                      Topics

                                      1.3m
                                      Posts

                                      3
                                      20
                                      570
                                      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