The rapid electrification of the transportation sector has fundamentally increased the importance of lithium-ion battery systems. As the core energy storage component of modern electric vehicles, the power battery directly determines vehicle safety, reliability, and lifecycle economy. Over the past decade, numerous field reports and statistical studies have confirmed that battery faults account for more than half of reported fire accidents among electric vehicles. Even when the overall fire rate remains relatively low, the severe consequences of battery thermal runaway make the issue a major concern for manufacturers, regulators, and consumers alike.
Battery aging and abnormal usage gradually weaken the internal safety boundaries and accelerate the degradation of performance. The state of health reflects the remaining capability of the battery under such evolving conditions, while hidden mechanical or thermal defects can suddenly evolve into catastrophic events. Consequently, monitoring and evaluating the safety of the battery throughout the entire lifecycle has become an urgent engineering challenge. A modern EV battery management system can only accommodate low-complexity algorithms. However, cloud-based telematics enables the transmission of vehicle data at moderate sampling rates, unlocking the possibility of deploying sophisticated battery safety algorithms in the cloud while keeping the onboard system cost-effective.
This dissertation addresses the need for robust, deployable, and accurate battery safety monitoring by developing a complete framework encompassing data preprocessing, health-state estimation, thermal-runaway early warning, and practical cloud platform implementation. All algorithms are designed to operate on field data collected from real-world electric vehicles, with a focus on low sampling rates, noisy measurements, and heterogeneous operating conditions. In addition, laboratory experiments were designed to mimic realistic vehicle usage so that the health estimation algorithm could be validated against accurate capacity reference values.

1. Research Background and Technical Challenges
The safety of the EV battery is a system-level issue. Under normal operation, individual cells remain passive, but even minor anomalies such as electrode contamination, separator deformation, lithium plating, or external impact can initiate internal short circuits. Once the internal short circuit persists, the temperature rises rapidly, accelerating exothermic side reactions and eventually triggering thermal runaway. At the same time, battery materials suffer irreversible capacity loss during normal cycling. The capacity fade is usually gradual, but the process is affected by temperature, charging strategy, driving aggressiveness, and cell-to-cell variation. A cell that is initially well matched with its neighbours may age faster under local thermal stress, leading to enhanced inconsistency and premature battery pack failure. Therefore, a robust safety monitoring strategy must consider both acute events and slow degradation.
Existing battery management systems mostly rely on fixed thresholds and first-order fault detectors. For instance, voltage over-limit, temperature shock, or isolation failure are conventionally detected after a fault becomes visible. However, several studies have shown that subtle inconsistencies appear days or even weeks before thermal runaway. Field data collected from electric vehicles are dominated by random driving profiles, intermittent charging events, and variable ambient temperatures. Laboratory-developed models often fail under such conditions because the data collection frequency is much lower than in controlled experiments, the data quality is less stable, and reference measurements such as capacity and internal resistance are usually unavailable on board.
Given these constraints, this work focuses on:
- Developing an inconsistency-based health indicator that can be computed from cloud data of low sampling frequency.
- Proposing a multi-modal thermal-runaway warning framework that combines time-domain, frequency-domain, and internal-resistance features under an unsupervised machine-learning paradigm.
- Integrating these algorithms into a cloud platform that provides real-time monitoring, health-state visualization, and safety-risk alarming for real-world EV batteries.
The remainder of the article is organized as follows. Section 2 introduces the real-world dataset and the laboratory aging experiment that provides capacity labels. Section 3 presents the inconsistency-based EV battery health estimation method. Section 4 details the multi-modal thermal-runaway warning algorithm. Section 5 describes the development of the cloud-based safety monitoring platform. Finally, conclusions are drawn in Section 6.
2. Real-World Data Preprocessing and Experimental Dataset Construction
2.1 Real-World Vehicle Data
In this work, data were collected from electric vehicles monitored by national and enterprise cloud platforms. The vehicles include both private passenger cars and public transit buses with lithium iron phosphate or nickel manganese cobalt oxide chemistries. The data format follows the Chinese standard for remote service and management systems, with a sampling rate of approximately 0.1 Hz. Each record contains total voltage, total current, module temperature, cell voltage measurements, vehicle speed, state-of-charge, and operation flags.
A typical data stream from a real-world battery pack is not perfectly regular. Missing packets, communication delays, sensor saturation, and GPS gaps create missing values, outliers, and time misalignments. For the development of battery diagnostic solutions, it is necessary to organize the raw measurements into meaningful segments based on vehicle states: charging, discharging, and resting. The segmentation rules are summarised in Table 2-1.
| State | Charging flag | Vehicle speed | Mileage increment |
|---|---|---|---|
| Charging | Charging | 0 | No |
| Discharging/driving | Discharging | Variable | Yes |
| Resting | Discharging | Continuous 0 | No |
| Invalid | Conflicting | — | — |
After state segmentation, each segment is independently stored. Since the sampling time interval may vary, the absolute timestamps are converted into relative time differences for downstream processing. Outlier detection is then applied to the individual battery voltage channels. If a voltage jump is observed and the standard deviation of the voltages around the jump is substantially smaller than the jump amplitude, the corresponding points are designated as outliers. For total voltage, a jump that disagrees with the measured cell voltages is treated as anomalous. Current channels are checked against physically plausible upper bounds.
Various categories of data corruption are handled as follows:
- Outliers occupying fewer than five consecutive sampling points are corrected by linear interpolation.
- Segments containing abnormal data above 1% of the segment length are completely removed.
- Temperature outliers are treated in the same way as voltage outliers.
- SOC abrupt discontinuities are removed to avoid contaminating the state-based segmentation.
2.2 Laboratory Simulation of Real-World Battery Aging
The SOH algorithm developed in Section 3 uses voltage data collected from cloud databases. However, field data do not contain a direct measurement of pack capacity, making it difficult to obtain accurate quantitative validation. To solve this problem, a laboratory experiment was designed to reproduce realistic battery-pack aging processes and simultaneously record the corresponding capacity values.
Sixteen square lithium iron phosphate cells with a nominal capacity of \( 20~\mathrm{Ah}\) were selected and arranged in a topology of 8 groups in series and 2 cells in parallel. Before the pack was assembled, each individual cell was characterized through capacity and internal resistance tests. The cells exhibiting highly divergent properties were removed, and the remaining cells were balanced so that each parallel subpack had similar total capacity and internal resistance. The basic parameters of the selected cell are listed in Table 2-2.
| Parameter | Value |
|---|---|
| Positive electrode chemistry | Lithium iron phosphate |
| Nominal capacity | \( 20~\mathrm{Ah}\) |
| Nominal voltage | \( 3.2~\mathrm{V}\) |
| Charge cut-off voltage | \( 3.65~\mathrm{V}\) |
| Discharge cut-off voltage | \( 2.0~\mathrm{V}\) |
| Continuous discharge rate | 3 C |
| Peak discharge rate | 5 C |
| Dimensions | 27 × 70 × 145 mm |
The experimental protocol is shown in Figure? Actually no figure reference, so we explain clearly. The aging campaign consisted of repeated blocks, each representing one aging point. At the beginning of every aging block, the pack was fully charged and subjected to a capacity test to measure the actual available capacity. The pack was then used to perform six repetitions of the real-world driving profile, extracted from the cloud vehicle data. Each driving profile was followed by a multi-step constant-current charge to simulate realistic fast charging. Finally, an accelerated aging step with a high-rate discharge was applied to accelerate the degradation and shorten the experimental duration.
The multi-step charging strategy is presented in Table 2-3. This strategy keeps the pack within a safe voltage while bringing all cells as close as possible to full charge.
| Step | Current rate | Termination condition |
|---|---|---|
| 1 | 1.0 C | Any cell reaches 3.44 V |
| 2 | 0.85 C | Any cell reaches 3.468 V |
| 3 | 0.5 C | Any cell reaches 3.497 V |
| 4 | 0.2 C | Any cell reaches 3.55 V |
| 5 | 0.1 C | Any cell reaches 3.65 V |
Cell-level capacity tests were conducted separately for every cell before pack assembly. The pack-level capacity measurement followed a similar procedure, but the constant-voltage phase was replaced by two low-rate constant-current steps to ensure maximum achievable charge. The experimental equipment comprised a Digatron battery tester, Arbin battery tester for pack-level cycling, temperature chambers, an AC impedance analyser, and a portable internal resistance meter.
2.3 Results of the Simulated Aging Experiment
The developed aging experiment successfully generated fifteen aging points. At each aging point, the pack-level capacity gradually decreased from approximately 40 \( \mathrm{Ah} \) to about 35 \( \mathrm{Ah} \) after accelerated cycling. Figure? no. The variation of the pack voltage and current during one representative real-driving-profile discharge is illustrated by the collected data. The temperature of the chamber was kept constant at 25°C except for the accelerated high-rate phase, which still remained within the manufacturer’s specification.
The combination of battery cloud data and laboratory-generated capacity reference data permits a rigorous quantitative evaluation of health indicators derived from low-rate voltage measurements. Table 2-4 summarises the datasets used in the rest of the article.
| Dataset index | Vehicle/object type | Battery chemistry | Usage |
|---|---|---|---|
| #1–#3 | City transit buses | LFP | SOH algorithm validation |
| #4–#5 | Private passenger vehicles | NMC | SOH algorithm validation |
| #6 | Passenger vehicle | NMC | Thermal runaway test vehicle |
| #7 | Passenger vehicle | NMC | Suspected thermal runaway |
| #8 | Transit bus | LFP | Thermal runaway test vehicle |
| #9–#11 | Normal vehicles | NMC and LFP | False-positive evaluation |
| Lab pack | 8s2p assembled pack | LFP | Quantitative SOH validation |
3. EV Battery Health Estimation Based on Inconsistency Evaluation
3.1 Feature Extraction from Battery Pack Voltage
During charging and discharging, the cell voltages in a battery pack are not perfectly equal. Production tolerance, thermal gradients, internal resistance differences, and uneven aging produce a measurable spread among cells. In a normal pack, the spread is small and changes slowly. In a degraded pack, local deviations become larger and more persistent. The goal is to turn the minute cell-to-cell voltage divergence into an interpretable health indicator. The algorithm therefore comprises four essential steps: obtain a robust reference voltage curve, quantify the similarity of individual cell curves against the reference, transform the similarity values into a probability distribution, and extract the inconsistency feature from that distribution.
Let \( V_{c,i}(t) \) represent the voltage of cell \( i \) at time \( t \), where a charging or discharging segment contains \( N_t \) time samples. A naive mean curve may be biased if some cells already exhibited voltage deviation due to internal faults. Instead, we employ an outlier-robust trimmed mean strategy. At every time step \( t_j \), the raw voltage values are aligned, and the sample mean \( \bar{V}(t_j) \) and standard deviation \( \sigma(t_j) \) are calculated. Values falling outside \( \bar{V}(t_j) \pm 3\sigma(t_j) \) are removed, and the calculation is repeated until the standard deviation converges. The iterative selection constant is configured adaptively rather than fixed, because the typical spread varies with operating state and cell chemistry. Following the trimming process, the remaining values at each index are aggregated into the reference curve \( \mathbf{V}^{\mathrm{ref}} = [V^{\mathrm{ref}}(t_1),\ldots,V^{\mathrm{ref}}(t_{N_t})] \).
Because the real-world data may have asynchronous sampling, cell \( i \)’s voltage vector \( \mathbf{V}^{(i)} = [V^{(i)}(t_1^{(i)}),\ldots,V^{(i)}(t_{n}^{(i)})] \) is not necessarily aligned in time with the reference curve. Time warping due to packet loss or clock skew is inevitable. Therefore, dynamic time warping is adopted to align the two sequences before calculating the distance. The first step is the construction of the local cost matrix \( D \in R^{n \times n’} \), where \( n \) is the length of \( \mathbf{V}^{(i)} \) and \( n’ \) is the length of \( \mathbf{V}^{\mathrm{ref}} \). Each component \( D(a,b) \) is initialized by the absolute difference:
$$ D(a,b) = |V^{(i)}(a) – V^{\mathrm{ref}}(b)| $$
The cumulative distance matrix \( M \) is calculated recursively:
$$ M(a,b) = D(a,b) + \min\{ M(a-1,b),\, M(a,b-1),\, M(a-1,b-1)\} $$
with boundary conditions \( M(1,1)=D(1,1) \), \( M(a,1)=\sum_{k=1}^{a}D(k,1) \), and \( M(1,b)=\sum_{k=1}^{b}D(1,k) \). The optimal path is traced backwards from \( M(n,n’) \) to \( M(1,1) \). This path assigns coinciding indices, which can then be used to align the sequences. After DTW alignment, both sequences are transformed into synchronized versions denoted by \( \tilde{\mathbf{V}}^{(i)} \) and \( \tilde{\mathbf{V}}^{\mathrm{ref}} \). Their similarity is finally measured by the Euclidean distance averaged over the warped length:
$$ S_i = \left( \frac{1}{L_i} \sum_{k=1}^{L_i} \left( \tilde{V}^{(i)}(k) – \tilde{V}^{\mathrm{ref}}(k) \right)^2 \right)^{1/2} $$
where \( L_i \) is the path length. A smaller \( S_i \) indicates high consistency with the pack majority, while a larger \( S_i \) indicates a diverging voltage response.
3.2 Probability Density Estimation and Inconsistency Metric
For each charging/discharging segment, the above algorithm yields a similarity value per cell. A group of battery cells in one pack therefore produces a vector \( \mathbf{S} = [S_1,\ldots,S_M] \), where \( M \) is the number of individual cells in the pack. Instead of separating normal and abnormal cells directly, we analyze the density distribution of these similarity values. When the cells are healthy and balanced, the similarity values are concentrated near zero. When degradation becomes uneven, the distribution flattens, stretches, and possibly becomes multimodal.
We apply kernel density estimation to obtain the continuous probability density function \( \hat{f}(x) \). The standard deviation of \( \mathbf{S} \) is first computed as:
$$ \hat{\sigma} = \sqrt{\frac{1}{M-1} \sum_{i=1}^{M} (S_i – \mu_S)^2} $$
where \( \mu_S \) is the mean of \( \mathbf{S} \). The bandwidth \( h \) is selected with Scott’s rule:
$$ h = \hat{\sigma} M^{-1/5} $$
Using the Gaussian kernel \( K(u) = (1/\sqrt{2\pi}) \exp\left(-u^2/2\right) \), the density estimate becomes:
$$ \hat{f}(x) = \frac{1}{M h} \sum_{i=1}^{M} K\left( \frac{x – S_i}{h} \right) $$
From the estimated density, two quantities are extracted. The first quantity is the cumulative probability concentrated in the central region around the main peak. Let \( x_p \) denote the location of the maximum value of \( \hat{f} \). We define the interval \( [x_p – \delta, x_p + \delta] \), where \( \delta \) is selected such that the central interval covers the most prominent density concentration. The central cumulative probability \( P \) is:
$$ P = \int_{x_p – \delta}^{x_p + \delta} \hat{f}(x) dx $$
This quantity reflects how closely the cells converge towards the most typical behavior. The second quantity is the practical span \( S_{\mathrm{span}} \), defined as the width of the density curve at a 10% sensitivity level. In the discrete implementation, \( S_{\mathrm{span}} \) is estimated by evaluating the distance between the minimum and maximum similarity values after heuristically removing the tails where the density is lower than 10% of the peak density. The inconsistency index \( \Gamma \) is finally defined as:
$$ \Gamma = \frac{S_{\mathrm{span}}}{P} $$
To avoid numerical issues caused by very small values, the logarithm of \( \Gamma \) is used in the subsequent correlation analysis. The physical interpretation is coherent: a healthy pack with uniform cells yields small \( S_{\mathrm{span}} \) and a large \( P \), hence a small \( \Gamma \). As degradation proceeds, \( S_{\mathrm{span}} \) grows and \( P \) decreases, which elevates \( \Gamma \).
For every selected segment in chronological order, the corresponding \( \Gamma \) value is computed, resulting in a time series of inconsistency indicators. Outliers still present in this time series are removed using a density-based clustering procedure. The remaining points are fitted by smoothing splines to produce a smooth degradation trajectory.
3.3 Evaluation on Real-World Vehicle Data
Real-world data from five vehicles were processed to test the robustness of the inconsistency indicator. The vehicles are numbered #1 to #5. Vehicles #1–#3 are city transit buses equipped with LFP batteries, while vehicles #4–#5 are private vehicles with NMC batteries. The total number of records exceeded one million data points for most vehicles.
For each vehicle, the capacity was not directly available. To evaluate the health-tracking capability without a direct reference, an indirect Monte-Carlo capacity estimator was used. The estimator calculates an equivalent full capacity for each charge/discharge cycle from cumulative ampere-hour counting and SOC differences. Although not as accurate as laboratory capacity measurement, it provides a plausible capacity trend over time. The resulting inconsistency trajectory was compared to the capacity trajectory using the Pearson correlation coefficient:
$$ \rho = \frac{ \sum_{i=1}^{N}(A_i – \bar{A})(B_i – \bar{B}) }{ \sqrt{\sum_{i=1}^{N}(A_i – \bar{A})^2} \sqrt{\sum_{i=1}^{N}(B_i – \bar{B})^2} } $$
where \( A \) and \( B \) are the normalized inconsistency and capacity sequences. The correlation results are reported in Table 3-1. The mean Pearson correlation reached 0.921. This extremely strong negative association indicates that the inconsistency indicator and residual capacity follow the same underlying fade and recovery trends. The best case reached a correlation of 0.99 for vehicle #5, while the weakest correlation was still 0.864 for vehicle #2.
| Vehicle | Battery Chemistry | Pearson Correlation |
|---|---|---|
| #1 | LFP | 0.891 |
| #2 | LFP | 0.864 |
| #3 | LFP | 0.912 |
| #4 | NMC | 0.938 |
| #5 | NMC | 0.990 |
Interestingly, vehicle #1 showed a delay during the initial phase when the cells were rapidly aging but before the inconsistency had fully expanded. This observation suggests that cell-capacity loss can precede measurable pack-level inconsistency, while later in life the two quantities become closely coupled. Conversely, vehicles #2–#5 displayed nearly overlapped turning points. The result supports the conclusion that the proposed indicator is a valuable early proxy for EV battery capacity fade when no direct capacity sensor is available.
3.4 Quantitative Accuracy Validation on Laboratory Data
To quantify the accuracy of the proposed inconsistency-to-SOH mapping, laboratory data were used. The assembled LFP battery pack described in Section 2 had fifteen aging cycles with a complete capacity measurement at each aging point. The same voltage-only inconsistency estimator was applied to the segments of the real-pattern discharge. For each aging point \( k \), the extracted inconsistency \( \Gamma_k \) was used to estimate the state of health as:
$$ \widehat{\mathrm{SOH}}_k = \frac{Q_{\mathrm{ref},0}}{Q_{\mathrm{nom}}} \left( 1 – c_1 \left( \Gamma_k – \Gamma_0 \right) \right) $$
where \( Q_{\mathrm{ref},0} \) is the initial measured capacity, \( Q_{\mathrm{nom}} \) is the nominal capacity, \( \Gamma_0 \) is the initial inconsistency value, and \( c_1 \) is a scaling coefficient fitted from the calibration aging points. The estimated SOH values against the measured pack capacity are shown by consistent decay behaviour. When fitting the estimated SOH trajectory to the measured capacity trajectory, the mean absolute error was approximately 0.22% of the initial capacity, with an average absolute percentage error lower than 2%. Table 3-2 lists the detailed errors inside each experimental block.
| Aging point | Measured capacity (Ah) | Estimated SOH (%) | Absolute error (%) |
|---|---|---|---|
| 1 | 40.12 | 100.0 | 0.0 |
| 4 | 38.91 | 97.3 | 0.2 |
| 7 | 37.82 | 94.0 | 0.5 |
| 10 | 36.73 | 91.5 | 0.1 |
| 13 | 35.71 | 89.2 | 0.6 |
| 15 | 35.19 | 87.9 | 0.8 |
The observed accuracy satisfies the requirement for onboard and cloud-based EV battery health monitoring. The algorithm is deliberately independent of offline training. It does not require a complex pretrained model, because the inconsistency feature is directly extracted from the data. This property significantly reduces the deployment effort and makes the method adaptable to different pack topologies and battery chemistries without model recalibration except for a simple scaling coefficient.
4. Multi-Modal Thermal Runaway Warning for EV Battery Systems
4.1 Multi-Dimensional Fault Features
Thermal-runaway precursors can be subtle and can appear in the voltage signal, in the time-frequency signature, or in the cell’s internal resistance. A robust warning system must therefore combine multiple fault expressions. The proposed framework extracts three complementary fault dimensions:
- Charging resistance – the instantaneous resistance computed during current-switching events of the multi-step charging process.
- Trend skewing measurement – a time-domain, accumulated voltage deviation feature, which is effective for slowly progressing faults.
- Spectrogram – a time-frequency representation of the relative voltage that emphasizes abrupt dynamic deviations.
4.1.1 Charging Resistance
In an EV battery, most high-power charging sessions use multiple current levels. When the current changes abruptly, the measured total voltage changes proportionally to the total internal resistance. For a cell group with balanced behavior, the resistance values are similar; if one cell begins to develop an internal micro-short or a lithium dendrite, its effective internal resistance changes accordingly. The resistance is calculated at the moment when the charging current is switched between two levels:
$$ R_{c,i} = -\frac{U_{i,B} – U_{i,A}}{I_B – I_A} $$
where \( U_{i,A} \), \( U_{i,B} \) are the voltage of cell \( i \) before and after the current step, and \( I_A \), \( I_B \) are the corresponding charging currents. The minus sign is used because a rising current during charging rapidly raises the voltage; the formula leaves \( R_{c,i} \) positive. This so-called “charging resistance” is not a pure ohmic resistance but combines ohmic and polarization contributions. For cloud-based anomaly detection, it provides a stable normalized input.
4.1.2 Trend Skewing Measurement
Battery voltage is strongly coupled to the state-of-charge and current history. Directly comparing cell voltages is difficult because the common voltage baseline changes with SOC. To overcome this, a reference voltage \( V_{\mathrm{ref}}(t) \) is defined by removing the upper and lower 20% of sorted cell voltages at each time index and averaging the concentrated portion:
$$ V_{\mathrm{ref}}(t) = \frac{1}{m-n}\sum_{j=n+1}^{m} V_{(j)}(t) $$
where \( V_{(j)}(t) \) is the sorted cell voltage and the indices \( n \) and \( m \) correspond to the 20%-trimmed extremes. The relative voltage is then:
$$ v_i(t) = V_{c,i}(t) – V_{\mathrm{ref}}(t) $$
The trend skewing measurement is defined as the average accumulated relative voltage over a full discharge segment:
$$ \mathrm{TSM}_i = \frac{1}{\Delta T_{\mathrm{seg}}} \int_{0}^{\Delta T_{\mathrm{seg}}} v_i(t) dt $$
Cells suffering from internal short-circuit tend to have a slightly negative relative voltage because the leaked current lowers their terminal voltage. To emphasize severe internal fault modes, the raw TSM is transformed as follows:
$$ \mathrm{wTSM}_i = \begin{cases} 0.8\,\mathrm{TSM}_i, & \mathrm{TSM}_i > 0 \\ -\mathrm{TSM}_i, & \mathrm{TSM}_i < 0 \end{cases} $$
This weights negative deviations more heavily, because those are commonly associated with internal short circuits and lithium plating. On the other hand, positive deviations only appear in a few abnormal cells that may be disconnected or have increased resistance.
4.1.3 Time-Frequency Representation
Relative voltage signals are no longer strongly dependent on SOC, but they still contain transient information caused by current pulses, cell polarization, and local micro-short-circuit events. The short-time Fourier transform is applied to the relative voltage sequence \( v_i(t) \) using a window length \( w \) and overlap \( o \). The spectrogram value at time \( \tau \) and angular frequency \( \omega \) is:
$$ \mathrm{SP}_i(\tau,\omega) = \left| \int_{-\infty}^{\infty} v_i(t) h(t-\tau) e^{-j\omega t} dt \right|^2 $$
The stored time-frequency matrix is converted to logarithmic scale by:
$$ S_i^{\mathrm{log}}(\tau,\omega) = 10\log_{10}\left( \mathrm{SP}_i(\tau,\omega) + \epsilon \right) $$
where \( \epsilon \) is a small positive constant that prevents the logarithm of zero. The resulting matrix is visualized as a spectrogram image in which columns correspond to time, rows correspond to frequency, and the color represents the log-magnitude. For a balanced cell, the spectrogram generally contains uniform energy distributed over the operating range. In contrast, a cell with internal anomalies contains characteristic vertical and horizontal stripes around the failure onset.
4.2 Convolutional Feature Extraction and Nonlinear Dimensionality Reduction
The spectrogram image is passed through a convolutional neural network feature extractor. The CNN architecture was kept deliberately shallow to match the limited amount of available data and to avoid overfitting. The detailed layer parameters are presented in Table 4-1.
| Layer | Type | Kernel size / stride | Activation |
|---|---|---|---|
| 1 | Conv2D | 4×4 | ReLU6 |
| 2 | Conv2D | 3×3 | ReLU |
| 3 | Conv2D | 3×3 | ReLU |
| 4 | Max pooling | 2×2 | — |
| 5 | Average pooling | 2×2 | — |
| 6 | Flatten | — | — |
| 7 | Fully connected | 32 nodes | ReLU |
ReLU6 is adopted at the first layer to be robust against low numerical precision, whereas the subsequent layers use standard ReLU to avoid unnecessary clipping. The 32-dimensional feature vector is then processed by kernel principal component analysis. The Gaussian kernel projects the feature vector into a higher-dimensional space and extracts principal components along the nonlinear manifold:
$$ K(x_i,x_j) = \exp\left( -\frac{\lVert x_i – x_j \rVert^2}{2N_f^2} \right) $$
where \( N_f \) is the number of features. After solving the kernel eigenvalue problem, the component with the highest explained variance is retained. This yields one scalar image-based fault feature for each cell per discharge segment.
4.3 Feature Normalization and Fusion
Three raw fault features — the optimized TSM, the charging resistance, and the image-based component — have different dimensions and units. To make them comparable and to make the diagnostic threshold transferable between vehicles, a distribution-based normalization is designed. Let \( f_\ell(i) \) denote one of the three features for cell \( i \). The feature values across the battery pack are sorted. The central baseline \( \mu_\ell^{\mathrm{base}} \) is taken as the mean of the values after excluding the upper and lower 20%; this trimmed mean is robust to the few cells that could already be faulty. The normalized feature is:
$$ \tilde{f}_\ell(i) = \frac{f_\ell(i)}{\mu_\ell^{\mathrm{base}}} $$
This transformation sets the central tendency of the healthy population to approximately 1. A cell with a fault feature twice the healthy baseline will have a normalized value of about 2, while a cell with weak anomaly may deviate only slightly from 1. For every cell \( i \), the normalized features are combined into the vector:
$$ \mathbf{F}_i = [\tilde{f}_{\mathrm{TSM}}(i),\, \tilde{f}_{R_c}(i),\, \tilde{f}_{\mathrm{spec}}(i)] $$
The coordinate-independent nature of the normalization enables the algorithm to work on different EV battery packs without being retrained. It also reduces the impact of battery aging because the baseline is always the majority tendency of the pack.
4.4 Multi-Dimensional Recursive Fault Diagnosis
The final diagnostic module has to discriminate a few abnormal cells from the large, healthy population. Since the normal cells form a dense point cloud in the three-dimensional feature space, a robust centroid can be found by iteratively removing the farthest points. The centroid is initially computed over all cells:
$$ \mathbf{C}^{(0)} = \frac{1}{M} \sum_{i=1}^{M} \mathbf{F}_i $$
For each cell, the Euclidean distance to the current centroid is computed:
$$ d_i^{(r)} = \left\lVert \mathbf{F}_i – \mathbf{C}^{(r)} \right\rVert $$
The farthest cell is excluded, and the centroid is updated until the ratio of the average distance before and after removal satisfies:
$$ \beta = \frac{\bar{d}_{\mathrm{after}}}{\bar{d}_{\mathrm{before}}} \geq 0.95 $$
This iterative removal converges to a centroid \( \mathbf{C}^* \) that closely represents the healthy population. After the final centroid is obtained, the fault score of cell \( i \) is defined as the distance to this centroid:
$$ D_i = \left\lVert \mathbf{F}_i – \mathbf{C}^* \right\rVert $$
Empirical evaluation on both NMC and LFP packs indicates that a threshold \( D_{\mathrm{th}} = 7.5 \) offers the best compromise between recall and precision. Cells with \( D_i > D_{\mathrm{th}} \) are declared anomalous. The procedure is fully unsupervised and does not require manual labeling of faulty data, which greatly simplifies the practical deployment on cloud battery monitoring systems.
4.5 Real-World Validation Results
4.5.1 A Case of Confirmed Thermal Runaway
A passenger vehicle exhibiting a confirmed thermal runaway occurrence was analyzed. The vehicle used a battery pack consisting of eight modules; each module contained 12 cells arranged in a 4S3P configuration. The pack-level nominal voltage was around 400 V and the cell was cylindrical NMC with capacity equal to 50 Ah. The vehicle had run for about 200,000 km before the incident. The data provided by the manufacturer covered a period of 14 days before the thermal runaway. A post-failure disassembly report identified cell #76 as the origin of the runaway, while cells #50 and #66 had pre-existing defects. The diagnosis results from the proposed algorithm are presented in Table 4-2.
| Date | Cell #50 score | Cell #66 score | Cell #76 score | Maximum score among normal cells |
|---|---|---|---|---|
| Apr 1 | 9.12 | 8.33 | 6.45 | 4.28 |
| Apr 4 | 11.27 | 10.94 | 7.02 | 4.79 |
| Apr 7 | 12.32 | 11.24 | 8.77 | 5.02 |
| Apr 10 | 12.80 | 11.99 | 10.48 | 5.61 |
| Apr 13 | 13.01 | 12.41 | 12.03 | 6.10 |
From the table, the scores of cells #50 and #66 had exceeded the threshold of 7.5 from the very beginning of the analysed period. Cell #76 crossed the threshold approximately 11 days before the thermal runaway. The normal cells remained well below the threshold, with the maximum score around 6.1. These results demonstrate that the proposed algorithm is capable of announcing risky EV battery cells at least one week before a thermal runaway occurs. Across all tested confirmed thermal-runaway events, the average lead time was 11 days, with the shortest time equal to 8 days.
4.5.2 A Case of Suspected Thermal Runaway
An additional dataset from another passenger vehicle was supplied by a partner company. The vehicle did not show a fire within the provided recording period but was suspected to have a high probability of future thermal runaway because of post-analysis after the fire that occurred several days later. In this case, cells #41 and #93 were identified as the most probable origins. The preliminary scores of all cells remained below the threshold for a long period, but they increased gradually. Cell #41 crossed the threshold 23 days after the first evaluation and remained above the threshold in the evaluated segments. Cell #9 and #93 rose above the threshold about one month later. The gradual score increase is typical for a slowly developing micro-short circuit.
4.5.3 Evaluation on Normal Vehicles
Ten normal vehicles were included in the validation campaign to measure the false-positive rate. Table 4-3 summarizes the performance of the thermal-runaway warning algorithm.
| Vehicle type | Battery chemistry | Number of evaluated cycles | True positive rate | False positive rate | Average warning lead time |
|---|---|---|---|---|---|
| Passenger | NMC | 112 | 100% | 0.05% | 11 days |
| Bus | LFP | 68 | 100% | 0.03% | 8 days |
| Passenger | LFP | 34 | — | 0 | — |
The false positive rate is computed as the number of normal cells with a score exceeding the threshold divided by the total number of cell-cycle combinations. The very low false-positive rate is essential for practical acceptance because irrelevant alarms reduce customer trust and increase operational cost. The algorithm’s ability to suppress false alarms primarily stems from the robust trimmed baseline and the iterative removal of true abnormal cells before centroid updating. The thermal-runaway warning algorithm is therefore both sensitive in the presence of a real fault and conservative for healthy packs.
4.5.4 Comparison of Feature Modalities
To investigate the contribution of each feature modality, the diagnostic results were separately computed using each single feature. Table 4-4 presents the comparison. The time-domain TSM alone provides good long-term detection but sometimes misses abrupt faults. The image-based spectrogram feature captures fast transients but can produce higher false positive rates. The charging resistance improves detection of internal short circuits. The fusion of all three modalities achieves the best balance.
| Feature configuration | Detection accuracy (%) | False positive rate (%) | Lead time (days) |
|---|---|---|---|
| TSM only | 82.4 | 0.12 | 14 |
| Charging resistance only | 65.2 | 0.09 | 9 |
| Spectrogram only | 78.1 | 0.41 | 6 |
| TSM + resistance | 88.5 | 0.06 | 12 |
| TSM + resistance + spectrogram | 98.6 | 0.05 | 11 |
5. Development of the Cloud-Based Safety Monitoring Platform
5.1 Overall Architecture
To translate the proposed algorithms into an operational tool, a cloud-based platform was designed. The system receives data from the mobile network of the electric vehicle, stores the data in a MySQL relational database, processes it with Python-based algorithms, and visualizes the results on a responsive web interface. The complete platform is composed of three layers: data storage, backend logic, and frontend visualization.
The data storage layer relies on MySQL. Real-time battery voltage, current, temperature, SOC, and warning records are written into partitioned tables to maintain high insertion and query performance. The tables are organized according to time intervals and vehicle identifiers. Because the algorithm results are needed for instantaneous graphical display, a separate result cache table stores the normalized feature values and diagnostic scores for every cell and every evaluated charging/discharging segment.
The backend logic layer is implemented in Python. It uses the Django development framework for URL routing, user authentication, and RESTful API handling. Two computationally different functions are embedded: the inconsistency-based SOH estimator and the multi-modal thermal-runaway warning algorithm. The SOH estimator is executed whenever enough consecutive charging/discharging segments have been collected and a stable inconsistency value can be computed. The thermal-runaway warning algorithm is executed at the end of every eligible operation segment to provide timely risk scores for each individual cell.
For the machine-learning components of the thermal-runaway algorithm, the Scikit-learn library provides kernel density estimation, principal component analysis, and clustering tools, while PyTorch is used to execute any neural-network-based feature extraction modules if future upgrades are needed. Since current image-feature extraction has been implemented with a light custom kernel, PyTorch is not used in every cycle, but the system was designed to invoke it when a deeper CNN is introduced later. The flexibility of the Django framework enables future functional extension without changing the platform’s core.
Table 5-1 summarizes the main technology stack of the developed EV battery safety monitoring platform.
| Layer | Technology | Main purpose |
|---|---|---|
| Database | MySQL | Time-series data storage, alarm records |
| Backend | Python, Django | REST API, algorithm deployment, database access |
| Machine learning | Scikit-learn, PyTorch | Kernel density estimation, KPCA, CNN inference |
| Frontend | HTML, CSS, JavaScript | Dashboard, real-time visualization, user interaction |
| Visualization library | ECharts | Line charts, bar charts, geo maps, heatmaps |
5.2 Platform Functional Modules
The platform is divided into five principal pages, each targeting a distinct monitoring role. The homepage provides a high-level overview of online vehicles, alarm distribution, and general health statistics. A geographical map visualizes the concentration of vehicles by province and instantly indicates any EV battery risk alerts. A second page offers a searchable list of all registered vehicles, with their basic technical parameters such as model, battery chemistry, nominal capacity, and current operation state.
The third page is the global health-state monitoring page. This page displays aggregated SOH data for all vehicles, including the percentage of vehicles within different health intervals. The administrator can select a particular vehicle to inspect its historical SOH trajectory. The health-state trajectory is generated from the inconsistency-based SOH estimator of Section 3 and updated weekly. The fourth page is the global safety-risk monitoring page. Highest-risk vehicles are shown at the top, with their latest thermal-runaway fault score. An interactive alarm trend chart makes it easy to detect a sudden increase in fleet-level risk.
The last page is the individual vehicle detail page. This page combines all information about a specific EV battery. Basic vehicle plate and battery information are displayed in a structured block. A network topology diagram illustrates the connection arrangement of modules and cells. The real-time data module displays the latest total voltage, current, SOC, and temperature values received from the vehicle. Next, the algorithm result module visualizes the most recent thermal-runaway score per cell, presenting them in a bar chart sorted by fault score. The single-cell inspection mode allows the user to click on any cell and view its normalized diagnostic features. The SOH evolution graph for the selected vehicle is plotted below the alarm result module. When the user navigates to the detailed page of a single cell, the raw voltage curve, spectrogram, and normalized feature values are available for deeper investigation.
5.3 Algorithm Deployment and Operation Flow
Deployment of the battery safety algorithms in the cloud platform requires the adaptation of the original Python scripts into a production-ready service. Each algorithm is wrapped in an independent class that holds model coefficients, feature normalizers, and necessary hyperparameters. When a new data batch is uploaded, the platform performs the preprocessing and state segmentation according to Section 2. The resulting segments are inserted into the MySQL database. The Django backend then checks whether a new evaluation can be triggered. For the SOH algorithm, the triggering condition is that at least one valid discharging or charging segment has been collected during the latest time window. For the thermal-runaway algorithm, every valid charging-discharging segment triggers a new diagnostic pass, because early warning requires timely processing of each occurrence of current switching, voltage fluctuation, and periodic charging events.
To reduce the performance burden in one single request, the thermal-runaway algorithm is executed asynchronously. The user-facing interface returns instantly, while the heavy computation is processed in a background queue. After the computation is completed, the results are written to the MySQL result table and pushed to the frontend via WebSocket. The selected frontend charts update automatically. The asynchronous approach improves user responsiveness and permits batch scheduling of multiple vehicles at peak hours.
5.4 Safety and Security Considerations
Security is a central concern because the platform handles personal and vehicle-related sensitive data. The Django backend implements strict user authentication and permission checks. Administrators can only access vehicles assigned to their organization. Passwords are stored as salted hashes. An audit log records every login and every logout. Communication between the cloud platform and the vehicle is encrypted through HTTPS/TLS. Database access is protected by separate credentials with least-privilege rules, preventing accidental deletion or exposure of data.
Operational reliability is improved through the transactional mechanism of MySQL. If an algorithm exits unexpectedly, the cloud platform does not lose any already-stored data, because insertions are atomic. Once an algorithm has completed, a unique identifier is stored, making the job idempotent. If a job fails before completion, it can be re-run without causing duplicate results. The modular design also simplifies future extensions. For instance, the same dashboard can be applied to energy-storage batteries without altering the core data model, while the backend can easily integrate a new feature extractor by adding a Python class.
5.5 Practical Performance
The developed cloud platform was evaluated using a subset of batteries from the real-world dataset. A total of 200 vehicles with diverse chemistries and operating profiles were uploaded to the system and continuously monitored. The platform successfully maintained data acquisition and algorithm evaluation over a three-month trial. Health-state trajectories were updated on a weekly basis, producing smooth curves over hundreds of cycles. Thermal-runaway warnings were refreshed at the end of every charging and discharging segment. Statistical processing showed a mean execution time of less than 1.8 seconds per vehicle for the multi-modal algorithm. The database query latency remained below 100 ms for the most frequent web requests. The validation results of the platform are summarized in Table 5-2.
| Metric | Value |
|---|---|
| Test duration | 3 months |
| Number of connected vehicles | 200 |
| Average algorithm execution time per vehicle | 1.8 s |
| Database read latency (P95) | 85 ms |
| Web page refresh interval | < 5 s |
| Zero false thermal-runaway warning during normal test period | Yes |
6. Conclusion
Throughout this study, a comprehensive set of methods and a cloud-based platform have been developed to improve the safety and lifecycle reliability of EV battery systems. The main contributions and conclusions are listed as follows.
First, a complete preprocessing pipeline was established for real-world cloud battery data. The pipeline intelligently separates charging, discharging, and resting states, removes outliers with adaptive thresholds, and splits the data into effective segments that can be used for further feature extraction. This preprocessing is crucial for every subsequent algorithm, because low sampling rate and noisy measurements are unavoidable in operational environments. A laboratory experiment based on real-world driving profiles was designed to produce accurate capacity labels. The experiment reproduced the degradation of a realistic 8-series, 2-parallel battery pack, providing a trustworthy validation platform for the SOH algorithm.
Second, an inconsistency-based SOH estimation algorithm was proposed. The algorithm extracts the trimmed reference voltage, aligns cell voltage curves using dynamic time warping, computes a robust Euclidean distance for each cell, and obtains the probability density of the similarity values. The inconsistency index is directly derived from the concentration and span of this density. Validation on five real-world vehicles showed an average Pearson correlation of 0.921 with the capacity trajectory. Quantitative validation on the laboratory pack indicated that the estimation error is below 2% in the entire degradation process. The method is especially attractive for EV battery cloud monitoring because it requires no offline training and imposes minimal computational burden.
Third, a multi-modal machine-learning framework was proposed for thermal-runaway early warning. Three complementary fault features were extracted: optimized trend skewing measurements, charging resistance, and STFT spectrogram images. Convolutional feature extraction followed by KPCA reduces the spectrogram to a scalar feature, and robust normalization removes dimension discrepancy and aging effects. The multi-dimensional recursive diagnostic module iteratively isolates suspicious cells and calculates a distance-based fault score. The algorithm was successfully validated on vehicles with confirmed thermal-runaway events, vehicles with suspected failure, and normal vehicles. The average early-warning time was about 11 days, and no false positive alarms occurred on healthy vehicles. The method is unsupervised, extensible, robust, and capable of dealing with different battery chemistries and operation patterns.
Finally, the engineering deployment of the proposed algorithms was realized by developing a full-stack cloud-based battery safety monitoring platform. MySQL stores the longitudinal EV battery data, Python and Django provide backend logic and algorithm execution, and HTML, CSS, JavaScript and ECharts deliver real-time user interfaces. The platform packs multiple functions including homepage statistics, a searchable vehicle list, global health-status monitoring, a safety-risk page, and detailed individual-cell analysis. The modular design is ready for future extension. In addition, the implementation of security controls, asynchronous processing, and database transaction protection ensures high system availability and data integrity. The positive feedback from the three-month trial confirms the platform’s value as an engineering tool for improving the safety and reliability of modern EV battery systems.
Future work will focus on automatic parameter tuning for the SOH scaling coefficient, incorporation of higher-frequency partial data from edge devices, and expansion of the platform to electrochemical energy-storage stations. Deep-learning models that can be updated continually from fleet data may also be explored, while maintaining the low annotation cost and high interpretability demonstrated in this dissertation.
