I use an ESS system consisting of 3x Multiplus-II, two solar chargers, Cerbo GX and a CAN-connected smart battery (BYD LVS 8.0). My question: Is there a way to disable the 3% hysteresis above minimum SOC? When the load is higher than power coming from the solar chargers, the battery is discharged until minimum SOC is reached. As expected, the ESS switches to ESS #1 mode to prevent further discharging of the battery. But instead of staying at minimum SOC and using grid power to substitute the missing power from the battery, the inverter is turned off completely and all power coming from the solar chargers are used to charge the battery until minimum SOC plus 3% is reached.
After that the inverter is turned on again and the battery is discharged again until minimum SOC is reached again, which can be a matter of a few minutes when the load is much higher than the power generated by the solar chargers. This loop continues forever until either the load is reduced or the solar charges produce more power than needed by the current load.
So to summarize: Everything would be fine when the battery just stays at minimum SOC and is not being recharged to minimum SOC + 3%. Is there a way to change this? I totally agree to recharge the battery if its SOC drops below minimum SOC but as long as it stays exactly at minimum SOC level, the solar charges should just leave the battery alone.
It has been discussed on various topics before.
Same reason a hysteresis is always used, it prevents the system from bouncing between grid charging, blocking discharge states etc when on min SOC. PV can vary, so you want a small buffer to allow soc to drop a bit before triggering all the ESS mechanisms, whether that be charging from grid or discharging from battery.
It is documented in the manual iirc.
It shouldn’t be a problem on an adequately sized system.
With bad solar the gaps between cycles should be longish.
The only scenario I can see being a problem is when there is reasonable solar, a smallish battery and loads that are large, that allows the system to hit +3% quickly and then drains it as fast. That isn’t typical though.
This seems to be my case. The load is so high, that discharging the battery from minSoc+3% to minSoc takes only 2-3 minutes. Charging is a bit slower but also around 3-5 minutes. I guess I have to live with that.
You could force the ESS inverter limit lower during this time, which would use more grid but slow the battery discharge.
That is something you could schedule with nodered as well.
I’ll think about that. Currently it is just a little annoyance. The only thing to think about in the long run is the amount of (unnecessary) high load/stress on the battery and also the stress forced upon the grid. But it can probably cope with that.
I chose to write a Python script to continually modify the Maximum Inverter Power to be set to 0.90 * available PV power once per second. This has the effect of charging the battery in a monotonically increasing way through the day, rather than sawtoothing or draining back to Min SoC if clouds show up or loads exceed PV. This is only useful if you don’t mind prioritizing grid over stored battery power.
Thanks for the tipp @ricardocello ! This morning I thought about tapping into the CAN messages coming from the battery. I was thinking about introducing a virtual minSoc value which sets the DCL (discharge current limit) to 0 every time the battery soc <= virtual minSoc (e.g. 5%). The real minSoc stays at a value much lower than that, e.g. 0%.
It might be overkill, but this could actually work for my situation.
I have seen this with my system, but I have multiple ESS and lots of solar, so only once were all mine at or near 0%. I run mine to low voltage cutoff, which means it needs to return to a higher voltage before inverting.
I think if I use Node-RED to change the battery state to keep my battery charged and adjust the DVCC current to the MPPT current, a tiny bit will come from the grid, and the rest of the solar would go to charge the battery. You would just need to set a limit on the SOC to resume normal ESS operation.
Here you go. I dont have a live system to test this on but what it does is simple. When you hit min soc currently 5% it will set the battery to keep the battery charged and adjust the DVCC to the MPPT current. What this will do is charge the battery from solar up to 21% then change back to optimised without battery life and set the charger to 70. You can tweak the values in the functions, there are notes there for ea line of code. You can also adjust the outputs for different settings if you want to change something else.
The flow code is in the text file.
I was thinking about doing something like this because I have 3 systems and often 1 will go to 0% and then charge and discharge when its very low but I don’t need that because I have 2 more to take up the house loads.