Skip to content

"Real-Time State Estimation of Lithium-Ion Battery Using Image-Based Regression with CNN." 2024 10th International Conference on Condition Monitoring and Diagnosis (CMD). IEEE, 2024.

Notifications You must be signed in to change notification settings

hun-park/Real-Time-State-Estimation-of-Lithium-Ion-Battery-Using-Image-Based-Regression-with-CNN

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 

Repository files navigation

Real-Time State Estimation of Lithium-Ion Battery Using Image-Based Regression with CNN

This repository contains the source code for the paper:

Real-Time State Estimation of Lithium-Ion Battery Using Image-Based Regression with CNN
Hun Park, Young Soo Kim, and Yong-June Shin
Department of Battery Conflation Engineering, Yonsei University, Seoul, Korea


Abstract

In this paper, we propose a novel method for real-time state estimation of lithium-ion batteries using convolutional neural networks (CNNs). By transforming time-series measurements (voltage, current, and temperature) into two-dimensional images through gray-scale (GS) encoding, our approach enables deep CNN architectures (e.g., ResNet, custom 5-layer CNN) to capture both spatial and temporal features efficiently. Compared to traditional RNN and LSTM models, our method significantly improves prediction accuracy while reducing inference time and model size. Furthermore, network compression techniques such as pruning and quantization are applied to make the system suitable for resource-constrained environments.


Overview

Lithium-ion batteries are essential for a wide range of applications—from smartphones to electric vehicles. However, direct measurement of key battery states such as State-of-Charge (SoC), State-of-Health (SoH), and capacity is challenging. Our work addresses this by:

  • Time Series-to-Image Encoding:
    Converting measured battery data into images using GS encoding, which normalizes data into an 8-bit range. This transformation improves storage efficiency and enables the use of advanced CNN models.

  • CNN-Based Regression:
    Utilizing 2D CNN architectures to perform regression on the encoded images, thus estimating battery states with high accuracy. This approach allows the extraction of complex spatial and temporal features from extended data sequences.

  • Model Compression:
    Implementing pruning and quantization techniques to significantly reduce model size and inference time, making the system deployable on edge devices such as Battery Management Systems (BMS).

  • Experimental Validation:
    The method is validated on the open-source MIT-Stanford battery dataset. Results show substantial improvements in both computational efficiency and prediction performance compared to conventional methods.


Repository Structure

  • data/
    (MIT-Stanford dataset)

  • src/
    Contains Jupyter notebooks that perform various steps of the pipeline (data encoding, CNN-based regression for Q/SoC/SoH, model training, etc.). For example:

    • regression_Q.ipynb
      Demonstrates how to encode time-series battery data into images (GS encoding) and train a CNN to estimate capacity (Q).
    • regression_SoC.ipynb
      Focuses on CNN-based estimation of State of Charge (SoC).
    • regression_SoH (b1c11).ipynb, regression_SoH (b1c18).ipynb, regression_SoH (b1c19).ipynb, regression_SoH (b1c38).ipynb, regression_SoH (test).ipynb
      Series of notebooks for SoH estimation under different battery cells or experimental conditions (e.g., b1c11, b1c18, etc.).
  • src/lib/
    Contains Python scripts and utility modules used by the above notebooks. For instance:

    • get_chrg.py, get_cmp.py, get_data.py, get_eval.py, get_imgs.py, get_norm.py, get_rslt_rnn.py, get_rslt_cnn.py, get_scld.py, get_sets.py, get_trns.py
      A collection of scripts for data loading, normalization, evaluation, generating results, handling image generation, or other data-related utilities.
    • train_resnet50.py, train_resnet101.py, train_resnet152.py, train_small.py, train_vgg16.py
      Scripts to train various CNN architectures (ResNet, VGG16, or a smaller custom network) for battery state estimation.
    • utils.py
      Contains miscellaneous helper functions (e.g., logging, plotting, parameter management) shared across multiple scripts.
  • README.md
    This file.


Installation (Not Supported)

Clone this repository and install the required dependencies:

git clone https://github.com/yourusername/repository-name.git
cd repository-name
pip install -r requirements.txt

Citation

If you use this code or build upon our work, please cite the paper as follows:

Park, Hun, Young Soo Kim, and Yong-June Shin. "Real-Time State Estimation of Lithium-Ion Battery Using Image-Based Regression with CNN." 2024 10th International Conference on Condition Monitoring and Diagnosis (CMD). IEEE, 2024.

Acknowledgments

This work was supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIT).


Contact

For any questions or suggestions, please contact:

Hun Park: [email protected]

About

"Real-Time State Estimation of Lithium-Ion Battery Using Image-Based Regression with CNN." 2024 10th International Conference on Condition Monitoring and Diagnosis (CMD). IEEE, 2024.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published