BLOG /

Expert Insights

5 Reasons SoC Lookup Tables Can’t Support BESS

Here’s a breakdown of the five limitations of SoC lookup tables, why SoC lookup tables can’t support BESS environments, and two alternative methods to consider for generating SOC estimates.

In the battery energy storage system (BESS) industry, generating accurate State of Charge (SoC) estimates is essential to optimize performance, ensure safety, and maximize battery lifespan. However, the primary method for generating SoC estimates—using SoC lookup tables—is unreliable, inaccurate, and ultimately ill suited for dynamic BESS environments. 

Here’s a breakdown of the five limitations of SoC lookup tables, why SoC lookup tables can’t support BESS environments, and two alternative methods to consider for generating SOC estimates.

What are SoC lookup tables? 

SoC represents a battery’s remaining capacity relative to its maximum capacity. One common method to estimate SoC is using SoC lookup tables, pre-defined mappings that correlate the open circuit voltage (OCV) (i.e., the voltage across battery terminals with no current flow) to the SoC. 

This is a relatively straightforward method for determining SoC estimates, using either data provided in battery datasheets or data obtained through experimental measurements. 

5 limitations of SoC lookup tables

Despite their relative simplicity, SoC lookup tables are not the ideal method for determining SoC estimates in dynamic BESS environments. 

SoC lookup tables are often inaccurate, unreliable, and overly sensitive to internal resistance, temperature, and aging. Here’s why: 

  1. Flat regions in OCV-SoC curve

Many battery chemestries (especially lithium ion phosphate LiFePO4) exhibit flat regions in OCV-SoC curves (see figure below) that can dramatically degrade the accuracy of both your SoC estimates and your entire lookup table.

In this flat region, just a small change in OCV can result in large changes in SoC. This means even minor measurement errors can cause gross inaccuracies in SoC estimates. Estimating SoC based on OCV-SoC curve is particularly problematic as the flat region can amplify the impact of any inaccuracies in the lookup table. 

  1. The polarization effect

The polarization effect in batteries, characterized by the deviation of electrode potential from equilibrium due to electrochemical reactions, poses significant challenges for SoC estimation using lookup tables.

For instance, in the figure below, the OCV doesn’t snap back after a current pulse; instead, it takes a long time to relax. In this example, the voltage is still moving after 30 minutes of rest time, but it’s possible for relaxation time to last for hours. 

Unfortunately, SoC lookup tables based on OCV don’t account for this polarization effect. 

Suppose you measure a battery’s voltage right after a load and then use that measurement to estimate SoC. Unwittingly, you’re working with a voltage number that’s still settling—not the true OCV. This results in inaccurate estimates that can compromise your overall battery management strategy. 

Lookup tables based on OCV do not account for the battery's impedance effect, which can cause voltage change even when there is no current. As shown in the figure below, after a current pulse, the OCV doesn’t snap back—it takes a long time to relax. So, if you measure voltage right after a load and use it to estimate SoC, you’re working with a number that’s still settling, not the true OCV. Furthermore, the relaxation time can take hours of time. The picture below shows the voltage is still moving after 30 minutes of rest time.

  1. Temperature sensitivity

If you’re using SoC lookup tables to generate SoC estimates, it’s important to remember that the OCV-SoC relationship is temperature-dependent. 

In the figure below, it’s clear that the OCV-SoC curve shifts when temperature changes. For example, at 3.7V, the same OCV corresponds to different SoC values depending on the temperature. 

Many static SoC lookup tables, however, ignore this temperature dependency, resulting in significant errors in SoC estimates. 

  1. Battery aging and degradation

It’s well known that batteries age as their internal chemistry changes. Unfortunately, many BESS asset operators continue to use SoC lookup tables based on new batteries to generate SoC estimates for an aged battery, resulting in compounding errors over time. 

For example, the below figure compares the OCV-SoC curve for a cell at 100% State of Health (SoH) and and a cell at 90% SoH. At around 60% SoC, the aged cell’s curve shifts to the right, demonstrating how aging affects the OCV-SoC mapping—and ultimately compromises SoC estimates. 

  1. Limited scalability 

SoC lookup tables are often specific to a particular battery type or even a specific batch. This niche applicability is difficult to scale, making SoC lookup tables ill suited for diverse BESS deployments. 

To improve scalability, some BESS asset operators may attempt to apply a generic SoC lookup table to several different batteries. However, without specific configurations, an SoC lookup table is certain to generate significant errors in SoC estimates, leading to suboptimal battery management. 

Lookup tables are often specific to a particular battery type or even a specific batch. Using a generic lookup table for a different battery can introduce significant errors, limiting their applicability across diverse BESS deployments. 

Why SoC lookup tables can’t support dynamic BESS environments 

SoC lookup tables remain a common method to generate SoC estimates. However, their poor accuracy, niche applicability, and disregard for the impedance effect, temperature dependency, and battery degradation mean SoC lookup tables are unable to deliver accurate SoC estimates. 

Down the line, inaccurate SoC estimates lead to faulty battery management, poor performance, and even potential safety concerns. 

For dynamic BESS environments requiring precise SoC estimates (such as renewable energy storage systems (ESS) and electric vehicle (EV) charging infrastructure, SoC lookup tables are simply unable to meet BESS asset operators’ needs.

Alternative methods to estimate SoC

To address the severe limitations of SoC lookup tables, BESS asset operators are beginning to turn to more advanced methods to generate SoC estimates: Kalman filters and machine learning and artificial intelligence. 

  1. Kalman filters

Kalman Filters are algorithms that estimate a battery’s SoC by blending a mathematical model with real-time measurements like voltage and current. They predict the SoC using the model and then refine it with actual data to cut down on errors. 

Unlike SoC lookup tables, this method excels at handling noisy or uncertain data. This means Kalman filters can intelligently adapt to changing conditions (e.g., temperature adjustments, battery degradation, and other new data) to provide more reliable, up-to-date, and accurate SoC estimates. However, a key drawback is that Kalman filters depend heavily on an accurate battery model, which can become less reliable as the battery ages or operating conditions shift.

  1. Machine learning

It’s also possible to estimate SoC using machine learning (ML). 

ML predicts a battery’s SoC by learning patterns from data like voltage, current, and temperature. Trained on historical data, ML models can grasp complex, non-linear links that simpler methods might miss. They adapt to changes, such as battery aging, by updating with new data over time. However, a notable drawback is that ML requires significant amounts of data and computational resources to train and perform effectively, which can be challenging in resource-limited environments.

  1. Zitara Power

Zitara Power is part of Zitara for BESS, the purpose-built software for smarter balancing operations and more accurate state estimates. Zitara Power provides a set of highly accurate, predictive energy and power state estimates. 

Unlike SoC lookup tables and other methods for generating SoC estimates, Zitara Power produces state estimates parameterized by both time and dispatch rate, enabling operators to forecast how BESS performance will change over the course of daily operations. 

Conclusion: It’s time to discontinue SoC lookup tables for BESS applications

Accurate SoC estimates are essential for optimizing performance, ensuring safety, and maximizing battery lifespans. However, most BESS asset operators continue to rely on SoC lookup tables, which notoriously disregard the impedance effect, temperature dependency, and battery degradation to ultimately generate inaccurate, unreliable SoC estimates. 

These limitations make SoC lookup tables unable to support dynamic BESS applications, such as ESS and EV charging infrastructure.

How can you generate more accurate SoC estimates to optimize performance, ensure safety, and maximize battery lifespans? 

Learn more about how Zitara Power monitors cell-level raw data to produce accurate, real-time SoC. 

Do you speak battery?

A roundup of terms, concepts, and acronyms to amp up your fluency.

Go to our battery glossary

Keep updated on Zitara insights, news, and events.

Thank you!
Uh oh! Something went wrong.

Get unparalleled insights into your batteries.

Upgrade your battery management

Embedded software to manage, monitor, and maximize your deployments.

Learn More

Cell balance

Cell balance refers to the differences in state of charge of the series cells in a battery pack. The amount of imbalance is the highest cell’s state of charge (SoC) minus the lowest cell’s

Go to the battery glossary ->

We'll be at the Battery Show 2024 in Detroit!
Come and meet with us.

Download the latest data sheet here.