Method and system for monitoring system operation status when battery management system failure occurs

By constructing a linked list D data structure and a fault monitoring module, the problem of being unable to record the status before and after a fault in the existing technology is solved, and the continuous storage and display of the fault status of the battery management system is achieved.

CN119127653BActive Publication Date: 2025-09-19JIANGSU SFERE ELECTRIC
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411613400.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-13
Publication Date
2025-09-19
Estimated Expiration
2044-11-13

AI Technical Summary

Technical Problem

In the prior art, when an electrical fault occurs, the battery management system can only record the system status at the time of the fault, but cannot record the continuous status for a period of time before and after the fault occurs, resulting in the inability to reflect the actual status at the time of the fault.

Method used

Construct a linked list D data structure, including M data backup areas. Each area consists of backup areas before, during, and after the fault. The system status data before and after the fault is recorded through the scheduled update and fault monitoring module, and the data is stored in the storage medium after a preset delay time.

Benefits of technology

The system operation status data before and after the fault is continuously stored, which makes it easy to view the entire continuous status data before and after the fault through the APP.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119127653B_ABST
    Figure CN119127653B_ABST
Patent Text Reader

Abstract

The present invention provides a method and system for monitoring the system operation status of a battery management system when a fault occurs: constructing a linked list D data structure including M data cache locations; constructing a system status cache data structure including N data areas; regularly and sequentially updating the system operation status data in the data areas; whenever a fault is monitored, recording the fault ID and the fault occurrence timestamp and storing them in a blank data cache location, storing all system operation status data in the system status cache data structure corresponding to the time point of the fault occurrence in this blank data cache location; looping through the linked list to determine whether the current data cache location has a fault occurrence timestamp and whether it meets a preset fixed delay time from the fault occurrence timestamp; if both are true, storing all system operation status data in the system status cache data structure corresponding to the time point when the preset fixed delay time reaches the current data cache location, shifting the data in the current data cache location together, and determining the next data cache location.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of system operation status monitoring, and in particular to a method for monitoring the system operation status when a battery management system failure occurs and a system for monitoring the system operation status when a battery management system failure occurs. Background Art

[0002] Currently, battery management systems typically include a method for recording system failures. When a failure occurs, the battery management system records some system status information at the time of the failure and stores it in a suitable storage medium. This information can then be read later by other devices (such as computer apps) using a fixed communication protocol and displayed on a corresponding interface.

[0003] In the prior art, battery management systems only record system operating information when a fault occurs. This presents a problem: the system status for a period of time before or after the fault occurs is not recorded. Only the system status from the time the fault occurs to a certain moment after the fault occurs can be recorded. This single momentary state cannot reflect the true system state at the time of the fault. The true state at the time of the fault should be determined by the system state for a period of time before and after the fault occurs. To address this technical problem, the present invention provides a method and system for monitoring the system operating status of a battery management system during a fault. Summary of the Invention

[0004] In view of the problems and shortcomings of the prior art, the present invention provides a method and system for monitoring the operating status of a battery management system when a fault occurs.

[0005] The present invention solves the above technical problems through the following technical solutions:

[0006] The present invention provides a method for monitoring the system operation status of a battery management system when a fault occurs, which is characterized in that the method comprises the following steps:

[0007] S1. Construct a linked list D data structure. The linked list D data structure includes M data backup areas. Each data backup area serves as a data cache location. Each data backup area consists of a pre-failure backup area 1, a post-failure backup area 2, and a failure backup area. M is a positive integer.

[0008] S2. Build a system status cache data structure. The system status cache data structure is shared by M data backup areas. The system status cache data structure includes N data areas, each of which is used to cache a copy of system operation status data. N is a positive integer.

[0009] S3. For the system status cache data structure, sequentially update the system operation status data in the data area of ​​the system status cache data structure at set intervals, and overwrite the original system operation status data with the updated system operation status data in the currently updated data area;

[0010] Continuously monitor whether there are any faults. Whenever a fault is detected, record the fault ID and fault occurrence timestamp of the fault and cache them in the fault-time backup area of ​​the empty data cache location. Cache all system operating status data in the system status cache data structure corresponding to the time of the fault occurrence into the pre-fault backup area 1 of the empty data cache location.

[0011] Loop through the M data cache positions in the linked list D data structure to determine whether the current data cache position has a cached fault occurrence timestamp and whether it meets the preset fixed delay time from the fault occurrence timestamp. If both are yes, all system operation status data in the system status cache data structure corresponding to the moment when the preset fixed delay time is reached are cached to the post-fault backup area 2 of the current data cache position, and the data cached in the pre-fault backup area 1, the backup area at the time of the fault, and the post-fault backup area 2 in the current data cache position are moved to the storage medium. The current data cache position becomes a blank data cache position, and the next data cache position is determined. Otherwise, the next data cache position is directly determined.

[0012] The present invention also provides a system operation status monitoring system for a battery management system failure, which is characterized in that it includes a first data structure construction module, a second data structure construction module, a data update module, a first fault monitoring module and a second fault monitoring module;

[0013] The first data structure construction module is used to construct a linked list D data structure, the linked list D data structure includes M data backup areas, each data backup area serves as a data cache location, each data backup area is composed of a pre-failure backup area 1, a post-failure backup area 2, and a fault backup area, and M is a positive integer;

[0014] The second data structure construction module is used to construct a system status cache data structure, the system status cache data structure is shared by M data backup areas, the system status cache data structure includes N data areas, each data area is used to cache a copy of system operation status data, and N is a positive integer;

[0015] The data update module is used to update the system operation status data in the data area of ​​the system state cache data structure at set intervals, and to overwrite the original system operation status data with the updated system operation status data in the currently updated data area;

[0016] The first fault monitoring module is used to continuously monitor whether a fault occurs. Whenever a fault is detected, the fault ID and fault occurrence timestamp of the fault are recorded and cached in a fault-time backup area of ​​a blank data cache location. All system operating status data in the system status cache data structure corresponding to the time of the fault occurrence are cached in a pre-fault backup area 1 of the blank data cache location.

[0017] The second fault monitoring module is used to loop through the M data cache positions in the linked list D data structure to determine whether the current data cache position has a cached fault occurrence timestamp and whether it meets the preset fixed delay time from the fault occurrence timestamp. If both are yes, all system operation status data in the system status cache data structure corresponding to the moment when the preset fixed delay time is reached are cached to the post-fault backup area 2 of the current data cache position, and the data cached in the pre-fault backup area 1, the fault backup area and the post-fault backup area 2 in the current data cache position are moved to the storage medium together. The current data cache position becomes a blank data cache position, and the next data cache position is determined. Otherwise, the next data cache position is directly determined.

[0018] The positive progress effect of the present invention is:

[0019] The present invention is used to realize that when a fault occurs, the system can store the system operation status data for a period of time before and after the fault occurs. When the fault data is subsequently read through the APP, the entire continuous system status data before and after the fault occurs can be accessed. In simple terms, when the fault data occurs, the status of the period before the fault occurs and the time when the fault occurs are cached, and then after the system continues to run for a fixed period of time, the system status during this period and the previously cached system status data are stored together in the storage medium. The entire fault storage logic is carried out continuously, and the status information for a period of time before and after all faults occur can be stored for easy viewing by users. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] Figure 1 It is a block diagram of the composition of the linked list D data structure of the present invention.

[0021] Figure 2 This is a block diagram of the system status cache data structure of the present invention.

[0022] Figure 3 This is a workflow diagram of Task 1 for updating the system status cache data structure of the present invention.

[0023] Figure 4 This is the workflow diagram for Task 3 of updating the content of the "Linked List D Data Structure" of the present invention.

[0024] Figure 5 This is a block diagram of the working principle of the system operation status monitoring system of the present invention.

[0025] Figure 6 It is an experimental effect diagram of the present invention. DETAILED DESCRIPTION

[0026] To make the objectives, technical solutions, and advantages of the embodiments of the present invention more clear, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts shall fall within the scope of protection of the present invention.

[0027] like Figure 1-4 As shown, this embodiment provides a method for monitoring the system operation status of a battery management system when a fault occurs, which includes the following steps:

[0028] S1. Construct a linked list D data structure. The linked list D data structure includes M data backup areas. Each data backup area is used as a data cache location. Each data backup area consists of a pre-failure backup area 1, a fault backup area, and a post-failure backup area 2 (see Figure 1 ), M is a positive integer.

[0029] In this step, the pre-failure backup area 1 is used to temporarily store data before the failure occurs, the on-failure backup area is used to temporarily store data when the failure occurs, and the post-failure backup area 2 is used to temporarily store data after the failure occurs.

[0030] S2. Construct a system status cache data structure. The system status cache data structure is shared by M data backup areas. The system status cache data structure includes N data areas (see Figure 2 ), each data area is used to cache a copy of system operation status data, and N is a positive integer.

[0031] S3. For the system status cache data structure, the system operation status data in the data area of ​​the system status cache data structure is updated sequentially at set intervals, and the updated system operation status data is used to overwrite the original system operation status data in the currently updated data area.

[0032] See Figure 3 , Task 1 further specifically includes:

[0033] S311. Initialize n=1.

[0034] S312 : When the set interval time is reached, the system operation status data in the nth data area of ​​the system status cache data structure is updated regularly and the original system operation status data in the nth data area is overwritten.

[0035] S313, assign n=n+1, determine whether n>N, if not, go to step S312, if so, go to step S314.

[0036] S314: Assign n=1, and repeat step S312.

[0037] Task 2: Continuously monitor whether there are any faults. Whenever a fault is detected, record the fault ID and fault occurrence timestamp of the fault, and cache them in sequence in the fault backup area of ​​the blank data cache position. Take out all the system operation status data in the system status cache data structure corresponding to the time of the fault in order from old to new, and cache them in the pre-fault backup area 1 of this blank data cache position. When the fault is cached to the Mth data cache position, the next sequence is the first blank data cache position starting from the first data cache position.

[0038] Task 3: Loop through the M data cache locations in the linked list D data structure to determine whether the current data cache location has a cached fault occurrence timestamp and whether it meets the preset fixed delay time from the fault occurrence timestamp. If both are true, all system operation status data in the system status cache data structure corresponding to the moment when the preset fixed delay time is reached are taken out in order from old to new, and cached to the post-fault backup area 2 of the current data cache location. The data cached in the pre-fault backup area 1, the backup area at the time of the fault, and the post-fault backup area 2 in the current data cache location are moved to the storage medium together. The current data cache location becomes a blank data cache location, and the next data cache location is determined. Otherwise, the next data cache location is directly determined.

[0039] See Figure 4 , Task 3 further specifically includes:

[0040] S321. Initialize m=1.

[0041] S322 , determining whether the m th data cache location has a fault occurrence timestamp cached, if yes, proceeding to step S323 , if not, proceeding to step 325 .

[0042] S323: Determine whether the preset fixed delay time from the fault occurrence timestamp is met. If so, proceed to step S324; otherwise, proceed to step S325.

[0043] S324. All system operation status data in the system status cache data structure corresponding to the moment when the preset delay fixed time is reached are taken out in order from old to new, and cached in the post-failure backup area 2 of the m-th data cache position, and the data cached in the pre-failure backup area 1, the backup area at the time of the failure, and the post-failure backup area 2 in the m-th data cache position are moved to the storage medium together, and the m-th data cache position becomes a blank data cache position, and enters step S325.

[0044] S325. Assign m=m+1 and determine whether m>M. If not, proceed to step S322; if so, proceed to step S326.

[0045] S326. Assign m=1 and repeat step S322.

[0046] In this embodiment, a "system status cache data structure" is set up (the data cache position in the "linked list D data structure" is shared, and each data area in the system status cache data structure caches a copy of the system operation status data). This structure contains N data areas. This structure will call task 1 to periodically update the system operation status data in the data area in sequence; the update time interval between two adjacent data areas from data area 1 to data area N is the same, which ensures that the data in the data area can always be acquired in sequence from old to new.

[0047] In this embodiment, a "linked list D data structure" is provided. This structure includes M data backup areas, each of which serves as a data cache location, such as locations 1 through M. Each data backup area contains a pre-failure backup area 1, a fault-once backup area, and a post-failure backup area 2. Pre-failure backup area 1 is used to cache data from the pre-failure system status cache data structure, the fault-once backup area is used to cache data such as the fault ID and fault occurrence time, and the post-failure backup area 2 is used to cache data from the post-failure system status cache data structure. The data in pre-failure backup area 1 and post-failure backup area 2 both come from the system status cache data structure. The data structures stored in locations 1 through M of the linked list D data structure are identical, consisting of system status data from the period before and after the fault.

[0048] This embodiment includes a task 1 corresponding to the "system status cache data structure", which is responsible for regularly updating the system operation status data in the data area of ​​the system status cache data structure; for example, when task 1 is called for the first time, the current data area index of the "system status cache data structure" is 1, and the task will store the current system operation status data in data area 1; when task 1 is called for the second time, the current data area index of the "system status cache data structure" is 2, and the task will store the current system operation status data in data area 2; when task 1 is called for the N+1th time, the current data area index of the "system status cache data structure" is 1, and the task will store the current system operation status data in data area 1 and overwrite the original system operation status data in data area 1; and so on, and so on.

[0049] This embodiment includes a task 2, which is responsible for continuously monitoring for faults. Whenever a fault is detected, it records the fault ID and fault occurrence timestamp of the fault. The fault ID and current time (fault occurrence timestamp) are sequentially cached in the fault-time backup area of ​​a blank data cache location in the "Linked List D Data Structure." Simultaneously, at the moment of the fault, all system operating status data in the system status cache data structure is retrieved from the system status cache data structure in descending order and stored in the pre-fault backup area 1 of the blank data cache location in the "Linked List D Data Structure." The data cache location is then automatically moved to the next blank data cache location. If the data cache location is already at the last location, the next location moved to is the first blank data cache location from the first data cache location.

[0050] This embodiment includes a task 3. This task first locates position m in the "linked list D data structure" corresponding to an alarm that has not yet been stored in the storage medium. It then continuously checks whether the current system timestamp has exceeded a specified time (e.g., 10 seconds, a preset fixed delay time) relative to the timestamp of the fault occurrence time at position m (m=1...M) in the "linked list D data structure." If this time has passed, task 3 immediately stores the entire system status cache data in the post-fault backup area 2 at position m (m=1...M) in the "linked list D data structure" in ascending order. This, together with the pre-fault backup area 1 at position m (m=1...M) in the "linked list D data structure," forms the system operating status data corresponding to a continuous period before and after the fault. Task 3 also stores all data at position m in the entire "linked list D data structure" to the storage medium. Position m then automatically moves to the next position. If position m is already the last position, the next position becomes the first position.

[0051] Throughout the entire process, Tasks 1, 2, and 3 will all run periodically at corresponding frequencies. Task 1 uses the "System Status Cache Data Structure" to record a continuous period of system operating status data in real time. When Fault 1 occurs, Task 2 records the timestamp B1 of Fault 1 and caches Fault ID 1 and the corresponding system status data from the "System Status Cache Data Structure" from oldest to newest to the corresponding position in the "Linked List D Data Structure" at the current position 1. The "System Status Cache Data Structure" will continue to update data periodically, and the storage position in the "Linked List D Data Structure" will shift to the next position 2. When the next Fault 2 occurs, the system will again follow the above process, caching Fault 2's timestamp B2, Fault ID 2, and the system operating status data from the "System Status Cache Data Structure" from oldest to newest to the corresponding position in the "Linked List D Data Structure" at position 2. The storage position in the "Linked List D Data Structure" will then shift to the next position 3, and so on. At the same time, Task 3 will also scan the timestamp B1 when the fault occurred at the current position 1 (the oldest timestamp position) in the "Linked List D Data Structure". When it is determined that the fault record timestamp B1 in the current position 1 in the "Linked List D Data Structure" has continued for a fixed time, it will quickly cache the system operation status data from old to new in the "System Status Cache Data Structure" to another corresponding position in the current position 1 in the "Linked List D Data Structure". In this way, the data in the current position 1 in the "Linked List D Data Structure" can record all the system operation status data in a continuous period of time before and after the timestamp B1 when the fault 1 occurred. Then Task 3 will quickly store the information in position 1 into the storage medium, clear position 1, and quickly move position m (m=1...M) of the "Linked List D Data Structure" to the next position, and continue to scan the timestamp B2 of the fault 2 record at position 2 in the "Linked List D Data Structure". When it is determined that the fault record timestamp B2 in the current position 2 in the "Linked List D Data Structure" has continued for a fixed time, the system operation status data from old to new in the "System Status Cache Data Structure" will be quickly cached to another corresponding position in the current position 2 in the "Linked List D Data Structure"; if it is determined that the fault record timestamp B2 in the current position 2 in the "Linked List D Data Structure" has not met the preset delay fixed time, then continue to judge the next position.

[0052] By analogy, when running at this pace, Task 2 continuously updates the faults, their corresponding timestamps, and system operating status data stored in the "Linked List D Data Structure," while Task 3 continuously checks whether the delayed storage time after the fault occurrence stored in the "Linked List D Data Structure" meets the specified time. After the specified time is reached, Task 3 will store the corresponding alarm information in the "Linked List D Data Structure" to the storage medium. The coordination of Tasks 2 and 3 always ensures that after Task 3 finishes storing the fault information at one location and moves to the next location, the fault corresponding to the next location must have occurred after the fault at the previous location, thus ensuring the continuity of the entire state information storage.

[0053] See Figure 5 This embodiment also provides a system operation status monitoring system for a battery management system failure, which includes a first data structure construction module 1, a second data structure construction module 2, a data update module 3, a first fault monitoring module 4 and a second fault monitoring module 5.

[0054] The first data structure construction module 1 is used to construct a linked list D data structure, which includes M data backup areas. Each data backup area serves as a data cache location. Each data backup area is composed of a pre-failure backup area 1, a post-failure backup area 2, and a failure-time backup area. M is a positive integer.

[0055] The second data structure construction module 2 is used to construct a system status cache data structure, which is shared by M data backup areas. The system status cache data structure includes N data areas, each of which is used to cache a copy of system operation status data, and N is a positive integer.

[0056] The data update module 3 is used to update the system operation status data in the data area of ​​the system status cache data structure at set intervals, and to overwrite the original system operation status data with the updated system operation status data in the currently updated data area.

[0057] Optimally, the data updating module 3 includes a first initialization unit, an updating unit, a first assignment judgment unit and a first direct assignment unit.

[0058] The first initialization unit is used to initialize n=1.

[0059] The updating unit is used to regularly update the system running status data in the nth data area of ​​the system status cache data structure when the set interval time is reached and overwrite the original system running status data in the nth data area.

[0060] The first assignment judgment unit is used to assign n=n+1, judge whether n>N, call the update unit when the answer is no, and call the first direct assignment unit when the answer is yes.

[0061] The first direct assignment unit is used to assign n=1 and call the update unit.

[0062] The first fault monitoring module 4 is used to continuously monitor whether there is a fault. Whenever a fault is monitored, the fault ID and fault occurrence timestamp of the fault are recorded, and they are cached in sequence in the fault backup area of ​​the blank data cache position. All system operation status data in the system status cache data structure corresponding to the time when the fault occurred are taken out in order from old to new, and cached in the pre-fault backup area 1 of this blank data cache position. When the fault is cached to the Mth data cache position, the next sequence is the first blank data cache position starting from the first data cache position.

[0063] The second fault monitoring module 5 is used to loop through the M data cache positions in the linked list D data structure, determine whether the current data cache position has a cached fault occurrence timestamp and whether it meets the preset fixed delay time from the fault occurrence timestamp. If both are yes, all system operation status data in the system status cache data structure corresponding to the moment when the preset fixed delay time is reached at the current data cache position are cached to the post-fault backup area 2 of the current data cache position, and the data cached in the pre-fault backup area 1, the fault backup area and the post-fault backup area 2 in the current data cache position are moved to the storage medium together. The current data cache position becomes a blank data cache position, and the next data cache position is determined. Otherwise, the next data cache position is directly determined.

[0064] Optimally, the second fault monitoring module 5 includes a second initialization unit, a first fault judgment unit, a second fault judgment unit, a fault backup module, a second assignment judgment unit and a second direct assignment unit.

[0065] The second initialization unit is used to initialize m=1.

[0066] The first fault judgment unit is used to judge whether the mth data cache location has a fault occurrence timestamp cached, and calls the second fault judgment unit if yes, and calls the second value assignment judgment unit if no.

[0067] The second fault judgment unit is used to judge whether a preset fixed delay time from the fault occurrence timestamp is met, and if yes, call the fault backup module, and if no, call the second value assignment judgment unit.

[0068] The fault backup module is used to cache all system operation status data in the system status cache data structure corresponding to the mth data cache position at the moment when the preset delay fixed time is reached to the post-fault backup area 2 of the mth data cache position, and move the data cached in the pre-fault backup area 1, the fault backup area and the post-fault backup area 2 in the mth data cache position to the storage medium, the mth data cache position becomes a blank data cache position, and the second assignment judgment unit is called.

[0069] The second assignment judgment unit is used to assign m=m+1, judge whether m>M, call the first fault judgment unit when the answer is no, and call the second direct assignment unit when the answer is yes.

[0070] The second direct assignment unit is used to assign m=1 and repeatedly call the first fault judgment unit.

[0071] The present invention is used to realize that when a fault occurs, the system can store the system operation status data for a period of time before and after the fault occurs. When the fault data is subsequently read through the APP, the entire continuous system status data before and after the fault occurs can be accessed. In simple terms, when the fault data occurs, the status of the period before the fault occurs and the time when the fault occurs are cached, and then after the system continues to run for a fixed period of time, the system status during this period and the previously cached system status data are stored together in the storage medium. The entire fault storage logic is carried out continuously, and the status information for a period of time before and after all faults occur can be stored.

[0072] The effects achieved by the present invention are as follows: Figure 6 When a fault occurs, the system records the time of any fault and a continuous period of system operation status data according to the above process, and then accesses the storage information in the storage medium of the battery management system through a specific APP software and displays it on the APP interface, as shown. Figure 6The "Fault Data" column in the "Fault Data" section records events that occurred at fixed moments in the battery management system. Each event represents a continuous period of system status information. For example, for the "Cell Overvoltage Level 1 Fault Disappeared" event recorded in directory 14 in the "Fault Data" column, only the fault ID, fault type, fault value, and time of disappearance are displayed. Clicking this column will bring up the "Fault Data Record" section, which displays the status of the battery management system for the period before and after the "Cell Overvoltage Level 1 Fault Disappeared" event. For example, the battery management system begins to experience a voltage drop at time -14, and after a delay of four moments, confirms the occurrence of the "Cell Overvoltage Level 1 Fault Disappeared" event. Starting at time -10, after the fault disappears, the system's maximum cell voltage remains at 3300mV. From time -17 to time 0, the first half of the period represents system operating status data before the fault disappears, while the second half represents the system operating status data after the fault disappears. The same function works for other operating status data, such as "System Minimum Cell Voltage."

[0073] Although specific embodiments of the present invention have been described above, those skilled in the art will appreciate that these are merely illustrative and that the scope of the present invention is defined by the appended claims. Those skilled in the art may make various changes or modifications to these embodiments without departing from the principles and essence of the present invention, and such changes and modifications are intended to fall within the scope of the present invention.

Claims

1. A method for monitoring the operating status of a battery management system when a fault occurs, characterized in that: It includes the following steps: S1. Construct a linked list D data structure. The linked list D data structure includes M data backup areas. Each data backup area serves as a data cache location. Each data backup area consists of a pre-failure backup area 1, a post-failure backup area 2, and a failure backup area. M is a positive integer. S2. Build a system status cache data structure. The system status cache data structure is shared by M data backup areas. The system status cache data structure includes N data areas, each of which is used to cache a copy of system operation status data. N is a positive integer. S3. For the system status cache data structure, sequentially update the system operation status data in the data area of ​​the system status cache data structure at set intervals, and overwrite the original system operation status data with the updated system operation status data in the currently updated data area; Continuously monitor whether there are any faults. Whenever a fault is detected, record the fault ID and fault occurrence timestamp of the fault, and sequentially cache them in the fault-time backup area of ​​the blank data cache position. Take out all system operation status data in the system status cache data structure corresponding to the time of the fault in the order from old to new, and cache them in the pre-fault backup area 1 of the blank data cache position. When the fault is cached to the Mth data cache position, the next sequential order is the first blank data cache position starting from the first data cache position. Loop through the M data cache locations in the linked list D data structure, including: S321, initialize m=1; S322: Determine whether the mth data cache location has a fault occurrence timestamp cached. If yes, proceed to step S323; if not, proceed to step S325. S323, determine whether the preset fixed delay time from the fault occurrence timestamp is met, if so, proceed to step S324, if not, proceed to step 325; S324: All system operating status data in the system status cache data structure corresponding to the time point at which the preset fixed delay time is reached is retrieved in order from oldest to newest, and cached in post-failure backup area 2 of the mth data cache position. Furthermore, the data cached in pre-failure backup area 1, the fault backup area, and post-failure backup area 2 in the mth data cache position are moved to a storage medium. The mth data cache position becomes a free data cache position, and the process proceeds to step S325. S325, assign m=m+1, determine whether m>M, if not, go to step S322, if yes, go to step S326; S326, assign m=1, and repeat step S322; Step S3 includes: S311, initialize n=1; S312, when the set interval time is reached, regularly updating the system operation status data in the nth data area of ​​the system status cache data structure and overwriting the original system operation status data in the nth data area; S313, assign n=n+1, determine whether n>N, if not, go to step S312, if yes, go to step S314; S314: Assign n=1, and repeat step S312.

2. A system operating status monitoring system for a battery management system failure, characterized in that: It includes a first data structure building module, a second data structure building module, a data updating module, a first fault monitoring module and a second fault monitoring module; The first data structure construction module is used to construct a linked list D data structure, the linked list D data structure includes M data backup areas, each data backup area serves as a data cache location, each data backup area is composed of a pre-failure backup area 1, a post-failure backup area 2, and a fault backup area, and M is a positive integer; The second data structure construction module is used to construct a system status cache data structure, the system status cache data structure is shared by M data backup areas, the system status cache data structure includes N data areas, each data area is used to cache a copy of system operation status data, and N is a positive integer; The data update module is used to update the system operation status data in the data area of ​​the system state cache data structure at set intervals, and to overwrite the original system operation status data with the updated system operation status data in the currently updated data area; The first fault monitoring module is used to continuously monitor whether a fault has occurred, and whenever a fault is detected, record the fault ID and fault occurrence timestamp of the fault, and sequentially cache them in the fault backup area of ​​the blank data cache position, and retrieve all system operation status data from the system status cache data structure corresponding to the time of the fault occurrence in order from old to new, and cache them in the pre-fault backup area 1 of the blank data cache position, and when the fault is cached to the Mth data cache position, the next sequential order is the first blank data cache position starting from the first data cache position; The second fault monitoring module is used to loop through M data cache locations in the linked list D data structure; The second fault monitoring module includes a second initialization unit, a first fault judgment unit, a second fault judgment unit, a fault backup module, a second assignment judgment unit and a second direct assignment unit; The second initialization unit is used to initialize m=1; The first fault judgment unit is used to judge whether the mth data cache location has a fault occurrence timestamp cached, and call the second fault judgment unit if it does, and call the second value assignment judgment unit if it does not; The second fault judgment unit is used to judge whether a preset fixed delay time from the fault occurrence timestamp is met, and if yes, call the fault backup module, and if no, call the second assignment judgment unit; The fault backup module is used to retrieve all system operating status data from the system status cache data structure corresponding to the time point at which the preset delay fixed time is reached in order from oldest to newest, and cache them in the post-failure backup area 2 of the m-th data cache position, and to move the data cached in the pre-failure backup area 1, the fault backup area, and the post-failure backup area 2 in the m-th data cache position to the storage medium, the m-th data cache position becomes a blank data cache position, and the second assignment judgment unit is called; The second assignment judgment unit is used to assign m=m+1, judge whether m>M, call the first fault judgment unit when the answer is no, and call the second direct assignment unit when the answer is yes; The second direct assignment unit is used to assign m=1 and repeatedly call the first fault judgment unit; The data update module includes a first initialization unit, an update unit, a first assignment judgment unit and a first direct assignment unit; The first initialization unit is used to initialize n=1; The updating unit is used to regularly update the system operation status data in the nth data area of ​​the system status cache data structure when the set interval time is reached and overwrite the original system operation status data in the nth data area; The first assignment judgment unit is used to assign n=n+1, judge whether n>N, call the update unit if the answer is no, and call the first direct assignment unit if the answer is yes; The first direct assignment unit is used to assign n=1 and call the update unit.

Citation Information

Patent Citations

  • Running state data recording and replaying method before fault of numerically-controlled machine tool

    CN104483902A

  • Electric vehicle fault recording method and device, medium and battery management system mainboard

    CN115145759A

  • Fault data storage method and device, nonvolatile storage medium and vehicle

    CN116755628A

  • System, method and device for obtaining fault data and storage medium

    CN117389238A

  • Data processing method of battery management system and battery management system

    CN118943527A