Main Content

Characterize Battery Health Using Cycler-Based Test Data

Battery health management includes state-of-health (SOH) estimation, remaining useful life (RUL) prediction, and early cycle life prediction. During the design phase, important information about battery design and performance is gathered by using a cell-level battery cycler that performs a specific repeated sequence of charge/discharge/rest operations using a test protocol. The cycling process collects measurements on key quantities such as voltage and current, and key test information like cycle index and step index.

The following figure illustrates a typical test cycle, which in this case is five hours long. The cycle includes a constant-current constant-voltage charge phase and a constant-current discharge phase.

Battery test Cycle. The blue current axis is on the left. The red voltage axis is on the right.

The test data includes a large amount of information that you can use to generate features that give insight into battery health and degradation level. However, to analyze this data in a meaningful way, you must organize, or parse, the data so that you can isolate feature extraction to specific operations during the test, such as cycling phase or constant-current segments.

Predictive Maintenance Toolbox™ provides specialized battery analysis tools that let you perform data parsing and feature extraction automatically on test data.

  • batteryTestDataParser, combined with segmentData, performs the parsing task and outputs an encapsulated data object that includes measurement data and cycling information.

  • batteryTestFeatureExtractor, combined with extract, extracts the features that you specify. These features include standard features such as cumulative values, energy, and kurtosis. You can also specify features such as incremental capacity, for which extract computes differential curves.

General Workflow

The following figure illustrates the general workflow, from the input of battery cycler data to the output of the battery feature table.

  1. Collect and preprocess the data.

    • You must perform this step prior to using the battery analysis tools. Typical data cleaning tasks include discarding NaN data and fixing timeline corruption due to computer auto-restarts and to overly long intervals between consecutive data points.

  2. Organize Data

    • Encapsulate the data by creating a batteryTestDataParser object and setting critical properties. Critical properties include the variable names that correspond to the data columns for required values such as current, voltage, and cycle index. You can also specify cycles to exclude, if your preprocessing identified cycles with invalid data.

      The software ignores data columns that have no corresponding variable-name property.

    • Use segmentData to classify and organize the data by identifying cycling phase, cycling mode, and data validity. Using segmentData is especially useful for identifying problems in the data collection process and identifying cycles to exclude.

  3. Specify and Extract Features

    • Configure batteryTestFeatureExtractor to extract the feature sets that you want.

    • Use extract to extract the specified features from the segmented parser object into a feature table.

In addition to the previous workflow for extracting predefined features, you can customize feature extraction. For example, once you segment your data, you can use computeDifferentialCurves independently of batteryTestFeatureExtractor and extract to extract your own incremental capacity and differential features from the curves.

For an example of this workflow, and of the features you can extract, see Data Analysis and Feature Extraction for Battery Raw Cycling Data.

See Also

| | | |

Related Topics