Benachrichtigungen
Alles löschen

Projektvorstellung: MITPylon (Man in the Pylon)

17 Beiträge
5 Benutzer
0 Reactions
133 Ansichten
(@eugenius)
Autarkiekönig
Beigetreten: Vor 2 Jahren
Beiträge: 657
Themenstarter  

Hallo zusammen,

einige haben es schon gesehen: https://github.com/Adminius/mitpylon

Die Idee da hinter:

ein ESP32 Microcontroller mit 2x CAN Busen, an einen steckt man eine Batterie die Pylontechisch spricht, den andern CAN verbindet mit dem Wechselrichter.

Ziel: ESP32 gilt als "Man in the middle" und modifiziert bestimmte Parameter im Protokoll um die Batterie/den WR besser/einfacher zu steuern.

Beispielhafte Anwendungsfälle:

  • Charge Voltage wird um 0.x Volt erhöht, um die Verluste in der Leitung bzw. ungenaue Messungen des WRs zu kompensieren.
  • Charge Current wird verkleinern or gar auf 0A gesetzt, um z.B. über SmartHome die Ladung zu stoppen oder auf die Mittagszeit zu verlegen
  • Allgemein die Werte aus BMS auslesen und im Smarthome nutzen
  • 100% SoC an den WR erst angeben, wenn Float Voltage erreicht wird, bis dahin wird max. 99% gesendet. Manche WRs laden nicht mehr sobald 100% gemeldet werden, JK BMS lädt bei 100% aber noch fleißig weiter
  • Dem WR "charge request" senden, um z.B. bei niedrigen Strompreisen Akku aus dem Netz laden
  • Dem WR "charging disabled" senden, um z.B. bei niedrigen Strompreisen Akku nicht nutzen, und die Energie im Akku für teure Zeiten lassen.
  • ...

Das Ganze funktioniert bei mir wie die Schweizer Uhr, nur hat mir bis jetzt richtige Hardware gefehlt.

Deswegen habe ich angefangen eine Platine zu entwerfen:

Die Platine ist eher als Grundtträger für käufliche Module (z.B. bei Aliexpress) gedacht. Einige Sachen kann man direkt als SMD drauf löten.

Bis zu 4x RJ45 Ports ( https://www.aliexpress.com/item/32774556179.html):

2x sind für CAN ( https://www.aliexpress.com/item/1005005334841319.html)

und

2x sind für RS485 gedacht ( https://www.aliexpress.com/item/1005006160733111.html)

Wobei die CAN Ports können per Lötbrücken um RS485 ergänzt werden (Um z.B. Deye BMS Port mit nur einem Kabel auslesen zu können). 

Statt RJ45 können Schraubklemmen verwendet werden.

 

Es wird ESP32 C6 super mini verwendet, wobei auch ESP32 S3 super mini oder C3 super mini auch passen würden ( https://www.aliexpress.com/item/1005006406538478.html)

ESP32 C6 hat 2x CAN Controller on Board, es müssen nur CAN-Transceiver genutzt werden (fertige Module oder SMD) 

Es kann mit MCP2515 noch ein CAN per SPI geschaffen werden (also bis zu 3x insgesamt), das geht nur mit SMD löten.

ESP32 S3 hat nur 1x CAN On Board, somit geht nur ein 1x wenn man Modul nutzt, oder 2x wenn man SMD lötet

ESP32 C3 hat Pin bedingt 1x CAN und 2x RS485 und als SMD Option noch einen CAN via SPI

Die Platine ist 40x80mm groß, wird per USB-C über mit Strom versorgt. Man müsste noch ein Gehäuse mit 3D Drucker drucken.

 

Die Platine ist möglichst generisch gehalten. D.h. man kann diese auch für andere Projekte nutzen:

  • nur Batterie per CAN oder RS485 auslesen
  • Batterie per RS485 auslesen und als CAN an WR weitergeben (z.B. alten JK-BMS Inverter fähig machen)
  • Wechselrichter über RS485 auslesen
  • Stromzähler auslesen und dem WR andere Werte vorgaukeln (mein nächstes Projekt)

Ich werde dann die Platine als Open Source zur Verfügung stellen.

Was sagt Ihr? Alle mögliche Tipps, vor allem zur PCB-Routing sind willkommen.


   
Zitat
(@holle75)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 71
 

Um einen Gruss und Dank dazulassen .... großartiger Ansatz/Einsatz!

Sobald die Teile da sind (wobei es ja gerade deutlich vorwärts/anders wird), teste ich mit ...


   
AntwortZitat
(@g1cs2009)
Batterielecker
Beigetreten: Vor 7 Monaten
Beiträge: 238
 

Kurze Verständnisfrage für einen der Victron nutzen will aber noch nicht mit gearbeitet hat.

Ich möchte später mit Cerbo GX, zwei MP2 5000, PI4 Home Assistant arbeiten. Am Anfang zwei mal 16S1P LF280k EVE mit jeweils eigenem Inverter BMS, später gesamt 4.

Also könnte ich dein Projekt auch verwenden um die Daten der BMS für den HA aufzubereiten, um alles über diesen zu steuern. Ich weiß nur noch nicht ob ich per HA , welcher die 0 Einspeisung über einen Acrel Dtsd1352 steuert, die Ladezustände der MP2 steuere oder ob diese dann direkte BMS Daten benötigen. Diese können dann ja von deinem Projekt kommen


   
AntwortZitat
(@eugenius)
Autarkiekönig
Beigetreten: Vor 2 Jahren
Beiträge: 657
Themenstarter  

Veröffentlicht von: @g1cs2009

Also könnte ich dein Projekt auch verwenden um die Daten der BMS für den HA aufzubereiten

Dafür nutze ich ja diese Projekt. Um die BMS Daten "aufzubereiten" nach meinem Geschmack und so den WR zu steuern.
Für Victron müsste man evtl. einige Anpassungen an Software vornehmen und für Victron braucht man einen "speziellen" Kabel (wie auch für die direkt Verbindung mit allen BMSen) da die Pins anders belegt sind.

 

Was ich aber nicht gerne in deinem Projekt sehe ist die Null-Einspeisung durch HA. HA kann ausfallen, kann Updates machen und schon ist die Steuerung nicht da...

Das selbe gilt natürlich auf für ESP32 Kontroller, sobald man Update macht gibt es keine Regelung mehr.

Cerbo GX soll doch 0-Einspeisung können, oder? (ich bin kein richtiger Victron kenner)

 

Man muss mein Projekt in 2 Teile aufteilen: Software und Hardware
Hardware soll möglichst Flexibel sein

Software kann jeder anpassen wie er will oder sogar eigene schreiben


   
AntwortZitat
(@janvi)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 132
 

Hier Follow Up aus dem JK-inverter Thread.

Bitte stell das Schaltbild auf deinem Github Account ein. Sonst kann man zum Layout und auch zum Design gar nichts sagen. Falls Kicad gerne auch das gesamte Projekt.

Tipp: Man könnte sich auch mal nach einem Demoboards mit 2Can + seriell umschauen, so daß man damit sofort starten könnte. Allerdings bin ich eher auf STM32 anstelle ESP32 unterwegs. Das schenkt sich aber nichts. Die Beschreibung des Victron BMS Protokoll gibts hier: https://www.victronenergy.com/upload/documents/VE.Can-registers-public.pdf

Als Hintergrundinformation zum VE-CAN muss man wissen, daß bei NMEA eine Zertifizierung von (kommerziellen) Produkten erforderlich ist um NMEA drauf schreiben zu dürfen. Jedesmal wenn sich am Funktionsumfang etwas ändert, muß das Produkt neu zertifiziert werden um die Kompabilität mit anderen Herstellern sicher zu stellen. Das umgeht Victron dadurch, daß sie für die Batterie Infos keine offizielle Parameter Group Number (PGN) sondern eine für den Hersteller reservierte PGN nehmen. Dortselbst verpacken sie dann ihre ganzen Informationen. Diese dürfen sich dann auch ohne neue Produktzertifizierung ändern, sind aber nicht unbedingt mit anderen Herstellern kompatibel. Diese fangen dann nur was damit an, wenn sie bei Victron nachlesen. Deshalb hat Victron das obenstehende VREGS (=Victron Register) veröffentlich. Trotzdem sind aber die gesamten Vorteile eines kompletten Protokollstacks einschliesslich Autokonfiguration bei VE-CAN nutzbar.

Darüber hinaus habe ich an Pylontech US5000 zuletzt versucht die RS485 mit Fhem auszulesen. Je nach Modell funktioniert das nur bei einer Größe von 8-12 Batterien. Wenn der CAN Bus mit dem LV Hub kommuniziert funktioniert die RS485 gar nicht mehr bzw. werden hier irgendwelche undokumentierten Befehle ausgetauscht um die mangelhafte CAN Kommunikation zwischen mehreren Mastern zu flicken. Es ist also fast egal, ob dein Board CAN oder RS485 als Eingang hat weil das CAN mit dem 500kbit Protokoll auch nicht als Bus arbeiten kann. Bei RS485 kriegt man sogar mehr Informationen.

 

@g1cs2009 Zur Nulleinspeisung musst du bei Victron den ESS Assistenten installieren. Damit kannst du einen Grid-Setpoint einstellen. In deinem Fall Null Watt. Der ESS Assistent geht dann immer von einer vollen Batterie aus. D.h. er lädet zunächst bis 100% SOC. Was dann übrig bleibt, packt er auf den Grid Setpoint drauf. Wenn weniger da ist, wird die Batterie entladen. Wenn du jetzt zusätzlich etwas haben möchtest (z. Bsp. den Grid Setpoint abhängig von der Wettervorhersage ändern oder einen speziellen SOC ausregeln) dann musst du das selbst noch von extern her draufpacken

 

Diese r Beitrag wurde geändert Vor 2 Wochen von Janvi

   
AntwortZitat
(@eugenius)
Autarkiekönig
Beigetreten: Vor 2 Jahren
Beiträge: 657
Themenstarter  

Veröffentlicht von: @janvi

Demoboards mit 2Can

Nichts bezahlbares und massentaugliches gefunden.

Mit Aliexpress Teilen und sogar wenn man die Boards selbst fertigen lässt (zulätzt ca. 5$ inklusiv versant für PCB aus China bezahlt) ist man bei ca 20-25 Euro und max. 1h Löten...

 

Veröffentlicht von: @janvi

Bitte stell das Schaltbild auf deinem Github Account ein.

Good point 😀

 

 


   
AntwortZitat
(@g1cs2009)
Batterielecker
Beigetreten: Vor 7 Monaten
Beiträge: 238
 

@eugenius Sämtliche Datenkabel konfektionieren ich mir eh schon seit längerem aus Cat5e Meterware selber. Daher mache ich mir die Victron nach Pinout fertig.

Ich nutze HA da ich keine Lust habe schon wieder ein anderes Smart Meter zu kaufen und einzubauen. Das Acrel ist jetzt gerade erst für mich sauber Auslesbar. Angeblich soll das Dtsd 1352 C laut Verkäufer mit Growatt Plug und Play zusammen arbeiten. Denkste, mein Growatt MIC bekommt keine Daten. Grundsätzlich wird HA kein Update bekommen und eh hinter einer Firewall sitzen. Ich brauche keinen Außenzugriff. Wenn es denn neue Funktionen geben sollte, die mich reizen, dann kann das System entweder abgeschaltet und Netzstrom genutzt werden, oder ich habe die Insel schon aktiv, dann braucht der HA gar nicht mehr den Export kontrollieren, weil kein Netz mehr vorhanden ist und die MP2 die Leistung nach Bedarf zur Verfügung stellen.

Lieber nehme ich die 150€ für ein Victron EM24 und stecke das in andere, wichtige Projekte, wie eine Notfall-Entgasungsanlage


   
AntwortZitat
(@eugenius)
Autarkiekönig
Beigetreten: Vor 2 Jahren
Beiträge: 657
Themenstarter  

Ich nehme an, fertiges Gehäuse wo man nur ein paar Ausschnitte für die Ports machen muss ist einfacher als 3D Druck, gell?

https://www.aliexpress.com/item/1005005650188094.html

3D Model muss man auch noch erstellen (auch da bin ich gar kein Profi)

 


   
AntwortZitat
(@eugenius)
Autarkiekönig
Beigetreten: Vor 2 Jahren
Beiträge: 657
Themenstarter  

@g1cs2009 ehrlich gesagt verstehe ich immer noch nicht was du brauchst/willst, aber das ist hier am Thema sowieso vorbei...
Kannst gerne ein neues aufmachen dann wirst du auch von Victron Experten unter die Arme genommen 😉


   
AntwortZitat
(@janvi)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 132
 

Veröffentlicht von: @eugenius

Veröffentlicht von: @janvi

Demoboards mit 2Can

Nichts bezahlbares und massentaugliches gefunden.

Bitte stell das Schaltbild auf deinem Github Account ein.

Habe hier zum Beispiel dieses Board rumliegen. Hat jetzt zwar kein WLAN oder BT, aber immerhin Ethernet wo man MQTT, einen Webserver oder Modbus-TCP machen könnte. Neben den 2 obligatorischen CAN Schnittstellen hat es zusätzlich noch USB und gleich 8 serielle Schnittstellen. Als Cortex-M7 fast etwas zu groß. Man könnte auch einen Cortex-M4 nehmen. Den hat Pylontech übrigens auch auf ihrem BMS drauf. Allerdings nicht von STM sondern von Nation-Tech, einer chinesichen Chipschmiede die bei STM kopiert.

Anonsten ist das Nucleo Board natürlich nicht der Wunsch für ein Produkt. Um die CANs zu nutzen, musst du dann auch deine Treiber noch extern anstöpseln. Da kann man dann ja notfalls auf käufliche Module zurückgreifen. Sinn dieses Boards ist, sofort mit der Software Entwicklung anfangen zu können. Eine USB Schnittstelle mit Debug Interface ist übrigens auch dabei. Selbst verwende ich aber denSegger Jlink welchen es auch für 20 Euro als China Kopie gibt.

Bis die SW dann mal läuft kann man parallel im Team an einem eigenen Layout arbeiten. Da würde ich dann aber keine Module mehr nehmen. Dafür gibt es keine second source und wenn sich was ändert oder das Modul nicht mehr verfügbar ist fängt man wieder neu an. Auf Komponentenebene ist das Risiko kleiner und der Bestückvorgang geht in einem Aufwasch im Automaten. 

Kommerziell hat so eine Hardware vermutlich kaum irgendwelche Chancen. Denn wenn die SW mal FOSS ist, werden die Chinesen das kopieren und in ihre eigenen BMS reinladen. Dann ist die HW schlichtweg überflüssig. Der Zeitpunkt ist natürlich noch nicht abzusehen und warten wird man darauf nicht können weil da momentan noch gar niemand dran denkt.

Von der CiA gibts übrigens auch einen Vorschlag für Heim-DC Netze mit Batterien, Erzeugern, Verbrauchern und gleich noch eines für netzgebundene PV WR. CanOpen ist in der Industrie stark verbreitet. Die PGNs heissen dort PDO (Prozess-Daten-Objekte) und SDO (Service-Daten-Objekte). Wie an jedem ordentlichen Protokoll gibt es auch Mechanismen zur Datensegmentierung und Autokonfiguration. Die sind hier aber optional. Ob sich das gegenüber dem bei Victron vom Bootsbereich bereits etablierten NMEA durchsetzt ist natürlich momentan auch ziemlich fraglich. Gute Konzepte gibt es damit allemal aber von den BMS und WR Herstellern nutzt sie kaum jemand.

 

 


   
AntwortZitat
Carolus
(@carolus)
Famous Member Admin
Beigetreten: Vor 3 Jahren
Beiträge: 8242
 

Veröffentlicht von: @eugenius

Was sagt Ihr? Alle mögliche Tipps, vor allem zur PCB-Routing sind willkommen.

Target. Gibt's dauerhaft kostenlos mit Grössenbeschrankung.

Aisler für Platinen.

 

Ich bin kein Amateur, aber ich lerne trotzdem noch.
Bürokratie schafft man nicht durch neue Regeln oder Gesetze ab.


   
AntwortZitat
(@janvi)
Vorsichtiger Stromfühler
Beigetreten: Vor 2 Jahren
Beiträge: 132
 

Ich glaube er hat Kicad. Gibts dauerhaft kostenlos ohne Größenbeschränkung. Läuft im Gegensatz zu Target nicht nur unter Windows sondern auch auf Linux und die Friedrichs habens damit sicher nicht einfach zum überleben. Für FOSS Projekte eben wegen FOSS die erste Wahl. Die Frage war wohl eher zum Design selbst anstelle der  Tools

Diese r Beitrag wurde geändert Vor 2 Wochen 2 mal von Janvi

   
AntwortZitat
(@eugenius)
Autarkiekönig
Beigetreten: Vor 2 Jahren
Beiträge: 657
Themenstarter  

Ich nutze Autodesk Eagle, das Teil ist auch bis zu einer gewissen Größe (früher waren es mal 10x10cm und 2-lagig) kostenlos.

Mit KiCad konnte ich mich nicht anfreunden, evtl. weil ich die PCB-Routing viel zu selten brauche und für die Einarbeitung dann meistens kein Bock mehr habe.

Mir geht es also nicht um die SW, sondern ob die Traces gut durchlaufen usw...

Fertigen tue ich seit 8 Jahren bei Elecrow und war nie enttäuscht.

 

@Jarvi : ich glaube wir haben unterschiedliche Vorstellungen wie das Projekt aussehen soll 😉

Ich bin selbst Fan von STM32 und habe vor einiger Zeit sogar beim STM32 Arduino Core mitgewirkt.

Aktuell habe ich aber nicht so viel Zeit von 0 zu beginnen, deswegen nutze ich einfache Sachen.

Das ist nun mal ESPHome (in meinem Fall sogar als Teil von Home Assistant, läuft aber auch unabhängig von HA). Viele Beispiele rund um JK BMS und Wechselrichter Protokolle gibt es dafür schon, also musste ich das Rad nicht neu erfinden sondern nur anpassen.

Und auch für den User ist sehr einfach, keine Programmierumgebung oder sonstigen Kram ist nötig.

Vorteil von ESP32: günstig, überall verfügbar, hat bis zu 3 UARTs, und bis zu 2x CANs, und auch noch Dual Core je nach Variante und WLAN noch dazu. Da kann STM32 nur ganz schlecht mithalten. So richtig verbreiten sind nur die "Blue-Pils" mit F103 und die sind nun mal nicht so mächtig.

Bzgl. PCB: ich war vor 5-8 Jahren sehr aktiv und habe viele Platinen als OpenSource Projekte produziert, selbst bestückt, getestet, verpackt, versendet. usw. Das hat mich richtig viel Geld gekostet, Teile liegen immer noch Zuhause "auf Lager" und Support musste man auch leisten. Dabei noch beachten, dass man nicht zu einem Unternehmen mutiert und beim mir auf dem Hof Waschmaschinen zur Entsorgung abgelagert werden. Sulky  

Ich habe eigentlich nicht mal vor die nagten PCBs zu versenden, dass kann gerne Community übernehmen. Aber soweit sind wir noch nicht.

 

Jetzt sind zwar viele China-Bestückter vorhanden, günstig sind die aber kleinen Serien auch nicht. Deswegen auch die Idee: fertige Module nehmen, mit einem groben Lötkolben Pins zusammenlöten -> läuft. Danach kann man immer noch besser machen, Freiwillige vor! Falls die Chinesen es klauen und günstig produzieren -> Ziel erreicht Pray  

Die ein paar SMD Teile sind wirklich optional uns sind eher für mich selbst gemacht.

Falls jemand daraus ein besseres (kommerzielles) Produkt machen will/kann -> nur zu Pray  

 


   
AntwortZitat
(@g1cs2009)
Batterielecker
Beigetreten: Vor 7 Monaten
Beiträge: 238
 

Veröffentlicht von: @eugenius

@g1cs2009 ehrlich gesagt verstehe ich immer noch nicht was du brauchst/willst, aber das ist hier am Thema sowieso vorbei...
Kannst gerne ein neues aufmachen dann wirst du auch von Victron Experten unter die Arme genommen 😉

 

Verstehe jetzt nicht warum das am Thema vorbei sein soll, wenn ich Frage ob dein Projekt geeignet ist die Daten von 4 JK Inverter BMS aufzubereiten und einerseits das Victronsystem mit dem erforderlichen Daten zur Ladungssteuerung etc zu versorgen und andererseits den HA mit allen BMS Daten versorgt.

Die anderen Fragen habt Ihr gestellt, nicht ich.

Mir ging es darum, ob das Grundsätzlich von der Leistung deines Projektes geht. Aber OK, da das ja nicht das Thema hier sein soll, gehe ich halt nen anderen Weg mit den JK BMS Daten.

 

Viel Erfolg mit dem Projekt 

 


   
AntwortZitat
(@eugenius)
Autarkiekönig
Beigetreten: Vor 2 Jahren
Beiträge: 657
Themenstarter  

Veröffentlicht von: @g1cs2009

die Daten von 4 JK Inverter BMS aufzubereiten und einerseits das Victronsystem mit dem erforderlichen Daten zur Ladungssteuerung etc zu versorgen und andererseits den HA mit allen BMS Daten versorgt.

Na Moment, davor hast du über die Nulleinspeisung und irgendein Zähler geschrieben. Jetzt geht es um 4x BMS und HA Daten.
Wenn es so einfach ist: Ja, kann man machen. 

Was davon und vor allem wie an Victron geht -> weiß ich nicht.

Ich plane weiterhin nur PYLON aus Ausgang zu unterstützen, also das was heute schon geht (Softwaremäßig).

Evtl. musst du dich hier umschauen: https://github.com/Sleeper85/esphome-jk-bms-can/tree/development

Der Hardware ist dann egal welche Software drauf läuft.


   
AntwortZitat
Seite 1 / 2
Teilen: