Operation and maintenance data acquisition method based on traction power supply secondary equipment

By parsing the operation and maintenance data of railway traction power supply secondary equipment using a DOM tree structure and asynchronous processing mechanism, the problem of single data source in traditional operation and maintenance is solved. This enables multi-dimensional data collection and storage, improves the accuracy and efficiency of operation and maintenance, and reduces costs.

CN121882964APending Publication Date: 2026-04-17GUODIAN NANJING AUTOMATION
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
GUODIAN NANJING AUTOMATION
Filing Date
2025-11-27
Publication Date
2026-04-17

AI Technical Summary

Technical Problem

Traditional methods for managing secondary equipment operation and maintenance data cannot meet the needs of intelligent systems. This results in a single data source for operation and maintenance, low accuracy, and an inability to collect and comprehensively judge data from multiple dimensions, leading to frequent instances of missed or false fault reports.

Method used

The system employs a DOM tree-structured object model and asynchronous processing mechanism, combined with a memory reuse strategy, to parse and process operation and maintenance file data. It also obtains real-time data through a communication link service, generates an operation and maintenance data point table, and stores the data using a hash mapping structure and partitioned column storage.

Benefits of technology

It improves the accuracy of secondary equipment operation and maintenance, reduces missed and false fault reports, enhances operation and maintenance efficiency and equipment reliability, and reduces software development and maintenance costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121882964A_ABST
    Figure CN121882964A_ABST
Patent Text Reader

Abstract

The invention provides an operation and maintenance data acquisition method based on traction power supply secondary equipment, and relates to the field, and the method comprises the following steps: obtaining operation and maintenance information of the secondary equipment, and obtaining operation and maintenance real-time data and operation and maintenance file data; carrying out analysis processing on the operation and maintenance file data in combination with an asynchronous processing mechanism and a memory multiplexing strategy to obtain an analysis result; based on a preset configuration database, generating an operation and maintenance data point table according to the analysis result; based on the operation and maintenance data point table, inputting the analysis result and the real-time operation and maintenance data into a data storage real-time library for real-time storage, and configuring a data interface for query and display for the data storage real-time library; and based on the analysis result and the real-time operation and maintenance data stored in the data storage real-time library, and based on a Hash mapping structure and a partition column storage mode, updating the historical database to realize data storage. The overall operation efficiency and reliability of the railway traction power supply system are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of railway traction power supply system technology, and more specifically, to a method for collecting operation and maintenance data based on secondary traction power supply equipment. Background Technology

[0002] With the large-scale promotion and in-depth application of intelligent substations in railway traction power supply, secondary equipment, as the core support for the safe and stable operation of the system, has achieved a qualitative leap in its level of intelligence. Today's secondary equipment has broken away from the limitations of traditional single functions and has been upgraded into intelligent terminals that integrate multiple capabilities such as real-time data acquisition, online status monitoring, and intelligent fault diagnosis. Not only has the data processing efficiency been greatly improved, but it can also achieve accurate perception and early warning of equipment status, laying a solid technical foundation for the efficient operation of the traction power supply system.

[0003] At the same time, the high degree of integration of equipment functions and the complex interplay of system architecture have significantly increased the technical complexity and maintenance difficulty of secondary equipment. The interconnection of multiple types of equipment generates massive amounts of heterogeneous data, making it difficult for traditional management models to achieve efficient data integration and value mining; in addition, the continuously increasing requirements for power supply reliability in railway transportation further force the iterative upgrading of the functional requirements of the traction power supply system.

[0004] Currently, traditional methods for the operation, maintenance, and management of secondary equipment are no longer sufficient to meet the demands of modern intelligent systems, and the following problems exist:

[0005] 1. The single data source for the operation and maintenance of secondary equipment leads to low accuracy of intelligent maintenance, resulting in missed fault reports and false alarms.

[0006] 2. The operation and maintenance data of secondary equipment were not collected from multiple dimensions, resulting in deficiencies in operation and maintenance diagnosis.

[0007] 3. It is impossible to rely on the correlation of operation and maintenance data to make a comprehensive judgment on operation and maintenance conclusions.

[0008] No effective solutions have yet been proposed to address the problems in the relevant technologies. Summary of the Invention

[0009] In view of this, the present invention provides a method for collecting operation and maintenance data based on traction power supply secondary equipment to solve the aforementioned problems.

[0010] To solve the above problems, the specific technical solution adopted by the present invention is as follows:

[0011] According to a first aspect of the present invention, a method for collecting operation and maintenance data based on traction power supply secondary equipment is provided, the method comprising the following steps:

[0012] S1. Based on the pre-built communication link service, obtain the operation and maintenance information of secondary equipment, and obtain real-time operation and maintenance data and operation and maintenance file data;

[0013] S2. Based on the DOM tree structure object model, and combined with asynchronous processing mechanism and memory reuse strategy, the operation and maintenance file data is parsed and processed to obtain the parsing results;

[0014] S3. Based on the preset configuration database and combined with the parsing results, generate an operation and maintenance data point table;

[0015] S4. Based on the operation and maintenance data point table, input the parsing results and real-time operation and maintenance data into the real-time data storage library for real-time storage, and configure the data storage library for querying and displaying data interfaces.

[0016] S5. Based on the parsing results and real-time operation and maintenance data stored in the real-time data storage library, and based on the hash mapping structure and partitioned column storage method, the historical database is updated to achieve data storage.

[0017] Preferably, the step of obtaining the operation and maintenance information of secondary equipment and obtaining real-time operation and maintenance data and operation and maintenance file data based on the pre-built communication link service includes the following steps:

[0018] S11. Establish a communication link service with secondary devices based on a preset communication protocol;

[0019] S12. Based on the pre-configured file monitoring task in the secondary equipment, monitor the content of operation and maintenance files in the secondary equipment, and generate file change alarm remote signal when the content of operation and maintenance files changes.

[0020] S13. Based on file change alarm remote signaling, trigger file service, and collect real-time operation and maintenance data and operation and maintenance file data of secondary equipment through communication link service.

[0021] Preferably, the object model based on the DOM tree structure, combined with asynchronous processing mechanisms and memory reuse strategies, parses and processes the operation and maintenance file data to obtain the parsing results, including the following steps:

[0022] S21. Generate the actual DOM tree using a parser based on the data format of the operation and maintenance files;

[0023] S22. Use the pre-maintained interpreted scripting language object in memory as the old virtual DOM tree, and construct a new virtual DOM tree using the operation and maintenance file data;

[0024] S23. Use the Diff algorithm to compare the differences between the old virtual DOM tree and the new virtual DOM tree, and update the difference results to the real DOM tree based on the asynchronous execution mechanism.

[0025] S24. Extract structured operation and maintenance data from the updated real DOM tree and generate the final parsing result.

[0026] Preferably, the maintenance file data is an Extensible Markup Language (XML) format file that is automatically generated internally by the secondary device and contains maintenance information; and the content of the maintenance file data has a nested tag structure.

[0027] Preferably, the mathematical model expression of the Diff algorithm is:

[0028] ;

[0029] In the formula, D represents the difference value. and This represents the attribute values ​​of corresponding nodes between the new and old virtual DOM trees. Indicates the number of nodes.

[0030] Preferably, the step of using the Diff algorithm to compare the differences between the old virtual DOM tree and the new virtual DOM tree, and updating the real DOM tree with the difference results based on an asynchronous execution mechanism, includes:

[0031] Compare and determine the node types in the old and new virtual DOM trees;

[0032] If the node types are different, the nodes in the old virtual DOM tree are replaced with the nodes in the new virtual DOM tree;

[0033] If the node types are the same, the node attributes in the old virtual DOM tree and the new virtual DOM tree are compared and judged.

[0034] If the node attributes are the same, then by traversing the attribute node names, the attribute values ​​of nodes with inconsistent attributes are updated.

[0035] If the node attributes are different, the different node attributes in the new virtual DOM tree will be added to the old virtual DOM tree, the different node attributes in the old virtual DOM tree will be deleted, and the attribute values ​​will be updated.

[0036] The system compares and judges child nodes under the same tag in the old virtual DOM tree and the new virtual DOM tree, and updates the child nodes in the old virtual DOM tree and the new virtual DOM tree according to the judgment result.

[0037] Record the differences between all nodes in the old virtual DOM tree and the new virtual DOM tree, and store the differences in an array structure to obtain the difference results;

[0038] Based on the asynchronous execution mechanism, the difference results are updated to the real DOM tree using a pre-defined synchronous method.

[0039] Preferably, the step of comparing and judging child nodes under the same label in the old virtual DOM tree and the new virtual DOM tree, and updating the child nodes in the old virtual DOM tree and the new virtual DOM tree according to the judgment result includes:

[0040] If, under the same tag, there are no child nodes in the old virtual DOM tree but there are child nodes in the new virtual DOM tree, then add an operation and maintenance data node and execute the task of adding new child nodes.

[0041] If, under the same tag, the old virtual DOM tree has child nodes but the new virtual DOM tree has no child nodes, then it is marked as several data nodes have been deleted, and the task of deleting child nodes of the old virtual DOM tree is executed.

[0042] If both the old and new virtual DOM trees have child nodes under the same tag, then the child nodes in the old virtual DOM tree are updated based on the child nodes in the new virtual DOM tree, and the comparison of the next level nodes in the old and new virtual DOM trees continues.

[0043] Preferably, the step of updating the difference results to the real DOM tree based on the asynchronous execution mechanism and using a pre-set synchronization method includes:

[0044] Initialize the asynchronous update task queue, collect the difference results and convert them into standardized update tasks, and store them into the task queue in order;

[0045] When the task queue meets the preset execution conditions, lock the task queue and start the synchronization update process;

[0046] In the synchronous update process, tasks are retrieved from the queue in sequence, and the difference results are updated in the real DOM tree.

[0047] Preferably, the process of updating the historical database based on the parsing results and real-time operation and maintenance data stored in the real-time data storage library, using a hash mapping structure and partitioned column storage method, to achieve data storage includes the following steps:

[0048] S51. By traversing the real Dom tree, construct the first hash mapping structure using the attribute node name and attribute value;

[0049] S52. Obtain the set of operation and maintenance data point tables by querying the real-time data storage database, and construct a second hash mapping structure using the set of operation and maintenance data point tables;

[0050] S53. Based on the first hash mapping structure and the second hash mapping structure, compare the attribute values. If they are inconsistent, generate event information and execute step S54; if they are consistent, execute step S54.

[0051] S54. Utilize partitioned columnar storage and combine it with the Zstd compression algorithm to store event information and / or parsing results and real-time operation and maintenance data.

[0052] According to a second aspect of the present invention, a maintenance data acquisition system based on traction power supply secondary equipment is provided, the system comprising:

[0053] The communication component is used to obtain the operation and maintenance information of secondary equipment based on the pre-built communication link service, and to obtain real-time operation and maintenance data and operation and maintenance file data;

[0054] The data parsing component is used to parse and process operation and maintenance file data based on the DOM tree structure object model, combined with asynchronous processing mechanisms and memory reuse strategies, to obtain the parsing results;

[0055] The real-time data processing component is used to generate an operation and maintenance data point table based on the parsing results from a preset configuration database.

[0056] The configuration management component is used to input the parsed results and real-time operation and maintenance data into the real-time data storage library for real-time storage based on the operation and maintenance data point table, and to configure the data interface for querying and displaying the real-time data storage library.

[0057] The historical storage component is used to update the historical database based on the parsing results and real-time operation and maintenance data stored in the real-time data storage library, using a hash mapping structure and partitioned column storage method, in order to achieve data storage.

[0058] According to a third aspect of the present invention, an electronic device is provided, the electronic device comprising: one or more processors and a memory, the memory being used to store one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors execute the programs to implement the steps of the above-described method.

[0059] According to a fourth aspect of the present invention, a computer-readable storage medium is provided, wherein a computer program is stored therein, wherein the steps of the above-described method are implemented when the computer program controls the device in which the computer-readable storage medium is located to execute during runtime.

[0060] The beneficial effects of this invention are as follows:

[0061] 1. The method provided by this invention mainly solves the problem of single data source for the operation and maintenance of secondary equipment in railway substations, which leads to difficulties in intelligent maintenance of secondary equipment and false alarms and missed alarms. This method collects operation and maintenance data of secondary equipment from multiple dimensions, thereby improving the accuracy of equipment operation and maintenance, timely alerting operation and maintenance personnel to discover and deal with problems and hidden dangers in the device, providing a basis for subsequent inspection and maintenance work, preventing the further expansion of accidents, and improving the overall operating efficiency and reliability of railway traction power supply system.

[0062] 2. This invention obtains multi-dimensional secondary equipment operation and maintenance data through XML files, solving the problem of inaccurate operation and maintenance results caused by traditional single operation and maintenance data sources.

[0063] 3. This invention achieves the collection and storage of operation and maintenance data through a configured database model, effectively reducing software development costs and improving flexibility.

[0064] 4. This invention can improve the operation and maintenance efficiency of secondary equipment in railway traction substations, increase the accuracy of equipment operation and maintenance, and reduce equipment maintenance costs. Attached Figure Description

[0065] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the embodiments will be briefly described below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort. In the drawings:

[0066] Figure 1 This is a flowchart of a method for collecting operation and maintenance data based on traction power supply secondary equipment according to an embodiment of the present invention;

[0067] Figure 2 This is a schematic diagram of a maintenance data acquisition system based on traction power supply secondary equipment according to an embodiment of the present invention;

[0068] Figure 3 This is a schematic flowchart of the operation and maintenance data processing method in an operation and maintenance data acquisition method based on traction power supply secondary equipment according to an embodiment of the present invention;

[0069] Figure 4 This is a schematic diagram illustrating the principle of file-based operation and maintenance data acquisition in an operation and maintenance data acquisition method based on traction power supply secondary equipment according to an embodiment of the present invention;

[0070] Figure 5 This is a schematic diagram of the Diff algorithm comparison strategy in a method for collecting operation and maintenance data based on secondary traction power supply equipment according to an embodiment of the present invention.

[0071] Figure 6This is a hardware structure block diagram of the host device in a method for collecting operation and maintenance data based on secondary traction power supply equipment according to an embodiment of the present invention. Detailed Implementation

[0072] To enable those skilled in the art to better understand the technical solutions in this application, the technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of this application, and not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of this application.

[0073] The methods and embodiments provided in this application can be executed on a host device or a similar computing device. Taking running on a host device as an example, Figure 6 This is a hardware structure block diagram of a host device for a semantic segmentation and image enhancement method for complex backgrounds in substations, according to an embodiment of this application. Figure 6 As shown, the host device may include one or more ( Figure 6 Only one is shown in the diagram. The processor (which may include, but is not limited to, a microprocessor (MCU) or programmable logic device (FPGA), etc.) and storage for storing data are also shown. The host device may further include transmission devices for communication functions and input / output devices. Those skilled in the art will understand that... Figure 6 The structure shown is for illustrative purposes only and does not limit the structure of the host device described above. For example, the host device may also include components that are larger than... Figure 6 The more or fewer components shown, or having the same Figure 6 The different configurations shown.

[0074] The memory can be used to store computer programs, such as application software programs and modules, like the computer program corresponding to the exception handling method in this embodiment. The processor executes various functional applications and data processing by running the computer program stored in the memory, thus implementing the above-described method. The memory may include high-speed random access memory (RAM) and non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory may further include memory remotely located relative to the processor, and these remote memories can be connected to the host device via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks (LANs), mobile communication networks, and combinations thereof.

[0075] Transmission devices are used to receive or send data over a network. Specific examples of the network described above may include a wireless network provided by a communication provider for the host device. In one example, the transmission device includes a Network Interface Controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, the transmission device may be a Radio Frequency (RF) module used for wireless communication with the Internet.

[0076] According to an embodiment of the present invention, a method for collecting operation and maintenance data based on traction power supply secondary equipment is provided.

[0077] The present invention will now be further described in conjunction with the accompanying drawings and specific embodiments, such as... Figure 1 As shown, according to a first embodiment of the present invention, a method for collecting operation and maintenance data based on traction power supply secondary equipment is provided, the method comprising the following steps:

[0078] S1. Based on the pre-built communication link service, obtain the operation and maintenance information of secondary equipment, and obtain real-time operation and maintenance data and operation and maintenance file data;

[0079] It should be noted that the acquisition of real-time data and file data from secondary equipment includes real-time information such as device voltage, current, device temperature, and CPU load rate, as well as device log information, file information such as the number of faults, software and hardware versions, and maintenance frequency recorded in the log.

[0080] Specifically, such as Figure 2 As shown, a service establishes a communication link with secondary devices using the TCP / IP protocol, and then obtains real-time data and file data from the devices through this service.

[0081] In a preferred embodiment, the step of obtaining the operation and maintenance information of secondary equipment and obtaining real-time operation and maintenance data and operation and maintenance file data based on the pre-built communication link service includes the following steps:

[0082] S11. Establish a communication link service with secondary devices based on a preset communication protocol;

[0083] S12. Based on the pre-configured file monitoring task in the secondary equipment, monitor the content of operation and maintenance files in the secondary equipment, and generate file change alarm remote signal when the content of operation and maintenance files changes.

[0084] S13. Based on file change alarm remote signaling, trigger file service, and collect real-time operation and maintenance data and operation and maintenance file data of secondary equipment through communication link service.

[0085] In a preferred embodiment, the maintenance file data is an Extensible Markup Language (XML) format file that is automatically generated internally by the secondary device and contains maintenance information; and the content of the maintenance file data has a nested tag structure.

[0086] It should be noted that the operation and maintenance file refers to the file in XML format on the device side that uses a nested tag structure to write operation and maintenance information such as operating parameters, startup logs, configuration files, program versions and communication parameters, and the content of the file can be updated as the device's operation and maintenance information changes.

[0087] Specifically, the collection of operation and maintenance document data, such as Figure 4 As shown, when secondary equipment in a railway traction substation starts up, it records information such as operating parameters, startup logs, configuration files, program versions, and communication parameters in an XML-formatted maintenance file. During the operation of the secondary equipment, the maintenance file is dynamically modified as the secondary equipment changes. At the same time, the configuration file monitoring task can scan the maintenance file in real time or at regular intervals. If a change in the file content is detected, a remote signaling message for the change in file content is triggered in real time and uploaded to the system platform in real time via the IEC61850 protocol. Then, after the system platform detects the change in the remote signaling value, it immediately starts the file service to obtain the latest maintenance file in real time.

[0088] S2. Based on the DOM tree structure object model, and combined with asynchronous processing mechanism and memory reuse strategy, the operation and maintenance file data is parsed and processed to obtain the parsing results;

[0089] It should be noted that by obtaining the values ​​of operation and maintenance data through XML files and leveraging the advantages of the DOM tree data structure, the differences between data nodes and changes in node attribute values ​​in the old and new operation and maintenance files can be compared, thereby obtaining the latest operation and maintenance data point table and operation and maintenance data values.

[0090] Specifically, a lightweight JavaScript object is maintained in memory as a virtual DOM tree. When a new maintenance file is generated, the system loads the latest file, creates a new virtual DOM tree, compares the differences between the old and new virtual DOM trees using a Diff algorithm, identifies the nodes that need updating, and uses the Patch method to update the real DOM tree with the differences for other components to use. This update operation is executed asynchronously; it puts multiple update tasks into a queue, waits for the Diff task to complete, and then submits all updates for execution, avoiding frequent triggering of update tasks. At the same time, during the update process, the virtual DOM tree reuses existing model nodes as much as possible, avoiding the memory overhead caused by frequently creating and destroying nodes.

[0091] As a preferred implementation, the object model based on the DOM tree structure, combined with asynchronous processing mechanisms and memory reuse strategies, parses and processes the operation and maintenance file data to obtain the parsing results, including the following steps:

[0092] S21. Generate the actual DOM tree using a parser based on the data format of the operation and maintenance files;

[0093] It should be noted that the file data is converted into a real DOM tree by a parser of the corresponding format (such as an XML parser), which is a native node tree that completely matches the file structure, such as the DOM node hierarchy generated by the XML parser. The real DOM tree is the physical structured carrier of the data, and its nodes correspond one-to-one with the tags / fields of the original file, preserving the complete hierarchical relationship and attribute details, providing the original data benchmark for the subsequent construction of the virtual DOM tree and the comparison of differences.

[0094] S22. Use the pre-maintained interpreted scripting language (JavaScript) object in memory as the old virtual DOM tree, and construct a new virtual DOM tree using the operation and maintenance file data;

[0095] Specifically, the old virtual DOM tree is a JavaScript object that is pre-stored in memory, usually from the previous parsing result. It maintains the historical state through deep copying or immutable data structures (such as Immutable.js) to avoid data pollution caused by direct modification.

[0096] When constructing a new virtual DOM, reusable nodes in the old virtual DOM are matched by node identifiers (such as device ID + timestamp), and their memory addresses are directly referenced instead of creating new objects, which significantly reduces memory allocation overhead.

[0097] S23. Use the Diff algorithm to compare the differences between the old virtual DOM tree and the new virtual DOM tree, and update the difference results to the real DOM tree based on the asynchronous execution mechanism.

[0098] In a preferred embodiment, the mathematical model expression of the Diff algorithm is as follows:

[0099] ;

[0100] In the formula, D represents the difference value. and This represents the attribute values ​​of corresponding nodes between the new and old virtual DOM trees. Indicates the number of nodes.

[0101] It should be noted that the comparison strategy process is as follows: Figure 5 As shown:

[0102] Step 1: Data changes trigger a comparison event, executing the Patch(oldvnode, newvnode) comparison method.

[0103] Step 2: Determine if the new and old nodes are of the same type of label. If not, replace the old node with the new node; if they are of the same type of label, proceed to Step 3.

[0104] It should be noted that "same type" nodes refer to nodes with identical label names, indicating that they belong to the same type of business entity. If the types are different, it means that their business meanings and structures differ significantly, making it meaningless to reuse the old node; in this case, the new node (including its attributes and child nodes) should be directly replaced to simplify the processing logic. If the types are the same, it means that they belong to the same type of entity, and there may only be local differences in attributes or child nodes. Further in-depth comparison is needed to achieve refined updates and reduce resource consumption.

[0105] Step 3: Compare whether the attributes of the new and old nodes are the same. If they are the same, update the attribute values ​​that are inconsistent between the new and old attribute nodes by traversing the name of the attribute nodes. If they are different, add or delete node attributes and then update the attribute values.

[0106] It should be noted that node attributes refer to the operational and maintenance business data stored in the virtual node. If attributes are the same (meaning the set of attribute names is identical), then each attribute name is traversed, and only attributes with inconsistent values ​​are updated, retaining consistent attributes to avoid redundant operations. If attributes are different (meaning the set of attribute names differs), then attributes that do not exist in the new node are first deleted from the old node, then attributes unique to the new node are added, and finally, attributes with the same name but different values ​​are updated to ensure that the node attributes are completely consistent with the new data.

[0107] Step 4: Determine if the child nodes under the same tag are identical. If they are identical, proceed to the next level of comparison; if they are different, different processing methods are required depending on the specific situation. This invention only handles three cases:

[0108] 1) The oldvnode (old virtual DOM tree) has no child nodes, while the newvnode (new virtual DOM tree) has child nodes. When adding a new operations and maintenance data node, execute the task to add a new child node.

[0109] 2) The oldvnode has child nodes, while the newvnode has no child nodes. Some data nodes have been deleted; execute the task to delete the old child nodes.

[0110] 3) If both oldvnode and newvnode have child nodes, then update the child nodes and recursively execute step 1.

[0111] It should be noted that whether child nodes are the same is determined based on the unique identifier of the child node (such as id), rather than the index order, to avoid misjudging the adjustment (migration) of the child node position as an addition / deletion.

[0112] Step 5: Record the differences of all nodes and store the difference calculation results in an array structure.

[0113] Step 6: By calling the DOM structure API, the difference results are synchronized to the real DOM tree in the form of additions, deletions, and modifications.

[0114] In a preferred embodiment, the step of comparing the differences between the old virtual DOM tree and the new virtual DOM tree using the Diff algorithm, and updating the real DOM tree based on an asynchronous execution mechanism, includes:

[0115] Compare and determine the node types in the old and new virtual DOM trees;

[0116] If the node types are different, the nodes in the old virtual DOM tree are replaced with the nodes in the new virtual DOM tree;

[0117] If the node types are the same, the node attributes in the old virtual DOM tree and the new virtual DOM tree are compared and judged.

[0118] If the node attributes are the same, then by traversing the attribute node names, the attribute values ​​of nodes with inconsistent attributes are updated.

[0119] If the node attributes are different, the different node attributes in the new virtual DOM tree will be added to the old virtual DOM tree, the different node attributes in the old virtual DOM tree will be deleted, and the attribute values ​​will be updated.

[0120] The system compares and judges child nodes under the same tag in the old virtual DOM tree and the new virtual DOM tree, and updates the child nodes in the old virtual DOM tree and the new virtual DOM tree according to the judgment result.

[0121] In a preferred embodiment, the step of comparing and judging child nodes under the same label in the old virtual DOM tree and the new virtual DOM tree, and updating the child nodes in the old virtual DOM tree and the new virtual DOM tree according to the judgment result includes:

[0122] If, under the same tag, there are no child nodes in the old virtual DOM tree but there are child nodes in the new virtual DOM tree, then add an operation and maintenance data node and execute the task of adding new child nodes.

[0123] If, under the same tag, the old virtual DOM tree has child nodes but the new virtual DOM tree has no child nodes, then it is marked as several data nodes have been deleted, and the task of deleting child nodes of the old virtual DOM tree is executed.

[0124] If both the old and new virtual DOM trees have child nodes under the same tag, then the child nodes in the old virtual DOM tree are updated based on the child nodes in the new virtual DOM tree, and the comparison of the next level nodes in the old and new virtual DOM trees continues.

[0125] Record the differences between all nodes in the old virtual DOM tree and the new virtual DOM tree, and store the differences in an array structure to obtain the difference results;

[0126] Based on the asynchronous execution mechanism, the difference results are updated to the real DOM tree using a pre-defined synchronous method.

[0127] As a preferred implementation, the step of updating the difference results to the real DOM tree based on the asynchronous execution mechanism and using a pre-set synchronization method includes:

[0128] Initialize the asynchronous update task queue, collect the difference results and convert them into standardized update tasks, and store them into the task queue in order;

[0129] Specifically, initializing the asynchronous update task queue establishes a buffer mechanism to temporarily store pending DOM update operations. The queue can employ a FIFO (First-In, First-Out) principle to ensure that update tasks are executed in the order they are generated, avoiding DOM state chaos caused by out-of-order execution. The difference results come from the difference descriptions generated by the Diff algorithm after comparing the old and new virtual DOM trees (such as node additions, attribute updates, child node deletions, etc.). Converting these differences into standardized update tasks (with a unified format, including key information such as operation type, target node path, and data values) eliminates format differences between different difference types, facilitating subsequent unified processing.

[0130] When the task queue meets the preset execution conditions, lock the task queue and start the synchronization update process;

[0131] It should be noted that the preset execution conditions are trigger rules set according to the needs of the operation and maintenance scenario. Common ones include: the number of tasks in the queue reaches a threshold, the timer period has exceeded the last update, or the Diff algorithm has completed all difference calculations (ensuring that the entire batch of differences is processed at once). Locking the task queue is to prevent concurrency conflicts caused by new difference tasks being written to the queue during the update process. After locking, new tasks must wait for the current update to be completed before being enqueued, ensuring the integrity and execution order of the current batch of tasks.

[0132] In the synchronous update process, tasks are retrieved from the queue in sequence, and the difference results are updated in the real DOM tree.

[0133] Specifically, in the synchronous update process, the system retrieves standardized tasks one by one according to the queue order and executes the corresponding real DOM operation based on the task type (add, delete, update, etc.): for example, for an attribute update task, the target node is directly located and its attribute value is modified; for an add node task, the node is created and inserted into the specified position in the DOM tree; for a delete node task, the target node is removed from the DOM tree. During execution, nodes already existing in the real DOM are reused first (e.g., for nodes with changed attributes, the node is not rebuilt, only the attributes are updated), reducing the memory overhead and performance loss caused by node creation / destruction, and adapting to the strict resource requirements of the operation and maintenance system.

[0134] S24. Extract structured operation and maintenance data from the updated real DOM tree and generate the final parsing result.

[0135] S3. Based on the preset configuration database and combined with the parsing results, generate the operation and maintenance data point table. The operation and maintenance data point table is used when the device is being debugged. The configuration database will generate the operation and maintenance data point table according to the node attributes in the XML operation and maintenance file, and submit an update notification to force the real-time database to create or synchronously update the operation and maintenance data point table.

[0136] Specifically, the values ​​of the corresponding operation and maintenance data point tables are stored. The parsed file data and the real-time received operation and maintenance data are stored according to the corresponding operation and maintenance data point tables.

[0137] It should be noted that the preset configuration database is a predefined data point rule base, containing metadata standards for operation and maintenance data points (such as unique identifier rules for data points, parameter types (numerical / status), associated device information, storage precision, verification rules, etc.). This serves as the basis for generating standardized data point tables. The obtained parsing results (structured data in the actual DOM tree) are matched with the rules of the configuration database, mapping them to a standardized set of data points: each data point contains a unique identifier (such as ID), parameter name, associated device, data type, unit, and other metadata, forming a data dictionary that can be directly used for storage and management. Combined with the rules of the configuration database, a data point table is generated.

[0138] S4. Based on the operation and maintenance data point table, input the parsing results and real-time operation and maintenance data into the real-time data storage library for real-time storage, and configure the data storage library for querying and displaying data interfaces.

[0139] S5. Based on the parsing results and real-time operation and maintenance data stored in the real-time data storage library, and based on the hash mapping structure and partitioned column storage method, the historical database is updated to achieve data storage.

[0140] It should be noted that the detailed process of writing operational data to the real-time database and updating the historical database is as follows:

[0141] The process involves traversing the real DOM tree, constructing a HashMap1 structure using the attribute nodes' names and values, querying the real-time database to obtain a set of operation and maintenance data point tables, and then constructing a HashMap2 structure using this data set. Iterating through the key set in HashMap2, for each name, the corresponding value in HashMap2 is retrieved and compared with the value of the same name in HashMap1. If they don't match, event information is generated and saved to the operation and maintenance history database. Historical data is stored using a partitioned columnar storage method, creating partitioned tables based on event types and distributing operation and maintenance data across different partitions. The partitioned tables are then configured with block skipping functionality, and the Zstd compression algorithm is used for data compression. This triggers the time-series database to automatically divide the data into multiple blocks by time and generate necessary metadata for each block. This facilitates historical queries based on time range conditions, allowing the block skipping index to use metadata to identify and access relevant blocks, improving data access efficiency.

[0142] Specifically, based on the parsing results and real-time operation and maintenance data stored in the real-time data storage library, and based on the hash mapping structure and partitioned column storage method, the historical database is updated to achieve data storage. This also includes: judging the difference value D, that is, if the return value of the Patch method is not empty, then calling the point table creation function in the configuration management component (the point table creation function can generate a standardized point table according to the input structured data and preset rules (such as data point naming specifications and metadata verification logic), regenerating the operation and maintenance point table according to the HashMap1 structure, and submitting the point table change event to force the real-time database to synchronize and update the operation and maintenance data point table.

[0143] Here, the difference value D is the set of differences returned by the Patch method after comparing the old and new virtual DOM trees (such as newly added nodes, changes in attribute structure, etc.). If D is not empty, it means that there is a difference between the current parsing result or the structure of real-time operation and maintenance data (such as newly added data points, changes in the metadata of existing data points) and the historical state. In this case, the operation and maintenance data point table must be updated synchronously.

[0144] As a preferred embodiment, the process of updating the historical database based on the parsing results and real-time operation and maintenance data stored in the real-time data storage library, and based on a hash mapping structure and partitioned column storage method, to achieve data storage includes the following steps:

[0145] S51. By traversing the real Dom tree, construct the first hash mapping structure using the attribute node name and attribute value;

[0146] Specifically, constructing the first hash mapping structure by traversing the real DOM tree and using attribute node names and attribute values ​​includes the following steps: Initialize an empty first hash mapping structure; starting from the root node of the real DOM tree, recursively traverse all nodes using a depth-first approach to filter out target business nodes containing operational data; for each target business node, extract its unique identifier; if the node does not have an explicit unique identifier, generate a composite unique identifier by combining the node's hierarchical path and attribute name, which serves as the key of the first hash mapping structure; traverse all attributes of the target business node, extract the attribute node names and their corresponding attribute values, form an attribute information set as the value of the first hash mapping structure, and store the key-value pairs in the hash mapping until all target nodes have been traversed, thus obtaining the first hash mapping structure.

[0147] S52. Obtain the set of operation and maintenance data point tables by querying the real-time data storage database, and construct a second hash mapping structure using the set of operation and maintenance data point tables;

[0148] S53. Based on the first hash mapping structure and the second hash mapping structure, compare the attribute values. If they are inconsistent, generate event information and execute step S54; if they are consistent, execute step S54.

[0149] S54. Utilize partitioned columnar storage and combine it with the Zstd compression algorithm to store event information and / or parsing results and real-time operation and maintenance data.

[0150] Specifically, the storage of event information and / or parsing results and real-time operation and maintenance data using a partitioned column storage method combined with the Zstd compression algorithm includes the following steps: constructing a multi-level partitioned storage structure based on a preset partitioning strategy; splitting event information and / or parsing results and real-time operation and maintenance data into independent column families according to field attributes; using the Zstd algorithm to perform block-level compression on the fields in the column families; writing the compressed column data into the corresponding partitions in the multi-level partitioned storage structure; and constructing a mapping index between data point identifiers and storage locations for each partition to complete data storage.

[0151] like Figure 2 As shown, according to a second embodiment of the present invention, a maintenance data acquisition system based on traction power supply secondary equipment is provided. The system includes:

[0152] The communication component is used to obtain the operation and maintenance information of secondary equipment based on the pre-built communication link service, and to obtain real-time operation and maintenance data and operation and maintenance file data;

[0153] The data parsing component is used to parse and process operation and maintenance file data based on the DOM tree structure object model, combined with asynchronous processing mechanisms and memory reuse strategies, to obtain the parsing results;

[0154] Among them, the real-time operation and maintenance data, such as voltage, current, CPU utilization and equipment temperature collected by the communication components through the IEC61850 protocol, are directly written into the real-time database and provided with a data interface for other services to query and display in the UI.

[0155] The real-time data processing component generates an operations and maintenance (O&M) data point table based on a pre-defined configuration database and the parsing results. It also provides interfaces for other services to query and display O&M data. Simultaneously, alarms and event information caused by changes in O&M data values ​​are written to a historical database. Furthermore, the O&M data point table under this component is submitted and synchronously generated through the configuration management component.

[0156] The configuration management component is used to input the parsed results and real-time operation and maintenance data into the real-time data storage repository based on the operation and maintenance data point table for real-time storage. It also configures data interfaces for querying and displaying the real-time data storage repository, and submits and synchronizes the data point table to the real-time data processing component. This is provided for configuration and maintenance personnel to use for debugging and maintenance.

[0157] The historical storage component is used to update the historical database based on the parsing results and real-time operation and maintenance data stored in the real-time data storage library. It uses a hash mapping structure and partitioned column storage method to store the data and provides an interface for other services to query the historical operation and maintenance data.

[0158] According to a third embodiment of the present invention, an electronic device is provided, the electronic device comprising: one or more processors and a memory, the memory being used to store one or more programs, wherein when the one or more programs are executed by the one or more processors, the one or more processors cause the one or more processors to perform the steps in any of the above method embodiments.

[0159] According to a fourth embodiment of the present invention, a computer-readable storage medium is provided, wherein a computer program is stored in the computer-readable storage medium, wherein the computer program, when running, controls the device where the computer-readable storage medium is located to perform the steps in any of the above method embodiments.

[0160] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.

[0161] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, optical storage, etc.) containing computer-usable program code.

[0162] The specific embodiments described above further illustrate the purpose, technical solution, and beneficial effects of the present invention. It should be understood that the above descriptions are merely specific embodiments of the present invention and are not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A method for collecting operation and maintenance data of traction power supply secondary equipment, characterized in that, The method includes the following steps: S1. Based on the pre-built communication link service, obtain the operation and maintenance information of secondary equipment, and obtain real-time operation and maintenance data and operation and maintenance file data; S2. Based on the DOM tree structure object model, and combined with asynchronous processing mechanism and memory reuse strategy, the operation and maintenance file data is parsed and processed to obtain the parsing results; S3. Based on the preset configuration database and combined with the parsing results, generate an operation and maintenance data point table; S4. Based on the operation and maintenance data point table, input the parsing results and real-time operation and maintenance data into the real-time data storage library for real-time storage, and configure the data storage library for querying and displaying data interfaces. S5. Based on the parsing results and real-time operation and maintenance data stored in the real-time data storage library, and based on the hash mapping structure and partitioned column storage method, the historical database is updated to achieve data storage.

2. The method for collecting operation and maintenance data of secondary equipment based on traction power supply according to claim 1, characterized in that, The process of obtaining operation and maintenance information of secondary equipment and acquiring real-time operation and maintenance data and operation and maintenance file data based on the pre-built communication link service includes the following steps: S11. Establish a communication link service with secondary devices based on a preset communication protocol; S12. Based on the pre-configured file monitoring task in the secondary equipment, monitor the content of operation and maintenance files in the secondary equipment, and generate file change alarm remote signal when the content of operation and maintenance files changes. S13. Based on file change alarm remote signaling, trigger file service, and collect real-time operation and maintenance data and operation and maintenance file data of secondary equipment through communication link service.

3. The method of claim 1, wherein the method is characterized by, The object model based on the DOM tree structure, combined with asynchronous processing mechanisms and memory reuse strategies, parses and processes the operation and maintenance file data to obtain the parsing results, including the following steps: S21. Generate the actual DOM tree using a parser based on the data format of the operation and maintenance files; S22. Use the pre-maintained interpreted scripting language object in memory as the old virtual DOM tree, and construct a new virtual DOM tree using the operation and maintenance file data; S23. Use the Diff algorithm to compare the differences between the old virtual DOM tree and the new virtual DOM tree, and update the difference results to the real DOM tree based on the asynchronous execution mechanism. S24. Extract structured operation and maintenance data from the updated real DOM tree and generate the final parsing result.

4. The method for collecting operation and maintenance data based on traction power supply secondary equipment according to claim 3, characterized in that, The maintenance file data is automatically generated internally by the secondary equipment and contains maintenance information in an Extensible Markup Language (XML) format file; and the content of the maintenance file data has a nested tag structure.

5. The method for collecting operation and maintenance data based on traction power supply secondary equipment according to claim 3, characterized in that, The mathematical model expression of the Diff algorithm is as follows: ; In the formula, D represents the difference value. and This represents the attribute values ​​of corresponding nodes between the new and old virtual DOM trees. Indicates the number of nodes.

6. The method for collecting operation and maintenance data based on traction power supply secondary equipment according to claim 3, characterized in that, The step of using the Diff algorithm to compare the differences between the old virtual DOM tree and the new virtual DOM tree, and updating the real DOM tree with the difference results based on an asynchronous execution mechanism, includes: Compare and determine the node types in the old and new virtual DOM trees; If the node types are different, the nodes in the old virtual DOM tree are replaced with the nodes in the new virtual DOM tree; If the node types are the same, the node attributes in the old virtual DOM tree and the new virtual DOM tree are compared and judged. If the node attributes are the same, then by traversing the attribute node names, the attribute values ​​of nodes with inconsistent attributes are updated. If the node attributes are different, the different node attributes in the new virtual DOM tree will be added to the old virtual DOM tree, the different node attributes in the old virtual DOM tree will be deleted, and the attribute values ​​will be updated. The system compares and judges child nodes under the same tag in the old virtual DOM tree and the new virtual DOM tree, and updates the child nodes in the old virtual DOM tree and the new virtual DOM tree according to the judgment result. Record the differences between all nodes in the old virtual DOM tree and the new virtual DOM tree, and store the differences in an array structure to obtain the difference results; Based on the asynchronous execution mechanism, the difference results are updated to the real DOM tree using a pre-defined synchronous method.

7. The method for collecting operation and maintenance data based on traction power supply secondary equipment according to claim 6, characterized in that, The process of comparing and judging child nodes with the same label in the old and new virtual DOM trees, and updating the child nodes in the old and new virtual DOM trees according to the judgment result, includes: If, under the same tag, there are no child nodes in the old virtual DOM tree but there are child nodes in the new virtual DOM tree, then add an operation and maintenance data node and execute the task of adding new child nodes. If, under the same tag, the old virtual DOM tree has child nodes but the new virtual DOM tree has no child nodes, then it is marked as several data nodes have been deleted, and the task of deleting child nodes of the old virtual DOM tree is executed. If both the old and new virtual DOM trees have child nodes under the same tag, then the child nodes in the old virtual DOM tree are updated based on the child nodes in the new virtual DOM tree, and the comparison of the next level nodes in the old and new virtual DOM trees continues.

8. The method for collecting operation and maintenance data based on traction power supply secondary equipment according to claim 7, characterized in that, The asynchronous execution mechanism, which utilizes a pre-defined synchronization method to update the difference results into the real DOM tree, includes: Initialize the asynchronous update task queue, collect the difference results and convert them into standardized update tasks, and store them into the task queue in order; When the task queue meets the preset execution conditions, lock the task queue and start the synchronization update process; In the synchronous update process, tasks are retrieved from the queue in sequence, and the difference results are updated in the real DOM tree.

9. A method for collecting operation and maintenance data based on traction power supply secondary equipment according to claim 7, characterized in that, The process of updating the historical database based on the parsing results and real-time operation and maintenance data stored in the real-time data storage library, using a hash mapping structure and partitioned column storage method, to achieve data storage includes the following steps: S51. By traversing the real Dom tree, construct the first hash mapping structure using the attribute node name and attribute value; S52. Obtain the set of operation and maintenance data point tables by querying the real-time data storage database, and construct a second hash mapping structure using the set of operation and maintenance data point tables; S53. Based on the first hash mapping structure and the second hash mapping structure, compare the attribute values. If they are inconsistent, generate event information and execute step S54; if they are consistent, execute step S54. S54. Utilize partitioned columnar storage and combine it with the Zstd compression algorithm to store event information and / or parsing results and real-time operation and maintenance data.

10. A maintenance data acquisition system based on traction power supply secondary equipment, used to implement the maintenance data acquisition method based on traction power supply secondary equipment as described in any one of claims 1-9, characterized in that, The system includes: The communication component is used to obtain the operation and maintenance information of secondary equipment based on the pre-built communication link service, and to obtain real-time operation and maintenance data and operation and maintenance file data; The data parsing component is used to parse and process operation and maintenance file data based on the DOM tree structure object model, combined with asynchronous processing mechanisms and memory reuse strategies, to obtain the parsing results; The real-time data processing component is used to generate an operation and maintenance data point table based on the parsing results from a preset configuration database. The configuration management component is used to input the parsed results and real-time operation and maintenance data into the real-time data storage library for real-time storage based on the operation and maintenance data point table, and to configure the data interface for querying and displaying the real-time data storage library. The historical storage component is used to update the historical database based on the parsing results and real-time operation and maintenance data stored in the real-time data storage library, using a hash mapping structure and partitioned column storage method, in order to achieve data storage.