A data reading method, device, equipment and storage medium

CN123011431APending Publication Date: 2026-10-30SHENZHEN SHENBAO ELECTRONIC METER CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611197430.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-07
Publication Date
2026-10-30

AI Technical Summary

Technical Problem

[0003]本申请的主要目的在于提供一种数据抄读方法、装置、设备、存储介质及计算机程序产品,旨在解决在单一串行通道共享条件下,定时任务的刚性准时需求与实时任务的动态低延迟响应之间仍存在固有冲突,现有各类调度策略均难以兼顾的技术问题

Benefits of technology

在本申请中,公开了基于电力终端设备信息,在第一类抄读任务对应的预设固定触发时刻之前建立时间保护区;判断当前系统时刻是否处于时间保护区;在当前系统时刻处于非时间保护区的情况下,基于当前系统时刻,在执行的过程中,动态调整第二类抄读任务对应的数据帧;在当前系统时刻处于时间保护区的情况下,基于当前系统时刻控制调整后的第二类抄读任务,并在预设固定触发时刻到达时执行对应的第一类抄读任务;在第一类抄读任务执行完毕后,继续执行调整后的第二类抄读任务;由于本申请通过构建时间保护区保障定时任务准时启动,并在非保护区动态适配实时任务帧长,在共享通道兼顾采集准时性、响应实时性与通信稳定性,提升抄读效率。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123011431A_ABST
    Figure CN123011431A_ABST
Patent Text Reader

Abstract

The application relates to the field of electric power data collection, and discloses a data reading method, device, equipment and storage medium, which comprises the following steps: based on electric power terminal device information, a time protection zone is established before a preset fixed triggering moment corresponding to a first type of reading task; whether the current system time is in the time protection zone is judged; in the case that the current system time is not in the time protection zone, a data frame corresponding to a second type of reading task is dynamically adjusted in the process of execution based on the current system time; in the case that the current system time is in the time protection zone, the adjusted second type of reading task is controlled based on the current system time, and the corresponding first type of reading task is executed when the preset fixed triggering moment arrives; after the first type of reading task is executed, the adjusted second type of reading task is continuously executed; due to the protection zone mechanism and the real-time task frame length dynamic adaptation mechanism, the collection punctuality and the response real-time performance are considered.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of power data acquisition, and in particular to a data reading method, apparatus, equipment, storage medium, and computer program product. Background Technology

[0002] In power terminal equipment, the main control microcontroller unit connects to peripherals through a single serial channel and must simultaneously undertake two types of tasks: periodic timed data acquisition and random burst forwarding. In time-sharing mode, timed tasks monopolize the channel, causing real-time requests to queue for extended periods. In priority preemption mode, real-time tasks forcibly interrupt ongoing long-frame readings, easily leading to communication protocol disorder, frame misalignment, or even channel deadlock, thus causing timed tasks to fail. While the all-time minimum frame strategy shortens the duration of a single interaction, fragmentation causes a sharp increase in interaction frequency, resulting in a decrease in overall reading efficiency. However, under the condition of a single shared serial channel, there is still an inherent conflict between the rigid timeliness requirement of timed tasks and the dynamic low-latency response of real-time tasks, which is difficult to reconcile with existing scheduling strategies. Summary of the Invention

[0003] The main purpose of this application is to provide a data copying method, apparatus, device, storage medium, and computer program product, which aims to solve the technical problem that there is still an inherent conflict between the rigid timeliness requirement of timed tasks and the dynamic low-latency response of real-time tasks under the condition of a single serial channel sharing, and that existing scheduling strategies are difficult to balance.

[0004] To achieve the above objectives, this application provides a data copying method, the data copying method comprising: Based on the information of power terminal equipment, a time protection zone is established before the preset fixed trigger time corresponding to the first type of reading task. The first type of reading task is a data reading task with a preset fixed trigger time. Determine whether the current system time is within the time protection zone; When the current system time is outside the time protection zone, the data frame corresponding to the second type of copying task is dynamically adjusted based on the current system time to obtain the adjusted second type of copying task. The adjusted second type of copying task is then executed. The second type of copying task is a randomly triggered data copying task. When the current system time is within the time protection zone, the adjusted second type of copying task is controlled based on the current system time, and the corresponding first type of copying task is executed when the preset fixed trigger time arrives. After the first type of copying task is completed, the adjusted second type of copying task will continue to be executed.

[0005] Optionally, the step of dynamically adjusting the data frame corresponding to the second type of copying task based on the current system time when the system is not in a time protection zone includes: If the current system time is outside the time protection zone, obtain the time interval between the next preset fixed trigger time and the current system time; If the time interval is greater than the first threshold, multiple data frames in the second type of copying task will be merged into the same data frame; When the time interval is less than or equal to the first threshold, the second type of copying task is split into multiple data frames. The shorter the time interval between the data frame and the next preset fixed trigger time, the fewer data items the data frame carries, until the smallest data frame carrying only one data item is obtained.

[0006] Optionally, the step of controlling the adjusted second type of copying task based on the current system time when the current system time is within the time protection zone, and executing the corresponding first type of copying task when the preset fixed trigger time arrives, includes: When the current system time is within the time protection zone, obtain the time interval between the current system time and the preset fixed trigger time; When the time interval is greater than or equal to the complete copying cycle of the minimum data frame, the copying task of the minimum data frame is executed, and when the copying task is completed and the preset fixed trigger time is reached, the corresponding first type of copying task is executed. If the time interval is less than the complete copying cycle of the minimum data frame, the copying task of the minimum data frame is suspended, and the corresponding first type of copying task is executed when the preset fixed trigger time is reached.

[0007] Optionally, after the step of continuing to execute the adjusted second type of copying task after the first type of copying task has been completed, the method further includes: Establish a data cache area and obtain the copying results of the first type of copying task; The copying results of the first type of copying task are stored in the data cache area.

[0008] Optionally, after the step of storing the copying results of the first type of copying task into the data cache, the method further includes: In response to the next copying task, the data cache is queried to see if there is a copying result that matches the next copying task, wherein the next copying task is the second type of copying task; If a copying result that matches the next copying task exists, then the matching copying result will be used as the copying result for the next copying task.

[0009] Optionally, after the step of querying the data buffer to see if there is a copying result matching the next copying task in response to the next copying task, the method further includes: If no copying result matches the next copying task, the current system time is obtained, and the step of determining whether the current system time is within the time protection zone is returned until the next copying task is completed.

[0010] Optionally, the step of querying the data buffer to see if a copying result matching the next copying task exists in response to the next copying task includes: In response to the next copying task, obtain the timestamp corresponding to the cached data in the data cache area; If the timestamp is within a preset time interval before the current system time, query the data cache to see if there is a copying result that matches the next copying task.

[0011] Furthermore, to achieve the above objectives, this application also proposes a data copying device, which includes: The protected area establishment module is used to establish a time protected area before the preset fixed trigger time corresponding to the first type of data reading task based on the information of the power terminal equipment. The first type of data reading task is a data reading task with a preset fixed trigger time. The dynamic adjustment module is used to dynamically adjust the data frame corresponding to the second type of copying task based on the current system time when the system is not in the time protection zone, so as to obtain the adjusted second type of copying task and execute the adjusted second type of copying task. The second type of copying task is a randomly triggered data copying task. The protected area scheduling module is used to control the adjusted second type of copying task based on the current system time when the system is in the time protected area, and to execute the corresponding first type of copying task when the preset fixed trigger time arrives. The task recovery module is used to continue executing the adjusted second type of copying task after the first type of copying task has been completed.

[0012] In addition, to achieve the above objectives, this application also proposes a data copying device, which includes a memory, a processor, and a data copying program stored in the memory and executable on the processor. The data copying program is configured to implement the data copying method described above.

[0013] In addition, to achieve the above objectives, this application also proposes a storage medium storing a data copying program, which, when executed by a processor, implements the data copying method as described above.

[0014] In addition, to achieve the above objectives, this application also provides a computer program product, which includes a data copying program. When the data copying program is executed by a processor, it implements the data copying method described above.

[0015] One or more technical solutions proposed in this application have at least the following technical effects: This application discloses a method for establishing a time protection zone before the preset fixed trigger time corresponding to the first type of data reading task based on power terminal equipment information; determining whether the current system time is within the time protection zone; dynamically adjusting the data frame corresponding to the second type of data reading task during execution based on the current system time when the current system time is outside the time protection zone; controlling the adjusted second type of data reading task based on the current system time when the current system time is within the time protection zone, and executing the corresponding first type of data reading task when the preset fixed trigger time arrives; and continuing to execute the adjusted second type of data reading task after the first type of data reading task is completed. Because this application ensures the timely start of timed tasks by constructing a time protection zone and dynamically adapts the real-time task frame length in non-protected areas, it balances data acquisition timeliness, response real-time, and communication stability in shared channels, thereby improving data reading efficiency. Attached Figure Description

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

[0017] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0018] Figure 1 This is a flowchart illustrating the first embodiment of the data copying method of this application; Figure 2 This is a flowchart illustrating the second embodiment of the data copying method of this application; Figure 3 This is a flowchart illustrating the third embodiment of the data copying method of this application; Figure 4 This is a timing diagram of the data copying method in this application; Figure 5This is a schematic diagram of the dual-track task pool structure for the data copying method in this application; Figure 6 This is a schematic diagram of the shadow cache results of the data copying method in this application; Figure 7 This is a schematic diagram of the module structure of the data copying and reading device according to an embodiment of this application; Figure 8 This is a schematic diagram of the device structure of the hardware operating environment involved in the data copying method in this application embodiment.

[0019] The realization of the purpose, functional features and advantages of this application will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation

[0020] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of this application and are not intended to limit this application.

[0021] To better understand the technical solution of this application, a detailed description will be provided below in conjunction with the accompanying drawings and specific implementation methods.

[0022] This application provides a data copying method, referring to... Figure 1 , Figure 1 This is a flowchart illustrating the first embodiment of the data copying method of this application.

[0023] In the first embodiment, the data copying method includes: Step S10: Based on the information of the power terminal equipment, establish a time protection zone before the preset fixed trigger time corresponding to the first type of data reading task. The first type of data reading task is a data reading task with a preset fixed trigger time.

[0024] It should be noted that the executing entity in this embodiment may be a data reading device with data processing, network communication and program running functions, such as power terminal equipment, or other electronic devices that can achieve the same or similar functions. This embodiment does not limit this.

[0025] It should be understood that the power terminal information may include the current communication rate and the shortest reading cycle. The shortest reading cycle is the complete reading cycle of a data frame carrying only a single data item. The complete reading cycle refers to the total time required from the start of sending a request command for a data frame to receiving the corresponding response data returned by the external metering device and completing the verification. The specific value can be pre-calculated and stored during the system initialization phase based on the baud rate of serial communication, the message frame length, and the response time parameters of the peripheral device.

[0026] It should be understood that the first type of copying task can be a periodic timed collection task that reaches the trigger time, and the preset fixed trigger time corresponding to the first type of copying task can be a timed copying point.

[0027] It should be understood that the time protection zone can be a preset window length, which can be a complete reading cycle of the smallest data frame carrying only a single data item read by a power terminal, and the end time of this time interval is the preset fixed trigger time.

[0028] In the specific implementation, based on the current communication rate and the shortest reading cycle, a window length is set as a time protection zone before the timed reading point of the periodic timed collection task. The length of the window can be 100ms.

[0029] Step S20: Determine whether the current system time is within the time protection zone.

[0030] It should be understood that the current system time refers to the current time value indicated by the internal system clock of the power equipment.

[0031] In the specific implementation, the current time value indicated by the internal system clock of the power equipment is obtained, and it is determined whether the current time value is within the time interval of 100ms before the timed reading point.

[0032] Step S30: When the current system time is outside the time protection zone, dynamically adjust the data frame corresponding to the second type of copying task based on the current system time to obtain the adjusted second type of copying task, and execute the adjusted second type of copying task. The second type of copying task is a randomly triggered data copying task.

[0033] It should be understood that non-time protection zone refers to the time interval outside the time protection zone.

[0034] It should be understood that randomly triggered data reading tasks can be data collection requests randomly triggered by events such as external master stations, local communication modules, or user operations.

[0035] In the specific implementation, when the current system time is outside the time protection zone, the second type of copying task is executed. First, the current system time is obtained, and the time interval between the current system time and the next timed copying point is calculated. t. The time t is compared with a preset first threshold T1, where the time length of the first threshold T1 must be sufficient to complete at least one communication interaction with a large amount of data, such as 2000ms. The determination of a large amount of data depends on the specific situation, and this embodiment does not impose any restrictions on it. When t is greater than T1, the multiple data frames of the current second-type copying task to be executed are merged into one data frame to obtain the adjusted second-type copying task; When t is less than or equal to T1, the second type of copying task is split into multiple data frames, and the number of data items carried in each data frame varies. The number of steps is gradually reduced by decreasing t until the smallest data frame carrying only a single data item is obtained, resulting in the adjusted second type of copying task.

[0036] Step S40: When the current system time is within the time protection zone, control the adjusted second type of copying task based on the current system time, and execute the corresponding first type of copying task when the preset fixed trigger time arrives.

[0037] It should be understood that the adjusted second type of copying task refers to the task that is split into multiple data frames in step S30, with the smallest data frame carrying only a single data item.

[0038] In a specific implementation, when the current system time is within the time protection zone, the time interval between the current system time and the next timed copying point is obtained based on the current system time. t, will t is compared with the complete copying cycle t of the smallest data frame, when When t is greater than or equal to t, the task of copying the current smallest data frame is executed, and when the copying task is completed and the next timed copying point arrives, the corresponding first type of copying task is executed; when When t is less than t, the copying task of the current smallest data frame is suspended, and the corresponding first type of copying task is executed when the timed copying point is reached.

[0039] Step S50: After the first type of copying task is completed, continue to execute the adjusted second type of copying task.

[0040] In the specific implementation, after the first type of copying task is completed, it checks whether there are any unfinished second type of copying tasks. Unfinished second type of copying tasks refer to those paused within the time protection zone. If there are unfinished second type of copying tasks, the incomplete portion of those tasks is retrieved, the current system time is obtained, and the step of determining whether the current system time is within the time protection zone is returned, until the current second type of task is completed. If there are no unfinished second type of copying tasks, the pending second type of copying tasks are prioritized according to preset rules and executed sequentially according to priority.

[0041] This embodiment ensures that timed tasks start on time by constructing a time protection zone, and dynamically adapts the frame length of real-time tasks in the non-protection zone. In the shared channel, it takes into account the timeliness of data collection, the real-time response, and the stability of communication, thereby improving the efficiency of data collection and reading.

[0042] Reference Figure 2 , Figure 2 This is a flowchart illustrating the second embodiment of the data copying method of this application, based on the above. Figure 1 The first embodiment shown presents a second embodiment of the data copying method of this application.

[0043] In the second embodiment, step S30 includes: Step S301: When the current system time is outside the time protection zone, obtain the time interval between the next preset fixed trigger time and the current system time.

[0044] It should be understood that the next preset fixed trigger time refers to the timed copying point of the first type of copying task that is closest to the current system time on the timeline after the current system time.

[0045] In the specific implementation, when the current system time is outside the time protection zone, the timed reading points of all registered first-type reading tasks are read from the task scheduling table. The timed reading points are traversed, and the timed reading point that is after the current system time and has the smallest difference from the current system time is selected. This time point is used as the next preset fixed trigger time, and the time difference between the current system time and the next preset fixed trigger time is calculated.

[0046] Step S302: If the time interval is greater than the first threshold, merge multiple data frames in the second type of copying task into the same data frame.

[0047] It should be noted that the specific value of the first threshold can be determined by combining the physical rate of serial communication, the response time of the external metering device, and the maximum allowable length of a single data frame. For example, when the serial communication rate is 9600 baud, the shortest response time of a single request from the peripheral device is 50ms, and the maximum length of a single data frame is 60 bytes, the first threshold can be set to 2000ms.

[0048] In the specific implementation, at the time interval If t is greater than the first threshold T1, obtain the list of data items requested by the second type of copying task to be executed, read the identifiers of all uncopying data items in the list, and determine whether all uncopying data items can be carried in a single data frame according to the maximum data payload length of a single frame specified by the serial communication protocol. If it does not exceed the limit, merge the multiple data frames of the second type of copying task into one data frame.

[0049] Step S303: When the time interval is less than or equal to the first threshold, the second type of copying task is split into multiple data frames. The shorter the time interval between the data frame and the next preset fixed trigger time, the fewer data items the data frame carries, until the smallest data frame carrying only one data item is obtained.

[0050] In the specific implementation, at the time interval If t is less than or equal to the first threshold T1, the currently pending second-type copying task is split into multiple data frames. The closer to the next timed copying point, the fewer data items the data frame carries, until a minimum data frame carrying only one data item is obtained. It should be noted that multiple decreasing thresholds are preset during the splitting process, including the aforementioned first threshold and several decreasing second thresholds T2, T3, ..., Tn, where T1 > T2 > T3 > ... > Tn, and Tn corresponds to the critical judgment value for the minimum data frame. Before each data frame is sent, the current system time is re-acquired and the time interval is calculated. t, according to The threshold range in which t is located determines the number of data items carried by the current data frame.

[0051] Step S304: Obtain the adjusted second type of copying task and execute the adjusted second type of copying task.

[0052] It should be understood that the adjusted second type of copying task is to be performed within a time interval. t is greater than the first threshold T1 or the time interval When t is less than or equal to the first threshold T1, the second type of copying task, after being merged or split, can contain a data frame set of one or more data frames and the corresponding transmission order information of one or more data frames. The transmission order information may include a record of the order in which each data frame was arranged during the split. In the merging scenario, the adjusted data frame set of the second type of copying task contains only one data frame, and the transmission order information contains only the transmission indication of that single data frame.

[0053] In the specific implementation, after adjusting the second type of data reading task, the first data frame to be sent is obtained in the adjusted second type of data reading task. According to the frame format specified by the serial communication protocol, the payload (i.e., the list of data item identifiers) of the first data frame to be sent is encapsulated into a command message conforming to the protocol specification. The encapsulation operation may include adding a frame header identifier and destination address before the payload, appending a checksum field after the payload, and adding a frame end identifier to the frame tail. After encapsulation, the command message is sent to the external metering device through the serial communication channel. After transmission, a timer is started, waiting for the external metering device to return a response message. Upon receiving the command message, the external metering device will parse out the data item identifiers carried within according to the communication protocol, read the corresponding measurement values, and return a response message containing the measurement values ​​organized according to the protocol's format. After receiving the response message within a preset timeout period, the response message is verified. If the verification passes, the measurement values ​​corresponding to each data item identifier are parsed from the response message, the measurement values ​​are associated with the corresponding data item identifiers and temporarily stored in memory, and the communication interaction of the data frame is marked as complete. If the verification fails or no response message is received after the preset timeout period, the data frame is retransmitted according to the retry mechanism specified in the serial communication protocol until communication is successful or the preset maximum number of retries is reached. If the communication fails after reaching the maximum number of retries, the data frame is marked as failed. After the communication interaction of this data frame is completed, it is checked whether there are any untransmitted data frames in the adjusted second type of copying task. If there are untransmitted data frames, the next data frame is retrieved according to the transmission order, the current system time is reacquired, and the time interval is recalculated. t, based on the updated time interval The system determines whether the data frame needs further adjustment (i.e., re-executes the judgment logic corresponding to step S302 or step S303), and then performs the communication interaction for the data frame. If there are no data frames yet to be sent, it indicates that all data frames for the second type of copying task have been sent. The main control device summarizes and combines all the measured values ​​of the data items temporarily stored in memory according to the data item identifiers carried in each data frame to form the complete copying result of the second type of copying task. The complete copying result may include the identifiers of each data item and their corresponding measured values. The complete copying result is then returned to the task requester, and the second type of copying task is completed.

[0054] To facilitate understanding, the following examples are provided for illustration, but they do not impose specific limitations on this embodiment. For instance, in an electricity meter reading terminal, a second type of reading task is received, requesting the reading of nine data items A1 to A9. The time interval between the current system time and the next scheduled reading point is obtained. At t=1800ms (between the second threshold T2=500ms and the first threshold T1=2000ms), the task can be divided into three data frames. The first data frame carries data items A1, A2, and A3; the second data frame carries data items A4, A5, and A6; and the third data frame carries data items A7, A8, and A9. The sending order is recorded as the first data frame, the second data frame, and the third data frame, thus obtaining the adjusted second-type data reading task. This adjusted second-type data reading task is then executed. First, the first data frame to be sent, i.e., the first data frame (carrying A1, A2, and A3), is obtained from the data frame set. This data frame is then encapsulated according to the serial communication protocol and sent to the energy meter via the RS485 serial channel. A timer is started to wait for a response. Upon receiving a response message within a preset timeout period (e.g., 200ms), and after successful verification, the values ​​A1=220.3V, A2=221.6V, and A3=219.9V are parsed from the response message. The identifiers and corresponding measured values ​​of these three data items are temporarily stored in memory. After the first data frame is completed, the system checks if there are any unsent data frames in the data frame set. A second and third data frames are found. The master control device retrieves the second data frame (carrying data items A4, A5, and A6) according to the sending order and performs the same sending, waiting, receiving, verification, and parsing operations as described above, obtaining A4=1.23A, A5=1.18A, and A6=1.25A, which are then temporarily stored in memory. After the second data frame is completed, a check reveals that a third data frame has not yet been sent. The third data frame (carrying data items A7, A8, and A9) is retrieved in the sending order and the same operation is performed, yielding A7=812.5W, A8=156.3var, and A9=0.982, which are temporarily stored in memory. After the third data frame is completed, the data frame set is checked again to confirm that no data frames have been left unsent, indicating that all data frames for this second type of data reading task have been completed. The main control device summarizes and combines the measured values ​​of the nine data items temporarily stored in memory in the order of A1 to A9 to obtain the complete data reading result, and returns this result to the requesting party, thus completing the second type of data reading task. If the current system time is re-acquired and recalculated before sending the second data frame... t, discovered If t has decreased from 1800ms to 400ms (i.e., between the third threshold T3=150ms and the second threshold T2=500ms), then the three data items A4, A5, and A6 originally intended to be carried in the second data frame will be further adjusted to carry only two data items, A4 and A5. A6 will then be recombined with A7, A8, and A9 and sent in subsequent data frames.

[0055] Furthermore, in order to ensure that the first type of task can be started and executed immediately without conflict at the trigger time while taking into account the copying efficiency of the real-time response task, step S40 includes: when the current system time is within the time protection zone, obtaining the time interval between the current system time and the preset fixed trigger time; when the time interval is greater than or equal to the complete copying cycle of the minimum data frame, executing the copying task of the minimum data frame, and executing the corresponding first type of copying task when the copying task is completed and the preset fixed trigger time arrives; when the time interval is less than the complete copying cycle of the minimum data frame, pausing the execution of the copying task of the minimum data frame, and executing the corresponding first type of copying task when the preset fixed trigger time arrives.

[0056] It should be understood that the minimum data frame refers to the minimum data frame that carries only one data item after being split in step S303.

[0057] In specific implementation, when the current system time is within the time protection zone, the time interval between the current system time and the next preset fixed trigger time is obtained. The obtained time interval is compared with the pre-calculated and stored complete reading cycle of the minimum data frame. If the time interval is greater than or equal to the complete reading cycle of the minimum data frame, the minimum data frame that has not yet been sent in the currently pending second-type reading task is retrieved, and the reading task of that minimum data frame is executed. This involves sending a request command carrying only one data item through the serial channel, receiving the response data returned by the peripheral device, and completing the verification. After the reading task of that minimum data frame is completed, the current system time is obtained again, and the time interval is recalculated. The updated time interval is compared again with the complete reading cycle of the minimum data frame to determine whether the reading task of the next minimum data frame can continue. If the updated time interval is still greater than or equal to the complete reading cycle of the minimum data frame, the next minimum data frame continues to be executed; if the updated time interval is less than the complete reading cycle of the minimum data frame, all second-type reading tasks are suspended, no new serial communication interactions are initiated, and a waiting state is entered. When the preset fixed trigger time arrives, the first-type reading task corresponding to that preset fixed trigger time is executed.

[0058] This embodiment further distinguishes the time intervals outside the protected area, merges data items when the time interval is sufficient, improves the efficiency of batch copying, and splits the task into multiple data frames with the frame length gradually reduced when the time interval is insufficient, which makes up for the defect that large frames cannot be completed before the triggering time when the protected area is nearby, thus achieving a dynamic balance between efficiency priority and timeliness guarantee.

[0059] Reference Figure 3 , Figure 3This is a flowchart illustrating the third embodiment of the data copying method of this application. Based on the above embodiments, a third embodiment of the data copying method of this application is proposed.

[0060] In the third embodiment, after step S50, the method further includes: Step S510: Establish a data buffer and obtain the copying results of the first type of copying task.

[0061] It should be understood that the data cache area can be an independent storage area in memory, used to temporarily store the copying result data obtained by the first type of copying task. This data cache area can be implemented using a hash table, key-value pair storage structure or array structure, and supports fast lookup operations indexed by data item identifier.

[0062] It should be noted that the reading result of the first type of reading task refers to the data content obtained and parsed from the external metering device through the serial communication channel when the first type of reading task is executed at a preset fixed trigger time. It may include the identifier of each data item and its corresponding measurement value.

[0063] In the specific implementation, after the first type of copying task is completed at a preset fixed trigger time, the copying result corresponding to the first type of copying task is read from the task execution result temporary storage area (e.g., memory). The copying result should contain all data item identifiers and their corresponding measurement values ​​copied by the task.

[0064] Step S520: Store the copying results of the first type of copying task into the data cache area.

[0065] In the specific implementation, after obtaining the reading results in step S510, the identifiers of each data item in the reading results, the measurement values ​​corresponding to each data item identifier, and the current system time (collection time) are stored as cache records according to the preset storage format of the data cache area.

[0066] The preset storage format refers to the data structure definition of each cached record in the data cache area, which can include the name, data type, field length, and arrangement order of each field. For example, the preset storage format can be defined as follows: the data item identifier field is a string type, occupying 8 bytes; the measurement value field is a floating-point type, occupying 4 bytes. Meanwhile, a cached record refers to a data structure unit stored in the data cache area, used to completely record the copying information of a data item. Each cached record includes at least three fields: a data item identifier field, used to uniquely identify the data item (e.g., "Ua" represents phase A voltage); a measurement value field, used to store the corresponding numerical value of the data item (e.g., "220.3"); and a collection timestamp field, used to store the collection time corresponding to when the measurement value was copied. Furthermore, when a cached record with the same data item identifier already exists in the data cache area, the new cached record overwrites the old one, ensuring that the data cache area always stores the latest copying result for that data item. If the data cache is full, the master device will replace an old cache record according to a preset replacement strategy (such as first-in-first-out strategy or least recently used strategy) and then write the new cache record.

[0067] Furthermore, in order to reduce the frequency of channel occupancy and the waste of resources caused by repeated copying, and to improve the response efficiency of real-time forwarding tasks, after step S520, the method further includes: in response to the next copying task, querying the data buffer to see if there is a copying result that matches the next copying task, wherein the next copying task is the second type of copying task; if there is a copying result that matches the next copying task, then the matching copying result is used as the copying result of the next copying task.

[0068] It should be understood that the next copying task refers to the next second-type copying task to be executed at the current moment.

[0069] In the specific implementation, after writing the copying results of the completed first type of copying task to the data cache, the system continuously monitors for the arrival of new second type of copying tasks or for any second type of copying tasks waiting to be executed. When a copying request for the next task is received, a cache lookup operation is performed first. The specific cache lookup operation is as follows: parse the request content of the next copying task, extract all data item identifiers requested by the task from the request content, forming a list of identifiers to be queried. Iterate through each data item identifier in the list of identifiers to be queried, using that data item identifier as an index to search in the index table of the data cache. For each data item identifier in the list of identifiers to be queried, check if there is a cache record in the data cache that has the same data item identifier. If all data item identifiers in the query identifier list have corresponding cache records in the data cache area, it is determined that there is a copying result in the data cache area that completely matches the next copying task. The measurement values ​​in the cache records corresponding to each data item identifier are read sequentially from the data cache area, and all measurement values ​​are arranged according to the order of the data items requested by the next copying task to form a complete copying result. Then, the copying result is returned directly to the requester as the copying result of the next copying task, and the copying task is completed.

[0070] Furthermore, in order to ensure the integrity of the real-time forwarding task while ensuring that subsequent communication interactions are still subject to the time constraints of the protection zone and to maintain the timely execution of the first type of copying task, the response to the next copying task, after querying the data buffer for whether there is a copying result matching the next copying task, also includes: if there is no copying result matching the next copying task, then obtaining the current system time and returning the step of determining whether the current system time is within the time protection zone, until the next copying task is completed.

[0071] In the specific implementation, if any data item in the list of identifiers to be queried cannot find a corresponding cache record in the data cache area, it is determined that there is no copying result in the data cache area that completely matches the next copying task, and according to the normal copying process of steps S30 to S40, a request instruction is sent to the external metering device through the serial communication channel to obtain the required copying result.

[0072] Furthermore, to ensure the timeliness and validity of the returned results and to avoid invalid information obtained by the main station or local module due to the return of expired data, the step of querying the data cache for a matching copying result in response to the next copying task includes: in response to the next copying task, obtaining the timestamp corresponding to the cached data in the data cache; and if the timestamp is within a preset time interval before the current system time, querying the data cache for a matching copying result in the next copying task.

[0073] It should be understood that the preset duration interval refers to a pre-set time length threshold. This preset duration interval can be a closed time interval formed by going back the preset duration from the current system time as the endpoint.

[0074] It should be understood that cached data refers to the data content contained in the cached records corresponding to the first type of copying task stored in the data cache area, which may include data item identifiers and measurement values.

[0075] In the specific implementation, in response to the next copying task, all data item identifiers requested by the task are extracted from the request content of the next copying task to form a list of identifiers to be queried. For each data item identifier in the list of identifiers to be queried, a search is performed in the index table of the data cache area using that data item identifier as an index. When a corresponding cache record is found, the collection timestamp field is read from the cache record to obtain the collection timestamp corresponding to the cached data. Then, the current system time is obtained, and according to a preset time interval (e.g., 5 seconds), 5 seconds are counted backward from the current system time to calculate the starting point of the valid time interval, thereby determining the valid time interval, and then determining whether the collection timestamp is within the valid time interval. If the collection timestamp is within the valid time interval, the cache record corresponding to the data item identifier is marked as a valid hit; otherwise, the cache record corresponding to the data item identifier is marked as expired and missed. Only when all data item identifiers in the list of identifiers to be queried are marked as valid hits is it determined that there is a valid copying result in the data cache area that completely matches the next copying task.

[0076] To facilitate understanding, the following explanation uses examples, but does not impose specific limitations on this embodiment. For example, in an electricity meter reading terminal, the system's preset effective duration is 5 seconds. The data buffer stores the following cached records: the measurement value corresponding to Ua is 220.3V, and the collection timestamp is 2026-07-23 12:00:00.000; the measurement value corresponding to Ub is 221.6V, and the collection timestamp is 2026-07-23 12:00:00.000; the measurement value corresponding to Uc is 219.9V, and the collection timestamp is 2026-07-23 12:00:00.000. At this time, the next reading task is received from the second type of task pool, which requests to read the two data items Ua and Ub. The current system time is 2026-07-23 12:00:04.000. Going back 5 seconds from the current system time 12:00:04.000, the starting point of the valid time interval is 11:59:59.000, and the valid time interval is [11:59:59.000, 12:00:04.000]. The collection timestamp of Ua (12:00:00.000) and Ub (12:00:00.000) both fall within this interval. Therefore, the cached data for both Ua and Ub are considered valid. The main control device reads Ua=220.3V and Ub=221.6V from the data cache, combines them into a complete reading result, and directly returns it to the requester. This task is completed under cache hit conditions. Similarly, if the current system time is 2026-07-23 12:00:06.000, and the preset valid duration is still 5 seconds, counting back 5 seconds from the current system time 12:00:06.000, the valid time interval is [12:00:01.000, 12:00:06.000]. The timestamp of Ua (12:00:00.000) is not within this interval, nor is the timestamp of Ub (12:00:00.000). Therefore, the cached data for both Ua and Ub are deemed expired and invalid. Consequently, it is determined that there is no valid reading result matching the next reading task in the data cache. Following the normal reading process, a request command is sent to the energy meter via the RS485 serial channel to re-acquire the current measurement values ​​of Ua and Ub. If the cached data of Ua is valid but the cached data of Ub is expired, it will also be determined that there is no completely matching and valid copying result, and the process will return to normal.

[0077] This embodiment establishes a data caching mechanism, which directly returns the data when the task matches the cached data without occupying the channel for copying. This replaces channel interaction with cache hits, reducing the frequency of channel occupation and the waste of resources caused by repeated copying, and improving the response efficiency of real-time forwarding tasks.

[0078] For ease of understanding, please refer to Figure 4 , Figure 5 and Figure 6 Examples are provided, but this application is not intended to limit the scope of the application. Figure 4 This is a timing diagram of the data copying method in this application. Figure 5 This is a schematic diagram of the dual-track task pool structure for the data copying method in this application. Figure 6 This is a schematic diagram of the shadow cache result of the data copying method in this application. First, as... Figure 5 As shown, a dual-track task pool is established in the system. Task pool A stores timed data collection tasks with preset fixed trigger times, while task pool B stores randomly triggered real-time forwarding tasks. Furthermore, tasks in task pool B are sorted by priority and executed sequentially according to priority. Figure 4 As shown, taking a Class B task that starts far from the scheduled trigger point as an example, the system is currently in the non-protected area. To ensure reading efficiency, the system merges multiple data items requested in this task into a super-long frame or a normal frame. Then, as the system clock advances, the task operation gradually approaches the scheduled task trigger point and is about to enter the protected area. To ensure that subsequent scheduled tasks can start on time, the system uses a dynamic framing mechanism to downgrade and split the original long frame into smaller frames, including a minimum data frame (micro-frame) carrying only a single data item. Once officially entering the protected area, the system determines that the remaining time between this moment and the trigger point allows for a complete reading cycle of one micro-frame. Therefore, it executes the micro-frame reading task and immediately pauses the reading of subsequent Class B tasks to ensure that when the scheduled task trigger point arrives, Class A tasks can be executed preferentially and without conflict. After the scheduled task trigger point arrives, Class A tasks begin execution. After successfully completing the copying of the Type A task, the system resumes execution of the previously paused Type B task. Upon exiting the protected area and re-entering the unprotected area, the remaining data is merged into larger frames and copied again until all data items for that task have been acquired. Immediately afterward, when the system receives the next Type B task, it does not immediately proceed through the channel for copying, but instead first... Figure 6 The system performs a search in the shadow cache shown. By comparing the data identifier in the cache with the timestamp in the corresponding record, it confirms that the data is within the valid duration allowed by the current system. If the verification finds a complete match and the data has not expired, the system determines that the cache hit for the currently pending B-type task has occurred. The system extracts the data content from the cache as the final result of the task and returns it directly to the requester. The current B-type task is completed, and the system continues to execute the next B-type task.

[0079] This application also provides a data copying and reading device, please refer to... Figure 7 The data reading device includes: The protected area establishment module 10 is used to establish a time protected area before the preset fixed trigger time corresponding to the first type of reading task based on the information of the power terminal equipment. The first type of reading task is a data reading task with a preset fixed trigger time. Module 20 is used to determine whether the current system time is within the time protection zone; The dynamic adjustment module 30 is used to dynamically adjust the data frame corresponding to the second type of copying task based on the current system time when the system is not in the time protection zone, so as to obtain the adjusted second type of copying task and execute the adjusted second type of copying task. The second type of copying task is a randomly triggered data copying task. The protected area scheduling module 40 is used to control the adjusted second type of copying task based on the current system time when the system is in the time protected area, and to execute the corresponding first type of copying task when the preset fixed trigger time arrives. The task recovery module 50 is used to continue executing the adjusted second type of copying task after the first type of copying task has been completed.

[0080] The data copying device provided in this application, employing the data copying method described in the above embodiments, can solve the inherent conflict between the rigid timeliness requirements of timed tasks and the dynamic low-latency response of real-time tasks under a single serial channel sharing condition, a technical problem that existing scheduling strategies struggle to address simultaneously. Compared with the prior art, the beneficial effects of the data copying device provided in this application are the same as those of the data copying method provided in the above embodiments, and other technical features in the data copying device are the same as those disclosed in the methods of the above embodiments, and will not be elaborated upon here.

[0081] This application provides a data copying device, which includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the data copying method in the first embodiment described above.

[0082] The following is for reference. Figure 8The diagram illustrates a structural schematic of a data copying device suitable for implementing embodiments of this application. The data copying device in the embodiments of this application may include, but is not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Desserts), PMPs (Portable Media Players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 8 The data reading device shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of this application.

[0083] like Figure 8 As shown, the data copying device may include a processing unit 1001 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in ROM (Read Only Memory) 1002 or a program loaded from storage device 1003 into RAM (Random Access Memory) 1004. RAM 1004 also stores various programs and data required for the operation of the data copying device. The processing unit 1001, ROM 1002, and RAM 1004 are interconnected via bus 1005. Input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems can be connected to I / O interface 1006: input devices 1007 including, for example, touch screens, touchpads, keyboards, mice, image sensors, microphones, accelerometers, gyroscopes, etc.; output devices 1008 including, for example, LCDs (Liquid Crystal Displays), speakers, vibrators, etc.; storage devices 1003 including, for example, magnetic tapes, hard disks, etc.; and communication devices 1009. Communication device 1009 allows the data reading device to communicate wirelessly or wiredly with other devices to exchange data. Although data reading devices with various systems are shown in the figures, it should be understood that implementation or possession of all the systems shown is not required. More or fewer systems may be implemented alternatively.

[0084] Specifically, according to the embodiments disclosed in this application, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments disclosed in this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device, or installed from storage device 1003, or installed from ROM 1002. When the computer program is executed by processing device 1001, it performs the functions defined in the methods of the embodiments disclosed in this application.

[0085] The data copying device provided in this application, employing the data copying method described in the above embodiments, can solve the inherent conflict between the rigid timeliness requirements of timed tasks and the dynamic low-latency response of real-time tasks under a single serial channel sharing condition, a technical problem that existing scheduling strategies struggle to reconcile. Compared with the prior art, the beneficial effects of the data copying device provided in this application are the same as those of the data copying method provided in the above embodiments, and other technical features of this data copying device are the same as those disclosed in the previous embodiment method, and will not be repeated here.

[0086] It should be understood that the various parts disclosed in this application can be implemented using hardware, software, firmware, or a combination thereof. In the description of the above embodiments, specific features, structures, materials, or characteristics can be combined in any suitable manner in one or more embodiments or examples.

[0087] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

[0088] This application provides a computer-readable storage medium having computer-readable program instructions (i.e., a computer program) stored thereon, which are used to execute the data copying method described in the above embodiments.

[0089] The computer-readable storage medium provided in this application may be, for example, a USB flash drive, but is not limited to, electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or any combination thereof. More specific examples of computer-readable storage media may include, but are not limited to: electrical connections having one or more wires, portable computer disks, hard disks, RAM (Random Access Memory), ROM (Read Only Memory), EPROM (Erasable Programmable Read Only Memory), or flash memory, optical fiber, CD-ROM (CD-Read Only Memory), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, system, or device. The program code contained on the computer-readable storage medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (Radio Frequency), etc., or any suitable combination thereof.

[0090] The aforementioned computer-readable storage medium may be included in the data copying device; or it may exist independently and not be assembled into the data copying device.

[0091] The aforementioned computer-readable storage medium carries one or more programs, which, when executed by the data copying device, cause the data copying device to perform the aforementioned data copying method.

[0092] Computer program code for performing the operations of this application can be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, and C++, as well as conventional procedural programming languages ​​such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including LAN (Local Area Network) or WAN (Wide Area Network)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0093] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.

[0094] The modules described in the embodiments of this application can be implemented in software or hardware. The names of the modules do not necessarily limit the functionality of the unit itself.

[0095] The readable storage medium provided in this application is a computer-readable storage medium that stores computer-readable program instructions (i.e., a computer program) for executing the above-described data copying method. This solves the technical problem that, under a single shared serial channel, the inherent conflict still exists between the rigid timeliness requirements of timed tasks and the dynamic low-latency response of real-time tasks, a conflict that existing scheduling strategies struggle to reconcile. Compared to the prior art, the beneficial effects of the computer-readable storage medium provided in this application are the same as those of the data copying method provided in the above embodiments, and will not be elaborated upon here.

[0096] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the data copying method described above.

[0097] The computer program product provided in this application can solve the inherent conflict between the rigid timeliness requirement of timed tasks and the dynamic low-latency response of real-time tasks under the condition of a single serial channel sharing, a technical problem that existing scheduling strategies cannot achieve simultaneously. Compared with the prior art, the beneficial effects of the computer program product provided in this application are the same as those of the data copying method provided in the above embodiments, and will not be repeated here.

[0098] The above description is only a part of the embodiments of this application and does not limit the scope of this application. All equivalent structural transformations made under the technical concept of this application and using the content of this application specification and drawings, or direct / indirect applications in other related technical fields, are included within the protection scope of this application.

[0099] It should be noted that the data collection, tag management, rule setting, and push decision-making processes involved in this application are designed to work with other technical features to solve technical problems. They do not involve or support any illegal activities. Any data processing that may violate laws and regulations (such as unauthorized collection of privacy data, generation of discriminatory tags, setting unfair rules, or pushing illegal information) is not within the scope of protection of this application's technical solution. Of course, the user data in this application will be encrypted, anonymized, or de-identified before storage to ensure user data security.

Claims

1. A data copying method, characterized in that, The data copying method includes: Based on the information of power terminal equipment, a time protection zone is established before the preset fixed trigger time corresponding to the first type of reading task. The first type of reading task is a data reading task with a preset fixed trigger time. Determine whether the current system time is within the time protection zone; When the current system time is outside the time protection zone, the data frame corresponding to the second type of copying task is dynamically adjusted based on the current system time to obtain the adjusted second type of copying task. The adjusted second type of copying task is then executed. The second type of copying task is a randomly triggered data copying task. When the current system time is within the time protection zone, the adjusted second type of copying task is controlled based on the current system time, and the corresponding first type of copying task is executed when the preset fixed trigger time arrives. After the first type of copying task is completed, the adjusted second type of copying task will continue to be executed.

2. The data copying method as described in claim 1, characterized in that, The step of dynamically adjusting the data frame corresponding to the second type of copying task based on the current system time when the system is not in the time protection zone includes: If the current system time is outside the time protection zone, obtain the time interval between the next preset fixed trigger time and the current system time; If the time interval is greater than the first threshold, multiple data frames in the second type of copying task will be merged into the same data frame; When the time interval is less than or equal to the first threshold, the second type of copying task is split into multiple data frames. The shorter the time interval between the data frame and the next preset fixed trigger time, the fewer data items the data frame carries, until the smallest data frame carrying only one data item is obtained.

3. The data copying method as described in claim 2, characterized in that, The step of controlling the adjusted second type of copying task based on the current system time when the system is within the time protection zone, and executing the corresponding first type of copying task when the preset fixed trigger time arrives, includes: When the current system time is within the time protection zone, obtain the time interval between the current system time and the preset fixed trigger time; When the time interval is greater than or equal to the complete copying cycle of the minimum data frame, the copying task of the minimum data frame is executed, and when the copying task is completed and the preset fixed trigger time is reached, the corresponding first type of copying task is executed. If the time interval is less than the complete copying cycle of the minimum data frame, the copying task of the minimum data frame is suspended, and the corresponding first type of copying task is executed when the preset fixed trigger time is reached.

4. The data copying method according to any one of claims 1 to 3, characterized in that, After the step of continuing to execute the adjusted second type of copying task after the first type of copying task has been completed, the method further includes: Establish a data cache area and obtain the copying results of the first type of copying task; The copying results of the first type of copying task are stored in the data cache area.

5. The data copying method as described in claim 4, characterized in that, After the step of storing the copying results of the first type of copying task into the data cache area, the method further includes: In response to the next copying task, the data cache is queried to see if there is a copying result that matches the next copying task, wherein the next copying task is the second type of copying task; If a copying result that matches the next copying task exists, then the matching copying result will be used as the copying result for the next copying task.

6. The data copying method as described in claim 5, characterized in that, Following the step of querying the data buffer to see if a copying result matching the next copying task exists in response to the next copying task, the method further includes: If no copying result matches the next copying task, the current system time is obtained, and the step of determining whether the current system time is within the time protection zone is returned until the next copying task is completed.

7. The data copying method as described in claim 5, characterized in that, The step of querying the data buffer to see if there is a copying result matching the next copying task in response to the next copying task includes: In response to the next copying task, obtain the timestamp corresponding to the cached data in the data cache area; If the timestamp is within a preset time interval before the current system time, query the data cache to see if there is a copying result that matches the next copying task.

8. A data copying and reading device, characterized in that, The device includes: The protected area establishment module is used to establish a time protected area before the preset fixed trigger time corresponding to the first type of data reading task based on the information of the power terminal equipment. The first type of data reading task is a data reading task with a preset fixed trigger time. The judgment module is used to determine whether the current system time is within the time protection zone; The dynamic adjustment module is used to dynamically adjust the data frame corresponding to the second type of copying task based on the current system time when the system is not in the time protection zone, so as to obtain the adjusted second type of copying task and execute the adjusted second type of copying task. The second type of copying task is a randomly triggered data copying task. The protected area scheduling module is used to control the adjusted second type of copying task based on the current system time when the system is in the time protected area, and to execute the corresponding first type of copying task when the preset fixed trigger time arrives. The task recovery module is used to continue executing the adjusted second type of copying task after the first type of copying task has been completed.

9. A data copying and reading device, characterized in that, The device includes: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the data copying method as described in any one of claims 1 to 7.

10. A storage medium, characterized in that, The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, it implements the steps of the data copying method as described in any one of claims 1 to 7.