Wer moechte wissen, wie man bms-daten aendert, die einspeisung steuert oder system koppelt?

hallo,

inzwischen gibt es ja neue funktionen im cerbo, insbesondere auch in node-red, mit der man neue moeglichkeiten hat, das system zu steuern.

wenn interesse besteht, werde ich einmal versuchen, diese moeglichkeiten, mit beispielprogrammen zu zeigen. dazu gehoeren folgende moeglichkeiten:

  • steuerung mit einem virtuellen bms, so dass man parameter modifizieren kann, um das ladeende zu verzoegern oder die dc-ueberschusseinspeisung zu steuern. auch der ladestrom kann so frei geregelt werden, ohne dass die einstellung jedesmal auf dem flash-speicher geschrieben wird
  • steuerung der mppt-laderegler auch ohne bms oder multi im system
  • energieuebertragung zwischen systemen mit und ohne ess in verschiedene richtungen
  • mehrere ess-systeme gekoppelt mit nur einem smartmeter mit virtuellem grid-meter (noch nicht ausprobiert)
  • ladespannungssteuerung abhaengig von akku-parametern wie min- und max-zellspannung wegen des balancers oder zum 100% sync
  • steuern des multis (nur ohne bms) ueber die bms-parameter fuer den multi zum laden
  • automatischer can-bus-reset bei problemen mit den can-bus-geraeten

es gibt bestimmt noch einige andere dinge, die inzwischen mit den virtuellen geraeten moeglich sind, die man ueber node-red einbinden kann. damit kann man auch das problem loesen, dass einige bms den maximalen ladestrom auf 0 setzen.

fuer die automatische ladespannungssteuerung, um den akku zu schonen, kann man auch den ccl nutzen, weil er informationen darueber liefert, ob der akku voll ist oder nicht!

ich bin jedenfalls inzwischen dabei, meine steuerungen auf diese neuen moeglichkeiten umzustellen, da das besser und einfacher funktioniert, als mit den alten varianten. auch eine abweichende ueberschusseinspeisung ist damit problemlos zu realisieren.

sagt mir mal, was ihr gerne machen wollt und stelle ein paar beispiele oder wenigstens informationen dazu hier ein.

tschuess

3 Likes

hi,

ich habe am multi 48 2 Akkus hängen die irgendwann “auseinanderlaufen”, hier bräuchte ich eine Steuerung die beide Akkus echt auf einer Linie hält und sich nicht am Durchschnittswert orientiert.

mfg, stocki

wenn Du eine Verbindung von den Akkus BMS zum MP II herstellst.. dann macht der das von alleine… wenn genügend Ladestrom und Lademenge zur Verfügung steht.

hallo,

ich denke mal, dass du den soc meinst. das kannst du leider nicht verhindern, denn das ist sache des bms. wenn du einen bmv/smartshunt hast, kannst du die einstellungen so anpassen, dass die weitestgehend synchron laufen. aber zu 100% wird das nie passen, da jeder akku etwas andere werte hat und sich deshalb auch die stroeme nicht 100% gleichmaessig verteilen.

man muss bei einer parallelschaltung nur darauf achten, dass kein akku ueberlastet wird, also lieber etwas mehr kapazitaet als noetig, als zu wenig!

und um ehrlich zu sein, mir ist der aufwand auch zu hoch, alles so einzustellen, dass der soc auch noch nach mehr als einer woche bei den akkus stimmt, wenn die so lange nicht voll geladen und synchronisiert werden. ich steuere das system naemlich vorzugsweise mit soc und spannung, da spielt das keine so grosse rolle, wenn der soc mal abweicht.

tschuess

Bitte entschuldigt, auf welche Themen ist der Beitrag hier begrenzt. Bei mir sind Studer VS 70 Ladegeräte it im System - das hat sich historisch aufgrund evtl. Verschattungssituation ergeben, weil diese eben mit Solar Edge Optimierern im IndOpt Betrieb zusammenarbeiten.

Die Studer hängen natürlich nicht mit am BMS sondern nur an der DC -Schiene und lassen sich per Signal Ein und Aus schalten.

Jetzt weiĂź ich nicht ob das dazu passen wĂĽrde, ggf. auch Lastmanagement.

D A N K E

hallo,

begrenzt ist der eigentlich nicht, aber wenn zuviele fremde themen mit behandelt werden, wird er extrem lang. eigentlich sollten hier nur fragen zur steuerung von victron-komponenten und dem zusammenspiel der komponenten kommen, bzw. was man mit node-red alles machen kann, um das system zu optimieren.

also z.B.: steuerung der dc-ueberschusseinspeisung, die normalerweise nicht steuerbar ist, zusammenarbeit mehrerer system zur stromversorgung oder erhoehung der leistung.

tschuess

@ holger

… eben nicht, sonst würde ich es ja nicht schreiben.

zBsp. wĂĽrde ich mir wĂĽnschen daĂź der Akku mit dem niedrigsten SOC mehr Strom als der andere bekommt, Victron nimmt aber beide Akkus als ein Akku und rechnet mit den Durchschnittswerten.

das hätte ich anders und zwar so daß beide Akkus ausgeglichen werden.

hallo,

es gibt KEINE moeglichkeit, dafuer zu sorgen, dass alle einzelnen akkus absolut gleichmaessig geladen und entladen werden. selbst wenn all anschlusswiderstaende absolut passen, gibt es da immer noch die chemische reaktion im akku und selbst bei 100% identischen akkus verursacht die unterschiede im strom. wenn es sich dann noch um unterschiedliche bauformen und unterschiedlich alte akkus, wirkt sich das ebenfalls aus!

der einzige weg, hier die stroeme anzugleichen, waere der, einen zusaetzlichen widerstand einzubauen, was aber zusaetzliche verluste bedeuten wuerde. leider kann man damit aber nur unterschiedliche innenwiderstaende kompensieren, aber nicht die unterschiede, die durch die chemische reaktion im akku entstehen.

du brauchst dir aber keine sorgen zu machen, der tatsaechliche soc des akkus wird sich nicht gross unterscheiden, da hier auch die spannung eine entscheidende rolle spielt.

bei gleichen akkukapazitaeten kann sich der strom da problemlos z.B. vom verhaeltnis 1:5 bis zu 5:1 veraendern, wobei das dann auch noch von leistungsaenderungen abhaengig ist.

ich habe das bei meinen akkus einige zeit beobachtet und dann beschlossen, dass es bedeutungslos ist, ob ein akku eine stunde vor oder nach dem anderen 99-100% soc erreicht, denn der unterschied zu diesem zeitpunkt duerfte maximal im bereich von 1-2% liegen! solange kein akku einen zu hohen ladestrom oder entladestrom abbekommt, hat das naemlich absolut keine bedeutung und den akku bis auf 0% zu entladen ist sowieso keine gute idee und ich versuche ihn meistens auch nur bis 99% zu laden und nur einmal in der woche bis 100% soc!

mach dir auch keine sorgen deshalb. ich hatte bei meinen 24V li-akkus auch schon am bms einen unterschied im soc von 100%, obwohl das bei parallel geschalteten akkus unmoeglich ist. genauso hat auch das bms schon mal 0% angezeigt und das bmv 90-100%. man kann bei dem akku zwar nicht von der spannung auf den soc schliessen, aber bei z.B. 3,3V ist der soc immer groesser als 0% und bei 3,1V ist er niemals 100%. dabei kann der soc bei 3,1 und 3,3V sehr wohl der gleiche sein, abhaengig davon, welche stroeme gerade fliessen oder vor kurzem geflossen sind. und glaub nicht, dass das 100A sein muessen, 10-20A reichen da auch schon, um nach kurzer zeit eine spannungsaenderung von 0,2V zu verursachen!

wenn du es ganz genau wissen willst, klemm bei jedem akku einen smartshunt 300 in die minus-leitung und stelle die identisch ein. wenn du dann unterschiedliche socs angezeigt bekommst, kannst du sicher sein, dass irgendetwas nicht stimmt oder die akkus unterschiedliche kennlinien haben, ansonsten sollten sie maximal ein paar % unterschied im soc haben!

tschuess

hi,

ich hätte da an so ein “Ober-BMS” gedacht daß über beiden sitzt und diese steuert, oder so ähnlich, Manko der jetzigen Victron Software ist, daß “falsche” Durchschnittswerte als real betrachtet werden, und das ist Unfug.

Ich hab mal paar Bilder von jetzt angehängt.

9

Jupp, das sind spannende Themen in der blauen Welt :wink:

Freue mich auf deinen spannenden Beispiele

Wenn du hier Anleitungen/Beispiele schreiben willst, dann bitte mit korrekter GroĂź-/Kleinschreibung und Umlauten.
Darauf habe ich dich schon mehrfach hingewiesen, aber du hat nie darauf reagiert, was ist dein Problem damit?

Es wĂĽrde das Lesen/Verstehen deiner Texte etwas einfacher machen.

2 Likes

hallo,

ganz einfach, dann brauche ich wesentlich laenger um die texte zu schreiben, da dann auch grossbuchstaben dort landen, wo sie nicht hinsollen und ich mache so schon genug tippfehler, die ich korrigieren muss!

und was die umlaute angeht, die machen mir meistens probleme, weil sie z.B. nicht richtig dargestellt werden oder ich sie nicht eingeben kann, da ich auf meinen browser nur ueber einen vnc-client zugreife. das mit den umlauten ist zwar besser geworden, so dass ich sie inzwischen in vielen programmen eingeben kann, aber es funktioniert nicht bei allen! und einmal mit und meistens ohne ist mir einfach zu aufwendig und fehleranfaellig!

das ist eben eines der probleme, die man hat, wenn man auf systemen mit unterschiedlich codierten zeichensaetzen arbeitet!

tschuess

hallo,

das ist ein node-red-flow, mit dem du die daten eines bms veraendern kannst. es wird ein neues bms erstellt, das die daten des original-can-bus-bms uebernimmt und anpasst, wue z.B. den entladestrom, da der vorgegebene strom sowieso nie entnommen werden kann, ohne dass alle sicherungen durchbrennen. ausserdem wird die ladespannung, abhaengig von verschiedenen parametern, reduziert, damit der akku nur mit einem so hohen strom geladen wird, dass er nachmittags gegen 16:00 voll ist. die parameter habe ich vorher mit einem anderen flow im globalen datenspeicher abgelegt.

die aenderung der maximalen ladespannung sorgt so dafuer, dass die ueberschusseinspeisung bereits morgends ab 10:00 beginnt, wenn die PV-leistung hoch genug ist! vorher hatte ich die ab einem bestimmten soc gestartet und dann anteilig hochgefahren. aber diese variante finde ich deutlich besser!

du kannst den flow natuerlich auch so abaendern, dass du die daten von mehreren bms zusammenfasst und darstellst.

man muss dann in den einstellungen nur noch das steuernde bms aendern.

auch ein bms, auf das du ueber das netzwerk zugriff hast und das du mit node-red auslesen kannst, kannst du so benutzen. oder ein bms, das an einen anderen cerbo angeschlossen ist!

tschuess

flows (4).zip (2,9 KB)

1 Like

hallo,

interessierst du dich fuer ein spezielles thema oder willst du die fragen hier nur beobachten?

man kann ein system natuerlich auch so steuern, dass es nur mit dem PV-ueberschuss eines anderen systems geladen wird, ohne dass man dafuer irgendwelche zusaetzlichen messungen braucht!

tschuess

Ginbet doch nimmst batterie aggregator dann sollte das kein problem sein habe ich gerade beim kollegen gemacht 2 akkus jeweils per can angeschlossen und als ein akku behandelt sind von 2 verschiedenen herstellern musste nur im rc.local file die batterie manuell setzen damit der zweite akku richtig erkannt wurde und die prozenz angabe wird jetzt gemittelt berechnet.

Das zwei verschiedene akkus von den prozent zahlen auseinander laufen ist auch normal da es immer drauf ankommt wie der eingebaute shunt im bms misst. Solange die spannungen fast gleich sind ist alles okay kleine abweichungen sind halt tolleranzen in den bauteilen.

1 Like

hallo,

dafuer musst du aber zusatzprogramme per ssh auf dem system installieren und damit rechnen, dass es nach einem firmwareupdate probleme gibt!

abgesehen davon, dass die dann auch noch richtig mit einem texteditor konfiguriert werden muessen und einige gerne mit dem log-file die daten-partition voll schreiben.

tschuess

hallo,

hier noch ein flow, mit dem man ganz einfach daten aus dem system im globalen speicher ablegen kann:

flows (5).zip (2,7 KB)

und mit diesem flow kann man parameter von einer mysql-datenbank einlesen, so dass man nicht jedes mal das programm aendern muss, wenn man einen parameterwert aendern will. die daten werden zylisch aktualisiert:

flows (6).zip (876 Bytes)

wenn keine datenbank vorhanden ist, die man benutzen kann, kann man die werte auch alle von einem node aus setzen, entweder direkt oder aus einer datei oder einem lokalen webserver einlesen. hier gibt es einige moeglichkeiten, damit man einstellungen aendern kann, ohne dabei gleich die steuerungsprogramme/flows neu starten zu muessen.

aber die bequemste methode ist nun mal eine datenbank, da node-red dort dann auch selbst daten speichern kann!

meine hauptinstanz von node-red laeuft auf einem odroid-m1 (wegen der moeglichkeit, eine m2-ssd einzubauen) und die bekommt ihre daten fast ausschliesslich aus der mysql-datenbank. dort laeuft dann auch gleich meine benutzeroberflaeche unter node-red, weil das ganze fuer einen cerbo doch zuviel gewesen waere, dort laufen nur die flows, die ich aus verschiedenen gruenden nicht auf dem m1-laufen lassen will, weil sie entweder sehr schnell reagieren muessen oder auf keinen fall gestoert werden duerfen, wenn es im netz probleme gibt!

zur steuerung von geraeten, wie einen e-heizkessel, benutze ich dann gerne shellys, da ich die so konfigurieren kann, dass sie bei ausfall der steuerung einfach abschalten! dadurch kann es mir also auch nicht passieren, dass mir der akku leergezogen wird oder das system in ueberlast geht.

leider wird node-red auch gelegentlich mal automatisch neu gestartet, so dass es wichtig ist, dass dann mit den zuvor auch ueber node-red eingestellten parametern weitergearbeitet wird.

die daten fuer die datenbank kommen entweder von einem eigenen programm und vedirect-geraeten (damals gab es noch kein venus-os) oder ueber mqtt vom venus-os. die scripte dafuer kann ich gerne hier hochladen.

tschuess

Eigentlich regeln das die Akkus selber .. ich habe 5 Stück parallel, auch unterschiedliche Typen…da jeder unetrschiedliche Spannung und entsprechenden Innenwiderstand hat.. regeln sie das selber. Jeder hat seinen eigenen Ladestrom…

und ganz oben… beim Balancieren .. da sind halt die Spannungen fast gleich. Denn an dieser Stelle findet der entsprechende Abgleich statt, damit der SOC halt gleich ist.

1 Like

Wie sag’s ich meinem Kind …..:wink: Beispiel:

2 Akkus,im ESS Entladetiefe auf 10% eingestellt, Akku1 hat 10%, Akku2 hat 20%, Victron macht daraus im Durchschnitt15% , bei Victron 10% ist Akku1 schon kurz vorm Abschalten, DAS ist das Problem!

Victron rechnet mit falschen Werten zum ESS obwohl die Spannungen BEIDER Akkus korrekt ĂĽbermittelt werden (min/max welche Zelle in welchem Akku)

hallo,

wenn du mehrere akkus zusammenfassen willst, probier es doch einmal mit dem bsc, ist zwar etwas bastelarbeit, aber passende platinen bekommt man komplett fertig zu kaufen.

oder bau alternativ einen smartshunt/bmv ein, der im minus zu allen akkus haengt, dann hast du eine wesentlich genauere messung!

abgesehen davon, ein unterschied beim soc von 10% duerfte wohl auf eine falsche soc-anzeige zurueckzufuehren sein. ich habe auch verschiedene akkus parallel haengen, genauso wie gleiche akkus und ich hatte auch bei den gleichen akkus schon eine differenz vom soc von mehr als 90%!

beim bms ist der soc eher geschaetzt, beim bmv/shunt wird der genau gemessen, wenn man die messung optimal konfiguriert hat. ich hatte auch schon abweichungen von 100% bei der soc-anzeige, wenn der laengere zeit nicht synchronisiert wurde.

leider ist das mit dem parallelschalten von akkus nicht so einfach zu berechnen. bei bleiakkus funktioniert das noch ganz gut, wegen des hoeheren innenwiderstandes, aber bei Li-akkus funktioniert es einfach nicht. selbst mit perfekt berechneten anschlusswiderstaenden fuer jeden akku, verteilen sich die stroeme nicht genau so, wie man es berechnet hat. erst wenn sich ein entsprechendes gleichgewicht eingestellt hat, kann es dann passen, aber jede kleine spannungsaenderung bringt dann wieder alles durcheinander.

wenn du willst kann ich dir gerne einen auszug aus meiner datenbank zur auswertung zur verfuegung stellen, damit du das nachvollziehen kannst.

tschuess