Synchronization of tool acceleration data with respect to time and drilling depth data with respect to time.

CN116096983BActive Publication Date: 2026-08-14SCHLUMBERGER TECHNOLOGY BV
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-08-20
Publication Date
2026-08-14

AI Technical Summary

Technical Problem

然而,为了创建最终测井曲线,必须执行地面时钟与井下时钟之间的时间同步,使用已知技术,这会非常麻烦、耗时且昂贵

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116096983B_ABST
    Figure CN116096983B_ABST
Patent Text Reader

Abstract

A process and system for synchronizing time-varying drill depth data with time-varying downhole tool acceleration data. In some embodiments, the process may include: determining one or more slip conditions of the drill pipe; determining one or more slip conditions of the downhole tool; interpolating slip condition indicators onto a common time grid; determining one or more shifts, for which the allowable minimum overlap time period between the acceleration data and the drill depth data is not less than the allowable minimum overlap time period; determining a correlation coefficient between the interpolated slip condition indicators for each of the one or more shifts; determining a maximum correlation coefficient and a time shift associated with the maximum correlation; and synchronizing the acceleration data with the drill depth data.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Cross-references to related applications

[0002] This application claims priority to U.S. Provisional Patent Application No. 63 / 068,414, filed August 21, 2020, which is incorporated herein by reference. Technical Field

[0003] This disclosure generally relates to processes and systems for providing time synchronization for downhole tools. Background Technology

[0004] Logging while drilling (LWD) technology can collect data in real time or in recording mode during drilling operations. In traditional through-bit logging, synchronizing time-varying tool acceleration with time-varying driller depth is difficult and time-consuming. For example, synchronizing the surface clock with the downhole clock allows time-depth data (from the surface system) and downhole time-measurement data (from the tool) to be merged into a depth measurement data file.

[0005] Drilling depth is based on measurements of the length of the drill pipe entering the borehole and is typically referenced to devices used to measure the height of the crisscross drill pipe or top drive relative to a fixed point. These instantaneous depth measurements are stored over time for later merging with LWD downhole memory data. The final logging profile can be constructed from this depth merging. However, creating the final logging profile requires time synchronization between the surface clock and the downhole clock, which, using known techniques, is extremely cumbersome, time-consuming, and expensive.

[0006] Therefore, there is a need for a process and system that provides time synchronization between tool acceleration that varies over time and drilling depth that varies over time, in order to provide more efficient and accurate synchronization. Summary of the Invention

[0007] A process and system are provided for synchronizing time-varying rig depth data with time-varying downhole tool acceleration data. In some embodiments, a process for synchronizing time-varying rig depth data with time-varying downhole tool acceleration data may include determining one or more in-slips conditions of the drill pipe by generating one or more time-varying rig depth status indicators based on the acquired rig depth data, the one or more rig depth status indicators indicating the one or more in-slips conditions of the drill pipe. The process may further include determining one or more in-slips conditions of the downhole tool by generating one or more time-varying acceleration status indicators based on downhole tool acceleration data acquired from the downhole tool, the one or more acceleration status indicators indicating the one or more in-slips conditions of the downhole tool. The process may further include establishing a common time grid for the acceleration data and the rig depth data. The process may further include interpolating the in-slips status indicators into the common time grid. The process may further include selecting a minimum permissible overlap time period for the acceleration data and the rig depth data. The process may further include determining one or more shifts, for which the allowable minimum overlap time period between the acceleration data and the drilling depth data is not less than the allowable minimum overlap time period. The process may further include determining a correlation coefficient between the interpolated slip status indicators for each of the one or more shifts. The process may further include determining a maximum correlation coefficient and a time shift associated with the maximum correlation. The process may further include synchronizing the acceleration data with the drilling depth data.

[0008] In some implementations, a system for synchronizing time-varying drill depth data with time-varying downhole tool acceleration data may include a synchronization controller and instructions. When executed by the synchronization controller, the instructions may cause the controller to determine one or more slip conditions of the drill pipe by generating one or more time-varying drill depth status indicators based on the acquired drill depth data, the one or more drill depth status indicators indicating the one or more slip conditions of the drill pipe. When executed by the synchronization controller, the instructions may also cause the controller to determine one or more slip conditions of the downhole tool by generating one or more time-varying acceleration status indicators based on downhole tool acceleration data acquired from the downhole tool, the one or more acceleration status indicators indicating the one or more slip conditions of the downhole tool. When executed by the synchronization controller, the instructions may also cause the controller to establish a common time grid for the acceleration data and the drill depth data. When executed by the synchronization controller, the instructions may also cause the controller to interpolate the slip condition indicators into the common time grid. When executed by the synchronization controller, the instruction can also cause the synchronization controller to select a minimum permissible overlap time period for the acceleration data and the drilling depth data. When executed by the synchronization controller, the instruction can also cause the synchronization controller to determine one or more shifts, for which the minimum permissible overlap time period between the acceleration data and the drilling depth data is not less than the minimum permissible overlap time period. When executed by the synchronization controller, the instruction can also cause the synchronization controller to determine a correlation coefficient between the interpolated slip status indicators for each of the one or more shifts. When executed by the synchronization controller, the instruction can also cause the synchronization controller to determine a maximum correlation coefficient and a time shift associated with the maximum correlation. When executed by the synchronization controller, the instruction can also cause the synchronization controller to synchronize the acceleration data with the drilling depth data.

[0009] In some embodiments, a process for synchronizing time-varying drill depth data with time-varying downhole tool acceleration data may include: drilling a borehole in an underground formation using a drill string that may include drill pipe and downhole tools; acquiring time-varying drill depth data while drilling the borehole or retrieving the drill string from the borehole after drilling; timestamping the acquired drill depth data; acquiring acceleration data applied to the downhole tools using one or more sensors; and timestamping the acquired acceleration data. The process may further include determining one or more slip conditions of the drill pipe by generating one or more time-varying drill depth status indicators based on the drill depth data, the one or more drill depth status indicators indicating the one or more slip conditions of the drill pipe; and determining one or more slip conditions of the downhole tools by generating one or more time-varying acceleration status indicators based on the acceleration data, the one or more acceleration status indicators indicating the one or more slip conditions of the downhole tools. The process may further include: establishing a common time grid for the acceleration data and the drilling depth data; interpolating the slip status indicator into the common time grid; and selecting a minimum permissible overlap time period for the acceleration data and the drilling depth data. The process may further include: determining one or more shifts, for which the minimum permissible overlap time period between the acceleration data and the drilling depth data is not less than the minimum permissible overlap time period; determining a correlation coefficient between the interpolated slip status indicator for each of the one or more shifts; determining a maximum correlation coefficient and a time shift associated with the maximum correlation; and synchronizing the acceleration data with the drilling depth data. Attached Figure Description

[0010] In the following detailed description, the present disclosure is further described with reference to the accompanying drawings, which are non-limiting examples, wherein the same reference numerals denote similar parts throughout the several views of the drawings, and wherein:

[0011] Figure 1 An illustrative process is described, according to one or more of the described embodiments, for synchronizing time-varying drilling depth data with time-varying downhole tool acceleration data.

[0012] Figure 2 A schematic diagram of an illustrative drilling system according to one or more of the described embodiments is depicted.

[0013] Figure 3A schematic diagram of an illustrative computational system, according to one or more described embodiments, is depicted for performing time synchronization between time-varying drilling depth data and time-varying downhole tool acceleration data.

[0014] Figure 4 The description depicts one or more implementation schemes. Figure 3 An illustrative computing device within a computing system, comprising a synchronization controller and a non-transitory computer-readable medium, wherein the non-transitory computer-readable medium includes computer-executable instructions stored thereon. Detailed Implementation

[0015] The details shown herein are merely illustrative and for the purpose of explaining examples of subject matter disclosure only, and are presented in a manner that is most useful and readily understood in terms of the principles and concepts of the subject matter disclosure. The description, taken in conjunction with the accompanying drawings, makes it clear to those skilled in the art how several forms of subject matter disclosure can be embodied in practice.

[0016] One or more specific embodiments of this disclosure will be described below. These described embodiments are examples of the currently disclosed technology. Additionally, to provide a brief description of these embodiments, the characteristics of actual implementations may not be described in the specification. It should be understood that, as in any engineering or design project, numerous implementation-specific decisions may have to be made to achieve the developer's specific goals, such as complying with system-related and business-related constraints that may vary with the implementation. Furthermore, it should be understood that such development work can be complex and time-consuming, but it will remain a routine task in design, production, and manufacturing for those skilled in the art who benefit from this disclosure.

[0017] In one or more embodiments, a process for synchronizing time-varying drill depth data with time-varying downhole tool acceleration data may include retrieving data from the well string during and / or after drilling. A borehole can be drilled in subsurface formation using a drill string comprising drill pipe and downhole tools. Time-varying drill depth data can be acquired while drilling the borehole or when retrieving the drill string from the borehole after drilling. The acquired drill depth data may be timestamped, for example, using a surface clock. Acceleration data may be applied to the downhole tools and may be acquired via one or more sensors. The acquired acceleration data may be timestamped, for example, using a downhole clock.

[0018] Acceleration data may be or may include acceleration data from the downhole tool along the tool axis. In some embodiments, the data may be retrieved from an over-the-bit logging tool operatively positioned in the drill string. In some embodiments, the data may be retrieved from a memory operatively associated with the over-the-bit logging tool after the tool has been brought to the surface, or it may be retrieved in real time at the surface.

[0019] The data may include time-varying acceleration data projected or otherwise applied to the over-the-bit logging tool (referred to herein as "AccZ"). The data may also include time-varying rig depth data (referred to herein as "DD"). DD can be acquired from the drilling rig system. The data may also include any other data collected over time by the over-the-bit logging tool or any other tool or sensor used during drilling. In some embodiments, AccZ may be measured using one or more sensors. Suitable sensors may be, or may include, but are not limited to, one or more accelerometers, one or more gamma-ray devices, one or more resistivity measurement sensors, one or more other sensors, or any combination thereof. One or more sensors may be operatively associated with the over-the-bit logging tool, which communicates with a processor, surface memory, on-the-bit logging tool memory, or a combination thereof. In some embodiments, AccZ may be measured by one or more sensors, and the measured acceleration data may be sent to memory, timestamped, and stored for later download to a processor and / or memory located at the surface. In other embodiments, one or more sensors may send the acquired, timestamped AccZ to a processor and / or memory at the surface in real time. After data acquisition, time synchronization between AccZ and DD can be performed as roughly described below.

[0020] The process for time synchronization may include determining the slip and / or out-of-slip status of the drill pipe and acceleration indications. The term "slip-on" refers to a period of time during which the drill pipe does not move and / or does not indicate acceleration, while the term "out-of-slip" refers to a period of time during which the drill pipe moves and / or indicates acceleration. One or more status indicators (referred to herein as "AccZInSlips" for AccZ and "DDInSlips" for DD) may be determined as a function of time to indicate the slip-on status of AccZ and DD over time, and / or one or more status indicators (referred to herein as "AccZOutOfSlips" for AccZ and "DDOutOfSlips" for DD) may be determined as a function of time to indicate the out-of-slip status of AccZ and DD over time.

[0021] The process may also include establishing a common time grid for the AccZ and DD data, and interpolating the clamped slip state indicator and / or unclamped slip state indicator onto the common time grid using, for example, a nearest-point interpolation process (referred to in this paper as “AccZ InSlipsIntrp” and “AccZOutofSlipsIntrp” for AccZ, and “DDInSlipsIntrp” and “DDOutOfSlipsIntrp” for DD, respectively). The process may further include: selecting a minimum permissible overlap time period (referred to herein as “MinSecondsOverlap”) for the AccZ and DD records; determining one or more shifts for which the time overlap between the AccZ and DD data is not less than MinSecondsOverlap; determining a correlation coefficient between AccZInSlipsIntrp and DDInSlipsIntrp for each of the one or more shifts; determining a maximum correlation coefficient and a time shift associated with the maximum correlation; and synchronizing the acceleration data with the drilling depth data by shifting the acceleration data and / or the drilling depth data using the time shift associated with the maximum correlation coefficient.

[0022] One or more status indicators, AccZInSlipsIntrp and DDInSlipsIntrp, can be generated as binary indicators, where each of the indicators represents a slip engagement (no movement or unchanged) or slip disengagement (movement or change). For example, AccZInSlipsIntrp can be set to "0" for those times when the horizontal acceleration is constant and the derivative of the acceleration is zero. AccZInSlipsIntrp can be set to "1" for those times when the acceleration does change and the derivative of the acceleration is greater than zero. Similarly, for DD, DDInSlipsIntrp can be set to zero when the horizontal drilling depth is constant and the derivative of the drilling depth is zero. DDInSlipsIntrp can be set to 1 for those times when the horizontal drilling depth does change and the derivative of the drilling depth is greater than zero.

[0023] In one or more embodiments, determining the clamping slip state indicator of AccZ over time may include calculating the absolute value of the derivative of AccZ over time (referred to herein as "AbsDerAccZ"). The process may also include constructing a histogram of AbsDerAccZ values ​​to select those derivatives that are zero or within a threshold distance from zero. For example, one or more 90th percentiles of the AbsDerAccZ values ​​may be determined. For each of the one or more 90th percentiles, the absolute value of the 90th percentile of the AbsDerAccZ value (referred to herein as "AbsDerAccZP90") may be generated. Values ​​of AbsDerAccZP90 between zero and a first threshold (referred herein as "AbsDerAccZP90Cutoff") may be selected as those times when AccZ is in the clamping slip state. For those times when AccZ is in the clamping slip state, other percentiles may be selected to determine the first threshold. For example, the 25th, 30th, 35th, 40th, 45th, 50th, 55th, 60th, 65th, 70th percentile or higher or lower, and percentiles in between, can be selected. The first threshold can be a number greater than zero, such as 0.05, 0.01, 0.015, 0.02, 0.1, 0.15, 0.20, or any other number that a person skilled in the art will understand with the aid of this disclosure. The first threshold can be any number greater than zero and less than 1.

[0024] In one or more embodiments, determining the time-varying slip lock status indicator of AccZ may include generating a raw slip lock indicator (referred to herein as "AccZInSlipsRaw") based on the following, wherein all values ​​below a first threshold are considered to be in a slip lock state:

[0025] a. If AbsDerAccZ is not 0 and is less than AbsDerAccZP90Cutoff*AbsDerAccZP90, then AccZInSlipsRaw equals 1; and

[0026] b. If the condition in (a) is not met, then AccZInSlipRaw equals 0. For example, if AbsDerAccZ equals 0, then AccZInSlipRaw equals 0; or if AbsDerAccZ is less than AbsDerAccZP90Cutoff*AbsDerAccZP90, then AccZInSlipRaw equals 0.

[0027] The process may also include selecting one or more minimum durations for the clamping interval (referred to herein as “MinInSlipsSeconds”). MinInSlipsSeconds may be 1 second, 2 seconds, 3 seconds, 4 seconds, 5 seconds, 6 seconds, 7 seconds, 8 seconds, 9 seconds, 10 seconds, 12 seconds, 13 seconds, 1 minute, 2 minutes, or any other interval known to those skilled in the art with the aid of this disclosure. MinInSlipsSeconds may be selected by the operator, may be predetermined and entered before the operation, or may be entered by the operator. The process may also include selecting one or more minimum durations for the disengaging interval (referred to herein as “MinOutOfSlipsSeconds”). MinOutOfSlipsSeconds may be 1 second, 2 seconds, 3 seconds, 4 seconds, 5 seconds, 6 seconds, 7 seconds, 8 seconds, 9 seconds, 10 seconds, 12 seconds, 13 seconds, 1 minute, 2 minutes, or any other interval known to those skilled in the art with the aid of this disclosure. MinOutOfSlipsSeconds can be selected by the operator, can be predetermined and entered before running the job, or can be entered by the operator.

[0028] The AccZ slip indicator (referred to as "AccZInSlips" in this document) can be calculated by filtering AccZInSlipsRaw based on the following:

[0029] a. For time intervals with a duration equal to or greater than MinInSlipsSeconds (where AccZInSlipsRaw equals 1), AccZInSlips equals 1; and for time intervals with a duration less than MinOutOfSlipsSeconds (where AccZInSlipsRaw equals 0), AccZInSlips equals 1; and

[0030] b. For time intervals equal to or greater than MinOutOfSlipsSeconds (where AccZInSlipsRaw equals 0), AccZInSlips equals 0, while for time intervals with a duration less than MinInSlipsSeconds (where AccZInSlipsRaw equals 1), AccZInSlips equals 0.

[0031] In one or more embodiments, determining the clamping vault state indicator of the DD over time may include calculating the absolute value of the derivative of the DD over time (referred to herein as "AbsDerDD"). The process may also include constructing a histogram of the AbsDerDD values ​​to select those derivatives that are zero or within a threshold distance from zero. For example, one or more 90th percentiles of the AbsDerDD values ​​may be determined. For each of the one or more 90th percentiles, the absolute value of the 90th percentile of the AbsDerDD value (referred to herein as "AbsDerDDP90") may be generated. Values ​​of AbsDerDDP90 between zero and a second threshold (referred herein as "AbsDerDDP90Cutoff") may be selected as those times when the DD is in the clamping vault state. For those times when the DD is in the clamping vault state, other percentiles may be selected for determining the second threshold. For example, the 25th, 30th, 35th, 40th, 45th, 50th, 55th, 60th, 65th, 70th percentile or higher or lower, and percentiles in between, can be selected. The second threshold can be a number greater than zero, such as 0.05, 0.01, 0.015, 0.02, 0.1, 0.15, 0.20, or any other number that a person skilled in the art will understand with the aid of this disclosure. The second threshold can be any number greater than zero and less than 1, and the first threshold can be equal to the second threshold, but is not required to be.

[0032] In one or more embodiments, determining the DD slip condition indicator over time may include generating a raw slip indicator (referred to herein as "DDInSlipsRaw") based on the following, wherein all values ​​below a first threshold are considered to be in a slip condition:

[0033] a. If AbsDerDD is not 0 and is less than AbsDerDDP90Cutoff*AbsDerDDP90, then DDInSlipsRaw equals 1; and

[0034] b. If the condition in (a) is not met, then DDInSlipRaw equals 0. For example, if AbsDerDD equals 0, then DDInSlipRaw equals 0; or if AbsDerDD is less than AbsDerDDP90Cutoff*AbsDerDDP90, then DDInSlipRaw equals 0.

[0035] The process may also include selecting one or more minimum durations for the clamping slip interval of DD (referred to herein as "MinInSlipsSecondsDD"). MinInSlipsSecondsDD can be 1 second, 2 seconds, 3 seconds, 4 seconds, 5 seconds, 6 seconds, 7 seconds, 8 seconds, 9 seconds, 10 seconds, 12 seconds, 13 seconds, 1 minute, 2 minutes, or any other interval that a person skilled in the art will know with the aid of this disclosure. MinInSlipsSecondsDD can be selected by the operator, can be predetermined and entered before running the work, or can be entered by the operator. MinInSlipsSecondsDD can be equal to the MinInSlipsSeconds selected for AccZ as described above. The process may also include selecting one or more minimum durations for the disengaging slip interval (referred to herein as "MinOutOfSlipsSecondsDD"). MinOutOfSlipsSecondsDD can be 1 second, 2 seconds, 3 seconds, 4 seconds, 5 seconds, 6 seconds, 7 seconds, 8 seconds, 9 seconds, 10 seconds, 12 seconds, 13 seconds, 1 minute, 2 minutes, or any other interval that a person skilled in the art will know with the aid of this disclosure. MinOutOfSlipsSecondsDD can be selected by the operator, can be predetermined and entered before running the job, or can be entered by the operator. MinOutOfSlipsSecondsDD can be equal to MinOutOfSlipsSeconds selected for AccZ as described above.

[0036] The DD's locking slip indicator (referred to as "DDInSlips" in this document) can be calculated by filtering DDInSlipsRaw based on the following:

[0037] a. For time intervals with a duration equal to or greater than MinInSlipsSecondsDD (where DDInSlipsRaw equals 1), DDInSlips equals 1; and for time intervals with a duration less than MinOutOfSlipsSecondsDD (where DDInSlipsRaw equals 0), DDInSlips equals 1; and

[0038] b. For time intervals equal to or greater than MinOutOfSlipsSecondsDD (where DDInSlipsRaw equals 0), DDInSlips equals 0, while for time intervals with a duration less than MinInSlipsSecondsDD (where DDInSlipsRaw equals 1), DDInSlips equals 0.

[0039] The process may also include establishing a common time grid for AccZ and DD. The common time grid can be a regular grid that overlaps the AccZ and DD data, with a sampling rate that is the greater of the sampling rates of the median distance between adjacent time samples in the AccZ time record (referred to as "AccZdT" in this paper) and the median distance between adjacent samples in the DD time record (referred to as "DDdT" in this paper). The sampling rate can be accurate to an integer multiple of one second or a fraction of one second.

[0040] In one or more implementations, AccZInSlips can use, for example, a nearest neighbor process to interpolate onto a common time grid to determine AccZInSlipsIntrp. Similarly, DDInSlips can use, for example, a nearest neighbor process to interpolate onto a common time grid to determine DDInSlipsIntrp.

[0041] The process may also include selecting the minimum time overlap (referred to herein as "MinSecondsOverlap") for time-varying AccZ and DD to determine the shift between AccZInSlipsIntrp and DDInSlipsIntrp that achieves the maximum correlation coefficient. MinSecondsOverlap can be a predetermined value, a user-provided value, or a derived value. MinSecondsOverlap can be any time interval. For example, MinSecondsOverlap can be 10,000 seconds, 20,000 seconds, 30,000 seconds, or other values ​​that those skilled in the art will know how to determine with the aid of this disclosure. To determine the shift between AccZInSlipsIntrp and DDInSlipsIntrp that achieves the maximum correlation coefficient, all shifts where the time overlap between AccZ and DD is not less than MinSecondsOverlap are considered. The shift with the maximum correlation coefficient can be determined by calculating the correlation coefficients of all possible shifts on the common grid. The identified shift with the highest correlation coefficient can be used for time synchronization between the time-varying AccZ and DD data to align the data for further analysis. All of the above intermediate results can be used for quality control, including the correlation coefficient varying with the shift and the interpolated clamping valve status indicator.

[0042] Figure 1An illustrative process 100 is described, according to one or more described embodiments, for synchronizing time-varying drill depth data with time-varying downhole tool acceleration data. Process 100 may include acquiring time-varying AccZ data and time-varying DD data and providing them to a processor, action 110. The process may also include determining AccZInSlips and DDInSlips, action 112. The process may further include determining a common grid for overlapping AccZ and DD data, with a sampling rate equal to the maximum value of AccZdT and DDdT, action 114.

[0043] The process may also include determining AccZInSlipsIntrp, action 116. Furthermore, the process may include determining DDInSlipsIntrp, action 118. The process may also include using MinSec ondsOverlap to determine the shift between AccZInSlipsIntrp and DDInSlipsIntrp that achieve the maximum correlation coefficient, action 120. The process may also include synchronizing time-varying AccZ data with time-varying DD data by shifting the data using the shift with the maximum correlation coefficient, action 122.

[0044] Figure 2 A schematic diagram of an illustrative drilling rig system 200 according to one or more embodiments is depicted. In one or more embodiments, the drilling rig system 200 may include a drilling rig system 220 and a drill string 226, the drilling rig system being configured to acquire and mark time-varying drilling depth data, the drill string being retrieved using a downhole tool 222 located therein. The system may also include a sensor 224 operatively connected to the downhole tool 222 for acquiring acceleration data applied to the downhole tool 222 upon retrieval of the drill string 226, and wherein sensors or processors and memory in the downhole tool 222 may be configured to timestamp the data to provide time-varying acceleration data.

[0045] Time-varying acceleration data can be provided to computing system 212 in real time or stored in the memory of the downhole tool and uploaded to computing system 212 after the downhole tool is retrieved. In one or more embodiments, the drilling rig system can communicate with computing system 212 and provide time-varying drilling depth data to computing system 212 in real time. In other embodiments, time-varying drilling depth data acquired by drilling system 200 can be provided to computing system 212 after the work is completed, for example, by retrieving time-varying drilling depth data from memory in the drilling rig system using a flash drive or network connection, and transmitting the time-varying drilling depth data to computing system 212 after retrieval of the downhole from the surface.

[0046] Figure 3 A schematic diagram of an illustrative computing system 212, according to one or more embodiments, for performing time synchronization between time-varying drilling depth data and time-varying downhole tool acceleration data, is depicted. One or more chips (e.g., chips 505 and / or 521) may be or may include field-programmable gate arrays (“FPGAs”), application-specific integrated circuits (“ASICs”), chiplets, multi-chip modules, central processing units (“CPUs”), and / or systems-on-chips (“SoCs”), to name just a few. The chips can be used in a wide range of applications, including but not limited to automotive emission control, environmental monitoring, digital recorders, or other digital processing systems. An ASIC may include an entire microprocessor, a memory block including read-only memory (ROM), random access memory (RAM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory, and other components, and may be referred to as a system-on-chip (“SoC”).

[0047] To achieve the desired functionality, computing system 212 may include various hardware and software components. These components may include one or more processors 514 and a synchronization controller 540. These hardware components may be interconnected using multiple electrical connections, bus and / or network connections. In one embodiment, processor 514, chip 505, chip 521, and synchronization controller 540 may be communicatively coupled via bus 522. Bus 522 may be or may include any known computing system bus. Synchronization controller 540 may be located within data storage device 516.

[0048] Chip 505, chip 521, and / or synchronization controller 540 may individually or in some combination include the necessary software and hardware, including tangible non-transitory computer-readable media (not shown), for performing time synchronization between logging curves. Synchronization controller 540 may be integrated into chip 505, chip 521, and / or processor 514, or may be chip 505, chip 521, and / or processor 514, or may be software. Chip 505 and / or chip 521 may be integrated into processor 514. Although synchronization controller 540 is depicted as being within data storage device 516, in other examples, controller module 534 may be a peripheral device (not shown) coupled to computing system 212 or included within a peripheral device (not shown) coupled to computing system 212. In other examples, synchronization controller 540 may be a peripheral device (not shown) coupled to computing system 212 or included within a peripheral device (not shown) coupled to computing system 212.

[0049] The synchronization controller 540 may include instructions that, when executed by the synchronization controller 540, cause the synchronization controller 540 to perform time synchronization between two or more logging curves. (Reference) Figure 1 When executed by the synchronization controller 540, the instructions may cause the synchronization controller 540 to perform at least the following functions: acquire time-varying Accz data and time-varying DD data and provide them to the processor 514 or the synchronization controller 540, action 110; determine AccZInSlips and DDInSlips, action 112. The instructions may also include determining the common grid of overlapping AccZ and DD data, with a sampling rate of the maximum value of AccZdT and DDdT, action 114. The instructions may also include determining AccZInSlipsIntrp (action 116) and determining DDInSlipsIntrp (action 118). The instructions may also include using MinSecondsOverlap to determine the shift between AccZInSlipsIntrp and DDInSlipsIntrp that achieves the maximum correlation coefficient, action 120. The instructions may also include synchronizing the time-varying AccZ data with the time-varying DD data by shifting the data using the shift with the maximum correlation coefficient, action 122. When executed by the synchronization controller 540, the instruction can cause the synchronization controller 540 to output a graphical representation of the synchronization data for visual inspection and other analysis. Return to Figure 3 In this example, the synchronization controller 540 can work in conjunction with the processor 514 to implement the functions described above. In this example, the synchronization controller 540 can execute firmware code stored on the computing system 212 (such as on chip 505, chip 521, and / or processor 514). The computing system 212 and / or the synchronization controller 540 can function according to the procedures described herein. During code execution, the processor 514 and / or the synchronization controller 540 can receive inputs from and provide outputs to various remaining hardware units.

[0050] Computing system 212 can be implemented in an electronic device. Examples of electronic devices include servers, desktop computers, laptop computers, cloud-based computers, personal digital assistants (“PDAs”), mobile devices, smartphones, gaming systems, tablets, and other electronic devices. Computing system 212 can be used in any data processing scenario, including standalone hardware, mobile applications, computing networks, or combinations thereof. Furthermore, computing system 212 can be used in computing networks, public cloud networks, private cloud networks, hybrid cloud networks, other forms of networks, or combinations thereof. In one example, the process provided by computing system 212 is provided as a service by a third party.

[0051] To achieve the desired functionality, the computing system 212 may include various other hardware components. These other hardware components may include multiple data storage devices or tangible, non-transitory computer-readable media 516, multiple peripheral device adapters 518, and multiple network adapters 520. These hardware components can be interconnected using multiple electrical connections, bus and / or network connections. In one example, the processor 514, data storage devices 516, peripheral device adapters 518, and network adapters 520 can be interconnected via, for example... Figure 3 The bus 522 depicted in the diagram is either connected to the bus or via a separate bus not shown.

[0052] Chip 505, chip 521 and / or processor 514 may include hardware and / or firmware / software architecture to retrieve executable code from data storage device 516 and execute the executable code. When executed by chip 505, chip 521, and / or processor 514, the executable code may cause chip 505, chip 521, and / or processor 514 to perform at least the following functions: determine AccZInSlips and DDInSlips, action 112; determine the common grid of overlapping AccZ and DD data, with a sampling rate of the maximum value of AccZdT and DDdT, action 114; determine AccZInSlipsIntrp, action 116; determine DDInSlipsIntrp, action 118; determine the shift between AccZInSlipsIntrp and DDInSlipsIntrp that achieve the maximum correlation coefficient using MinSecondsOverlap, action 120; and synchronize the time-varying AccZ data with the time-varying DD data by shifting the data using the shift with the maximum correlation coefficient, action 122.

[0053] Data storage device 516 may store data, such as executable program code executed by processor 514, synchronization controller 540, or other processing means. Processor 514 may be a central processing unit in computing system 212 for executing an operating system. As will be discussed, data storage device 516 may specifically store computer code representing multiple applications that processor 514 and / or synchronization controller 540 can execute to at least implement the functions described herein.

[0054] Data storage device 516 may include various types of memory modules, including volatile and non-volatile memory. For example, the data storage device 516 of this example may include random access memory (“RAM”) 524, read-only memory (“ROM”) 526, and hard disk drive (“HDD”) memory 528. Many other types of memory may also be utilized, and this specification contemplates the use of many different types of memory in data storage device 516, provided it is suitable for the specific application of the principles described herein. In some examples, the different types of memory in data storage device 516 may be used for different data storage needs. For example, in some examples, processor 514 may boot from read-only memory (“ROM”) 526, maintain non-volatile storage in hard disk drive (“HDD”) memory 528, and execute program code stored in random access memory (“RAM”) 524. In the example, chips 505 and 521 may boot from read-only memory (“ROM”) 526.

[0055] Data storage device 516 may include computer-readable media, computer-readable storage media, or non-transitory computer-readable media. For example, data storage device 516 may be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or apparatus, or any suitable combination thereof. More specific examples of computer-readable storage media may include: an electrical connection having multiple wires, a portable computer floppy disk, a hard disk, RAM, ROM, EPROM, flash memory, a portable optical disc read-only memory (“CD-ROM”), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the context of this document, a computer-readable storage medium may be any tangible medium that can contain or store computer-usable program code for use by or in conjunction with an instruction execution system, device, or apparatus. In another example, a computer-readable storage medium may be any non-transitory medium that can contain or store a program for use by or in conjunction with an instruction execution system, device, or apparatus.

[0056] Hardware adapters 518 and 520 in computing system 212 enable processor 514 to connect to various other hardware components, both external and internal to computing system 212. For example, peripheral adapter 518 can provide an interface to input / output devices such as, for example, display device 530, mouse, and / or keyboard. Peripheral adapter 518 can also provide access to other external devices such as external storage devices, multiple network devices such as, for example, servers, switches, and routers, client devices, other types of computing devices, and combinations thereof.

[0057] A display device 530 may be provided to allow a user of the computing system 212 to interact with the computing system 212 and perform the functions of the computing system. Examples of the display device 530 may include a computer screen, a laptop screen, a mobile device screen, a personal digital assistant (“PDA”) screen and / or a tablet screen, as well as other display devices 530.

[0058] Peripheral adapter 518 can also create an interface between processor 514 and display device 530, printer, or other media output device. Network adapter 520 can provide an interface to other computing devices, such as those within a network, thereby enabling data transmission between computing system 212 and other devices located within the network. Network adapter 520 can also provide an interface to external telecommunications networks, such as cellular telephone networks or other radio frequency (RF)-enabled networks, thereby enabling data transmission between computing system 212 and other external devices, such as external storage devices, multiple network devices such as servers, switches, and routers, client servers, RF-enabled devices, other client devices, other types of computing devices, and combinations thereof.

[0059] The computing system 212 may also include multiple modules for implementing the systems and processes described herein. The various modules within the computing system 212 may include executable program code that can be executed individually. In this example, the various modules may be stored as separate computer program products. In another example, the various modules within the computing system 212 may be combined within multiple computer program products; each computer program product includes multiple modules.

[0060] Figure 4 An illustrative computing device according to one or more embodiments is described, the computing device comprising: Figure 3The system includes a synchronization controller 540 and a non-transitory computer-readable medium 602 storing computer-executable instructions 600. When the computer-executable instructions 600 are executed by the synchronization controller 540, the computer-executable instructions 600 can cause the synchronization controller 540 to perform at least the following functions: determine AccZInSlips and DDInSlips, box 112; determine a common grid for overlapping AccZ and DD data, with a sampling rate of the maximum value of AccZdT and DDdT, box 114; determine AccZInSlipsIntrp, box 116; determine DDInSlipsIntrp, box 118; determine a shift between AccZInSlipsIntrp and DDInSlipsIntrp that achieves the maximum correlation coefficient using MinSecondsOverlap, box 120; and synchronize the time-varying AccZ data with the time-varying DD data by shifting the data using the shift with the maximum correlation coefficient, box 122. The computer-executable instruction 600 can cause the synchronization controller 540 to output a graphical representation of the synchronization data for visual inspection and other analysis.

[0061] When describing the elements of various embodiments of this disclosure, the articles “an,” “a,” and “the” are intended to indicate the presence of one or more of the stated elements. The terms “comprising” and “having” are intended to be inclusive and indicate that additional elements may be present in addition to the listed elements. Furthermore, it should be understood that references to “an embodiment” or “an embodiment” of this disclosure are not intended to be construed as excluding the existence of additional embodiments that also incorporate the stated features.

[0062] Although only a few examples have been described in detail above, those skilled in the art will readily appreciate that many modifications can be made to the examples without substantially departing from this disclosure. Therefore, all such modifications are intended to be included within the scope of this disclosure as defined in the appended claims. In the claims, the means plus function clause is intended to cover structures described herein as performing the enumerated functions, and not only structural equivalents, but also equivalent structures. Thus, although nails and screws may not be structural equivalents because nails have a cylindrical surface for securing wooden parts together, while screws have a helical surface, in the context of fastening wooden parts, nails and screws can be equivalent structures. The applicant’s explicit intent is not to invoke paragraph 6 of 35 USC §112 to impose any limitation on any of the claims herein, unless the phrase “means for…” and the associated function are expressly used in the claims.

Claims

1. A method for synchronizing time-varying drilling depth data with time-varying downhole tool acceleration data, the method comprising: The status of one or more slips of the drill pipe is determined by generating one or more drill pipe depth status indicators that change over time based on the acquired drill pipe depth data. The one or more drill pipe depth status indicators indicate the status of one or more slips of the drill pipe. The condition of one or more slips of the downhole tool is determined by generating one or more acceleration status indicators that vary over time based on downhole tool acceleration data obtained from the downhole tool, the one or more acceleration status indicators indicating the condition of one or more slips of the downhole tool; Establish a common time grid for the acceleration data and the drilling depth data; Interpolate the clamping status indicator onto the common time grid; Select the minimum allowable overlap time period for the acceleration data and the drilling depth data; One or more shifts are determined, and for the one or more shifts, the minimum overlap time period between the acceleration data and the drilling depth data is not less than the minimum allowable overlap time period; For each of the one or more shifts, determine the correlation coefficient between the interpolated locking slip status indicators; Determine the maximum correlation coefficient and the time shift associated with the maximum correlation coefficient; and To synchronize the acceleration data with the drilling rig depth data.

2. The method of claim 1, wherein synchronizing the acceleration data with the drilling depth data comprises shifting the acceleration data using the time shift associated with the maximum correlation coefficient.

3. The method of claim 1 or claim 2, wherein synchronizing the acceleration data with the drilling depth data comprises shifting the drilling depth data using the time shift associated with the maximum correlation coefficient.

4. The method of claim 1 or claim 2, wherein the one or more drilling rig depth status indicators include a drilling rig depth binary indicator, the value of which is 0 when the drilling rig depth remains constant and 1 when the drilling rig depth changes.

5. The method of claim 1 or claim 2, wherein the one or more drilling rig depth status indicators include a drilling rig depth binary indicator, the value of which is 0 when the drilling rig depth data is greater than zero but less than a first threshold, and 1 when the drilling rig depth data is greater than the first threshold.

6. The method of claim 1 or claim 2, wherein the one or more acceleration status indicators include an acceleration binary indicator, the value of which is 0 when the acceleration data remains unchanged and 1 when the acceleration data changes.

7. The method of claim 1 or claim 2, wherein the one or more acceleration status indicators include an acceleration binary indicator, the value of which is 0 when the acceleration data is greater than zero but less than a second threshold, and 1 when the acceleration data is greater than the second threshold.

8. A system for synchronizing time-varying drilling depth data with time-varying downhole tool acceleration data, the system comprising: Synchronous controller; as well as Instructions, when executed by the synchronization controller, cause the synchronization controller to perform the following operations: The status of one or more slips of the drill pipe is determined by generating one or more drill pipe depth status indicators that change over time based on the acquired drill pipe depth data. The one or more drill pipe depth status indicators indicate the status of one or more slips of the drill pipe. The condition of one or more slips of the downhole tool is determined by generating one or more acceleration status indicators that vary over time based on downhole tool acceleration data obtained from the downhole tool, the one or more acceleration status indicators indicating the condition of one or more slips of the downhole tool; Establish a common time grid for the acceleration data and the drilling depth data; Interpolate the clamping status indicator onto the common time grid; Select the minimum allowable overlap time period for the acceleration data and the drilling depth data; One or more shifts are determined, and for the one or more shifts, the minimum overlap time period between the acceleration data and the drilling depth data is not less than the minimum allowable overlap time period; For each of the one or more shifts, determine the correlation coefficient between the interpolated locking slip status indicators; Determine the maximum correlation coefficient and the time shift associated with the maximum correlation coefficient; and To synchronize the acceleration data with the drilling rig depth data.

9. The system of claim 8, wherein the instruction, when executed by the synchronization controller, causes the synchronization controller to synchronize the acceleration data with the drilling depth data by shifting the acceleration data using the time shift associated with the maximum correlation coefficient.

10. The system of claim 8 or claim 9, wherein the instruction, when executed by the synchronization controller, causes the synchronization controller to synchronize the acceleration data with the drilling depth data by shifting the drilling depth data using the time shift associated with the maximum correlation coefficient.

11. The system of claim 8 or claim 9, wherein the one or more drilling depth status indicators include a drilling depth binary indicator, the value of which is 0 when the drilling depth remains constant and 1 when the drilling depth changes.

12. The system of claim 8 or claim 9, wherein the one or more drilling depth status indicators include a drilling depth binary indicator, the value of which is 0 when the drilling depth data is greater than zero but less than a first threshold, and is 1 when the drilling depth data is greater than the first threshold.

13. The system of claim 8 or claim 9, wherein the one or more acceleration status indicators include an acceleration binary indicator, the value of which is 0 when the acceleration data remains unchanged and 1 when the acceleration data changes.

14. The system of claim 8 or claim 9, wherein the one or more acceleration status indicators include an acceleration binary indicator, the value of which is 0 when the acceleration data is greater than zero but less than a second threshold, and 1 when the acceleration data is greater than the second threshold.

15. A method for synchronizing time-varying drilling depth data with time-varying downhole tool acceleration data, the method comprising: Drilling holes in underground formations using a drill string that includes drill pipe and downhole tools; When drilling the borehole with the drill string or when retrieving the drill string from the borehole after drilling the borehole, obtain drilling depth data that varies over time. Add a timestamp to the acquired drilling depth data; Use one or more sensors to acquire acceleration data applied to the downhole tool; Add a timestamp to the acquired acceleration data; The status of one or more slips of the drill pipe is determined by generating one or more drill pipe depth status indicators that change over time based on the drill pipe depth data. The one or more drill pipe depth status indicators indicate the status of one or more slips of the drill pipe. The one or more slip conditions of the downhole tool are determined by generating one or more acceleration status indicators that vary over time based on the acceleration data, the one or more acceleration status indicators indicating the one or more slip conditions of the downhole tool; Establish a common time grid for the acceleration data and the drilling depth data; Interpolate the clamping status indicator onto the common time grid; Select the minimum allowable overlap time period for the acceleration data and the drilling depth data; One or more shifts are determined, and for the one or more shifts, the minimum overlap time period between the acceleration data and the drilling depth data is not less than the minimum allowable overlap time period; For each of the one or more shifts, determine the correlation coefficient between the interpolated locking slip status indicators; Determine the maximum correlation coefficient and the time shift associated with the maximum correlation coefficient; and To synchronize the acceleration data with the drilling rig depth data.

16. The method of claim 15, wherein the one or more drilling rig depth status indicators include a drilling rig depth binary indicator, the value of which is 0 when the drilling rig depth remains constant and 1 when the drilling rig depth changes.

17. The method of claim 15, wherein the one or more drilling rig depth status indicators include a drilling rig depth binary indicator, the value of which is 0 when the drilling rig depth data is greater than zero but less than a first threshold, and 1 when the drilling rig depth data is greater than the first threshold.

18. The method of claim 15, wherein the one or more acceleration status indicators include an acceleration binary indicator, the value of which is 0 when the acceleration data remains unchanged and 1 when the acceleration data changes.

19. The method of claim 15, wherein the one or more acceleration status indicators include an acceleration binary indicator, the value of which is 0 when the acceleration data is greater than zero but less than a second threshold, and 1 when the acceleration data is greater than the second threshold.

Citation Information

Patent Citations

  • System and Method for Associating Time Stamped Measurement Data with a Corresponding Wellbore Depth

    US20100313646A1

  • Borehole testing device

    US20190271796A1