Hi, thank you guys for the amazing open source project.
We are currently using OpenEMS to manage our battery and PV inverter using the controller
Our purpose is to keep grid consumption
>=0 W (reverse power to the grid is not allowed). In the experiment, this goal was achieved. However, we found that PV and battery inverter would compete for power generation.
Let’s say the office load is 1000 W, then PV would generate, for instance, 700 W and battery would generate 300 W. But the irradiance is enough for the PV to generate more than 1000 W. We do not want the battery to generate power while the PV is capable to generate it all by itself.
I have read the code and understand that these two controllers are indenpent from each other. The
xxx.balancing controller will control the battery inverter while reading the meter. The
xxx.selltogridlimit controller will control the PV inverter while reading the meter. Is there any method to meet our control purpose while ask the PV inverter to generate most of the power if it is capable of? Is there any other controllers that I am missing?
I am aware that OpenEMS is designed to be modularized. Different components (controllers, devices, etc) can be grouped to achive a specific function. But it seems there are sometimes when message passing between components is needed.
Let’s say we have only 2 battery inverters (no PV inverter) and we use 2
xxx.balancing controllers. Both controller would read the meter and control the output without knowing each other’s exsitance. If a 1000 W load is attached to the system, then both controller will read 1000 W grid meter power and set each battery inverter to generate 1000 W more power. This will generate 2000 W more power and the grid meter will read -1000 W and the controllers will try the balance again and again…
We are currently considering implement one single custom controller to control our 2 PV inverters and 1 battery inverter. I am not sure is this the best way so I want to hear from you guys.