Fault prediction method and system for industrial and commercial storage big data, medium and product
By grouping and clustering data center battery packs, a fault association rule base was established, which solved the problem of fault prediction bias caused by the complexity of data center battery packs, and achieved accurate prediction of individual battery failure time, thus ensuring the safe and stable operation of the data center.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-31
- Publication Date
- 2026-04-14
AI Technical Summary
Existing battery failure prediction methods lack versatility and adaptability in data centers, making it difficult to cope with complex and ever-changing battery combinations. This results in low accuracy in failure prediction and an inability to detect and address potential failures in a timely manner.
By acquiring and standardizing the operational data of the target energy storage battery pack, grouping the batteries based on their model and manufacturer identification, extracting performance degradation features, constructing a feature matrix for clustering, establishing a fault association rule base, and matching real-time operational data with the rule base, accurate prediction of individual battery cell failure time can be achieved.
It improves the accuracy and adaptability of fault prediction, enabling timely detection and handling of potential faults, and ensuring the safe and stable operation of the data center.
Smart Images

Figure CN121860134A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing, specifically to a fault prediction method, system, medium, and product for industrial and commercial big data storage. Background Technology
[0002] With the continuous development of industry and commerce, energy storage technology is being used more and more widely in scenarios such as data centers. Data centers deploy a large number of energy storage batteries to provide emergency backup power in the event of power grid failures, ensuring the continuous operation of the data center. If a failure of an energy storage battery cannot be detected and dealt with in a timely manner, the data center will lack a reliable backup power supply at critical moments, causing equipment downtime and business interruption, resulting in huge economic losses.
[0003] To address the aforementioned issues, a fault prediction method based on battery operating data has been proposed. This method involves installing sensors on the battery to collect key battery parameters in real time, transmitting these parameters to a monitoring system, and using machine learning algorithms to build a fault prediction model, thereby achieving early warning of battery faults.
[0004] However, existing battery failure prediction methods still have certain limitations in practical applications in data centers. Data center energy storage batteries are numerous and come in many models, with significant differences leading to diverse failure scenarios. Existing failure prediction methods typically target specific battery models and use fixed parameters for prediction, lacking universality and adaptability. They struggle to cope with the complex and varied battery combinations in data centers, resulting in prediction biases and reduced accuracy. Summary of the Invention
[0005] This application provides a method, system, medium, and product for fault prediction of industrial and commercial big data storage, which can improve the accuracy of fault prediction of industrial and commercial big data storage.
[0006] The first aspect of this application provides a fault prediction method for industrial and commercial big data storage, including: The system acquires the operational data of the target energy storage battery pack from the industrial and commercial data center within the first time period, and cleans and standardizes the operational data to obtain a standard time-series dataset in a preset format. The operational data includes the voltage, available capacity, temperature, and number of charge-discharge cycles of each battery cell in the target energy storage battery pack. The standard time-series dataset is grouped based on the battery model identifier and manufacturer identifier of the target energy storage battery pack to obtain multiple data subsets, and a statistical feature vector reflecting performance degradation is extracted for each data subset. Based on the statistical feature vectors, a feature matrix is constructed, and the data subsets are clustered using the feature matrix to obtain multiple fault prediction units. For each of the aforementioned fault prediction units, a corresponding fault association rule base is established based on the correlation between the pre-fault operating data and the fault occurrence time of the corresponding fault sample. Receive the operating data of each battery cell in the second time period and the fault prediction unit to which each battery cell belongs; The operating data of each battery cell in the second time period are matched with the fault association rule base of the corresponding fault prediction unit. Based on the matching results, the predicted failure time range for each battery cell is determined, and an early warning report corresponding to the predicted failure time range is generated.
[0007] By adopting the above technical solution, a standardized time-series dataset with a unified format can be established by acquiring the operational data of the target energy storage battery pack and performing standardized preprocessing. Then, the standard time-series dataset is grouped according to battery model and manufacturer identifiers, and performance degradation features are extracted to account for the differences in characteristics among different batteries. Multiple fault prediction units are obtained by clustering the feature matrix, and a corresponding fault association rule base is established, enabling targeted analysis of the fault characteristics of different battery types. Finally, by matching the real-time operational data of individual battery cells with the rule base of the corresponding fault prediction unit, the fault time range of each battery cell can be predicted more accurately. This solution, by considering the differences among different batteries and adopting a grouped prediction approach, improves the adaptability of the fault prediction method to the complex and variable battery combinations in data centers. It overcomes the prediction bias problem caused by the uniform prediction method in existing technologies, thereby significantly improving the accuracy of battery fault prediction in industrial and commercial energy storage data centers. This facilitates the timely detection and handling of potential faults and ensures the safe and stable operation of data centers.
[0008] Optionally, the battery model identifier and manufacturer identifier corresponding to each battery cell are extracted; based on the combination of the battery model identifier and the manufacturer identifier, the time-series data of battery cells with the same battery model identifier and the same manufacturer identifier in the standard time-series dataset are taken as the same data subset, resulting in multiple data subsets; for each data subset, the voltage decay rate is calculated by fitting the trend curve of the voltage change over time of the battery cells in the data subset, the capacity decay rate is calculated based on the rate of change of the ratio of the available capacity to the rated initial capacity over time, the cumulative number of times the temperature exceeds the preset safe temperature threshold is counted to obtain the temperature anomaly frequency, and the number of charge-discharge cycles is accumulated to obtain the number of charge-discharge cycles; the voltage decay rate, the capacity decay rate, the temperature anomaly frequency, and the number of charge-discharge cycles are combined into a statistical feature vector corresponding to the data subset.
[0009] Optionally, voltage data and corresponding timestamps of individual battery cells within a first time period are extracted from the data subset; the mapping relationship between the voltage data and the timestamp is linearly fitted using the least squares method to obtain a fitted curve; the slope of the fitted curve within a preset time interval is calculated, and the slope is used as the voltage decay rate of the data subset.
[0010] Optionally, data subsets with similarity values higher than a preset similarity threshold are selected from the feature matrix; a connection graph is constructed using the data subsets as connecting edges and each data subset as a node; connected component analysis is performed on the connection graph to identify each connected component in the connection graph; all data subsets within the same connected component are identified as the same fault prediction unit, resulting in multiple fault prediction units.
[0011] Optionally, fault samples of batteries that have already failed are extracted from the fault prediction unit, and the time of failure occurrence for each fault sample is recorded. For each fault sample, the sequence of running data within a preset time window before the time of failure occurrence is extracted as pre-fault running data. Feature extraction is performed on the pre-fault running data to obtain a pre-fault feature set, which includes voltage change rate, temperature peak, and charge / discharge power fluctuation coefficient. A preset association rule mining algorithm is used to analyze the association relationship between the pre-fault feature set and the time of failure occurrence, and association rules that satisfy minimum support and minimum confidence are extracted. The trigger records of the pre-fault feature set in the association rules are used as running data conditions, and the statistical distribution of the time of failure occurrence is used as the fault time range to constitute the fault association rule.
[0012] Optionally, all nodes in the connection graph are marked as unvisited; any unvisited node is selected as the starting node, and all associated nodes directly or indirectly connected to the starting node are traversed; the traversed associated nodes are marked as visited, and the nodes marked as visited are identified as the same connected component; the process of selecting the starting node and traversing is repeated until all nodes in the connection graph have been visited, thus obtaining each connected component in the connection graph.
[0013] Optionally, the failure time prediction results of successfully matched battery cells are obtained, and the minimum value of the lower bound of the failure time prediction results is determined as the earliest failure time of the industrial and commercial data center; the overlapping time range of all failure time prediction results is extracted, and the time point with the highest overlap frequency is determined as the expected failure time of the industrial and commercial data center; the failure risk level is calculated based on the proportion of the number of successfully matched battery cells to the total number of battery cells; a maintenance time window is determined based on a preset safety margin time reserved in advance of the earliest failure time; the earliest failure time, the expected failure time, the failure risk level, the successfully matched battery cells, and the maintenance time window are combined to form the failure early warning report.
[0014] Secondly, embodiments of this application provide a fault prediction system for industrial and commercial big data storage. The fault prediction system for industrial and commercial big data storage includes: one or more processors and a memory; the memory is coupled to the one or more processors, and the memory is used to store computer program code, the computer program code including computer instructions, and the one or more processors call the computer instructions to cause the fault prediction system for industrial and commercial big data storage to perform the method described in the first aspect and any possible implementation thereof.
[0015] Thirdly, embodiments of this application provide a computer-readable storage medium including instructions that, when executed on a fault prediction system for industrial and commercial big data storage, cause the fault prediction system for industrial and commercial big data storage to perform the method described in the first aspect and any possible implementation thereof.
[0016] Fourthly, embodiments of this application provide a computer program product containing instructions that, when the computer program product is run on a fault prediction system for industrial and commercial big data storage, causes the fault prediction system for industrial and commercial big data storage to execute the method described in the first aspect and any possible implementation thereof.
[0017] In summary, one or more technical solutions provided in this application have at least the following technical effects or advantages: By adopting the above technical solution, a standardized time-series dataset with a unified format can be established by acquiring the operational data of the target energy storage battery pack and performing standardized preprocessing. Then, the standard time-series dataset is grouped according to battery model and manufacturer identifiers, and performance degradation features are extracted to account for the differences in characteristics among different batteries. Multiple fault prediction units are obtained by clustering the feature matrix, and a corresponding fault association rule base is established, enabling targeted analysis of the fault characteristics of different battery types. Finally, by matching the real-time operational data of individual battery cells with the rule base of the corresponding fault prediction unit, the fault time range of each battery cell can be predicted more accurately. This solution, by considering the differences among different batteries and adopting a grouped prediction approach, improves the adaptability of the fault prediction method to the complex and variable battery combinations in data centers. It overcomes the prediction bias problem caused by the uniform prediction method in existing technologies, thereby significantly improving the accuracy of battery fault prediction in industrial and commercial energy storage data centers. This facilitates the timely detection and handling of potential faults and ensures the safe and stable operation of data centers. Attached Figure Description
[0018] Figure 1 This is a schematic diagram of a fault prediction process for industrial and commercial big data storage disclosed in an embodiment of this application; Figure 2 This is another schematic diagram of a fault prediction process for industrial and commercial big data disclosed in an embodiment of this application; Figure 3 This is a schematic diagram of the structure of a fault prediction system for industrial and commercial big data storage provided in an embodiment of this application.
[0019] Explanation of reference numerals in the attached drawings: 301, Central Processing Unit; 302, Read-Only Memory; 303, Random Access Memory; 304, Bus; 305, Input / Output Interface; 306, Input Section; 307, Output Section; 308, Storage Section; 309, Communication Section; 310, Driver; 311, Removable Media. Detailed Implementation
[0020] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments.
[0021] In the description of the embodiments of this application, the words "for example" or "for instance" are used to indicate examples, illustrations, or explanations. Any embodiment or design that is described as "for example" or "for instance" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design options. Rather, the use of the words "for example" or "for instance" is intended to present the relevant concepts in a specific manner.
[0022] In the description of the embodiments of this application, the term "multiple" means two or more. For example, multiple systems means two or more systems, and multiple screen terminals means two or more screen terminals. Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the indicated technical features. Thus, a feature defined with "first" or "second" may explicitly or implicitly include one or more of that feature. The terms "comprising," "including," "having," and variations thereof all mean "including but not limited to," unless otherwise specifically emphasized.
[0023] This application provides a fault prediction method for industrial and commercial big data storage, referring to... Figure 1 , Figure 1 This is a flowchart illustrating a fault prediction method for industrial and commercial big data storage provided in an embodiment of this application. This fault prediction method for industrial and commercial big data storage is applied to a system, which can execute programs. The fault prediction method for industrial and commercial big data storage includes steps 101 to 107, as follows: Step 101: Obtain the operating data of the target energy storage battery pack from the industrial and commercial data center during the first time period, and clean and standardize the operating data to obtain a standard time-series dataset in a preset format. The operating data includes the voltage, available capacity, temperature and number of charge and discharge cycles of each battery cell in the target energy storage battery pack.
[0024] Industrial and commercial data centers refer to specialized facilities that provide data storage and processing services for industrial and commercial enterprises, equipped with energy storage battery packs as backup power. The target energy storage battery pack is a power system composed of multiple battery cells connected in series and parallel, with each battery cell being an independent energy storage unit. Operating data includes four key parameters: voltage (the potential difference across the battery cell, measured in volts (V)); usable capacity (the actual amount of electricity the battery can store, measured in ampere-hours (Ah); temperature (the surface temperature of the battery during operation, measured in degrees Celsius (°C)); and charge / discharge cycle count (the number of complete charge-to-discharge cycles the battery completes).
[0025] Specifically, the data acquisition module of the Battery Management System (BMS) first collects the operating data of individual battery cells at a fixed sampling frequency (e.g., once every 5 minutes). The collected data undergoes cleaning processing, including: deleting obvious outliers (such as data with voltages of 0 or far exceeding the rated value), filling in missing values (using linear interpolation to fill in data gaps), and eliminating noise (using moving average filtering for smoothing). Then, standardization preprocessing is performed: voltage data is normalized to fall within the [0, 1] interval by subtracting the minimum value from the original value and dividing by the range; temperature data is centered by subtracting the average value to make the mean 0; capacity data is normalized to the maximum and minimum values; and the number of charge-discharge cycles is cumulatively counted. Finally, the processed data is stored in a preset time-series data format, including: data acquisition timestamp, battery cell number, and the four standardized parameter values. This data preprocessing ensures the quality and consistency of the data used in subsequent analysis.
[0026] Step 102: Based on the battery model identifier and manufacturer identifier of the target energy storage battery pack, the standard time series dataset is grouped to obtain multiple data subsets, and statistical feature vectors reflecting performance degradation are extracted for each data subset.
[0027] A battery model identifier is a unique identification code assigned by the manufacturer for a specific battery specification. For example, "18650" indicates a cylindrical battery with a diameter of 18 mm and a height of 65 mm. A manufacturer identifier is a unique identifier for the manufacturer that produces the battery, such as "A123" or "CATL". A data subset refers to a collection of battery cells with the same model number and manufacturer. A statistical feature vector is a multidimensional set of numerical values reflecting the battery's performance degradation state, containing multiple quantitative indicators. Performance degradation refers to the phenomenon of a battery's performance parameters gradually decreasing over time during use, such as capacity decay and increased internal resistance.
[0028] Specifically, the model and manufacturer identifiers of each battery cell are first extracted from the standard time-series dataset to establish a model-manufacturer mapping table. For battery cells with the same model and manufacturer identifiers, their time-series data are merged into the same subset. For example, all battery data with model "18650" and manufacturer "A123" are grouped into one subset, and battery data with model "21700" and manufacturer "CATL" are grouped into another subset. Feature extraction is then performed on each subset: voltage decay rate is calculated by fitting a voltage-time curve using the least squares method; the percentage decay relative to the initial capacity is calculated based on capacity data; the frequency of temperature anomalies is obtained by counting the number of times the temperature exceeds the safety threshold; and the cumulative number of charge-discharge cycles is calculated. These calculated feature values are combined into a statistical feature vector to characterize the overall performance state of this type of battery. Each data subset generates a corresponding feature vector, which forms the basis for subsequent cluster analysis. This grouping extraction method ensures that the performance characteristics of batteries of the same type can be accurately statistically represented.
[0029] Step 103: Construct a feature matrix based on each statistical feature vector, and cluster each data subset using the feature matrix to obtain multiple fault prediction units.
[0030] A feature matrix is a two-dimensional data structure composed of multiple statistical feature vectors arranged in rows. Each row represents a feature of a subset of data, and each column represents a feature dimension. Clustering is a data analysis method that groups subsets of data with similar features based on the distance or similarity between features. Fault prediction units refer to battery packs with similar performance characteristics and fault modes, which exhibit similar characteristic change trends during performance degradation.
[0031] Specifically, firstly, the statistical feature vector of each data subset is used as a row in a matrix to construct an m×n dimensional feature matrix, where m is the number of data subsets and n is the number of feature dimensions (including voltage decay rate, capacity decay rate, frequency of temperature anomalies, and number of charge-discharge cycles). The feature matrix is then standardized using the Z-score standardization method, which calculates the mean μ and standard deviation σ for each feature dimension, converting the original value x to (x-μ) / σ. The similarity between data subsets is calculated using cosine similarity: for feature vectors a and b, the similarity is the dot product of the two vectors divided by the product of their magnitudes, i.e., cos(θ) = (a·b) / (|a|·|b|). A similarity threshold (e.g., 0.8) is set; when the similarity between two data subsets is greater than the threshold, they are considered similar subset pairs. A connection graph is constructed based on these similar subset pairs, where nodes represent data subsets and edges represent similarity relationships. Connectivity analysis is performed on the connection graph, using a depth-first search algorithm to identify all connected components. Data subsets belonging to the same connected component are grouped into a fault prediction unit. Batteries within these units exhibit similar performance characteristics and degradation patterns. This clustering method integrates originally discrete data subsets into several fault prediction units with similar performance characteristics, providing a foundation for subsequent fault prediction.
[0032] Step 104: For each fault prediction unit, establish a corresponding fault association rule base based on the correlation between the pre-fault operation data and the fault occurrence time of the corresponding fault sample of the fault prediction unit.
[0033] A fault sample refers to a battery sample in the fault prediction unit that has already failed, containing its complete operational record. Pre-fault operational data refers to battery parameter data within a specific time window before the fault occurs, including changes in indicators such as voltage, temperature, and capacity. The fault occurrence time refers to the moment when battery performance indicators first exceed the safety threshold. The correlation describes the mapping relationship between changes in pre-fault characteristic parameters and the fault occurrence time. The fault correlation rule base is a collection of multiple rules, each describing the correspondence between a specific parameter pattern and the fault time.
[0034] Specifically, the modeling process is performed for each fault prediction unit: 1) Data extraction: All fault samples are selected from the prediction unit, and the fault time tf of each sample is recorded. For each fault sample, the operating data sequence of the 24 hours before the fault occurs is extracted, with a sampling interval of 5 minutes, forming a feature sequence of 288 time points. 2) Feature calculation: Three types of features are calculated for the extracted data sequence: voltage change rate (mean and standard deviation of voltage drop per hour), temperature peak (highest temperature value per hour), and charging and discharging power fluctuation coefficient (power standard deviation divided by mean). 3) Rule extraction: The Apriori algorithm is used for association rule mining, with the support threshold set to 0.3 and the confidence threshold set to 0.8. The rule form is: if feature X satisfies condition C within the time window [t1, t2], then the fault occurrence time is within the interval [tf-δ, tf+δ], where δ is the prediction error range. 4) Rule selection: The lift of each rule is calculated, and only rules with a lift greater than 1.5 are retained. 5) Rule Organization: The filtered rules are grouped and stored according to feature type. Each group of rules includes: trigger condition (feature value range), time window, prediction time interval, and rule confidence level. For example, a specific rule is: {Condition: "Average voltage drop > 0.05V and peak temperature > 45℃ within 1 hour", Time window: "12-24 hours before the fault", Prediction interval: "within 48±6 hours", Confidence level: 0.85}. This rule extraction method comprehensively considers the changing characteristics of multiple performance indicators and establishes a quantifiable fault prediction standard.
[0035] In one possible implementation, a corresponding fault association rule base is established based on the correlation between the pre-fault operating data and the fault occurrence time of the fault sample corresponding to the fault prediction unit. Specifically, this includes steps 1041-1045, as follows: Step 1041: Extract fault samples of batteries that have failed from the fault prediction unit and record the time of failure for each fault sample.
[0036] Battery failure refers to a state in which battery performance parameters exceed the safe operating range, including: voltage below the termination voltage (e.g., 2.5V), capacity below 80% of rated capacity, internal resistance increasing by more than 200% of the initial value, and temperature exceeding 55°C. Fault samples refer to individual battery cells that have experienced the above-mentioned fault states and their complete operational records. The fault occurrence time refers to the first time the fault state is detected, recorded as a timestamp accurate to the second. Fault samples within the fault prediction unit refer to a set of batteries with similar performance characteristics that have already experienced a fault within the same connected component.
[0037] Specifically, 1) Fault Determination: Traverse the operating data of all battery cells in the fault prediction unit and set a fault determination condition array: [voltage below 2.5V, capacity below 80% of rated capacity, internal resistance exceeding 3 times the initial value, temperature above 55℃]. 2) Sample Screening: For each battery cell, check its complete operating data sequence. Perform fault detection on the data record at each time point according to a 5-minute sampling interval: check whether the data record at that moment meets any of the fault determination conditions. If it does, mark the battery as a fault sample and record that time point as the time of fault occurrence. 3) Data Recording: Create a fault sample list, each element containing: battery number, fault type, fault occurrence time, and pre-fault state data. For example, a fault sample record is: {battery number: "001", fault type: "low voltage", fault time: "February 6, 2025, 14:30", pre-fault state: [related data]}. 4) Sample Summary: Statistically analyze the distribution characteristics of fault samples within the prediction unit, including: fault type distribution, fault occurrence time distribution, and fault sample proportion. This systematic method for extracting fault samples ensures the acquisition of complete fault case data, providing a reliable data foundation for subsequent rule mining.
[0038] Step 1042: For each fault sample, extract the sequence of running data within a preset time window before the fault occurred, as the running data before the fault.
[0039] A preset time window refers to a fixed period of time, typically 24 hours, before a failure occurs, used to capture performance change trends before the failure. The operational data sequence is a set of battery parameter data collected at fixed time intervals within the preset time window, including continuous records of indicators such as voltage, temperature, and capacity. Pre-failure operational data specifically refers to the set of key parameter data reflecting the gradual degradation of battery performance within the preset time window. These data record the trajectory of battery performance changes before the failure occurs.
[0040] Specifically, 1) Time window division: For each fault sample, a 24-hour window is calculated backward from the fault occurrence time as the data extraction window. A fixed sampling interval of 5 minutes is used to divide the time window into 288 sampling points. 2) Data extraction: At each sampling point, the following parameters are recorded: single-cell voltage value (accurate to 0.001V), surface temperature value (accurate to 0.1℃), current available capacity value (accurate to 0.1Ah), charge / discharge status marker (0 indicates inactivity, 1 indicates charging, -1 indicates discharging), and charge / discharge current value (accurate to 0.1A). 3) Data integrity check: The extracted data sequence is checked for missing values. For missing data, linear interpolation is used to fill in the missing values. The interpolation formula is: Missing value = Previous time value + (Next time value - Previous time value) × (Time of missing point - Time of previous time) / (Time of next time - Time of previous time). 4) Data Storage: The processed data sequence is stored in chronological order, with each record formatted as: [timestamp, voltage value, temperature value, capacity value, charge / discharge status, current value]. For example, a record at a certain moment might be [2025-11-06 14:25:00, 3.652V, 32.5℃, 95.6Ah, 1, 2.5A]. This data extraction method ensures the acquisition of complete performance change data before the fault occurred, providing a foundation for subsequent feature extraction. By setting fixed time windows and sampling intervals, the consistency and comparability of different fault sample data are ensured.
[0041] Step 1043: Extract features from the pre-fault operating data to obtain the pre-fault feature set, which includes voltage change rate, temperature peak value, and charging / discharging power fluctuation coefficient.
[0042] Voltage change rate refers to the magnitude of battery voltage change per unit time, measured in hourly voltage changes. Peak temperature refers to the highest temperature value observed within a specific time period. Charge / discharge power fluctuation coefficient is the ratio of power standard deviation to average power, reflecting the relative intensity of power fluctuations. The pre-fault feature set is a dataset composed of these three types of features, used to quantitatively describe the battery's performance changes before a fault occurs. Feature extraction is the process of calculating characteristic parameters reflecting performance changes from raw operating data.
[0043] Specifically, the 24-hour time window is first divided into 24 one-hour sub-windows for feature extraction. Each sub-window contains data records from 12 sampling points. For calculating the voltage change rate, the voltage difference between adjacent sampling points is taken to obtain 11 voltage change values. The mean of these change values is calculated as the voltage change rate ΔV for that hour, and the standard deviation σv is calculated to characterize the stability of the voltage change, ultimately resulting in 24 sets of voltage change features. In temperature feature extraction, the maximum value is found from the 12 temperature sampling points in each sub-window as the temperature peak Tmax, and the duration of this temperature is recorded, forming 24 sets of temperature features. For charging and discharging power fluctuation features, the power P = V × I is calculated for each sampling point using the voltage value V and the current value I. The average value Pavg and standard deviation σp of the 12 power values are calculated within each sub-window. The power fluctuation coefficient is calculated according to the formula CV = σp / Pavg, resulting in 24 sets of power fluctuation features. Finally, all features are integrated into a matrix, with each row corresponding to an hourly interval and containing complete feature records, such as [14:00-15:00, -0.05V / h, 0.002V, 42.5℃, 15min, 0.25]. The feature set extracted in this way comprehensively reflects the battery's performance changes before failure, providing a quantitative basis for establishing subsequent failure prediction rules. The extracted features have clear physical meaning and can effectively capture key indicators of battery performance degradation.
[0044] Step 1044: Use a preset association rule mining algorithm to analyze the association between the pre-fault feature set and the fault occurrence time, and extract association rules that satisfy minimum support and minimum confidence.
[0045] Association rule mining is a data analysis method used to discover relationships between variables in large datasets. This step employs the Apriori algorithm. Support refers to the frequency of a given feature combination in the total sample, calculated as the number of samples containing that feature combination divided by the total number of samples. Confidence refers to the probability of a failure occurring given the presence of a feature combination, calculated as the number of samples satisfying both the feature combination and the failure occurrence, divided by the number of samples containing that feature combination. Association rules describe the correspondence between feature combinations and failure times, in the form of "if feature combination A occurs, then a failure occurs at time B".
[0046] Specifically, the feature data is first discretized: the voltage change rate is segmented at intervals of 0.01 V / h, the temperature peak is segmented at intervals of 1℃, and the power fluctuation coefficient is segmented at intervals of 0.05. The minimum support is set to 0.3, and the minimum confidence level to 0.8. For each feature dimension, the frequency of occurrence in different value intervals is statistically analyzed to generate frequent item sets. For example, the support for the voltage change rate in the interval [-0.06, -0.05] is 0.35, and the support for the temperature peak in the interval [43, 44]℃ is 0.32. The item sets that meet the minimum support are paired, and the support of the combinations is calculated to generate frequent binomial sets. For example, the support for "voltage change rate in [-0.06, -0.05] and temperature peak in [43, 44]℃" is 0.31. For feature combinations that meet the support requirements, their conditional probabilities with different fault time intervals are calculated. For example, the probability of a fault occurring within 48 hours after the occurrence of a feature combination is 0.85. Rules that meet the minimum confidence level are selected to form a rule set. The final rule form is: when the combination of voltage change rate, peak temperature, and power fluctuation coefficient falls within a specific interval, the probability of a fault occurring within a specified time range is predicted. This rule mining method establishes a quantitative correspondence between feature patterns and fault occurrence time, providing a reliable criterion for fault prediction.
[0047] Step 1045: Use the trigger records of the pre-fault feature set in the association rules as the running data conditions, and the statistical distribution of the fault occurrence time as the fault time range to form fault association rules.
[0048] The trigger record of the pre-fault feature set refers to the combination of conditions where the feature values fall within a specific range, including the range of voltage change rate, peak temperature, and power fluctuation coefficient. Operating data conditions refer to the combination of feature thresholds that trigger fault warnings. The statistical distribution of fault occurrence time refers to the probability distribution of the time interval from feature condition triggering to fault occurrence. The fault time range is determined by the median and confidence interval of the statistical distribution. Fault association rules are prediction rules formed by combining feature trigger conditions and corresponding fault time ranges.
[0049] Specifically, in the rule construction process, the first step is to extract feature triggering conditions for each association rule. Trigger thresholds are set for voltage change rate, peak temperature, and power fluctuation coefficient. For example, the triggering conditions for Rule 1 are: voltage change rate less than -0.05V / h and duration exceeding 2 hours, peak temperature greater than 43℃ and duration exceeding 30 minutes, and power fluctuation coefficient greater than 0.25. Then, the distribution of time intervals from the fulfillment of the triggering conditions to the occurrence of the fault is statistically analyzed. The fault occurrence times of all samples satisfying the rule are statistically analyzed, and the median of the time interval is calculated as the prediction time point, with the 15th and 85th percentiles used as the prediction interval boundaries. For example, the statistical results of Rule 1 show that 50% of faults occur within 48 hours after triggering, 15% occur within 36 hours, and 85% occur within 60 hours. Therefore, the fault time range for this rule is set to 36-60 hours, and the prediction time point is 48 hours. The triggering conditions and time ranges are combined to form a complete fault association rule. The final rule format is: when the feature triggering conditions are met, it is predicted that the battery will fail within the specified time range, along with the rule's confidence value. For example, the complete statement of Rule 1 is: when the voltage change rate, peak temperature, and power fluctuation coefficient meet the specified threshold requirements, the battery is predicted to fail within 36-60 hours, with a confidence level of 0.85. This rule construction method combines qualitative characteristic triggering conditions with quantitative time prediction to form an operable fault prediction standard.
[0050] Step 105: Receive the operating data of each battery cell in the second time period and the fault prediction unit to which each battery cell belongs.
[0051] The second time period refers to the current period of fault prediction, distinct from the first time period (historical data period). The operational data of individual battery cells includes real-time collected parameters such as voltage, temperature, capacity, and charge / discharge status. A fault prediction unit refers to a group of batteries with similar performance characteristics obtained through cluster analysis. The affiliation refers to the correspondence between each battery cell and its specific fault prediction unit based on its characteristics.
[0052] Specifically, operational data is received in real time through a data acquisition system. The system collects a set of data records from each battery cell at fixed intervals of 5 minutes, including the following parameters: cell number, acquisition timestamp, voltage value (accurate to 0.001V), surface temperature value (accurate to 0.1℃), current available capacity value (accurate to 0.1Ah), charge / discharge status marker (0-resting, 1-charging, -1-discharging), and charge / discharge current value (accurate to 0.1A). Simultaneously, the system reads the prediction unit number corresponding to each battery cell from the prediction unit allocation table. A data buffer is established to store the operational data for the most recent 24 hours, updated every 5 minutes using a sliding window method. The data records use a two-dimensional table structure, with rows representing different time points and columns representing different parameters. Data for each cell is stored independently. For example, the complete record of a battery cell at a certain moment might be: [001, 2025-11-06 15:00:00, 3.642V, 33.5℃, 94.8Ah, 1, 2.3A, prediction unit 2]. This data reception and storage method ensures real-time acquisition of battery operating status and establishes a correspondence with the prediction unit, providing a data foundation for subsequent rule matching.
[0053] Step 106: Match the operating data of each battery cell in the second time period with the fault association rule library of the corresponding fault prediction unit.
[0054] The second time period's operational data refers to the battery parameter records collected within the current time window, including continuous data from the most recent 24 hours. The fault association rule base is a set of rules established within the prediction unit; each rule includes a feature trigger condition and a corresponding fault time prediction range. Rule matching refers to the process of comparing the feature values of the operational data with the trigger conditions in the rule base. The matching result indicates whether the operational data meets the trigger conditions of a certain rule.
[0055] Specifically, firstly, feature values are extracted from 24-hour operating data: the voltage change rate sequence for a 24-hour window is calculated, with 12 sampling points taken for each window to calculate the mean and standard deviation of voltage change; the temperature peak sequence and peak duration for the 24 windows are statistically analyzed; and the power fluctuation coefficient sequence for the 24 windows is calculated. A sliding detection is performed on the extracted feature sequences: with a 1-hour step, the feature sequences of the most recent N hours (N from 1 to 24) are checked to see if they meet the triggering conditions in the rule base. Rule matching uses a hierarchical judgment method, first checking if a single feature exceeds a threshold, such as whether there are multiple consecutive values less than -0.05V / h in the voltage change rate sequence; then checking for multi-feature combinations, such as a rapid voltage drop accompanied by a temperature increase. When the feature value of a certain time window meets the triggering condition of a rule, the triggering time and the corresponding rule number are recorded. Multiple rules may be triggered for the same battery; all triggered rules and their confidence levels are recorded. For example, a battery's characteristic values at 15:00 triggered Rule 1: the voltage change rate for the past two hours was less than -0.05V / h, the temperature peak exceeded 43℃ for more than 30 minutes, and the power fluctuation coefficient was greater than 0.25. This rule predicts that the battery will fail within 36-60 hours, with a confidence level of 0.85. This matching method enables real-time monitoring of the battery's operating status and timely detection of potential failure risks through continuous comparison with the rule base.
[0056] Step 107: Based on the matching results, determine the predicted failure time range for each battery cell and generate an early warning report corresponding to the predicted failure time range.
[0057] The matching result refers to the set of rules triggered after each battery cell is compared with the rule base, along with its timestamp. The fault time prediction range is determined by the time interval corresponding to the triggered rule, including the earliest and latest fault times. The early warning report is a system-generated document containing detailed fault prediction information, such as the expected fault time, risk level, and number of batteries involved. The industrial and commercial data center refers to the operating location of the entire energy storage system, encompassing multiple energy storage battery packs. The maintenance time window refers to the recommended maintenance and repair period, typically before the earliest predicted fault time.
[0058] Specifically, firstly, the rule triggering status of all individual battery cells is summarized, the number of batteries triggering any rule is counted, and the triggering ratio is calculated. Based on the triggering time and the rule prediction range, the failure prediction interval for each battery is determined. The minimum start time of all prediction intervals is taken as the earliest failure time of the data center, used to determine the maintenance window. The overlap of all prediction intervals is analyzed, and the time point with the highest overlap frequency is determined as the expected failure time. Risk levels are set based on the proportion of triggering batteries to the total: below 10% is low risk, 10%-30% is medium risk, and above 30% is high risk. A maintenance time window is set 24 hours in advance of the earliest failure time. An early warning report is generated, which includes: report time, earliest failure time, expected failure time, risk level, list of batteries triggering the rule, prediction time range for each battery, and recommended maintenance time window. For example, a data center's early warning report shows: the report was generated at 16:00 on November 6, 2025; the earliest expected failure time is 14:00 on November 8; the expected peak failure time is 10:00 on November 9; the current risk level is medium (trigger rate 25%); the recommended maintenance window is from 14:00 on November 7 to 14:00 on November 8; 30 batteries are involved in the fault warning, listed in the [Battery Number List], with detailed prediction ranges for each battery [Detailed Data]. This early warning mechanism provides clear fault prediction information and maintenance suggestions, facilitating timely preventative measures by operations and maintenance personnel.
[0059] In one possible implementation, based on the matching results, the predicted failure time range for each battery cell is determined, and a warning report corresponding to the predicted failure time range is generated. Specifically, this includes steps 1071-1073, as follows: Step 1071: Obtain the failure time prediction results of the successfully matched battery cells, and determine the minimum value of the lower bound of the failure time prediction results as the earliest failure time of the industrial and commercial data center.
[0060] A successfully matched battery cell refers to a battery that has triggered at least one rule in the fault association rule base. The fault time prediction result is the fault occurrence time interval obtained for each battery cell based on the triggering rules. The lower bound of the fault time is the starting time point of the prediction time interval, corresponding to the earliest possible time of failure. The earliest fault time is the earliest lower bound of the fault time among all predicted batteries, representing the earliest possible time point of failure in the entire data center.
[0061] Specifically, firstly, all battery cell information triggering the rules is extracted from the rule matching results. For each battery cell, the predicted time intervals corresponding to all rules it triggers are collected. The predicted time interval is calculated from the time range defined in the rule and the trigger time. The calculation method is as follows: the start time of the interval equals the trigger time plus the shortest predicted time defined by the rule, and the end time of the interval equals the trigger time plus the longest predicted time defined by the rule. When a battery triggers multiple rules, the union of all rule prediction intervals is taken as the predicted time range for that battery. A timeline array is created, and the start times of the prediction intervals for all batteries are arranged in chronological order. The first time point in the timeline array is selected as the earliest failure time in the data center. For example: Battery A triggers rule one at 15:00 on November 6, XXXX, predicting a failure within 36-60 hours, then its prediction interval is from 3:00 on November 8 to 27:00 on November 8; Battery B triggers rule two at 16:00 on November 6, predicting a failure within 24-48 hours, then its prediction interval is from 16:00 on November 7 to 16:00 on November 8. Comparing the start times of the two intervals, 16:00 on November 7th is earlier than 3:00 on November 8th. Therefore, the earliest possible failure time for the data center is determined to be 16:00 on November 7th. This method identifies the earliest point in time requiring attention for the entire system by aggregating all predicted battery timing information.
[0062] Step 1072: Extract the overlapping time range of all failure time prediction results, and determine the time point with the highest overlap frequency as the expected failure time of the industrial and commercial data center.
[0063] The failure time prediction result is a set of predicted failure time intervals for each battery cell. Overlapping time intervals refer to the time periods where multiple prediction time intervals overlap. Overlap frequency refers to how many prediction intervals a given time point is included in, reflecting the concentration of failures at that time point. The predicted failure time is the time point when the overlap frequency reaches its maximum, representing the moment when the most batteries are predicted to fail simultaneously.
[0064] Specifically, the timeline is first divided into a sequence of time points at 5-minute intervals, ranging from the earliest failure time to the latest end time of all predicted intervals. A frequency statistics array is created to record the overlap count for each time point. For each predicted battery's time interval, the frequency value of all time points between its start and end times is incremented by 1. For example, if battery A's predicted interval is from 10:00 to 14:00 on November 8th, the frequency value of all time points (48 points in total) within that time period is incremented by 1; the same applies to battery B's predicted interval, from 12:00 to 16:00 on November 8th. Thus, the time points from 12:00 to 14:00 on November 8th are counted twice, while other time points are counted once. After counting all predicted batteries, the frequency statistics array is iterated to find the time point with the highest frequency. If multiple times have the same highest frequency, the median of these times is taken as the predicted failure time. In the example above, the overlap frequency at 13:00 on November 8th is the highest, and this is determined as the predicted failure time for the data center. This statistical method identifies the time points where fault predictions are most concentrated, providing key time nodes for maintenance planning. By analyzing the distribution characteristics of overlapping intervals, the degree of temporal concentration of fault occurrences can also be assessed, helping to determine the reliability of fault predictions.
[0065] Step 1073: Calculate the fault risk level based on the proportion of successfully matched battery cells to the total number of battery cells.
[0066] The number of successfully matched battery cells refers to the number of batteries that triggered the fault association rule. The total number of battery cells is the total number of all operating batteries in the data center. The ratio is the percentage obtained by dividing the former by the latter, reflecting the proportion of potentially faulty batteries. The fault risk level is a risk level classified according to this ratio, used to represent the overall fault risk status of the current system. Fault warnings are based on the risk level and corresponding preventive measures are taken.
[0067] Specifically, first, the number of all battery cells in the data center is counted, denoted as N; the number of batteries triggering the rules is counted, denoted as M; the trigger ratio R = M / N × 100% is calculated. Risk level classification standards are set based on the trigger ratio: when R < 10%, it is determined to be a low-risk level, represented by the number 1; when 10% ≤ R < 30%, it is determined to be a medium-risk level, represented by the number 2; when R ≥ 30%, it is determined to be a high-risk level, represented by the number 3. For example, a data center has 200 battery cells, and currently 45 batteries have triggered fault warnings. The calculated trigger ratio R = 45 / 200 × 100% = 22.5%, falling within the 10%-30% range, and the current system is determined to be at a medium-risk level (level 2). The risk level classification comprehensively considers the fault scale and system redundancy, providing a quantitative risk assessment basis for operation and maintenance decisions. When the risk level is high, it indicates that the system may face the risk of clustered failures, requiring timely maintenance and repair.
[0068] Step 1074: Based on the earliest failure time, reserve a preset safety margin time to determine the maintenance time window; combine the earliest failure time, the expected failure time, the failure risk level, the successfully matched battery cells, and the maintenance time window to form a fault warning report.
[0069] The safety margin time is the maintenance preparation time reserved before the earliest failure time, usually set to 24 hours. The maintenance time window refers to the time range within which maintenance operations are recommended, starting from the earliest failure time minus the safety margin time and ending at the earliest failure time. A fault warning report is a complete document containing key fault prediction information, integrating time prediction, risk assessment, and maintenance recommendations. All content in the warning report is organized according to a standard format for easy understanding and decision-making by operations and maintenance personnel.
[0070] Specifically, the maintenance time window is first determined based on the earliest failure time. Let the earliest failure time be denoted as Tf, and the safety margin time be set to 24 hours. Then, the start time of the maintenance time window is Ts = Tf - 24 hours, and the end time is Te = Tf. Next, a standard-format fault warning report is generated. The report content is organized according to a fixed structure: the first part is basic report information, including the report generation time and report number; the second part is time information, including the earliest failure time, the expected failure time, and the maintenance time window, accurate to the hour; the third part is risk assessment information, including the risk level (levels 1-3), the number of triggered batteries, and their percentage; the fourth part is a list of fault warning batteries, listing the battery numbers of all triggered rules and their predicted time ranges; and the fifth part is maintenance recommendations, including suggested maintenance times and precautions. For example, a warning report shows: Report number WRXXXX1106001, generated at 16:00 on November 6th, XXXX; the earliest failure time was 14:00 on November 8th, and the expected concentrated failure time was 10:00 on November 9th; the recommended maintenance time window is from 14:00 on November 7th to 14:00 on November 8th; the current risk level is level 2 (medium risk), with a total of 45 batteries triggering the fault warning, accounting for 22.5%; the list of warning batteries [battery number: predicted time range]: BAT001: 14:00 on November 8th to 14:00 on November 9th, BAT002: 16:00 on November 8th to 16:00 on November 9th...; it is recommended to complete the maintenance within the maintenance time window, focusing on checking the voltage and temperature abnormalities of the warning batteries. This standardized warning report format ensures the completeness and readability of the information, providing a systematic basis for maintenance decisions.
[0071] In the above embodiments, a basic fault prediction framework was implemented through historical data analysis, feature extraction, and rule mining. To further improve the adaptability of fault prediction for multiple battery types and reduce the impact of battery type differences on prediction accuracy, this application also provides another fault prediction method for industrial and commercial storage big data. This method intelligently adjusts the clustering strategy by identifying changes in battery feature patterns and analyzing the similarity relationship between features, enabling the system to more accurately handle the prediction needs of complex operating conditions and heterogeneous battery combinations. The following section combines... Figure 2 Another fault prediction method for industrial and commercial big data storage in this application embodiment is described below: Please see Figure 2 This is another flowchart illustrating a fault prediction method for industrial and commercial big data storage in this application embodiment.
[0072] Step 201: Select data subsets with similarity values higher than a preset similarity threshold from the feature matrix; construct a connection graph with each data subset as a node, using the data subset pairs as connecting edges.
[0073] Similarity score is a numerical indicator that measures the degree of similarity between the feature vectors of two data subsets. Its value ranges from [0, 1], with values closer to 1 indicating greater similarity. The similarity threshold is a critical value used to determine whether two data subsets have sufficient similarity, typically set between 0.8 and 0.9. A data subset pair refers to a combination of two data subsets with a similarity higher than the threshold. A connection graph is a graph structure composed of nodes and edges. Nodes represent specific objects, and edges represent relationships between objects. In this step, a node represents a data subset, and an edge represents a high similarity relationship between two data subsets.
[0074] Specifically, the similarity between any two data subsets in the feature matrix is calculated first. Let the feature matrix be M, containing n data subsets, each with k feature dimensions. For data subsets i and j (i, j ∈ [1, n]), their feature vectors are Vi and Vj, respectively. Their cosine similarity is calculated as: sim(Vi, Vj) = (Vi·Vj) / (||Vi||·||Vj||). Here, Vi·Vj is the vector dot product, and ||Vi|| and ||Vj|| are the Euclidean norms of the vectors, respectively. For n data subsets, n(n-1) / 2 similarity calculations are required. The calculated similarity values are compared with a preset threshold (e.g., 0.85), and all data subset pairs with similarities greater than the threshold are selected. An empty connection graph G is created, and all data subsets are added to G as nodes of the graph. Then, the selected high-similarity data subsets are traversed. For each pair (i, j), an undirected edge connecting node i and node j is added to graph G, with the edge weight set to the corresponding similarity value. The resulting connectivity graph reflects the network structure of similarity relationships between data subsets, providing a foundation for subsequent connected component analysis.
[0075] Step 202: Perform connected component analysis on the connection graph to identify each connected component in the connection graph; determine all data subsets within the same connected component as the same fault prediction unit to obtain multiple fault prediction units.
[0076] Connected component analysis is a fundamental algorithm in graph theory used to identify all sets of mutually connected nodes in a graph. A connected component is a subgraph within a graph where any two nodes are connected by a path, and the subgraph cannot be expanded further. In this step, the fault prediction unit specifically refers to a set of data subsets with similar performance characteristics, which belong to the same connected component in the connectivity graph. Mutual connectivity means that two nodes are connected by one or more edges forming a path.
[0077] Specifically, a depth-first search (DFS) is first performed on the connectivity graph G to identify connected components. The specific execution process is as follows: Create a visit marker array `visited` of size `n` (where `n` is the number of nodes), initializing all elements to `false`. Create an empty list of connected components to store all identified connected components. Starting from any unvisited node `v`, execute the following recursive process: 1) Mark the current node `v` as visited (`visited[v]=true`); 2) Add node `v` to the currently constructed connected component; 3) Traverse all adjacent nodes `u` of node `v`. If `u` is not visited, recursively visit node `u`. When it is impossible to visit any new node, the current connected component is completed, and it is added to the connected component list. Repeat the above process until all nodes are visited. For each identified connected component, a fault prediction unit is formed by combining all the data subsets it contains. For example, assuming a connectivity graph has 10 nodes, connected component analysis identifies three connected components: C1={1, 2, 3}, C2={4, 5, 6, 7}, and C3={8, 9, 10}. This yields three corresponding fault prediction units, each containing a subset of data from its corresponding connected component. This graph-based clustering method ensures that batteries within the same prediction unit have similar performance characteristics, providing a reasonable grouping basis for subsequent fault prediction.
[0078] In one possible implementation, connectivity analysis is performed on the connectivity graph to identify each connected component in the connectivity graph, specifically including steps 2021-2023, as follows: Step 2021: Mark all nodes in the connection graph as unvisited.
[0079] A connectivity graph is a graph structure composed of data subset nodes and similarity-based connecting edges, used to represent the similarity relationships between data subsets. Node labels are state identifiers set for each data subset node, used to track whether the node has been visited. The unvisited state is the initial state of a node, indicating that the node has not yet been processed by the search algorithm. Node state labels are typically represented using Boolean values (true / false) or integer values (0 / 1).
[0080] Specifically, first, a boolean array `visited[n]` of size `n` equal to the total number of nodes is created to store the visit status of each node. By traversing all nodes in the connection graph, the element at the corresponding position in the `visited` array is initialized to `false`, indicating that the node has not been visited. Specifically, the `visited` array is defined such that `visited[i] = false` indicates that node `i` has not been visited, and the value of `i` ranges from [0, n-1]. For example, for a connection graph containing 5 nodes, a `visited` array of length 5 is created, initialized to `visited = [false, false, false, false, false]`. This initialization operation ensures that the visit status of nodes can be correctly tracked during the subsequent depth-first search, avoiding repeated visits to the same node, while ensuring that all nodes are processed completely. This is preparatory work for identifying connected components, providing a necessary state recording mechanism for the subsequent search process.
[0081] Step 2022: Select any unvisited node as the starting node, and traverse all associated nodes that are directly or indirectly connected to the starting node.
[0082] The starting node is the first node the depth-first search algorithm begins executing, arbitrarily selecting an unvisited node from the connectivity graph. A direct connection is between two nodes directly linked by an edge, such as nodes A and B. An indirect connection is between two nodes connected through other nodes, such as node A connected to node C via node B. Associated nodes are all nodes that are directly or indirectly connected to the current node. Traversal refers to the process of visiting nodes in the graph in a specific order.
[0083] Specifically, first, traverse the visited array, find the first position i with a value of false, and take node i as the starting node. Create an empty stack structure stack and push the starting node i onto the stack. When the stack is not empty, perform the following operations: 1) Remove the top node v from the stack; 2) If node v has not been visited, mark it as visited (visited[v]=true); 3) Get the adjacency list adjList[v] of node v, which stores all nodes directly connected to node v; 4) Traverse each node u in the adjacency list. If u has not been visited, push u onto the stack. Repeat the above process until the stack is empty. At this point, the traversal of all nodes connected to the starting node i is complete. For example, for a graph with 6 nodes, the adjacency list is: adjList[0]={1,2}, adjList[1]={0,3}, adjList[2]={0,4}, adjList[3]={1}, adjList[4]={2}, adjList[5]={}. Choosing node 0 as the starting node, the traversal sequence is: 0→1→3→2→4. Node 5 is not visited because it is not connected to other nodes. This traversal method ensures that all nodes connected to the starting node can be found, providing a basis for identifying complete connected components.
[0084] Step 2023: Mark the visited nodes as visited and identify the visited nodes as the same connected component; repeat the process of selecting the starting node and traversing until all nodes in the connection graph have been visited, and obtain each connected component in the connection graph.
[0085] The visited state is the marked state of a node after it has been processed by the search algorithm, usually represented by the boolean value true or the integer value 1. A connected component is a set of mutually connected nodes in a graph; any two nodes within the set can be connected by a path, and no other nodes can be added. Node visit refers to the process by which the search algorithm processes a node and updates its state. Repeated execution refers to restarting the search process for unvisited nodes until all nodes have been processed.
[0086] Specifically, a list `components` is created to store all connected components, each consisting of a set of node indices. A counter `count` is defined with an initial value of 0 to record the number of nodes currently processed. The following loop process is executed: 1) Traverse the `visited` array and find the first position `i` with a value of false as the new starting node; 2) Create a new empty set `currentComponent` to store the currently constructed connected component; 3) Add the starting node `i` to `currentComponent` and set `visited[i] = true`; 4) Create a stack `stack` and push node `i` onto the stack; 5) When the stack is not empty, pop the top node `v`, traverse all unvisited adjacent nodes `u` of `v`, mark `u` as visited (`visited[u] = true`), add `u` to `currentComponent`, and push `u` onto the stack; 6) When the stack is empty, add `currentComponent` to the `components` list, indicating that the construction of a connected component is complete; 7) Update the `count` value, increasing the number of nodes in the current connected component. Repeat the above process until `count` equals the total number of nodes, indicating that all nodes have been visited. For example, for a graph with 8 nodes, the following connected components might be obtained: C1={0, 1, 2, 3}, C2={4, 5, 6}, C3={7}. The final list of components contains all connected components in the graph, and the nodes within each connected component have similar performance characteristics, which provides a basis for subsequent fault prediction unit partitioning. This depth-first search-based connected component identification method ensures completeness and correctness, accurately identifying all connected substructures in the graph.
[0087] In the above embodiments, a basic data preprocessing framework was implemented through standardized data processing and group analysis. To further improve the accuracy of data feature extraction and reduce the impact of data heterogeneity on feature representation, this application also provides another adaptive feature extraction method based on model grouping. This method intelligently constructs feature vectors by identifying basic battery attributes and analyzing performance degradation indicators, enabling the system to more accurately handle the performance evaluation needs of batteries of different models and manufacturers. Specifically, it includes steps 301-303: Step 301: Extract the battery model identifier and manufacturer identifier corresponding to each battery cell; based on the combination of battery model identifier and manufacturer identifier, take the time series data of battery cells with the same battery model identifier and the same manufacturer identifier in the standard time series dataset as the same data subset, and obtain multiple data subsets.
[0088] A battery model identifier refers to the specification code of a battery product, containing information such as capacity and voltage level. A manufacturer identifier is a unique identifier for the battery manufacturer. A standard time-series dataset is a database storing all battery operating data, containing time-series records of parameters such as voltage and temperature. A data subset is a collection of data consisting of batteries with the same model and manufacturer identifier. Time-series data is a sequence of battery operating parameter values recorded in chronological order. A combined identifier is a unique identifier formed by concatenating the battery model identifier and the manufacturer identifier.
[0089] Specifically, the model identifier and manufacturer identifier for each battery cell are first extracted from the battery information table. The model identifier uses a standard format, such as "LFP-200-3.2V" indicating a 200Ah 3.2V lithium iron phosphate battery; the manufacturer identifier uses a 6-digit code, such as "MF0001" indicating a specific manufacturer. The model identifier and manufacturer identifier are combined to form a unique identifier, such as "LFP-200-3.2V_MF0001". A hash table is created to store the mapping relationship between the combined identifier and the data subset. All records in the standard time-series dataset are traversed. Each record contains parameters such as timestamp, battery number, voltage value, temperature value, and current value. The combined identifier is found based on the battery number, and the record is added to the corresponding data subset. The data subset uses a structured storage format: the first level is indexed by the combined identifier, the second level is indexed by the battery number, and the third level is the time-series data array. For example, a data center has 1000 battery cells belonging to 5 different models and 3 different manufacturers, which are grouped into 15 data subsets. The data subset with the combined identifier "LFP-200-3.2V_MF0001" contains time-series data for 200 individual battery cells. Each cell contains sampling records taken every 5 minutes over 24 hours, totaling 288 time points for parameters such as voltage, temperature, and current. This data organization method enables the aggregation of battery data of the same type, providing a structured data foundation for subsequent feature extraction and model training.
[0090] Step 302: For each data subset, calculate the voltage decay rate by fitting the trend curve of the voltage of the battery cells in the data subset over time, calculate the capacity decay rate based on the rate of change of the ratio of available capacity to rated initial capacity over time, count the cumulative number of times the temperature exceeds the preset safe temperature threshold to obtain the temperature anomaly frequency, and accumulate the number of charge and discharge cycles to obtain the number of charge and discharge cycles.
[0091] Voltage decay rate is the rate at which battery voltage decreases, calculated from the slope of the voltage-time curve. Capacity decay rate is the rate at which the ratio of usable capacity to initial rated capacity changes. Temperature anomaly frequency is the cumulative number of times the temperature exceeds the safe temperature threshold, typically set at 45°C. Charge-discharge cycle count is the cumulative number of charge-discharge cycles the battery completes; one complete cycle is defined as discharging from a fully charged state to the cutoff voltage and then recharging back to a fully charged state. The trend curve is a smooth curve obtained by polynomial fitting of voltage data using the least squares method.
[0092] Specifically, a third-order polynomial fitting is performed on the voltage data of each battery. The fitting function is V(t) = at³ + bt² + ct + d, where t is the time variable and a, b, c, and d are the fitting coefficients. The average slope of the fitted curve over the observation period is calculated as the voltage decay rate, in V / h. Then, the capacity decay rate is calculated: the available capacity at each time point is divided by the rated initial capacity to obtain the capacity retention rate sequence. Linear regression is performed on this sequence to obtain the slope, which is the capacity decay rate, in % / h. Anomaly statistics are performed on the temperature data: the counter is initialized to 0, and the temperature sequence is iterated. When the temperature exceeds 45℃, the counter is incremented by 1. A duration exceeding 30 minutes is considered an anomaly. Finally, the number of charge-discharge cycles is counted: the charge-discharge current sequence is detected. When the discharge current changes from 0 to negative and the voltage drops to the cutoff voltage (e.g., 2.5V), and then recharges to the full charge voltage (e.g., 3.65V), it is recorded as one cycle completed. For example, the calculated results for a certain battery during a 24-hour observation period are as follows: voltage decay rate -0.002V / h (calculated using the fitted curve V(t) = -0.0001t³ + 0.005t² - 0.08t + 3.65), capacity decay rate 0.05% / h (usable capacity decreased from 100% to 98.8%), frequency of temperature anomalies 3 times (overheating occurred at 10:00, 14:00, and 20:00 respectively), and completion of 2 charge-discharge cycles. This multi-dimensional performance index calculation provides a quantitative basis for battery state assessment.
[0093] In one possible implementation, the voltage decay rate is calculated by fitting the trend curve of the voltage change over time of individual battery cells within the data subset, specifically including steps 3021-3023, as follows: Step 3021: Extract the voltage data and corresponding timestamps of individual battery cells in the first time period from the data subset.
[0094] Voltage data refers to the battery terminal voltage value recorded at the sampling time, measured in volts (V) and accurate to 0.001V. The timestamp is the specific moment of data acquisition, represented in the standard time format "YYYY-MM-DD HH:MM:SS". Data extraction is the process of selecting voltage-time records within a specified time range from a subset of the data.
[0095] Specifically, first, the time range of the first period is determined, setting a start time T_start and an end time T_end, with a time span of 24 hours. A data cache array is created to store the extracted voltage-time records. The data records of each battery cell in the data subset are traversed, checking whether the timestamp falls within the interval [T_start, T_end]. For each battery cell, the extracted data record contains two arrays: a voltage array V[] and a timestamp array T[], with equal array lengths. The sampling interval is fixed at 5 minutes, resulting in 288 data points within 24 hours. The data records are stored in a structured format: {battery_id: "BAT001", voltage_array: [3.642, 3.640, ...], timestamp_array: ["2025-11-05 00:00:00", "2025-11-05 00:05:00", ...]}. For example, the extracted data for a single battery cell on November 5, 2025, is as follows: voltage array [3.642, 3.640, 3.638, ..., 3.625], corresponding to timestamp arrays ["2025-11-05 00:00:00", "2025-11-05 00:05:00", "2025-11-05 00:10:00", ..., "2025-11-05 23:55:00"]. The extracted data undergoes a completeness check; if missing data points exist, linear interpolation is used to fill in the missing values. This data extraction method ensures the acquisition of complete voltage change time-series records, providing foundational data for subsequent trend analysis.
[0096] Step 3022: Use the least squares method to linearly fit the mapping relationship between voltage data and timestamp changes to obtain the fitted curve.
[0097] The mapping relationship refers to the correspondence between voltage values and time points. The fitted curve is the optimal linear equation obtained through calculation. The sum of squared errors is the sum of squares of the differences between the actual voltage values and the fitted values, used to evaluate the fitting effect.
[0098] Specifically, the timestamps are first converted from standard time format to relative time (hours), with the first time point set to time 0. A time array t[] and a voltage array V[] are created, both with length n (n=288, corresponding to one data point every 5 minutes within 24 hours). The fitting parameters are calculated using the least squares method: slope k=(n∑(t[i]×V[i])-∑t[i]×∑V[i]) / (n∑(t[i]²)-(∑t[i])²), intercept b=(∑V[i]-k×∑t[i]) / n. Where i ranges from 0 to n-1. For example, fitting the voltage data of a battery over 24 hours: the time array t = [0, 0.083, 0.167, ..., 23.917], and the corresponding voltage array V = [3.642, 3.640, 3.638, ..., 3.625]. The fitting parameters are calculated as: k = -0.002V / h, b = 3.645V, and the fitting equation is V(t) = -0.002t + 3.645. The goodness of fit R² is calculated as: R² = 1 - ∑(V[i] - V_fit[i])² / ∑(V[i] - V_mean)², where V_fit[i] is the fitted value and V_mean is the average voltage. If R² is less than 0.85, it indicates that the linear fitting effect is not ideal, and polynomial fitting is required. To improve the fitting accuracy, the data can be segmented: detect abrupt changes in the voltage sequence (voltage differences between adjacent points exceeding 0.01V), and perform segmented fitting at these abrupt changes. This fitting method provides a quantitative description of the voltage change trend, and the slope k directly reflects the voltage decay rate.
[0099] Step 3023: Calculate the slope of the fitted curve within the preset time interval, and use the slope as the voltage decay rate of the data subset.
[0100] The preset time interval is a fixed time range for slope calculation, typically a complete 24-hour period. The fitted curve is the voltage-time function obtained using the least squares method. The slope is the rate of change of the fitted curve within a specified interval, representing the change in voltage per unit time. The voltage decay rate is the rate of voltage drop expressed as the absolute value of the slope, with units of V / h. The local slope is the instantaneous rate of change of the curve at a specific point in time, calculated through differentiation.
[0101] Specifically, first, determine the time interval [t_start, t_end] for slope calculation, corresponding to 0 to 24 hours. For the linear fitting curve V(t) = kt + b, the slope is directly taken as the value of k. For piecewise linear fitting, calculate the weighted average of the slopes of each segment: let the time span of the i-th segment be Δt[i], and the slope be k[i], then the weighted average slope k_avg = Σ(k[i] × Δt[i]) / Σ(Δt[i]). For the polynomial fitting curve V(t) = at³ + bt² + ct + d, calculate the interval average slope: uniformly select n points within the interval (n = 24, one point per hour), calculate the local slope of each point k_local = 3at² + 2bt + c, and then take the arithmetic mean as the overall slope. For example, the third-order polynomial fitting curve of a battery for 24 hours is V(t)=-0.0001t³+0.005t²-0.08t+3.65. Calculate the local slopes at t=0, 1, 2, ..., 23: k_local[0]=-0.08, k_local[1]=-0.0002+0.01-0.08=-0.0702, and so on to obtain 24 local slopes. Take the average value of -0.065V / h as the voltage decay rate. For piecewise linear fitting, if a battery's data is divided into three segments: 0-8 hours with a slope of -0.001V / h, 8-16 hours with a slope of -0.002V / h, and 16-24 hours with a slope of -0.003V / h, then the weighted average slope is (-0.001×8 + -0.002×8 + -0.003×8) / 24 = -0.002V / h. This calculation method considers the dynamic characteristics of voltage changes, and the resulting attenuation rate accurately reflects the battery's voltage stability.
[0102] Step 303: Combine the voltage decay rate, capacity decay rate, frequency of temperature anomalies, and number of charge-discharge cycles into a statistical feature vector corresponding to the data subset.
[0103] A statistical feature vector is a numerical array formed by combining multiple performance indicators in a fixed order. Voltage decay rate is the rate at which voltage decreases over time, measured in V / h. Capacity decay rate is the rate of change of capacity loss, measured in % / h. Temperature anomaly frequency is the cumulative number of times the temperature exceeds the limit, measured in cycles. Charge-discharge cycle count is the cumulative number of complete charge-discharge cycles, measured in cycles. The feature combination is a vector formed by arranging these four indicators in a prescribed order.
[0104] Specifically, the feature vector structure is first defined using a four-dimensional array format: [v_rate, c_rate, t_count, cycle_count], where v_rate is the voltage decay rate, c_rate is the capacity decay rate, t_count is the frequency of temperature anomalies, and cycle_count is the number of charge-discharge cycles. For each data subset, the four metric values for all batteries are collected. A feature matrix is created with the number of rows equal to the number of batteries and four columns. The metrics for each battery are normalized: the voltage decay rate is divided by 0.01 to obtain a percentage value; the capacity decay rate remains unchanged (already a percentage); the frequency of temperature anomalies is divided by 24 to obtain the average number of anomalies per hour; and the number of charge-discharge cycles is divided by 24 to obtain the average number of cycles per hour. The normalized values are then filled into the corresponding positions in the feature matrix. For example, a subset of data contains 100 batteries. The original specifications of the first battery are: voltage decay rate -0.002V / h, capacity decay rate 0.05% / h, frequency of temperature anomalies 3 times, and number of charge-discharge cycles 2 times. The normalized feature vector is [-0.2, 0.05, 0.125, 0.083]. This results in a 100×4 feature matrix, with each row representing the statistical feature vector of a single battery. This standardized feature representation method allows for unified comparison of indicators with different dimensions, providing a standardized data input format for subsequent cluster analysis. Each component of the feature vector reflects a specific aspect of battery performance, and their combination comprehensively describes the battery's operating state.
[0105] The following describes a fault prediction system for industrial and commercial big data storage from the perspective of hardware processing. Please refer to [link to relevant documentation]. Figure 3 This is a schematic diagram of the structure of a fault prediction system for industrial and commercial big data storage in an embodiment of this application.
[0106] It should be noted that, Figure 3 The structure of a fault prediction system for industrial and commercial big data storage shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of the present invention.
[0107] like Figure 3As shown, a fault prediction system for industrial and commercial big data storage includes a central processing unit (CPU) 301, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 302 or a program loaded from storage section 308 into random access memory (RAM) 303, such as executing the methods described in the above embodiments. The RAM 303 also stores various programs and data required for system operation. The CPU 301, ROM 302, and RAM 303 are interconnected via a bus 304. An input / output (I / O) interface 305 is also connected to the bus 304.
[0108] The following components are connected to I / O interface 305: input section 306 including audio input devices, push-button switches, etc.; output section 307 including a liquid crystal display (LCD) and audio output devices, indicator lights, etc.; storage section 308 including a hard disk, etc.; and communication section 309 including a network interface card such as a LAN (Local Area Network) card, modem, etc. Communication section 309 performs communication processing via a network such as the Internet. Drive 310 is also connected to I / O interface 305 as needed. Removable media 311, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., are installed on drive 310 as needed so that computer programs read from them can be installed into storage section 308 as needed.
[0109] In particular, according to embodiments of the present invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of the present invention include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing computer programs for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 309, and / or installed from removable medium 311. When the computer program is executed by central processing unit (CPU) 301, it performs the various functions defined in the present invention.
[0110] It should be noted that specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), flash memory, optical fiber, portable compact disc read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
[0111] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present invention. Each block in a flowchart or block diagram may represent a module, segment, or portion of code, which contains one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those shown in the drawings.
[0112] Specifically, the fault prediction system for industrial and commercial big data storage in this embodiment includes a processor and a memory. The memory stores a computer program. When the computer program is executed by the processor, it implements the fault prediction method for industrial and commercial big data storage provided in the above embodiment.
[0113] In another aspect, the present invention also provides a computer-readable storage medium, which may be included in the industrial and commercial big data fault prediction system described in the above embodiments; or it may exist independently and not assembled into the industrial and commercial big data fault prediction system. The storage medium carries one or more computer programs, which, when executed by a processor of the industrial and commercial big data fault prediction system, enable the industrial and commercial big data fault prediction system to implement the industrial and commercial big data fault prediction method based on IoT data encryption transmission provided in the above embodiments.
Claims
1. A fault prediction method driven by big data in industrial and commercial storage, characterized in that, The method includes: The system acquires the operational data of the target energy storage battery pack from the industrial and commercial data center within the first time period, and cleans and standardizes the operational data to obtain a standard time-series dataset in a preset format. The operational data includes the voltage, available capacity, temperature, and number of charge-discharge cycles of each battery cell in the target energy storage battery pack. The standard time-series dataset is grouped based on the battery model identifier and manufacturer identifier of the target energy storage battery pack to obtain multiple data subsets, and a statistical feature vector reflecting performance degradation is extracted for each data subset. Based on the statistical feature vectors, a feature matrix is constructed, and the data subsets are clustered using the feature matrix to obtain multiple fault prediction units. For each of the aforementioned fault prediction units, a corresponding fault association rule base is established based on the correlation between the pre-fault operating data and the fault occurrence time of the fault sample corresponding to the fault prediction unit. Receive the operating data of each battery cell in the second time period and the fault prediction unit to which each battery cell belongs; The operating data of each battery cell in the second time period are matched with the fault association rule base of the corresponding fault prediction unit. Based on the matching results, the predicted failure time range for each battery cell is determined, and an early warning report corresponding to the predicted failure time range is generated.
2. The method according to claim 1, characterized in that, The standard time-series dataset is grouped based on the battery model identifier and manufacturer identifier of the target energy storage battery pack to obtain multiple data subsets. For each data subset, a statistical feature vector reflecting performance degradation is extracted, including: Extract the battery model identifier and manufacturer identifier corresponding to each of the battery cells; Based on the combination of the battery model identifier and the manufacturer identifier, the time series data of battery cells with the same battery model identifier and the same manufacturer identifier in the standard time series dataset are taken as the same data subset, resulting in multiple data subsets; For each data subset, the voltage decay rate is calculated by fitting the trend curve of the voltage of the battery cell in the data subset over time, the capacity decay rate is calculated based on the rate of change of the ratio of the available capacity to the rated initial capacity over time, the temperature anomaly frequency is obtained by counting the cumulative number of times the temperature exceeds the preset safe temperature threshold, and the number of charge and discharge cycles is obtained by accumulating the number of charge and discharge cycles. The voltage decay rate, the capacity decay rate, the frequency of temperature anomalies, and the number of charge-discharge cycles are combined to form a statistical feature vector corresponding to the data subset.
3. The method according to claim 2, characterized in that, The calculation of voltage decay rate by fitting the trend curve of voltage change over time of individual battery cells within the data subset includes: Extract the voltage data and corresponding timestamps of individual battery cells within the first time period from the data subset; The least squares method is used to linearly fit the mapping relationship between the voltage data and the timestamp to obtain the fitting curve; Calculate the slope of the fitted curve within a preset time interval, and use the slope as the voltage decay rate of the data subset.
4. The method according to claim 1, characterized in that, The step of clustering each of the data subsets using the feature matrix to obtain multiple fault prediction units includes: Select a subset of data pairs from the feature matrix whose similarity values are higher than a preset similarity threshold; A connection graph is constructed using the data subset pairs as connection edges, with each data subset serving as a node; Perform connected component analysis on the connection graph to identify each connected component in the connection graph; All data subsets within the same connected component are identified as the same fault prediction unit, resulting in multiple fault prediction units.
5. The method according to claim 1, characterized in that, The establishment of a corresponding fault association rule base based on the correlation between the pre-fault operating data and the fault occurrence time of the fault sample corresponding to the fault prediction unit includes: Extract fault samples of batteries that have failed from the fault prediction unit and record the time of failure for each fault sample. For each fault sample, the sequence of running data within a preset time window before the time of the fault occurrence is extracted as the running data before the fault. Feature extraction is performed on the pre-fault operating data to obtain a pre-fault feature set, which includes voltage change rate, temperature peak value, and charge / discharge power fluctuation coefficient. A preset association rule mining algorithm is used to analyze the association between the pre-fault feature set and the fault occurrence time, and to extract association rules that satisfy minimum support and minimum confidence. The fault association rule is constructed by taking the trigger records of the pre-fault feature set in the association rule as the running data condition and taking the statistical distribution of the fault occurrence time as the fault time range.
6. The method according to claim 4, characterized in that, The step of performing connected component analysis on the connection graph to identify each connected component in the connection graph includes: Mark all nodes in the connection graph as unvisited; Select any unvisited node as the starting node, and traverse all associated nodes that are directly or indirectly connected to the starting node. Mark the visited nodes as visited, and identify the nodes marked as visited as the same connected component. Repeat the process of selecting the starting node and traversing until all nodes in the connection graph have been visited, thus obtaining each connected component in the connection graph.
7. The method according to claim 1, characterized in that, The step of determining the predicted failure time range for each battery cell based on the matching results and generating an early warning report corresponding to the predicted failure time range includes: Obtain the failure time prediction results of the successfully matched battery cells, and determine the minimum value of the failure time lower bound of the failure time prediction results as the earliest failure time of the industrial and commercial data center. Extract the overlapping time range of all failure time prediction results, and determine the time point with the highest overlap frequency as the expected failure time of the industrial and commercial data center; The fault risk level is calculated based on the proportion of the number of successfully matched battery cells to the total number of battery cells. The maintenance time window is determined by reserving a preset safety margin time forward based on the earliest failure time; The fault warning report is composed of the earliest fault time, the expected fault time, the fault risk level, the successfully matched battery cell, and the maintenance time window.
8. A fault prediction system driven by big data in industrial and commercial storage, characterized in that, The industrial and commercial storage big data-driven fault prediction system includes: one or more processors and a memory; the memory is coupled to the one or more processors, the memory is used to store computer program code, the computer program code includes computer instructions, and the one or more processors call the computer instructions to cause the industrial and commercial storage big data-driven fault prediction system to perform the method as described in any one of claims 1-7.
9. A computer-readable storage medium comprising instructions, characterized in that, When the instruction is executed on the fault prediction system driven by industrial and commercial storage big data, the fault prediction system driven by industrial and commercial storage big data performs the method as described in any one of claims 1-7.
10. A computer program product, characterized in that, When the computer program product is run on the fault prediction system driven by industrial and commercial big data, the fault prediction system driven by industrial and commercial big data performs the method as described in any one of claims 1-7.