State of charge (SOC)
State of charge is the fraction of available charge [Ah] at any instant, relative to capacity—that is, the (current × time) that can be drawn until the battery is empty. Therefore, SOC varies between 0 (empty) and 1 (fully charged).
Since capacity depends on several parameters—mainly discharge rate—SOC is not an absolute value; it depends on discharge conditions.
SOC is not directly measurable. Battery voltage is an indicator but not always reliable, as it depends heavily on current, temperature, and battery age. In simple controllers, SOC cannot be used for control decisions; only voltage is relevant. In complex systems (such as those with BMS), SOC may be estimated from current history, but this is never absolute.
During the simulation, we have to evaluate the variations of SOC as a function of the charging or discharging currents or energies. The SOC evolution is evaluated for a specified period, according to the charge or discharge current (without losses):
\(SOCend = SOCbeg + (IBatttery[A] * DTime [h]) / Capacity [Ah]\).
During charging we have to take the Faradic efficiency EfficI into account:
\(SOCend = SOCbeg + (IBatttery[A] * EfficI * DTime [h]) / Capacity [Ah]\).
For the energies, not only the capacity variability, but also the voltage affects the balances. The stored/restored energy is calculated as:
\(ESOCbalance [Wh] = (SOCend - SOCbeg) * Capacity [Ah] * VBattery [V]\)
where the VBattery includes a voltage drop across the internal resistance, depending on the current.