Skip to content

TFDSUNet: Time-Frequency Dual-Stream Uncertainty Network for Battery SOH/SOC Prediction

License

Notifications You must be signed in to change notification settings

Zeyu-Zhu/TFDSUNet

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TFDSUNet: Time-Frequency Dual-Stream Uncertainty Network for Battery SOH/SOC Prediction

Wenzhe Xiao, and Zeyu Zhu

Details can be found in our paper ResearchSquare, which is under review at Nature Portfolio.

Our Insight

The sequence of current, voltage and temperature presents a strong periodicity during battery discharge. Existing data-driven methods often only explore feature extraction in the time domain. However, the invariance and variability in the frequency domain are better data structures for feature extraction in deeping learning.And the local feature extraction in the frequency domain corresponds to the global extraction in the time domain. Our method can also be regarded as a global information supplement to the local feature extraction in the time domain.

Set up a virtual conda environment

Setup a virtual conda environment using the provided requirements.txt.

conda create --name TFDSUNet --file requirements.txt
conda activate TFDSUNet

Download Datasets

Datasets can be found in CALCE and LG. You can download and put it into datastets. You can also apply our model on other datasets, but then you have to modify utils/build_dataloader to make it suitable to your data struct.

Train and Test TFDSUNet

The implementation of TFDSUNet is in model, including uncertainty head, frequency domain flow, spatial domain flow and dual-stream flow.After setting up a virtual environment and download the datasets, if you want to train your own model, please run following order in your terminal.

python train_uncertainty.py

And if you want to test it, please run following order in your terminal.

python test_uncertainty.py

It's worthing noticing that you may need to modify path in train_uncertainty.py and test_uncertainty.pybecause you may change name of files.

Other Codes

Data preprocessing, dataloader and metrics(MSE and RMSR) are implemented in utils.

Result on LG Datasets

Pre-trained models on 0 degree and 10 degree datasets are saved in result/0degree and result/10degree, respectively.

Citations

If you find our work useful, please cite our paper.

@article{xiao2023tfdsunet,
  title={TFDSUNet: Time-Frequency Dual-Stream Uncertainty Network for Battery SOH/SOC Prediction},
  author={Xiao, Wenzhe and Zhu, Zeyu and Wang, Qizhou and Pang, Li and Shu, Chengyong and Meng, Deyu and Cao, Xiangyong},
  year={2023}
}

About

TFDSUNet: Time-Frequency Dual-Stream Uncertainty Network for Battery SOH/SOC Prediction

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages