Skip to main content

AESB: Advanced Energy Storage Analytics

aesb is a Python package for fetching, processing, analyzing, and visualizing battery cell data from various manufacturing databases. It is designed to help engineers and data scientists monitor battery quality, identify anomalies, and understand cell behavior.

Key Features

  • Data Fetching:
    • Connects to multiple database systems (MySQL, Doris) to retrieve battery cell data.
    • Fetches data based on cell IDs, date ranges, or specific manufacturing processes (CP).
    • Retrieves detailed FTP curve data for in-depth analysis.
    • Handles data from different manufacturing bases (e.g., 'jy', 'sy', 'ordos').
  • Data Processing:
    • Removes rework data to ensure analysis is based on first-pass results.
    • Enriches data with defect information.
    • Calculates dQ/dV, a key metric for battery health analysis.
  • Data Visualization:
    • Generates various plots to visualize cell characteristics and compare them with their peers.
    • Analyzes and plots feature distributions to identify outliers.
    • Visualizes FTP curves to understand charging and discharging behavior.
  • Data Management:
    • Provides a unified BatteryDataManager class to streamline data operations.
    • Allows uploading processed data back to a database.
    • Enables marking cells with defect codes directly through an API.

Installation

To install the project, you can use pip:

pip install .

Usage

To use the project, you can import the package and use the BatteryDataManager class:

from aesb import BatteryDataManager

# Initialize the data manager for a specific manufacturing base and line
dm = BatteryDataManager(base='jy', wip_line='JYP1')

# Get data for a list of cell IDs
cell_data = dm.get_data_by_cell_ids(['cell_id_1', 'cell_id_2'], cp_names=['CAP', 'FOR'])

# Get FTP curve data for a cell
curve_data = dm.get_curves_by_cell_ids(['cell_id_1'], proc='CAP')

# Analyze a cell and visualize its characteristics
dm.analyze_cell_cp('cell_id_1')

Development

To set up the development environment, first create a virtual environment:

python3 -m venv venv
source venv/bin/activate

Then, install the dependencies:

pip install -r requirements.txt

To run the tests:

python3 -m pytest

Metadata

Release files for aesb 2.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aesb 2.0.0
File Size Uploaded Provenance
aesb-2.0.0.tar.gz 28.3 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for aesb 2.0.0
File Interpreter ABI Platform
aesb-2.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 57.6 kB

Release files / aesb-2.0.0.tar.gz

Download URL aesb-2.0.0.tar.gz
Size 28.3 kB
Tags Source
SHA-256 checksum
How to use checksums
78df52ca019248dc220138489ae195eb1cb2790855e572eeefb7f1a023377d51
BLAKE2b-256 checksum
How to use checksums
f155c5f290be3fae4470faf8dcf635b41e859c27dec9b15afcfef0ee0e403519
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.5

Release files / aesb-2.0.0-py3-none-any.whl

Download URL aesb-2.0.0-py3-none-any.whl
Size 29.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
118ddd7b7c826b204009a1680c4165501f5e56756543f2e950d938b794c8b5fb
BLAKE2b-256 checksum
How to use checksums
4ee53b4de9704e4372517ded2a2da2fad5bb0f041c12f2a4fbb1d042bfee06de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.5

Security for aesb 2.0.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page