Battery cell balancing method of battery pack, electronic equipment, medium and product

By analyzing the balancing time data distribution of the battery cells in the battery pack, a typical time array is determined to accurately set the balancing processing duration, which solves the problem of inaccurate cell balancing time in the existing technology and improves the balancing effect and efficiency.

CN120621148APending Publication Date: 2025-09-12BYD CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202510683911.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-05-23
Publication Date
2025-09-12

AI Technical Summary

Technical Problem

In the prior art, the balancing time of the battery cells in the battery pack is set to a fixed duration, and the actual balancing time of each battery cell is not taken into consideration, resulting in poor balancing effect.

Method used

By analyzing the balancing time data distribution of each battery cell in the battery pack, a typical time array is determined. The accurate balancing processing duration is determined based on the array, and the balancing processing is terminated when the processing duration is reached to avoid the impact of simultaneous balancing of adjacent batteries.

Benefits of technology

The accuracy and efficiency of cell balancing are improved, ensuring that most cells achieve good consistency after balancing and reducing the waste of balancing time.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120621148A_ABST
    Figure CN120621148A_ABST
Patent Text Reader

Abstract

The invention provides a battery cell balancing method of a battery pack, electronic equipment, a medium and a product. The method comprises the following steps: determining an initial time array according to the equalization time of each battery cell in a battery pack; according to the distribution condition of the data in the initial time array, a typical time array is determined, and the typical time array comprises the data distributed in the initial time array in a concentrated mode; according to the typical time array, determining the processing duration for executing equalization processing this time; and performing equalization processing on the battery pack, and ending the equalization processing when the time length for performing the equalization processing reaches the processing time length. According to the method provided by the invention, the processing duration of each equalization processing can be accurately determined, and the equalization processing effect is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to vehicle technology, and in particular to a battery cell balancing method, electronic equipment, medium and product for a battery pack. Background Art

[0002] Battery packs typically consist of multiple cells. After extended use, the performance of each cell in the pack becomes inconsistent, making high-energy cells prone to overcharging and low-energy cells prone to over-discharging. Therefore, passive balancing can be achieved by releasing the energy of high-energy cells. Due to limitations of the analog front-end (AFE) chip, when passive balancing is performed on one cell, if adjacent cells are also performing passive balancing, the balancing currents will affect each other, affecting balancing efficiency. To address this issue, when using passive balancing, the cells in the pack can be divided into multiple groups based on their placement. The cells in each group are not adjacent to each other, and balancing is activated alternately in each group to prevent adjacent cells from being balanced simultaneously.

[0003] In the prior art, when performing balancing on a target cell group, the balancing time of the target cell group is often set to a fixed duration, which results in inaccurate balancing time and poor cell balancing effect. Summary of the Invention

[0004] The present application provides a battery cell balancing method, electronic equipment, medium and product for a battery pack, which are used to accurately determine the processing time of each balancing process and improve the effect of the balancing process.

[0005] In one aspect, an embodiment of the present application provides a method for balancing cells of a battery pack, comprising:

[0006] Determine the initial time array based on the balancing time of each cell in the battery pack;

[0007] Determine a typical time array according to the distribution of data in the initial time array, wherein the typical time array includes the data concentratedly distributed in the initial time array;

[0008] Determining the processing duration of the current balancing process according to the typical time array;

[0009] Performing a balancing process on the battery pack, and ending the balancing process when the duration of the balancing process reaches the processing duration.

[0010] In some embodiments, determining a typical time array based on the distribution of data in the initial time array includes:

[0011] Determine a first data value by performing variance or standard deviation processing on the data in the initial time array;

[0012] A typical time array is determined based on the first data value.

[0013] In some embodiments, determining the first data value by performing variance or standard deviation processing on the data in the initial time array includes:

[0014] Executing a first process, the first process comprising: removing a maximum value from a current time array to obtain a first time array, and performing variance or standard deviation processing on the first time array to obtain a first result; and removing a minimum value from the initial time array to obtain a second time array, and performing variance or standard deviation processing on the second time array to obtain a second result;

[0015] The smaller one of the first result and the second result is used as the first data value.

[0016] In some embodiments, determining a typical time array according to the first data value includes:

[0017] The first data value is compared with a preset threshold value. If the first data value is not greater than the preset threshold value, the time array corresponding to the first data value is used as the typical time array.

[0018] In some embodiments, the method further comprises:

[0019] If the first data value is greater than the preset threshold, the first process is executed again.

[0020] In some embodiments, before removing the maximum value in the initial time array, the method further includes:

[0021] The initial time array is sorted in ascending order or descending order, and the maximum value and the minimum value in the initial time array are determined.

[0022] In some embodiments, determining the processing duration of the current equalization processing according to the typical time array includes:

[0023] If the number of cells in the typical time array is greater than a preset number threshold, an average of the balancing times in the typical time array is determined as the processing duration of the current balancing process.

[0024] In some embodiments, determining the processing duration of the current equalization processing according to the typical time array further includes:

[0025] If the number of balancing times in the typical time array is not greater than a preset number threshold, the average of the maximum value and the minimum value in the initial time array is determined as the processing duration of the current balancing process.

[0026] In some embodiments, the quantity threshold is half of the quantity of the battery cells in the initial time array, and the balancing time in the initial time array is not zero.

[0027] The method further comprises:

[0028] After the current balancing process is completed, the processing time for the next balancing process is determined;

[0029] Performing the next balancing process on the battery pack according to the processing time length of the next balancing process.

[0030] In some embodiments, performing balancing on the battery pack includes:

[0031] Determine, based on the processing duration, a sleep duration of the device where the battery pack is located, so as to wake up the device when the device enters sleep mode for a duration equal to the sleep duration;

[0032] Performing balancing processing on the battery pack according to the sleep time.

[0033] In some embodiments, the method further comprises:

[0034] After the device wakes up, determining a processing duration for performing the next equalization process;

[0035] The next sleep duration of the device is determined according to the processing duration of the next equalization processing, and the device is controlled to enter sleep again.

[0036] In some embodiments, determining the sleep duration of the device where the battery pack is located based on the processing duration includes:

[0037] Determining a maximum sleep duration and a minimum sleep duration set for the device;

[0038] If the processing time is not less than the maximum sleep time, determining the sleep time of the device to be the maximum sleep time;

[0039] If the processing duration is less than the maximum sleep duration and greater than the minimum sleep duration, determining the sleep duration of the device to be the processing duration;

[0040] If the processing time is not greater than the minimum sleep time, the sleep time of the device is determined to be the minimum sleep time.

[0041] In some embodiments, the battery pack is configured with multiple analog front-end chips, each cell of the battery pack is allocated to the multiple analog front-end chips, and the cells under each analog front-end chip are divided into multiple cell groups; before performing balancing on the battery pack, the method further includes:

[0042] Determining the balancing time of each battery cell under each analog front-end chip;

[0043] According to the balancing time of each battery cell under each analog front-end chip, the battery cell group where the battery cell with the longest balancing time under each analog front-end chip is located is used as the target battery cell group under each analog front-end chip, and balancing processing is performed on the target battery cell group under each analog front-end chip.

[0044] In some embodiments, the battery cells in each battery cell group are not adjacent to each other.

[0045] In some embodiments, the method further comprises:

[0046] The odd-numbered cells under each analog front-end chip are used as the odd group under the analog front-end chip, and the even-numbered cells under each analog front-end chip are used as the even group under the analog front-end chip.

[0047] In some embodiments, according to the balancing time of each battery cell under each analog front-end chip, the battery cell group where the battery cell with the longest balancing time under each analog front-end chip is located is used as the target battery cell group under each analog front-end chip, including:

[0048] Determine the sequence number of the cell with the longest balancing time under the analog front-end chip according to the balancing time of the cells under each analog front-end chip;

[0049] If the sequence number of the cell with the longest balancing time is an odd number, the odd number group under the analog front-end chip is used as the target cell group, and balancing is performed on the target cell group determined under the multiple analog front-end chips.

[0050] In some embodiments, the step of taking the cell group containing the cells with the longest balancing time under each analog front-end chip as the target cell group under each analog front-end chip according to the balancing time of the cells under each analog front-end chip further includes:

[0051] If the sequence number of the cell with the longest balancing time is an even number, the even number group under the analog front-end chip is used as the target cell group, and balancing is performed on the target cell group determined under the multiple analog front-end chips.

[0052] In some embodiments, after performing balancing on the battery pack, the method further includes:

[0053] After the current balancing is completed, the balancing time of each cell in the battery pack is updated;

[0054] If the balancing time of each cell in the updated battery pack is zero, the cell balancing is completed and the process ends.

[0055] In some embodiments, the method further comprises:

[0056] If the updated balancing time of each cell in the battery pack is not zero, the next cell balancing process is performed according to the updated balancing time of each cell.

[0057] In some embodiments, updating the balancing time of each battery cell in the battery pack includes:

[0058] The balancing time of each battery cell in the battery pack is subtracted from the actual balancing time of each battery cell in the current battery cell balancing process to obtain an updated balancing time of each battery cell.

[0059] In some embodiments, the method further comprises:

[0060] For each battery cell, if the balancing time of the battery cell is less than the processing time, the time when the balancing process is actually performed on the battery cell is determined as the balancing time of the battery cell.

[0061] In some embodiments, the method further comprises:

[0062] For each battery cell, if the balancing time of the battery cell is not less than the processing time, the time for actually performing the balancing process on the battery cell is determined to be the processing time.

[0063] On the other hand, an embodiment of the present application provides a cell balancing device, comprising:

[0064] A first determining module is used to determine an initial time array according to the balancing time of each battery cell in the battery pack;

[0065] A second determining module is configured to determine a typical time array according to the distribution of the data in the initial time array, wherein the typical time array includes the data that is concentratedly distributed in the initial time array;

[0066] A third determining module is used to determine the processing time length of the current equalization processing according to the typical time array;

[0067] The balancing module is configured to perform a balancing process on the battery pack and terminate the balancing process when the duration of the balancing process reaches the processing duration.

[0068] In another aspect, an embodiment of the present application provides an electronic device, comprising: a processor, and a memory communicatively connected to the processor;

[0069] The memory stores computer-executable instructions;

[0070] The processor executes the computer-executable instructions stored in the memory to implement the above method.

[0071] On the other hand, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to implement the method as described above when executed by a processor.

[0072] On the other hand, an embodiment of the present application provides a computer program product, wherein the computer-readable storage medium stores computer-executable instructions, and the computer-executable instructions are used to implement the method as described above when executed by a processor.

[0073] In the battery pack cell balancing method, electronic device, medium and product provided in the present application, the data distribution of the balancing time of each battery cell in the battery pack can be analyzed, and the concentrated balancing time can be selected as the typical time array. The typical time array effectively reflects the typical characteristics of the balancing time of each battery cell in the battery pack, so that the processing time of the current balancing processing can be determined, rather than directly adopting a fixed processing time. The processing time can be determined based on the balancing time of each battery cell in the battery pack, and the influence of the more discrete balancing time that is significantly different from other balancing times on the overall data can be excluded, so as to accurately determine the processing time of the balancing processing, which can effectively improve the balancing effect. BRIEF DESCRIPTION OF THE DRAWINGS

[0074] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.

[0075] Figure 1 hereinafter is a flow chart showing a method for balancing battery cells in a battery pack according to an embodiment of the present application;

[0076] Figure 2 Schematic diagram of an application scenario provided by an embodiment of the present application is exemplarily shown in FIG.

[0077] Figure 3 exemplarily shows a flowchart of the sleep balancing process provided by an embodiment of the present application;

[0078] Figure 4 Schematic diagram of the structure of the cell balancing device provided in an embodiment of the present application is shown in FIG.

[0079] Figure 5 Schematic diagram of the structure of the electronic device provided in an embodiment of the present application is shown in FIG.

[0080] The above drawings illustrate specific embodiments of the present application, which will be described in more detail below. These drawings and the textual description are not intended to limit the scope of the present application in any way, but rather to illustrate the concepts of the present application to those skilled in the art by reference to specific embodiments. DETAILED DESCRIPTION

[0081] Exemplary embodiments will be described in detail herein, with examples illustrated in the accompanying drawings. In the following description, when referring to the drawings, identical numerals in different figures represent identical or similar elements, unless otherwise indicated. The embodiments described in the following exemplary embodiments are not intended to represent all embodiments consistent with the present application. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the present application, as detailed in the appended claims.

[0082] A module in this application refers to a functional module or a logical module. It can be in software form, where a processor executes program code to implement its functionality, or it can be in hardware form. "And / or" describes the relationship between associated objects, indicating that three possible relationships exist. For example, "A and / or B" can represent: A exists alone, A and B exist simultaneously, or B exists alone. The character " / " generally indicates that the associated objects are in an "or" relationship.

[0083] Battery packs typically consist of multiple cells. Due to differences in manufacturing materials and processes, each cell's internal resistance and capacity can vary. Furthermore, due to variations in operating environments, such as mounting location and heat dissipation, the performance of each cell in the battery pack can become inconsistent over time, leading to overcharging of high-energy cells and over-discharging of low-energy cells. Therefore, cell pack balancing is necessary. Passive balancing is a common balancing technique that distributes energy from high-energy cells to achieve energy balance across the entire pack. Due to limitations in the analog front-end (AFE) chip, passive balancing can affect the balancing currents of adjacent cells while passive balancing is also occurring, impacting balancing efficiency. To address this issue, passive balancing can be used to divide the cells in the pack into multiple groups based on their placement. Cells in each group are separated, and balancing is initiated alternately across groups to prevent adjacent cells from being balanced simultaneously.

[0084] In the prior art, when performing balancing on a target cell group, the balancing time of the target cell group is often set to a fixed duration, without considering the actual balancing time of each cell in the target cell group, resulting in inaccurate balancing time and poor cell balancing effect.

[0085] The following specific embodiments are used to illustrate the technical solution of the present application. The following specific embodiments can be combined with each other, and the same or similar concepts or processes may not be described in detail in some embodiments.

[0086] Figure 1 This is a flow chart of a method for balancing the cells of a battery pack provided in an embodiment of the present application. Figure 1 As shown, the cell balancing method of the battery pack provided in this embodiment may include:

[0087] S101, determining an initial time array according to the balancing time of each cell in the battery pack;

[0088] S102, determining a typical time array based on the distribution of data in the initial time array, where the typical time array includes data that is concentrated in the initial time array;

[0089] S103: Determine the processing duration of the current balancing process based on the typical time array;

[0090] S104: Perform balancing processing on the battery pack, and end the balancing processing when the duration of the balancing processing reaches the processing duration.

[0091] In a specific implementation, the data distribution of the balancing time of each battery cell in the battery pack can be analyzed, and the concentrated balancing time can be selected as the typical time array. The typical time array can effectively reflect the typical characteristics of the balancing time of each battery cell in the battery pack, so that the processing time of this balancing process can be determined. Instead of directly adopting a fixed processing time, the processing time can be determined based on the balancing time of each battery cell in the battery pack, and the influence of the balancing time with a more discrete distribution that is significantly different from other balancing times on the overall data can be excluded. The processing time of the balancing process can be accurately determined, which can effectively improve the balancing effect. Specifically, assuming that the fixed processing time is too long, and the overall balancing time of each cell in the battery pack is relatively short, then the use of a fixed processing time will result in the actual balancing processing duration not reaching the fixed processing time, when each cell has basically completed balancing, resulting in the balancing process not being able to end in time and low balancing efficiency; assuming that the fixed processing time is too short, and the overall balancing time of each cell in the battery pack is relatively long, then the use of a fixed processing time will result in the actual balancing processing duration reaching the fixed processing time, when many cells have not yet completed balancing, resulting in poor balancing effect. The embodiment of the present application determines the processing time based on the concentrated distribution of data in the balancing time of each cell in the battery pack, so that when the actual balancing processing time reaches the processing time, most cells have completed balancing or have undergone effective partial balancing, and the consistency of the battery pack after the balancing process is better, thereby effectively improving the balancing effect. It can be understood that the concentrated distribution of data means that the deviation of each data point from the mean of all data is small.

[0092] In a possible implementation, determining the typical time array according to the distribution of data in the initial time array includes:

[0093] Determine a first data value by performing variance or standard deviation processing on the data in the initial time array;

[0094] Based on the first data value, a representative time array is determined.

[0095] In a specific implementation, the variance or standard deviation can be used to accurately reflect the degree of concentration of the data in the initial time array. When the variance or standard deviation is not less than a preset threshold, it can be considered that the data of the current initial time array is not concentrated enough; when the variance or standard deviation is not greater than the preset threshold, it can be considered that the degree of concentration of the data of the current initial time array meets the preset requirements.

[0096] It should be noted that in actual applications, other methods can also be used to characterize the concentration of data in the time array. The variance or standard deviation is only used as an example for illustration and does not constitute a limitation on the embodiments of the present application.

[0097] In a possible implementation, by performing variance or standard deviation processing on the data in the initial time array, the first data value is determined, including:

[0098] Execute the first process, where the first process includes: removing the maximum value in the current time array to obtain the first time array, and performing variance or standard deviation processing on the first time array to obtain the first result; and, removing the minimum value in the initial time array to obtain the second time array, and performing variance or standard deviation processing on the second time array to obtain the second result;

[0099] Take the smaller of the first result and the second result as the first data value.

[0100] Specifically, in the initial time array BalTimeX_Up, remove the maximum equilibrium time BalTimeX_Up[X] to obtain the array BalTimeX_UP_Max, and calculate the first variance or the first standard deviation Sigma_Max of all elements in the array BalTimeX_UP_Max; in the initial time array BalTimeX_Up, remove the minimum equilibrium time BalTimeX_Up[1] to obtain the array BalTimeX_UP_Min, and calculate the second variance or the second standard deviation Sigma_Min of the array BalTimeX_UP_Min. If Sigma_Min < Sigma_Max, it indicates that the elements in BalTimeX_UP_Min are more stable, then update BalTimeX_Up to BalTimeX_UP_Min, and take BalTimeX_UP_Min as the first data value, thereby removing the minimum equilibrium time as an extreme value; if Sigma_Min > Sigma_Max, it indicates that the elements in BalTimeX_UP_Max are more stable, then update BalTimeX_Up to BalTimeX_UP_Max, and take BalTimeX_UP_Max as the first data value, thereby removing the maximum equilibrium time as an extreme value. If Sigma_Min = Sigma_Max, then BalTimeX_Up can be updated to either BalTimeX_UP_Min or BalTimeX_UP_Max. Here, only the case of updating BalTimeX_Up to BalTimeX_UP_Max is taken as an example for illustration. Therefore, based on the first data value, the concentration degree of the data in the initial time array after removing extreme values can be determined, and thus the typical time array can be determined. By determining the extreme values to be removed based on the variance or standard deviation of the array, the stability of the initial time array and the concentration of the equilibrium times in the array are effectively improved.

[0101] Exemplarily, before removing the maximum value in the initial time array, it further includes:

[0102] Sort the initial time array in ascending or descending order, and determine the maximum and minimum values ​​in the initial time array.

[0103] Specifically, assuming that the number of cells that need to be balanced in all cells in the battery pack is X, the corresponding balancing time is BalTimeX={BalTime(j)(j=1,2,..X), BalTime(j)>0}, and BalTimeX is sorted in ascending order to obtain the initial time array BalTimeX_Up (an array of X dimensions). This can quickly determine the minimum balancing time BalTimeMin=BalTimeX_Up[1] and the maximum balancing time BalTimeMax=BalTimeX_Up[X] in the initial time array BalTimeX_Up. It is understandable that BalTimeX can also be sorted in descending order to obtain the initial time array, and this is not limited here.

[0104] In a possible implementation, determining a typical time array according to the first data value includes:

[0105] The first data value is compared with a preset threshold value. If the first data value is not greater than the preset threshold value, the time array corresponding to the first data value is used as a typical time array.

[0106] In a specific implementation, after determining the first data value min(Sigma_Min,Sigma_Max), the first data value min(Sigma_Min,Sigma_Max) is compared with the preset threshold Sigma_Thr. If min(Sigma_Min,Sigma_Max)≤Sigma_Thr, it indicates that the data concentration of the time array corresponding to the current first data value has met the requirements, and the time array corresponding to the current first data value is used as a typical time array, so that the typical time array can eliminate the interference of extreme values ​​and effectively reflect the typical distribution characteristics of the equilibrium time in the initial time array.

[0107] In one possible implementation, the method further includes:

[0108] If the first data value is greater than the preset threshold, the first process is executed again.

[0109] In a specific implementation, if min(Sigma_Min,Sigma_Max)>Sigma_Thr, it indicates that the data concentration of the current time array is still poor, and the first process can be continued to remove extreme values ​​in the current time array and improve the data concentration.

[0110] It is understood that each execution of the first process is performed on the current time array. When the first process is executed for the first time, the current time array is the initial time array. Repeating the first process can gradually increase the degree of data concentration until the target typical time array is obtained.

[0111] In a possible implementation, determining the processing duration of the current balancing process based on the typical time array includes:

[0112] If the number of cells in the typical time array is greater than a preset number threshold, the average of the balancing times in the typical time array is determined as the processing duration of the current balancing process.

[0113] In a specific implementation, to avoid excessive removal operations, which could result in a small number of data samples in the typical time array and thus fail to effectively reflect the characteristics of the initial time array, when determining if min(Sigma_Min,Sigma_Max)≤Sigma_Thr, a further determination is made as to whether the number of balancing times in the current initial time array, size(BalTimeX_Up), is greater than a preset threshold. If so, this indicates that the number of data samples in the typical time array is not too small, and the processing duration can be determined based on the typical time array, effectively improving the reliability of the processing duration determination. When min(Sigma_Min,Sigma_Max)≤Sigma_Thr and size(BalTimeX_Up)>the threshold, the processing duration of the current balancing process can be calculated as the mean value (Time_Mean) of the elements in the current BalTimeX_Up array. This allows the processing duration of the current balancing process to be accurately determined based on the concentrated balancing times of all cells in the battery pack, eliminating interference from extreme values ​​and achieving higher balancing efficiency.

[0114] In a possible implementation, determining the processing duration of the current balancing process based on the typical time array further includes:

[0115] If the number of balancing times in the typical time array is not greater than a preset number threshold, the average of the maximum value and the minimum value in the initial time array is determined as the processing duration of the current balancing process.

[0116] In the specific implementation, if the number size (BalTimeX_Up) of balancing time in the current initial time array is not greater than the preset number threshold, it indicates that the number of data samples in the typical time array is too small to accurately and reliably reflect the characteristics of the initial time array. Therefore, the upper limit of the duration of this balancing processing is calculated as the average of the maximum and minimum values ​​in the initial time array BalTimeMin+(BalTimeMax-BalTimeMin) / 2, which can effectively improve the reliability of the upper limit of the duration of the balancing processing.

[0117] Exemplarily, the quantity threshold is half (X / 2) of the quantity of cells in the initial time array, and the balancing time in the initial time array is not zero.

[0118] In some embodiments, the method further comprises:

[0119] After the current balancing process is completed, the processing time for the next balancing process is determined;

[0120] The next balancing process is performed on the battery pack according to the processing time of the next balancing process.

[0121] In a specific implementation, after the current balancing process is completed, the balancing time for each cell in the battery pack is updated. Based on the updated balancing time for each cell in the battery pack, the duration of the next balancing process is determined with reference to steps S101-S103. Specifically, based on the updated balancing time for each cell in the battery pack, an initial time array corresponding to the next balancing process is determined. Based on the distribution of data in the initial time array corresponding to the next balancing process, a typical time array corresponding to the next balancing process is determined, thereby determining the duration of the next balancing process. The next balancing process is performed on the battery pack, and when the duration of the next balancing process reaches the next balancing process duration, the next balancing process is terminated, thereby achieving multiple balancing processes for the battery pack.

[0122] Among them, the BMS system can update the balancing time of each battery cell in the battery pack by re-acquiring the energy status of each battery cell; it can also update the balancing time of each battery cell in the battery pack according to the balancing time of each battery cell and the processing time of this balancing process.

[0123] In one possible implementation, performing balancing on a battery pack includes:

[0124] Determine the sleep duration of the device where the battery pack is located based on the processing time, so as to wake up the device when the device enters sleep mode and the sleep duration reaches the sleep duration.

[0125] Perform balancing on the battery pack based on the sleep time.

[0126] In a specific implementation, the sleep duration Delta_SleepT of the device containing the battery pack can be determined based on the processing duration. After the BMS system sends a balancing instruction to the AFE chip, the device can enter sleep mode. The AFE chip can perform balancing on the battery pack according to the balancing instruction while the device is in sleep mode, effectively utilizing the device's sleep time to perform balancing processing and effectively improving the balancing efficiency of the battery pack. When the device enters sleep mode for a duration equal to Delta_SleepT, the balancing process ends and the device wakes up.

[0127] In one possible implementation, the method further includes:

[0128] After the device wakes up, determine the processing time for the next equalization process;

[0129] The next sleep duration of the device is determined according to the processing duration of the next balancing process, and the device is controlled to enter sleep again.

[0130] In the specific implementation, when the device enters sleep mode for a period of time equal to Delta_SleepT, the current balancing process is completed and the device is woken up. The Battery Management System (BMS) can calculate the processing time for the next balancing process and send the next balancing instruction to the AFE chip. After the instruction is sent, the device is controlled to enter sleep mode again, so that the AFE chip can perform the next balancing of the battery pack while the device is in sleep mode.

[0131] Illustratively, the device may be a vehicle.

[0132] Exemplarily, determining the sleep duration of the device where the battery pack is located based on the upper limit of the duration includes:

[0133] Determine the maximum and minimum sleep durations set for the device;

[0134] If the processing time is not less than the maximum sleep time, the sleep time of the device is determined to be the maximum sleep time;

[0135] If the processing duration is less than the maximum sleep duration and not greater than the minimum sleep duration, the sleep duration of the device is determined to be the processing duration;

[0136] If the processing time is longer than the minimum sleep time, the sleep time of the device is determined to be the minimum sleep time.

[0137] Specifically, after determining the processing duration, judge the size relationship between the processing duration and the minimum sleep duration SleepTimeMin and the maximum sleep duration SleepTimeMax. If the processing duration ≤ the minimum sleep duration SleepTimeMin, then set the sleep duration Delta_SleepT = SleepTimeMin to prevent the device from being frequently woken up; if the processing duration ≥ the maximum sleep duration SleepTimeMax, then set the sleep duration Delta_SleepT = SleepTimeMax to prevent the device from having too long a single sleep time; if SleepTimeMin < processing duration < SleepTimeMax, then the sleep duration Delta_SleepT = processing duration, so that the sleep duration always remains within the preset duration range, improving the reliability of device sleep.

[0138] In some embodiments, the battery pack is configured with multiple analog front-end chips, each battery cell of the battery pack is assigned to multiple analog front-end chips, and the battery cells under each analog front-end chip are divided into multiple battery cell groups; before performing the balancing process on the battery pack, it further includes:

[0139] Determine the balancing time of each battery cell under each analog front-end chip;

[0140] According to the balancing time of each battery cell under each analog front-end chip, take the battery cell group where the battery cell with the longest balancing time is located under each analog front-end chip as the target battery cell group under each analog front-end chip, and perform the balancing process on the target battery cell group under each analog front-end chip.

[0141] Figure 2 It is a schematic diagram of the application scenario provided by the embodiment of the present application. As Figure 2 shown, the battery pack includes multiple battery cells. The BMS can obtain the energy state of each battery cell, thereby determining the balancing time of each battery cell. The balancing time of the battery cell represents the duration required for balancing the battery cell. The BMS sends a balancing instruction to the AFE chip, and the balancing instruction includes the balancing time of each battery cell. Each AFE chip determines the battery cell group where the battery cell with the longest balancing time is located under the AFE chip as the target battery cell group according to the balancing instruction, and controls each battery cell in the target battery cell group to perform balancing, so that the battery cell group with relatively poor energy consistency can be preferentially balanced, effectively improving the balancing effect.

[0142] In this embodiment, determining the duration required for balancing each battery cell in the battery pack, taking the battery cell group where the battery cell with the longest duration is located as the target battery cell group, and performing the balancing process on the target battery cell group can preferentially balance the battery cell group with relatively poor energy consistency, effectively improving the balancing effect.

[0143] In a possible implementation, the battery cells in each battery cell group are not adjacent to each other.

[0144] In a specific implementation, the cells in each cell group are not adjacent to each other, so balancing is performed only on the cell group containing the cell with the longest balancing time, while balancing is not performed on other cell groups. This can effectively avoid the mutual influence of balancing currents caused by balancing adjacent cells at the same time, thereby improving balancing efficiency and balancing effect.

[0145] In one possible implementation, the method further includes:

[0146] The odd-numbered cells under each analog front-end chip are used as the odd group under the analog front-end chip, and the even-numbered cells under each analog front-end chip are used as the even group under the analog front-end chip to obtain multiple cell groups.

[0147] like Figure 2 As shown, the cells in the battery pack are controlled by multiple AFE chips. The cells under each AFE chip can be divided into multiple cell groups, and the cells in each cell group are not adjacent to each other. After receiving the balancing instruction, each AFE chip controls only one of the multiple cell groups for balancing. The cells under each AFE chip can be divided into odd and even groups. In actual applications, the cell groups can also be divided in other ways, which are not limited here.

[0148] Exemplarily, when the cells under each AFE chip are divided into odd groups and even groups, based on the balancing time of each cell under each analog front-end chip, the cell group containing the cells with the longest balancing time under each analog front-end chip is used as the target cell group under each analog front-end chip, including:

[0149] According to the balancing time of the battery cells under each analog front-end chip, the serial number of the battery cell with the longest balancing time under the analog front-end chip is determined;

[0150] If the serial number of the cell with the longest balancing time is odd, the odd group under the analog front-end chip is used as the target cell group, and balancing is performed on the target cell group determined under multiple analog front-end chips.

[0151] Exemplarily, when the cells under each AFE chip are divided into odd groups and even groups, based on the balancing time of each cell under each analog front-end chip, the cell group containing the cells with the longest balancing time under each analog front-end chip is used as the target cell group under each analog front-end chip, further comprising:

[0152] If the serial number of the cell with the longest balancing time is an even number, the even number group under the analog front-end chip is used as the target cell group, and balancing is performed on the target cell group determined under multiple analog front-end chips.

[0153] Specifically, assume that there are N AFE chips in the battery pack, and each AFE chip controls M(i) (i=1,2..N) cells. When a balancing instruction is received, assume that the balancing time corresponding to the cells in the i-th AFE chip is BalTimeI={BalTimei(k)(k=1,2...M(i))}. By traversing, find the maximum value in BalTimei(k) and determine the cell number (the cell number within the cell group controlled by the AFE chip) CellNum(i) corresponding to the maximum balancing time. Calculate the remainder Mod(i) of CellNum(i) divided by 2. If Mod(i)=1, balancing is enabled for the odd-numbered cells controlled by the AFE chip. If Mod(i)=0, balancing is enabled for the even-numbered cells controlled by the AFE chip. The same applies to the remaining AFE chips.

[0154] In some embodiments, the method further comprises:

[0155] After the current cell balancing is completed, the balancing time of each cell in the battery pack is updated;

[0156] If the balancing time of each cell in the updated battery pack is zero, the cell balancing is completed and the process ends.

[0157] In a specific implementation, the BMS system can update the balancing time of each cell in the battery pack after each cell balancing is completed. If the elements in the initial time array BalTimeX obtained after the update are all 0, it means that there are no cells in the battery pack that need to be balanced, and the balancing process ends.

[0158] In some embodiments, the method further comprises:

[0159] If the updated balancing time of each cell in the battery pack is not zero, the next cell balancing process is performed according to the updated balancing time of each cell.

[0160] In the specific implementation, if the elements in the updated initial time array BalTimeX are not all 0, it means that there are still cells in the battery pack that need to be balanced. According to the updated initial time array BalTimeX, the typical time array is determined, and based on the typical time array, the processing time of this balancing process is determined, so as to perform the next cell balancing process.

[0161] In one possible implementation, updating the balancing time of each cell in the battery pack includes:

[0162] The balancing time of each cell in the battery pack is subtracted from the actual balancing time of each cell in the current cell balancing process to obtain the updated balancing time of each cell.

[0163] In a specific implementation, if the BMS does not re-determine the energy state of each cell and calculate the balancing time of each cell based on the energy state, the balancing time of each cell in the battery pack can be subtracted from the actual balancing time of each cell in the current cell balancing process, so as to accurately update the balancing time of each cell. For example, if the balancing time of cell 1 is 4 hours, and the actual balancing time of cell 1 in the current cell balancing process is 3 hours, then after the current cell balancing process is completed, the balancing time of cell 1 will be updated to 1 hour.

[0164] It is understandable that when performing cell balancing on a battery pack, the actual time for each cell to perform the balancing process may be different. The AFE chip can perform balancing processing on each cell according to the balancing time of each cell, and the actual time for each cell to perform the balancing process shall not exceed the processing time of this balancing process.

[0165] Exemplarily, the method further includes:

[0166] For each battery cell, if the balancing time of the battery cell is less than the processing time, the time when the balancing process is actually performed on the battery cell is determined as the balancing time of the battery cell.

[0167] For example, assuming that the balancing time of the battery cell 2 is 2 hours and the processing time of the current battery cell balancing process is 3 hours, it is determined that the actual balancing time of the battery cell 2 is 2 hours.

[0168] Exemplarily, the method further includes:

[0169] For each battery cell, if the balancing time of the battery cell is not less than the processing time, the time for which the balancing process is actually performed on the battery cell is determined to be the processing time.

[0170] For example, assuming that the balancing time of the battery cell 2 is 4 hours and the processing time of the current battery cell balancing process is 3 hours, it is determined that the actual balancing time of the battery cell 2 is 3 hours.

[0171] The cell balancing method for a battery pack provided in the present application determines the time required for balancing each cell in the battery pack, takes the cell group containing the cell with the longest time as the target cell group, and performs balancing on the target cell group. This method can prioritize balancing the cell group with poor energy consistency, effectively improving the balancing effect.

[0172] Figure 3 This is a flowchart of the sleep balance process provided by the embodiment of this application. Figure 3As shown, the device can be set to perform cell balancing in sleep mode. When the sleep signal is received, the balancing time BalTimeX and the initial time array BalTimeX_Up of all cells are determined, and the sleep duration Delta_SleepT is calculated. The specific calculation method is as described above and will not be repeated here. The actual sleep duration of the device is set to the sleep duration Delta_SleepT, and it enters sleep mode after the balancing instruction is issued. Each AFE chip will determine the target cell group where the cell with the largest balancing time is located based on the balancing time of each cell under the chip, and perform balancing on the target cell group, thereby achieving balancing state switching within the group. After the sleep duration Delta_SleepT is reached, the device wakes up and updates the balancing time BalTimeX of all cells. If BalTimeX is all 0, the balancing is ended, otherwise the next balancing is continued.

[0173] Figure 4 This is a schematic diagram of the structure of the cell balancing device provided in the embodiment of the present application. Figure 4 As shown, the cell balancing device 40 provided in the embodiment of the present application includes:

[0174] A first determining module 41 is configured to determine an initial time array according to the balancing time of each cell in the battery pack;

[0175] A second determining module 42 is configured to determine a typical time array according to the distribution of the data in the initial time array, wherein the typical time array includes the data that is concentrated in the initial time array;

[0176] A third determining module 43 is configured to determine a processing duration of the current equalization processing according to the typical time array;

[0177] The balancing module 44 is configured to perform a balancing process on the battery pack and terminate the balancing process when the duration of the balancing process reaches the processing duration.

[0178] It should be noted that the cell balancing device is used to execute the method described above, and its specific implementation is as described above and will not be repeated here.

[0179] Figure 5 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present application, such as Figure 5 As shown, the electronic device includes:

[0180] The electronic device includes a processor 291 and a memory 292. It may also include a communication interface 293 and a bus 294. The processor 291, memory 292, and communication interface 293 can communicate with each other via bus 294. Communication interface 293 can be used for information transmission. The processor 291 can invoke logic instructions in memory 292 to execute the methods of the above embodiments.

[0181] In addition, the logic instructions in the memory 292 can be implemented in the form of software functional units and can be stored in a computer-readable storage medium when sold or used as an independent product.

[0182] Memory 292, as a computer-readable storage medium, can be used to store software programs and computer-executable programs, such as program instructions / modules corresponding to the methods in the embodiments of the present application. Processor 291 executes the software programs, instructions, and modules stored in memory 292 to perform functional applications and data processing, thereby implementing the methods in the above-mentioned method embodiments.

[0183] Memory 292 may include a program storage area and a data storage area. The program storage area may store an operating system and at least one application required for a function; the data storage area may store data generated based on the use of the terminal device. Memory 292 may also include high-speed random access memory and non-volatile memory.

[0184] An embodiment of the present application provides a non-transitory computer-readable storage medium, wherein the computer-readable storage medium stores computer-executable instructions. When the computer-executable instructions are executed by a processor, they are used to implement the method described in the above embodiment.

[0185] An embodiment of the present application provides a computer program product, including a computer program. When the computer program is executed by a processor, the method provided in any of the above embodiments of the present application is implemented.

[0186] Those skilled in the art will readily appreciate other embodiments of the present application after considering the specification and practicing the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the present application that follow the general principles of the present application and include common knowledge or customary techniques in the art not disclosed herein. The description and examples are to be considered as exemplary only, and the true scope and spirit of the present application are indicated by the following claims.

[0187] It should be understood that the present application is not limited to the exact structure described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present application is limited only by the appended claims.

Claims

1. A method for balancing cells of a battery pack, characterized in that: include: Determine the initial time array based on the balancing time of each cell in the battery pack; Determining a typical time array according to the distribution of data in the initial time array, wherein the typical time array includes the data concentratedly distributed in the initial time array; Determining the processing duration of the current balancing process according to the typical time array; Performing a balancing process on the battery pack, and ending the balancing process when the duration of the balancing process reaches the processing duration.

2. The method according to claim 1, characterized in that Determining a typical time array according to the distribution of data in the initial time array includes: Determine a first data value by performing variance or standard deviation processing on the data in the initial time array; A typical time array is determined based on the first data value.

3. The method according to claim 2, characterized in that The determining the first data value by performing variance or standard deviation processing on the data in the initial time array includes: Executing a first process, the first process comprising: removing a maximum value from a current time array to obtain a first time array, and performing variance or standard deviation processing on the first time array to obtain a first result; and removing a minimum value from the initial time array to obtain a second time array, and performing variance or standard deviation processing on the second time array to obtain a second result; The smaller one of the first result and the second result is used as the first data value.

4. The method according to claim 3, characterized in that Determining a typical time array according to the first data value includes: The first data value is compared with a preset threshold value. If the first data value is not greater than the preset threshold value, the time array corresponding to the first data value is used as the typical time array.

5. The method according to claim 4, characterized in that The method further comprises: If the first data value is greater than the preset threshold, the first process is executed again.

6. The method according to claim 3, characterized in that Before removing the maximum value in the initial time array, the method further includes: The initial time array is sorted in ascending order or descending order, and the maximum value and the minimum value in the initial time array are determined.

7. The method according to claim 1, characterized in that The determining, based on the typical time array, the processing duration of the current equalization processing, includes: If the number of cells in the typical time array is greater than a preset number threshold, an average of the balancing times in the typical time array is determined as the processing duration of the current balancing process.

8. The method according to claim 7, characterized in that Determining the processing duration of the current balancing process according to the typical time array further includes: If the number of balancing times in the typical time array is not greater than a preset number threshold, the average of the maximum value and the minimum value in the initial time array is determined as the processing duration of the current balancing process.

9. The method according to claim 7, characterized in that The quantity threshold is half of the quantity of the cells in the initial time array, and the balancing time in the initial time array is not zero.

10. The method according to any one of claims 1 to 9, characterized in that The method further comprises: After the current balancing process is completed, the processing time for the next balancing process is determined; Performing the next balancing process on the battery pack according to the processing time length of the next balancing process.

11. The method according to claim 10, characterized in that The performing balancing processing on the battery pack includes: Determine, based on the processing duration, a sleep duration of the device where the battery pack is located, so as to wake up the device when the device enters sleep mode for a duration equal to the sleep duration; Performing balancing processing on the battery pack according to the sleep time.

12. The method according to claim 11, characterized in that The method further comprises: After the device wakes up, determining a processing duration for performing the next equalization process; The next sleep duration of the device is determined according to the processing duration of the next equalization processing, and the device is controlled to enter sleep again.

13. The method according to claim 12, characterized in that The determining, based on the processing time, the sleep time of the device where the battery pack is located, includes: Determining a maximum sleep duration and a minimum sleep duration set for the device; If the processing time is not less than the maximum sleep time, determining the sleep time of the device to be the maximum sleep time; If the processing duration is less than the maximum sleep duration and greater than the minimum sleep duration, determining the sleep duration of the device to be the processing duration; If the processing time is not greater than the minimum sleep time, the sleep time of the device is determined to be the minimum sleep time.

14. The method according to claim 1, wherein The battery pack is configured with multiple analog front-end chips, each cell of the battery pack is allocated to the multiple analog front-end chips, and the cells under each analog front-end chip are divided into multiple cell groups; Before performing the balancing process on the battery pack, the method further includes: Determining the balancing time of each battery cell under each analog front-end chip; According to the balancing time of each battery cell under each analog front-end chip, the battery cell group where the battery cell with the longest balancing time under each analog front-end chip is located is used as the target battery cell group under each analog front-end chip, and balancing processing is performed on the target battery cell group under each analog front-end chip.

15. The method according to claim 14, characterized in that The cells in each cell group are not adjacent to each other.

16. The method according to claim 15, characterized in that The method further comprises: The odd-numbered cells under each analog front-end chip are used as the odd group under the analog front-end chip, and the even-numbered cells under each analog front-end chip are used as the even group under the analog front-end chip.

17. The method according to claim 16, characterized in that The method of taking the cell group containing the cells with the longest balancing time under each analog front-end chip as the target cell group under each analog front-end chip according to the balancing time of each cell under each analog front-end chip includes: Determine the sequence number of the cell with the longest balancing time under the analog front-end chip according to the balancing time of the cells under each analog front-end chip; If the sequence number of the cell with the longest balancing time is an odd number, the odd number group under the analog front-end chip is used as the target cell group, and balancing is performed on the target cell group determined under the multiple analog front-end chips.

18. The method according to claim 17, characterized in that The method further includes: taking the cell group containing the cells with the longest balancing time under each analog front-end chip as the target cell group under each analog front-end chip according to the balancing time of each cell under each analog front-end chip; If the sequence number of the cell with the longest balancing time is an even number, the even number group under the analog front-end chip is used as the target cell group, and balancing is performed on the target cell group determined under the multiple analog front-end chips.

19. The method according to claim 10, characterized in that After performing the balancing process on the battery pack, the method further includes: After the current balancing is completed, the balancing time of each cell in the battery pack is updated; If the balancing time of each cell in the updated battery pack is zero, the cell balancing is completed and the process ends.

20. The method according to claim 19, characterized in that The method further comprises: If the updated balancing time of each cell in the battery pack is not zero, the next cell balancing process is performed according to the updated balancing time of each cell.

21. The method according to claim 20, characterized in that The updating of the balancing time of each cell in the battery pack includes: The balancing time of each battery cell in the battery pack is subtracted from the actual balancing time of each battery cell in the current battery cell balancing process to obtain an updated balancing time of each battery cell.

22. The method according to claim 21, characterized in that The method further comprises: For each battery cell, if the balancing time of the battery cell is less than the processing time, the time when the balancing process is actually performed on the battery cell is determined as the balancing time of the battery cell.

23. The method according to claim 21, characterized in that The method further comprises: For each battery cell, if the balancing time of the battery cell is not less than the processing time, the time for actually performing the balancing process on the battery cell is determined to be the processing time.

24. An electronic device, characterized in that: include: a processor, and a memory communicatively connected to the processor; The memory stores computer-executable instructions; The processor executes the computer-executable instructions stored in the memory to implement the method according to any one of claims 1 to 23.

25. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer-executable instructions, which are used to implement the method according to any one of claims 1 to 23 when executed by a processor.

26. A computer program product, characterized in that The computer-readable storage medium stores computer-executable instructions, which are used to implement the method according to any one of claims 1 to 23 when executed by a processor.

Citation Information

Patent Citations

  • Bus-type lithium battery pack balance system prediction control method

    CN107134827A

  • System and method for actively balancing magnetic energy in magnetic core of transformer

    CN117811167A

  • Flange seal

    KR1020220050781A

  • Battery pack balancing method, battery management system and battery system

    WO2017139967A1