A method, system, medium, and product for storing a clock correction for a logging instrument
By setting the baseline and movement point of the benchmark storage logging instrument on the visual interface and performing time synchronization correction, the problem of low clock synchronization reliability of the storage logging instrument is solved, and precise time dimension alignment between multiple instruments is achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-12-17
- Publication Date
- 2026-03-24
AI Technical Summary
In the existing technology, the clock synchronization mechanism of the storage logging instrument is highly dependent on the power supply and communication infrastructure, which leads to low clock synchronization reliability in the event of a failure, which may result in the loss of logging data or disorder of time stamps.
By displaying the acceleration curves of multiple storage logging instruments on the visualization interface, users can select a benchmark storage logging instrument and set the starting and ending baselines, calibrate the starting and ending movement points of other storage logging instruments, use these feature points for time synchronization correction, and generate time correction parameters for linear interpolation correction.
This approach achieves improved clock synchronization reliability among multiple storage logging instruments while maintaining their independence, ensuring precise alignment of logging data in the time dimension.
Smart Images

Figure CN121348464B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of clock calibration technology, and in particular to a clock calibration method, system, medium and product for storing logging instruments. Background Technology
[0002] With the rapid development of geological exploration technology, well logging operations are playing an increasingly important role in the exploration of resources such as oil and natural gas. In modern well logging technology, the well logging instrument, as the core equipment for collecting data on the physical properties of underground rock formations, directly affects the reliability of geological analysis results and the accuracy of resource assessment due to the accuracy and consistency of its data acquisition.
[0003] In related technologies, a unified storage method is typically used to centrally manage multiple logging instruments. Specifically, this involves establishing a centralized clock management system to connect all logging instruments to a unified clock source, ensuring strict time synchronization during data acquisition. In practice, the clock management system periodically sends clock synchronization signals to each logging instrument. Upon receiving the synchronization signal, each instrument automatically adjusts its internal clock to match the master clock, thus ensuring that all acquired logging data has a unified time reference and avoiding data misalignment caused by clock differences.
[0004] However, when using the above-mentioned unified storage method for clock management, the clock management system is highly dependent on the power supply and communication infrastructure. Once the power supply system or communication link fails, the entire clock synchronization mechanism will fail, which may lead to the loss of logging data or time stamp confusion, resulting in low clock synchronization reliability among multiple storage logging instruments in related technologies. Summary of the Invention
[0005] This application provides a clock correction method, system, medium, and product for storage logging instruments, which improves the clock synchronization reliability among multiple storage logging instruments.
[0006] In a first aspect, this application provides a clock calibration method for a storage logging instrument, applied to the aforementioned clock calibration system. The method includes: upon receiving a start command, reading the accelerometer file path in a target configuration file to obtain logging data collected by multiple storage logging instruments. The logging data includes acceleration data recorded by the accelerometers built into each storage logging instrument and a local timestamp corresponding to the logging data, the local timestamp being a time stamp generated by the internal clock of each storage logging instrument; displaying the acceleration curves of the multiple storage logging instruments on a visual interface, and responding to a user's benchmark selection operation on the visual interface for the acceleration curves of the multiple storage logging instruments to determine a benchmark storage logging instrument from among the multiple storage logging instruments; responding to... The user performs a baseline setting operation on the acceleration curve of the reference storage logging instrument to determine the starting and ending baselines from the acceleration curve of the reference storage logging instrument; responds to the user's movepoint calibration operation on the acceleration curves of other storage logging instruments to calibrate the starting movepoint corresponding to the starting baseline and the ending movepoint corresponding to the ending baseline on the acceleration curves of other storage logging instruments, which are storage logging instruments other than the reference storage logging instrument among multiple storage logging instruments; performs a time synchronization correction operation on the local timestamps of other storage logging instruments based on the starting baseline, ending baseline, starting movepoint, and ending movepoint to align the logging data of multiple storage logging instruments in the time dimension.
[0007] By adopting the above technical solution, upon receiving a startup command, the accelerometer file path in the target configuration file is read, enabling the unified acquisition of acceleration data and local timestamps from multiple storage logging instruments. Although these local timestamps are independently generated by the internal clocks of each storage logging instrument, the acceleration curves of multiple storage logging instruments are simultaneously displayed on a visual interface, allowing users to intuitively observe the similarities and differences in acceleration changes among the instruments. A benchmark storage logging instrument is determined through a benchmark selection operation, and a starting and ending baseline are set on the acceleration curve of the benchmark storage logging instrument. Corresponding starting and ending points are also marked on the acceleration curves of other storage logging instruments, establishing a correspondence between acceleration feature points of different instruments. Finally, based on these correspondences, time synchronization correction operations are performed on the local timestamps of other storage logging instruments, achieving precise time alignment of multiple independently operating storage logging instruments while maintaining their independence. This solves the technical problem of low clock synchronization reliability among multiple storage logging instruments in related technologies, achieving the technical effect of improving the clock synchronization reliability among multiple storage logging instruments.
[0008] Optionally, in response to a user's baseline setting operation on the acceleration curve of the benchmark storage logging instrument, the starting and ending baselines are determined from the acceleration curve of the benchmark storage logging instrument. Specifically, this includes: responding to a user's first time range adjustment operation, adjusting the time display range of the visualization interface to a second-level time display range; responding to a user's start point selection command triggered within the second-level time display range, determining a first target time period from the time axis where the starting baseline needs to be set, setting the starting baseline on the acceleration curve of the benchmark storage logging instrument within the first target time period, and displaying a first vertical line marker on the visualization interface with the same color as the acceleration curve of the benchmark storage logging instrument. The first vertical line marker is a first type of identifier line perpendicular to the time axis of the visualization interface and is used to indicate the starting baseline's position on the time axis. The system is configured to adjust the time range from seconds to minutes in response to the user's second time range adjustment operation after the initial baseline is set. It also responds to the user's end-point selection command triggered within the minutes-level time range, determining the second target time period from the time axis where the end baseline needs to be set. In response to the user's third time range adjustment operation, it adjusts the minute-level time range to seconds in response to the user's third time range adjustment operation, sets the end baseline on the acceleration curve of the benchmark storage logging instrument within the second target time period, and displays a second vertical line marker on the visualization interface that is the same color as the acceleration curve of the benchmark storage logging instrument. This second vertical line marker is a second type of identifier line perpendicular to the time axis and is used to indicate the time position of the end baseline on the time axis. The end baseline and the initial baseline are set on the same acceleration curve.
[0009] By adopting the above technical solution, in response to the user's first time range adjustment operation, the visualization interface is adjusted to a second-level time display range, which can provide a sufficiently fine time resolution for the user to observe the detailed features of the acceleration curve. On this basis, in response to the start point selection command, the first target time period is determined and the starting baseline is set. At the same time, the first vertical line mark with the same color as the acceleration curve of the benchmark stored logging instrument is displayed, making the position of the starting baseline more visually clear. Subsequently, the second time range adjustment operation switches to the minute-level time display range, which makes it easier for the user to find a suitable end point position within a larger time span. Then, the end point selection command is used to determine the second target time period. Finally, the third time range adjustment operation returns to the second-level time display range to set the end baseline and display the second vertical line mark. This flexible switching operation method between different time scales can not only ensure the accuracy of baseline setting, but also improve operational efficiency. At the same time, the vertical line mark with the same color intuitively displays the baseline position, enhancing the accuracy and traceability of user operation.
[0010] Optionally, in response to a user's calibration operation on the acceleration curves of other stored logging instruments, a starting point corresponding to the initial baseline and an ending point corresponding to the ending baseline are calibrated on the acceleration curves of other stored logging instruments. Specifically, this includes: after the initial baseline is set, responding to the user's fourth time range adjustment operation, adjusting the time display range to a first target time period; within the first target time period, responding to a user's starting point selection command triggered on the acceleration curves of other stored logging instruments, calibrating a starting point on the acceleration curves of other stored logging instruments, wherein the starting point is a feature point with the same physical vibration characteristics as the initial baseline and needs to be aligned on the time axis; after the ending baseline is set, responding to the user's fifth time range adjustment operation, adjusting the time display range to a second target time period; within the second target time period, responding to a user's ending point selection command triggered on the acceleration curves of other stored logging instruments, calibrating an ending point on the acceleration curves of other stored logging instruments, wherein the ending point is a feature point with the same physical vibration characteristics as the ending baseline and needs to be aligned on the time axis.
[0011] By adopting the above technical solution, after the initial baseline is set, the time display range is precisely adjusted to the first target time period in response to the user's fourth time range adjustment operation. This allows the user's attention to be focused on the time area related to the initial baseline. Within this limited time range, the starting moving point selection command is responded to to calibrate the starting moving point, ensuring that the calibrated starting moving point has the same physical vibration characteristics as the initial baseline, reducing the possibility of misoperation. Similarly, after the end baseline is set, the time display range is adjusted to the second target time period through the fifth time range adjustment operation, and the end moving point is calibrated within this range in response to the end moving point selection command. This method of closely linking the time range with the calibration operation can not only improve the accuracy of feature point matching, but also reduce the difficulty for users to find corresponding feature points in a large amount of data by limiting the operation range, making the identification and alignment of the same physical vibration characteristics between different storage logging instruments more efficient and reliable.
[0012] Optionally, the above method further includes: when it is detected that the user scrolls the mouse wheel upward in the acceleration curve display area of the visualization interface, adjusting the time display range of the visualization interface to a second-level time display range; when it is detected that the user scrolls the mouse wheel downward in the acceleration curve display area of the visualization interface, adjusting the time display range to a minute-level time display range; when it is detected that the user scrolls the mouse wheel upward in the acceleration curve display area of the visualization interface a preset number of times, adjusting the time display range to a second-level time display range according to a preset scaling level.
[0013] By adopting the above technical solution, when the user scrolls the mouse wheel upwards in the acceleration curve display area of the visualization interface, the time display range is automatically adjusted to the second level, and when scrolling downwards, it is adjusted to the minute level. This time scale switching mechanism based on the scroll wheel direction allows users to quickly switch between different time precisions without the need for complex menu operations. At the same time, the function of setting the mouse wheel to scroll upwards a preset number of times to adjust to the second-level time display range according to a preset scaling level provides a more flexible scaling control method. Users can choose progressive scaling or rapid scaling according to actual needs. This multi-level time range adjustment mechanism not only improves the convenience of user operation, but also adapts to the operating habits of different users, making it more efficient to locate the required time position when setting the baseline and calibrating moving points, reducing the number of repeated adjustments.
[0014] Optionally, multiple acceleration curves of stored logging instruments can be displayed on the visualization interface. Specifically, in response to a display mode selection command issued by the user through the display menu of the visualization interface, at least one of the following acceleration curves can be displayed on the visualization interface: acceleration curve in the X-axis direction of the accelerometer; acceleration curve in the Y-axis direction of the accelerometer; acceleration curve in the Z-axis direction of the accelerometer; and the sum of squares curve of the X-axis acceleration, Y-axis acceleration, and Z-axis acceleration of the accelerometer. The sum of squares curve is obtained by calculating the sum of the squares of the X-acceleration value, Y-acceleration value, and Z-acceleration value at each time point. The sum of squares curve is used to provide a comprehensive display of vibration characteristics.
[0015] By adopting the above technical solution, in response to the display mode selection command issued by the user through the display menu of the visual interface, it is possible to flexibly switch between displaying acceleration curves and sum-of-squares curves in the X, Y, and Z axes of the accelerometer. Among them, the single-axis acceleration curve can reflect the vibration characteristics in a specific direction, making it easy to identify directional vibration events. The sum-of-squares curve, by calculating the sum of the squares of the acceleration values in the three directions at each time point, comprehensively reflects the overall vibration intensity of the logging instrument and eliminates the influence of directionality. This multi-mode curve display method allows users to select the most suitable display mode according to different analysis needs. In particular, the comprehensive vibration characteristic display provided by the sum-of-squares curve can more easily identify the same physical vibration events between different instruments, improve the accuracy of baseline and movement point matching, and enhance the reliability of the clock calibration process.
[0016] Optionally, a time synchronization correction operation is performed on the local timestamps of other stored logging instruments based on the starting baseline, ending baseline, starting move point, and ending move point to align the logging data of multiple stored logging instruments in the time dimension. Specifically, this includes: determining a first time offset of the starting move point relative to the starting baseline based on the time position of the starting baseline and the time position of the starting move point; determining a second time offset of the ending move point relative to the ending baseline based on the time position of the ending baseline and the time position of the ending move point; determining the clock drift rate of other stored logging instruments based on the first time offset, the second time offset, and the time interval between the starting baseline and the ending baseline; generating time correction parameters based on the first time offset, the second time offset, and the clock drift rate; and performing linear interpolation correction on the local timestamps of other stored logging instruments using the time correction parameters to align the logging data of other stored logging instruments with the logging data of the reference stored logging instrument in the time dimension.
[0017] By adopting the above technical solution, the first time offset is calculated based on the time position of the starting baseline and the starting moving point, and the second time offset is calculated based on the time position of the ending baseline and the ending moving point. This allows for the quantification of the time difference between different storage logging instruments at two characteristic moments. Furthermore, the clock drift rate is calculated by combining the time interval between the starting and ending baselines, accurately reflecting the clock deviation variation of other storage logging instruments relative to the benchmark storage logging instrument. Based on the time correction parameters generated from the first time offset, the second time offset, and the clock drift rate, the local timestamps of other storage logging instruments are linearly interpolated and corrected using these time correction parameters. This enables continuous correction throughout the entire time period, rather than discrete correction only at characteristic points, ensuring that the logging data of other storage logging instruments and the logging data of the benchmark storage logging instrument maintain precise time alignment throughout the entire measurement period.
[0018] Optionally, after reading the accelerometer file path in the target configuration file, the method further includes: detecting whether a time correction file exists; if a time correction file is detected, backing up the time correction file according to a preset naming format to obtain a time correction backup file; after performing time synchronization correction on the local timestamps of other stored logging instruments based on the starting baseline, ending baseline, starting movement point, and ending movement point, the method further includes: if it is detected that the user has performed a time synchronization correction operation, responding to the update command issued by the user through the file menu of the visual interface, updating the historical correction parameters in the time correction file to the time correction parameters using the time correction parameters; if it is detected that the user has not performed a time synchronization correction operation, responding to the exit command issued by the user through the file menu of the visual interface, exiting the time synchronization correction operation without updating the time correction file.
[0019] By adopting the above technical solution, after reading the accelerometer file path in the target configuration file, the system detects whether a time correction file exists. If it exists, it backs up the file according to a preset naming format to obtain a time correction backup file. This preserves historical correction parameters for subsequent analysis or backtracking, avoiding information loss caused by new correction operations overwriting existing data. After completing time synchronization correction, different processing strategies are adopted depending on whether the user has performed an actual correction operation. If the operation has been performed, an update command is responded to update the historical correction parameters in the time correction file with the new time correction parameters, ensuring that the correction results are saved. If the operation has not been performed, an exit command is responded to directly exit without updating the file, avoiding interference from invalid operations on the original correction parameters. This conditional file management mechanism can ensure data integrity and traceability, and also improve the system's fault tolerance and operational flexibility.
[0020] In a second aspect, embodiments of this application provide a clock correction system, which includes: one or more processors and a memory; the memory is coupled to one or more processors, and the memory is used to store computer program code, the computer program code including computer instructions, and the one or more processors call the computer instructions to cause the clock correction system to perform the method described in the first aspect and any possible implementation thereof.
[0021] Thirdly, embodiments of this application provide a computer program product containing instructions that, when the computer program product is run on a clock correction system, cause the clock correction system to perform the method described in the first aspect and any possible implementation thereof.
[0022] Fourthly, embodiments of this application provide a computer-readable storage medium including instructions that, when executed on a clock correction system, cause the clock correction system to perform the method described in the first aspect and any possible implementation thereof. Attached Figure Description
[0023] Figure 1 This is a flowchart illustrating a clock calibration method for storing logging instruments in an embodiment of this application;
[0024] Figure 2 This is a schematic diagram of the physical device structure of a clock correction system in an embodiment of this application. Detailed Implementation
[0025] The terminology used in the following embodiments of this application is for the purpose of describing particular embodiments only and is not intended to be limiting of this application. As used in the specification and appended claims of this application, the singular expressions “a,” “an,” “the,” “the,” “the,” and “this” are intended to include the plural expressions as well, unless the context clearly indicates otherwise. It should also be understood that the term “and / or” as used in this application refers to any or all possible combinations including one or more of the listed items.
[0026] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as implying or suggesting relative importance or implicitly indicating the number of indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature, and in the description of the embodiments of this application, unless otherwise stated, "multiple" means two or more.
[0027] This application provides a clock calibration method for a storage logging instrument, see reference. Figure 1 , Figure 1 This is a flowchart illustrating a clock calibration method for a well logging instrument in an embodiment of this application, including the following steps:
[0028] Step S101: When the start command is received, the accelerometer file path in the target configuration file is read to obtain logging data collected by multiple storage logging instruments. The logging data includes acceleration data recorded by the accelerometer built into each storage logging instrument and the local timestamp corresponding to the logging data. The local timestamp is a time stamp generated by the internal clock of each storage logging instrument.
[0029] Step S102: Display the acceleration curves of multiple storage logging instruments on the visualization interface, and respond to the benchmark selection operation performed by the user on the acceleration curves of multiple storage logging instruments on the visualization interface to determine the benchmark storage logging instrument from the multiple storage logging instruments.
[0030] Step S103: Responding to the baseline setting operation performed by the user on the acceleration curve of the reference storage logging instrument, to determine the starting baseline and the ending baseline from the acceleration curve of the reference storage logging instrument.
[0031] Step S104: Respond to the user's moving point calibration operation performed on the acceleration curve of other storage logging instruments, so as to calibrate the starting moving point corresponding to the starting baseline and the ending moving point corresponding to the ending baseline on the acceleration curve of other storage logging instruments. Other storage logging instruments are storage logging instruments other than the benchmark storage logging instrument among multiple storage logging instruments.
[0032] Step S105: Perform time synchronization correction operation on the local timestamps of other stored logging instruments based on the starting baseline, ending baseline, starting move point, and ending move point, so that the logging data of multiple stored logging instruments are aligned in the time dimension.
[0033] In the above embodiment, taking an oilfield logging operation scenario as an example: An oilfield needs to conduct comprehensive logging operations on an exploration well with a depth of 3000 meters, using 5 storage logging instruments (numbered SLT-001 to SLT-005). Each instrument has a built-in triaxial accelerometer (model ADXL345, measurement range ±16g, sampling rate 100Hz) to measure the acceleration along the X-axis (radial), Y-axis (tangential), and Z-axis (axial). When the operator starts the clock calibration software on the logging data processing workstation, it automatically reads the accelerometer file path / data / logging / 1111 / in the configuration file config.ini. This path contains 5 CSV format data files, each containing approximately 8.64 million data records collected by the corresponding instrument within 24 hours. Each record contains four fields: local timestamp (accurate to milliseconds, formatted as 1111-01-15 14:23:45.678), X-axis acceleration value (unit: g), Y-axis acceleration value (unit: g), and Z-axis acceleration value (unit: g). Five acceleration curves are plotted on the visualization interface with time as the horizontal axis and acceleration as the vertical axis. Each curve uses a different color (red for SLT-001, blue for SLT-002, green for SLT-003, yellow for SLT-004, and purple for SLT-005). The operator left-clicks on the red curve of SLT-001, prompting a confirmation dialog box: "Set SLT-001 as the reference instrument?". After clicking "Confirm," SLT-001 is designated as the reference storage logging instrument, and its curve is displayed in bold.
[0034] In the above embodiment, the operator scrolls the mouse wheel upwards three times to zoom the time display range from 60 minutes to 5 seconds. Then, at 14:23:45.500, the operator right-clicks on the SLT-001 curve, and the system draws a red vertical dashed line at that position as the starting baseline. This moment corresponds to the peak vibration generated when the instrument begins its descent (acceleration suddenly increases from 0.2g to 3.5g). Subsequently, the operator scrolls the mouse wheel downwards to expand the display range to 60 minutes, drags the time axis to around 15:47:32, zooms back to 5 seconds, and right-clicks at 15:47:32.800 to set the ending baseline. This moment corresponds to the vibration characteristics when the instrument reaches the target depth and stops descending (acceleration decreases from 3.2g to 0.3g). For the other four instruments, the operators calibrated the movement points sequentially: taking SLT-002 as an example, the time range was adjusted to the interval from 14:23:45.000 to 14:23:50.000 near the starting baseline. It was observed that SLT-002 exhibited the same sudden increase in vibration at 14:23:45.320, and the right-click was used to mark it as the starting movement point; similarly, in the interval from 15:47:30.000 to 15:47:35.000 near the ending baseline, the ending movement point was calibrated at 15:47:32.950. The time correction parameters are calculated based on the calibration results: First time offset of SLT-002 = 14:23:45.320 - 14:23:45.500 = -0.180 seconds; Second time offset of SLT-002 = 15:47:32.950 - 15:47:32.800 = 0.150 seconds; Time interval = 15:47:32.800 - 14:23:45.500 = 5027.3 seconds; Clock drift rate = (0.150 - (-0.180)) / 5027.3 = 0.0000656 seconds / second. The correction formula for SLT-002 at any time t is: Corrected time = t + (-0.180) + 0.0000656 × (t - 14:23:45.320).
[0035] In the above embodiment, the same calibration and calculation process is performed on the other three instruments (SLT-003 to SLT-005) in this manner: the starting point of SLT-003 is calibrated at 14:23:45.410, and the ending point is calibrated at 15:47:32.860; the starting point of SLT-004 is calibrated at 14:23:45.550, and the ending point is calibrated at 15:47:32.720; the starting point of SLT-005 is calibrated at 14:23:45.380, and the ending point is calibrated at 15:47:32.910. The clock drift rate of each instrument is calculated and the corresponding linear interpolation correction formula is generated. All correction parameters are saved to the time_correction_1111_01_15.json file. After time synchronization correction, the local timestamps of the five logging instruments at the same physical event time were adjusted to be consistent, so that subsequent data processing work such as logging curve comparison analysis, formation interface identification, and reservoir parameter calculation can be carried out based on a unified time reference.
[0036] Through the above steps, upon receiving the startup command, the accelerometer file path in the target configuration file is read, enabling the unified acquisition of acceleration data and local timestamps from multiple storage logging instruments. Although these local timestamps are independently generated by the internal clocks of each storage logging instrument, the acceleration curves of multiple storage logging instruments are simultaneously displayed on a visual interface, allowing users to intuitively observe the similarities and differences in acceleration changes among the instruments. A benchmark storage logging instrument is determined through a benchmark selection operation. Starting and ending baselines are set on the acceleration curve of the benchmark storage logging instrument, and corresponding starting and ending movement points are marked on the acceleration curves of other storage logging instruments, establishing a correspondence between acceleration feature points of different instruments. Finally, based on these correspondences, time synchronization correction operations are performed on the local timestamps of other storage logging instruments, achieving precise time alignment of multiple independently operating storage logging instruments while maintaining their independence. This solves the technical problem of low clock synchronization reliability among multiple storage logging instruments in related technologies, achieving the technical effect of improving the clock synchronization reliability among multiple storage logging instruments.
[0037] The entity performing the above steps may be a system with clock correction capability, such as a clock correction system, or a device with clock correction capability, or a controller or processor in the device or system, or a standalone controller or processor, or other processing devices or processing units with similar processing functions, but is not limited thereto.
[0038] In an optional embodiment, responding to a baseline setting operation performed by a user on the acceleration curve of a reference storage logging instrument to determine the starting and ending baselines from the acceleration curve of the reference storage logging instrument specifically includes: responding to a first time range adjustment operation by the user to adjust the time display range of the visualization interface to a second-level time display range; responding to a start point selection command triggered by the user within the second-level time display range to determine a first target time period from the time axis where the starting baseline needs to be set; setting the starting baseline on the acceleration curve of the reference storage logging instrument within the first target time period; and displaying a first vertical line marker with the same color as the acceleration curve of the reference storage logging instrument on the visualization interface. The first vertical line marker is a first type of identifier line perpendicular to the time axis of the visualization interface and is used to indicate the starting baseline on the time axis. The system displays the time position on the time axis; after the initial baseline is set, it responds to the user's second time range adjustment operation, adjusting the second-level time display range to the minute-level time display range; responds to the user's end point selection command triggered within the minute-level time display range, determining the second target time period from the time axis where the end baseline needs to be set; responds to the user's third time range adjustment operation, adjusting the minute-level time display range to the second-level time display range, setting the end baseline on the acceleration curve of the benchmark storage logging instrument within the second target time period, and displaying a second vertical line marker with the same color as the acceleration curve of the benchmark storage logging instrument on the visualization interface. The second vertical line marker is a second type of identifier line perpendicular to the time axis and is used to indicate the time position of the end baseline on the time axis. The end baseline and the initial baseline are set on the same acceleration curve.
[0039] In the above embodiment, taking a horizontal well logging operation in an onshore oilfield as an example: the operator is processing data from five logging instruments, which form a logging instrument string approximately 30 meters long, used to comprehensively evaluate a shale gas well with a total depth of 3500 meters and a horizontal section length of 1200 meters. The benchmark logging instrument is an Array Induction Tool (AIT), located at the bottom of the logging instrument string, and its acceleration curve is displayed in dark blue (RGB:0,51,153) on the visualization interface. The operator first performs a time range adjustment operation: by dragging the zoom slider on the right side of the interface, the currently displayed 30-minute time span (14:00:00 to 14:30:00) is adjusted to a second-level time display range. The second-level time display range is defined as follows: each centimeter on the horizontal axis represents 1 second, the main grid line interval is 1 second, the secondary grid line interval is 0.2 seconds, and the time label accuracy is displayed to the millisecond level (e.g., 14:15:23.450). After adjustment, the interface displays a 10-second time window from 14:15:20.000 to 14:15:30.000. Within this second-level time display range, the operator observed a significant characteristic change in the AIT acceleration curve at 14:15:23.850: a sudden shift from the slight vibration (0.95g ± 0.03g) during the wellhead preparation phase to the strong vibration (peak value 2.78g) during the rapid descent phase. This indicates that the logging instrument string has begun entering the wellbore. The operator triggers the starting point selection command by selecting the "Set Starting Baseline" function via the right-click menu. The clock calibration system responds to this command, automatically analyzing data from 0.5 seconds before and after 14:15:23.850 to determine the first target time period as 14:15:23.350 to 14:15:24.350. During this time period, the clock correction system performs the following operations: 1) Identify acceleration abrupt change points: the first derivative of acceleration at 14:15:23.850 is detected to reach 183g / s (exceeding the threshold of 50g / s); 2) Verify feature validity: calculate the signal-to-noise ratio (SNR) = 2.78 / 0.03 = 92.7 (greater than the threshold of 10); 3) Determine the baseline position: set the initial baseline at 14:15:23.850.
[0040] In the above embodiment, the clock calibration system draws a first vertical line marker at this location: a dark blue dashed line (line style: ---, line width: 2 pixels), extending from the bottom (y=0) to the top (y=5g) of the coordinate system, with a time label Start: 14:15:23.850 displayed at the top of the dashed line. The label background is semi-transparent white (80% transparency), and the font is Arial 10. The characteristics of the first type of marker line include: dashed line style, label located at the top, and inclusion of the Start prefix. After the initial baseline is set, the operator performs a second time range adjustment operation: using the keyboard shortcut Ctrl+- (minus key), the display range is expanded from 10 seconds to a minute-level time display range. The minute-level time display range is defined as: each centimeter on the horizontal axis represents 1 minute, the main grid line interval is 5 minutes, the secondary grid line interval is 1 minute, and the time label precision is displayed to the second level. The interface automatically adjusts to display a 60-minute window from 14:00:00 to 15:00:00. With the minute-level display, the operator scrolls the timeline to the right using the mouse wheel and the Ctrl key, observing that between 14:42:00 and 14:43:00, the AIT acceleration curve changes from continuous high-frequency vibration (indicating the instrument string is moving within the wellbore) to a low-amplitude stable state (indicating the target depth has been reached). The operator selects the area from 14:42:30 to 14:43:30, triggering the end-point selection command. The clock calibration system then designates this 1-minute range as the second target time period.
[0041] In the above embodiment, the operator performs a third time range adjustment operation: double-clicking the selected area, the clock calibration system automatically enlarges the area to a second-level time display range, displaying a 10-second window from 14:42:55.000 to 14:43:05.000. Within this range, the clock calibration system identifies a significant vibration attenuation characteristic at 14:43:01.620: 1) Calculate the moving average: the average for the first 2 seconds is 2.15g, and the average for the next 2 seconds is 1.02g; 2) Calculate the attenuation rate: (2.15-1.02) / 2.15=52.6% (exceeding the threshold of 40%); 3) Verify stability: the standard deviation for the next 2 seconds is 0.018g (less than the threshold of 0.05g). The clock calibration system sets an end baseline at 14:43:01.620 and draws a second vertical line marker: a dark blue dotted line (line type ~~, line width 2 pixels), vertically traversing the entire coordinate system. The characteristics of the second type of marker line include: a dotted-dash line style, a label at the bottom, and an "End" prefix. The label displays "End: 14:43:01.620," located 5 pixels below the time axis. The clock calibration system automatically calculates the key parameters between the two baselines: time interval: 14:43:01.620 - 14:15:23.850 = 1657.770 seconds; average descent rate: 3500 meters ÷ 1657.770 seconds = 2.11 meters / second; number of sampling points: 1657.770 seconds × 100Hz sampling rate = 165,777 data points. Through this multi-level time range adjustment and precise baseline setting, the clock calibration system establishes a reliable reference benchmark for the time synchronization calibration of the subsequent four storage logging instruments (including density logging, neutron logging, caliper logging, and magnetic positioning logging), ensuring accurate alignment of multi-source logging data in the time dimension.
[0042] In an optional embodiment, in response to a user's calibration operation on the acceleration curves of other stored logging instruments, a starting point corresponding to the starting baseline and an ending point corresponding to the ending baseline are calibrated on the acceleration curves of other stored logging instruments. Specifically, this includes: after the starting baseline is set, responding to the user's fourth time range adjustment operation, adjusting the time display range to a first target time period; within the first target time period, responding to a user's starting point selection command triggered on the acceleration curves of other stored logging instruments, calibrating a starting point on the acceleration curves of other stored logging instruments, wherein the starting point is a feature point with the same physical vibration characteristics as the starting baseline and needs to be aligned on the time axis; after the ending baseline is set, responding to the user's fifth time range adjustment operation, adjusting the time display range to a second target time period; within the second target time period, responding to a user's ending point selection command triggered on the acceleration curves of other stored logging instruments, calibrating an ending point on the acceleration curves of other stored logging instruments, wherein the ending point is a feature point with the same physical vibration characteristics as the ending baseline and needs to be aligned on the time axis.
[0043] In the above embodiment, continuing the aforementioned onshore shale gas well logging operation, the operator needs to perform moving point calibration on the Litho-Density Tool (LDT). The LDT is located in the middle of the logging instrument string, approximately 15 meters from the reference instrument AIT, and its acceleration curve is displayed in orange (RGB:255,140,0) on the interface. The operator performs the fourth time range adjustment operation: clicking the baseline focus button in the interface toolbar, the clock correction system automatically adjusts the display range to the first target time period (14:15:23.350 to 14:15:24.350). At this time, the interface adopts a hyperbolic display mode: the dark blue reference curve of AIT is displayed above, and the orange curve of LDT to be calibrated is displayed below. The two curves share the same time axis but have independent vertical axis scales. Within the first target time period, the operator observes the LDT acceleration curve and finds that its vibration characteristics have a significant time delay relative to AIT. This delay originates from the flexible connection and mechanical transmission characteristics of the instrument string. The operator activates the cross-correlation analysis tool of the clock calibration system. The clock calibration system performs the following calculations: 1) Extract feature window data: AIT window: 14:15:23.650 to 14:15:24.050 (400 milliseconds, 40 sampling points); LDT search range: 14:15:23.650 to 14:15:24.250 (600 milliseconds, 60 sampling points). 2) Calculate the normalized cross-correlation function R(τ), where R(τ) is the correlation coefficient, ranging from [-1, 1]; τ is the time offset in milliseconds, ranging from 0 to 200; AIT(t) is the acceleration value of the reference instrument at time t, in g; LDT(t+τ) is the acceleration value of the instrument to be calibrated at time t+τ, in g; Σ represents the summation of all sampling points within the time window. 3) Calculations show that: when τ=0ms, R=0.412; when τ=50ms, R=0.687; when τ=75ms, R=0.943 (peak); when τ=100ms, R=0.721. The clock correction system automatically marks the candidate starting point at 14:15:23.925 (14:15:23.850 + 0.075 seconds) on the LDT curve and displays the similarity index. Physical vibration characteristics are quantified and matched using the following three dimensions: Amplitude characteristics: acceleration suddenly increases from 0.92g to 2.71g (AIT is 0.95g to 2.78g, relative error 2.5%); Frequency characteristics: main frequency jumps from 2.3Hz to 18.7Hz (AIT is 2.1Hz to 19.2Hz); Waveform characteristics: rising edge duration is 85 milliseconds (AIT is 82 milliseconds).
[0044] In the above embodiment, after confirming feature matching, the operator holds down the Shift key and clicks at 14:15:23.925 to trigger the starting movement point selection command. The clock calibration system marks the starting movement point at this location, displaying an orange hollow circle (outer diameter 8 pixels, inner diameter 6 pixels) and adding a floating label LDTStart:14:15:23.925 (Δt=+75ms). The operator performs the fifth time range adjustment operation: using the keyboard shortcut Alt+E (the first letter of End), the clock calibration system switches the display range to the second target time period (14:42:55.000 to 14:43:05.000). Within the second target time period, the LDT curve exhibits vibration decay characteristics at 14:43:01.705. The clock correction system automatically performs multi-parameter feature recognition: 1) Calculates the short-time energy STE(n), where STE(n) is the energy value of the nth time window, in g²; x(m) is the acceleration value of the mth sampling point, in g; w(nm) is the weight value of the Hamming window function at position (nm); n is the index of the center position of the current window; and m is the index of the sampling point within the window. The calculation results are: the average STE before 14:43:01.505 is 4.62g²; the average STE after 14:43:01.705 is 1.04g²; and the energy attenuation ratio is (4.62-1.04) / 4.62=77.5%. 2) Calculate the Zero Crossing Rate (ZCR): Before decay, the ZCR is 37.2 Hz (indicating high-frequency vibration); after decay, the ZCR is 8.5 Hz (indicating low-frequency stability); the ZCR decrease rate is (37.2-8.5) / 37.2=77.2%. 3) Verify consistency with the AIT end baseline: The LDT interval is 14:43:01.705-14:15:23.925=1657.780 seconds; the AIT interval is 14:43:01.620-14:15:23.850=1657.770 seconds. The interval difference is 1657.780-1657.770=0.010 seconds; the relative error is 0.010 / 1657.770=0.0006%.
[0045] In the above embodiment, the operator holds down the Shift key and clicks at 14:43:01.705. The clock correction system calibrates the end point of movement, displaying an orange hollow triangle (vertex downwards, height 10 pixels) and the label LDTnd:14:43:01.705 (Δt=+85ms). Based on the two calibrated points, the clock correction system calculates the time correction parameters of LDT: the start time offset is 75 milliseconds; the end time offset is 85 milliseconds; the average time offset is (75+85) / 2=80 milliseconds; the clock drift rate is (85-75) milliseconds / 1657.780 seconds = 0.010 / 1657.780 = 6.03×10 -6 (Approximately 6.03 ppm). The clock correction system generates a linear time correction model for the LDT, where t_corrected is the corrected time value in seconds, t_local is the original time value recorded locally in the LDT in seconds, and 0.080 is the average time offset in seconds, 6.03 × 10⁻⁶. -6 The time drift rate is given by t_start, where t_start is the start time 14:15:23.925 in seconds. For the Compensated Neutron Tool (CNT), the operator repeats the above procedure: the starting point is 14:15:23.912 (62ms delay); the ending point is 14:43:01.688 (68ms delay); the drift rate is calculated as (68-62) milliseconds / 1657.776 seconds = 3.62 × 10^6 seconds. -6 By using this precise matching and movement point calibration method based on physical vibration characteristics, the clock correction system achieves time axis unification of data from various logging instruments in the instrument string, providing a reliable time synchronization basis for subsequent comprehensive interpretation of reservoir parameters.
[0046] In an optional embodiment, the method further includes: when it is detected that a user scrolls the mouse wheel upward in the acceleration curve display area of the visualization interface, adjusting the time display range of the visualization interface to a second-level time display range; when it is detected that a user scrolls the mouse wheel downward in the acceleration curve display area of the visualization interface, adjusting the time display range to a minute-level time display range; and when it is detected that a user scrolls the mouse wheel upward a preset number of times in the acceleration curve display area of the visualization interface, adjusting the time display range to a second-level time display range according to a preset scaling level.
[0047] In the above embodiment, when analyzing acceleration data from the Multi-finger Caliper Tool (MCT), the operator needs to frequently switch between different time scales to identify vibration characteristics. The MCT acceleration curve is displayed in green (RGB:34,139,34) in the third channel of the visualization interface. The acceleration curve display area is defined as a rectangular area occupying 85% of the screen width and 60% of the height in the center of the interface. This area is divided into 5 horizontal channels, each with a height of 120 pixels, used to display the acceleration curves of different instruments. The area contains three logical levels: a coordinate grid, a curve plotting layer, and an interactive sensing layer. When the operator moves the mouse pointer to the third channel (vertical coordinate range of 240 to 360 pixels) where the MCT curve is located, the clock correction system detects that the mouse has entered the acceleration curve display area. At this time, the mouse coordinates are (x=850, y=300), corresponding to the position 14:28:45.230 on the time axis. The operator scrolls the mouse wheel up one notch (the default WHEEL_DELTA value in Windows is 120). The clock calibration system captures the WM_MOUSEWHEEL message and extracts the scroll wheel increment as +120. The clock calibration system performs time range scaling calculations: 1) Obtain the current display range: 14:25:00.000 to 14:35:00.000 (10-minute span, 600 seconds). 2) Calculate the scaling center: the time corresponding to the mouse position is 14:28:45.230. 3) Determine the target display level: switch from minutes to seconds. 4) Calculate the new time range: the left boundary is 14:28:45.230 - 5 seconds = 14:28:40.230; the right boundary is 14:28:45.230 + 5 seconds = 14:28:50.230; the new span is 10 seconds.
[0048] In the above embodiment, the interface redrawing process includes: time axis re-annotation: the main scale interval changes from 1 minute to 1 second, displaying 14:28:41 to 14:28:50; grid line redrawing: the vertical grid lines change from 10 (1 per minute) to 10 (1 per second); data point resampling: the number of points increases from 600 (1 point / second) to 1000 (100 points / second); curve smoothness improvement: the data points are connected using a cubic spline interpolation algorithm. The characteristic parameters of the second-level time display range are: horizontal axis unit scale is 1 second / division; time label format is HH:MM:SS.mmm (hour:minute:second.millisecond); data sampling rate is 100Hz; minimum resolvable time interval is 10 milliseconds. When the operator needs to view vibration patterns over a larger time span, scrolling the mouse wheel down two notches at the same position will cause the clock calibration system to continuously receive two WHEEL_DELTA=-120 events. The first scroll expands the display range from 10 seconds to 1 minute (14:28:15.230 to 14:29:15.230), and the second scroll expands it again to 10 minutes (14:24:00.000 to 14:34:00.000). The characteristic parameters of the minute-level time display range are: horizontal axis unit scale is 1 minute / division; time label format is HH:MM (hour:minute); data sampling rate is 1Hz (average per second); minimum resolvable time interval is 1 second. For situations requiring quick positioning to a specific zoom level, the clock calibration system supports a preset number of continuous scrolls. The preset number is defined as 3 scrolls, corresponding to the fast zoom function.
[0049] In the above embodiment, when an operator scrolls upwards three times consecutively within 500 milliseconds (cumulative WHEEL_DELTA = +360), the clock correction system identifies it as a rapid zoom operation. The preset zoom levels are defined as five standard display ranges: millisecond level (100 milliseconds span, displaying 0.1 seconds); second level (10 seconds span); ten-second level (100 seconds span, displaying 1 minute and 40 seconds); minute level (10 minutes span); and hour level (1 hour span). The calculation process for rapid scaling is as follows: Detect continuous scrolling, i.e., record the first scroll time t1 = 14:30:12.450; verify the time window, i.e., t3 - t1 = 14:30:12.935 - 14:30:12.450 = 485 milliseconds (< 500 milliseconds); accumulate scrolling amount, i.e., 3 × 120 = 360 (exceeding the threshold of 300); determine the target level, i.e., jump from the current minute level (level 4) to the second level (level 2); execute the level jump, i.e., directly apply the 10-second span template. The clock correction system also implements boundary protection mechanisms: minimum scaling limit, i.e., the time span is not less than 50 milliseconds (to prevent excessive scaling); maximum scaling limit, i.e., the time span does not exceed 24 hours (to maintain data readability); scaling ratio limit, i.e., the single scaling ratio is between 0.1 and 10. In practice, when operators detected an abnormal vibration peak (instantaneous acceleration of 4.2g) at MCT 14:31:22.850, they quickly switched to the second-scale display by scrolling up three times. They clearly observed that the peak lasted only 0.23 seconds, indicating it was a transient response caused by the instrument colliding with the casing coupling, rather than a systemic malfunction. This flexible timescale switching mechanism allows operators to efficiently identify and analyze vibration characteristics at different timescales, providing a convenient interactive means for quality control and time synchronization correction of logging data.
[0050] In an optional embodiment, displaying acceleration curves of multiple stored logging instruments on a visualization interface specifically includes: in response to a display mode selection command issued by the user through the display menu of the visualization interface, displaying at least one of the following acceleration curves on the visualization interface: acceleration curve in the X-axis direction of the accelerometer; acceleration curve in the Y-axis direction of the accelerometer; acceleration curve in the Z-axis direction of the accelerometer; and a sum-of-squares curve of the X-axis acceleration, Y-axis acceleration, and Z-axis acceleration of the accelerometer, wherein the sum-of-squares curve is obtained by calculating the sum of the squares of the X-acceleration value, Y-acceleration value, and Z-acceleration value at each time point, and the sum-of-squares curve is used to provide a comprehensive display of vibration characteristics.
[0051] In the above embodiment, the operator needs to analyze the vibration characteristics of the Natural Gamma Ray Tool (NGR) under complex downhole motion conditions. The NGR has a built-in triaxial MEMS accelerometer (Micro-Electro-Mechanical Systems accelerometer) with a sampling frequency of 100Hz and a measurement range of ±16g. The display menu is located in the upper right corner of the visualization interface and is presented as a drop-down list, containing four options: axial display mode, radial display mode, comprehensive display mode, and custom display mode. The operator clicks the display menu, selects the custom display mode, and a configuration dialog box pops up. The coordinate system definition of the accelerometer follows the instrument coordinate system standard: the X-axis is perpendicular to the instrument axis and points towards the instrument marking surface (usually towards the higher side); the Y-axis is perpendicular to the instrument axis and perpendicular to the X-axis, determined by the right-hand rule; the Z-axis: along the instrument axis, downward is positive. The operator selects the following display options in the configuration dialog box: NGR-X-axis acceleration (display color: red RGB255,0,0); NGR-Y-axis acceleration (display color: green RGB0,255,0); NGR-Z-axis acceleration (display color: blue RGB0,0,255); NGR-sum of squares curve (display color: purple RGB128,0,128). The clock correction system loads the raw NGR data from 14:35:20.000 to 14:35:30.000, containing 1000 data points for each axis. Taking 14:35:25.750 as an example, the raw values for the three axes are: X-axis acceleration ax = -1.23g; Y-axis acceleration ay = 0.87g; Z-axis acceleration az = 9.65g (including the gravitational component).
[0052] In the above embodiment, the clock correction system calculates the sum of squares curve display value at 14:35:25.750: sum of squares S=ax²+ay²+az²=(-1.23)²+(0.87)²+(9.65)²=95.393g², and the sum of squares curve display value √S=9.767g. For a complete 10-second data segment, the clock correction system performs batch calculations for i=0 to 999: S[i]=X[i]²+Y[i]²+Z[i]² Magnitude[i]=√S[i], where i is the sampling point index, ranging from 0 to 999, X[i] is the X-axis acceleration value of the i-th sampling point (in g), Y[i] is the Y-axis acceleration value of the i-th sampling point (in g), Z[i] is the Z-axis acceleration value of the i-th sampling point (in g), S[i] is the sum of squares of the i-th sampling point (in g²), and Magnitude[i] is the combined acceleration amplitude of the i-th sampling point (in g). The interface uses a four-channel parallel display, with each channel 100 pixels high: Channel 1 (0-100 pixels) is the X-axis acceleration curve, ranging from -2g to +2g; Channel 2 (100-200 pixels) is the Y-axis acceleration curve, ranging from -2g to +2g; Channel 3 (200-300 pixels) is the Z-axis acceleration curve, ranging from 8g to 12g; and Channel 4 (300-400 pixels) is the sum of squares curve, ranging from 9g to 11g. At 14:35:26.420, the clock calibration system detected a significant vibration event: a spike appeared on the X-axis, abruptly changing from -0.5g to -3.8g; the Y-axis synchronization response changed from 0.3g to 2.1g; the Z-axis remained relatively stable, fluctuating slightly around 9.7g; and the sum of squares curve showed a jump in overall amplitude from 9.75g to 10.82g.
[0053] In the above embodiment, by analyzing the phase relationship of the three components, the operator determined that this was a lateral vibration generated by the instrument at the point where the sleeve diameter changes. The specific analysis process of the clock correction system is as follows: 1) Calculate the vibration angle in the XY plane: θ = arctan(ay / ax) = arctan(2.1 / -3.8) = -28.9°; the vibration is mainly along the third quadrant of the instrument coordinate system. 2) Calculate the lateral vibration intensity: lateral acceleration = √(ax² + ay²) = √(14.44 + 4.41) = 4.34g; Z-axis change = 0.15g; lateral to axial vibration ratio = 4.34 / 0.15 = 28.9. 3) Verify the physical rationality of the vibration: duration: 80 milliseconds (8 sampling points); vibration frequency: approximately 12.5Hz (obtained through FFT analysis); decay characteristics: exponential decay, time constant τ = 35 milliseconds. The advantage of the sum of squares curve is that it can intuitively reflect the overall vibration intensity and is not affected by instrument rotation. As the NGR rotates downhole, the X and Y components change periodically, but the sum of squares remains stable, accurately reflecting the vibration energy. The operator switches to the integrated display mode via the display menu. The clock calibration system automatically configures to display only the sum of squares and Z-axis curves, simplifying the interface for quick identification of key vibration characteristics. In integrated display mode, another vibration event at 14:35:28.000 (the instrument passing through the perforation section) appears on the sum of squares curve as a high-frequency oscillation lasting 200 milliseconds (frequency 25Hz, amplitude fluctuating between 10.2g and 11.5g), while the Z-axis curve shows axial acceleration varying between 9.2g and 10.8g, indicating a composite vibration containing both axial and radial components. This multi-dimensional acceleration display allows the operator to comprehensively analyze the instrument's motion, identify different types of vibration characteristics, and provide rich feature information for subsequent time synchronization calibration.
[0054] In an optional embodiment, a time synchronization correction operation is performed on the local timestamps of other stored logging instruments based on the starting baseline, ending baseline, starting move point, and ending move point to align the logging data of multiple stored logging instruments in the time dimension. Specifically, this includes: determining a first time offset of the starting move point relative to the starting baseline based on the time position of the starting baseline and the time position of the starting move point; determining a second time offset of the ending move point relative to the ending baseline based on the time position of the ending baseline and the time position of the ending move point; determining the clock drift rate of other stored logging instruments based on the first time offset, the second time offset, and the time interval between the starting baseline and the ending baseline; generating time correction parameters based on the first time offset, the second time offset, and the clock drift rate; and performing linear interpolation correction on the local timestamps of other stored logging instruments using the time correction parameters to align the logging data of other stored logging instruments with the logging data of the reference stored logging instrument in the time dimension.
[0055] In the above embodiment, after the operator completes the movement point calibration of the Dipole Shear Sonic Imager (DSI), the clock calibration system needs to perform time synchronization calibration calculations. The DSI, as the instrument to be calibrated, has a local clock driven by a 32.768kHz crystal oscillator, which has an inherent frequency deviation. The clock calibration system first extracts the calibrated time position data: the initial baseline time position is 1111-03-15 14:15:23.850 (AIT reference time); the initial movement point time position is 1111-03-15 14:15:23.938 (DSI local time); the ending baseline time position is 1111-03-15 14:43:01.620 (AIT reference time); and the ending movement point time position is 1111-03-15 14:43:01.724 (DSI local time). Calculate the first time offset Δt1 = starting movement point time - starting baseline time = 14:15:23.938 - 14:15:23.850 = 0.088 seconds = 88 milliseconds. Calculate the second time offset Δt2 = ending movement point time - ending baseline time = 14:43:01.724 - 14:43:01.620 = 0.104 seconds = 104 milliseconds. Calculate the time interval between baselines T_base = ending baseline time - starting baseline time = 14:43:01.620 - 14:15:23.850 = 1657.770 seconds. Calculate the clock drift rate D of the DSI: D = (Δt2 - Δt1) / T_base = (0.104 - 0.088) / 1657.770 = 9.653 × 10⁻¹⁰ -6 This drift rate indicates that the DSI clock is 9.653 microseconds fast per second, which is equivalent to a frequency deviation of 9.653 ppm (parts per million).
[0056] In the above embodiment, the time correction parameter set P is generated as follows: offset reference value b = (Δt1 + Δt2) / 2 = (0.088 + 0.104) / 2 = 0.096 seconds; drift coefficient k = D = 9.653 × 10 -6 The reference time point t_ref = starting baseline time = 14:15:23.850. A linear interpolation correction model is constructed: t_corrected = t_local - bk × (t_local - t_ref), where t_corrected is the corrected timestamp (aligned to the AIT baseline), t_local is the original timestamp of the DSI local record, b is the offset baseline value (0.096 seconds), and k is the drift coefficient (9.653 × 10⁻¹⁰). -6), where t_ref is the reference time point. The clock correction system performs batch timestamp correction on the DSI logging data. Taking the sonic transit data recorded by DSI at 14:30:45.678 (local time) as an example: 1) Calculate the relative time t_relative = 14:30:45.678 - 14:15:23.850 = 921.828 seconds; 2) Calculate the drift correction amount drift_correction = k × t_relative = 9.653 × 10 -6 ×921.828=0.00890 seconds; 3) Calculate the total correction: total_correction=b+drift_correction=0.096+0.00890=0.10490 seconds; 4) Obtain the corrected time t_corrected=14:30:45.678-0.10490=14:30:45.573. To verify the correction effect, the clock correction system selects three checkpoints: Checkpoint 1 (near the start, t=14:16:30.000 local time): distance from the reference point 66.150 seconds, drift correction 9.653×10 -6 ×66.150 = 0.000638 seconds, total correction 0.096 + 0.000638 = 0.096638 seconds, corrected time 14:16:29.903; Checkpoint 2 (intermediate position, t = 14:29:15.000 local time): distance from reference point 831.150 seconds, drift correction 9.653 × 10 -6 ×831.150 = 0.008025 seconds, total correction 0.096 + 0.008025 = 0.104025 seconds, corrected time 14:29:14.896; Checkpoint 3 (near the end, t = 14:42:00.000 local time): Distance from reference point: 1596.150 seconds, drift correction: 9.653 × 10 -6 ×1596.150=0.015409 seconds, Total correction: 0.096+0.015409=0.111409 seconds, Corrected: 14:41:59.889.
[0057] In the above embodiment, the clock correction system performs timestamp correction on all 87,420 data points of DSI. After correction, alignment verification is performed, i.e., well logging data from DSI and AIT at the same depth (2150-2160 meters) are selected, and the cross-correlation coefficient between the two is calculated. Before correction, the correlation coefficient was 0.762 (with a significant phase difference), and after correction, the correlation coefficient increased to 0.948, indicating that the data achieved effective alignment in the time dimension. The local timestamp is defined as the time information independently recorded by each stored well logging instrument, in the format YYYY-MM-DDHH:MM:SS.mmm, generated by the instrument's internal real-time clock (RTC). There are systematic deviations in the local timestamps of different instruments. For example: DSI: based on the DS3231 clock chip, nominal accuracy ±2ppm; NGR: based on the PCF8563 clock chip, nominal accuracy ±5ppm; MCT: based on internal crystal oscillator frequency division, nominal accuracy ±20ppm. Through the above linear interpolation correction method, the clock correction system maps the local timestamps of each instrument onto the reference time axis, eliminating the influence of clock offset and drift, and providing time consistency guarantee for subsequent multi-instrument data fusion analysis.
[0058] In an optional embodiment, after reading the accelerometer file path in the target configuration file, the method further includes: detecting whether a time correction file exists; if a time correction file is detected, backing up the time correction file according to a preset naming format to obtain a time correction backup file; after performing time synchronization correction on the local timestamps of other stored logging instruments based on the starting baseline, ending baseline, starting movement point, and ending movement point, the method further includes: if it is detected that the user has performed a time synchronization correction operation, responding to the update command issued by the user through the file menu of the visual interface, updating the historical correction parameters in the time correction file to the time correction parameters using the time correction parameters; if it is detected that the user has not performed a time synchronization correction operation, responding to the exit command issued by the user through the file menu of the visual interface, exiting the time synchronization correction operation and not updating the time correction file.
[0059] In the above embodiment, after the clock calibration system loads the target configuration file WELL_1111031501_config.xml, it extracts the accelerometer file path D:\LogData\Project1111\Well_01\Acceleration\. The clock calibration system then searches for the time calibration file in this directory. The time calibration file, as an XML format file storing instrument time synchronization parameters, has a fixed filename of TimeCorrection.xml and contains key information such as instrument identification, calibration parameters, and calibration timestamps. The clock calibration system finds a TimeCorrection.xml file already existing in the directory, with a file size of 3.2KB and a last modification time of 1111-03-14 16:45:32. Upon detecting the existence of this file, the clock calibration system immediately performs a backup operation, following the default naming format of the original filename _YYYYMMDD_HHMMSS.bak, where the original filename is TimeCorrection, YYYYMMDD represents the year, month, and day of the backup date, HHMMSS represents the hour, minute, and second of the backup time, and .bak is the backup file extension. The clock correction system obtains the current system time 2024-03-15 14:55:18, generates a backup file named TimeCorrection_20240315_145518.bak according to the preset format, and calls the file copy function to copy the original TimeCorrection.xml to TimeCorrection_11110315_145518.bak and save it in the same directory. The backup operation takes 23 milliseconds, and the generated backup file is completely consistent with the original file content, ensuring that historical correction parameters are preserved.
[0060] In the above embodiment, after the operator completes the time synchronization calibration of the DSI instrument, the clock calibration system sets the USER_CORRECTED flag, indicating that the user has performed the time synchronization calibration operation, to TRUE. At this time, the File menu is located at the top of the interface menu bar, containing five options: New, Open, Save, Update Calibration Parameters, and Exit. The operator clicks the File menu and selects the Update Calibration Parameters option. After receiving the update command, the clock calibration system first reads the contents of the original TimeCorrection.xml file. The original file contains historical parameters from the last calibration, showing the DSI instrument offset as 0.085 seconds and the DSI instrument drift rate as 8.234 × 10⁻⁶ seconds. -6The calibration reference time is 10:25:15.320 on March 14, 2011, and the calibration execution time is 16:45:32.108 on March 14, 2011. The clock calibration system uses the time calibration parameters calculated this time to replace the historical parameters. The DSI instrument offset is updated to 0.096 seconds, and the DSI instrument drift rate is updated to 9.653 × 10⁻⁶ seconds. -6 The calibration reference time was updated to 1111-03-15 14:15:23.850, and the calibration execution time was updated to 1111-03-15 14:55:45.237. During the update process, the clock calibration system created a temporary file TimeCorrection.tmp, wrote the updated XML structure into the temporary file, verified the integrity of the temporary file by checking the XML format, deleted the original TimeCorrection.xml, renamed TimeCorrection.tmp to TimeCorrection.xml, and finally recorded the update log to the system log file. The updated TimeCorrection.xml file structure includes an XML version declaration and encoding format in the header, calibration parameter nodes containing the offset and drift rate of each instrument, and metadata nodes recording the calibration time, operator ID, software version, and a 32-bit hexadecimal string calculated using the MD5 algorithm as a checksum.
[0061] In the above embodiment, in another scenario, after the operator opens the interface and only views the acceleration curve without performing any moving point calibration operations, the clock correction system detects that the USER_CORRECTED flag is FALSE, indicating that the user has not performed a time synchronization correction operation. When the operator prepares to close the program and clicks the exit option in the file menu, the clock correction system pops up a confirmation dialog box asking if the operator wants to exit without performing a time correction operation, with two buttons: Yes and No. The operator clicks the Yes button, and the system receives the exit command. When the clock correction system executes the exit process, it checks that the USER_CORRECTED flag is FALSE, skips the time correction file update step, keeps the TimeCorrection.xml file content unchanged, releases approximately 256MB of data cache in memory, closes all open file handles, records the exit time to the operation log, and then terminates the program process. Historical correction parameters are a set of parameters generated and saved from previous correction operations, including the last time offset array (one value per instrument), the last calculated clock drift rate array (one value per instrument), the last used reference time point, and the effective time range of the last correction. The clock calibration system also implements a file integrity protection mechanism. When it detects that the TimeCorrection.xml file is being used or corrupted by an external program, the system automatically switches to backup and recovery mode, scans all .bak backup files in the directory, selects the latest backup file by timestamp, verifies the integrity of the XML structure of the backup file, restores TimeCorrection.xml using the backup file, and records the recovery operation details in the log. Through this file management mechanism, the clock calibration system ensures both persistent storage of calibration parameters and provides data protection and version rollback capabilities, ensuring the continuity and traceability of time synchronization calibration work.
[0062] Through the embodiments of this application, when a start command is received, the accelerometer file path in the target configuration file is read, enabling the unified acquisition of acceleration data and local timestamps from multiple storage logging instruments. Although these local timestamps are independently generated by the internal clocks of each storage logging instrument, by simultaneously displaying the acceleration curves of multiple storage logging instruments on a visualization interface, users can intuitively observe the similarities and differences in acceleration changes of each instrument. A benchmark storage logging instrument is determined through a benchmark selection operation, and a starting baseline and an ending baseline are set on the acceleration curve of the benchmark storage logging instrument. Corresponding starting and ending points are also marked on the acceleration curves of other storage logging instruments, establishing a correspondence between acceleration feature points of different instruments. Finally, based on these correspondences, a time synchronization correction operation is performed on the local timestamps of other storage logging instruments, enabling multiple independently operating storage logging instruments to achieve precise alignment in the time dimension while maintaining their independence.
[0063] The clock correction system in the embodiments of this invention is described below from the perspective of hardware processing. (See attached document.) Figure 2 , Figure 2 This is a schematic diagram of the physical device structure of a clock correction system in an embodiment of this application.
[0064] It should be noted that, Figure 2 The structure of the clock correction system shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of the present invention.
[0065] like Figure 2 As shown, the clock correction system includes a Central Processing Unit (CPU) 201, which can perform various appropriate actions and processes according to a program stored in Read-Only Memory (ROM) 202 or a program loaded from storage portion 208 into Random Access Memory (RAM) 203, such as performing the methods described in the above embodiments. The RAM 203 also stores...
[0066] It contains various programs and data required for system operation. CPU 201, ROM 202, and RAM 203 are interconnected via bus 204. Input / output (I / O) interface 205 is also connected to bus 204.
[0067] The following components are connected to I / O interface 205: input section 206 including audio input devices, push-button switches, etc.; output section 207 including a liquid crystal display (LCD) and audio output devices, indicator lights, etc.; storage section 208 including a hard disk, etc.; and communication section 209 including a network interface card such as a LAN (Local Area Network) card, modem, etc. Communication section 209 performs communication processing via a network such as the Internet. Drive 210 is also connected to I / O interface 205 as needed. Removable media 211, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., are installed on drive 210 as needed so that computer programs read from them can be installed into storage section 208 as needed.
[0068] In particular, according to embodiments of the present invention, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of the present invention include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing computer programs for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication section 209, and / or installed from removable medium 211. When the computer program is executed by central processing unit (CPU) 201, it performs the various functions defined in the present invention.
[0069] It should be noted that 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, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM), flash memory, optical fiber, portable compact disc read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof. In this invention, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
[0070] 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 the present invention. Each block in a flowchart or block diagram may represent a module, program segment, or portion of code, which contains 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 shown in the drawings.
[0071] Specifically, the clock correction system of this embodiment includes a processor and a memory. The memory stores a computer program. When the computer program is executed by the processor, it implements the clock correction method for the storage logging instrument provided in the above embodiment.
[0072] In another aspect, the present invention also provides a computer-readable storage medium, which may be included in the clock correction system described in the above embodiments; or it may exist independently and not assembled into the clock correction system. The storage medium carries one or more computer programs that, when executed by a processor of the clock correction system, cause the clock correction system to implement the clock correction method for the storage logging instrument provided in the above embodiments.
[0073] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.
[0074] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. This program can be stored in a computer-readable storage medium, and when executed, it can include the processes described in the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as ROM or random access memory (RAM), magnetic disks, or optical disks.
Claims
1. A clock calibration method for storing logging instruments, characterized in that, include: When a start command is received, the accelerometer file path in the target configuration file is read to obtain logging data collected by multiple storage logging instruments. The logging data includes acceleration data recorded by the accelerometers built into each storage logging instrument and a local timestamp corresponding to the logging data. The local timestamp is a time stamp generated by the internal clock of each storage logging instrument. The acceleration curves of the plurality of stored logging instruments are displayed on the visualization interface, and a benchmark selection operation is performed by the user on the visualization interface on the acceleration curves of the plurality of stored logging instruments to determine the benchmark stored logging instrument from the plurality of stored logging instruments. In response to a baseline setting operation performed by the user on the acceleration curve of the reference storage logging instrument, a starting baseline and an ending baseline are determined from the acceleration curve of the reference storage logging instrument. In response to the user's movement point calibration operation performed on the acceleration curve of other storage logging instruments, a starting movement point corresponding to the starting baseline and an ending movement point corresponding to the ending baseline are calibrated on the acceleration curve of the other storage logging instruments. The other storage logging instruments are storage logging instruments other than the reference storage logging instrument among the plurality of storage logging instruments. Based on the starting baseline, the ending baseline, the starting movement point, and the ending movement point, perform time synchronization correction operations on the local timestamps of the other stored logging instruments to align the logging data of the multiple stored logging instruments in the time dimension. Specifically, the step of performing time synchronization correction on the local timestamps of the other stored logging instruments based on the starting baseline, the ending baseline, the starting movement point, and the ending movement point, so as to align the logging data of the multiple stored logging instruments in the time dimension, includes: The first time offset of the starting movement point relative to the starting baseline is determined based on the time position of the starting baseline and the time position of the starting movement point; A second time offset of the end movement point relative to the end baseline is determined based on the time position of the end baseline and the time position of the end movement point; The clock drift rate of the other storage logging instruments is determined based on the first time offset, the second time offset, and the time interval between the starting baseline and the ending baseline; Time correction parameters are generated based on the first time offset, the second time offset, and the clock drift rate; The local timestamps of the other stored logging instruments are linearly interpolated and corrected using the time correction parameters to align the logging data of the other stored logging instruments with the logging data of the reference stored logging instrument in the time dimension.
2. The method according to claim 1, characterized in that, The response to the baseline setting operation performed by the user on the acceleration curve of the reference storage logging instrument, to determine the starting and ending baselines from the acceleration curve of the reference storage logging instrument, specifically includes: In response to the user's first time range adjustment operation, the time display range of the visualization interface is adjusted to a second-level time display range; In response to the user's starting point selection command triggered within the second-level time display range, a first target time period for setting the starting baseline is determined from the time axis of the visualization interface. The starting baseline is set on the acceleration curve of the benchmark storage logging instrument within the first target time period, and a first vertical line marker with the same color as the acceleration curve of the benchmark storage logging instrument is displayed on the visualization interface. The first vertical line marker is a first type of identifier line perpendicular to the time axis of the visualization interface and is used to indicate the time position of the starting baseline on the time axis. After the initial baseline is set, in response to the user's second time range adjustment operation, the second-level time display range is adjusted to a minute-level time display range; In response to the user's end point selection instruction triggered within the minute-level time display range, a second target time period from the time axis for which the end baseline needs to be set is determined; In response to the user's third time range adjustment operation, the minute-level time display range is adjusted to the second-level time display range. The end baseline is set on the acceleration curve of the reference storage logging instrument within the second target time period, and a second vertical line mark with the same color as the acceleration curve of the reference storage logging instrument is displayed on the visualization interface. The second vertical line mark is a second type of identifier line perpendicular to the time axis and is used to indicate the time position of the end baseline on the time axis. The end baseline and the starting baseline are set on the same acceleration curve.
3. The method according to claim 2, characterized in that, The response to the user's movement point calibration operation performed on the acceleration curves of other stored logging instruments, to calibrate the starting movement point corresponding to the starting baseline and the ending movement point corresponding to the ending baseline on the acceleration curves of the other stored logging instruments, specifically includes: After the initial baseline is set, in response to the user's fourth time range adjustment operation, the time display range is adjusted to the first target time period. During the first target time period, in response to the user's command to select a starting point on the acceleration curve of the other stored logging instrument, the starting point is marked on the acceleration curve of the other stored logging instrument. The starting point is a feature point that has the same physical vibration characteristics as the starting baseline and needs to be aligned on the time axis. After the baseline setting is completed, in response to the user's fifth time range adjustment operation, the time display range is adjusted to the second target time period. During the second target time period, in response to the user's command to select an end movement point on the acceleration curve of the other stored logging instrument, the end movement point is marked on the acceleration curve of the other stored logging instrument. The end movement point is a feature point that has the same physical vibration characteristics as the end baseline and needs to be aligned on the time axis.
4. The method according to claim 1, characterized in that, The method further includes: When it is detected that the user scrolls the mouse wheel upward in the acceleration curve display area of the visualization interface, the time display range of the visualization interface is adjusted to a second-level time display range; When the user is detected scrolling the mouse wheel down in the acceleration curve display area of the visualization interface, the time display range is adjusted to a minute-level time display range. When the system detects that the user has scrolled the mouse wheel upwards a preset number of times in the acceleration curve display area of the visualization interface, the time display range is adjusted to the second-level time display range according to a preset scaling level.
5. The method according to claim 1, characterized in that, The display of the acceleration curves of the multiple stored logging instruments on the visualization interface specifically includes: In response to a display mode selection command issued by the user through the display menu of the visualization interface, at least one of the following acceleration curves is displayed on the visualization interface: Acceleration curve along the X-axis of the accelerometer; Acceleration curve along the Y-axis of the accelerometer; Acceleration curve along the Z-axis of the accelerometer; The sum of squares curves of the X-axis, Y-axis, and Z-axis accelerations of the accelerometer are obtained by calculating the sum of the squares of the X-axis acceleration value, Y-axis acceleration value, and Z-axis acceleration value at each time point. The sum of squares curves are used to provide a comprehensive display of vibration characteristics.
6. The method according to claim 1, characterized in that, After reading the accelerometer file path in the target configuration file, the method further includes: Check for the existence of a time correction file; If the time correction file is detected, the time correction file is backed up according to a preset naming format to obtain a time correction backup file; After performing time synchronization correction on the local timestamps of the other stored logging instruments based on the starting baseline, the ending baseline, the starting movement point, and the ending movement point, the method further includes: If it is detected that the user has performed the time synchronization correction operation, in response to the update command issued by the user through the file menu of the visual interface, the historical correction parameters in the time correction file are updated to the time correction parameters using the time correction parameters; If it is detected that the user has not performed the time synchronization correction operation, the system responds to the exit command issued by the user through the file menu of the visual interface, exits the time synchronization correction operation, and does not update the time correction file.
7. A clock correction system, characterized in that, The clock correction system includes: one or more processors and a memory; the memory is coupled to the one or more processors, the memory is used to store computer program code, the computer program code including computer instructions, and the one or more processors call the computer instructions to cause the clock correction system to perform the method as described in any one of claims 1-6.
8. A computer-readable storage medium comprising instructions, characterized in that, When the instruction is executed on the clock correction system, it causes the clock correction system to perform the method as described in any one of claims 1-6.
9. A computer program product, characterized in that, When the computer program product is run on a clock correction system, it causes the clock correction system to perform the method as described in any one of claims 1-6.
Citation Information
Patent Citations
Time corrections for drilling data
CN107835962A
Timestamp correction device, data reproduction device, and data storage unit
JP2020091743A