I have seen a couple questions about Coulomb Counting, but I have not found anything defining an "outside source" providing the current to the battery, this questions might be close, How to estimate Li Ion Battery SOC?.
I am wondering if what I am doing is possible in order to produce a simple SoC estimation of a lithium ion battery being charged by PV panels. The lithium ion battery is basically an energy storage system, maybe something like a Tesla power wall.
I am using the Coulomb Counting equation (Section 3.2.1 of the paper, https://www.hindawi.com/journals/isrn/2013/953792/). I have implemented the equation in the following way:
soc = soc[-1] + ((irradiance * self.solar_panel_size)/(pv_volt))/(c*60)*dt
irradiance: W/m^2 (changes between 0 and 1000 depending on time of day)
c: Amp-hours (
60is to convert Amp-hours into Amp-minutes)
I believe the typical size for a solar panel is about 1.635m^2 (https://us.sunpower.com/how-many-solar-panels-do-you-need-panel-size-and-output-factors). I also believe the voltage coming from the solar panel changes with the irradiance, but I am hoping maybe 5 volts would be a good number to use for
Things I am assuming:
- Not taking into account cycling, inefficiencies, temperature, different charge rates depending on SoC
- Assuming a linear charging rate
I am trying to use the equation for a battery with a rating of 8kWh and power rating of 2kW. The battery can be fully charged/discharged in 4 hours (I know a battery would never be charged "100%", or discharged to "0%", but for the sake of simplicity, I want to assume this is the case). I would think that at 1000 W/m^2 irradiance, based on my equation, the SoC would increase by 25% in 1 hour.
I think my main issue is the "PV portion" of my equation, right now it basically depends on the size and voltage of the PV panel, I am not sure if I can do it this way, or if there is a more "optimal" way.
If I can use the Coulomb Counting equation as I am using it, then I guess my question is, what values can I realistically use for
pv_volt to obtain a "realistic" SoC rate at every time interval?