Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Warmwasser schalten mit PV Überschuss

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Warmwasser schalten mit PV Überschuss

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

      @paul53 sagte in Warmwasser schalten mit PV Überschuss:

      Du meinst, er schaltet 2 Heizwendeln in Reihe, so dass sie nur den halben Strom einer Heizwendel aufnehmen? Phasen kann man nicht in Reihe schalten.

      so wird er es gemeint haben!

      1 Reply Last reply Reply Quote 0
      • J
        jwedenig Most Active @paul53 last edited by

        @paul53 sagte in Warmwasser schalten mit PV Überschuss:

        Stufenschaltung unter den geänderten Bedingungen:

        du bist ein Wahnsinn! Hast Du das bei Dir am Laufen oder programmierst du das so schnell?
        Das möcht ich auch können

        1 Reply Last reply Reply Quote 0
        • J
          jwedenig Most Active @paul53 last edited by

          @paul53 sagte in Warmwasser schalten mit PV Überschuss:

          Welche Leistung hat die PV-Anlage?

          11kwp

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

            @jwedenig sagte: 11kwp

            Dann sollen nur 2,25 kW für WW genutzt werden, obwohl 4,5 kW möglich wären?

            J 1 Reply Last reply Reply Quote 0
            • J
              jwedenig Most Active @paul53 last edited by

              @paul53
              naja, ist ja auch nur zur Unterstützung für die Gastherme, damit habe ich im Herbst und Frühjahr auch was davon, und im Sommer sollten ja die 2,25kw reichen für 50 Grad warmes Wasser, oder?

              J 1 Reply Last reply Reply Quote 0
              • J
                jwedenig Most Active @jwedenig last edited by

                @paul53
                Ich habe leider keine Erfahrungswerte was Heizstab kw Leistung betrifft.
                Vertraue da ganz auf meinen Freund!
                Mein Wasserspeicher hat 150Liter!

                1 Reply Last reply Reply Quote 0
                • J
                  jwedenig Most Active @paul53 last edited by

                  @paul53 sagte in Warmwasser schalten mit PV Überschuss:

                  @jwedenig sagte: 750Watt Überschuss heizen! und die 3 Phase ist dann mit 1,5kW

                  Stufenschaltung unter den geänderten Bedingungen:

                  Blockly_temp.JPG

                  Hast du das als Blockly Export auch? 😊

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

                    @jwedenig sagte: als Blockly Export auch?

                    <xml xmlns="https://developers.google.com/blockly/xml">
                      <variables>
                        <variable id="#ZO}puq!byH)d[RA8.u~">stufe</variable>
                        <variable id="S`Q7El*S8|6o7zjVveF`">ueberschuss</variable>
                        <variable type="timeout" id="delayOn">delayOn</variable>
                        <variable type="timeout" id="delayOff">delayOff</variable>
                      </variables>
                      <block type="variables_set" id="V88W|+Iln7v+rgj)=Zch" x="13" y="-63">
                        <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                        <value name="VALUE">
                          <block type="math_arithmetic" id="UPGMM~b*V$d-a*#;tS[D" inline="false">
                            <field name="OP">ADD</field>
                            <value name="A">
                              <shadow type="math_number" id="~wy?L?:xH(Ni)}x,PFCD">
                                <field name="NUM">1</field>
                              </shadow>
                              <block type="logic_ternary" id="*J#=-SvRj,t10JsQT^g)" inline="true">
                                <value name="IF">
                                  <block type="get_value" id="Di]!Es+iNie7c[+9)*;x">
                                    <field name="ATTR">val</field>
                                    <field name="OID">0_userdata.0.Blockly.Switch1</field>
                                  </block>
                                </value>
                                <value name="THEN">
                                  <block type="math_number" id="e=$;Dm*Kdv-Y8so-i~0#">
                                    <field name="NUM">1</field>
                                  </block>
                                </value>
                                <value name="ELSE">
                                  <block type="math_number" id="`O}G]nrYU1J(u^B(cJ4D">
                                    <field name="NUM">0</field>
                                  </block>
                                </value>
                              </block>
                            </value>
                            <value name="B">
                              <shadow type="math_number" id="};}!|b@GbaTL{Y_1M4mO">
                                <field name="NUM">1</field>
                              </shadow>
                              <block type="logic_ternary" id=";LD9IL!$vH=aILt*01D]" inline="true">
                                <value name="IF">
                                  <block type="get_value" id="UP`ZrOpZ0?YW7(BPAKu=">
                                    <field name="ATTR">val</field>
                                    <field name="OID">0_userdata.0.Blockly.Switch2</field>
                                  </block>
                                </value>
                                <value name="THEN">
                                  <block type="math_number" id="_#[$Y6bW6I=KD6W@i8-H">
                                    <field name="NUM">2</field>
                                  </block>
                                </value>
                                <value name="ELSE">
                                  <block type="math_number" id="a`){P].I3sR02/vH?$|t">
                                    <field name="NUM">0</field>
                                  </block>
                                </value>
                              </block>
                            </value>
                          </block>
                        </value>
                        <next>
                          <block type="on_ext" id="^=k13pGi`kMjtE||vY.J">
                            <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="n:wY~I3GQO$7,0:+.oY=">
                                <field name="oid">0_userdata.0.Blockly.Bezug-Einspeisung</field>
                              </shadow>
                            </value>
                            <statement name="STATEMENT">
                              <block type="variables_set" id="U0g[6)DF7XBr6PjSBC1%">
                                <field name="VAR" id="S`Q7El*S8|6o7zjVveF`">ueberschuss</field>
                                <value name="VALUE">
                                  <block type="math_arithmetic" id="fF$hk1tVi-R05oeMt;V%">
                                    <field name="OP">MINUS</field>
                                    <value name="A">
                                      <shadow type="math_number" id="ixiYq]/$A+RSmijBZE[,">
                                        <field name="NUM">0</field>
                                      </shadow>
                                    </value>
                                    <value name="B">
                                      <shadow type="math_number" id="Cs,pKE7(!7+1jmwBW.2/">
                                        <field name="NUM">1</field>
                                      </shadow>
                                      <block type="on_source" id="f=2?mi+jttya*Yya7dG.">
                                        <field name="ATTR">state.val</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                                <next>
                                  <block type="comment" id="9X:XKXRgH!xZ!=zZbThm">
                                    <field name="COMMENT">3 mal 750 W</field>
                                    <next>
                                      <block type="controls_if" id="?{[99~rn+X@-!776Gil$">
                                        <mutation elseif="1"></mutation>
                                        <value name="IF0">
                                          <block type="logic_compare" id="d%IZlzT50i(a7nefKk6]">
                                            <field name="OP">LT</field>
                                            <value name="A">
                                              <block type="variables_get" id="lg4*^=8|`oo@q1o#)S/S">
                                                <field name="VAR" id="S`Q7El*S8|6o7zjVveF`">ueberschuss</field>
                                              </block>
                                            </value>
                                            <value name="B">
                                              <block type="math_number" id="vP_iZf?M;`@RCY1gD^i:">
                                                <field name="NUM">1000</field>
                                              </block>
                                            </value>
                                          </block>
                                        </value>
                                        <statement name="DO0">
                                          <block type="timeouts_cleartimeout" id="|#WysqWLOkMz:?pQ*-CZ">
                                            <field name="NAME">delayOn</field>
                                          </block>
                                        </statement>
                                        <value name="IF1">
                                          <block type="logic_negate" id="dch2(fx(/ykyn#X-R`9x">
                                            <value name="BOOL">
                                              <block type="timeouts_gettimeout" id="xJVx:Mi5[U_(t*bw(Yq$">
                                                <field name="NAME">delayOn</field>
                                              </block>
                                            </value>
                                          </block>
                                        </value>
                                        <statement name="DO1">
                                          <block type="timeouts_settimeout" id="=EI:`22NaF],y?uV^b1B">
                                            <field name="NAME">delayOn</field>
                                            <field name="DELAY">10</field>
                                            <field name="UNIT">min</field>
                                            <statement name="STATEMENT">
                                              <block type="controls_if" id="L^8:G3aDU.xP#v0K7^n[">
                                                <value name="IF0">
                                                  <block type="logic_compare" id="rRm-_cjXetCm)~hcAE~}">
                                                    <field name="OP">LT</field>
                                                    <value name="A">
                                                      <block type="variables_get" id="k?Bzt4RS=S!C{E%~JKR%">
                                                        <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                                      </block>
                                                    </value>
                                                    <value name="B">
                                                      <block type="math_number" id="?UTjTS/9I`U;T!+,CaMi">
                                                        <field name="NUM">3</field>
                                                      </block>
                                                    </value>
                                                  </block>
                                                </value>
                                                <statement name="DO0">
                                                  <block type="math_change" id="j%wz0Z;.Z9l}/YcJ|u@O">
                                                    <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                                    <value name="DELTA">
                                                      <shadow type="math_number" id="*QTjL.s^?cd[t)LK(x*L">
                                                        <field name="NUM">1</field>
                                                      </shadow>
                                                    </value>
                                                    <next>
                                                      <block type="procedures_callnoreturn" id="toS^1+[sVXvM12+04n~j">
                                                        <mutation name="Heizstab"></mutation>
                                                        <next>
                                                          <block type="timeouts_cleartimeout" id="WJ?t^mxt0H|jM5A2zX=v">
                                                            <field name="NAME">delayOn</field>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </statement>
                                              </block>
                                            </statement>
                                          </block>
                                        </statement>
                                        <next>
                                          <block type="controls_if" id="U^YFuAk{|bn.*b{Ep;B=">
                                            <mutation elseif="1"></mutation>
                                            <value name="IF0">
                                              <block type="logic_compare" id="GddE`U/xj*}WZ:OC-j_5">
                                                <field name="OP">GT</field>
                                                <value name="A">
                                                  <block type="variables_get" id="Ji]v?2~|pv5`v!eeLtH`">
                                                    <field name="VAR" id="S`Q7El*S8|6o7zjVveF`">ueberschuss</field>
                                                  </block>
                                                </value>
                                                <value name="B">
                                                  <block type="math_number" id=":{IrB{m-gbX@X2|pVyXZ">
                                                    <field name="NUM">100</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <statement name="DO0">
                                              <block type="timeouts_cleartimeout" id="_N.QOqsujv5EzF,e1:^`">
                                                <field name="NAME">delayOff</field>
                                              </block>
                                            </statement>
                                            <value name="IF1">
                                              <block type="logic_negate" id="0(6[M7amQ.RY*S4wPkX3">
                                                <value name="BOOL">
                                                  <block type="timeouts_gettimeout" id="pTQJfLPne.dmqq!4K#Q.">
                                                    <field name="NAME">delayOff</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </value>
                                            <statement name="DO1">
                                              <block type="timeouts_settimeout" id="b(4T]c7c@_xcR0^(IJQ#">
                                                <field name="NAME">delayOff</field>
                                                <field name="DELAY">5</field>
                                                <field name="UNIT">min</field>
                                                <statement name="STATEMENT">
                                                  <block type="controls_if" id="N`KrOVa}E?2GEgP!,hnz">
                                                    <value name="IF0">
                                                      <block type="logic_compare" id="!!K9CK;|;n]ddqB#Sv9x">
                                                        <field name="OP">GT</field>
                                                        <value name="A">
                                                          <block type="variables_get" id="(BxBl^T0kZqo1s{{@q2;">
                                                            <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                                          </block>
                                                        </value>
                                                        <value name="B">
                                                          <block type="math_number" id="aJaeQbM-4{Urt]DVf9Q.">
                                                            <field name="NUM">0</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                    <statement name="DO0">
                                                      <block type="math_change" id="Sq6c}B`kReZUISESR)FH">
                                                        <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                                        <value name="DELTA">
                                                          <shadow type="math_number" id="!F{}xNQ_117l8Vz1)Bw-">
                                                            <field name="NUM">-1</field>
                                                          </shadow>
                                                        </value>
                                                        <next>
                                                          <block type="procedures_callnoreturn" id="$}C4r;1}f|vwd?j_@rJ*">
                                                            <mutation name="Heizstab"></mutation>
                                                            <next>
                                                              <block type="timeouts_cleartimeout" id="OA/~iF@YN+W@j9A9#Eh~">
                                                                <field name="NAME">delayOff</field>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </statement>
                                                  </block>
                                                </statement>
                                              </block>
                                            </statement>
                                          </block>
                                        </next>
                                      </block>
                                    </next>
                                  </block>
                                </next>
                              </block>
                            </statement>
                          </block>
                        </next>
                      </block>
                      <block type="procedures_defnoreturn" id="Q6,+1QdD4Bq`#0DA-`[=" x="412" y="237">
                        <field name="NAME">Heizstab</field>
                        <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                        <statement name="STACK">
                          <block type="control" id="qYesRpdij9z`93JQ2~w%">
                            <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                            <field name="OID">0_userdata.0.Blockly.Switch1</field>
                            <field name="WITH_DELAY">FALSE</field>
                            <value name="VALUE">
                              <block type="math_number_property" id="2[3jGAZF1c!_#4rLN^lK">
                                <mutation divisor_input="false"></mutation>
                                <field name="PROPERTY">ODD</field>
                                <value name="NUMBER_TO_CHECK">
                                  <shadow type="math_number" id="^mbt0I.5NcdGL)U11cys">
                                    <field name="NUM">0</field>
                                  </shadow>
                                  <block type="variables_get" id="8/kAAEJZB_bXT3h*p`y9">
                                    <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                  </block>
                                </value>
                              </block>
                            </value>
                            <next>
                              <block type="control" id="S(zYFzv^}$AcCYB-`Q`e">
                                <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                <field name="OID">0_userdata.0.Blockly.Switch2</field>
                                <field name="WITH_DELAY">FALSE</field>
                                <value name="VALUE">
                                  <block type="logic_compare" id="2L^iKhb3yF2tiPb$(%l$">
                                    <field name="OP">GTE</field>
                                    <value name="A">
                                      <block type="variables_get" id="/QAECrxs6x0t8U~:B%E*">
                                        <field name="VAR" id="#ZO}puq!byH)d[RA8.u~">stufe</field>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <block type="math_number" id="PH|,U:I~$fQ*Ja^o2^h0">
                                        <field name="NUM">2</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                              </block>
                            </next>
                          </block>
                        </statement>
                      </block>
                    </xml>
                    

                    J 2 Replies Last reply Reply Quote 0
                    • J
                      jwedenig Most Active @paul53 last edited by

                      @paul53
                      vielen Dank!
                      Wenn ich alles installiert habe werde ich darüber berichten wies läuft!
                      Ich würde es auch sehr gerne verstehen, was Du da programmiert hast!
                      Liebe Grüße
                      Jürgen

                      1 Reply Last reply Reply Quote 0
                      • J
                        jwedenig Most Active @paul53 last edited by

                        @paul53

                        Lieber paul53!

                        Wo in dem Skript für 2 Heizstäbe mit 750W und 1,5kW müssten den meine Telegramm Benachrichtigungen eingefügt werden damit ich immer sehe wann sich Heizstab 1 und Heizstab 2 einschalten?
                        Vielen Dank für deine Geduld!
                        Liebe Grüße
                        Jürgen

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

                          @jwedenig sagte: Telegramm Benachrichtigungen eingefügt werden damit ich immer sehe wann sich Heizstab 1 und Heizstab 2 einschalten?

                          In der Funktion "Heizstab".

                          Blockly_temp.JPG

                          J 1 Reply Last reply Reply Quote 0
                          • J
                            jwedenig Most Active @paul53 last edited by

                            @paul53

                            alles richtig?

                            Dann wieder mal ein grosses Danke!

                            Bildschirmfoto 2023-09-05 um 17.10.57.png

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

                              @jwedenig sagte: alles richtig?

                              Kann keinen Fehler erkennen. Nur mit der Telegramm-Ausgabe wirst Du nicht ganz zufrieden sein: Es fehlen Trennzeichen (Leerzeichen).

                              J 1 Reply Last reply Reply Quote 0
                              • J
                                jwedenig Most Active @paul53 last edited by

                                @paul53

                                ok, das schaff ich 🙂

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

                                  @jwedenig sagte: alles richtig?

                                  Unten fehlt unter dem Funktionsaufruf "Heizstab" das "stop delayOff".

                                  Blockly_temp.JPG

                                  Funktion: Wenn nach Sonnenschein (Stufe 3) eine große, dicke Wolke kommt, dann wird nach 5 Minuten auf Stufe 2 geschaltet. Wenn innerhalb der 5 Minuten der Überschuss so weit zurückgegangen ist, dass die Bedingung "ueberschuss > 100" nicht wieder erfüllt wird, muss die Sperre "falls nicht Verzögerung delayOff" gelöst werden, sonst bleibt die Stufe auf 2. Das macht "stop delayOff" an dieser Stelle: Die Timervariable delayOff wird auf null gesetzt.

                                  J 1 Reply Last reply Reply Quote 0
                                  • J
                                    jwedenig Most Active @paul53 last edited by

                                    @paul53
                                    vielen Dank!
                                    Bin echt schon gespannt wie das dann beim Einbau funktionieren wird!!!!

                                    J 1 Reply Last reply Reply Quote 0
                                    • J
                                      jwedenig Most Active @jwedenig last edited by

                                      @paul53

                                      Lieber Paul53!

                                      Jetzt hätte ich noch eine Bitte für das Skript mit 2 Heizstäben.
                                      Bei der Installation kamen wir drauf, dass ja auch die Pumpe nun einen Shelly hat.
                                      Somit meine Frage:
                                      Wie binde ich diesen Shelly nun im Skript ein?
                                      Die Pumpe sollte sich natürlich immer Einschalten wenn sich der eine oder der andere Heizstab einschaltet und natürlich dann auch ausschalten wenn beide Heizstäbe wieder aus sind!
                                      Wie realisiere ich. das?
                                      Vielen Dank
                                      LG
                                      Jürgen
                                      2 Heizstäbe.rtf

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

                                        @jwedenig sagte: Die Pumpe sollte sich natürlich immer Einschalten wenn sich der eine oder der andere Heizstab einschaltet und natürlich dann auch ausschalten wenn beide Heizstäbe wieder aus sind!

                                        In der Funktion Heizstab():
                                        steuere Pumpe mit stufe > 0

                                        J 1 Reply Last reply Reply Quote 0
                                        • J
                                          jwedenig Most Active @paul53 last edited by

                                          @paul53
                                          Vielen lieben Dank!
                                          Bald ist es soweit, ich werde berichten!!!:-)
                                          Bildschirmfoto 2023-09-21 um 18.43.17.png

                                          J 1 Reply Last reply Reply Quote 0
                                          • J
                                            jwedenig Most Active @jwedenig last edited by

                                            @paul53
                                            Guten Morgen!
                                            Entschuldige wenn ich dich wieder bezügl. deines Skriptes belästige, aber wo würde ich meinen Datenpunkt "Warmwassertemp" einbauen damit z.b. bei 70 Grad sich der Heizstab 1 & 2 ausschalten und bei z.b. 65 Grad sie sich wieder einschalten würden?
                                            Danke Dir!
                                            Liebe Grüße
                                            Jürgen

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            852
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            71
                                            5361
                                            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