downhole equipment and surface equipment communicate wirelessly with each other. A signal wirelessly transmitted at a first frequency from a downhole controller disposed within a wellbore is received at a surface location. The received signal is demodulated to a demodulated digital value. The demodulated value is added to an end of a buffer string. The buffer string is processed to determine whether the buffer string contains a message that is valid. In response to determining that the buffer string contains the message that is valid, the message is decoded. A command signal is wirelessly transmitted at a second frequency different from the first frequency to the downhole controller to adjust a state of the downhole controller.
|
1. A method comprising:
receiving, at a surface location, a signal wirelessly transmitted at a first frequency from a downhole controller disposed within a wellbore;
demodulating the received signal to a demodulated digital value;
adding the demodulated value to an end of a buffer string;
processing the buffer string to determine whether the buffer string contains a message that is valid, wherein processing the buffer string comprises:
extracting a cyclic redundancy check field string and an auxiliary field string from the buffer string;
determining that the auxiliary field string translates to a first valid state of a plurality of valid states, wherein at least one of the plurality of valid states is a run IN hole state associated with a predetermined bit string length of 21 bits;
in response to determining that the auxiliary field string translates to the first valid state, determining a respective, predetermined bit string length associated with the first valid state;
in response to determining the respective, predetermined bit string length associated with the first valid state, calculating a checksum of a portion of the buffer string having the respective, predetermined bit string length associated with the first valid state; and
determining that the calculated checksum matches the cyclic redundancy check field string; and
in response to determining that the buffer string contains the message that is valid, decoding the message.
8. A system comprising:
a downhole controller configured to be disposed within a wellbore, the downhole controller comprising:
a downhole processor; and
a downhole computer-readable storage medium coupled to the downhole processor and storing programming instructions for execution by the downhole processor, the programming instructions instructing the downhole processor to perform operations comprising wirelessly transmitting, at a first frequency, a signal representing a state of the downhole controller; and
a surface controller communicatively coupled to the downhole controller, the surface controller comprising:
a surface processor; and
a surface computer-readable storage medium coupled to the surface processor and storing programming instructions for execution by the surface processor, the programming instructions instructing the surface processor to perform operations comprising:
receiving the signal from the downhole controller;
demodulating the signal to a demodulated digital value;
appending the demodulated digital value to a buffer string;
processing the buffer string to determine whether the buffer string contains a message that is valid, wherein processing the buffer string comprises:
extracting a cyclic redundancy check field string and an auxiliary field string from the buffer string;
determining that the auxiliary field string translates to a first valid state of a plurality of valid states, wherein at least one of the plurality of valid states is a tractor state associated with a predetermined bit string length of 47 bits;
in response to determining that the auxiliary field string translates to the first valid state, determining a respective, predetermined bit string length associated with the first valid state;
in response to determining the respective, predetermined bit string length associated with the first valid state, calculating a checksum of a portion of the buffer string having the respective, predetermined bit string length associated with the first valid state; and
determining that the calculated checksum matches the cyclic redundancy check field string; and
in response to determining that the buffer string contains the message that is valid, decoding the message.
14. A system comprising:
a bottomhole assembly configured to be disposed within a wellbore, the bottomhole assembly comprising a downhole controller comprising:
a downhole processor; and
a downhole computer-readable storage medium coupled to the downhole processor and storing programming instructions for execution by the downhole processor, the programming instructions instructing the downhole processor to perform operations comprising:
wirelessly transmitting, at a first frequency, a signal representing a state of the bottomhole assembly; and
adjusting the state of the bottomhole assembly in response to receiving a command signal; and
a surface controller communicatively coupled to the downhole controller, the surface controller comprising:
a surface processor; and
a surface computer-readable storage medium coupled to the surface processor and storing programming instructions for execution by the surface processor, the programming instructions instructing the surface processor to perform operations comprising:
receiving the signal from the downhole controller;
demodulating the signal to a demodulated digital value;
appending the demodulated digital value to a buffer string;
processing the buffer string to determine whether the buffer string contains a message that is valid, wherein processing the buffer string comprises:
extracting a cyclic redundancy check field string and an auxiliary field string from the buffer string;
determining that the auxiliary field string translates to a first valid state of a plurality of valid states, wherein at least one of the plurality of valid states is a circulate state associated with a predetermined bit string length of 50 bits;
in response to determining that the auxiliary field string translates to the first valid state, determining a respective, predetermined bit string length associated with the first valid state;
in response to determining the respective, predetermined bit string length associated with the first valid state, calculating a checksum of a portion of the buffer string having the respective, predetermined bit string length associated with the first valid state; and
determining that the calculated checksum matches the cyclic redundancy check field string; and
in response to determining that the buffer string contains the message that is valid, decoding the message.
2. The method of
3. The method of
4. The method of
6. The method of
7. The method of
9. The system of
10. The system of
11. The system of
in response to decoding the message, storing the message in the surface computer-readable storage medium;
displaying the message at a surface location; and
emptying the buffer string.
12. The system of
13. The system of
15. The system of
in response to decoding the message, storing the message in the surface computer-readable storage medium;
displaying the message at a surface location;
emptying the buffer string; and
wirelessly transmitting, at a second frequency different from the first frequency, the command signal to the downhole controller to control the bottomhole assembly.
|
This disclosure relates to surface to downhole wireless communication.
Downhole communication involves communication between surface equipment disposed at or above a surface of the wellbore and downhole equipment disposed within the wellbore. For example, a signal can be transmitted from surface equipment to downhole equipment. For example, a signal can be transmitted from downhole equipment to surface equipment. The communication can be completed via a wired connection (for example, a wireline) or via a wireless connection. Downhole communication can also involve communication between two different equipment located downhole. Downhole communication can allow for safe and efficient well operations.
This disclosure describes technologies relating to downhole wireless communication. Certain aspects of the subject matter described can be implemented as a method (for example, a computer-implemented method). A signal wirelessly transmitted at a first frequency from a downhole controller disposed within a wellbore is received at a surface location. The received signal is demodulated to a demodulated digital value. The demodulated value is added to an end of a buffer string. The buffer string is processed to determine whether the buffer string contains a message that is valid. In response to determining that the buffer string contains the message that is valid, the message is decoded.
This, and other aspects, can include one or more of the following features.
In some implementations, a command signal is wirelessly transmitted at a second frequency different from the first frequency to the downhole controller to adjust a state of the downhole controller.
In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes extracting a cyclic redundancy check field string and an auxiliary field string from the buffer string. In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes determining that the auxiliary field string translates to a first valid state of a plurality of valid states. In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes determining a respective, predetermined bit string length associated with the first valid state in response to determining that the auxiliary field string translates to the first valid state. In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes calculating a checksum of a portion of the buffer string having the respective, predetermined bit string length associated with the first valid state in response to determining the respective, predetermined bit string length associated with the first valid state. In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes determining that the calculated checksum matches the cyclic redundancy check field string.
In some implementations, decoding the message includes, in response to determining that the calculated checksum matches the cyclic redundancy check field string, decoding the portion of the buffer string into the message. In some implementations, the message is stored in a storage medium, and the buffer string is emptied in response to decoding the message. In some implementations, the message is displayed at a surface location.
In some implementations, at least one of the plurality of valid states is a RUN IN HOLE state associated with a predetermined bit string length of 21 bits. In some implementations, at least one of the plurality of valid states is a TRACTOR state associated with a predetermined bit string length of 47 bits. In some implementations, at least one of the plurality of valid states is a CIRCULATE state associated with a predetermined bit string length of 50 bits.
Certain aspects of the subject matter described can be implemented as a system. The system includes a downhole controller and a surface controller. The downhole controller is configured to be disposed within a wellbore. The downhole controller includes a downhole processor and a downhole computer-readable storage medium coupled to the downhole processor. The downhole computer-readable storage medium stores programming instructions for execution by the downhole processor. The programming instructions instruct the downhole processor to perform operations including wirelessly transmitting, at a first frequency, a signal representing a state of the downhole controller. The surface controller is communicatively coupled to the downhole controller. The surface controller includes a surface processor and a surface computer-readable storage medium coupled to the surface processor. The surface computer-readable storage medium stores programming instructions for execution by the surface processor. The programming instructions instruct the surface processor to perform operations including receiving the signal from the downhole controller, demodulating the signal to a demodulated digital value, appending the demodulated digital value to a buffer string, processing the buffer string to determine whether the buffer string contains a message that is valid, and decoding the message in response to determining that the buffer string contains the message that is valid.
This, and other aspects, can include one or more of the following features.
In some implementations, the programming instructions instruct the surface processor to perform operations including wirelessly transmitting, at a second frequency different from the first frequency, a command signal to the downhole controller to adjust the state of the downhole controller in response to determining that the buffer string contains the message that is valid.
In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes extracting a cyclic redundancy check field string and an auxiliary field string from the buffer string. In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes determining that the auxiliary field string translates to a first valid state of a plurality of valid states. In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes determining a respective, predetermined bit string length associated with the first valid state in response to determining that the auxiliary field string translates to the first valid state. In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes calculating a checksum of a portion of the buffer string having the respective, predetermined bit string length associated with the first valid state in response to determining the respective, predetermined bit string length associated with the first valid state. In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes determining that the calculated checksum matches the cyclic redundancy check field string.
In some implementations, the programming instructions stored by the surface computer-readable storage medium instructs the surface processor to perform operations comprising decoding the message in response to determining that the buffer string contains the message that is valid. In some implementations, decoding the message includes, in response to determining that the calculated checksum matches the cyclic redundancy check field string, decoding the portion of the buffer string into the message.
In some implementations, the programming instructions stored by the surface computer-readable storage medium instructs the surface processor to perform operations including storing the message in the surface computer-readable storage medium in response to decoding the message, displaying the message at a surface location, and/or emptying the buffer string.
In some implementations, at least one of the plurality of valid states is a RUN IN HOLE state associated with a predetermined bit string length of 21 bits. In some implementations, at least one of the plurality of valid states is a TRACTOR state associated with a predetermined bit string length of 47 bits. In some implementations, at least one of the plurality of valid states is a CIRCULATE state associated with a predetermined bit string length of 50 bits.
Certain aspects of the subject matter described can be implemented as a system. The system includes a bottomhole assembly and a surface controller. The bottomhole assembly is configured to be disposed within a wellbore. The bottomhole assembly includes a downhole controller. The downhole controller includes a downhole processor and a downhole computer-readable storage medium coupled to the downhole processor. The downhole computer-readable storage medium stores programming instructions for execution by the downhole processor. The programming instructions instruct the downhole processor to perform operations including wirelessly transmitting, at a first frequency, a signal representing a state of the downhole controller and adjusting the state of the bottomhole assembly in response to receiving a command signal. The surface controller is communicatively coupled to the downhole controller. The surface controller includes a surface processor and a surface computer-readable storage medium coupled to the surface processor. The surface computer-readable storage medium stores programming instructions for execution by the surface processor. The programming instructions instruct the surface processor to perform operations including receiving the signal from the downhole controller, demodulating the signal to a demodulated digital value, appending the demodulated digital value to a buffer string, processing the buffer string to determine whether the buffer string contains a message that is valid, and decoding the message in response to determining that the buffer string contains the message that is valid.
This, and other aspects, can include one or more of the following features.
In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes extracting a cyclic redundancy check field string and an auxiliary field string from the buffer string. In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes determining that the auxiliary field string translates to a first valid state of a plurality of valid states. In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes determining a respective, predetermined bit string length associated with the first valid state in response to determining that the auxiliary field string translates to the first valid state. In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes calculating a checksum of a portion of the buffer string having the respective, predetermined bit string length associated with the first valid state in response to determining the respective, predetermined bit string length associated with the first valid state. In some implementations, processing the buffer string to determine whether the buffer string contains a message that is valid includes determining that the calculated checksum matches the cyclic redundancy check field string.
In some implementations, the programming instructions stored by the surface computer-readable storage medium instructs the surface processor to perform operations including, in response to determining that the calculated checksum matches the cyclic redundancy check field string, decoding the portion of the buffer string into the message.
In some implementations, the programming instructions stored by the surface computer-readable storage medium instructs the surface processor to perform operations including storing the message in the surface computer-readable storage medium in response to decoding the message, displaying the message at a surface location, and/or emptying the buffer string.
In some implementations, the programming instructions stored by the surface computer-readable storage medium instructs the surface processor to perform operations including wirelessly transmitting, at a second frequency different from the first frequency, the command signal to the downhole controller to control the bottomhole assembly in response to determining that the buffer string contains the message that is valid.
The details of one or more implementations of the subject matter of this disclosure are set forth in the accompanying drawings and the description. Other features, aspects, and advantages of the subject matter will become apparent from the description, the drawings, and the claims.
This disclosure describes downhole wireless communication. Some well operations, such as well intervention, require data (sometimes in the form of command signals) to be communicated downhole to a tool string disposed within a wellbore. Some examples of methods of such downhole communication include the use of a wired connection, pressure of flow fluctuations in a circulation fluid, and pulling or pushing of coiled tubing. Wireless communication can be preferred in some cases, such as acid stimulation in multilateral wells. The systems and methods described in this disclosure include a surface controller and a downhole controller that communicate wirelessly with each other. The surface and downhole controllers operate at different frequencies to establish a duplex communication link. The downhole controller actively transmits signals to the surface controller, while the surface controller normally operates at an idle (waiting) state until it receives a valid message from the downhole controller. In response to receiving a valid message from the downhole controller, the surface controller transmits a command signal to the downhole controller to adjust a state of the downhole controller to perform a well operation, such as running a tool in hole, circulate fluid in a well, or actuating a tractor in the well.
The subject matter described in this disclosure can be implemented in particular implementations, so as to realize one or more of the following advantages. The systems and methods described are non-intrusive and do not negatively interfere with well operations, such as well intervention. The systems and methods described can be implemented to perform wireless communication from surface equipment to downhole equipment over long distances, for example, distances of greater than 20,000 feet. The systems and methods described can be implemented to optimize the available bandwidth for wireless communication between downhole and surface equipment. In well intervention operations, various information may be needed at the surface to safely and successfully perform a job, depending on the steps in the job program. In conventional downhole communication schemes (for example, wired communication) sensor data would be transmitted continuously at a desired communication rate. However, as wireless communication methods can be inherently slower, it can be desirable to be more selective on what data is transmitted in order to achieve the desired communication rate. By implementing various downhole states, such as run in hole (RIH), TRACTOR, and CIRCULATE, communication bandwidth and speed can be optimized. The systems and methods described can be implemented to continuously demodulate the messages at the surface for all known valid states to be able to determine the current state of downhole equipment.
In some implementations, the well 100 is a gas well that is used in producing hydrocarbon gas (such as natural gas) from the subterranean zones of interest 110 to the surface 106. While termed a “gas well,” the well need not produce only dry gas, and may incidentally or in much smaller quantities, produce liquid including oil, water, or both. In some implementations, the well 100 is an oil well that is used in producing hydrocarbon liquid (such as crude oil) from the subterranean zones of interest 110 to the surface 106. While termed an “oil well,” the well not need produce only hydrocarbon liquid, and may incidentally or in much smaller quantities, produce gas, water, or both. In some implementations, the production from the well 100 can be multiphase in any ratio. In some implementations, the production from the well 100 can produce mostly or entirely liquid at certain times and mostly or entirely gas at other times. For example, in certain types of wells it is common to produce water for a period of time to gain access to the gas in the subterranean zone. The concepts herein, though, are not limited in applicability to gas wells, oil wells, or even production wells, and could be used in wells for producing other gas or liquid resources or could be used in injection wells, disposal wells, or other types of wells used in placing fluids into the Earth.
As shown in
The wellhead defines an attachment point for other equipment to be attached to the well 100. For example,
The surface controller 210 includes a surface processor and a surface computer-readable storage medium coupled to the surface processor. The surface computer-readable storage medium stores programming instructions for execution by the surface processor, and the programming instructions instruct the surface processor to perform operations. In some implementations, the surface controller 210 is coupled to a display 212 at a surface location. The downhole controller 250 can be disposed in a wellbore (such as the wellbore of well 100) and includes a downhole processor and a downhole computer-readable storage medium coupled to the downhole processor. The downhole computer-readable storage medium stores programming instructions for execution by the downhole processor, and the programming instructions instruct the downhole processor to perform operations. An example of the surface controller 210 and the downhole controller 250 is provided in
At step 304, the status signal (received at step 302) is demodulated to a demodulated digital value. For example, at step 304, the status signal is demodulated to a bit (0 or 1).
At step 306, the demodulated value by is added to an end of a buffer string.
At step 308, the buffer string is processed to determine whether the buffer string contains a message that is valid. In some implementations, processing the buffer string at step 308 includes extracting a cyclic redundancy check (CRC) field string and an auxiliary field string from the buffer string. The cyclic redundancy check field string and the auxiliary field string each are associated with a known, predetermined bit string lengths. In some implementations, the known, predetermined bit string lengths associated with the cyclic redundancy check field string and the auxiliary field string are the same bit string length. In some implementations, the known, predetermined bit string lengths associated with the cyclic redundancy check field string and the auxiliary field string are different bit string lengths. For example, the cyclic redundancy check field string is an 8-bit CRC associated with a first, predetermined bit string length of 8 bits, and the auxiliary field string is associated with a second, predetermined bit string length of 4 bits. The first, predetermined bit string length (associated with the cyclic redundancy check field string) determines the bit string length of the checksum, which can be converted to a decimal value. The cyclic redundancy check field string can be any typical CRC, such as an 8-bit CRC, 16-bit CRC, 32-bit CRC, or 64-bit CRC. A CRC is called an n-bit CRC when its checksum value is n-bits (first, predetermined bit string length).
In some implementations, a remaining portion of the buffer string (excluding the cyclic redundancy check field string and the auxiliary field string) is considered the data string. In some implementations, the buffer string comprises, in order from right to left, the cyclic redundancy check field string, the auxiliary field string, and the data string. For example, for a buffer string that is 32 bits in length, starting from the right: the first 8 bits are attributed to the cyclic redundancy check field string, the subsequent 4 bits are attributed to the auxiliary field string, and the remaining 20 bits are attributed to the data string. In some implementations, the buffer string comprises, in order from right to left, the cyclic redundancy check field string, the data string, and the auxiliary field string. For example, for a buffer string that is 32 bits in length, starting from the right: the first 8 bits are attributed to the cyclic redundancy check field string, the subsequent 20 bits are attributed to the data string, and the remaining 4 bits are attributed to the auxiliary field string.
In some implementations, processing the buffer string at step 308 includes determining that the auxiliary field string translates to one of multiple valid states. The second, predetermined bit string length (associated with the auxiliary field string) determines the total number of states that can be represented by the auxiliary field string. For example, if the second, predetermined bit string length is 4 bits, then the auxiliary field string can be converted to a decimal (integer) value in a range of from 0 to 15, meaning there are a total of 16 possible states that can be represented by the auxiliary field string. In some cases, only a portion of the total possible states are considered “valid” states while the remaining portion are considered “invalid” states. For example, auxiliary field strings that convert to decimal values of 1, 2, 3, and 4 are valid states while the remaining states (that convert to 0, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, and 15) are invalid states. In some implementations, each of the valid states is associated with a respective, predetermined bit string length. In some implementations, the predetermined bit string lengths associated with the valid states are all different, such that each of the valid states can be uniquely identified. For example, one of the valid states is the auxiliary field string converted to a decimal value of 1 for a RUN IN HOLE state associated with a predetermined bit string length of 21 bits. For example, another one of the valid states is the auxiliary field string converted to a decimal value of 2 for a TRACTOR state associated with a predetermined bit string length of 47 bits. For example, another one of the valid states is the auxiliary field string converted to a decimal value of 3 for a CIRCULATE state associated with a predetermined bit string length of 50 bits. For example, another one of the valid states is the auxiliary field string converted to a decimal value of 4 for an AUX state associated with a predetermined bit string length of 60 bits. Each of the valid states (for example, RUN IN HOLE) have a unique structure of bits, whereas a main downhole parameter of interest, for example, can be a tension and compression measurement on a tool string of a downhole portion of the system 200 (for example, the bottomhole assembly 240). In some implementations, the target resolution of the measurement is 9 bits, resulting in a total bit string length (including the cyclic redundancy check field string of 8 bits and the auxiliary field string of 4 bits) is 21 bits. The valid states can include additional states that are typically encountered in well operations. Some additional examples of valid states include SETTING for setting downhole equipment, RELEASING for releasing downhole equipment, SHIFT for sliding sleeve valves, FRAC for fracturing operations, LOGGING for logging reservoir conditions, PERFORATING for perforating casing and/or tubing for enabling fluid communication, and CLEAN OUT for cleaning out of hole. An example of the received buffer string and some examples of the buffer string identified as having valid states are shown in
Referring back to
In some implementations, processing the buffer string at step 308 includes calculating a checksum of a portion of the buffer string having the predetermined bit string length of the respective valid state in response to determining the predetermined bit string length associated with the respective valid state. For example, processing the buffer string at step 308 includes, in response to determining the predetermined bit string length of 47 bits associated with the TRACTOR state, calculating a checksum of a portion of the buffer string (such as the data string) having the predetermined bit string length of 47 bits associated with the TRACTOR state.
In some implementations, processing the buffer string at step 308 includes determining that the calculated checksum matches the cyclic redundancy check field string. In some implementations, the downhole controller 250 takes a message payload (for example, the data string) as a number, performs a polynomic division on the number, converts a remainder resulting from the division to the cyclic redundancy check field string, and transmits the cyclic redundancy check field string along with the data string to the surface controller 210. In some implementations, the surface controller 210 performs the same polynomic division on the information received from the downhole controller 250 and compares the remainder with the received cyclic redundancy check field string. If the remainder calculated by the surface controller 210 matches the decimal value of the cyclic redundancy check field string (transmitted from the downhole controller 250), then the buffer string contains a valid message. If it is determined at step 308 that the buffer string contains a valid message, the method 300 proceeds to step 310. If it is determined at step 308 that the buffer string does not contain a valid message, the method 300 cycles back to step 302.
In response to determining that the buffer string contains a valid message at step 308, the message is decoded at step 310. For example, the message decoded at step 310 is a message representing the current state of the downhole system (for example, including the bottomhole assembly 240) in relation to actuating a tractor, running a tool in hole, or circulating fluids in the wellbore. In some implementations, the decoded message is stored in a storage medium (for example, the storage medium of the surface controller 210). In some implementations, the decoded message is displayed at a surface location. In some implementations, the buffer string is emptied in response to decoding the message at step 310.
In some implementations, a command signal is wirelessly transmitted at a second frequency that is different from the first frequency to the downhole controller 250 to adjust a state of the downhole controller 250. For example, the command signal is wirelessly transmitted at the second frequency by the surface controller 210 to the downhole controller 250. In some implementations, the second frequency is in a range of from about 0.01 Hz to about 2 Hz. For example, the command signal instructs the downhole controller 250 to perform a downhole operation in relation to actuating a tractor, running a tool in hole, or circulating fluids in the wellbore, depending on the decoded message including one of the valid states. For example, the command signal instructs the downhole controller 250 to change a state of the downhole controller 250 in relation to actuating a tractor, running a tool in hole, or circulating fluids in the wellbore, depending on the decoded message. In some implementations, steps 302, 304, 306, 308, and 310 are implemented by the surface controller 210. Some of the steps (for example, step 302) can involve interaction with the downhole controller 250.
At step 354, the bit received at step 352 is added to an end of a buffer. In some implementations, step 354 of method 350 corresponds to step 306 of method 300.
At step 356, an auxiliary field string and a cyclic redundancy check field string are extracted from the buffer. At step 358, it is determined whether the auxiliary field string translates to a valid state. If the auxiliary field string translates to a valid state at step 358, the method 350 proceeds to step 360, where the bit string length associated with the valid state (determined at step 358) is determined. If the auxiliary field string does not translate to a valid state at step 358, the method 350 proceeds to step 368, where the method 350 cycles back to step 352. At step 362, a checksum value is calculated from a portion of the bit string length in the buffer determined at step 360 following the auxiliary field string. At step 364, it is determined whether the cyclic redundancy check field string matches the checksum value calculated at step 362. If the cyclic redundancy check field string matches the checksum value (calculated at step 362) at step 364, the method 350 proceeds to step 366, where the message is processed from the portion of the bit string length in the buffer determined at step 360 following the auxiliary field string. In some implementations, steps 356, 358, 360, 362, 364, and 366 correspond to steps 308 and 310 of method 300.
If the cyclic redundancy check field string does not match the checksum value (calculated at step 362) at step 364, the method 350 proceeds to step 368, where the method 350 cycles back to step 352. In some implementations, steps 352, 354, 356, 358, 360, 362, 364, 366, and 368 are implemented by the surface controller 210. Some of the steps (for example, steps 352 and 368) involve interaction with the downhole controller 250. In some implementations, step(s) of method 300 can be combined with step(s) of method 350. For example, the system 200 (surface controller 210 and downhole controller 250 communicating with each other) can implement any combination of steps of method 300 and steps of method 350.
The controller 400 includes a processor 405. Although illustrated as a single processor 405 in
The controller 400 can also include a database 406 that can hold data for the controller 400 or other components (or a combination of both) that can be connected to the network. Although illustrated as a single database 406 in
The controller 400 includes a memory 407 that can hold data for the controller 400 or other components (or a combination of both) that can be connected to the network. Although illustrated as a single memory 407 in
The memory 407 stores controller-readable instructions executable by the processor 405 that, when executed, cause the processor 405 to perform operations, such as processing the buffer string at step 308 of method 300 to determine whether the buffer string contains a message that is valid. The controller 400 can also include a power supply 414. The power supply 414 can include a rechargeable or non-rechargeable battery that can be configured to be either user- or non-user-replaceable. The power supply 414 can be hard-wired. There may be any number of controllers 400 associated with, or external to, a computer system containing controller 400, each controller 400 communicating over the network. Further, the term “client,” “user,” “operator,” and other appropriate terminology may be used interchangeably, as appropriate, without departing from this specification. Moreover, this specification contemplates that many users may use one controller 400, or that one user may use multiple controllers 400.
While this specification contains many specific implementation details, these should not be construed as limitations on the scope of what may be claimed, but rather as descriptions of features that may be specific to particular implementations. Certain features that are described in this specification in the context of separate implementations can also be implemented, in combination, in a single implementation. Conversely, various features that are described in the context of a single implementation can also be implemented in multiple implementations, separately, or in any sub-combination. Moreover, although previously described features may be described as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can, in some cases, be excised from the combination, and the claimed combination may be directed to a sub-combination or variation of a sub-combination.
As used in this disclosure, the terms “a,” “an,” or “the” are used to include one or more than one unless the context clearly dictates otherwise. The term “or” is used to refer to a nonexclusive “or” unless otherwise indicated. The statement “at least one of A and B” has the same meaning as “A, B, or A and B.” In addition, it is to be understood that the phraseology or terminology employed in this disclosure, and not otherwise defined, is for the purpose of description only and not of limitation. Any use of section headings is intended to aid reading of the document and is not to be interpreted as limiting; information that is relevant to a section heading may occur within or outside of that particular section.
As used in this disclosure, the term “about” or “approximately” can allow for a degree of variability in a value or range, for example, within 10%, within 5%, or within 1% of a stated value or of a stated limit of a range.
As used in this disclosure, the term “substantially” refers to a majority of, or mostly, as in at least about 50%, 60%, 70%, 80%, 90%, 95%, 96%, 97%, 98%, 99%, 99.5%, 99.9%, 99.99%, or at least about 99.999% or more.
Values expressed in a range format should be interpreted in a flexible manner to include not only the numerical values explicitly recited as the limits of the range, but also to include all the individual numerical values or sub-ranges encompassed within that range as if each numerical value and sub-range is explicitly recited. For example, a range of “0.1% to about 5%” or “0.1% to 5%” should be interpreted to include about 0.1% to about 5%, as well as the individual values (for example, 1%, 2%, 3%, and 4%) and the sub-ranges (for example, 0.1% to 0.5%, 1.1% to 2.2%, 3.3% to 4.4%) within the indicated range. The statement “X to Y” has the same meaning as “about X to about Y,” unless indicated otherwise. Likewise, the statement “X, Y, or Z” has the same meaning as “about X, about Y, or about Z,” unless indicated otherwise.
Particular implementations of the subject matter have been described. Other implementations, alterations, and permutations of the described implementations are within the scope of the following claims as will be apparent to those skilled in the art. While operations are depicted in the drawings or claims in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed (some operations may be considered optional), to achieve desirable results. In certain circumstances, multitasking or parallel processing (or a combination of multitasking and parallel processing) may be advantageous and performed as deemed appropriate.
Moreover, the separation or integration of various system modules and components in the previously described implementations should not be understood as requiring such separation or integration in all implementations, and it should be understood that the described components and systems can generally be integrated together or packaged into multiple products.
Accordingly, the previously described example implementations do not define or constrain the present disclosure. Other changes, substitutions, and alterations are also possible without departing from the spirit and scope of the present disclosure.
Saeed, Abubaker, Fellinghaug, Jarl André, Fiksdal, Vegard, Prusakov, Alexey
Patent | Priority | Assignee | Title |
Patent | Priority | Assignee | Title |
10115942, | Jun 05 2013 | The Regents of the University of California | Rate-sensitive and self-releasing battery cells and battery-cell structures as structural and/or energy-absorbing vehicle components |
10174611, | Aug 18 2012 | Halliburton Energy Services, Inc.; Halliburton Energy Services, Inc | Mud pulse telemetry systems and methods using receive array processing |
10209383, | Oct 31 2013 | Halliburton Energy Services, Inc. | Distributed acoustic sensing systems and methods employing under-filled multi-mode optical fiber |
10253615, | Feb 18 2014 | Nederlandse Organisatie voor toegepast-natuurwetenschappelijk onderzoek TNO | Method and a system for ultrasonic inspection of well bores |
10367434, | May 30 2017 | Saudi Arabian Oil Company | Harvesting energy from fluid flow |
10724312, | Sep 22 2015 | Schlumberger Technology Corporation | Coiled tubing bottom hole assembly deployment |
10844672, | May 19 2017 | Vibration reducing drill string system and method | |
10934814, | Jun 06 2018 | Saudi Arabian Oil Company; Wireless Instrumentation Systems AS | Liner installation with inflatable packer |
2643723, | |||
3175618, | |||
3448305, | |||
3558936, | |||
3663845, | |||
3916999, | |||
3918520, | |||
3970877, | Aug 31 1973 | BAROID TECHNOLOGY, INC , A CORP OF DE | Power generation in underground drilling operations |
4387318, | Jun 04 1981 | PIEZOELECTRIC PRODUCTS, INC , A CORP OF MA | Piezoelectric fluid-electric generator |
4536674, | Jun 22 1984 | Piezoelectric wind generator | |
4685521, | Apr 17 1985 | Well apparatus | |
4685523, | May 06 1986 | Halliburton Company | Removable side pocket mandrel |
5092176, | Jun 29 1990 | The Babcock & Wilcox Company | Method for determining deposit buildup |
5113379, | Dec 05 1977 | Method and apparatus for communicating between spaced locations in a borehole | |
5150619, | Jul 12 1989 | Schlumberger Industries Limited | Vortex flowmeters |
5215151, | Sep 26 1991 | CUDD PRESSURE CONTROL, INC | Method and apparatus for drilling bore holes under pressure |
5224182, | Aug 29 1991 | Virginia Tech Intellectual Properties, Inc | Spatially-weighted two-mode optical fiber sensors |
5301760, | Sep 10 1992 | Halliburton Energy Services, Inc | Completing horizontal drain holes from a vertical well |
5317223, | Jan 21 1987 | Dynamotive Corporation | Method and device in magnetostrictive motion systems |
5375622, | Dec 07 1993 | Multiport valve including leakage control system, particularly for a thermal regenerative fume incinerator | |
5503228, | Dec 05 1994 | HOUSTON ENGINEERS, INC | Jar apparatus and method of jarring |
5566762, | Apr 06 1994 | TIW Corporation | Thru tubing tool and method |
5613555, | Dec 22 1994 | DOWELL A DIVISION OF SCHLUMBERGER TECHNOLOGY CORPORATION | Inflatable packer with wide slat reinforcement |
5708500, | Feb 04 1997 | Tektronix, Inc. | Multimode optical time domain reflectometer having improved resolution |
5738173, | Mar 10 1995 | Baker Hughes Incorporated | Universal pipe and tubing injection apparatus and method |
5892860, | Jan 21 1997 | CiDRA Corporate Services, Inc | Multi-parameter fiber optic sensor for use in harsh environments |
5965964, | Sep 16 1997 | Halliburton Energy Services, Inc.; Halliburton Energy Services, Inc | Method and apparatus for a downhole current generator |
5975205, | Sep 30 1997 | HIGH PRESSURES INTEGRITY, INC | Gravel pack apparatus and method |
6044906, | Aug 04 1995 | Drillflex | Inflatable tubular sleeve for tubing or obturating a well or pipe |
6068015, | Aug 15 1996 | Camco International Inc. | Sidepocket mandrel with orienting feature |
6082455, | Jul 08 1998 | Camco International Inc.; CAMCO INTERNATIONAL INC | Combination side pocket mandrel flow measurement and control assembly |
6193079, | Apr 29 1999 | Retail Space Solutions LLC | Product display and support |
6209652, | Feb 03 1997 | BJ SERVICES COMPANY, U S A | Deployment system method and apparatus for running bottomhole assemblies in wells, particularly applicable to coiled tubing operations |
6349768, | Sep 30 1999 | Schlumberger Technology Corporation | Method and apparatus for all multilateral well entry |
6504258, | Jan 28 2000 | Halliburton Energy Services, Inc. | Vibration based downhole power generator |
6578638, | Aug 27 2001 | WEATHERFORD TECHNOLOGY HOLDINGS, LLC | Drillable inflatable packer & methods of use |
6588266, | May 02 1997 | Baker Hughes Incorporated | Monitoring of downhole parameters and tools utilizing fiber optics |
6728165, | Oct 29 1999 | Northrop Grumman Systems Corporation | Acoustic sensing system for downhole seismic applications utilizing an array of fiber optic sensors |
6768214, | Jan 28 2000 | Halliburton Energy Services, Inc | Vibration based power generator |
6779601, | Jan 16 2002 | WEATHERFORD TECHNOLOGY HOLDINGS, LLC | Inflatable packing element |
6913079, | Jun 29 2000 | ZIEBEL A S ; ZIEBEL, INC | Method and system for monitoring smart structures utilizing distributed optical sensors |
6920085, | Feb 14 2001 | Halliburton Energy Services, Inc.; Halliburton Energy Services, Inc | Downlink telemetry system |
7086481, | Oct 11 2002 | WEATHERFORD TECHNOLOGY HOLDINGS, LLC | Wellbore isolation apparatus, and method for tripping pipe during underbalanced drilling |
7199480, | Apr 15 2004 | Halliburton Energy Services, Inc | Vibration based power generator |
7224077, | Jan 14 2004 | Ocean Power Technologies, Inc.; Ocean Power Technologies | Bluff body energy converter |
7242103, | Feb 08 2005 | Welldynamics, Inc. | Downhole electrical power generator |
7249805, | Nov 18 2002 | KINERGL PTY LTD | Motion activated power source |
7345372, | Mar 08 2006 | Hitachi Rail Limited | Electromechanical generator for, and method of, converting mechanical vibrational energy into electrical energy |
7347261, | Sep 08 2005 | Schlumberger Technology Corporation | Magnetic locator systems and methods of use at a well site |
7397388, | Mar 24 2004 | Schlumberger Technology Corporation | Borehold telemetry system |
7410003, | Nov 18 2005 | BAKER HUGHES HOLDINGS LLC | Dual purpose blow out preventer |
7668411, | Jun 06 2008 | Schlumberger Technology Corporation | Distributed vibration sensing system using multimode fiber |
7847421, | Jan 19 2007 | STRATEGIC DESIGN FEDERATION W, INC | System for generating electrical energy from ambient motion |
7906861, | Nov 28 2007 | Schlumberger Technology Corporation | Harvesting energy in remote locations |
7946341, | Nov 02 2007 | Schlumberger Technology Corporation | Systems and methods for distributed interferometric acoustic monitoring |
7980309, | Apr 30 2008 | Halliburton Energy Services, Inc | Method for selective activation of downhole devices in a tool string |
8047232, | Nov 15 2004 | The Regents of the University of Michigan | Enhancement of vortex induced forces and motion through surface roughness control |
8258644, | Oct 12 2009 | Apparatus for harvesting energy from flow-induced oscillations and method for the same | |
8408064, | Nov 06 2008 | Schlumberger Technology Corporation | Distributed acoustic wave detection |
8421251, | Mar 26 2010 | Schlumberger Technology Corporation | Enhancing the effectiveness of energy harvesting from flowing fluid |
8426988, | Jul 16 2008 | Halliburton Energy Services, Inc. | Apparatus and method for generating power downhole |
8493556, | Apr 29 2011 | Corning Incorporated | Distributed brillouin sensing systems and methods using few-mode sensing optical fiber |
8564179, | Aug 03 2010 | Baker Hughes Incorporated | Apparatus and method for downhole energy conversion |
8604634, | Jun 05 2009 | Schlumberger Technology Corporation | Energy harvesting from flow-induced vibrations |
8638002, | Aug 04 2009 | Kaman vortex street generator | |
8648480, | Jun 25 2012 | The United States of America as represented by the Secretary of the Navy | Energy harvesting system using flow-induced vibrations |
8681000, | Apr 09 2003 | Visible Assets, Inc | Low frequency inductive tagging for lifecycle management |
8749400, | Aug 18 2008 | Halliburton Energy Services, Inc. | Symbol synchronization for downhole OFDM telemetry |
8786113, | Apr 02 2008 | TENDEKA AS | Device and a method for downhole energy generation |
8851192, | Dec 19 2008 | Schlumberger Technology Corporation | Method and apparatus for forming a tubular conduit |
8916983, | Sep 10 2009 | Schlumberger Technology Corporation | Electromagnetic harvesting of fluid oscillations for downhole power sources |
8925649, | Sep 23 2014 | Focus Tools Colorado, LLC | System to harvest energy in a wellbore |
8941384, | Jan 02 2009 | NextStream Wired Pipe, LLC | Reliable wired-pipe data transmission system |
8948550, | Feb 21 2012 | Corning Incorporated | Sensing systems and few-mode optical fiber for use in such systems |
9026376, | Jul 22 2008 | Nederlandse Organisatie voor toegepast-natuurwetenschappelijk onderzoek TNO | Corrosion monitoring |
9091144, | Mar 23 2012 | BAKER HUGHES HOLDINGS LLC | Environmentally powered transmitter for location identification of wellbores |
9106159, | Sep 23 2014 | Focus Tools Colorado, LLC | System to harvest energy in a wellbore |
9130161, | Dec 21 2010 | OSCILLA POWER INC | Vibration energy harvesting apparatus |
9140815, | Jun 25 2010 | SHELL USA, INC | Signal stacking in fiber optic distributed acoustic sensing |
9170149, | Sep 01 2010 | Schlumberger Technology Corporation | Distributed fiber optic sensor system with improved linearity |
9239043, | Feb 17 2009 | Conversion of kinetic into electric energy utilizing the universal principles of gravity and magnetism | |
9321222, | Aug 13 2013 | Baker Hughes Incorporated | Optical fiber sensing with enhanced backscattering |
9322389, | Sep 01 2011 | CHEVRON U S A INC | Power generation in a tubular structure by way of electromagnetic induction |
9499460, | Dec 19 2012 | TORAY INDUSTRIES, INC | Alcohol production method |
9574420, | Oct 21 2013 | ONESUBSEA IP UK LIMITED | Well intervention tool and method |
9581489, | Jan 26 2013 | Halliburton Energy Services, Inc | Distributed acoustic sensing with multimode fiber |
9599460, | Oct 16 2014 | NEC Corporation | Hybrid Raman and Brillouin scattering in few-mode fibers |
9599505, | Dec 10 2012 | The Government of the United States of America, as represented by the Secretary of the Navy | Fiber optic directional acoustic sensor |
9617847, | Oct 29 2013 | Halliburton Energy Services, Inc.; Halliburton Energy Services, Inc | Robust optical fiber-based distributed sensing systems and methods |
9625603, | May 27 2011 | Halliburton Energy Services, Inc. | Downhole communication applications |
9638671, | May 25 2012 | FBS, Inc. | Systems and methods for damage detection in structures using guided wave phased arrays |
9759556, | Oct 18 2011 | CIDRA CORPORATE SERVICES INC | Acoustic probing technique for the determination of interior pipe coating wear or scale build-up and liner wear |
9784077, | Mar 21 2011 | Schlumberger Technology Corporation | Apparatus and a method for securing and sealing a tubular portion to another tubular |
9803976, | Apr 22 2015 | Clampon AS | Methods and apparatus for measurement or monitoring of wall thicknesses in the walls of pipes or similar structures |
9903172, | Nov 18 2014 | AARBAKKE INNOVATION AS | Subsea slanted wellhead system and BOP system with dual injector head units |
20020043404, | |||
20040156264, | |||
20050274527, | |||
20060042792, | |||
20060086498, | |||
20070012437, | |||
20070181304, | |||
20080048455, | |||
20080100828, | |||
20080277941, | |||
20080296067, | |||
20090107725, | |||
20090166045, | |||
20100164231, | |||
20100308592, | |||
20110049901, | |||
20110088462, | |||
20110273032, | |||
20120018143, | |||
20120211245, | |||
20120274477, | |||
20120292915, | |||
20130068481, | |||
20130091942, | |||
20130119669, | |||
20130128697, | |||
20130167628, | |||
20130200628, | |||
20130227940, | |||
20130231787, | |||
20140153369, | |||
20140167418, | |||
20140175800, | |||
20140284937, | |||
20140311737, | |||
20150053009, | |||
20150060083, | |||
20150114127, | |||
20150318920, | |||
20160168957, | |||
20160177659, | |||
20160273947, | |||
20170033713, | |||
20170075029, | |||
20170235006, | |||
20170260846, | |||
20180045543, | |||
20180052041, | |||
20180155991, | |||
20180252096, | |||
20180274311, | |||
20180351480, | |||
20190025095, | |||
20190049054, | |||
20190052374, | |||
20190055792, | |||
20190128113, | |||
20190253003, | |||
20190253004, | |||
20190253005, | |||
20190253006, | |||
20190376371, | |||
20200270983, | |||
20200300083, | |||
20210285315, | |||
CN101488805, | |||
CN101592475, | |||
CN102471701, | |||
CN103913186, | |||
CN105043586, | |||
CN105371943, | |||
CN107144339, | |||
CN108534910, | |||
CN201496028, | |||
CN206496768, | |||
DE202012103729, | |||
EP380148, | |||
GB2218721, | |||
JP2010156172, | |||
WO1993006331, | |||
WO2009046709, | |||
WO2014116458, | |||
WO2015073018, | |||
WO2016111849, | |||
WO2016130620, | |||
WO2017146593, | |||
WO2018125071, | |||
WO2018145215, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Mar 01 2021 | SAEED, ABUBAKER | Saudi Arabian Oil Company | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 055490 | /0628 | |
Mar 02 2021 | FELLINGHAUG, JARL ANDRE | Wireless Instrumentation Systems AS | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 055490 | /0748 | |
Mar 02 2021 | FIKSDAL, VEGARD | Wireless Instrumentation Systems AS | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 055490 | /0748 | |
Mar 02 2021 | PRUSAKOV, ALEXEY | Wireless Instrumentation Systems AS | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 055490 | /0748 | |
Mar 02 2021 | FELLINGHAUG, JARL ANDRE | Wireless Instrumentation Systems AS | CORRECTIVE ASSIGNMENT TO CORRECT THE COUNTRY OF INCORPORATION IN ASSIGNMENT DOCUMENT PREVIOUSLY RECORDED AT REEL: 055490 FRAME: 0748 ASSIGNOR S HEREBY CONFIRMS THE ASSIGNMENT | 060176 | /0144 | |
Mar 02 2021 | FIKSDAL, VEGARD | Wireless Instrumentation Systems AS | CORRECTIVE ASSIGNMENT TO CORRECT THE COUNTRY OF INCORPORATION IN ASSIGNMENT DOCUMENT PREVIOUSLY RECORDED AT REEL: 055490 FRAME: 0748 ASSIGNOR S HEREBY CONFIRMS THE ASSIGNMENT | 060176 | /0144 | |
Mar 02 2021 | PRUSAKOV, ALEXEY | Wireless Instrumentation Systems AS | CORRECTIVE ASSIGNMENT TO CORRECT THE COUNTRY OF INCORPORATION IN ASSIGNMENT DOCUMENT PREVIOUSLY RECORDED AT REEL: 055490 FRAME: 0748 ASSIGNOR S HEREBY CONFIRMS THE ASSIGNMENT | 060176 | /0144 | |
Mar 03 2021 | Saudi Arabian Oil Company | (assignment on the face of the patent) | / | |||
Mar 03 2021 | Wireless Instrumentation Systems AS | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Mar 03 2021 | BIG: Entity status set to Undiscounted (note the period is included in the code). |
Date | Maintenance Schedule |
Mar 14 2026 | 4 years fee payment window open |
Sep 14 2026 | 6 months grace period start (w surcharge) |
Mar 14 2027 | patent expiry (for year 4) |
Mar 14 2029 | 2 years to revive unintentionally abandoned end. (for year 4) |
Mar 14 2030 | 8 years fee payment window open |
Sep 14 2030 | 6 months grace period start (w surcharge) |
Mar 14 2031 | patent expiry (for year 8) |
Mar 14 2033 | 2 years to revive unintentionally abandoned end. (for year 8) |
Mar 14 2034 | 12 years fee payment window open |
Sep 14 2034 | 6 months grace period start (w surcharge) |
Mar 14 2035 | patent expiry (for year 12) |
Mar 14 2037 | 2 years to revive unintentionally abandoned end. (for year 12) |