Benachrichtigungen
Alles löschen

Vorstellung des HJDC (H)ome Assistant (J)K-BMS (D)eye (C)ontroller

4 Beiträge
3 Benutzer
1 Likes
255 Ansichten
(@ackmaniac)
Vorsichtiger Stromfühler
Beigetreten: Vor 4 Monaten
Beiträge: 31
Themenstarter  

Vorstellung des HJDC  -  (H)ome Assistant (J)K-BMS (D)eye (C)ontroller:

Ziel dieses Projekts war es für mich einen Controller zu entwickeln der zwischen JK-BMS und Deye Wechselrichter platziert wird,
um die Schwächen des JK-BMS aufgrund der fehlenden Kommunikation auszumerzen.
Dieser Controller liest die Werte des JK-BMS und übermittelt sie zum Deye und simuliert dabei, dass er eine Pylontec Batterie ist.
Zusätzlich liest er die Werte des Deye aus und liefert sie an Home Assistant und kann dessen Konfiguration auch modifizieren.
Auch die BMS Werte werden an Home Assistant kommuniziert.

 

Features:

  • Es kann eingestellt werden, aller wie viel Tage die Batterie ein Top-Balacing ausführen soll.
    Dazwischen wird sie nur auf einstellbare Prozent (Bsp. 90%) geladen.
    Nur zum balancen wird die Spannung erhöht und fast zu 100% geladen.
    Denn auch wenn die Batterie nur zu 3.46V pro Zelle geladen wird, bedeutet dies schon etwa 99%.
    Es wird also vermeiden, dass dies täglich geschieht. Das sollte die Lebensdauer der Batterie erhöhen.
    Aus meinen Erfahrungen sollte mit gut eingestellten Werten (unnötiges Balancen wird verhindert) ein wöchentliches Balancen ausreichend sein.
  • Es kann eingestellt werden, bis wie viel Prozent (Bsp. 15%) die Batterie minimal entladen werden darf.
  • Stufenlose Reduzierung der Lade- und Entladeleistung (sogar bis 0A) , wenn:
       - Batterie zu kalt
       - Batterie zu warm
       - BMS zu warm
       - Einzelne Zelle zu hohe Spannung
       - Einzelne Zelle zu niedrige Spannung

    Damit wird verhindert, dass das BMS beim laden oder entladen aufgrund von Grenzwerten komplett abschaltet.
    Bevor irgendwelche Grenzwerte des BMS erreicht werden, wird die Leistung schon reduziert.
    Die Grenzwerte werden von den Einstellungen des BMS gelesen und verwendet.

  • Die maximale Lade und Entladeleistung kann eingestellt und jederzeit in Home Assistant modifiziert werden.
  • Auch Laden und Entladen kann man aus und wieder einschalten, ohne es im BMS zu deaktivieren, indem der Controller dem Wechselrichter sagt, dass er nicht laden oder entladen soll.

Stromversorgung:
Der Controller wird vom BMS versorgt. Somit ist die einzige Verbindung zum Deye ein Standard LAN Kabel.
Leitungsschutzschalter sollten idealerweise auf dem (+) Kabel verbaut werden.
Somit haben das BMS und der DEYE das gleiche potenzial, da Sie über (-) verbunden sind.

Lesen und modifizieren des Deye:
Zusätzlich können mit dem RS485 Modul Werte des Wechselrichters in hoher Frequenz gelesen und zudem auch modifiert werden.
Dies würde die wöchentlichen Balancen auch ermöglichen, ohne ein JK-BMS zu verwenden.
Dazu müsste man aber Automationen in Home Assistant hinzufügen, welche dann die erlaubten Ladeampere auf 0 begrenzen wenn 90% erreicht sind.
In meinem Falle macht dies der Controller selbst.
Zusätzlich ist es möglich einen weiteren NTC Temperatur Sensor zu verbauen (Platine ist dafür vorbereitet). Dieser war ursprünglich dazu gedacht die Kabeltemperatur zu messen, und bei Grenzwerten die Leistung zu reduzieren.
Jedoch hat sich herausgestellt das das BMS selbst etwas wärmer als das Kabel wird. Somit reicht es die Leistung beim überschreiten der BMS Temperatur zu reduzieren.
Somit könnte man den zusätzlichen Sensor auch zum messen der Raumtemperatur verwenden.
Möglicherweise könnte daraus ein Sicherheitsfeature werden wenn die Raumtemperatur aufgrund eines Brandes sprunghaft ansteigt.

Empfohlene Werte:
Nach wochenlangen Tests empfehle ich für 16 Zellen die Ladespannung auf 55.3V (3.456 V/Zelle) zu stellen. Dies ist nötig, um die überhaupt einen Drift der Zellen feststellen zu können.
Die "Start Balance Volt.(V)" im BMS sollte auf 3.45V gestellt werden. Somit wird überhaupt nur gebalanced, wenn die Batterie schon nahezu 100% geladen ist.
Unnötiges balancen bei Spannungen, die darunter stattfinden aufgrund von unterschiedlichen internen Widerständen der Batterie oder Verkabelungen, werden somit vermieden.
Die "Balance Trig. Volt.(V)" kann man auf den minimal Wert 0.003 V stellen. Denn der Controller beendet das Balancen schon, wenn über 1 Minute lang das Delta ≦ 0.005 V ist.
Dies ist nützlich um dauerhaft zu balancen und nicht immer nur zu warten bis eine Zelle mal wieder über 0.005 V ist.
Zudem muss die höchste Zelle über der "Start Balance Volt.(V)" sein und der Ladestrom unterhalb von 2A.
Dann entscheidet der Controller das die Zellen ausreichend gebalanced sind und führt das nächste Balancen erst wieder nach Tagen (einstellbar) aus.

Platine:
Ich habe ein paar Testplatinen herstellen lassen um alle Komponenten vernünftig zu verbinden so das nur ein 4 pin Stecker zum BMS und ein LAN Kabel zum Deye führt.
Eine zusätzliche Stromversorgung ist nicht notwendig, der Controller wird vom BMS mittels 60V/5V DC/DC Wandler versorgt.
Verwendet wird ein Wemos Esp32 S2 Mini. Denn dieser hat einen geringeren Stromverbrauch als ein Standard Esp32 Dev01 Bord.
Jedoch kann die Software auch mit einem normalen Esp32 Dev01 verwendet werden. Nur die Pins müssten umkonfiguriert werden.
Die Platine ist nicht zwingend notwendig und man könnte es auch selbst auf einer Lochrasterplatine nachlöten.
Jedoch könnte ich fertige Sets inklusive Platine und allen Komponenten bei entsprechender Nachfrage anbieten.

Ich werde die Sourcen bald auf Github veröffentlichen.
Lasst mich bitte wissen was Ihr zum Projekt denkt und ob Interesse an einer Kleinserie besteht.

 

Hier ein Video vom Top-Balancing nach 5 Tagen täglichen laden bis nur 90% und entladen bis 30%.

Top Balancing wird beendet wenn für länger als 1 Minute folgende 3 Bedingungen zutreffen.

- max Zelle > 3.45V
- Ladestrom kleiner 2A
- Delta der Zellen nicht grösser als 0.005

Danach wird wieder für mehrere Tage nur bis 90% (einstellbar) geladen.


   
oneerase reacted
Zitat
(@linuxdep)
Heroischer Stromgenerator
Beigetreten: Vor 2 Jahren
Beiträge: 2241
 

Sicher ein interessantes Projekt für die JK-BMS Besitzer, wegen der fehlenden CAN Verbindung habe ich mich damals für das Seplos entschieden... aber so wird das JK-BMS interessant für HA Nutzer. Ich habe jetzt zusätzlich zum Seplos auch noch einen BSC in Planung...

Könnte dein Projekt auch mehr als ein BMS einbinden?

Victron MPPT Rechner
Leitungsrechner by polz
SolarRechner HTW-Berlin
Akkutester A40L zu verleihen
Anleitung Deye 12k Einrichtung mit Bildern


   
AntwortZitat
(@ackmaniac)
Vorsichtiger Stromfühler
Beigetreten: Vor 4 Monaten
Beiträge: 31
Themenstarter  

Nein, kann es aktuell nicht. Habe auch nicht unbedingt vor das einzubinden, da ich dafür eine weitere UART Verbindung aufbauen müsste. Das wäre allerdings mit dem ESP32 Dev01 möglich, da dieser einen weiteren hat. Man müsste sich dann aber erst neue Routinen einfallen lassen. Ich selbst habe den Anwendungsfall nicht, weswegen es schwierig werden würde, das Verhalten zu verifizieren. Ich schaue mir die Systeme gern längere Zeit an und optimiere, was mir noch nicht gefällt.

Meine Empfehlung wäre sowieso eine andere. Verbaut habe ich eine 16S2P Batterie (32 Zellen) mit EVE 280Ah Zellen. Diese lade ich dauerhaft nur mit 120A da Sie durchaus warm werden durch das Laden. Wenn ich mir vorstelle, dass ich nur eine 16S1P Batterie (16 Zellen) hätte, müsste nach der Theorie die Verlustleistung (Temperaturerhöhung) 4-mal höher sein.
Ich denke nicht, dass die Batterien das auf Dauer besonders mögen. EVE gibt an, dass bei 45Grad die Batterie nur 4000 Zyklen statt 6000 Zyklen hat. Diese Temperatur erreichen wir zwar nicht, aber dennoch denke ich, dass für die Haltbarkeit eine erhöhte Temperatur nicht förderlich ist.

Entladen tut man sowieso selten dauerhaft mit 200A. Kurze spitzen sind daher nicht sonderlich schlimm.

Aber lange Rede, kurzer Sinn.

Wenn einem die Entladeleistung von 200A (10,5 kW) ausreicht, dann ist das BMS Theoretisch ausreichend für eine 16S3P (48 Zellen) Batterie, die ich persönlich dauerhaft mit 180A laden würde. Das BMS würde dabei recht warm werden, weswegen man darüber nachdenken könnte 2 Lüfter an das BMS zu verbauen (oben und unten). Diese Lüfter könnte man über den Controller bei Bedarf aktivieren.

Somit hätte man nur eine Batteriebank mit knapp 45 kWh Kapazität. Die Komplexität und Kosten bleiben somit gering bei optimierter thermischer Zyklen Festigkeit.

Die Kosten für die Batterie würden sich auch auf etwa 5000 Euro begrenzen und man könnte es simpel anschließen.

Erst, wenn man mehr Leistung oder Kapazität benötigt, würde ich über mehrere Batterien mit zusätzlichen BMS nachdenken.

Aber das ist nur meine Meinung. Sicherlich sind die mehreren Batterien auch bei vielen aus der Historie heraus entstanden.


   
AntwortZitat
(@fast23)
Newbie
Beigetreten: Vor 2 Wochen
Beiträge: 1
 

Genau sowas suche ich nur für JBD BMS. Habe da auf GitHub auch schon den ein oder anderen "Schnipsel" gefunden. Aber bin echt blutiger Anfänger, was ESP32 angeht...


   
AntwortZitat
Teilen: