Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. PV Überschuss zum betreiben von 1 Heizstab

    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

    PV Überschuss zum betreiben von 1 Heizstab

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

      @spidermike sagte: Werte für Bezug, Eigenverbrauch und Einspeisung

      Bezug und Einspeisung sind jeweils positiv? Wenn ja, Vorschlag:

      Bild_2022-07-11_181642735.png

      S H 3 Replies Last reply Reply Quote 0
      • S
        Spidermike @paul53 last edited by

        @paul53 danke für deine Antwort:

        also ich kann im Iobroker Adapter Penticore

        die Werte für Hausverbrauch, Erzeugung + Einspeisung im sekundentakt abrufen und alle im positiven.

        könnte wenn es hilft ein screenshot von den Werten mal senden.

        Gruß Maik

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

          @spidermike sagte: alle im positiven.

          Dann sollte mein Vorschlag funktionieren.

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

            @paul53 !

            schaue mal bitte,

            wie schaltet das Script jetzt genau?

            kannst mir das genauer erklären?

            Unbenannt.png

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

              @spidermike
              Das kann ich nicht entziffern.

              @spidermike sagte in PV Überschuss zum betreiben von 1 Heizstab:

              wie schaltet das Script jetzt genau?

              Wenn die Einspeisung in das öffentliche Netz > 1500 W beträgt, schaltet es den Heizstab ein. In dem Moment sinkt die Einspeisung um 1500 W (Heizstableistung).
              Wenn nun der Bezug aus dem öffentlichen Netz über 200 W geht, schaltet der Heizstab wieder aus. Eine Schwankungsreserve von mind. 200 W benötigt man, damit der Heizstab nicht ständig hin- und herschaltet.

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

                @paul53

                kannst du mir dein Script mal exportieren und senden damit ich es bei mir importieren kann?

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

                  @spidermike sagte: exportieren und senden damit ich es bei mir importieren kann?

                  Alle Datenpunkt-IDs müssen neu zugewiesen werden.

                  <xml xmlns="https://developers.google.com/blockly/xml">
                   <variables>
                     <variable id="K(+i.N5t3ef42%y1}4V5">heizstab</variable>
                   </variables>
                   <block type="variables_set" id="3rENTMbHg0U{nrcjvQ4R" x="63" y="37">
                     <field name="VAR" id="K(+i.N5t3ef42%y1}4V5">heizstab</field>
                     <value name="VALUE">
                       <block type="get_value" id="+cb;AxKTdmDshv8e48#7">
                         <field name="ATTR">val</field>
                         <field name="OID">0_userdata.0.Blockly.Heizung</field>
                       </block>
                     </value>
                     <next>
                       <block type="on_ext" id="!Rq{7D;G~`WFuKW9w5)#">
                         <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation>
                         <field name="CONDITION">ne</field>
                         <field name="ACK_CONDITION"></field>
                         <value name="OID0">
                           <shadow type="field_oid" id="4X6rj1PTfMIVlak8d=zt">
                             <field name="oid">0_userdata.0.Blockly.Meter.Einspeisung</field>
                           </shadow>
                         </value>
                         <value name="OID1">
                           <shadow type="field_oid" id="p?mh5^;G*5$.NvpjOKBS">
                             <field name="oid">0_userdata.0.Blockly.Meter.Bezug</field>
                           </shadow>
                         </value>
                         <statement name="STATEMENT">
                           <block type="controls_if" id="_SWf:0$dUJ`Rxdf}=a~:">
                             <mutation elseif="1"></mutation>
                             <value name="IF0">
                               <block type="logic_compare" id="?AQR+~+%U*m,GD[](vMc">
                                 <field name="OP">GT</field>
                                 <value name="A">
                                   <block type="get_value" id="0RTdIsUhTnGbst?Oo$}X">
                                     <field name="ATTR">val</field>
                                     <field name="OID">0_userdata.0.Blockly.Meter.Einspeisung</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <block type="math_number" id="B3SUmja#nhP07`Ib2e]3">
                                     <field name="NUM">1500</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <statement name="DO0">
                               <block type="variables_set" id="FtO0s8CLtttuz;Pj_-@g">
                                 <field name="VAR" id="K(+i.N5t3ef42%y1}4V5">heizstab</field>
                                 <value name="VALUE">
                                   <block type="logic_boolean" id="~3Ej,Y:V]vc.xo13T4FP">
                                     <field name="BOOL">TRUE</field>
                                   </block>
                                 </value>
                               </block>
                             </statement>
                             <value name="IF1">
                               <block type="logic_compare" id=")6cR9,M@yI3O0iv45Eby">
                                 <field name="OP">GT</field>
                                 <value name="A">
                                   <block type="get_value" id="bUkmfYu-w:CY/zhEUIM:">
                                     <field name="ATTR">val</field>
                                     <field name="OID">0_userdata.0.Blockly.Meter.Bezug</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <block type="math_number" id="_;{nLGpv;B)9lig#KW$`">
                                     <field name="NUM">200</field>
                                   </block>
                                 </value>
                               </block>
                             </value>
                             <statement name="DO1">
                               <block type="variables_set" id="zRf*^A/gIAE8exnh*Nei">
                                 <field name="VAR" id="K(+i.N5t3ef42%y1}4V5">heizstab</field>
                                 <value name="VALUE">
                                   <block type="logic_boolean" id="Iu@~[H?T!`gi[a~?czm[">
                                     <field name="BOOL">FALSE</field>
                                   </block>
                                 </value>
                               </block>
                             </statement>
                             <next>
                               <block type="controls_if" id="txT}M{,sA+NkAb@Mr5l2">
                                 <value name="IF0">
                                   <block type="logic_compare" id="?PIVtSDfjo=%SJL+*Qm+">
                                     <field name="OP">NEQ</field>
                                     <value name="A">
                                       <block type="variables_get" id="%]kYs]{FI$9t~=w2I4jG">
                                         <field name="VAR" id="K(+i.N5t3ef42%y1}4V5">heizstab</field>
                                       </block>
                                     </value>
                                     <value name="B">
                                       <block type="get_value" id="))um5q|[Eb|6C.zPhuLX">
                                         <field name="ATTR">val</field>
                                         <field name="OID">0_userdata.0.Blockly.Heizung</field>
                                       </block>
                                     </value>
                                   </block>
                                 </value>
                                 <statement name="DO0">
                                   <block type="control" id="v*1c9`[9]8(ck!twBdTW">
                                     <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                     <field name="OID">0_userdata.0.Blockly.Heizung</field>
                                     <field name="WITH_DELAY">FALSE</field>
                                     <value name="VALUE">
                                       <block type="variables_get" id="tNl8n6AD5]o,VeqDGhd,">
                                         <field name="VAR" id="K(+i.N5t3ef42%y1}4V5">heizstab</field>
                                       </block>
                                     </value>
                                   </block>
                                 </statement>
                               </block>
                             </next>
                           </block>
                         </statement>
                       </block>
                     </next>
                   </block>
                  </xml>
                  

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

                    @paul53 said in PV Überschuss zum betreiben von 1 Heizstab:

                    <xml xmlns="https://developers.google.com/blockly/xml">

                    danke Dir und melde mich wenn es funktioniert

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

                      @paul53

                      Ich habe das jetzt am laufen aber er schaltet leider den Heizstab nicht ein.

                      Das bekomme ich unten geschrieben

                      16:39:14.712 info javascript.0 (1471) Stop script script.js.Heizung_Warmwasser_
                      16:39:16.786 info javascript.0 (1471) Start javascript script.js.Heizung_Warmwasser_
                      16:39:16.819 info javascript.0 (1471) script.js.Heizung_Warmwasser_: registered 2 subscriptions and 0 schedules

                      Gruß Maik

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

                        @spidermike sagte: schaltet leider den Heizstab nicht ein.

                        Dann bau Debug-Blöcke ein, um zu sehen, woran es liegt.

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

                          @paul53
                          kann ich da ein sendto reinsetzen damit ich sagen wir über Whatsapp oder telegram eine Nachricht bekomme wenn der Heizstab angeschaltet oder ausgeschaltet wurde?
                          Wenn ja an welcher Stelle müsste das passieren?

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

                            @spidermike sagte: kann ich da ein sendto reinsetzen

                            Das geht auch. Debug ist aber weniger aufwändig und man sieht im Protokoll, was wann passiert ist.

                            @spidermike sagte in PV Überschuss zum betreiben von 1 Heizstab:

                            an welcher Stelle müsste das passieren?

                            Im Trigger unten:

                            Bild_2022-07-15_191912825.png

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

                              @paul53

                              ich danke Dir vielmals und ich werde sehen wie es funktioniert,

                              jetzt ist leider die Sonne weg und ich kann es nicht mehr testen.

                              Aber der Heizstab hat zumindest erstmal abgeschaltet. Morgen habe ich Zeit es zu testen.

                              um nochmal zu "sendto Whatsapp" zurückzukommen.

                              Wo müsste ich das in den Script einfügen?

                              gruß Maik

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

                                @spidermike sagte: um nochmal zu "sendto Whatsapp" zurückzukommen.
                                Wo müsste ich das in den Script einfügen?

                                Zusätzlich zu oder anstelle von Debug.
                                Du wirst sehr viele Nachrichten erhalten!

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

                                  @paul53
                                  Guten Morgen,

                                  ich habe jetzt mal geschaut

                                  es wird die Einspeisung und den Bezug erkannt aber der Heizstab wird leider nicht eingeschaltet.

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

                                    @spidermike sagte: Heizstab wird leider nicht eingeschaltet.

                                    Poste bitte den erzeugten Javascript-Code ohne die letzte Zeile in Code tags.

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

                                      @paul53

                                      java.jpg

                                      ist das das was du möchtest

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

                                        @spidermike sagte: ist das das was du möchtest

                                        Nicht ganz: Per Copy & Paste in Code tags, denn das ist besser lesbar.
                                        Aber ich sehe, dass bei "steuere Heizung Warmwasser mit" die Zuweisung der Variablen heizstab fehlt.

                                        Bild_2022-07-16_155405303.png

                                        Außerdem ist die Hysterese < 1500 W. Es schaltet so im Grenzbereich ständig hin und her. Die Hysterese muss > 1500 W sein (mind. 1700 W).

                                        S 3 Replies Last reply Reply Quote 0
                                        • S
                                          Spidermike @paul53 last edited by

                                          @paul53

                                          var heizstab;
                                          
                                          
                                          heizstab = getState("hs100.0.192_168_178_38.state").val;
                                          on({id: [].concat(['plenticore.0.devices.local.ToGrid_P']).concat(['plenticore.0.devices.local.HomeGrid_P']), change: "ne"}, async function (obj) {
                                              if (getState("plenticore.0.devices.local.ToGrid_P").val > 1200) {
                                              heizstab = true;
                                            } else if (getState("plenticore.0.devices.local.HomeGrid_P").val > 200) {
                                              heizstab = false;
                                            }
                                            if (heizstab != getState("hs100.0.192_168_178_38.state").val) {
                                              setState("hs100.0.192_168_178_38.state"/*Heizung Warmwasser*/, heizstab);
                                            }
                                            console.log((['Einspeisung:',getState("plenticore.0.devices.local.ToGrid_P").val,'W,Bezug:',getState("plenticore.0.devices.local.HomeGrid_P").val,'W,Heizstab:',heizstab,''].join('')));
                                          });
                                          
                                          
                                          

                                          ist das so besser?

                                          Ich kenne mich damit wirklich nicht so richtig aus

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

                                            @paul53 Heizung.jpg

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            868
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            10
                                            144
                                            12203
                                            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