Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Regelung eines Hoymiles Solarinverters (Nulleinspeisung)

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    521

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

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

Regelung eines Hoymiles Solarinverters (Nulleinspeisung)

Scheduled Pinned Locked Moved Blockly
203 Posts 36 Posters 67.8k Views 34 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • K Kymchy

    @duffy ok, den Adapter nutze ich nicht. Wäre für mich nur Ballast, vermutlich sollte er den Wert aber trotzdem unter cmd->limit_nonpersistant_relative eintragen. Kann nat. im Adapter anders sein...

    L Offline
    L Offline
    Laser
    wrote on last edited by
    #142

    @kymchy Der Adapter ist aber sehr zu empfehlen. Hatte vorher auch MQTT. Der Adapter ist praktischer. Der legt auch die Datenpunkte an.

    K 1 Reply Last reply
    0
    • L Laser

      @kymchy Der Adapter ist aber sehr zu empfehlen. Hatte vorher auch MQTT. Der Adapter ist praktischer. Der legt auch die Datenpunkte an.

      K Offline
      K Offline
      Kymchy
      wrote on last edited by
      #143

      @laser da ich für viele andere Sachen MQTT nutze, bringt mir der Adapter nicht viel. Ein Topic ist schnell erstellt.

      1 Reply Last reply
      0
      • DuffyD Duffy

        @tomderbasler

        Ich steuere:

        91cdf40e-405c-4e88-bb3c-c0ec1a88e0d5-grafik.png

        um die Leistung des WR zu ändern.
        Wenn ich den Wert dort setze bleibt er auch so bis ich ihn wieder ändere.

        Hast du deine Zugangsdaten der DTU in den OPENDTU Adapter eingetragen?

        Gruss Duffy

        T Offline
        T Offline
        TomDerBasler
        wrote on last edited by
        #144

        @duffy said in Regelung eines Hoymiles Solarinverters (Nulleinspeisung):

        Hast du deine Zugangsdaten der DTU in den OPENDTU Adapter eingetragen?

        f0706f9a-0a07-4adf-bd8f-23cce0a93415-grafik.png Tatsächlich würde ich gerne über den openDTU-Adapter arbeiten um das LIMIT schreibend zu verändern; weil ich das als Anfänger komfortabler einschätze.

        Nach dem Anlegen des openDTU-Adapters hatte ich 2 neue Objekte : mqtt und opendtu .

        Den Datenpunkt "limit_nonpersistent_relative" ( Dein Screenshot ) wird mit unter den mqtt-Objekten gar nicht angeboten ( mein ScreenShot-1 ).IOB 240117-01.png
        f12ccd8f-9800-4677-afad-47a9687778da-grafik.png Was meinst Du genau mit "Hast du deine Zugangsdaten der DTU in den OPENDTU Adapter eingetragen?"

        Vielleicht mache ich ja grundsätlzich etwas falsch ?

        viele Grüße
        IOB 240117-02.png
        IOB 240117-03.png

        DuffyD 1 Reply Last reply
        0
        • T TomDerBasler

          @duffy said in Regelung eines Hoymiles Solarinverters (Nulleinspeisung):

          Hast du deine Zugangsdaten der DTU in den OPENDTU Adapter eingetragen?

          f0706f9a-0a07-4adf-bd8f-23cce0a93415-grafik.png Tatsächlich würde ich gerne über den openDTU-Adapter arbeiten um das LIMIT schreibend zu verändern; weil ich das als Anfänger komfortabler einschätze.

          Nach dem Anlegen des openDTU-Adapters hatte ich 2 neue Objekte : mqtt und opendtu .

          Den Datenpunkt "limit_nonpersistent_relative" ( Dein Screenshot ) wird mit unter den mqtt-Objekten gar nicht angeboten ( mein ScreenShot-1 ).IOB 240117-01.png
          f12ccd8f-9800-4677-afad-47a9687778da-grafik.png Was meinst Du genau mit "Hast du deine Zugangsdaten der DTU in den OPENDTU Adapter eingetragen?"

          Vielleicht mache ich ja grundsätlzich etwas falsch ?

          viele Grüße
          IOB 240117-02.png
          IOB 240117-03.png

          DuffyD Offline
          DuffyD Offline
          Duffy
          wrote on last edited by Duffy
          #145

          @tomderbasler

          Wo bei dir Web UI-Adresse drin steht habe ich die IP meiner opendtu.

          Mqtt ist bei mir abgeschaltet. Wenn du den openDTU Adapter verwendest benötigst du das Mqtt nicht.

          bb5c4abc-398c-437a-81db-e9373e0a9a54-grafik.png

          Hier noch mal der genaue Pfad zu dem Datenpunkt.

          Wenn du weiter nichts über mqtt laufen hast schalte den Adapter mal ab nicht das der vielleicht den opendtu Adapter stört.

          Ich bin aber auch bei weitem kein Profi und kann dir nur sagen wie es bei mir funktioniert.

          Gruß Duffy

          Nix besonderes; iob auf Respberry pi 4 (8GB) mit 32 GB SSD
          Node.js: v22.22.1
          NPM: 10.9.4
          js-controller 7.0.7
          Linux: Trixie

          T 2 Replies Last reply
          0
          • DuffyD Duffy

            @tomderbasler

            Wo bei dir Web UI-Adresse drin steht habe ich die IP meiner opendtu.

            Mqtt ist bei mir abgeschaltet. Wenn du den openDTU Adapter verwendest benötigst du das Mqtt nicht.

            bb5c4abc-398c-437a-81db-e9373e0a9a54-grafik.png

            Hier noch mal der genaue Pfad zu dem Datenpunkt.

            Wenn du weiter nichts über mqtt laufen hast schalte den Adapter mal ab nicht das der vielleicht den opendtu Adapter stört.

            Ich bin aber auch bei weitem kein Profi und kann dir nur sagen wie es bei mir funktioniert.

            Gruß Duffy

            T Offline
            T Offline
            TomDerBasler
            wrote on last edited by
            #146

            @duffy : Herzlichen Dank, morgen werde ich das gleich mal ausprobieren; schönen Abend

            1 Reply Last reply
            0
            • DuffyD Duffy

              @tomderbasler

              Wo bei dir Web UI-Adresse drin steht habe ich die IP meiner opendtu.

              Mqtt ist bei mir abgeschaltet. Wenn du den openDTU Adapter verwendest benötigst du das Mqtt nicht.

              bb5c4abc-398c-437a-81db-e9373e0a9a54-grafik.png

              Hier noch mal der genaue Pfad zu dem Datenpunkt.

              Wenn du weiter nichts über mqtt laufen hast schalte den Adapter mal ab nicht das der vielleicht den opendtu Adapter stört.

              Ich bin aber auch bei weitem kein Profi und kann dir nur sagen wie es bei mir funktioniert.

              Gruß Duffy

              T Offline
              T Offline
              TomDerBasler
              wrote on last edited by
              #147

              @duffy super ! es hat geklappt; danke für den Tipp
              IOB 240117-04.png

              1 Reply Last reply
              0
              • CarsaabC Offline
                CarsaabC Offline
                Carsaab
                wrote on last edited by Carsaab
                #148

                Hier ist noch mein Script für die Nulleinspeisung über Opendtu und Hoymiles HM1500. Den Strom lese ich mit einem Hichi Lesekopf am Stromzähler.
                Funktioniert wunderbar. Ich speise fast nichts ein.
                Immer wenn sich der Strom ändert - wird alle 10 Sekunden vom Hichi gemeldet, da brauche ich keinen CRON Job - wird das Limit neu gesetzt sofern die WR Stromerzeugung >300 Watt ist. Die OpenDTU schalte ich ca. 1h nach Sonnenaufgang an und mit Sonnenaufgang ab. Die dauerhafte Limitierung liegt bei 600W. Damit startet der WR jeden Morgen und bleibt da auch, wenn es keine Regelung gibt.

                c3573fbb-227a-4dff-9bba-65ed927de52b-grafik.png

                Die Steuerung erfolgt über die Prozentangabe der Wechselrichterleistung in den Limits von 30% bis 100%
                Am Anfang gab es die Fehlermeldung es würde kein Number-Value übertragen, durch die Value Funktion hat sich das erledigt.

                CodierknechtC A 2 Replies Last reply
                0
                • CarsaabC Carsaab

                  Hier ist noch mein Script für die Nulleinspeisung über Opendtu und Hoymiles HM1500. Den Strom lese ich mit einem Hichi Lesekopf am Stromzähler.
                  Funktioniert wunderbar. Ich speise fast nichts ein.
                  Immer wenn sich der Strom ändert - wird alle 10 Sekunden vom Hichi gemeldet, da brauche ich keinen CRON Job - wird das Limit neu gesetzt sofern die WR Stromerzeugung >300 Watt ist. Die OpenDTU schalte ich ca. 1h nach Sonnenaufgang an und mit Sonnenaufgang ab. Die dauerhafte Limitierung liegt bei 600W. Damit startet der WR jeden Morgen und bleibt da auch, wenn es keine Regelung gibt.

                  c3573fbb-227a-4dff-9bba-65ed927de52b-grafik.png

                  Die Steuerung erfolgt über die Prozentangabe der Wechselrichterleistung in den Limits von 30% bis 100%
                  Am Anfang gab es die Fehlermeldung es würde kein Number-Value übertragen, durch die Value Funktion hat sich das erledigt.

                  CodierknechtC Online
                  CodierknechtC Online
                  Codierknecht
                  Developer Most Active
                  wrote on last edited by
                  #149

                  @carsaab sagte in Regelung eines Hoymiles Solarinverters (Nulleinspeisung):

                  Die dauerhafte Limitierung liegt bei 600W

                  Warum?
                  Seit Januar sind 800W zulässig.

                  Funktioniert wunderbar. Ich speise fast nichts ein.

                  Darf ich auch hier fragen, warum?

                  "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                  Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                  HmIP|ZigBee|Tasmota|Unifi
                  Zabbix Certified Specialist
                  Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                  Samson71S 1 Reply Last reply
                  0
                  • CodierknechtC Codierknecht

                    @carsaab sagte in Regelung eines Hoymiles Solarinverters (Nulleinspeisung):

                    Die dauerhafte Limitierung liegt bei 600W

                    Warum?
                    Seit Januar sind 800W zulässig.

                    Funktioniert wunderbar. Ich speise fast nichts ein.

                    Darf ich auch hier fragen, warum?

                    Samson71S Offline
                    Samson71S Offline
                    Samson71
                    Global Moderator
                    wrote on last edited by
                    #150

                    @codierknecht sagte in Regelung eines Hoymiles Solarinverters (Nulleinspeisung):

                    Seit Januar sind 800W zulässig.

                    Noch nicht. Das war zwar der Plan, aber die Lesung und Abstimmung dazu wurden verschoben. Daher gilt aktuell leider immer noch die 600W Grenze in D.

                    Markus

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

                    1 Reply Last reply
                    0
                    • CarsaabC Offline
                      CarsaabC Offline
                      Carsaab
                      wrote on last edited by Carsaab
                      #151

                      Es sind nur 600W erlaubt in Schland. 800W ist in Österreich gestattet. Die Ampel hat mal wieder auf Rot geschaltet.
                      Warum keine Einspeisung - nun ja. Ein Balkon-PV mit 600W erzeugt im Jahr sehr-grob 600kWh mit 70% Eigenverbrauch, 10%Verlust und 20% Einspeisung = ca. 120kWH auf dem Zähler Einspeisung pro Jahr. Das entspräche auch der Anmeldung.
                      Ein unlimitiertes 1500W Balkon-PV erzeugt im Jahr sehr-grob 1500kWh mit 50% Eigenverbrauch, 10%Verlust und 40% Einspeisung = ca. 600kWH auf dem Zähler Einspeisung pro Jahr. Mit mehr PV Leistung sinkt ohne Speicher zwangsweise die Eigenverbrauchquote und die Einspeisequote steigt.
                      Das fällt dann im Zweifel auch Mangelbegabten bei einer Zählersichtung in unter 1 Minute auf.

                      Mir ging es eher darum ein Beispiel für ein Nulleinspeise Blockly zu teilen, das auch funzt.

                      968655de-892b-4e8d-b99a-1b4e28d8b561-grafik.png
                      Es wird jedes mal neu berechnet wenn sich der Stromverbrauch ändert - enweder durch einen Verbraucher oder die Schwankung der PV Leistung, die ja unmittelbar den Stromverbauch ändert. Also reicht das als Trigger.
                      Der "Constraint" Befehl limiert die % zwischen den Grenzen 30% und 100%, damit keine Werte über 100% an die OpenDTU geschickt werden.

                      Ich habe in den Blogs sonst nur lange Diskussionen zum Fehler finden gefunden.
                      Das hier funktioniert, den Zeittakt gibt der Lesekopf auf dem Zähler automatisch vor. Ich habe hier 10sekunden eingestellt, minimal 5 sind möglich, 3 Sekunden nutzt der Zähler. 10 Sekunden reichen mir.

                      Mir ist auch klar, dass das nur beim saldierenden Zähler geht. Wenn die einzelnen Phasen überwacht werden, dann sieht man das natürlich trotzdem, falls nicht die Phasen einzeln angesteuert werden können. Falls jemand also einen Shelly 3 EM hat und jede einzelne Phase überwacht und zusätzlich noch 3 BalkonPV - pro Phase eins, dann kann das natürlich noch optimiert werden. Also 3 OpenDTU, 3 Scripte und 3 bzw. 6 oder 9 Wechselrichter. Ob das dann noch als 9 oder 11,5 kWP Balkon-PV gilt, würde eine interessante Diskussion sein. Ich hätte da Zweifel. Einspeisen würde man dennoch nur sehr wenig.

                      U G 2 Replies Last reply
                      0
                      • CarsaabC Carsaab

                        Es sind nur 600W erlaubt in Schland. 800W ist in Österreich gestattet. Die Ampel hat mal wieder auf Rot geschaltet.
                        Warum keine Einspeisung - nun ja. Ein Balkon-PV mit 600W erzeugt im Jahr sehr-grob 600kWh mit 70% Eigenverbrauch, 10%Verlust und 20% Einspeisung = ca. 120kWH auf dem Zähler Einspeisung pro Jahr. Das entspräche auch der Anmeldung.
                        Ein unlimitiertes 1500W Balkon-PV erzeugt im Jahr sehr-grob 1500kWh mit 50% Eigenverbrauch, 10%Verlust und 40% Einspeisung = ca. 600kWH auf dem Zähler Einspeisung pro Jahr. Mit mehr PV Leistung sinkt ohne Speicher zwangsweise die Eigenverbrauchquote und die Einspeisequote steigt.
                        Das fällt dann im Zweifel auch Mangelbegabten bei einer Zählersichtung in unter 1 Minute auf.

                        Mir ging es eher darum ein Beispiel für ein Nulleinspeise Blockly zu teilen, das auch funzt.

                        968655de-892b-4e8d-b99a-1b4e28d8b561-grafik.png
                        Es wird jedes mal neu berechnet wenn sich der Stromverbrauch ändert - enweder durch einen Verbraucher oder die Schwankung der PV Leistung, die ja unmittelbar den Stromverbauch ändert. Also reicht das als Trigger.
                        Der "Constraint" Befehl limiert die % zwischen den Grenzen 30% und 100%, damit keine Werte über 100% an die OpenDTU geschickt werden.

                        Ich habe in den Blogs sonst nur lange Diskussionen zum Fehler finden gefunden.
                        Das hier funktioniert, den Zeittakt gibt der Lesekopf auf dem Zähler automatisch vor. Ich habe hier 10sekunden eingestellt, minimal 5 sind möglich, 3 Sekunden nutzt der Zähler. 10 Sekunden reichen mir.

                        Mir ist auch klar, dass das nur beim saldierenden Zähler geht. Wenn die einzelnen Phasen überwacht werden, dann sieht man das natürlich trotzdem, falls nicht die Phasen einzeln angesteuert werden können. Falls jemand also einen Shelly 3 EM hat und jede einzelne Phase überwacht und zusätzlich noch 3 BalkonPV - pro Phase eins, dann kann das natürlich noch optimiert werden. Also 3 OpenDTU, 3 Scripte und 3 bzw. 6 oder 9 Wechselrichter. Ob das dann noch als 9 oder 11,5 kWP Balkon-PV gilt, würde eine interessante Diskussion sein. Ich hätte da Zweifel. Einspeisen würde man dennoch nur sehr wenig.

                        U Offline
                        U Offline
                        uk68
                        wrote on last edited by
                        #152

                        @carsaab kannst Du bitte das Script mal hochladen, ich würde es gerne mal testen. Danke

                        Hardware ioBroker auf RPi4,
                        Tuya, S7-300, Wetterstation WS90

                        1 Reply Last reply
                        0
                        • CarsaabC Carsaab

                          Es sind nur 600W erlaubt in Schland. 800W ist in Österreich gestattet. Die Ampel hat mal wieder auf Rot geschaltet.
                          Warum keine Einspeisung - nun ja. Ein Balkon-PV mit 600W erzeugt im Jahr sehr-grob 600kWh mit 70% Eigenverbrauch, 10%Verlust und 20% Einspeisung = ca. 120kWH auf dem Zähler Einspeisung pro Jahr. Das entspräche auch der Anmeldung.
                          Ein unlimitiertes 1500W Balkon-PV erzeugt im Jahr sehr-grob 1500kWh mit 50% Eigenverbrauch, 10%Verlust und 40% Einspeisung = ca. 600kWH auf dem Zähler Einspeisung pro Jahr. Mit mehr PV Leistung sinkt ohne Speicher zwangsweise die Eigenverbrauchquote und die Einspeisequote steigt.
                          Das fällt dann im Zweifel auch Mangelbegabten bei einer Zählersichtung in unter 1 Minute auf.

                          Mir ging es eher darum ein Beispiel für ein Nulleinspeise Blockly zu teilen, das auch funzt.

                          968655de-892b-4e8d-b99a-1b4e28d8b561-grafik.png
                          Es wird jedes mal neu berechnet wenn sich der Stromverbrauch ändert - enweder durch einen Verbraucher oder die Schwankung der PV Leistung, die ja unmittelbar den Stromverbauch ändert. Also reicht das als Trigger.
                          Der "Constraint" Befehl limiert die % zwischen den Grenzen 30% und 100%, damit keine Werte über 100% an die OpenDTU geschickt werden.

                          Ich habe in den Blogs sonst nur lange Diskussionen zum Fehler finden gefunden.
                          Das hier funktioniert, den Zeittakt gibt der Lesekopf auf dem Zähler automatisch vor. Ich habe hier 10sekunden eingestellt, minimal 5 sind möglich, 3 Sekunden nutzt der Zähler. 10 Sekunden reichen mir.

                          Mir ist auch klar, dass das nur beim saldierenden Zähler geht. Wenn die einzelnen Phasen überwacht werden, dann sieht man das natürlich trotzdem, falls nicht die Phasen einzeln angesteuert werden können. Falls jemand also einen Shelly 3 EM hat und jede einzelne Phase überwacht und zusätzlich noch 3 BalkonPV - pro Phase eins, dann kann das natürlich noch optimiert werden. Also 3 OpenDTU, 3 Scripte und 3 bzw. 6 oder 9 Wechselrichter. Ob das dann noch als 9 oder 11,5 kWP Balkon-PV gilt, würde eine interessante Diskussion sein. Ich hätte da Zweifel. Einspeisen würde man dennoch nur sehr wenig.

                          G Offline
                          G Offline
                          Gonzokalle
                          wrote on last edited by
                          #153

                          @carsaab
                          Finde ich auch interessant.
                          Dein Blockly sieht so denglisch aus. Schreibt man das so? Meine sehen ganz anders aus.

                          1 Reply Last reply
                          0
                          • CarsaabC Offline
                            CarsaabC Offline
                            Carsaab
                            wrote on last edited by Carsaab
                            #154

                            Null-Einspeiseregelung.json
                            Die json Datei,

                            Das Blockly ist Englisch, weil ich beruflich 90% auf Englisch arbeite. Also sind in der Familie alle Computer und jede Software in Englisch installiert. Auch IOBroker und Blockly.
                            (Meine Familie hat dazu eine Meinung, die aber ignoriere. Inzwischen habe sich alle dran gewöhnt.)

                            2ab7d9df-684f-4c3d-8680-a36aaf459085-grafik.png
                            Nochmal das Bild,

                            Wenn Ihr die OpenDTU per Plug über Nacht abschaltet, braucht Ihr eine Zeitschaltung dafür. Das ist der Start und das Ende.
                            In der Mitte die Betriebsdauer der Regelung nach dem Sonnenauf- und -untergang. Trigger ist die Änderung des Stromverbrauchs geliefert alle 10 Sekunden vom Hichi Lesekopf gekauft bei Ebay.
                            Die OpenDTU meldet alle 5 sekunden die Erzeugung.
                            Geschrieben wird nur der "non-persistent relative value" (nicht-dauerhafte Relativwert). Der dauerhafte Wert steht bei 600W.
                            Die Einstellung bei Stromverbrauch<300W enspricht 450W WR Leistung. ich habe ihn mit den 600W angemeldet. Also lasse ich ihn da stehen. Ausserdem will ich einen Puffer haben und es ist konform zu Anmeldung. Einen Akku habe ich derzeit nicht.

                            hier der Code.

                            </>
                            js code schedule({ astro: 'sunrise', shift: 0 }, async () => {
                              setStateDelayed('hue.0.Hue_smart_plug_3.on' /* Hue smart plug 3.on */, true, 1000000, false);
                            });
                            if (compareTime(getAstroDate('sunrise', undefined, 60), getAstroDate('sunset', undefined, -1), 'between', null)) {
                              on({ id: [].concat(['alias.0.Energie-Strom.Stromverbrauch']), change: 'any' }, async (obj) => {
                                let value = obj.state.val;
                                let oldValue = obj.oldState.val;
                                if (getState('alias.0.Energie-Strom.Hoymiles').val <= 300) {
                                  setStateDelayed('alias.0.Energie-Strom.non_persistent', 30, false, parseInt(((0) || '').toString(), 10), false);
                                } else {
                                  setStateDelayed('alias.0.Energie-Strom.non_persistent', (Math.min(Math.max(Math.round(((getState('alias.0.Energie-Strom.Stromverbrauch').val + 30 + getState('alias.0.Energie-Strom.Hoymiles').val) / 15) * 10) / 10, 30), 100)), false, parseInt(((0) || '').toString(), 10), false);
                                }
                              });
                            }
                            schedule({ astro: 'sunset', shift: 1 }, async () => {
                              setStateDelayed('alias.0.Energie-Strom.non_persistent', 40, false, parseInt(((0) || '').toString(), 10), false);
                              setStateDelayed('hue.0.Hue_smart_plug_3.on' /* Hue smart plug 3.on */, false, 1000000, false);
                            });
                            </>
                            

                            MOD-EDIT: Code in code-tags gesetzt!

                            Kenne mich mit der Plattform hier nicht so aus. Hoffe, das hier hilft.

                            CodierknechtC 1 Reply Last reply
                            0
                            • CarsaabC Carsaab

                              Null-Einspeiseregelung.json
                              Die json Datei,

                              Das Blockly ist Englisch, weil ich beruflich 90% auf Englisch arbeite. Also sind in der Familie alle Computer und jede Software in Englisch installiert. Auch IOBroker und Blockly.
                              (Meine Familie hat dazu eine Meinung, die aber ignoriere. Inzwischen habe sich alle dran gewöhnt.)

                              2ab7d9df-684f-4c3d-8680-a36aaf459085-grafik.png
                              Nochmal das Bild,

                              Wenn Ihr die OpenDTU per Plug über Nacht abschaltet, braucht Ihr eine Zeitschaltung dafür. Das ist der Start und das Ende.
                              In der Mitte die Betriebsdauer der Regelung nach dem Sonnenauf- und -untergang. Trigger ist die Änderung des Stromverbrauchs geliefert alle 10 Sekunden vom Hichi Lesekopf gekauft bei Ebay.
                              Die OpenDTU meldet alle 5 sekunden die Erzeugung.
                              Geschrieben wird nur der "non-persistent relative value" (nicht-dauerhafte Relativwert). Der dauerhafte Wert steht bei 600W.
                              Die Einstellung bei Stromverbrauch<300W enspricht 450W WR Leistung. ich habe ihn mit den 600W angemeldet. Also lasse ich ihn da stehen. Ausserdem will ich einen Puffer haben und es ist konform zu Anmeldung. Einen Akku habe ich derzeit nicht.

                              hier der Code.

                              </>
                              js code schedule({ astro: 'sunrise', shift: 0 }, async () => {
                                setStateDelayed('hue.0.Hue_smart_plug_3.on' /* Hue smart plug 3.on */, true, 1000000, false);
                              });
                              if (compareTime(getAstroDate('sunrise', undefined, 60), getAstroDate('sunset', undefined, -1), 'between', null)) {
                                on({ id: [].concat(['alias.0.Energie-Strom.Stromverbrauch']), change: 'any' }, async (obj) => {
                                  let value = obj.state.val;
                                  let oldValue = obj.oldState.val;
                                  if (getState('alias.0.Energie-Strom.Hoymiles').val <= 300) {
                                    setStateDelayed('alias.0.Energie-Strom.non_persistent', 30, false, parseInt(((0) || '').toString(), 10), false);
                                  } else {
                                    setStateDelayed('alias.0.Energie-Strom.non_persistent', (Math.min(Math.max(Math.round(((getState('alias.0.Energie-Strom.Stromverbrauch').val + 30 + getState('alias.0.Energie-Strom.Hoymiles').val) / 15) * 10) / 10, 30), 100)), false, parseInt(((0) || '').toString(), 10), false);
                                  }
                                });
                              }
                              schedule({ astro: 'sunset', shift: 1 }, async () => {
                                setStateDelayed('alias.0.Energie-Strom.non_persistent', 40, false, parseInt(((0) || '').toString(), 10), false);
                                setStateDelayed('hue.0.Hue_smart_plug_3.on' /* Hue smart plug 3.on */, false, 1000000, false);
                              });
                              </>
                              

                              MOD-EDIT: Code in code-tags gesetzt!

                              Kenne mich mit der Plattform hier nicht so aus. Hoffe, das hier hilft.

                              CodierknechtC Online
                              CodierknechtC Online
                              Codierknecht
                              Developer Most Active
                              wrote on last edited by
                              #155

                              @carsaab
                              Bitte Code auch in Code-Tags </> einbetten.

                              "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                              Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                              HmIP|ZigBee|Tasmota|Unifi
                              Zabbix Certified Specialist
                              Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                              CarsaabC 1 Reply Last reply
                              0
                              • CodierknechtC Codierknecht

                                @carsaab
                                Bitte Code auch in Code-Tags </> einbetten.

                                CarsaabC Offline
                                CarsaabC Offline
                                Carsaab
                                wrote on last edited by Carsaab
                                #156

                                @codierknecht

                                sorry - ich bin No/Low-Code Fan. Den Code den Blockly produziert, verstehe ich selber nicht.
                                Ich habe den Code, den Blockly generiert nur rauskopiert und habe keine Ahnung was Code-Tags sind. Parallel zu Blockly noch von Hand coden möchte ich nicht.
                                Das Script funktioniert bei mir, mehr brauche ich nicht.
                                Eigentlich müsste das json file nur importiert werden, so meine Annahme. Es ist in dem Post ja angehängt und kann heruntergeladen werden.
                                https://forum.iobroker.net/assets/uploads/files/1710753872630-null-einspeiseregelung.json
                                Funktioniert das nicht?

                                A Samson71S HomoranH 3 Replies Last reply
                                0
                                • CarsaabC Carsaab

                                  @codierknecht

                                  sorry - ich bin No/Low-Code Fan. Den Code den Blockly produziert, verstehe ich selber nicht.
                                  Ich habe den Code, den Blockly generiert nur rauskopiert und habe keine Ahnung was Code-Tags sind. Parallel zu Blockly noch von Hand coden möchte ich nicht.
                                  Das Script funktioniert bei mir, mehr brauche ich nicht.
                                  Eigentlich müsste das json file nur importiert werden, so meine Annahme. Es ist in dem Post ja angehängt und kann heruntergeladen werden.
                                  https://forum.iobroker.net/assets/uploads/files/1710753872630-null-einspeiseregelung.json
                                  Funktioniert das nicht?

                                  A Offline
                                  A Offline
                                  andi_grafa
                                  wrote on last edited by
                                  #157

                                  @carsaab
                                  Du hättest den Code einfach zwischen </> reinkopieren sollen, damit in deinem Beitrag alles besser lesbar wird!

                                  js code schedule({ astro: 'sunrise', shift: 0 }, async () => {
                                  setStateDelayed('hue.0.Hue_smart_plug_3.on' /* Hue smart plug 3.on /, true, 1000000, false);
                                  });
                                  if (compareTime(getAstroDate('sunrise', undefined, 60), getAstroDate('sunset', undefined, -1), 'between', null)) {
                                  on({ id: [].concat(['alias.0.Energie-Strom.Stromverbrauch']), change: 'any' }, async (obj) => {
                                  let value = obj.state.val;
                                  let oldValue = obj.oldState.val;
                                  if (getState('alias.0.Energie-Strom.Hoymiles').val <= 300) {
                                  setStateDelayed('alias.0.Energie-Strom.non_persistent', 30, false, parseInt(((0) || '').toString(), 10), false);
                                  } else {
                                  setStateDelayed('alias.0.Energie-Strom.non_persistent', (Math.min(Math.max(Math.round(((getState('alias.0.Energie-Strom.Stromverbrauch').val + 30 + getState('alias.0.Energie-Strom.Hoymiles').val) / 15) * 10) / 10, 30), 100)), false, parseInt(((0) || '').toString(), 10), false);
                                  }
                                  });
                                  }
                                  schedule({ astro: 'sunset', shift: 1 }, async () => {
                                  setStateDelayed('alias.0.Energie-Strom.non_persistent', 40, false, parseInt(((0) || '').toString(), 10), false);
                                  setStateDelayed('hue.0.Hue_smart_plug_3.on' / Hue smart plug 3.on */, false, 1000000, false);
                                  });
                                  
                                  1 Reply Last reply
                                  0
                                  • CarsaabC Carsaab

                                    @codierknecht

                                    sorry - ich bin No/Low-Code Fan. Den Code den Blockly produziert, verstehe ich selber nicht.
                                    Ich habe den Code, den Blockly generiert nur rauskopiert und habe keine Ahnung was Code-Tags sind. Parallel zu Blockly noch von Hand coden möchte ich nicht.
                                    Das Script funktioniert bei mir, mehr brauche ich nicht.
                                    Eigentlich müsste das json file nur importiert werden, so meine Annahme. Es ist in dem Post ja angehängt und kann heruntergeladen werden.
                                    https://forum.iobroker.net/assets/uploads/files/1710753872630-null-einspeiseregelung.json
                                    Funktioniert das nicht?

                                    Samson71S Offline
                                    Samson71S Offline
                                    Samson71
                                    Global Moderator
                                    wrote on last edited by
                                    #158

                                    @carsaab sagte in Regelung eines Hoymiles Solarinverters (Nulleinspeisung):

                                    Ich habe den Code, den Blockly generiert nur rauskopiert und habe keine Ahnung was Code-Tags sind.

                                    Um Code für Mitlesende hier im Forum entspannter lesbar zu machen, bettet man ihn nach dem Reinkopieren in sog. Code-Tags ein. Es geht also gar nicht um den Code an sich.

                                    Das findest Du als Menüpunkt bei der Erfassung des Beitrags.

                                    b598d876-a074-44e1-8b4a-17ba0e9d617c-image.png

                                    Markus

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

                                    1 Reply Last reply
                                    0
                                    • CarsaabC Carsaab

                                      @codierknecht

                                      sorry - ich bin No/Low-Code Fan. Den Code den Blockly produziert, verstehe ich selber nicht.
                                      Ich habe den Code, den Blockly generiert nur rauskopiert und habe keine Ahnung was Code-Tags sind. Parallel zu Blockly noch von Hand coden möchte ich nicht.
                                      Das Script funktioniert bei mir, mehr brauche ich nicht.
                                      Eigentlich müsste das json file nur importiert werden, so meine Annahme. Es ist in dem Post ja angehängt und kann heruntergeladen werden.
                                      https://forum.iobroker.net/assets/uploads/files/1710753872630-null-einspeiseregelung.json
                                      Funktioniert das nicht?

                                      HomoranH Do not disturb
                                      HomoranH Do not disturb
                                      Homoran
                                      Global Moderator Administrators
                                      wrote on last edited by
                                      #159

                                      @carsaab sagte in Regelung eines Hoymiles Solarinverters (Nulleinspeisung):

                                      ich bin No/Low-Code Fan.

                                      hat damit nichts zu tun, sondern hiermit:
                                      https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1

                                      kein Support per PN! - Fragen im Forum stellen -
                                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                                      Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton im Header. Danke!
                                      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                                      CarsaabC 1 Reply Last reply
                                      1
                                      • HomoranH Homoran

                                        @carsaab sagte in Regelung eines Hoymiles Solarinverters (Nulleinspeisung):

                                        ich bin No/Low-Code Fan.

                                        hat damit nichts zu tun, sondern hiermit:
                                        https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1

                                        CarsaabC Offline
                                        CarsaabC Offline
                                        Carsaab
                                        wrote on last edited by
                                        #160

                                        @homoran
                                        Danke - sorry für die lange Leitung, jetzt habe auch ich es verstanden.
                                        Ich habe ja auch kein Problem, ich wollte nur eine funktionierende Lösung teilen, damit andere Zeit sparen.
                                        Das Script läuft bei mir wie geölt.

                                        1 Reply Last reply
                                        0
                                        • CarsaabC Carsaab

                                          Hier ist noch mein Script für die Nulleinspeisung über Opendtu und Hoymiles HM1500. Den Strom lese ich mit einem Hichi Lesekopf am Stromzähler.
                                          Funktioniert wunderbar. Ich speise fast nichts ein.
                                          Immer wenn sich der Strom ändert - wird alle 10 Sekunden vom Hichi gemeldet, da brauche ich keinen CRON Job - wird das Limit neu gesetzt sofern die WR Stromerzeugung >300 Watt ist. Die OpenDTU schalte ich ca. 1h nach Sonnenaufgang an und mit Sonnenaufgang ab. Die dauerhafte Limitierung liegt bei 600W. Damit startet der WR jeden Morgen und bleibt da auch, wenn es keine Regelung gibt.

                                          c3573fbb-227a-4dff-9bba-65ed927de52b-grafik.png

                                          Die Steuerung erfolgt über die Prozentangabe der Wechselrichterleistung in den Limits von 30% bis 100%
                                          Am Anfang gab es die Fehlermeldung es würde kein Number-Value übertragen, durch die Value Funktion hat sich das erledigt.

                                          A Offline
                                          A Offline
                                          andi_grafa
                                          wrote on last edited by
                                          #161

                                          @carsaab sagte in Regelung eines Hoymiles Solarinverters (Nulleinspeisung):

                                          Hier ist noch mein Script für die Nulleinspeisung über Opendtu und Hoymiles HM1500. Den Strom lese ich mit einem Hichi Lesekopf am Stromzähler.
                                          Funktioniert wunderbar. Ich speise fast nichts ein.
                                          Immer wenn sich der Strom ändert - wird alle 10 Sekunden vom Hichi gemeldet, da brauche ich keinen CRON Job - wird das Limit neu gesetzt sofern die WR Stromerzeugung >300 Watt ist. Die OpenDTU schalte ich ca. 1h nach Sonnenaufgang an und mit Sonnenaufgang ab. Die dauerhafte Limitierung liegt bei 600W. Damit startet der WR jeden Morgen und bleibt da auch, wenn es keine Regelung gibt.

                                          c3573fbb-227a-4dff-9bba-65ed927de52b-grafik.png

                                          Die Steuerung erfolgt über die Prozentangabe der Wechselrichterleistung in den Limits von 30% bis 100%
                                          Am Anfang gab es die Fehlermeldung es würde kein Number-Value übertragen, durch die Value Funktion hat sich das erledigt.

                                          Nur mal so zum Verständnis, du regelst die Einspeisung mittels OpenDTU auf eine Nulleispeisung. Ich sehen in deinem Programm aber z.B. nichts von einer Akkuspannungsüberwachung. Eine Nulleinspeisung macht meiner Meinung nach nur Sinn bei der Verwendung eines Akku. Hast du einen Akku, wenn ja, entlädst du den Akku, bis das BMS anspricht?

                                          Samson71S 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          388

                                          Online

                                          32.7k

                                          Users

                                          82.5k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe