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.
    • smartboart
      smartboart @smartboart last edited by smartboart

      @ArnoD

      Hi Arno oder in die Runde...
      Ich bin auf der Suche nach einer Möglichkeit im Script 45 States ( Zellenspannungen von 3 Batterien ) mittels Enum Funktion (Zellenspannung zugeordnet ) zu vergleichen und bei Abweichung einer Zelle > 0.1V zu allen anderen entsprechen zu triggern. bzw. eine Log Meldung auszugeben... Vlt. hat sowas ähnliches schon mal jemand gemacht? Ansosnten werde ich mich wohl mit tryand error durchwursteln müssen..
      Esgeht um die Werte im rot markierten Bereich siehe Bild..

      Unbenannt.png

      smartboart 1 Reply Last reply Reply Quote 0
      • smartboart
        smartboart @smartboart last edited by smartboart

        Ok,
        hab es hinbekommen..
        falls noch jemand die Zellenspannung überwachen möchte, hier das Script dazu...Natürlich ist dazu folgendes nötig..

        https://forum.iobroker.net/topic/32976/e3dc-hauskraftwerk-steuern/800?_=1616613261044

        var logging = true;
        var debug = true;
        
        var tolleranz = 0.1// Tolleranz Abweichung der Zelle in Volt zum Durchschnitt
        
        var cacheSelector = $('(functions=Zellenspannung)');
        
        /*
        const rm = $('(functions=Zellenspannung)');
        rm.each(function(id, i) {
        log('test ' + id);
        });
        */
        
        var status = null;
        var anzahlZellen = 0;
        var durchschnittZellenspannung = 0;
        var summenspannung = 0;
        
        
        function countBat() {
        summenspannung = 0;
        anzahlZellen = 0;
        if (logging)log('E3DC Batterie Zellenüberwachung: Funktionsstart countBat');
        cacheSelector.each(function (id, i) { 
        ++anzahlZellen; 
        summenspannung = summenspannung  + getState(id).val;
        if (debug)log('E3DC Batterie Zellenüberwachung: Zelle: '+anzahlZellen+ ' Zellenspannung ' +getState(id).val+ ' V Summe ' +summenspannung );
        });
        }
        
        
        function checkBat() {
        var spannung = 0;
        if (logging)log('E3DC Batterie Zellenüberwachung: Funktionsstart checkBat');
        cacheSelector.each(function (id, i) { 
        var name = getObject(id).common.name;
        spannung = getState(id).val; 
        var devicename = name.replace(/(&nbsp;|<([^>]+)>)|(_)|(0)|(:)/ig, " ");
        if (spannung > durchschnittZellenspannung*1+tolleranz*1 || spannung < durchschnittZellenspannung*1-tolleranz*1 ){
        if(logging)log ('E3DC Batterie Zellenüberwachung: Batteriezelle Tolleranzüberschreitung ' + devicename + ' Zellenspannung beträgt ' + spannung + ' V, der Durchschnitt liegt bei ' + durchschnittZellenspannung + ' V');    
        sendTo("telegram.0", "send", {text: ('E3DC Batterie Zellenüberwachung: Batteriezelle Tolleranzüberschreitung ' + devicename + ' Zellenspannung beträgt ' + spannung + ' V, der Durchschnitt liegt bei ' + durchschnittZellenspannung + ' V')});
        }
        });
        }
        
        // Trigger
        schedule("'37 */3 * * *'", function () { 
        if (debug) log('E3DC Batterie Zellenüberwachung: Abfragetrigger aktiv.');
        countBat();
        setTimeout(function(){
        durchschnittZellenspannung = summenspannung / anzahlZellen;
        if (debug)log('E3DC Batterie Zellenüberwachung: Anzahl Zellen : ' +anzahlZellen + ' Addierte Spannung : '+ summenspannung+ 'Durchschnitt beträgt : ' + durchschnittZellenspannung);
        },2000);
        setTimeout(function(){
        checkBat();
        },4000);
        });
        
        //Scriptstart
        if (debug) log('E3DC Batterie Zellenüberwachung: Auslöser Skriptstart');
        countBat();
        setTimeout(function(){
        durchschnittZellenspannung = summenspannung / anzahlZellen;
        if (debug)log('E3DC Batterie Zellenüberwachung: Anzahl Zellen : ' +anzahlZellen + ' Addierte Spannung : '+ summenspannung+ ' V Durchschnitt beträgt : ' + durchschnittZellenspannung + ' V');
        },2000);
        setTimeout(function(){
        checkBat();
        },4000);
        
        
        
        
        
        A 1 Reply Last reply Reply Quote 0
        • A
          ArnoD @smartboart last edited by

          @smartboart
          Sorry das ich erst jetzt antworte, aber ich hätte da auch keine fertige Lösung gehabt.
          Warum willst du eigentlich die Zellenspannungen überwachen ?

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

            @arnod sagte in E3DC Hauskraftwerk steuern:

            @smartboart
            Sorry das ich erst jetzt antworte, aber ich hätte da auch keine fertige Lösung gehabt.
            Warum willst du eigentlich die Zellenspannungen überwachen ?

            Hi kein Problem.. . Hatte ja schon ne idee wie ich es umsetze.
            Die Zellenspannung ist der Indikator fuer eine gesunde Batterie... es gehen meistens einzelne Zellen kaputt. Es altern zwar alle gleichzeitig, aber bei fertigungsfehlern oder spontane defekte bzw. qualitaetsproblemen sind meistens nur einzelne Zellen betroffen.. Gehen einzelne Zellen kaputt, Faellt das dem Betreiber in der Regel nicht auf. Erst wenn mehrere nicht mehr tun was sie sollen merkt man es an der Kapazität wenn man glück hat noch rechtzeitig ... Fuer frühzeitige Reklamationen innerhalb der Gewährleistung und den zustand der Batterie zu kennen finde ich es spannend das zu überwachen. Ausserdem war ich einige Zeit Projektleiter in der notstrom Branche und bei usv Anlagen ist es eine nachgefragte Option...

            S 1 Reply Last reply Reply Quote 0
            • S
              stevie77 @smartboart last edited by stevie77

              @smartboart Laufen die Werte von bzw. überhaupt vorhandene einzelne kaputte Zellen nicht auch in den SoH rein? Keine Ahnung, was für Sensoren und Formeln hinter der Berechnung der schnöden einen Prozentzahl liegen...

              smartboart 1 Reply Last reply Reply Quote 0
              • smartboart
                smartboart @stevie77 last edited by smartboart

                @stevie77 sagte in E3DC Hauskraftwerk steuern:

                @smartboart Laufen die Werte von bzw. überhaupt vorhandene einzelne kaputte Zellen nicht auch in den SoH rein? Keine Ahnung, was für Sensoren und Formeln hinter der Berechnung der schnöden einen Prozentzahl liegen...

                Mit Sichereit kann ich das nicht beantworten, was ich aber sehe ist, dass bei meinen 3 Batterien die nachgerüstete noch 100 % SOH hat, und die beiden originalen um die 99%
                haben. Die Zellenspannung ist dabei noch unauffällig.
                Denke hier wird eher die zugeführte und entnommen Leistung unter Betrachtung der gesamten Strangspannung herangezogen.

                SOH ist bestimmt aussagekräftig genug, aber mich interessiert halt auch der Verlauf der Zellenspannung im Alterungsprozess...

                Beide Werte SOH und Zellenspannung sind schon mal mehr als E3DC dem Standart Anwender zur Verfügung stellt um den Zustand seiner Anlage zu beurteilen. Ist auch klar, ich möchte ja meine Reklamationen als Hersteller so gering wie möglich halten...

                Über Sinnhaftigkeit der Auswertung musst man halt selbst entscheiden. Meine Erfahrung aus der Hochverfügbaren Stromversorgung ist halt, dass die Zellenspannung eine relevante Größe ist und bei Wartungsarbeiten auch gemessen wird, zumindest da wo keine Überwachung vorhanden ist. Auch wenn bei den großen USV Anlagen halt keine einzelnen Zellen sondern große Batterieblöcke in Reihe geschaltet sind. Aber ist hier ja nix anderes als Batterien in Reihe geschaltet (Strang) bis zur gewünschten Spannung und Kapazität und dann ganze Stränge Parallell um die Kapazität zu erhöhen..

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

                  Ich bin gerade dabei, ein Skript zu schreiben, mit dem die Wallbox von E3DC gesteuert werden kann.
                  Ich wollte folgenden Test durchführen: E-Auto laden und dazu auch die Batterie vom E3DC verwenden.

                  Jetzt wäre ich davon ausgegangen, das E3DC automatisch aus der Batterie nachspeist , wenn die PV-Leistung nicht mehr ausreicht, den Hausbedarf und die Ladeleistung vom E-Auto zu decken.
                  Ich war aber sehr überrascht, das dem nicht so ist, sondern aus dem Netz nachgespeist wird.
                  Das Laden der Batterie wird nicht unterbrochen, sondern einfach mit geringerer Leistung weiter geladen, obwohl die benötigte Leistung höher ist als die PV-Leistung.
                  Um es vorwegzunehmen, es liegt nicht an E3DC-Control von Eba, das habe ich getestet indem ich die Steuerung E3DC-Control vorher beendet habe.
                  Wenn keine PV-Leistung vom Dach kommt, funktioniert alles wie erwartet und es wird aus der Batterie entladen.

                  Kann das jemand von euch mal testen, ob es bei euch auch so ist, kann mir nicht vorstellen, dass das so von E3DC gewollt ist.
                  netz.png

                  smartboart 2 Replies Last reply Reply Quote 0
                  • smartboart
                    smartboart @ArnoD last edited by smartboart

                    @arnod kann ich leider nicht testen... Zumindest nicht kurzfristig... Noch kein Stromer in der Garage... Kannst aber zum Kaffee vorbei kommen und dein Stromer mal dran hängen.. . Natürlich Korona konform auf der Terrasse... 😂😂😂

                    Ich wuerde da mal ein Ticket bei E3DC aufmachen... wäre ja am thema vorbei.

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

                      @arnod hast du es nochmal mit eberhards Updates zu e3dc control probiert... da ist in den letzten 14 tagen einiges zum thema Wallbox passiert..
                      https://github.com/Eba-M/E3DC-Control/commits/master

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

                        @smartboart
                        Das mit dem Kaffee hört sich ja gut an und dann auch noch Strom umsonst 😂

                        Muss erst mal noch ein paar Versuche machen, ob dieses Verhalten immer so ist und dann natürlich ein Ticket aufmachen.
                        Habe mir heute überlegt, ob es vielleicht damit zusammenhängt, dass bei einer Solarleistung über der Einspeisegrenze E3DC sicherheitshalber immer im Lademodus bleibt, um schneller Spannungsschwankungen abfangen zu können und so die Einspeisebegrenzung abzusichern.
                        Ist aber nur eine Vermutung die ich noch testen will.

                        Da ich mit meinem Skript soweit fertig bin, habe ich die Wallbox Funktion von Eba nicht weiter getestet.
                        Mit dem Skript kann ich das auch besser in VIS integrieren.
                        Ich werde aber die beiden Skripte nicht zusammen führen, sondern getrennt lassen, damit jeder nur das installiert, was er auch benötigt.

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

                          @arnod
                          Veröffentlichst du das Script ebenfalls? Welche Werte ziehst du dafür heran? Losgelöst von e3dc mit den modbus Werten von wallbee oder beides?
                          Ist fuer mich noch nicht aktuell, aber interessieren tut es mich jetzt schon wie du das umsetzt.

                          Zu ebas e3dc control...

                          Ich hoffe immernoch auf die mqtt Variante von eba.
                          In seiner Master branch sieht man, dass er damit schon experimentiert... Include mqtt ist zwar noch auskommentiert aber schon mal eingeflossen..

                          S A 2 Replies Last reply Reply Quote 0
                          • S
                            stevie77 @smartboart last edited by

                            Moin. Ich habe seit kurzem auch eine Wallbox hängen (zusammen mit ner Speichererweiterung auf 19,5 kWh). Allerdings nicht von E3/DC, sondern ne openWB. Weiß zufällig jemand, wie sich die zusammen mit E3DC-Control verhält? Ich hab' zwar nen separaten Leistungsmesser um die openWB im E3/DC-Portal zu visualisieren, aber für E3DC-Control wird der Wallbox-Verbrauch ja im Hausverbrauch untergehen. Für E3DC-Control alleine wird das von daher vermutlich funktionieren, aber wenn ich die openWB auf Überschussladen stelle könnte sie E3DC-Control zwischenfunken?
                            Bekomme in einem Monat den PHEV, dann kann ich es erstmals ausprobieren...aber vielleicht hat von euch ja jemand ne Idee oder Erfahrungen, wie sich das zusammen verhalten könnte? 🙂

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

                              @smartboart sagte in E3DC Hauskraftwerk steuern:

                              Veröffentlichst du das Script ebenfalls? Welche Werte ziehst du dafür heran? Losgelöst von e3dc mit den modbus Werten von wallbee oder beides?

                              Natürlich werde ich das Skript hier veröffentlichen, wenn ich es einigermaßen getestet habe.
                              Ich verwende die Werte von E3DC über Modbus und Wallbee über Modbus und es funktioniert erstaunlich gut.
                              Für die Wallbox habe ich fünf Lade Modi angelegt die ausreichen sollten:

                              1. Nur Überschuss Laden mit Prio. Batterie ohne Netzbezug. (Netzbezug und Entladen Batterie
                                ist während der Haltezeit möglich).
                              2. Nur Überschuss Laden mit Prio. Wallbox ohne Netzbezug. (Netzbezug / Enladen Batterie
                                ist während der Haltezeit möglich)
                              3. max. Ladeleistung Wallbox freigeben, Wenn PV-Leistung nicht ausreicht wird Batterie entladen und auch Netzbezug ist möglich
                              4. Laden über Batterie E3DC ohne Netzbezug bis zu einem eingestellten SoC Wert der Batterie E3DC.
                              5. Laden über Batterie E3DC ohne Netzbezug.

                              Einziges Problem ist Modus 4 und 5 , da habe ich das Regelverhalten von E3DC immer noch nicht verstanden, warum hier die Batterie nicht bis max. Entladeleistung entladen wird, sondern aus dem Netz ausgeglichen wird.

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

                                @stevie77
                                Da E3DC von der Wallbox nichts mehr mitbekommt, wird die Ladeleistung der Wallbox beim Hausverbrauch angezeigt.
                                Bei meinem Skript habe ich aber dasselbe Problem, da ich die Wallbox vom E3DC Hauskraftwerk abmelden muss, um diese über das Skript zu steuern.
                                Um das wieder zu trennen, habe ich ein eigenes State „Hausverbrauch“ angelegt, um in VIS den reinen Hausverbrauch ohne Wallbox anzeigen zu können.
                                E3DC-Control stört das nicht weiter, da der Hausverbrauch berücksichtigt wird und nur der restliche Überschuss zum Laden der Batterie verwendet wird.
                                Du wirst nur ein Problem haben, wenn du die Batterie vom Hauskraftwerk vorrangig Laden willst und nur was dann noch übrig ist an Überschuss zum Laden vom E-Auto verwenden willst.
                                Denn dazu müsste die Wallboxsteuerung die Ladeleistung der Batterie vom Hauskraftwerk berücksichtigen und da weiß ich nicht, ob das bei openWB der Fall ist.
                                Wenn du aber über Modbus auf deine Wallbox zugreifen kannst, und du die Möglichkeit hast die Ladeleistung der Wallbox über Modbus zu ändern, kannst du eventuell auch mein Skript verwenden.

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

                                  Ich habe jetzt meine Wallbox Steuerung soweit fertig das ich euch das Skript zur Verfügung stellen kann.
                                  Das Skript ist nur mit der Wallbox easy connect von E3DC getestet mit einem BMW I3 als E-Auto.
                                  Mann kann es aber für jede Wallbox mit Modbus Schnittstelle anpassen, wenn die im Skript benötigten Werte über Modbus übertragen werden.

                                  Bitte zuerst diese Anleitung lesen, da wird das meiste bereits erklärt:
                                  Anleitung.pdf

                                  So sieht das Ganze in VIS aus:
                                  View_Wallbox.png

                                  Skript E3DC_Wallbox Version 0.2.0:
                                  E3DC_Wallbox_ver 0.2.0.js

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

                                    @arnod
                                    Vielen Dank für dein Script, vorallem für die ausführliche Anleitung!
                                    Ich habe es installiert und wie erwartet, es funktioniert.
                                    So jetzt zu meinem Wohlstandsproblem: Wie muss ich eine 2. Wallbox im Script verwursten, damit die Grenzwerte eingehalten werden?
                                    Dass eine neue modbus-Instanz notwendig ist klar, aber ....

                                    G A 2 Replies Last reply Reply Quote 0
                                    • G
                                      goelectric @goelectric last edited by

                                      @goelectric
                                      Ich habe doch noch eine weitere Nachfrage:
                                      Welcher Datenpunkt steckt hinter "Vorgabe Ladestrom Wallbox"?

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

                                        @goelectric

                                        Über eine zweite Wallbox habe ich mir noch nicht mal Gedanken gemacht. 🤔 😁

                                        Mann müsste natürlich die Berechnung vom Ladestrom an die zweite Wallbox anpassen bzw, berücksichtigen.
                                        Willst du zwei E-Autos gleichzeitig laden können ? und soll die PV-Leistung auf beide gleich aufgeteilt werden ?
                                        oder soll erst ein E-Auto laden und danach das zweite?

                                        Mit "Vorgabe Ladestrom Wallbox" kann der max. Ladestrom der Wallbox eingestellt werden. Dieser Wert sollte nie 0 A sein, da sonst die Wallbox nicht mehr erkennen kann ob ein Auto angesteckt ist. Wenn mann das Laden unterbrechen will sollte man den Datenpunkt "Ladevorgang_pausieren" verwenden.

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

                                          @arnod
                                          Danke für die Antwort.
                                          Ich habe hier 2 E3DC easy Wallboxen verbaut, da die beiden Fahrzeuge auf einem Doppelparker stehen.
                                          Angedacht ist, das Ladekabel an den Fahrzeugen in der Garage immer angeschlossen zu lassen. Da zum einen der Energieversorger bei 2 x 22kW Wallboxen ein Lastmanagement vorschreibt und zum anderen der Tesla Model X mit maximal 24A und das Model 3 mit maximal 16A laden können UND ich keine Netzenergie nutzen möchte, wäre es schön bespielsweise den Minimalstrom so anzupassen, dass beide Fahrzeuge gleichzeitig geladen werden können.
                                          Wie gesagt stöhnen auf hohem Niveau.

                                          G A 2 Replies Last reply Reply Quote 0
                                          • G
                                            goelectric @goelectric last edited by

                                            @goelectric
                                            Noch eine weitere Frage, welches Widget hast Du für die "Offline/Online" Flächen genommen? Ich gehe davon aus, dass ein Farbwechsel beim Wechsel des boolschen Signals stattfindet.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            479
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            70
                                            3331
                                            1362866
                                            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