Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Einsteigerfragen
    4. Automatisierung
    5. ( gelöst )Balkonkraftwerk Stromüberschuß Klimaanlage

    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

    ( gelöst )Balkonkraftwerk Stromüberschuß Klimaanlage

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

      @paul53

      Hallo,

      das ist natürlich richtig, deswegen hab ich da ja evtl. noch an ein Zeitglied gedacht, um das zu umgehen. Ich bin jetzt allerdings auf der Arbeit und kann das Script erst morgen testen.

      Jetzt hätte ich allerdings noch ein kleines Anliegen. Ich hab die Lizenz alles aktiviert, nur wenn ich in die Vis wechsle, hab ich immer nur die Demo Version zur Auswahl und kann kein neues Projekt starten. Ich weiß das passt gerade nicht hier rein, aber vielleicht könntest du mir da auch noch helfen 🫣🫣

      VG
      Thomas

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

        @paul53

        Hallo,

        ich bins noch einmal. Ich hab's jetzt gefunden, wo ich das Script einbinde 😊

        Da ich aber ja total neu auf diesem Gebiet bin, könntest du mir evtl. das Script zukommen lassen, ich muss es ja eh noch für meine Adapter anpassen 🤦‍♂️
        Nur so könnte ich dann auch mal schauen, was du genau für Bausteine eingebaut hast und ich dann mich weiter damit beschäftigen .

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

          @perladd sagte: Script zukommen lassen

          <xml xmlns="https://developers.google.com/blockly/xml">
           <variables>
             <variable id="0yCRj*O9QX1#dhgtI-o5">grenzwertEin</variable>
             <variable id="k5G]U.qWO4-lc^#fGv0R">grenzwertAus</variable>
             <variable type="timeout" id="delayOn">delayOn</variable>
             <variable type="timeout" id="delayOff">delayOff</variable>
           </variables>
           <block type="comment" id="LCLt-l~/$:u|IKW?A4z1" x="13" y="-13">
             <field name="COMMENT">Bezug - Einspeisung</field>
             <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.EVU-Bezug</field>
                   </shadow>
                 </value>
                 <statement name="STATEMENT">
                   <block type="variables_set" id="zo);,rK_T+=a,mP%]Wg.">
                     <field name="VAR" id="0yCRj*O9QX1#dhgtI-o5">grenzwertEin</field>
                     <value name="VALUE">
                       <block type="math_number" id="Vlj:K0TIJv%Z.k0Rehwm">
                         <field name="NUM">-300</field>
                       </block>
                     </value>
                     <next>
                       <block type="comment" id=")Xm`TF5zv41YsR?fZL1P">
                         <field name="COMMENT">Hysterese etwas größer als Leistungsaufnahme</field>
                         <next>
                           <block type="variables_set" id="I7I-F_#:#J)(O0wL4Aih">
                             <field name="VAR" id="k5G]U.qWO4-lc^#fGv0R">grenzwertAus</field>
                             <value name="VALUE">
                               <block type="math_arithmetic" id="d=rJR%ogfy#lFSNUW#06">
                                 <field name="OP">ADD</field>
                                 <value name="A">
                                   <shadow type="math_number" id="b+alG`6e;V6Rycn#})9|">
                                     <field name="NUM">1</field>
                                   </shadow>
                                   <block type="variables_get" id="YHi/ucvd~zJOaY27ffQX">
                                     <field name="VAR" id="0yCRj*O9QX1#dhgtI-o5">grenzwertEin</field>
                                   </block>
                                 </value>
                                 <value name="B">
                                   <shadow type="math_number" id="BrB|~i^$qYCE5dc,z}(J">
                                     <field name="NUM">1500</field>
                                   </shadow>
                                 </value>
                               </block>
                             </value>
                             <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">GTE</field>
                                     <value name="A">
                                       <block type="on_source" id="f=2?mi+jttya*Yya7dG.">
                                         <field name="ATTR">state.val</field>
                                       </block>
                                     </value>
                                     <value name="B">
                                       <block type="variables_get" id="q{]f~,LPED4*s[Rqru9L">
                                         <field name="VAR" id="0yCRj*O9QX1#dhgtI-o5">grenzwertEin</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=";A]H?a4OD84$r(hJNlW)">
                                     <value name="BOOL">
                                       <block type="timeouts_gettimeout" id="5yS~uc,/OY!T8TyP@x~Y">
                                         <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">2</field>
                                     <field name="UNIT">min</field>
                                     <statement name="STATEMENT">
                                       <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.Switch</field>
                                         <field name="WITH_DELAY">FALSE</field>
                                         <value name="VALUE">
                                           <block type="logic_boolean" id="ndh[{X~M{gFV,0p.u?49">
                                             <field name="BOOL">TRUE</field>
                                           </block>
                                         </value>
                                       </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">LTE</field>
                                         <value name="A">
                                           <block type="on_source" id="7p.M-{Jv;0@=Z(ul53Sv">
                                             <field name="ATTR">state.val</field>
                                           </block>
                                         </value>
                                         <value name="B">
                                           <block type="variables_get" id="-t@cJFEI+*?5ME9yFOuZ">
                                             <field name="VAR" id="k5G]U.qWO4-lc^#fGv0R">grenzwertAus</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="FanE]FN|QN1m2wK7$SE0">
                                         <value name="BOOL">
                                           <block type="timeouts_gettimeout" id="QG~;wGmLqZ_xDQ=1JV!U">
                                             <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">2</field>
                                         <field name="UNIT">min</field>
                                         <statement name="STATEMENT">
                                           <block type="control" id="6VfA#(~,Q0w}vq.9~!aD">
                                             <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                             <field name="OID">0_userdata.0.Blockly.Switch</field>
                                             <field name="WITH_DELAY">FALSE</field>
                                             <value name="VALUE">
                                               <block type="logic_boolean" id=",Si`y0rwc^|ZOhtLmA=*">
                                                 <field name="BOOL">FALSE</field>
                                               </block>
                                             </value>
                                           </block>
                                         </statement>
                                       </block>
                                     </statement>
                                   </block>
                                 </next>
                               </block>
                             </next>
                           </block>
                         </next>
                       </block>
                     </next>
                   </block>
                 </statement>
               </block>
             </next>
           </block>
          </xml>
          

          P 1 Reply Last reply Reply Quote 0
          • WolfgangD
            WolfgangD @perladd last edited by

            @perladd
            Ich glaube, die 300 W werden von der Klimaanlage in jedem Fall vollständig geschluckt und sicher rnoch mehr. Also wird das Prinzip eher lauten können: Jetzt kommt schon eine Weile viel Sonne. Und es ist zu warm im Raum. Also schalte ich ein. Und ich schalte aus, wenn die Sonne einige Zeit lang nicht mehr gut liefert. Ständiges Schalten ist ganz sicher nicht zu empfehlen. Und ja, Du sparst was. Aber kostenlos wirds wohl nie bei der Leistung. (Ich habe gerade heute auch eine Mitsubishi installiert und freue mich zu hören, dass es da Adapter gibt!) Viel Erfolg.

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

              @paul53

              Hallo,

              ich hab doch dein Script doch noch soweit selber gebastelt bekommen, bis auf 2 Stop Funktionen. Die finde ich nicht, wo du "Stop: delayOn" und "Stop:delayOff" hast.
              Ich habe nur die Stop Funktion mit zyklischer Ausführung gefunden

              Zudem wenn ich das Script jetzt starte, bekomme ich eine Meldung nach einigen Sekunden
              "ReferenceError: unbenannt is not defined"

              Jetzt weiß ich natürlich nicht ob es dieser Stop Funktion liegt, oder generell noch ein Fehler vorhanden ist
              Ich habe natürlich zum Testen, die Stromwerte etwas angepasst, ob die Klima überhaupt anspringt
              Vielleicht kannst du mir noch einmal etwas helfen

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

                @perladd sagte: Die finde ich nicht, wo du "Stop: delayOn" und "Stop:delayOff" hast.

                Der 4. Block von oben. Dann die richtige Timer-Variable selektieren.

                Blockly_temp.JPG

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

                  @paul53

                  Da habe ich leider nichts drin stehen, das steht nur ein Häckchen drin, sonst kann ich da nichts auswählen

                  Was denn Fehler angeht, kann ich aber schon sagen, das es von der Abfrage des Stromzählers kommt.

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

                    @perladd sagte: Da habe ich leider nichts drin stehen,

                    Blockly zeigen!

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

                      @paul53

                      wie bekomme ich denn die Blöcke hie rein 🤦‍♂️

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

                        @perladd sagte: wie bekomme ich denn die Blöcke hie rein

                        Per Snipping Tool oder ähnlichem Programm ein Bild erstellen und dann hier hochladen (oben 3. Symbol von rechts).

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

                          @paul53

                          Screenshot_2023-03-20_11_32_47.png

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

                            @paul53

                            rechts oben ist die Stop Funktion, wo bei der Auswahl nichts drin steht

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

                              @perladd sagte: bei der Auswahl nichts drin steht

                              Du hast Intervalle anstelle von Timeouts verwendet. Es muss so aussehen:

                              Blockly_temp.JPG

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

                                @paul53

                                okay, das hab ich jetzt hinbekommen und bekomme auch zur Zeit keine Fehlermeldung mehr.
                                Bekommen wir das noch hin, das wir den aktuellen gesamt Strombezug angezeigt bekommen, sprich bei den aktuellen Werten die 200Watt, dann den Grenzwert und evtl. einen Timer, wo die 2Min runter zählen.

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

                                  @perladd sagte: aktuellen gesamt Strombezug angezeigt

                                  Mit einem Debug-Block loggen:

                                  Blockly_temp.JPG

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

                                    @paul53

                                    okay das habe ich auch hinbekommen. Ich habe jetzt zur Zeit gerade einen Strombezug von -20Watt, Die -20W habe ich auch in meinem GrenzwertEin eingetragen. Trotzdem wird die Klima nicht eingeschaltet 🙄

                                    Eine Idee wo mein Fehler noch liegen könnte?

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

                                      @perladd sagte: Die -20W habe ich auch in meinem GrenzwertEin eingetragen. Trotzdem wird die Klima nicht eingeschaltet

                                      Der Bezug muss für volle 2 Minuten unter dem Grenzwert bleiben, damit eingeschaltet wird. Einmal nur drüber und delayOn wird gestoppt und neu gestartet.

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

                                        @paul53

                                        ah okay, dann hab ich das falsch verstanden. Ich werde das dann alles mal so testen und ansonsten melde ich mich nocheinmal, ob es evtl. ein Optimierung gibt, wenn ich es nicht selber hinbekomme.

                                        Ich sage vielen lieben Dank für deine tolle Unterstützung und vor allem Nerven, das das Projekt zum laufen gebracht wurde.

                                        VG
                                        Thomas

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

                                          @paul53

                                          Hallo,

                                          ich bins doch noch einmal. Habe das Script jetzt mal eine Zeit mitlaufen lassen und da ist mir bei meinem Stromzähler noch so einiges aufgefallen. Er hat nicht nur einen Ausgang für meinen Strombezug, smit kann ich also nicht mit dem negativen Wert rechnen. Es gibt einmal "Power_Consumtion" für den tatsächlichen Strombezug und einmal "Power_Delivery" alles auch nur positive Werte. Das ganze ist mir aufgefallen, weil er entweder die Klima nicht eingeschaltet bzw. auch nicht wieder ausgeschaltet hat. Vielleicht könntest du mir dabei noch einmal kurz helfen bei der Umsetzung 🙂
                                          Gibt es evtl. auch die Möglichkeit, das ich eine Nachricht erhalte, wenn der Stromüberschuss erreicht ist und die Klima ein bzw. ausgeschaltet wurde. Das wäre allerdings zweitrangig und Spielerei

                                          VG
                                          Thomas

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

                                            @perladd sagte: einmal "Power_Consumtion" für den tatsächlichen Strombezug und einmal "Power_Delivery" alles auch nur positive Werte.

                                            Dann bilde die Differenz "Bezug - Einspeisung" als eigenen Datenpunkt unter "0_userdata.0" oder innerhalb des Skripts (Zweifach-Trigger).

                                            Innerhalb des Skripts:

                                            Blockly_temp.JPG

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            789
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            37
                                            2367
                                            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