A method, system, battery system, and computer program product for displaying the state of charge (SOC) of a battery pack.
By using a battery pack SOC display processing method, the problem of jumps in the battery pack SOC display when the state changes is solved, and the stability of the display in the open circuit state is achieved, thus improving the user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-01
- Publication Date
- 2026-04-03
AI Technical Summary
The battery pack SOC display exhibits a jump issue when the status changes, and remains unchanged when the circuit is open, impacting the user experience.
A battery pack SOC display processing method is adopted, which uses data input, validity judgment, battery pack status judgment and ampere-hour integration calculation to gradually approach the maximum and minimum real single cell SOC values, ensuring that the display does not change in the open circuit state.
The issue of fluctuating battery pack SOC display has been resolved, improving the user experience, especially by maintaining stable display in open circuit mode.
Smart Images

Figure CN117110930B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of battery management technology, and particularly relates to a processing method, processing system, battery system, and computer program product for displaying the SOC of a battery pack. Background Technology
[0002] SOC (State of Charge) is the ratio of a battery's remaining capacity to its rated capacity. SOC is a crucial parameter for evaluating battery packs, effectively indicating their remaining charge. It's essential for ensuring the stable operation of energy storage stations and helping drivers monitor the driving range of electric vehicles. The Battery Management System (BMS) is a key component in energy storage and new energy vehicles, accurately monitoring battery performance parameters such as total voltage, current, and individual cell voltage.
[0003] During battery pack operation, the system needs to display the battery pack SOC and individual cell SOC values. When the battery pack is in a resting state (open circuit state), the displayed group SOC and individual cell SOC values remain unchanged. When the battery pack is charging, the group SOC gradually approaches the maximum actual individual cell SOC value during charging, and the displayed individual cell SOC value also gradually approaches the maximum actual individual cell SOC value. When charging is complete, both the group SOC and individual cell SOC values are 100. When the battery pack is discharging, the group SOC gradually approaches the minimum actual individual cell SOC value during discharging, and the displayed individual cell SOC value also gradually approaches the actual individual cell SOC value. When discharging is complete, the battery pack SOC value approaches 0. Because the battery pack SOC exhibits a bottleneck effect, depending on the worst-performing cell, it depends on both the maximum and minimum individual cell SOC. For example, during charging, the maximum individual cell SOC limits its charging capacity, and during discharging, the minimum individual cell SOC limits its discharging capacity. If the battery pack directly follows the maximum and minimum individual cell SOC during charging and discharging, jumps in SOC may occur. Summary of the Invention
[0004] To address the aforementioned technical problems, the present invention aims to provide a method for displaying the State of Charge (SOC) of a battery pack. This method resolves SOC fluctuations caused by changes in the battery pack's state through display processing, gradually approaching the maximum and minimum true individual cell SOC values. Simultaneously, in the open-circuit state, battery SOC correction can be performed, but since the battery pack is not charging or discharging, the display should remain unchanged, resulting in a better user experience.
[0005] To achieve the above objectives, the present invention adopts the following technical solution:
[0006] A method for processing the state of charge (SOC) display of a battery pack, the method comprising the following steps:
[0007] 1) Data Input
[0008] Data inputs include: individual cell SOC, denoted by SOCi[t]; individual cell display SOCShow, denoted by SOCShowi[t]; intermediate calculations for individual cell display SOCShow, denoted by SOCShowi'[t]; individual cell SOH, denoted by SOHi[t]; battery pack display SOC, denoted by GSOC[t]; intermediate calculations for battery pack display SOC, denoted by GSOC'[t]; individual cell voltage Vi[t]; full charge indicator, denoted by Sign; interval time, denoted by T; individual cell rated capacity, denoted by Cap; battery pack current, denoted by Cur[t]; and current error value, denoted by Curdif. Where i represents the individual cell number and t represents the time.
[0009] 2) Data validity assessment
[0010] For the SOC of a single cell, SOCShow is displayed for the single cell and SOC of the battery pack. The validity of each data point is judged, and the validity range of each data point is [0,100]. The maximum value SOCmax[t], minimum value SOCmin[t], and average value SOCavg[t] of the single cell SOC are calculated.
[0011] If the range is exceeded, SOCShowi[t] = SOCi[t], GSOC[t] = SOCavg[t];
[0012] At the initial time 1, SOCShowi[1]=SOCi[1], GSOC[1]=SOCavg[1];
[0013] 3) Battery pack status assessment
[0014] Cur[t] > Curdif, indicating charging;
[0015] Cur[t] < -1 × Curdif, indicating discharge;
[0016] -1×Curdif≤Cur[t]≤Curdif, indicating an open circuit;
[0017] 4) Calculation of ampere-hour integral
[0018] GSOC[t] = GSOC[t-1] + 100 × (Cur[t] × T) / (standard time × Cap);
[0019] GSOC'[t] = GSOC[t];
[0020] SOCShowi[t]=SOCShowi[t - 1]+100×(Cur[t]×T) / (Standard time×Cap);
[0021] SOCShowi’[t]=SOCShowi[t];
[0022] The standard time is the time with the same unit of interval converted from 1 hour; t, the current moment; t - 1, the previous moment;
[0023] 5) Display calculation for each state of the battery pack
[0024] 5.1) Display calculation for open - circuit state: Not calculated;
[0025] 5.2) Display calculation for discharge state:
[0026] 5.2.1) Display calculation when SOCmin[t]>80 in the initial discharge state: Not calculated;
[0027] 5.2.2) Display calculation when 40 < SOCmin[t] ≤ 80 in the mid - discharge state:
[0028] Step 1: Calculate the maximum value SOCDifmax[t] in |GSOC’[t]-SOCavg[t]| and |SOCShowi’[t]-SOCi[t]|;
[0029] Step 2: Calculate the correction amplitude dSOC[t]=SOCDifmax[t]×D / Remaining capacity; D=(Cur[t]×T) / Standard time, the standard time is the time with the same unit of interval converted from 1 hour; Remaining capacity = SOCmin[t]×Cap;
[0030] Step 3: When (GSOC’[t]-SOCmin[t])>dSOC[t], GSOC[t]=GSOC’[t]-dSOC[t];
[0031] Step 4: When (SOCmin[t]-GSOC’[t])>dSOC[t], GSOC[t]=GSOC’[t]+dSOC[t];
[0032] Step 5: When (SOCShowi’[t]-SOC[t])>dSOC[t], SOCShowi[t]=SOCShowi’[t]-dSOC[t];
[0033] Step 6: When (SOCi[t]-SOCShowi’[t])>dSOC[t], SOCShowi[t]=SOCShowi’[t]+dSOC[t];
[0034] 5.2.3) Calculation for the state in the later stage of discharge when 1 < SOCmin[t] ≤ 40:
[0035] Step 1: Calculate the maximum value SOCDifmax[t] among |GSOC’[t] - SOCmin[t]| and |SOCShowi’[t] - SOCi[t]|;
[0036] Step 2: Calculate the correction amplitude dSOC[t] = SOCDifmax[t] × D / remaining capacity; D = (Cur[t] × T) / standard time, where the standard time is the time with the same unit as the interval time converted from 1 hour; remaining capacity = SOCmin[t] × Cap;
[0037] Step 3: When (GSOC’[t] - SOCmin[t]) > dSOC[t], GSOC[t] = GSOC’[t] - dSOC[t];
[0038] Step 4: When (SOCmin[t] - GSOC’[t]) > dSOC[t], GSOC[t] = GSOC’[t] + dSOC[t];
[0039] Step 5: When (SOCShowi’[t] - SOCi[t]) > dSOC[t], SOCShowi[t] = SOCShowi’[t] - dSOC[t];
[0040] Step 6: When (SOCi[t] - SOCShowi’[t]) > dSOC[t], SOCShowi[t] = SOCShowi’[t] + dSOC[t];
[0041] 5.2.4) Calculation for the state at the end of discharge (SOCmin[t] ≤ 1):
[0042] GSOC[t] = SOCmin[t], SOCShowi[t] = SOCi[t];
[0043] 5.3) Calculation for the charging state display:
[0044] 5.3.1) Calculation for the state in the initial stage of charging when SOCmax[t] < 25: Not calculated;
[0045] 5.3.2) Calculation for the state in the middle stage of charging when 25 ≤ SOCmax[t] < 70:
[0046] Step 1: Calculate the maximum value SOCDifmax[t] among |GSOC’[t] - SOCavg[t]| and |SOCShowi’[t] - SOCi[t]|;
[0047] Step 2: Calculate the correction magnitude dSOC[t] = SOCDifmax[t] × D / remaining capacity; D = (Cur[t] × T) / standard time, where standard time is 1 hour converted to the same unit of interval time; remaining capacity = SOCmin[t] × Cap;
[0048] Step 3: When (GSOC'[t]-SOCmin[t])>dSOC[t], GSOC[t]=GSOC'[t]-dSOC[t];
[0049] Step 4: When (SOCmin[t]-GSOC'[t])>dSOC[t], GSOC[t]=GSOC'[t]+dSOC[t];
[0050] Step 5: When (SOCShowi'[t]-SOC[t])>dSOC[t], SOCShowi[t]=SOCShowi'[t]-dSOC[t];
[0051] Step 6: When (SOCi[t]-SOCShowi'[t])>dSOC[t], SOCShowi[t]=SOCShowi'[t]+dSOC[t];
[0052] 5.3.3) During the later stages of charging, when SOCmax[t] < 99, the calculation is displayed as follows:
[0053] Step 1: Calculate the maximum value SOCDifmax[t] among |GSOC'[t]-SOCmax[t]| and |SOCShowi'[t]-SOCmax|;
[0054] Step 2: Calculate the correction magnitude dSOC[t] = SOCDifmax[t] × D / remaining capacity; D = (Cur[t] × T) / standard time, where standard time is 1 hour converted to the same unit of interval time; remaining capacity = SOCmin[t] × Cap;
[0055] Step 3: When (GSOC'[t]-SOCmin[t])>dSOC[t], GSOC[t]=GSOC'[t]-dSOC[t];
[0056] Step 4: When SOCmin[t] - GSOC'[t] > dSOC[t], GSOC[t] = GSOC'[t] + dSOC[t];
[0057] Step 5: When (SOCShowi'[t]-SOCi[t])>dSOC[t], SOCShowi[t]=SOCShowi'[t]-dSOC[t];
[0058] Step 6: When (SOCi[t]-SOCShowi'[t])>dSOC[t], SOCShowi[t]=SOCShowi'[t]+dSOC[t];
[0059] 5.3.4) Calculation of charging completion state SOCmax[t]≥99:
[0060] GSOC[t]=SOCmax[t],SOCShowi[t]=SOCmax[t];
[0061] 5.3.5) When the full flag is received, GSOC[t]=100, SOCShowi[t]=100.
[0062] Preferably, the interval time in step 1) is 250ms and the current error value is 0.5A.
[0063] Furthermore, the present invention also discloses a battery pack SOC display system, which uses the aforementioned processing method to process the battery pack SOC display.
[0064] Furthermore, the present invention also discloses a battery system that includes the battery pack SOC display system described above.
[0065] Furthermore, the present invention also discloses a computer device, including a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the method.
[0066] Furthermore, the present invention also discloses a computer-readable storage medium having a computer program or instructions stored thereon, which, when executed by a processor, implement the method.
[0067] Furthermore, the present invention also discloses a computer program product, including a computer program or instructions that, when executed by a processor, implement the method.
[0068] This application employs the aforementioned technical solution, which addresses battery pack state-of-the-art (SOC) fluctuations through display processing, gradually approaching the maximum and minimum true individual cell SOC values. Simultaneously, in the open-circuit state, battery SOC correction can be performed, but since the battery pack is not charging or discharging, the display should remain unchanged, resulting in a better user experience. Attached Figure Description
[0069] Figure 1 This is a system flowchart of the present invention. Detailed Implementation
[0070] The technical solutions of the present invention will be thoroughly reviewed and described below with reference to the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. All other embodiments obtained by those skilled in the art without creative effort, based on the embodiments of the present invention, are within the scope of protection of the present invention.
[0071] like Figure 1 The system shown is a battery pack SOC display system, which includes a data input section, a data validity judgment section, a battery pack status judgment section, an ampere-hour integral calculation section, and a display calculation section for each battery pack status.
[0072] The battery pack states include open circuit state, charging state, and discharging state, and each state includes:
[0073] Open circuit status: Open circuit status display calculation;
[0074] Charging status: Initial charging status display and calculation, mid-charging status display and calculation, late charging status display and calculation, and end charging status display and calculation;
[0075] Discharge status: Initial discharge status display and calculation, mid-discharge status display and calculation, late discharge status display and calculation, and end discharge status display and calculation.
[0076] Data input:
[0077] Data inputs include: individual cell SOC, denoted by SOCi[t]; individual cell display SOCShow, denoted by SOCShowi[t]; intermediate calculations for individual cell display SOCShow, denoted by SOCShowi'[t]; individual cell SOH, denoted by SOHi[t]; battery pack display SOC, denoted by GSOC[t]; intermediate calculations for battery pack display SOC, denoted by GSOC'[t]; individual cell voltage Vi[t]; full charge indicator, denoted by Sign; interval time, denoted by T; individual cell rated capacity, denoted by Cap; battery pack current, denoted by Cur[t]; and current error value, denoted by Curdif. Where i represents the individual cell number and t represents the time.
[0078] Data validity assessment section:
[0079] For the SOC of a single cell, SOCShow is displayed for the single cell and SOC of the battery pack. The validity of each data point is judged, and the validity range of each data point is [0,100]. The maximum value SOCmax[t], minimum value SOCmin[t], and average value SOCavg[t] of the single cell SOC are calculated.
[0080] If the range is exceeded, SOCShowi[t] = SOCi[t], GSOC[t] = SOCavg[t];
[0081] At the initial time 1, SOCShowi[1]=SOCi[1], GSOC[1]=SOCavg[1].
[0082] Battery pack status assessment section:
[0083] Cur[t] > Curdif, indicating charging;
[0084] Cur[t] < -1 × Curdif, indicating discharge;
[0085] -1×Curdif≤Cur[t]≤Curdif, indicating an open circuit.
[0086] Ah-hour integral calculation section:
[0087] GSOC[t] = GSOC[t-1] + 100 × (Cur[t] × T) / (standard time × Cap);
[0088] GSOC'[t] = GSOC[t];
[0089] SOCShowi[t] = SOCShowi[t-1] + 100 × (Cur[t] × T) / (Standard Time × Cap);
[0090] SOCShowi'[t]=SOCShowi[t];
[0091] Standard time is 1 hour converted to the same unit of time interval; t, current time; t-1, previous time.
[0092] Battery pack status display calculation section:
[0093] 5.1) Open circuit status display calculation: Not calculated;
[0094] 5.2) Discharge status display calculation:
[0095] 5.2.1) Initial discharge state SOCmin[t]>80: No calculation required;
[0096] 5.2.2) Discharge mid - stage state 40 < SOCmin[t] ≤ 80 display calculation:
[0097] Step 1: Calculate the maximum value SOCDifmax[t] in |GSOC’[t] - SOCavg[t]| and |SOCShowi’[t] - SOCi[t]|;
[0098] Step 2: Calculate the correction amplitude dSOC[t]=SOCDifmax[t]×D / remaining capacity; D = (Cur[t]×T) / standard time, the standard time is 1 hour converted into the same unit of time as the interval time; remaining capacity = SOCmin[t]×Cap;
[0099] Step 3: When (GSOC’[t] - SOCmin[t]) > dSOC[t], GSOC[t]=GSOC’[t] - dSOC[t];
[0100] Step 4: When (SOCmin[t] - GSOC’[t]) > dSOC[t], GSOC[t]=GSOC’[t]+dSOC[t];
[0101] Step 5: When (SOCShowi’[t] - SOC[t]) > dSOC[t], SOCShowi[t]=SOCShowi’[t] - dSOC[t];
[0102] Step 6: When (SOCi[t] - SOCShowi’[t]) > dSOC[t], SOCShowi[t]=SOCShowi’[t]+dSOC[t];
[0103] 5.2.3) Discharge late - stage state 1 < SOCmin[t] ≤ 40 display calculation:
[0104] Step 1: Calculate the maximum value SOCDifmax[t] in |GSOC’[t] - SOCmin[t]| and |SOCShowi’[t] - SOCi[t]|;
[0105] Step 2: Calculate the correction amplitude dSOC[t]=SOCDifmax[t]×D / remaining capacity; D = (Cur[t]×T) / standard time, the standard time is 1 hour converted into the same unit of time as the interval time; remaining capacity = SOCmin[t]×Cap;
[0106] Step 3: When (GSOC’[t] - SOCmin[t]) > dSOC[t], GSOC[t]=GSOC’[t] - dSOC[t];
[0107] Step 4: When SOCmin[t] - GSOC'[t] > dSOC[t], GSOC[t] = GSOC'[t] + dSOC[t];
[0108] Step 5: When (SOCShowi'[t]-SOCi[t])>dSOC[t], SOCShowi[t]=SOCShowi'[t]-dSOC[t];
[0109] Step 6: When (SOCi[t]-SOCShowi'[t])>dSOC[t], SOCShowi[t]=SOCShowi'[t]+dSOC[t];
[0110] 5.2.4) Discharge end state (SOCmin[t]≤1) display calculation:
[0111] GSOC[t]=SOCmin[t],SOCShowi[t]=SOCi[t];
[0112] 5.3) Charging status display calculation:
[0113] 5.3.1) Initial charging state SOCmax[t] < 25: No calculation required.
[0114] 5.3.2) Mid-charge state 25≤SOCmax[t]<70 Display calculation:
[0115] Step 1: Calculate the maximum value SOCDifmax[t] among |GSOC'[t]-SOCavg[t]| and |SOCShowi'[t]-SOCi[t]|;
[0116] Step 2: Calculate the correction magnitude dSOC[t] = SOCDifmax[t] × D / remaining capacity; D = (Cur[t] × T) / standard time, where standard time is 1 hour converted to the same unit of interval time; remaining capacity = SOCmin[t] × Cap;
[0117] Step 3: When (GSOC'[t]-SOCmin[t])>dSOC[t], GSOC[t]=GSOC'[t]-dSOC[t];
[0118] Step 4: When (SOCmin[t]-GSOC'[t])>dSOC[t], GSOC[t]=GSOC'[t]+dSOC[t];
[0119] Step 5: When (SOCShowi'[t]-SOC[t])>dSOC[t], SOCShowi[t]=SOCShowi'[t]-dSOC[t];
[0120] Step 6: When (SOCi[t]-SOCShowi'[t])>dSOC[t], SOCShowi[t]=SOCShowi'[t]+dSOC[t];
[0121] 5.3.3) During the later stages of charging, when SOCmax[t] < 99, the calculation is displayed as follows:
[0122] Step 1: Calculate the maximum value SOCDifmax[t] among |GSOC'[t]-SOCmax[t]| and |SOCShowi'[t]-SOCmax|;
[0123] Step 2: Calculate the correction magnitude dSOC[t] = SOCDifmax[t] × D / remaining capacity; D = (Cur[t] × T) / standard time, where standard time is 1 hour converted to the same unit of interval time; remaining capacity = SOCmin[t] × Cap;
[0124] Step 3: When (GSOC'[t]-SOCmin[t])>dSOC[t], GSOC[t]=GSOC'[t]-dSOC[t];
[0125] Step 4: When SOCmin[t] - GSOC'[t] > dSOC[t], GSOC[t] = GSOC'[t] + dSOC[t];
[0126] Step 5: When (SOCShowi'[t]-SOCi[t])>dSOC[t], SOCShowi[t]=SOCShowi'[t]-dSOC[t];
[0127] Step 6: When (SOCi[t]-SOCShowi'[t])>dSOC[t], SOCShowi[t]=SOCShowi'[t]+dSOC[t];
[0128] 5.3.4) Calculation of charging completion state SOCmax[t]≥99:
[0129] GSOC[t]=SOCmax[t],SOCShowi[t]=SOCmax[t];
[0130] 5.3.5) When the full flag is received, GSOC[t]=100, SOCShowi[t]=100.
[0131] The foregoing description of embodiments of the present invention, through which those skilled in the art are able to implement or use the present invention, will be readily apparent to those skilled in the art. Various modifications to these embodiments will be readily apparent to those skilled in the art. The general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the invention. Therefore, the present invention is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novelty disclosed herein.
Claims
1. A method for processing the display of the SOC of a battery pack, the method comprising the following steps: 1) Data input Data input includes: The SOC of a single battery is represented by SOCi[t]; The displayed SOC of a single battery, SOCShow, is represented by SOCShowi[t]; The intermediate calculation amount of the displayed SOC of a single battery, SOCShowi’[t]; the SOH of a single battery, SOHi[t]; the displayed SOC of the battery pack, GSOC[t]; the intermediate calculation amount of the displayed SOC of the battery pack, GSOC’[t]; the voltage of a single battery, Vi[t]; the full charge flag, represented by Sign; the interval time, represented by T; the rated capacity of a single battery, represented by Cap; the current of the battery pack, Cur[t]; the current error value, represented by Curdif; where i represents the serial number of the single battery and t represents the moment; 2) Data validity judgment Perform validity judgments on the SOC of a single battery, the displayed SOC of a single battery, and the displayed SOC of the battery pack respectively. The validity range of each item of data is [0, 100]; and calculate the maximum value SOCmax[t], the minimum value SOCmin[t], and the average value SOCavg[t] in the SOC of a single battery; If it exceeds the range, SOCShowi[t]=SOCi[t], GSOC[t]=SOCavg[t]; At the initial first moment, SOCShowi[1]=SOCi[1], GSOC[1]=SOCavg[1]; 3) Battery pack status judgment If Cur[t]>Curdif, it is judged as charging; If Cur[t]<-1×Curdif, it is judged as discharging; If -1×Curdif≤Cur[t]≤Curdif, it is judged as open circuit; 4) Ampere-hour integration calculation GSOC[t]=GSOC[t - 1]+100×(Cur[t]×T) / (standard time×Cap); GSOC’[t]=GSOC[t]; SOCShowi[t]=SOCShowi[t - 1]+100×(Cur[t]×T) / (standard time×Cap); SOCShowi’[t]=SOCShowi[t]; The standard time is the time when 1 hour is converted into the same unit of the interval time; t, the current moment; t - 1, the previous moment; 5) Display calculation in each state of the battery pack 5.1) Open circuit state display calculation: Do not calculate; 5.2) Discharge state display calculation: 5.2.1) Discharge initial state SOCmin[t]>80 display calculation: Do not calculate; 5.2.2) Discharge intermediate state 40<SOCmin[t]≤80 display calculation: Step 1: Calculate the maximum value SOCDifmax[t] in |GSOC’[t]-SOCavg[t]| and |SOCShowi’[t]-SOCi[t]|; Step 2: Calculate the correction amplitude dSOC[t] = SOCDifmax[t] × D / remaining capacity; D = (Cur[t] × T) / standard time, where the standard time is 1 hour converted to the same unit of interval time; remaining capacity = SOCmin[t] × Cap; Step 3: When (GSOC’[t] - SOCmin[t]) > dSOC[t], GSOC[t] = GSOC’[t] - dSOC[t]; Step 4: When (SOCmin[t] - GSOC’[t]) > dSOC[t], GSOC[t] = GSOC’[t] + dSOC[t]; Step 5: When (SOCShowi’[t] - SOC[t]) > dSOC[t], SOCShowi[t] = SOCShowi’[t] - dSOC[t]; Step 6: When (SOCi[t] - SOCShowi’[t]) > dSOC[t], SOCShowi[t] = SOCShowi’[t] + dSOC[t]; 5.2.3) Discharge late state 1 < SOCmin[t] ≤ 40 display calculation: Step 1: Calculate the maximum value SOCDifmax[t] of |GSOC’[t] - SOCmin[t]| and |SOCShowi’[t] - SOCi[t]|; Step 2: Calculate the correction amplitude dSOC[t] = SOCDifmax[t] × D / remaining capacity; D = (Cur[t] × T) / standard time, where the standard time is 1 hour converted to the same unit of interval time; remaining capacity = SOCmin[t] × Cap; Step 3: When (GSOC’[t] - SOCmin[t]) > dSOC[t], GSOC[t] = GSOC’[t] - dSOC[t]; Step 4: When SOCmin[t] - GSOC’[t]) > dSOC[t], GSOC[t] = GSOC’[t] + dSOC[t]; Step 5: When (SOCShowi’[t] - SOCi[t]) > dSOC[t], SOCShowi[t] = SOCShowi’[t] - dSOC[t]; Step 6: When (SOCi[t] - SOCShowi’[t]) > dSOC[t], SOCShowi[t] = SOCShowi’[t] + dSOC[t]; 5.2.4) Discharge end state (SOCmin[t] ≤ 1) display calculation: GSOC[t] = SOCmin[t], SOCShowi[t] = SOCi[t]; 5.3) Charge state display calculation: 5.3.1) Charge initial state SOCmax[t] < 25 display calculation: Do not calculate; 5.3.2) Charge mid - state 25 ≤ SOCmax[t] < 70 display calculation: Step 1: Calculate the maximum value SOCDifmax[t] among |GSOC'[t]-SOCavg[t]| and |SOCShowi'[t]-SOCi[t]|; Step 2: Calculate the correction magnitude dSOC[t] = SOCDifmax[t] × D / remaining capacity; D = (Cur[t] × T) / standard time, where standard time is 1 hour converted to the same unit of interval time; remaining capacity = SOCmin[t] × Cap; Step 3: When (GSOC'[t]-SOCmin[t])>dSOC[t], GSOC[t]=GSOC'[t]-dSOC[t]; Step 4: When (SOCmin[t]-GSOC'[t])>dSOC[t], GSOC[t]=GSOC'[t]+dSOC[t]; Step 5: When (SOCShowi'[t]-SOC[t])>dSOC[t], SOCShowi[t]=SOCShowi'[t]-dSOC[t]; Step 6: When (SOCi[t]-SOCShowi'[t])>dSOC[t], SOCShowi[t]=SOCShowi'[t]+dSOC[t]; 5.3.3) During the later stages of charging, when SOCmax[t] < 99, the calculation is displayed as follows: Step 1: Calculate the maximum value SOCDifmax[t] among |GSOC'[t]-SOCmax[t]| and |SOCShowi'[t]-SOCmax|; Step 2: Calculate the correction magnitude dSOC[t] = SOCDifmax[t] × D / remaining capacity; D = (Cur[t] × T) / standard time, where standard time is 1 hour converted to the same unit of interval time; remaining capacity = SOCmin[t] × Cap; Step 3: When (GSOC'[t]-SOCmin[t])>dSOC[t], GSOC[t]=GSOC'[t]-dSOC[t]; Step 4: When SOCmin[t] - GSOC'[t] > dSOC[t], GSOC[t] = GSOC'[t] + dSOC[t]; Step 5: When (SOCShowi'[t]-SOCi[t])>dSOC[t], SOCShowi[t]=SOCShowi'[t]-dSOC[t]; Step 6: When (SOCi[t]-SOCShowi'[t])>dSOC[t], SOCShowi[t]=SOCShowi'[t]+dSOC[t]; 5.3.4) Calculation of charging completion state SOCmax[t]≥99: GSOC[t]=SOCmax[t],SOCShowi[t]=SOCmax[t]; 5.3.5) When the full flag is received, GSOC[t]=100, SOCShowi[t]=100.
2. The method according to claim 1, characterized in that, Step 1) The interval time is 250ms, and the current error value is 0.5A.
3. A battery pack SOC display system, characterized in that, The system uses the processing method described in claim 1 or 2 to process the battery pack SOC display.
4. A battery system comprising the battery pack SOC display system of claim 3.
5. A computer device, comprising a memory, a processor, and a computer program stored in the memory, characterized in that, The processor executes the computer program to implement the method according to any one of claims 1-2.
6. A computer-readable storage medium having a computer program or instructions stored thereon, characterized in that, When the computer program or instructions are executed by a processor, they implement the method described in any one of claims 1-2.
7. A computer program product, comprising a computer program or instructions, characterized in that, When the computer program or instructions are executed by a processor, they implement the method described in any one of claims 1-2.
Citation Information
Patent Citations
Method and device for correcting state of charge of battery pack and electronic equipment
CN115421047A
Battery SOC correction method, device and system and readable storage medium
CN115524620A