Slide drilling oscillation controller

A slide drilling oscillation controller addresses the challenge of controlling drillstring oscillation in directional drilling by setting precise angle and torque setpoints, enhancing drilling precision and borehole integrity.

WO2025264486A1PCT designated stage Publication Date: 2025-12-26SCHLUMBERGER TECH CORP +3
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/US2025/033488
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-06-21
Filing Date
2025-06-13
Publication Date
2025-12-26

AI Technical Summary

Technical Problem

Existing directional drilling methods face challenges in efficiently controlling the oscillation of the drillstring for precise trajectory management, particularly in slide drilling, which affects drilling efficiency and borehole integrity.

Method used

Implementing a slide drilling oscillation controller that receives setpoints for forward and reverse direction angles and torques, computing distances, and instructing the top drive to rotate accordingly to achieve precise oscillation control.

Benefits of technology

Enhances drilling precision and borehole integrity by allowing controlled oscillation of the drillstring, improving drilling efficiency and safety in directional drilling operations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure US2025033488_26122025_PF_FP_ABST
    Figure US2025033488_26122025_PF_FP_ABST
Patent Text Reader

Abstract

A method can include receiving a forward direction angle setpoint, a forward direction torque setpoint, a reverse direction angle setpoint, and a reverse direction torque setpoint for an oscillation controller that controls a top drive operatively coupled to a drillstring; computing a present forward direction angle distance to the forward direction angle setpoint; instructing the top drive to rotate in the forward direction toward the forward direction angle setpoint based at least in part on the present forward direction angle distance; instructing the top drive to stop responsive to reaching the forward direction angle setpoint or the forward direction torque setpoint; computing a present reverse direction angle distance to the reverse direction angle setpoint; and instructing the top drive to rotate in the reverse direction toward the reverse direction angle setpoint based at least in part on the present reverse direction angle distance.
Need to check novelty before this filing date? Find Prior Art

Description

SLIDE DRILLING OSCILLATION CONTROLLERCROSS-REFERENCE TO RELATED APPLICATION

[0001] This application claims the benefit of U.S. Provisional Patent Application No. 63 / 662,522, filed June 21 , 2024, which is incorporated by reference herein in its entirety.BACKGROUND

[0002] Directional drilling may provide for directional control of a drill bit of a drillstring. In various instances, directional drilling may utilize rotary drilling and slide drilling at different times to drill a borehole according to a planned borehole trajectory. As to slide drilling, it may utilize a mud motor driven by drilling fluid, which may be referred to as mud, to rotate a drill bit. As an example, directional drilling may include using downhole geological logging measurements, for example, to directionally steer a drill bit. In various scenarios, directional drilling may be used to direct a borehole to a particular section of a reservoir and / or to maintain the borehole within a particular section of a reservoir, for example, to minimize gas or water breakthrough and maximize hydrocarbon production.SUMMARY

[0003] A method can include receiving a forward direction angle setpoint, a forward direction torque setpoint, a reverse direction angle setpoint, and a reverse direction torque setpoint for an oscillation controller that controls a top drive operatively coupled to a drillstring; computing a present forward direction angle distance to the forward direction angle setpoint; instructing the top drive to rotate in the forward direction toward the forward direction angle setpoint based at least in part on the present forward direction angle distance; instructing the top drive to stop responsive to reaching the forward direction angle setpoint or the forward direction torque setpoint; computing a present reverse direction angle distance to the reverse direction angle setpoint; and instructing the top drive to rotate in the reverse direction toward the reverse direction angle setpoint based at least in part on the present reverse direction angle distance. A system can include a processor; memory accessible to the processor; and processor-executable instructions stored in the memory and executable by the processor to instruct the system to: receive a forwarddirection angle setpoint, a forward direction torque setpoint, a reverse direction angle setpoint, and a reverse direction torque setpoint for an oscillation controller that controls a top drive operatively coupled to a drillstring; compute a present forward direction angle distance to the forward direction angle setpoint; instruct the top drive to rotate in the forward direction toward the forward direction angle setpoint based at least in part on the present forward direction angle distance; instruct the top drive to stop responsive to reaching the forward direction angle setpoint or the forward direction torque setpoint; compute a present reverse direction angle distance to the reverse direction angle setpoint; and instruct the top drive to rotate in the reverse direction toward the reverse direction angle setpoint based at least in part on the present reverse direction angle distance. One or more non-transitory computer- readable storage media can include processor-executable instructions executable to instruct a processor to: receive a forward direction angle setpoint, a forward direction torque setpoint, a reverse direction angle setpoint, and a reverse direction torque setpoint for an oscillation controller that controls a top drive operatively coupled to a drillstring; compute a present forward direction angle distance to the forward direction angle setpoint; instruct the top drive to rotate in the forward direction toward the forward direction angle setpoint based at least in part on the present forward direction angle distance; instruct the top drive to stop responsive to reaching the forward direction angle setpoint or the forward direction torque setpoint; compute a present reverse direction angle distance to the reverse direction angle setpoint; and instruct the top drive to rotate in the reverse direction toward the reverse direction angle setpoint based at least in part on the present reverse direction angle distance. Various other apparatuses, systems, methods, etc., are also disclosed.

[0004] This summary is provided to introduce a selection of concepts that are further described below in the detailed description. This summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used as an aid in limiting the scope of the claimed subject matter.BRIEF DESCRIPTION OF THE DRAWINGS

[0005] Features and advantages of the described implementations may be more readily understood by reference to the following description taken in conjunction with the accompanying drawings.

[0006] Fig. 1 illustrates examples of equipment in a geologic environment;

[0007] Fig. 2 illustrates an example of a system and examples of types of holes;

[0008] Fig. 3 illustrates an example of a geologic environment with a borehole and an example of a portion of a drillstring that may include various components;

[0009] Fig. 4 illustrates examples of graphical user interfaces;

[0010] Fig. 5 illustrates an example of a method;

[0011] Fig. 6 illustrates an example of a multiloop controller;

[0012] Fig. 7 illustrates an example of an assembly;

[0013] Fig. 8 illustrates an example of a method and an example of a system; and

[0014] Fig. 9 illustrates examples of computing and networking equipment.DETAILED DESCRIPTION

[0015] The following description includes embodiments of the best mode presently contemplated for practicing the described implementations. This description is not to be taken in a limiting sense, but rather is made merely for the purpose of describing the general principles of the implementations. The scope of the described implementations should be ascertained with reference to the issued claims.

[0016] A borehole may be referred to as a wellbore and may include an openhole portion or an uncased portion and / or may include a cased portion. A borehole may be defined by a bore wall that is composed of rock that bounds the borehole. As to a well or a borehole, whether for one or more of exploration, sensing, production, injection or other operation(s), it may be planned. Such a process may be referred to generally as well planning, a process by which a path may be mapped in a geologic environment. Such a path may be referred to as a trajectory, which may include coordinates in a three-dimensional coordinate system where a measure along the trajectory may be a measured depth (MD), a total vertical depth (TVD) or another type of measure.

[0017] As an example, drilling may include using one or more logging tools that may perform one or more logging operations while drilling or otherwise with a drillstring (e.g., while stationary, while tripping in, tripping out, etc.). As an example, drilling or one or more other operations may occur responsive to measurements. For example, a logging while drilling operation may acquire measurements and adjustdrilling based at least in part on such measurements. In such an example, adjustments may be made by actuating one or more geosteering actuators that may provide for orienting a drill bit of a drillstring.

[0018] As an example, directional drilling may be implemented to drill a borehole according to a planned or re-planned trajectory that may include, for example, a substantially vertical section, a build section, and a lateral section. In such an example, slide drilling may be utilized to cause a borehole to be drilled in a manner that deviates from vertical. For example, slide drilling may be implemented during drilling of a build section and / or during drilling of a lateral section where slide drilling may provide for steering a drill bit within a reservoir formation that may be defined by boundaries (e.g., formation tops, etc.).

[0019] In various instances, slide drilling may be improved through oscillating (e.g., rocking) of at least a portion of a drillstring bidirectionally. For example, consider using a top drive to rotate in a clockwise direction and a counter-clockwise direction, alternately. As an example, a slide drilling oscillation controller may provide for improved drilling, equipment integrity, borehole integrity, safety, emissions for directional drilling operations.

[0020] Below, an example of a system is presented along with examples of field equipment, followed by examples of techniques and technologies for improved oscillation control during slide drilling.

[0021] Fig. 1 shows an example of a system 100 that includes a workspace framework 110 that may provide for instantiation of, rendering of, interactions with, etc., a graphical user interface (GUI) 120. In the example of Fig. 1 , the GUI 120 may include graphical controls for computational frameworks (e.g., applications, etc.) 121 , projects 122, visualization features 123, one or more other features 124, data access 125, and data storage 126.

[0022] In the example of Fig. 1 , the workspace framework 110 may be tailored to a particular geologic environment such as an example geologic environment 150.For example, the geologic environment 150 may include layers (e.g., stratification) that include a reservoir 151 and that may be intersected by a fault 153. As an example, the geologic environment 150 may be outfitted with a variety of sensors, detectors, actuators, etc. For example, equipment 152 may include communication circuitry to receive and to transmit information with respect to one or more networks 155. Such information may include information associated with downhole equipment154, which may be equipment to acquire information, to assist with resource recovery, etc. Other equipment 156 may be located remote from a wellsite and include sensing, detecting, emitting or other circuitry. Such equipment may include storage and communication circuitry to store and to communicate data, instructions, etc. As an example, one or more satellites may be provided for purposes of communications, data acquisition, etc. For example, Fig. 1 shows a satellite in communication with the network 155 that may be configured for communications, noting that the satellite may additionally or alternatively include circuitry for imagery (e.g., spatial, spectral, temporal, radiometric, etc.).

[0023] Fig. 1 also shows the geologic environment 150 as optionally including equipment 157 and 158 associated with a well that includes a substantially horizontal portion that may intersect with one or more fractures 159. For example, consider a well in a shale formation that may include natural fractures, artificial fractures (e.g., hydraulic fractures) or a combination of natural and artificial fractures. As an example, a well may be drilled for a reservoir that is laterally extensive. In such an example, lateral variations in properties, stresses, etc. may exist where an assessment of such variations may assist with planning, operations, etc. to develop a laterally extensive reservoir (e.g., via fracturing, injecting, extracting, etc.). As an example, the equipment 157 and / or 158 may include components, a system, systems, etc. for fracturing, seismic sensing, analysis of seismic data, assessment of one or more fractures, etc.

[0024] In the example of Fig. 1 , the GUI 120 shows some examples of computational frameworks, including the DRILLPLAN, DRILLOPS, PETREL, TECHLOG, PETROMOD, ECLIPSE, PIPESIM, and INTERSECT frameworks (SLB, Houston, Texas).

[0025] The DRILLPLAN framework provides for digital well construction planning and includes features for automation of repetitive tasks and validation workflows, enabling improved quality drilling programs (e.g., digital drilling plans, etc.) to be produced quickly with assured coherency.

[0026] The DRILLOPS framework may execute a digital drilling plan and ensures plan adherence, while delivering goal-based automation. The DRILLOPS framework may generate activity plans automatically individual operations, whether they are monitored and / or controlled on the rig or in town. Automation may utilize data analysis and learning systems to assist and optimize tasks, such as, forexample, setting ROP to drilling a stand. A preset menu of automatable drilling tasks may be rendered, and, using data analysis and models, a plan may be executed in a manner to achieve a specified goal, where, for example, measurements may be utilized for calibration. The DRILLOPS framework provides flexibility to modify and replan activities dynamically, for example, based on a live appraisal of various factors (e.g., equipment, personnel, and supplies). Well construction activities (e.g., tripping, drilling, cementing, etc.) may be continually monitored and dynamically updated using feedback from operational activities. The DRILLOPS framework may provide for various levels of automation based on planning and / or re-planning (e.g., via the DRILLPLAN framework), feedback, etc.

[0027] The PETREL framework may be part of the DELFI environment for utilization in geosciences and geoengineering, for example, to analyze subsurface data from exploration to production of fluid from a reservoir. The DELFI cognitive exploration and production (E&P) environment (SLB, Houston, Texas), referred to herein as the DELFI environment or DELFI framework, is a secure, cognitive, cloudbased collaborative environment that integrates data and workflows with digital technologies, such as artificial intelligence and machine learning.

[0028] The PETREL framework provides components that allow for optimization of various exploration, development and production operations. The PETREL framework includes seismic to simulation software components that may output information for use in increasing reservoir performance, for example, by improving asset team productivity. Through use of such a framework, various professionals (e.g., geophysicists, geologists, and reservoir engineers) may develop collaborative workflows and integrate operations to streamline processes (e.g., with respect to one or more geologic environments, etc.). Such a framework may be considered an application (e.g., executable using one or more devices) and may be considered a data-driven application (e.g., where data is input for purposes of modeling, simulating, etc.).

[0029] The TECHLOG framework may handle and process field and laboratory data for a variety of geologic environments (e.g., deepwater exploration, shale, etc.). The TECHLOG framework may structure wellbore data for analyses, planning, etc.

[0030] The PETROMOD framework provides petroleum systems modeling capabilities that may combine one or more of seismic, well, and geologicalinformation to model the evolution of a sedimentary basin. The PETROMOD framework may predict if, and how, a reservoir has been charged with hydrocarbons, including the source and timing of hydrocarbon generation, migration routes, quantities, and hydrocarbon type in the subsurface or at surface conditions.

[0031] The ECLIPSE framework provides a reservoir simulator (e.g., as a computational framework) with numerical solutions for fast and accurate prediction of dynamic behavior for various types of reservoirs and development schemes.

[0032] The INTERSECT framework provides a high-resolution reservoir simulator for simulation of detailed geological features and quantification of uncertainties, for example, by creating accurate production scenarios and, with the integration of precise models of the surface facilities and field operations, the INTERSECT framework may produce reliable results, which may be continuously updated by real-time data exchanges (e.g., from one or more types of data acquisition equipment in the field that may acquire data during one or more types of field operations, etc.). The INTERSECT framework may provide completion configurations for complex wells where such configurations may be built in the field, may provide detailed enhanced-oil-recovery (EOR) formulations where such formulations may be implemented in the field, may analyze application of steam injection and other thermal EOR techniques for implementation in the field, advanced production controls in terms of reservoir coupling and flexible field management, and flexibility to script customized solutions for improved modeling and field management control. The INTERSECT framework, as with the other example frameworks, may be utilized as part of the DELFI environment, for example, for rapid simulation of multiple concurrent cases. For example, a workflow may utilize one or more of the DELFI environment on demand reservoir simulation features.

[0033] The aforementioned DELFI environment provides various features for workflows as to subsurface analysis, planning, construction and production, for example, as illustrated in the workspace framework 110. As shown in Fig. 1 , outputs from the workspace framework 110 may be utilized for directing, controlling, etc., one or more processes in the geologic environment 150 and, feedback 160, may be received via one or more interfaces in one or more forms (e.g., acquired data as to operational conditions, equipment conditions, environment conditions, etc.).

[0034] As an example, a workflow may progress to a geology and geophysics (“G&G”) service provider, which may generate a well trajectory, which may involveexecution of one or more G&G frameworks (e.g., consider the PETREL framework, etc.).

[0035] In the example of Fig. 1 , the visualization features 123 may be implemented via the workspace framework 110, for example, to perform tasks as associated with one or more of subsurface regions, planning operations, constructing wells and / or surface fluid networks, and producing from a reservoir.

[0036] As an example, a visualization process may implement one or more of various features that may be suitable for one or more web applications. For example, a template may involve use of the JAVASCRIPT object notation format (JSON) and / or one or more other languages / formats. As an example, a framework may include one or more converters. For example, consider a JSON to PYTHON converter and / or a PYTHON to JSON converter. Such an approach may provide for compatibility of devices, frameworks, etc., with respect to one or more sets of instructions.

[0037] As an example, visualization features may provide for visualization of various earth models, properties, etc., in one or more dimensions. As an example, visualization features may provide for rendering of information in multiple dimensions, which may optionally include multiple resolution rendering. In such an example, information being rendered may be associated with one or more frameworks and / or one or more data stores. As an example, visualization features may include one or more control features for control of equipment, which may include, for example, field equipment that may perform one or more field operations. As an example, a workflow may utilize one or more frameworks to generate information that may be utilized to control one or more types of field equipment (e.g., drilling equipment, wireline equipment, fracturing equipment, etc.).

[0038] As to a reservoir model that may be suitable for utilization by a simulator, consider acquisition of seismic data as acquired via reflection seismology, which finds use in geophysics, for example, to estimate properties of subsurface formations. As an example, reflection seismology may provide seismic data representing waves of elastic energy (e.g., as transmitted by P-waves and S-waves, in a frequency range of approximately 1 Hz to approximately 100 Hz). Seismic data may be processed and interpreted, for example, to understand better composition, fluid content, extent and geometry of subsurface rocks. Such interpretation resultsmay be utilized to plan, simulate, perform, etc., one or more operations for production of fluid from a reservoir (e.g., reservoir rock, etc.).

[0039] As an example, a model may be a simulated version of a geologic environment. As an example, a simulator may include features for simulating physical phenomena in a geologic environment based at least in part on a model or models. A simulator, such as a reservoir simulator, may simulate fluid flow in a geologic environment based at least in part on a model that may be generated via a framework that receives seismic data. A simulator may be a computerized system (e.g., a computing system) that may execute instructions using one or more processors to solve a system of equations that describe physical phenomena subject to various constraints. In such an example, the system of equations may be spatially defined (e.g., numerically discretized) according to a spatial model that that includes layers of rock, geobodies, etc., that have corresponding positions that may be based on interpretation of seismic and / or other data. A spatial model may be a cell-based model where cells are defined by a grid (e.g., a mesh). A cell in a cell-based model may represent a physical area or volume in a geologic environment where the cell may be assigned physical properties (e.g., permeability, fluid properties, etc.) that may be germane to one or more physical phenomena (e.g., fluid volume, fluid flow, pressure, etc.). A reservoir simulation model may be a spatial model that may be cell-based.

[0040] While several simulators are illustrated in the example of Fig. 1 , one or more other simulators may be utilized, additionally or alternatively. For example, consider the VISAGE geomechanics simulator (SLB, Houston Texas) or the PIPESIM network simulator (SLB, Houston Texas), etc.

[0041] As an example, a workflow may utilize one or more types of data for one or more processes (e.g., stratigraphic modeling, basin modeling, completion designs, drilling, production, injection, etc.). As an example, one or more tools may provide data that may be used in a workflow or workflows that may implement one or more frameworks (e.g., PETREL, TECHLOG, PETROMOD, ECLIPSE, etc.).

[0042] In the example of Fig. 1 , drilling may be performed in the geologic environment 150, for example, to access the reservoir 151 , which may be accessed from land or offshore. In Fig. 1 , the downhole equipment 154 may be, for example, part of a bottom hole assembly (BHA). The BHA may be used to drill a well. The downhole equipment 154 may communicate information to equipment at the surface,and may receive instructions and information from the equipment at the surface. During a well construction process, a variety of operations (such as cementing, wireline evaluation, testing, etc.) may be conducted. In such embodiments, data collected by tools and sensors and used for reasons such as reservoir characterization may be collected and transmitted.

[0043] A well may include a substantially horizontal portion (e.g., lateral portion) that may intersect with one or more fractures. For example, a well in a shale formation may pass through natural fractures, artificial fractures (e.g., hydraulic fractures), or a combination thereof. Such a well may be constructed using directional drilling techniques as described herein. However, these same techniques may be used in connection with other types of directional wells (such as slant wells, S-shaped wells, deep inclined wells, and others) and are not limited to horizontal wells.

[0044] Fig. 2 shows an example of a wellsite system 200 (e.g., at a wellsite that may be onshore or offshore). As shown, the wellsite system 200 may include a mud tank 201 for holding mud and other material (e.g., where mud may be a drilling fluid that may help to transport cuttings, etc.), a suction line 203 that serves as an inlet to a mud pump 204 for pumping mud from the mud tank 201 such that mud flows to a vibrating hose 206, a drawworks 207 for winching drill line or drill lines 212, a standpipe 208 that receives mud from the vibrating hose 206, a kelly hose 209 that receives mud from the standpipe 208, a gooseneck or goosenecks 210, a traveling block 211 , a crown block 213 for carrying the traveling block 211 via the drill line or drill lines 212 (see, e.g., the crown block 173 of Fig. 1 ), a derrick 214 (see, e.g., the derrick 172 of Fig. 1 ), a kelly 218 or a top drive 240, a kelly drive bushing 219, a rotary table 220, a drill floor 221 , a bell nipple 222, one or more blowout preventers (BOPs) 223, a drillstring 225, a drill bit 226, a casing head 227 and a flow pipe 228 that carries mud and other material to, for example, the mud tank 201 .

[0045] In the example system of Fig. 2, a borehole 232 is formed in subsurface formations 230 by rotary drilling; noting that various example embodiments may also use directional drilling or one or more other types of drilling.

[0046] As shown in the example of Fig. 2, the drillstring 225 is suspended within the borehole 232 and has a drillstring assembly 250 that includes the drill bit 226 at its lower end. As an example, the drillstring assembly 250 may be a bottom hole assembly (BHA).

[0047] The wellsite system 200 may provide for operation of the drillstring 225 and other operations. As shown, the wellsite system 200 includes the platform 215 and the derrick 214 positioned over the borehole 232. As mentioned, the wellsite system 200 may include the rotary table 220 where the drillstring 225 passes through an opening in the rotary table 220.

[0048] As shown in the example of Fig. 2, the wellsite system 200 may include the kelly 218 and associated components, etc., or a top drive 240 and associated components. As to a kelly example, the kelly 218 may be a square or hexagonal metal / alloy bar with a hole drilled therein that serves as a mud flow path. The kelly 218 may be used to transmit rotary motion from the rotary table 220 via the kelly drive bushing 219 to the drillstring 225, while allowing the drillstring 225 to be lowered or raised during rotation. The kelly 218 may pass through the kelly drive bushing 219, which may be driven by the rotary table 220. As an example, the rotary table 220 may include a master bushing that operatively couples to the kelly drive bushing 219 such that rotation of the rotary table 220 may turn the kelly drive bushing 219 and hence the kelly 218. The kelly drive bushing 219 may include an inside profile matching an outside profile (e.g., square, hexagonal, etc.) of the kelly 218; however, with slightly larger dimensions so that the kelly 218 may freely move up and down inside the kelly drive bushing 219.

[0049] As to a top drive example, the top drive 240 may provide functions performed by a kelly and a rotary table. The top drive 240 may turn the drillstring 225. As an example, the top drive 240 may include one or more motors (e.g., electric and / or hydraulic) connected with appropriate gearing to a short section of pipe called a quill, that in turn may be screwed into a saver sub or the drillstring 225 itself. The top drive 240 may be suspended from the traveling block 211 , so the rotary mechanism is free to travel up and down the derrick 214. As an example, a top drive 240 may allow for drilling to be performed with more joint stands than a kelly / rotary table approach.

[0050] In the example of Fig. 2, the mud tank 201 may hold mud, which may be one or more types of drilling fluids. As an example, a wellbore may be drilled to produce fluid, inject fluid or both (e.g., hydrocarbons, minerals, water, etc.).

[0051] In the example of Fig. 2, the drillstring 225 (e.g., including one or more downhole tools) may be composed of a series of pipes threadably connected together to form a long tube with the drill bit 226 at the lower end thereof. As thedrillstring 225 is advanced into a wellbore for drilling, at some point in time prior to or coincident with drilling, the mud may be pumped by the pump 204 from the mud tank 201 (e.g., or other source) via the lines 206, 208 and 209 to a port of the kelly 218 or, for example, to a port of the top drive 240. The mud may then flow via a passage (e.g., or passages) in the drillstring 225 and out of ports located on the drill bit 226 (see, e.g., a directional arrow). As the mud exits the drillstring 225 via ports in the drill bit 226, it may then circulate upwardly through an annular region between an outer surface(s) of the drillstring 225 and surrounding wall(s) (e.g., open borehole, casing, etc.), as indicated by directional arrows. In such a manner, the mud lubricates the drill bit 226 and carries heat energy (e.g., frictional or other energy) and formation cuttings to the surface where the mud (e.g., and cuttings) may be returned to the mud tank 201 , for example, for recirculation (e.g., with processing to remove cuttings, etc.).

[0052] The mud pumped by the pump 204 into the drillstring 225 may, after exiting the drillstring 225, form a mudcake that lines the wellbore which, among other functions, may reduce friction between the drillstring 225 and surrounding wall(s) (e.g., borehole, casing, etc.). A reduction in friction may facilitate advancing or retracting the drillstring 225. During a drilling operation, the entire drillstring 225 may be pulled from a wellbore and optionally replaced, for example, with a new or sharpened drill bit, a smaller diameter drillstring, etc. As mentioned, the act of pulling a drillstring out of a hole or replacing it in a hole is referred to as tripping. A trip may be referred to as an upward trip or an outward trip or as a downward trip or an inward trip depending on trip direction.

[0053] As an example, consider a downward trip where upon arrival of the drill bit 226 of the drillstring 225 at a bottom of a wellbore, pumping of the mud commences to lubricate the drill bit 226 for purposes of drilling to enlarge the wellbore. As mentioned, the mud may be pumped by the pump 204 into a passage of the drillstring 225 and, upon filling of the passage, the mud may be used as a transmission medium to transmit energy, for example, energy that may encode information as in mud-pulse telemetry.

[0054] As an example, mud-pulse telemetry equipment may include a downhole device configured to effect changes in pressure in the mud to create an acoustic wave or waves upon which information may modulated. In such an example, information from downhole equipment (e.g., one or more components ofthe drillstring 225) may be transmitted uphole to an uphole device, which may relay such information to other equipment for processing, control, etc.

[0055] As an example, telemetry equipment may operate via transmission of energy via the drillstring 225 itself. For example, consider a signal generator that imparts coded energy signals to the drillstring 225 and repeaters that may receive such energy and repeat it to further transmit the coded energy signals (e.g., information, etc.).

[0056] As an example, the drillstring 225 may be fitted with telemetry equipment 252 that includes a rotatable drive shaft, a turbine impeller mechanically coupled to the drive shaft such that the mud may cause the turbine impeller to rotate, a modulator rotor mechanically coupled to the drive shaft such that rotation of the turbine impeller causes said modulator rotor to rotate, a modulator stator mounted adjacent to or proximate to the modulator rotor such that rotation of the modulator rotor relative to the modulator stator creates pressure pulses in the mud, and a controllable brake for selectively braking rotation of the modulator rotor to modulate pressure pulses. In such example, an alternator may be coupled to the aforementioned drive shaft where the alternator includes at least one stator winding electrically coupled to a control circuit to selectively short the at least one stator winding to electromagnetically brake the alternator and thereby selectively brake rotation of the modulator rotor to modulate the pressure pulses in the mud.

[0057] In the example of Fig. 2, an uphole control and / or data acquisition system 262 may include circuitry to sense pressure pulses generated by telemetry equipment 252 and, for example, communicate sensed pressure pulses or information derived therefrom for process, control, etc.

[0058] The assembly 250 of the illustrated example includes a logging-while- drilling (LWD) module 254, a measurement-while-drilling (MWD) module 256, an optional module 258, a rotary-steerable system (RSS) and / or motor 260, and the drill bit 226. Such components or modules may be referred to as tools where a drillstring may include a plurality of tools.

[0059] As to an RSS, it involves technology utilized for direction drilling. Directional drilling involves drilling into the Earth to form a deviated bore such that the trajectory of the bore is not vertical; rather, the trajectory deviates from vertical along one or more portions of the bore. As an example, consider a target that is located at a lateral distance from a surface location where a rig may be stationed. Insuch an example, drilling may commence with a vertical portion and then deviate from vertical such that the bore is aimed at the target and, eventually, reaches the target. Directional drilling may be implemented where a target may be inaccessible from a vertical location at the surface of the Earth, where material exists in the Earth that may impede drilling or otherwise be detrimental (e.g., consider a salt dome, etc.), where a formation is laterally extensive (e.g., consider a relatively thin yet laterally extensive reservoir), where multiple bores are to be drilled from a single surface bore, where a relief well is desired, etc.

[0060] One approach to directional drilling involves a mud motor; noting that a mud motor may present some challenges depending on factors such as rate of penetration (ROP), transferring weight to a bit (e.g., weight on bit, WOB) due to friction, etc. A mud motor may be a positive displacement motor (PDM) that operates to drive a bit during directional drilling. A PDM operates as drilling fluid is pumped through it where the PDM converts hydraulic power of the drilling fluid into mechanical power to cause the bit to rotate. A PDM may operate in a so-called sliding mode, when the drillstring is not rotated from the surface.

[0061] An RSS may drill directionally where there is continuous rotation from surface equipment, which may alleviate the sliding of a steerable motor (e.g., a PDM). An RSS may be deployed when drilling directionally (e.g., deviated, horizontal, or extended-reach wells). An RSS may aim to minimize interaction with a borehole wall, which may help to preserve borehole quality. An RSS may aim to exert a relatively consistent side force akin to stabilizers that rotate with the drillstring or orient the bit in the desired direction while continuously rotating at the same number of rotations per minute as the drillstring.

[0062] The LWD module 254 may be housed in a suitable type of drill collar and may contain one or a plurality of selected types of logging tools (e.g., NMR unit or units, etc.). It will also be understood that one or more LWD and / or MWD modules may be employed at one or more positions. An LWD module may include capabilities for measuring, processing, and storing information, as well as for communicating with the surface equipment. In the illustrated example, the LWD module 254 may include a seismic measuring device (e.g., sonic, etc.), an NMR measuring device, a resistivity measuring device, etc.

[0063] The MWD module 256 may be housed in a suitable type of drill collar and may contain one or more devices for measuring characteristics of the drillstring225 and the drill bit 226. As an example, the MWD module 256 may include equipment for generating electrical power, for example, to power various components of the drillstring 225. As an example, the MWD module 256 may include the telemetry equipment 252, for example, where the turbine impeller may generate power by flow of the mud; it being understood that other power and / or battery systems may be employed for purposes of powering various components. As an example, the MWD module 256 may include one or more of the following types of measuring devices: a weight-on-bit measuring device, a torque measuring device, a vibration measuring device, a shock measuring device, a stick slip measuring device, a direction measuring device, and an inclination measuring device.

[0064] As an example, one or more measuring devices may be included in a drillstring (e.g., a BHA, etc.) where, for example, measurements may support one or more of geosteering, geostopping, trajectory optimization, etc.

[0065] Fig. 2 also shows some examples of types of holes that may be drilled. For example, consider a slant hole 272, an S-shaped hole 274, a deep inclined hole 276 and a horizontal hole 278.

[0066] As an example, a drilling operation may include directional drilling where, for example, at least a portion of a well includes a curved axis. For example, consider a radius that defines curvature where an inclination with regard to the vertical may vary until reaching an angle between about 30 degrees and about 60 degrees or, for example, an angle to about 90 degrees or possibly greater than about 90 degrees. As an example, a trajectory and / or a drillstring may be characterized in part by a dogleg severity (DLS), which may be a two-dimensional parameter specified in degrees per 30 meters (e.g., or degrees per 100 feet).

[0067] As an example, a directional well may include several shapes where each of the shapes may aim to meet particular operational demands. As an example, a drilling process may be performed on the basis of information as and when it is relayed to a drilling engineer. As an example, inclination and / or direction may be modified based on information received during a drilling process.

[0068] Referring again to Fig. 2, the wellsite system 200 may include one or more sensors 264 that are operatively coupled to the control and / or data acquisition system 262. As an example, a sensor or sensors may be at surface locations. As an example, a sensor or sensors may be at downhole locations. As an example, asensor or sensors may be at one or more remote locations that are not within a distance of the order of about one hundred meters from the wellsite system 200. As an example, a sensor or sensor may be at an offset wellsite where the wellsite system 200 and the offset wellsite are in a common field (e.g., oil and / or gas field).

[0069] As an example, one or more of the sensors 264 may be provided for tracking pipe, tracking movement of at least a portion of a drillstring, etc.

[0070] As an example, the system 200 may include one or more sensors 266 that may sense and / or transmit signals to a fluid conduit such as a drilling fluid conduit (e.g., a drilling mud conduit). For example, in the system 200, the one or more sensors 266 may be operatively coupled to portions of the standpipe 208 through which mud flows. As an example, a downhole tool may generate pulses that may travel through the mud and be sensed by one or more of the one or more sensors 266 (e.g., consider mud-pulse telemetry). In such an example, the downhole tool may include associated circuitry such as, for example, encoding circuitry that may encode signals, for example, to reduce demands as to transmission. As an example, circuitry at the surface may include decoding circuitry to decode encoded information transmitted at least in part via mud-pulse telemetry. As an example, circuitry at the surface may include encoder circuitry and / or decoder circuitry and circuitry downhole may include encoder circuitry and / or decoder circuitry. As an example, the system 200 may include a transmitter that may generate signals that may be transmitted downhole via mud (e.g., drilling fluid) as a transmission medium.

[0071] Analysis of formation information acquired by one or more tools may reveal features such as, for example, vugs, dissolution planes (e.g., dissolution along bedding planes), stress-related features, dip events, etc. As an example, a tool may acquire information that may help to characterize a reservoir, optionally a fractured reservoir where fractures may be natural and / or artificial (e.g., hydraulic fractures). A reservoir may be a porous formation where fluid may be within various pores of the porous formation and amenable to movement (e.g., to produce fluid from the reservoir). As an example, information acquired by a tool or tools may be analyzed using a framework such as the TECHLOG framework (SLB, Houston, Texas). As an example, the TECHLOG framework may be interoperable with one or more other frameworks such as, for example, the PETREL framework (SLB, Houston, Texas). As an example, a computational environment such as, for example, the DELFIenvironment (SLB, Houston, Texas) may be utilized, which may provide for utilization of the PETREL framework and other frameworks, optionally in interrelated manners.

[0072] As an example, directional drilling may involve commencing drilling of a substantially vertical section where, at a designated depth, which may be referred to as a kickoff point (KOP), drilling may begin to increase inclination to form a build section. After drilling at least a portion of a build section, directional drilling may transition to landing, which may be a process of increasing the total vertical depth (TVD) and inclination until a trajectory reaches a desired point where a substantially straight section may be drilled. For example, consider drilling of a horizontal or nearhorizontal section in a desired reservoir formation. As an example, a soft landing may be a landing where a specific inclination (e.g., 80 degrees to 85 degrees) is maintained until a formation top may be confirmed. Thereafter, a trajectory may be drilled horizontally after such a confirmation (e.g. to maintain a trajectory within a reservoir layer without crossing the formation top, etc.). As an example, a landing point may coincide with the heel of a trajectory, which may be a point where inclination reaches horizontal.

[0073] During well planning, various factors may be utilized to determine a suitable trajectory, which may be referred to as a planned trajectory. For example, consider dogleg seventy (DLS), which may be defined as the rate of change in a trajectory, measured in degrees per 30 meters or 100 feet. Other factors may include BHA capabilities, drillstring capabilities, logging tool capabilities, casing ability to pass through one or more doglegs, etc. In various instances, rig specifications may be considered, such as, for example, maximum torque and pressure available from surface systems. As an example, one or more geologic features (e.g., faults, fractures, formation changes, fluids, etc.) may be considered. For example, relatively soft formations may limit build rates, and formation dip may cause a bit to walk, or drift laterally. Local knowledge of drilling behavior may help to adjust angle to allow a trajectory to intercept a desired target.

[0074] The development of reliable mud motors advanced directional drilling. For example, consider use of a drillstring where drilling direction may be controlled using a bent motor housing. In such an example, the bent motor housing may be oriented to point a drill bit in a desired direction. A mud motor can utilize mud (drilling fluid) pumped through a rotor and stator assembly to turn a bit without demand for rotating a drillstring from the surface. In various instances, directionaldrilling may involve selecting a mode of drilling from a rotating mode (e.g., rotary mode) and a sliding mode (e.g., a slide mode). In a rotating mode, a rotary table or top drive can rotate an entire drillstring to transmit power to a bit; whereas, in a sliding mode, a bend and a bit may be oriented in a desired direction where a downhole mud motor rotates the bit.

[0075] As an example, one or more downhole surveys may be taken during field operations where, for example, a bit may be stationary (e.g., to reduce noise, to maintain a relatively constant position during a survey, etc.). A survey may indicate the direction of a bit and a toolface, or orientation of downhole measurement sensors of a drillstring. Such measurements may be assessed such that a trajectory may be appropriately adjusted, for example, to intercept the next target along a planned trajectory.

[0076] As explained, in directional drilling, different modes of drilling may be employed, such as, for example, rotary drilling where a drillstring is rotated at surface by a rotary table or a top drive and, for example, slide drilling where a positive displacement motor (PDM) of a drillstring (e.g. a mud motor) may be utilized to rotate a drill bit of a drillstring without unidirectional, continuous rotation of the drillstring from surface by a rotary table or a top drive; noting that bidirectional rotation may be employed (e.g., oscillating).

[0077] As explained, slide drilling may utilize a mud motor for rotating a bit of a drillstring downhole where a BHA of the drillstring has been fitted with a bent sub or a bent housing mud motor, or both, for directional drilling. Sliding tends to be a predominant technique for building and adjusting borehole angle in directional drilling operations. As explained, directional drilling can involve pointing a bit in a desired direction, which may be accomplished through bent sub, which has a small angle offset from the axis of a drillstring, and a measurement device to determine the direction of offset. In such an approach, a bit can be rotated with a mud motor such that the bit drills in the direction that it points. Once a desired borehole direction is attained, directional drilling may transition to rotary drilling where the entire drillstring is rotated to drill straight rather than at an angle. As an example, by controlling the amount of borehole drilled in a sliding mode versus a rotating mode, a trajectory may be controlled with a desired amount of precision.

[0078] Fig. 3 shows an example of a drilling assembly 300 in a geologic environment 301 that includes a borehole 303 where the drilling assembly 300 (e.g.,a drillstring) includes a bit 304 and a motor section 310 where the motor section 310 may drive the bit 304 (e.g., cause the bit 304 to rotate and deepen the borehole 303).

[0079] As shown, the motor section 310 may include a dump valve 312, a power section 314, a surface-adjustable bent housing 316, a transmission assembly 318, a bearing section 320 and a drive shaft 322, which may be operatively coupled to a bit such as the bit 304. The motor section 310 of Fig. 3 may be a POWERPAK family motor section (SLB, Houston, Texas) or another type of motor section.

[0080] A power section may convert hydraulic energy from drilling fluid into mechanical power to turn a bit. For example, consider the reverse application of the Moineau pump principle. During operation, drilling fluid may be pumped into a power section at a pressure that causes the rotor to rotate within the stator where the rotational force is transmitted through a transmission shaft and drive shaft to a bit.

[0081] As an example, a power section may include a housing, a rotor and a stator where the rotor and the stator may be characterized by a ratio. For example, consider one or more of the POWERPAK family of motor sections, which may include ratios of 1 :2, 2:3, 3:4, 4:5, 5:6 and 7:8 with corresponding lobe configurations.

[0082] During operation, a rotor and a stator can form a continuous seal at their contact points along a straight line, which produces a number of independent cavities. As fluid is forced through these progressive cavities, it causes the rotor to rotate inside the stator. The movement of the rotor inside the stator is referred to as nutation. For each nutation cycle, the rotor rotates by a distance of one lobe width. The rotor nutates each lobe in the stator to complete one revolution of a bit box. For example, a motor section with a 7:8 rotor / stator lobe configuration and a speed of 100 RPM at the bit box will have a nutation speed of 700 cycles per minute.

[0083] For a mud motor, generally, torque output increases with the number of lobes, which corresponds to a slower speed. Torque also depends on the number of stages where a stage is a complete spiral of a stator helix. Power is defined as speed times torque; however, a greater number of lobes in a motor does not necessarily mean that the motor produces more power. Motors with more lobes tend to be less efficient because the seal area between the rotor and the stator increases with the number of lobes.

[0084] As to differential pressure, it may be defined as a difference between on-bottom and off-bottom drilling pressure, which is generated by a rotor / stator section (power section) of a motor. As mentioned, for a larger pressure difference, there tends to be higher torque output and lower shaft speed. A motor that is run with differential pressures greater than recommended can be more prone to premature chunking of an elastomeric stator liner. Such chunking may follow a spiral path or be uniform through a stator liner. A life of a power section can depend on factors that can lead to chunking (e.g., damage to a stator), which may depend on characteristics of a rotor (e.g., surface characteristics, etc.).

[0085] As to trajectory of a wellbore to be drilled, it can be defined in part by one or more dogleg severities (DLSs). Rotating a motor in high DLS interval of a well can increase risk of damage to a stator. For example, the geometry of a wellbore can cause a motor section to bend and flex. A power section stator can be relatively more flexible that other parts of a motor.

[0086] A motor can have a power curve. A test can be performed using a dynamo meter in a laboratory, for example, using water at room temperature to determine a relationship between input, which is flow rate and differential pressure, to power output, in the form of RPM and torque. Such information can be available in a motor handbook. However, what is actually happening downhole can differ due to various factors. For example, due to effect of downhole pressure and temperature, output can be reduced (e.g., the motor power output). Such a reduction may lead one to conclude that a motor is not performing. In response, a driller may keep pushing such that the pressure becomes too high, which can damage elastomeric material due to stalling (e.g., damage a stator).

[0087] As to the surface-adjustable bent housing 316, as an example, it may provide for setting an angle between a mud motor and a drill bit, for example, to achieve build or turn while sliding. As an example, a bent housing may be dialed to a particular number of degrees, such as, for example, 1 .8 degrees to 2.8 degrees on a build section, and 1.5 degrees to 1.8 degrees on a lateral section (e.g., a horizontal section).

[0088] Fig. 3 also shows examples of components 340 such as, for example, sensors 350, circuitry 360 and a geosteering actuator 370. As shown, the sensors 350 may include a conductivity and dielectric sensor 352, a gamma sensor 354 and one or more other sensors 356. As shown, the circuitry 360 may include a processor362, memory 364 and one or more other types of circuitries 366. As shown, the geosteering actuator 370 may be operatively coupled to the circuitry 360 and the sensors 350. For example, the circuitry 360 may process signals (e.g., measurements or sensor data) of the sensors 350 to generate one or more commands for actuation of the geosteering actuator 370. In the example of Fig. 3, the geosteering actuator 370 may provide for one or more of PDM actuation and bent sub actuation, for example, to orient the drill bit 304.

[0089] Fig. 4 shows an example of a GUI 400 with example GUIs 410 and 430 for operations. For example, a dashboard can be rendered to a display with performance monitoring and residual life monitoring. At the beginning, a driller may use high differential pressure to push the performance of a mud motor, but as long as the consumed fatigue life reaches a limit, information can be rendered to assure care is taken in operations to make sure the motor can finish in one run. In such an example, there can be an improved shoe-to-shoe ROP.

[0090] As an example, an “Auto ROP” GUI for real time drilling parameter guidance may be rendered to a display. In such an example, using more accurate downhole power curves may help to provide more accurate ROP prediction, as well as the operating limits for drilling parameters.

[0091] As an example, the GUI 410 may be run in real time during a drilling operation. In such an example, a plot of remaining fatigue life may be rendered with respect to time and / or depth. In the example of Fig. 4, a limit is set at 20%, illustrated by a vertical line. As time passes, the dotted vertical line can move to the left toward the limit where the past estimates are shown as a curve such that a driller may understand what types of actions resulted in decreases or increases in the rate at which remaining fatigue life diminished. The GUI 410 also shows depth and rate of penetration (ROP) along with differential pressure and a plot of RPM and torque versus differential pressure where RPM decreases and torque increases with differential pressure.

[0092] The GUI 430 may be run in real time where sensor data can be utilized to plot a point on a plot of weight on bit (WOB) versus surface RPM. As shown, the plot of the GUI 430 includes contours along with identified parameter values such as top drive power, maximum ROP hole cleaning, maximum WOB due to differential pressure and maximum RPM. An intersection of top drive power and maximumROP hole cleaning is shown where a box can indicate an operational regime for drilling operations.

[0093] As shown in the example of Fig. 4, the GUI 430 may include a graphical control for viewing and / or adjusting one or more of setpoints for an oscillation controller (e.g., consider forward direction torque, forward direction angle, reverse direction torque, and reverse direction angle).

[0094] As an example, a method can include design or selection of a bit by running an IDEAS platform dynamics simulation (Schlumberger Limited, Houston, Texas), which allows for comparing options by looking at the ROP performance versus shock and vibration. For a motor BHA, simulation results for a bit may be affected by the behavior of the motor. By using more accurate downhole power curve from motor modeling, a workflow may output better bit / motor compatibility for best performance and stability.

[0095] The IDEAS integrated dynamic design and analysis platform provides 4D, time-based simulations that capture a drillstring and wellbore geometry for modeling of cutting interface designs for drilling rock and milling metal applications. The IDEAS dynamic modeling platform includes a suite of solid mechanics and programs that enable modeling bit-to-rock and mill-to-metal interactions in a virtual environment to customize material design in real time. The IDEAS platform can use theoretical calculations, numerical packages (e.g., finite element, etc.), in-house drill rig tests, full-scale rig tests, and field tests with MWD or downhole drilling dynamics sensors.

[0096] As explained, rotary drilling or slide drilling may be utilized at a given point in time during directional drilling. As to rate of penetration (ROP), slide drilling (e.g., a slide mode) tends to be less efficient (e.g., lateral reach may come at the expense ROP). In various instances, ROP for slide drilling may be a fraction of ROP for rotary drilling (e.g., consider approximately 0.05 to approximately 0.5). Further, transitioning from rotary drilling to slide drilling may incur some amount of nonproductive time (NPT). For example, to initiate a slide, a driller may first orient a bit to drill in alignment with a planned trajectory, which involves stopping drilling to pull the bit off-bottom and to reciprocate the drillstring to release torque that may have built up within the drillstring. In such an example, a driller may orient a downhole mud motor using real-time MWD toolface measurements to ensure the specified trajectory deviation is obtained. Following this time-consuming orientation process,the driller may set a top drive brake to prevent further rotation of the drillstring from the surface. A slide can begin one the driller eases off a drawworks brake to control the hook load, which, in turn, can affect magnitude of weight imposed at the bit. As an example, minor right and left torque adjustments may be applied to steer the bit in an effort to keep the trajectory on course. As the depth or lateral reach increases, the drillstring is subjected to greater friction and drag. These forces, in turn, affect a driller’s ability to transfer weight to the bit and control toolface orientation while sliding, making it difficult to attain sufficient ROP and maintain trajectory to the target.

[0097] Various types of slide problems may result in increased drilling time, which may adversely impact project economics and ultimately limit the length of a lateral section. The capability to transfer weight to the bit affects several aspects of directional drilling. A driller may transfer weight to a bit by easing, or slacking off, a brake, which acts to transfer some of the hook load, or drillstring weight, to the bit. The difference between the weight imposed at the bit and the amount of weight made available by easing the brake at the surface is primarily caused by drag. As the horizontal departure of a wellbore increases, so does the longitudinal drag of the drillstring along a borehole. Controlling weight at the bit throughout the sliding mode can be made even more challenging due to drillstring elasticity (e.g., consider nonproportionally of drillstring movement). As an example, elasticity may cause one segment of a drillstring to move while one or more other segments remain stationary or move at different velocities.

[0098] As an example, poor hole cleaning may affect weight transfer. In a sliding mode, hole cleaning may be less efficient as unidirectional drillstring rotation is lacking, which tends to help facilitate turbulent flow. Without such rotation, there may be an increase in accumulation of solids, for example, on a low side of a borehole in cuttings beds that increase friction on drillpipe, making it difficult to maintain a constant WOB.

[0099] Differences in frictional forces between the drillpipe inside of casing versus that in open hole can cause weight to be released suddenly, as can hang-ups caused by keyseats and ledges. A sudden transfer of weight to the bit that exceeds a downhole motor’s capacity may cause bit rotation to abruptly halt and the motor to stall. Frequent stalling can damage the stator component of the motor, depending on the amount of the weight transferred. In various instances, a driller may aim tooperate a mud motor within a relatively narrow load range to maintain an acceptable ROP without stalling.

[0100] At a console, an impending stall might be indicated by an increase in WOB but possibly without a corresponding upsurge in downhole pressure to signal that an increase in downhole WOB has actually occurred. At some point, a WOB indicator may show an abrupt decrease, indicating a sudden transfer of force from the drillstring to the bit.

[0101] Increases in drag impede a driller’s ability to remove torque downhole, making it more difficult to set and maintain toolface orientation. Toolface orientation is affected by torque and WOB. When weight is applied to the bit, torque at the bit increases. Torque is transmitted downhole through the drillstring, which, according to convention, turns to the right, in a clockwise direction. As weight is applied to the bit, reactive torque, acting in the opposite direction (counter-clockwise), also develops. This left-hand torque is transferred upward from the bit to the lower part of the drillstring. Reactive torque builds as weight is increased, reaching its maximum value when a mud motor stalls. This reactive torque may affect orientation of a mud motor; noting that reactive torque may be taken into account as a driller tries to orient a mud motor from surface.

[0102] In some scenarios, reactive torque may cause one or more components to unscrew. For example, consider an off-bottom pressure reading of 500 psi and an on-bottom reading of 750 psi where, while drilling, too much weight is applied to the bit, causing it to stop turning (e.g., a stall), which may be associated with an increased pressure (e.g., consider 825 psi). In such a scenario, a bit may be pulled off-bottom followed by resuming drilling, which may transmit reactive torque up the drillstring that may cause a mud motor or other component to unscrew. As an example, when a mud motor stalls, a controller may turn a pump off, and then pull the drill bit off-bottom, followed by restarting the pump and advancing to bottom to go on-bottom.

[0103] In practice, the driller can make minor shifts in toolface orientation by changing downhole WOB, which alters the reactive torque. To produce larger changes, a driller may lift a bit off-bottom and reorient the toolface. However, even after a specified toolface orientation is achieved, maintaining that orientation may be challenging. As explained, longitudinal drag increases with lateral reach, and weight transfer to a bit may become more erratic along the length of a horizontal section,thus allowing reactive torque to build and consequently change the toolface angle. Effort and time spent on orienting a toolface can adversely impact productive time on the rig.

[0104] In various instances, a drillstring may be oscillated rotationally, bidirectionally in clockwise and counter-clockwise directions, for example, using a top drive. Such an approach may involve torque rocking (e.g., oscillating) to reduce longitudinal drag along part of a drillstring while slide drilling. Oscillating can subject an upper portion of a drillstring to near-constant tangential motion, producing a dynamic friction coefficient, which tends to be lower than a static friction coefficient created by nonrotating pipe. Oscillation may also help reduce axial friction along a drillstring. However, such motion is not necessarily transmitted to the bit, as various other phenomena can be at play.

[0105] Torque from a top drive can rotate a drillstring from the surface down to a maximum rocking depth, where friction against the side of a borehole prevents the pipe from turning. At the same time, as a mud motor turns a bit, it generates a reactive torque in the opposite direction. This torque is transmitted a short distance up the drillstring until it is overcome by friction at some point between the bottom of the borehole and the BHA, which may be referred to as the point of interference. Throughout the interval between the bit and the point of interference, the velocity component of reactive torque imposes a reduction in longitudinal drag along the lower part of the drillstring and possibly a change in toolface orientation. Between the depth where surface torque is overcome by friction and the point where reactive torque is overcome by friction, the drillstring does not rotate. This section of drillstring, which has no tangential motion, moves by sliding and is subject to static friction, which tends to be greater than the dynamic friction of a drillstring in motion.

[0106] The location of the point of interference can vary with changes in the amount of reactive torque. To efficiently minimize the sliding interval between the depth of rocking and the point of interference while keeping the maximum rocking depth relatively constant, an automated control system may be implemented. The amount of surface torque supplied by a top drive can dictate in large part how far downhole the rocking motion will be transmitted. This relationship between torque and rocking depth may be modeled using a torque and drag framework (e.g., T&D framework). As an example, using inputs from surface hook load and standpipe pressure as well as downhole MWD toolface angle, a system may automaticallydetermine an amount of surface torque to transfer weight downhole to a bit, which may be performed without having to come off-bottom to make one or more toolface adjustments. Such an approach can result in an efficient drilling operation and reduced wear on downhole equipment.

[0107] As an example, a system may be implemented for slide drilling (e.g., a slide mode or sliding mode). For example, to begin slide drilling, a system may be activated to initiate an automated rocking action (e.g., oscillating action), which alternately applies torque to the right and the left. In such an approach, the transfer of weight may be controlled by varying surface torque to compensate for changes in reactive torque. As an example, adjustments in toolface angle may be achieved through additional torque pulses during rocking cycles. As an example, for every torque cycle to the left or right, a corresponding differential pressure peak occurs, indicating that the weight is being transferred to the bit. To adjust the toolface orientation, a driller (e.g., human and / or machine) may control magnitude and frequency of torque pulses during a rocking cycle.

[0108] As explained, a rig and / or a drillstring may include one or more assemblies to provide torque and energy for rotating a drill bit to cut through a formation. As explained, a top drive and a mud motor can provide for rotary drilling and slide drilling where, for example, during slide drilling, the top drive may be utilized to oscillate at least a portion of a drillstring that includes a mud motor that drives rotation of a bit. As explained, a top drive may be operatively coupled to a hoisting system such that a drawworks may be utilized to move the top drive above a rig floor (e.g., vertically along a rig derrick).

[0109] As explained, a top drive is a rotational mechanical device providing torque for a drill bit to drill through formations while a mud motor transforms fluid flow (e.g., a fluid pressure differential) to torque for a drill bit. As shown in the example of Fig. 3, a mud motor may be positioned above a bit where mud pumped from surface can transport cuttings from the bottom of a borehole and also create motion that rotates the bit (e.g., transforming hydraulic energy into mechanical energy).

[0110] As explained, slide drilling may be implemented for drilling in a desired direction without constant unidirectional pipe rotation from surface. During slide drilling, a bit rotation may be powered solely by a mud motor where mud is a power source. By adjusting a top drive quill position, a driller (e.g., human and / or machine)can adjust the toolface to ensure that a borehole more closely follows a desired borehole trajectory (e.g., planned, re-planned, etc.).

[0111] As explained, during sliding, oscillation (e.g., rocking) may be employed. For example, an oscillation control sequence may be repeatedly and sequentially utilized by rotating a top drive shaft and at least a portion of a drillstring forward and reverse (e.g., clockwise and counter-clockwise). Such bidirectional rotations may be run in a restricted fashion such that excessive rotations do not occur that may disrupt the toolface. Oscillating can help a drillstring overcome one or more of various types of friction, for example, consider static friction along a wellbore, which may thereby help to improve weight transfer to bit to increase ROP.

[0112] As an example, an oscillation controller may implement an oscillation control scheme that flexibly and seamlessly switches oscillation system controls based at least in part on responses as to top drive shaft angles and / or torque. Such an approach, may implement a multiloop controller that systematically integrates regulations of angle position, rotational speed, and torque. As an example, an oscillation controller may provide for implementation of a dynamic control scheme that may systematically combine position control, speed control and torque control for improved slide drilling. As an example, an oscillation controller may provide for taking action associated with reactive torque. For example, where a stall may occur during slide drilling, an oscillation controller may provide for rotation in a direction that may help to counter reactive torque associated with the stall, which, as explained, may increase risk of equipment decoupling, damage, etc. By taking action to counter reactive torque in a stall scenario, an oscillation controller may help to reduce one or more risks.

[0113] As an example, an oscillation controller can provide flexibility on regulating operation based on angle and torque in which system modes may be switched automatically. As an example, flexible rotational direction controls may act in a come-first-serve-first manner such that, if one or more torque setpoints are reached ahead of one or more angle distance setpoints, then rotation direction will be changed. Otherwise, rotation may continue in a direction until reaching one of the desired angle distance setpoints (e.g., an angle distance setpoint for that direction). Such an approach can provide flexible operations, for example, consider using mixed cycles based on angle and / or torque setpoints and / or responses that may be viable for offering more options in directional drilling practice. As explained, anoscillation controller may implement a multiloop controller where, for example, angle position, speed and torque may be regulated such that setpoints are adhered to (e.g., noting that some control techniques may provide for some amount of overshoot). As an example, an oscillation controller may reduce risk of excessive rotations that may disrupt the toolface, for example, by controlling for angle and torque the risk of excessive rotations that may disrupt the toolface may be reduced. As an example, an oscillation controller may improve operational safety, which may be safety for humans, equipment, borehole, etc.

[0114] Fig. 5 shows an example of a method 500 that includes an input block 504 for input of forward angle setpoint, forward torque set point, reverse angle setpoint, and reverse angle torque, where forward may correspond to clockwise rotation (e.g., bit rotation direction) and where reverse may correspond to counterclockwise rotation (e.g., bit reaction direction). As shown, the method 500 may include a computation block 508 for computing a forward angle distance, which may be based at least in part on a decision block 542 as to whether a top drive is stopped, a deceleration block 546 to decelerate a top drive to stop (see no branch) and / or a decision block 538 as to whether a reverse angle setpoint has been reached (see yes branch).

[0115] As shown in the example of Fig. 5, a rotation block 512 can provide for rotating forward toward the forward angle set point where a decision block 516 decides whether the forward torque setpoint has been reached. As shown per a no branch of the decision block 516, the method 500 may proceed to another decision block 518 that decides whether the forward angle setpoint has been reached; otherwise, per a yes branch of the decision block 516, the method 500 may proceed to another decision block 520 that decides whether a top drive is stopped. As explained with respect to the blocks 542 and 546, if a top drive is not stopped, a deceleration block 522 may act to decelerate the top drive to stop. As explained, the computation block 508 may compute a forward angle distance as associated with forward rotation (e.g., clockwise).

[0116] As shown in the example of Fig. 5, a computation block 526 may compute a reverse angle distance as associated with reverse rotation (e.g., counterclockwise). Such a computation block may provide input to a rotating block 530 for rotating in reverse toward the reverse angle setpoint where a decision block 534 decides whether the reverse torque setpoint has been reached, which, per a yesbranch, may proceed to the decision block 542 or, per a no branch, may proceed to the decision block 538 that decides whether the reverse angle setpoint has been reached. The method 500 may then continue in a looping manner (e.g., iteratively) to the computation block 508. While the example method 500 of Fig. 5 shows the forward rotation prior to the reverse rotation, such a method may proceed with reverse rotation prior to forward rotation.

[0117] As an example, an oscillation controller may operate in a manner that may be described with respect to a series of actions. For example, consider an input action (e.g., Action 1 ) where a desired angle for forward direction 0fSpd, a desired angle for reverse direction 0sr®v, a torque setpoint for forward direction T^dand for reverse direction Tvare received. In such an approach, an oscillation controller may utilize a convention where values in the forward direction are positive numbers while those in the reverse direction are negative numbers. As an example, a current position 0Qmay be generally set as a neutral (zero) angle point to start rotating.

[0118] As to a subsequent action (e.g., Action 2), consider, based on the forward angle setpoints, computing the forward angle distance(1 ) to reach before turning direction to rotate reversely:where in the case of reverse rotation, 0fSpdwould be replaced by 0rSpV, and 0Owould be the current position with the top drive at stop.

[0119] As to a subsequent action (e.g., Action 3), given the computed angle distance, the top drive may start rotating forward as a multiloop controller may be implemented to regulate position, speed, and torque.

[0120] Fig. 6 shows an example of a multiloop controller 600 that can include an angle distance set point block 604, a mixing junction 608 that accounts for a current angle distance as may be generated by an integrator block 672. As shown, the output of the mixing junction 608 may be provided to a position controller 612 that can output a speed setpoint for receipt by a max / min speed block 616, which may feed to a mixing junction 620 that accounts for speed feedback from a top driveand / or a drillstring 650. As shown, the mixing junction 620 can provide input to a speed controller 624 that can output a torque setpoint for receipt by a forward and reverse torque setpoint block 628, which can provide output to a mixing junction 632 that accounts for torque feedback from the top drive and / or the drillstring 650. As shown in the example of Fig. 6, output of the mixing junction 632 can be provided to a torque controller 636 that can output a signal to a pulse width modulation (PWM) block 640 that may control current to the top drive (e.g., a top drive with one or more electric motors) of the top drive and drillstring 650. Upon control of the top drive and the drillstring 650, the multiloop controller 600 can provide torque feedback (e.g., via one or more types of circuitry associated with the top drive and / or the drillstring 650), which may be received by a block 662 that decides whether a forward or a reverse torque setpoint has been reached, where, if so, the multiloop controller 600 may proceed to a generation block 664 for generation of a new angle distance setpoint, which may be utilized per the angle distance setpoint block 604.

[0121] As shown in the example of Fig. 6, multiple loops can exist where one loop may pertain to torque and another loop may pertain to speed, where speed and time may be utilized to determine an angular distance (e.g., via the integrator block 672).

[0122] As shown in the example of Fig. 6:A. an outer loop may be considered to be a position control loop. With a forward angle setpoint input and a current angle (distance) feedback dfdbk , a position error 0errper Equation (2) may be generated as an input to the position controller: {<-)\As an example, a controller can include P, I and / or D control components. As an example, a controller may be tailored using one or more types of components to determine and output a corresponding speed setpoint given magnitude and sign of input. As an example, a speed setpoint may generally be limited by maximum and / or minimum positive numbers which may be set and / or adjusted (e.g., by human and / or machine).B. In the example of Fig. 6, a middle loop may be a speed control loop. For example, consider a speed controller as including components for PID or PI control such that the multiloop controller 600 may generate torque outputs using one or more speed error inputs. As an example, torque outputs may be limited by one or more input values and / or by using torque setpoints Tsf dor Tv(see, e.g., above). As shown, resulting torque outputs may be subsequently sent to the inner loop.C. As shown, the inner loop may be a torque control loop. For example, for AC and / or DC motors, motor torque may be dominantly determined by electrical current such that torque control may be effectuated via current control. As an example, a torque / current loop may be a feedback control loop. As an example, a multiloop controller may monitor torque feedback closely.

[0123] As an example, yet another action (e.g., Action 4), such an action may include, during a process of forward rotation, checking torque feedback at each control time step to see if the forward torque setpoint T^Jdhas been reached. Such an approach is illustrated in the example of Fig. 6 (see, e.g., upper right). In such an example, if reached, then the multiloop controller 600 may decelerate the top drive to stop and then proceed to another action (e.g., Action 5). Whereas, if not reached, then control may continue with rotating forward and, as appropriate, proceed to another action (e.g., Action 6).

[0124] As an example, an action (Action 5) following decelerating of the top drive may, given a present stop angle position and reverse angle setpoint, involve computing a new angle distance using Equation (1 ) to be an input for the position controller. Thereafter, the multiloop controller may proceed to an action (Action 7) rotating the top drive reversely toward the reverse angle setpoint with motion controlled by the multiloop controller (see above).

[0125] As explained, a multiloop controller may include as an action (e.g., Action 6) computing a reverse angle distance setpoint, for example, using Equation (3), below, if the forward angle setpoint is reached (e.g., Equation (3) may be an alternate form of Equation (1 )):

[0126] As to Action 7, it may pertain to a scenario where the top drive is rotating reversely toward the reverse angle setpoint with motion controlled by the multiloop controller (e.g., per Action 3).

[0127] As to yet another action (e.g., Action 8, which may be similar to Action4), torque feedback may be checked to see if a reverse torque setpoint as in Action 1 is reached. If reached and the top drive motor is not stopped, this action may call for decelerating to stop and to proceed to another action (e.g., Action 9). If not reached, the multiloop controller may continue rotating reversely until the reverse angle setpoint is reached and then proceed to another action (e.g., Action 10).

[0128] s to yet another action (e.g., Action 9, which may be similar to Action5), with the present stop angle position and forward angle setpoint, such an action may include computing a new forward angle distance using Equation (1 ) to be an input for the position controller. Thereafter, the multiloop controller may proceed to Action 3.

[0129] As an example, an action (e.g., Action 10, which may be similar to Action 6), may involve computing the forward angle distance setpoint if the reverse angle setpoint is reached using Equation (4) which may be another alternate form of Equation (1 ):

[0130] Thereafter, the multiloop controller may proceed to Action 3.

[0131] As an example, an oscillation controller may provide for receipt of a stop command, for example, via equipment, user input, etc. In such an example, for a normal stop, a top drive may return to an initial shaft angle position at start; noting that it may also stop right away, for example, responsive to an abort / disable command, which may be issued for an emergency situation.

[0132] As an example, one or more setpoints may be adjusted, optionally automatically. For example, consider adjusting one or more setpoints responsive to behavior of a drillstring in a borehole. In such an example, if a torque setpoint is being reached consistently before an angle setpoint, then the torque setpoint may be adjusted. As an example, one or more setpoints may be adjusted in an effort to helpmaintain a toolface value. As an example, one or more setpoints may be adjusted responsive to one or more measurements acquired by one or more downhole tools. For example, consider one or more measurements suitable for use in geosteering where a measurement or measurements may indicate a change in formation characteristics, which may cause a drill bit to develop more or less reactive force as may be relevant to how a drillstring behaves responsive to surface driven oscillations in one direction or another. For example, if reactive torque is reduced, then one or more torque setpoints may be adjusted. As an example, a measurement may be a downhole measurement of torque, which may be accompanied by one or more measurements as to formation characteristics. Given a flexible approach to oscillation control, oscillations may be controlled to improve drilling, equipment integrity, borehole integrity, safety, emissions, etc., in a manner that may account for drillstring behavior, formation characteristics, directional adjustments, etc.

[0133] As an example, an oscillation controller may provide for feedback germane to making a transition from slide drilling to rotary drilling. For example, depending on type of setpoint reached first, an oscillation controller may call for a transition from slide drilling to rotary drilling. In such an example, where a torque setpoint may be reached before an angle setpoint, that may indicate that one or more issues may exist as to delivery of WOB. In such an example, as rotary drilling may more effectively deliver WOB, a transition may occur to rotary drilling; noting that a planned trajectory may be revised where a transition to rotary drilling may cause an unacceptable amount of deviation from the planned trajectory. As explained, rotary drilling may provide for better hole cleaning than slide drilling. In instances where torque may be elevated due in part to hole cleaning, a transition to rotary drilling may provide for improved hole cleaning, which may be followed by a transition back to slide drilling.

[0134] As an example, an oscillation controller may call for one or more types of actions responsive to torque and / or speed feedback. For example, consider calling for a change in mud flow rate in a manner that may depend on torque, for example, in an effort to improve hole cleaning.

[0135] As explained, an oscillation controller may utilize one or more types of measurements to control oscillations and / or to control type of drilling. As an example, an oscillation controller may provide information germane to toolface and drilling direction. For example, where oscillations may accumulate an excess ofrotation in one direction, such an excess may work its way down a drillstring to a bend where the bend may be affected. Toolface may be defined as the orientation of a motor bend. For example, in horizontal drilling it may be measured relative to a vertical line (e.g., up is 0 degrees, down is 180 degrees, right is 90 degrees, left is 270 degrees); whereas, in vertical drilling it may be measured relative to magnetic north (e.g., N is 0M, E is 90M, S is 180M, W is 270M).

[0136] To illustrate how a mixed cycle of using both angle and torque may operate, consider an example where driller personnel at first inputs the four setpoints of forward and reverse angle setpoints and torque setpoints while the expectation and intention are in forward direction torque setpoint would be reached first and in reverse direction angle setpoint would be reached first. In such a scenario, forward angle setpoint and reverse torque setpoint may serve as safe limits that would not be exceeded. In such an example, angle setpoints may still play a role on determining motions of the top drive during the process. In such an example, when a reverse angle setpoint is reached, even though in the forward direction forward torque setpoint is expected to be reached ahead of the forward angle setpoint, the angle setpoint may still be used by the multiloop controller to determine the speed of subsequent forward rotation.

[0137] Fig. 7 shows an example of an assembly 700. As shown, the assembly 700 can include a travelling block 702 that can suspend a top drive 701 via a winch line of a drawworks. The travelling block 702 can support a suspension system 720 that may include a number of tie rods 722. As shown, a gearbox assembly 704 can hang from the suspension system 720. As an example, the gearbox assembly 704 can include one or more motors 705, for example, consider two motors mounted on top of each side to power the top drive 701 . As an example, a retractable dolly 707 may mount to a back of the gearbox assembly 704 to guide the top drive 701 up and down a mast of a drill rig. As an example, a pipehandler assembly 706 may be mounted to the bottom of the gearbox sub assembly 704 where elevator links 708 hang from the pipehandler assembly 706.

[0138] As shown in the example of Fig. 7, a variable frequency drive (VFD) 740, a programmable logic controller (PLC) 750 and / or one or more other components 760 may be provided that may be operative coupled to the top drive 701 , for example, for electric motor control and / or one or more other purposes. As an example, a VFD may include solid-state power electronics conversion circuitrythat may include a rectifier bridge converter, a current link, and an inverter. As an example, a VFD may provide for control of speed and / or torque, for example, by varying frequency. As an example, depending on topology, a VFD may control voltage or current variation. As an example, torque may be determined based at least in part on current.

[0139] As an example, a VFD and / or other circuitry may provide for cleaner VFD operation. As an example, a VFD may operate where a supply is coupled to a rectifier and where a DC link couples the rectifier output to an inverter (e.g., a chopper or switcher) where the inverter can generate PWM output for an AC motor.

[0140] As an example, a variable AC or DC speed drive may employ a six- pulse approach, for example, using a three-phase rectifier. A rectifier, when fed with sinusoidal voltage, may draw non-sinusoidal or non-linear current from a supply. When a supply voltage is distorted and / or imbalanced, uncharacteristic harmonic currents and voltage may also be drawn from the supply.

[0141] As an example, a VFD may provide for control according to quadrants where, for example, Quadrant I provides for driving or motoring, forward accelerating with positive speed and torque; Quadrant II provides for generating or braking, forward braking-decelerating with positive speed and negative torque; Quadrant III provides for driving or motoring, reverse accelerating with negative speed and torque; and Quadrant IV provides for generating or braking, reverse brakingdecelerating with negative speed and positive torque. As explained, a top drive may be controlled for forward rotation, stopping of forward rotation, reverse rotation, and stopping of reverse rotation.

[0142] As an example, for starting rotation of an electric motor, a VFD may initially apply a relatively low frequency and voltage or current and, after start of rotation, the VFD may increase applied frequency and voltage or current at a controlled rate.

[0143] As an example, a system may include one or more torque sensors, for example, consider a sub disposed proximate the top of a drillstring that may provide for acquiring torque measurements and / or consider a current sensor coupled to one or more electric motors that may be used to drive a top drive quill. As an example, an axial load (e.g., weight) on a hook may be measured by one or more hook load sensors, which may be implemented, for example, as strain gauges in a suspension system. As an example, a top drive may include an elevation sensor for determiningelevation of the top drive at a moment in time. As an example, an elevation sensor may be implemented, for example as an acoustic or laser distance measuring sensor. As an example, measurements of elevation with respect to time may be used to determine a rate of axial movement of a drillstring. As an example, an elevation sensor may be implemented as a rotary encoder coupled to a winch drum used to extend and retract a drill line used to raise and lower a top drive. As an example, a computer may control a drilling operation via one or more measured characteristics, which may include, for example, one or more of rate of vertical movement, top drive rotational speed, drillstring rotational speed, torque and axial loading (weight) made at the surface and / or in a MWD module, etc.

[0144] As an example, an oscillation controller may provide for slowing down and / or speeding up rotation depending on a present position and a setpoint. For example, consider an approach where speed of rotation may be based on distance to a target angle. In such an example, where a distance may be 180 degrees, speed may be greater than that for a distance of 30 degrees. In various instances, speed may be controlled to reduce overshoot or risk of overshoot, noting that various control schemes may provide for some amount of overshoot.

[0145] As an example, an oscillation controller may utilize one or more speed limits. For example, consider a speed limit of 100 rpm, 70 rpm, 50 rpm, etc. In general, a speed for oscillation may be less than a speed for rotary drilling using a top drive.

[0146] As explained, a top drive may include multiple motors, which may be provided for sake of redundancy. For example, if one motor experiences an issue, rotary drilling and / or oscillating may continue using another motor. As an example, an oscillation controller may include a mode of operation that accounts for failure of one electrical motor of a top drive such that another electrical motor of the top drive is not operated in a manner that may increase its risk of failure. For example, consider setting one or more speed and / or torque limits to lower values in the instance of an electrical motor failure of a top drive where a remaining electrical motor is utilized for oscillation.

[0147] As an example, an oscillation may include asymmetric oscillation such that rotation in one direction occurs faster or slower than in an opposite direction and / or with lesser or greater torque. As explained, an oscillation controller may provide for flexibility in control, for example, to tailor oscillations in a manner that canimprove one or more of slide drilling, equipment integrity, borehole integrity, emissions, safety, etc. As to emissions, consider an approach that conserves use of electrical power that may be generated by one or more fuel powered generators (e.g., gensets). Where a top drive may utilize less energy, combustion engine emissions may be reduced, which may reduce an overall environmental footprint of drilling operations at a field site.

[0148] As explained, an oscillation controller may provide for flexibility in oscillation control for a drillstring. For example, such a controller may provide for control using one or more angle setpoints and one or more torque setpoints. In such an approach, an angle setpoint may limit rotation in a first direction while a torque setpoint may limit rotation in a second, opposite direction. As an example, bidirectional oscillation may be limited homogeneously using angle setpoints or torque setpoints or may be limited heterogeneously using an angle setpoint and a torque setpoint. As an example, an oscillation controller may automatically operate using angle and / or torque setpoints, for example, to operate adaptably using homogeneous and / or heterogeneous setpoint control. Such an oscillation controller may be dynamic and adaptable to physical phenomena that may occur, arise, etc., during an operation such as a slide drilling operation (e.g., drilling in a sliding mode). As an example, an oscillation controller may be an automatic, adaptive controller. As explained, a controller may provide for selecting, receiving, adjusting, etc., one or more setpoints, which may allow flexibility as to how oscillations are controlled. As explained, an oscillation controller may be adaptable to phenomena using input via a GUI, input via one or more sensors, etc. As explained, an oscillation controller may be operable via human and / or machine input.

[0149] As explained, an oscillation controller may provide for tracking angle rotational distance, which may be tracked with respect to a neutral point. As an example, such a controller may operate in a mode where rotation in a particular direction of an oscillation is to pass a neutral point. For example, a control criterion may be to pass a neutral point such that at least some rotation in one direction is followed by at least compensating rotation in an opposite direction. For example, if rotation occurs in a clockwise direction by 180 degrees with 80 degrees past a neutral point, then a subsequent rotation in a counter-clockwise direction may be for at least 80 degrees such that the neutral point is reach and, for example, past. As an example, such a criterion may take precedence to a torque setpoint. Forexample, if a torque setpoint is reached at 70 degrees in the foregoing example, a top drive may be instructed to continue for at least another 10 degrees to assure the neutral point is met. As an example, such a scenario may be considered abnormal such that an alarm or notification may be issued, which may be, for example, associated with torque. To address such an issue, a torque setpoint may be adjusted, if appropriate, to help assure that rotation past a neutral point occurs.

[0150] As explained, an oscillation controller can tally rotational distances or a net rotational distance to determine whether an accumulated rotational distance in one direction may be at risk of working its way down to a bent sub such that a change in toolface may occur. As explained, depending on various factors, rotation of a drillstring at surface may not work its way down to a bent sub, for example, due to length of drillstring, friction, etc. As explained, torsion may occur where such torsion may oscillate in an upper portion of a drillstring, noting that torsion may also occur due to reactive force of a drill bit driven by a mud motor. Thus, torsion may occur due to different factors in different portions of a drillstring where, for example, the longer the drillstring, the more likely it may be that different torsion regimes exist for the drillstring. As an example, where an accumulation occurs beyond a threshold, an oscillation controller may make one or more types of adjustments that may aim to reduce impact of the accumulation, for example, as to a bent sub. In such an example, an oscillation controller may instruct a top drive to rotate a drillstring in a particular direction to help undue the accumulation. In such an example, a notification may be issued as to such action, which may be subject to approval or confirmation by a human and / or a machine-based driller.

[0151] As explained, oscillations may aim to reduce frictional forces in a portion of a drillstring that is above a bent sub such that an angle set by the bent sub is unlikely to be affected by the oscillations. Such an approach can help to improve slide drilling, particularly where a portion of a drillstring is in contact with a surface of a borehole, which may be due to overall bend in the drillstring (e.g., following a dogleg, etc.), gravity, etc.

[0152] As explained, a top drive may be controlled at least in part using a VFD, which may provide for generating an indication of torque, noting that one or more torque sensors may be utilized. As an example, a downhole torque sensor may be positioned at or near a mud motor, which may provide for torquemeasurements as to a portion of a drillstring that may not be impacted directly via surface driven oscillations.

[0153] As an example, a system may include a VFD that may perform tasks associated with speed control and torque control and may include a PLC that may perform tasks associated with position control. As an example, an oscillation controller may include or be operatively coupled to one or more of a VFD and a PLC.

[0154] As an example, a controller, which may be provided as a computational framework, may be utilized in combination with one or more other frameworks. For example, consider utilization of the PETREL framework, which may provide for data access for pre-job modeling. As an example, during drilling, a framework may be implemented in combination with the DRILLOPS framework.

[0155] As an example, a framework may implement a machine learning model trained using data from a number of offset wells where the machine learning model may be trained and implemented without testing of the machine learning model. For example, consider an approach that utilizes data as to slide drilling, friction factors, etc., from one or more offset wells to train, tune, etc., an oscillation controller.

[0156] As an example, a tool string may include an embedded framework that may provide for downhole automated control of one or more operations of the tool string, which may include, for example, geosteering. As an example, a rig control system (RCS) may include an embedded framework that may provide for control of one or more operations, which may include, for example, geosteering. In such an example, one or more levels of automation may be implemented such that the framework forms part of a control loop, which may be a closed control loop and / or a human-in-the-loop (HITL) type of control loop. As an example, a cloud platform may be utilized for one or more purposes. As an example, where a model is to be updated, an updated model may be provided via one or more environments for implementation in the field, for example, at a rig site environment and / or in a tool string environment.

[0157] As to types of machine learning models, consider one or more of a support vector machine (SVM) model, a k-nearest neighbors (KNN) model, an ensemble classifier model, a neural network (NN) model, etc. As an example, a machine learning model may be a deep learning model (e.g., deep Boltzmann machine, deep belief network, convolutional neural network, stacked auto-encoder, etc.), an ensemble model (e.g., random forest, gradient boosting machine,bootstrapped aggregation, AdaBoost, stacked generalization, gradient boosted regression tree, etc.), a neural network model (e.g., radial basis function network, perceptron, back-propagation, Hopfield network, etc.), a regularization model (e.g., ridge regression, least absolute shrinkage and selection operator, elastic net, least angle regression), a rule system model (e.g., cubist, one rule, zero rule, repeated incremental pruning to produce error reduction), a regression model (e.g., linear regression, ordinary least squares regression, stepwise regression, multivariate adaptive regression splines, locally estimated scatterplot smoothing, logistic regression, etc.), a Bayesian model (e.g., naive Bayes, average on-dependence estimators, Bayesian belief network, Gaussian naive Bayes, multinomial naive Bayes, Bayesian network), a decision tree model (e.g., classification and regression tree, iterative dichotomiser 3, C4.5, C5.0, chi-squared automatic interaction detection, decision stump, conditional decision tree, M5), a dimensionality reduction model (e.g., principal component analysis, partial least squares regression, Sammon mapping, multidimensional scaling, projection pursuit, principal component regression, partial least squares discriminant analysis, mixture discriminant analysis, quadratic discriminant analysis, regularized discriminant analysis, flexible discriminant analysis, linear discriminant analysis, etc.), an instance model (e.g., k- nearest neighbor, learning vector quantization, self-organizing map, locally weighted learning, etc.), a clustering model (e.g., k-means, k-medians, expectation maximization, hierarchical clustering, etc.), etc.

[0158] As an example, a machine model, which may be a machine learning model (ML model), may be built using a computational framework with a library, a toolbox, etc., such as, for example, those of the MATLAB framework (MathWorks, Inc., Natick, Massachusetts). The MATLAB framework includes a toolbox that provides supervised and unsupervised machine learning algorithms, including support vector machines (SVMs), boosted and bagged decision trees, k-nearest neighbor (KNN), k-means, k-medoids, hierarchical clustering, Gaussian mixture models, and hidden Markov models. Another MATLAB framework toolbox is the Deep Learning Toolbox (DLT), which provides a framework for designing and implementing deep neural networks with algorithms, pretrained models, and apps. The DLT provides convolutional neural networks (ConvNets, CNNs) and long shortterm memory (LSTM) networks to perform classification and regression on image, time-series, and text data. The DLT includes features to build network architecturessuch as generative adversarial networks (GANs) and Siamese networks using custom training loops, shared weights, and automatic differentiation. The DLT provides for model exchange various other frameworks.

[0159] As an example, the TENSORFLOW framework (Google LLC, Mountain View, CA) may be implemented, which is an open-source software library for dataflow programming that includes a symbolic math library, which may be implemented for machine learning applications that may include neural networks. As an example, the CAFFE framework may be implemented, which is a DL framework developed by Berkeley Al Research (BAIR) (University of California, Berkeley, California). As another example, consider the SCIKIT platform (e.g., scikit-learn), which utilizes the PYTHON programming language. As an example, a framework such as the APOLLO Al framework may be utilized (APOLLO. Al GmbH, Germany). As an example, a framework such as the PYTORCH framework may be utilized (Facebook Al Research Lab (FAIR), Facebook, Inc., Menlo Park, California).

[0160] As an example, a training method may include various actions that may operate on a dataset to train an ML model. As an example, a dataset may be split into training data and test data where test data may provide for evaluation. A method may include cross-validation of parameters and best parameters, which may be provided for model training.

[0161] The TENSORFLOW framework may run on multiple CPUs and GPUs (with optional CUDA (NVIDIA Corp., Santa Clara, California) and SYCL (The Khronos Group Inc., Beaverton, Oregon) extensions for general-purpose computing on graphics processing units (GPUs)). TENSORFLOW is available on 64-bit LINUX, MACOS (Apple Inc., Cupertino, California), WINDOWS (Microsoft Corp., Redmond, Washington), and mobile computing platforms including ANDROID (Google LLC, Mountain View, California) and IOS (Apple Inc.) operating system-based platforms.

[0162] TENSORFLOW computations may be expressed as stateful dataflow graphs; noting that the name TENSORFLOW derives from the operations that such neural networks perform on multidimensional data arrays. Such arrays may be referred to as “tensors”.

[0163] As an example, a device may utilize TENSORFLOW LITE (TFL) or another type of lightweight framework. For example, consider a gateway that may be in the field (e.g., on-site) and that may utilize the TFL and / or one or more other types of lightweight frameworks. The TFL framework is a set of tools that enableson-device machine learning where models may run on mobile, embedded, and loT devices. The TFL framework is optimized for on-device machine learning, by addressing latency (no round-trip to a server), privacy (no personal data leaves the device), connectivity (Internet connectivity is demanded), size (reduced model and binary size) and power consumption (e.g., efficient inference and a lack of network connections). The TFL framework offers multiple platform support, covering ANDROID and iOS devices, embedded LINUX, and microcontrollers. The TFL framework offers diverse language support includes JAVA, SWIFT, Objective-C, C++, and PYTHON. The TFL framework may provide high performance via hardware acceleration and model optimization.

[0164] Fig. 8 shows an example of a method 800 that includes a reception block 810 for receiving a forward direction angle setpoint, a forward direction torque setpoint, a reverse direction angle setpoint, and a reverse direction torque setpoint for an oscillation controller that controls a top drive operatively coupled to a drillstring; a computation block 820 for computing a present forward direction angle distance to the forward direction angle setpoint; an instruction block 830 for instructing the top drive to rotate in the forward direction toward the forward direction angle setpoint based at least in part on the present forward direction angle distance; an instruction block 840 for instructing the top drive to stop responsive to reaching the forward direction angle setpoint or the forward direction torque setpoint; a computation block 850 for computing a present reverse direction angle distance to the reverse direction angle setpoint; and an instruction block 860 for instructing the top drive to rotate in the reverse direction toward the reverse direction angle setpoint based at least in part on the present reverse direction angle distance.

[0165] The method 800 of Fig. 8 is shown as including various computer- readable storage medium (CRM) blocks 811 , 821 , 831 , 841 , 851 and 861 that may include processor-executable instructions that may instruct a computing system, which may be a control system, to perform one or more of the actions described with respect to the method 800.

[0166] As shown in the example of Fig. 8, the system 890 may include one or more computers 892 that include one or more processors 893, memory 894 operatively coupled to at least one of the one or more processors 893, instructions 896 that may be, for example, stored in the memory 894, and one or more interfaces 895 (e.g., one or more network interfaces and / or other interfaces). As an example,the system 890 may include one or more processor-readable media that include processor-executable instructions executable by at least one of the one or more processors 893 to cause the system 890 to perform actions such as, for example, one or more actions of the method 800. As an example, the instructions 896 may include instructions of one or more of the CRM blocks 811 , 821 , 831 , 841 , 851 and 861 . The memory 894 may be or include the one or more processor-readable media where the processor-executable instructions may be or include instructions. As an example, a processor-readable medium may be a computer-readable storage medium that is non-transitory that is not a signal and that is not a carrier wave.

[0167] As an example, the system 890 may include subsystems. For example, the system 890 may include a plurality of subsystems that may operate using equipment that is distributed where a subsystem may be referred to as being a system. As an example, the method 800 may be implemented using, for example, a downhole system and / or a surface system, which may be a cloud-based or cloud- coupled system.

[0168] As an example, a method can include receiving a forward direction angle setpoint, a forward direction torque setpoint, a reverse direction angle setpoint, and a reverse direction torque setpoint for an oscillation controller that controls a top drive operatively coupled to a drillstring; computing a present forward direction angle distance to the forward direction angle setpoint; instructing the top drive to rotate in the forward direction toward the forward direction angle setpoint based at least in part on the present forward direction angle distance; instructing the top drive to stop responsive to reaching the forward direction angle setpoint or the forward direction torque setpoint; computing a present reverse direction angle distance to the reverse direction angle setpoint; and instructing the top drive to rotate in the reverse direction toward the reverse direction angle setpoint based at least in part on the present reverse direction angle distance. In such an example, computing the present reverse direction angle distance can depend on speed of rotation in the forward direction toward the forward direction angle setpoint and a time of the stop. As an example, speed of rotation may be constant or, for example, speed of rotation may not constant. As an example, speed of rotation may decrease as a distance to a forward direction angle setpoint decreases and / or as real-time torque reaches a forward direction torque setpoint.

[0169] As an example, an oscillation controller can include a position control component, a speed control component, and a torque control component. As an example, an oscillation controller may include or be operatively coupled to a variable frequency drive (VFD) for one or more electric motors of a top drive. As an example, an oscillation controller may include or be operatively coupled to a programmable logic controller (PLC).

[0170] As an example, an oscillation controller may operate based at least in part on speed feedback and / or based at least in part on torque feedback. As an example, torque feedback may be based at least in part on receiving torque measurements from a torque sensor as a component and / or a torque sensor as part of a VFD (e.g., consider torque inferred from current, etc.).

[0171] As an example, an oscillation controller may operate based at least in part on position feedback. As an example, an oscillation controller may operate based at least in part on one or more of speed feedback, torque feedback, and position feedback.

[0172] As an example, an oscillation controller may control a top drive via current control. As an example, an oscillation controller may control a top drive via pulse width modulation (PWM).

[0173] As an example, a drillstring can include a mud motor. As explained, a mud motor can be a positive displacement motor (PDM) that may be driven by drilling fluid (e.g., mud).

[0174] As an example, a method may include receiving a toolface value for a drill bit of a drillstring, where an oscillation controller operates to maintain the drill bit of the drillstring at the toolface value. As an example, a drill bit may be oriented at least in part using a component or assembly that can be bent at a desired angle. For example, consider a bent sub as a type of component that may be associated with a mud motor.

[0175] As an example, a method can include instructing a top drive to stop responsive to reaching a reverse direction angle setpoint or a reverse direction torque setpoint. As explained, a control scheme may provide for heterogeneous or homogeneous oscillation control with respect to angle setpoints and torque setpoints. For example, where an oscillation that includes a clockwise rotation and a counter-clockwise rotation utilizes two angle setpoints or two torque setpoints, oscillation control may be referred to as being homogeneous; whereas, if an anglesetpoint and a torque setpoint are utilized for the oscillation, then the oscillation control may be referred to as being heterogeneous. As an example, an oscillation controller may operate in an adaptable manner where homogeneous and heterogeneous types of oscillation controls occur, for example, automatically responsive to one or more conditions, one or more criteria, etc.

[0176] As an example, a method may include, responsive to a stop being responsive to reaching a forward direction torque setpoint, reducing a forward direction angle setpoint.

[0177] As an example, a method may include storing operational data of an oscillation controller to a data storage and training one or more machine learning models using at least a portion of the operational data. In such an example, a trained machine learning model may provide for generating output that may facilitate control of drilling, which may include oscillation control, rotary drilling control, slide drilling control, transition control (e.g., from rotary to slide or slide to rotary), reactive torque control, neutral point control, accumulation control, emissions control, equipment integrity control, borehole quality control, trajectory control, etc.

[0178] As an example, a system can include a processor; memory accessible to the processor; and processor-executable instructions stored in the memory and executable by the processor to instruct the system to: receive a forward direction angle setpoint, a forward direction torque setpoint, a reverse direction angle setpoint, and a reverse direction torque setpoint for an oscillation controller that controls a top drive operatively coupled to a drillstring; compute a present forward direction angle distance to the forward direction angle setpoint; instruct the top drive to rotate in the forward direction toward the forward direction angle setpoint based at least in part on the present forward direction angle distance; instruct the top drive to stop responsive to reaching the forward direction angle setpoint or the forward direction torque setpoint; compute a present reverse direction angle distance to the reverse direction angle setpoint; and instruct the top drive to rotate in the reverse direction toward the reverse direction angle setpoint based at least in part on the present reverse direction angle distance.

[0179] As an example, one or more non-transitory computer-readable storage media can include processor-executable instructions executable to instruct a processor to: receive a forward direction angle setpoint, a forward direction torque setpoint, a reverse direction angle setpoint, and a reverse direction torque setpointfor an oscillation controller that controls a top drive operatively coupled to a drillstring; compute a present forward direction angle distance to the forward direction angle setpoint; instruct the top drive to rotate in the forward direction toward the forward direction angle setpoint based at least in part on the present forward direction angle distance; instruct the top drive to stop responsive to reaching the forward direction angle setpoint or the forward direction torque setpoint; compute a present reverse direction angle distance to the reverse direction angle setpoint; and instruct the top drive to rotate in the reverse direction toward the reverse direction angle setpoint based at least in part on the present reverse direction angle distance.

[0180] As an example, one or more computer-readable storage media may include processor-executable instructions to instruct a computing system to perform one or more methods. In such an example, the one or more computer-readable storage media may be a program product (e.g., a computer program product, a computer system program product, etc.).

[0181] In some embodiments, a method or methods may be executed by a computing system. Fig. 9 shows an example of a system 900 that may include one or more computing systems 901 -1 , 901 -2, 901 -3 and 901 -4, which may be operatively coupled via one or more networks 909, which may include wired and / or wireless networks.

[0182] As an example, a system may include an individual computer system or an arrangement of distributed computer systems. In the example of Fig. 9, the computer system 901-1 may include one or more sets of instructions 902, which may be or include processor-executable instructions, for example, executable to perform various tasks (e.g., receiving information, requesting information, processing information, simulation, outputting information, etc.).

[0183] As an example, a set of instructions may be executed independently, or in coordination with, one or more processors 904, which is (or are) operatively coupled to one or more storage media 906 (e.g., via wire, wirelessly, etc.). As an example, one or more of the one or more processors 904 may be operatively coupled to at least one of one or more network interface 907. In such an example, the computer system 901-1 may transmit and / or receive information, for example, via the one or more networks 909 (e.g., consider one or more of the Internet, a private network, a cellular network, a satellite network, etc.). As shown, one or more other components 908 may be included.

[0184] As an example, the computer system 901-1 may receive from and / or transmit information to one or more other devices, which may be or include, for example, one or more of the computer systems 901-2, etc. A device may be located in a physical location that differs from that of the computer system 901 -1 . As an example, a location may be, for example, a processing facility location, a data center location (e.g., server farm, etc.), a rig location, a wellsite location, a downhole location, etc.

[0185] As an example, a processor may be or include a microprocessor, microcontroller, processor component or subsystem, programmable integrated circuit, programmable gate array, or another control or computing device.

[0186] As an example, the storage media 906 may be implemented as one or more computer-readable or machine-readable storage media. As an example, storage may be distributed within and / or across multiple internal and / or external enclosures of a computing system and / or additional computing systems.

[0187] As an example, a storage medium or storage media may include one or more different forms of memory including semiconductor memory devices such as dynamic or static random access memories (DRAMs or SRAMs), erasable and programmable read-only memories (EPROMs), electrically erasable and programmable read-only memories (EEPROMs) and flash memories, magnetic disks such as fixed, floppy and removable disks, other magnetic media including tape, optical media such as compact disks (CDs) or digital video disks (DVDs), BLUERAY disks, or other types of optical storage, or other types of storage devices.

[0188] As an example, a storage medium or media may be located in a machine running machine-readable instructions, or located at a remote site from which machine-readable instructions may be downloaded over a network for execution.

[0189] As an example, various components of a system such as, for example, a computer system, may be implemented in hardware, software, or a combination of both hardware and software (e.g., including firmware), including one or more signal processing and / or application specific integrated circuits.

[0190] As an example, a system may include a processing apparatus that may be or include a general-purpose processors or application specific chips (e.g., or chipsets), such as ASICs, FPGAs, PLDs, or other appropriate devices.

[0191] As an example, a device may be a mobile device that includes one or more network interfaces for communication of information. For example, a mobile device may include a wireless network interface (e.g., operable via IEEE 802.11 , ETSI GSM, BLUETOOTH, satellite, etc.). As an example, a mobile device may include components such as a main processor, memory, a display, display graphics circuitry (e.g., optionally including touch and gesture circuitry), a SIM slot, audio / video circuitry, motion processing circuitry (e.g., accelerometer, gyroscope), wireless LAN circuitry, smart card circuitry, transmitter circuitry, GPS circuitry, and a battery. As an example, a mobile device may be configured as a cell phone, a tablet, etc. As an example, a method may be implemented (e.g., wholly or in part) using a mobile device. As an example, a system may include one or more mobile devices.

[0192] As an example, a system may be a distributed environment, for example, a so-called “cloud” environment where various devices, components, etc. interact for purposes of data storage, communications, computing, etc. As an example, a device or a system may include one or more components for communication of information via one or more of the Internet (e.g., where communication occurs via one or more Internet protocols), a cellular network, a satellite network, etc. As an example, a method may be implemented in a distributed environment (e.g., wholly or in part as a cloud-based service).

[0193] As an example, information may be input from a display (e.g., consider a touchscreen), output to a display or both. As an example, information may be output to a projector, a laser device, a printer, etc. such that the information may be viewed. As an example, information may be output stereographically or holographically. As to a printer, consider a 2D or a 3D printer. As an example, a 3D printer may include one or more substances that may be output to construct a 3D object. For example, data may be provided to a 3D printer to construct a 3D representation of a subterranean formation. As an example, layers may be constructed in 3D (e.g., horizons, etc.), geobodies constructed in 3D, etc. As an example, holes, fractures, etc., may be constructed in 3D (e.g., as positive structures, as negative structures, etc.).

[0194] Although only a few examples have been described in detail above, those skilled in the art will readily appreciate that many modifications are possible in the examples. Accordingly, all such modifications are intended to be included withinthe scope of this disclosure as defined in the following claims. In the claims, means- plus-function clauses are intended to cover the structures described herein as performing the recited function and not only structural equivalents, but also equivalent structures. Thus, although a nail and a screw may not be structural equivalents in that a nail employs a cylindrical surface to secure wooden parts together, whereas a screw employs a helical surface, in the environment of fastening wooden parts, a nail and a screw may be equivalent structures.

Claims

CLAIMSWhat is claimed is:1 . A method comprising: receiving a forward direction angle setpoint, a forward direction torque setpoint, a reverse direction angle setpoint, and a reverse direction torque setpoint for an oscillation controller that controls a top drive operatively coupled to a drillstring; computing a present forward direction angle distance to the forward direction angle setpoint; instructing the top drive to rotate in the forward direction toward the forward direction angle setpoint based at least in part on the present forward direction angle distance; instructing the top drive to stop responsive to reaching the forward direction angle setpoint or the forward direction torque setpoint; computing a present reverse direction angle distance to the reverse direction angle setpoint; and instructing the top drive to rotate in the reverse direction toward the reverse direction angle setpoint based at least in part on the present reverse direction angle distance.

2. The method of claim 1 , wherein the computing the present reverse direction angle distance depends on speed of rotation in the forward direction toward the forward direction angle setpoint and a time of the stop.

3. The method of claim 2, wherein the speed of rotation is constant.

4. The method of claim 2, wherein the speed of rotation is not constant.

5. The method of claim 4, wherein the speed of rotation decreases as the distance to the forward direction angle setpoint decreases.

6. The method of claim 4, wherein the speed of rotation decreases as real-time torque reaches the forward direction torque setpoint.

7. The method of claim 1 , wherein the oscillation controller comprises a position control component, a speed control component, and a torque control component.

8. The method of claim 1 , wherein the oscillation controller operates based at least in part on speed feedback.

9. The method of claim 1 , wherein the oscillation controller operates based at least in part on torque feedback.

10. The method of claim 9, wherein the torque feedback is based at least in part on receiving torque measurements from a torque sensor.11 . The method of claim 1 , wherein the oscillation controller operates based at least in part on position feedback.

12. The method of claim 1 , wherein the oscillation controller controls the top drive via current control.

13. The method of claim 1 , wherein the oscillation controller controls the top drive via pulse width modulation.

14. The method of claim 1 , wherein the drillstring comprises a mud motor.

15. The method of claim 1 , comprising receiving a toolface value for a drill bit of the drillstring, wherein the oscillation controller operates to maintain the drill bit of the drillstring at the toolface value.

16. The method of claim 1 , comprising instructing the top drive to stop responsive to reaching the reverse direction angle setpoint or the reverse direction torque setpoint.

17. The method of claim 1 , wherein, responsive to the stop being responsive to reaching the forward direction torque setpoint, reducing the forward direction angle setpoint.

18. The method of claim 1 , comprising storing operational data of the oscillation controller to a data storage and training one or more machine learning models using at least a portion of the operational data.

19. A system comprising: a processor; memory accessible to the processor; and processor-executable instructions stored in the memory and executable by the processor to instruct the system to: receive a forward direction angle setpoint, a forward direction torque setpoint, a reverse direction angle setpoint, and a reverse direction torque setpoint for an oscillation controller that controls a top drive operatively coupled to a drillstring; compute a present forward direction angle distance to the forward direction angle setpoint; instruct the top drive to rotate in the forward direction toward the forward direction angle setpoint based at least in part on the present forward direction angle distance; instruct the top drive to stop responsive to reaching the forward direction angle setpoint or the forward direction torque setpoint; compute a present reverse direction angle distance to the reverse direction angle setpoint; and instruct the top drive to rotate in the reverse direction toward the reverse direction angle setpoint based at least in part on the present reverse direction angle distance.

20. One or more non-transitory computer-readable storage media comprising processor-executable instructions executable to instruct a processor to:receive a forward direction angle setpoint, a forward direction torque setpoint, a reverse direction angle setpoint, and a reverse direction torque setpoint for an oscillation controller that controls a top drive operatively coupled to a drillstring; compute a present forward direction angle distance to the forward direction angle setpoint; instruct the top drive to rotate in the forward direction toward the forward direction angle setpoint based at least in part on the present forward direction angle distance; instruct the top drive to stop responsive to reaching the forward direction angle setpoint or the forward direction torque setpoint; compute a present reverse direction angle distance to the reverse direction angle setpoint; and instruct the top drive to rotate in the reverse direction toward the reverse direction angle setpoint based at least in part on the present reverse direction angle distance.

Citation Information

Patent Citations

  • Apparatus and a Control Method for Controlling the Apparatus

    US20130046417A1

  • Drill Pipe Oscillation Regime and Torque Controller for Slide Drilling

    US20160237802A1

  • Apparatus and methods for automated slide drilling

    US20200165913A1

  • Slide Drilling Control Based on Top Drive Torque and Rotational Distance

    US20220178241A1

  • Automatically detecting and unwinding accumulated drill string torque

    US20230184082A1