Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. E3DC Hauskraftwerk steuern

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    E3DC Hauskraftwerk steuern

    This topic has been deleted. Only users with topic management privileges can see it.
    • A
      ArnoD @stiwy18 last edited by

      @stiwy18 sagte in E3DC Hauskraftwerk steuern:

      wenn der Akku auf Notstrom SOC gefallen ist, dann bleibt der Akku solange auf 0 Watt Lade-/Entladeleistung, bis die PV wieder 500 Watt liefert? Dacht bis 500 Watt überlässt er alles dem E3DC

      Die 500 W Grenze gibt es zweimal, einmal als Einschaltkriterium der Lade/Entladeleistung E3DC und einmal wann die Steuerung an E3DC übergeben wird.

      Aktuell wird bei 500W PV-Leistung eingeschalten und bei 100W ausgeschalten.
      Du kannst es ja mal versuchen und den Schaltabstand zu verringern. Dazu einfach die Zeile 345 ändern und bei 500 mal 200 eintragen:

      if (Notstrom_Status == 1 || Notstrom_Status == 4 || Batterie_SOC_Proz > Notstrom_SOC_Proz || PV_Leistung_E3DC_W > 200 ){
      

      Wenn dann aber öfter ein und ausgeschaltet wird, würde ich wieder auf 500W gehen, da sonst die SSD zu oft beschrieben wird und das soll auf Dauer nicht gut sein 😉
      Werde es bei mir auch mal testen wie weit da man verringern kann.

      stiwy18 1 Reply Last reply Reply Quote 0
      • stiwy18
        stiwy18 @ArnoD last edited by

        @arnod
        Und schon wieder dazugelernt 🙂 Ich hab jetzt mal 300 Watt gemacht, da ich einen „Leerlaufverbrauch“ von 250 Watt im Haus hab und beobachte das mal so.
        Wie wäre die Idee, das triggern zu verhindern, wenn man sagt, einschalten ab x Watt und dann für z.B. 60 Minuten die Schleife zum abschalten zu unterbinden?
        Das würde ja die Schreibzyklen generell reduzieren, da auch 500 Watt irgendwann ein „schwankender Scheitelpunkt“ sein kann?

        Viele Grüße
        Stefan

        A 1 Reply Last reply Reply Quote 0
        • A
          ArnoD @stiwy18 last edited by

          @stiwy18
          Deine Idee hat mich auf eine andere Lösung gebracht 🙂
          Ich werde die Astro-Funktion verwenden, vor Sonnenuntergang (sunset) und 100W PV-Leistung wird eingeschaltet und nach Sonnenuntergang wird ausgeschaltet.
          Damit sollte es funktionieren.

          stiwy18 1 Reply Last reply Reply Quote 0
          • stiwy18
            stiwy18 @ArnoD last edited by

            @arnod Stimmt, das ist natürlich noch genialer 👍

            1 Reply Last reply Reply Quote 0
            • A
              ArnoD @ArnoD last edited by

              Habe eine neue Version Charge-Control auf GitHub hochgeladen.
              Version: 1.0.16
              Änderungen:

              • Ein-/ Ausschaltkriterium der Lade/Entladeleistung E3DC geändert. Es wird jetzt die Astro-Funktion "sunset" verwendet.
              A 1 Reply Last reply Reply Quote 0
              • C
                Chilihead last edited by

                @ArnoD hab jetzt mal das neue Script ausporbiert.
                Irgendwas zwickts da bei mir wohl oder ist das so gewollt?
                Das Script "spamt" mir die IOB Warnungen voll mit set power mode...

                javascript.0
                2022-08-30 13:04:33.017	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2605 M_Power = 2652
                
                javascript.0
                2022-08-30 13:04:27.015	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2604 M_Power = 2652
                
                javascript.0
                2022-08-30 13:04:21.018	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2603 M_Power = 2652
                
                admin.0
                2022-08-30 13:04:20.720	info	<== Disconnect system.user.admin from ::ffff:192.168.1.62 javascript
                
                admin.0
                2022-08-30 13:04:20.720	info	<== Disconnect system.user.admin from ::ffff:192.168.1.62 javascript
                
                javascript.0
                2022-08-30 13:04:15.012	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2602 M_Power = 2652
                
                javascript.0
                2022-08-30 13:04:09.021	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2601 M_Power = 2652
                
                javascript.0
                2022-08-30 13:04:03.011	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2600 M_Power = 2652
                
                javascript.0
                2022-08-30 13:03:57.010	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2599 M_Power = 2652
                
                javascript.0
                2022-08-30 13:03:51.014	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2598 M_Power = 2652
                
                javascript.0
                2022-08-30 13:03:51.004	info	script.js.E3DC_Charge_Control: -==== 2 M_Power:2652 = Math.round(((Ladeende_Proz:80 - Batterie_SOC_Proz:72)*Speichergroesse_kWh:15*10*3600) / (tRegelende:41460 - Zeit_aktuell_UTC_sek:39831)) ====-
                
                javascript.0
                2022-08-30 13:03:45.012	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2597 M_Power = 2600
                
                javascript.0
                2022-08-30 13:03:39.010	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2596 M_Power = 2600
                
                javascript.0
                2022-08-30 13:03:33.042	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2595 M_Power = 2600
                
                javascript.0
                2022-08-30 13:03:27.028	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2594 M_Power = 2600
                
                javascript.0
                2022-08-30 13:03:21.011	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2593 M_Power = 2600
                
                javascript.0
                2022-08-30 13:03:15.015	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2592 M_Power = 2600
                
                javascript.0
                2022-08-30 13:03:09.016	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2591 M_Power = 2600
                
                javascript.0
                2022-08-30 13:03:03.020	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2590 M_Power = 2600
                
                javascript.0
                2022-08-30 13:02:57.010	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2589 M_Power = 2600
                
                javascript.0
                2022-08-30 13:02:51.016	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2588 M_Power = 2600
                
                javascript.0
                2022-08-30 13:02:45.036	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2587 M_Power = 2600
                
                javascript.0
                2022-08-30 13:02:39.011	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2586 M_Power = 2600
                
                javascript.0
                2022-08-30 13:02:33.018	warn	script.js.E3DC_Charge_Control: Schritt = 2 E3DC_Set_Power_Mode = 3 (laden) Set_Power_Value_W = 2585 M_Power = 2600
                
                A 1 Reply Last reply Reply Quote 0
                • A
                  ArnoD @Chilihead last edited by

                  @chilihead
                  Im Skript die Konstante LogAusgabeSteuerung = false setzen.

                  1 Reply Last reply Reply Quote 0
                  • J
                    jans_ios last edited by

                    @arnod
                    Hi, vielen Dank erstmal für die ganze Arbeit, die Du in das Thema gesteckt hast. Ich habe Deine Skripte jetzt bei mir soweit importiert und auch die Views, jedoch wird mir im View nicht alles angezeigt. Dort, wo eigentlich rechts und unten das Menu angezeigt werden sollte, steht in roter Schrift "Fehler: View wurde nicht gefunden".

                    Screenshot VIS.jpg
                    Lt. VIS-Editor sieht es so aus, als wenn die Views "920_Menueleiste" und "900_Menueleiste_unten_Energie" fehlen würden.

                    Hast Du eine Idee, wo mein Fehler liegt?

                    Danke!

                    Z A 2 Replies Last reply Reply Quote 0
                    • Z
                      Zelkin @jans_ios last edited by

                      @jans_ios
                      Die Menüs sind doch bei jedem anders?!
                      Du hast schließlich andere endpunkte als Arno ..... also selber anlegen bzw. füllen 🙂

                      1 Reply Last reply Reply Quote 0
                      • R
                        Robbi12 last edited by

                        Also schon mal super Arbeit. Aber ich komme auch nicht so ganz zurecht.

                        Ich scheitere schon bei den VIS. Da sind verschiedene Ordner. Welche soll ich denn nehmen?

                        Ich habe keine Wallbox von E3DC angeschlossen.

                        A 1 Reply Last reply Reply Quote 0
                        • A
                          ArnoD @Robbi12 last edited by

                          @robbi12
                          Welche Ordner meinst du?
                          Du benötigst auch nicht zwingend eine Wallbox.
                          Du musst immer daran denken, dass man nicht vor deinem Rechner sitzt und sich somit schwertut, wenn es nicht genauer beschrieben wird. Bilder helfen hier meistens weiter.

                          1 Reply Last reply Reply Quote 0
                          • R
                            Robbi12 last edited by

                            Danke für deine schnelle Rückmail.

                            Auf deiner Github Seite sind einmal der Ordner E3DC Control und einmal direkt die Datei Charge-Control_Ver_1.0.16.js, dann noch die Datei Modbus.js.

                            Ich denke ich muss die Charge-Control_Ver_1.0.16.js verwenden.

                            Für den Modbus muss ich dann die Daten aus dem Ordner "Modbus Import Dateien Register" nehmen?

                            A 1 Reply Last reply Reply Quote 0
                            • A
                              ArnoD @Robbi12 last edited by ArnoD

                              @robbi12
                              Richtig, von Github das Script Charge-Control Ver 1.0.16 verwenden und wenn du dein E3DC noch nicht über Modbus eingebunden hast, kannst du die Importdatei
                              Modbus Import Dateien Register/Modbus_E3DC_Import_V1.90_2022-01-28.tsv verwenden.

                              Bitte auch die Anleitung Charge-Control.pdf von Github lesen.

                              1 Reply Last reply Reply Quote 0
                              • A
                                ArnoD @jans_ios last edited by

                                @jans_ios
                                Ich habe heute auf Github alle Views aktualisiert und auch die Menüleisten unten und rechts hinzugefügt.

                                Wie aber @Zelkin schon richtig schreibt, wird es dir nur bedingt was nützen, da die Menüleiste und Verlinkung der einzelnen Views bei jedem anders ist und immer angepasst werden müssen.

                                Z 1 Reply Last reply Reply Quote 0
                                • J
                                  jans_ios last edited by

                                  @ArnoD
                                  Ah cool - danke für die Info und die Dateien. Dann hatte ich das tatsächlich falsch verstanden mit den Menus 😉

                                  Andere Frage: Ich habe einen My-PV Elwa Heizstab und habe reines Überschuss-Laden im E3DC aktiviert. Ich hatte eigentlich erwartet, dass bei Zur-Verfügung-Stehen von Strom aufgrund verringerter Ladeleistung der Heizstab vom E3DC aktiviert wird, das geschieht jedoch nicht. Ich vermute, das geschieht erst, wenn der Akku zu 100% geladen ist.

                                  Habt Ihr eine Idee, wie man das in den Griff bekommen könnte?

                                  Danke!

                                  1 Reply Last reply Reply Quote 0
                                  • stiwy18
                                    stiwy18 last edited by

                                    @ArnoD
                                    Jetzt hab ich mal eine andere Frage, mein Auto (Hybrid) übermittelt regelmäßig über einen Adapter den Ladezustand des Autos.
                                    Aktuell habe ich es so gemacht, dass ich den Eigenverbrauch um die kWh erhöhe, was der Akku vom Auto benötigt um voll zu werden. Funktioniert soweit auch, dass E3DC Charge Control ggf. auf "Alles laden" umschaltet, wenn die Prognose nicht ausreicht um das Auto später zu laden.
                                    Wenn ich jedoch morgens unterwegs bin, hält Charge Control den Speicher auf der Ladeschwelle und ich verkaufe dann den Strom, anstatt, den Speicher mehr zu füllen für das Auto, somit zieht das Auto dann relativ schnell den Speicher leer (Auto lädt mit 7,2 kW und PV hat 8,3 kWp).
                                    Hast du da eine Idee, wie ich den Speicher mehr fülle, wenn das Auto "leerer" wird?

                                    Danke
                                    Stefan

                                    A 1 Reply Last reply Reply Quote 0
                                    • J
                                      jans_ios last edited by

                                      Mich würde hier allgemein das Zusammenspiel der 2 Skripte "Charge Control" und "E3DC_Wallbox" interessieren - nehmen die aufeinander Rücksicht? Ich habe "Charge Control" jetzt am Laufen, die Wallbox hängt noch am E3DC und das nur-Überschuss-Laden funktioniert nun nicht mehr, es wird einfach auch Netzstrom verwendet, wenn die PV-Leistung nicht ausreicht.

                                      Auch die Ansteuerung eines Heizstabs wie dem My-PV Elwa (s. Post auch zwei Einträge weiter oben) gestaltet sich schwierig. Ich probiere gerade mit einem Blockly-basierten Skript rum, um nur den Überschuss, der nach

                                      • "e3dc-rscp.0.EMS.SET_POWER_VALUE" (Ladestrom für den Akku, der von "Charge Control" gesetzt wird),
                                      • Hausverbrauch abzgl. am Heizstab anliegendem Strom und
                                      • Wallbox-Leistung

                                      noch übrig bleibt, in den Heizstab zu schicken, das will aber noch nicht so recht.

                                      Nutze ich allen zur Verfügung stehenden Strom aus, schaltet "Charge Control" die Steuerung ab, weil der Rest-Strom kleiner als 500W ist - so habe ich das jedenfalls verstanden.

                                      Kann man den per Modbus-Adapter für den Heizstab zu setzenden Wert evtl. auch im Charge-Control-Skript mit unterbringen? Wenn ja - wie und wo?

                                      Hat jemand so etwas schon umgesetzt? Wenn ja, gerne mehr Details - ich halte Euch von meiner Seite auch auf dem Laufenden.

                                      A 1 Reply Last reply Reply Quote 0
                                      • A
                                        ArnoD @stiwy18 last edited by

                                        @stiwy18

                                        Wenn ich jedoch morgens unterwegs bin, hält Charge Control den Speicher auf der Ladeschwelle und ich verkaufe dann den Strom, anstatt, den Speicher mehr zu füllen für das Auto

                                        Wenn die Prognose minus Eigenverbrauch nicht mehr ausreicht, sollte Einstellung 1 alles laden angewählt werden.
                                        In dieser Einstellung kannst du die Ladeschwelle höher setzen, um bereits vor Start Regelzeitraum alles zu laden.
                                        Dein Problem ist dann aber, wenn das Auto nicht rechtzeitig angesteckt wird, dass du eventuell nicht mehr ausreichend Kapazität zum Puffern vom Überschuss hast.

                                        Z 1 Reply Last reply Reply Quote 0
                                        • A
                                          ArnoD @jans_ios last edited by

                                          @jans_ios sagte in E3DC Hauskraftwerk steuern:

                                          Mich würde hier allgemein das Zusammenspiel der 2 Skripte "Charge Control" und "E3DC_Wallbox" interessieren - nehmen die aufeinander Rücksicht? Ich habe "Charge Control" jetzt am Laufen, die Wallbox hängt noch am E3DC und das nur-Überschuss-Laden funktioniert nun nicht mehr, es wird einfach auch Netzstrom verwendet, wenn die PV-Leistung nicht ausreicht.

                                          Master ist hier Charge-Control und das Wallbox Script passt sich je nach Einstellung an.
                                          Das E3DC_Wallbox Skript berücksichtigt je nach Einstellung, ob gerade in das Netz eingespeist wird oder ob die Batterie entladen werden darf. Dafür sind vier Ladeeinstellungen möglich:

                                          1. Überschuss Laden mit Prio. Speicherbatterie.
                                          (Netzbezug und Entladen Batterie ist während der Haltezeit möglich). Bei dieser Einstellung wird die erzeugte Solarenergie nach Abzug, Hausverbrauch und Ladeleistung Speicherbatterie zur Ladung vom E-Auto benutzt. Wenn nach Abzug vom Hausverbrauch und Ladeleistung Speicherbatterie die PV-Leistung den Wert „MinLadestromStart_A“ übersteigt, wird mit dem Laden vom E-Auto begonnen und es wird die „Haltezeit“ gestartet. (Erklärung Haltezeit weiter unten).

                                          2. Überschuss Laden mit Prio. Wallbox ohne Netzbezug.
                                          (Netzbezug / Entladen Batterie ist während der Haltezeit möglich). Bei dieser Einstellung wird die erzeugte Solarenergie nach Abzug vom Hausverbrauch zur Ladung vom E-Auto benutzt. Wenn nach Abzug vom Hausverbrauch die PV-Leistung den Wert „MinLadestromStart_A“ übersteigt, wird mit dem Laden vom E-Auto begonnen und es wird die „Haltezeit“ gestartet. (Erklärung Haltezeit weiter unten).

                                          3. max. Ladeleistung Wallbox.
                                          Die Wallbox wird auf den Wert „MaxLadestrom_A“ eingestellt und diese Ladeleistung wird ohne Rücksicht auf Eigenverbrauch, PV-Leistung oder Speicherbatterie SoC gehalten. Sollte die PV-Leistung und Speicherbatterie SoC nicht ausreichen, wird der Rest aus dem Netz bezogen.

                                          4. Entladen Speicherbatterie E3DC bis eingestelltem SoC Wert.
                                          Das E-Auto wird mit der max. Entladeleistung der Speicherbatterie „MaxEntladeLeistungBatterie_W“ geladen, bis der min. SoC Wert „MinBatterieSoC“ erreicht wird. Wenn nach Abzug vom Eigenverbrauch noch überschüssige PV-Leistung vorhanden ist, wird diese auch zum Laden vom E-Auto verwendet.

                                          Haltezeit:
                                          Um ein ständiges Unterbrechen des Ladevorgangs beim E-Auto (bei Bewölkung mit schwankender Solarleistung) zu verhindern, habe ich drei Haltezeiten für die Einstellungen 1,2,4 programmiert. Diese kann jeder selbst im Skript einstellen. Während der Haltezeit wird nur mit „MinLadestromAuto_A“ geladen und die fehlende Leistung aus der Batterie oder aus dem Netz bezogen.

                                          Ich bin aber gerade noch am Optimieren vom Script und werde zeitnah eine neue Version hochladen.

                                          J 1 Reply Last reply Reply Quote 0
                                          • P
                                            Pr0tag0n last edited by

                                            Hi,
                                            Charge-Control funktioniert bei mir mittlerweile tippitoppi.

                                            Ich versuche jetzt für mein neues E-Auto die Wallbox einzustellen.
                                            Wenn ich das Vis Wallbox importieren möchte, wie ich es bei vis Charge-Control oder vis Prognosen getan habe, bekomme ich bei Vis oben rechts den Fehler "Verbindungsfehler" und nichts wird importiert. Woran kann das liegen und wie kann ich es ändern?

                                            Vielen Dank schon mal

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            888
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            70
                                            3330
                                            1353473
                                            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