CN118774761B - Mud pulse signal coding method and device for near-bit geosteering system - Google Patents
Mud pulse signal coding method and device for near-bit geosteering system Download PDFInfo
- Publication number
- CN118774761B CN118774761B CN202411264291.5A CN202411264291A CN118774761B CN 118774761 B CN118774761 B CN 118774761B CN 202411264291 A CN202411264291 A CN 202411264291A CN 118774761 B CN118774761 B CN 118774761B
- Authority
- CN
- China
- Prior art keywords
- preset
- value
- coding
- values
- code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000012795 verification Methods 0.000 claims abstract description 33
- 238000004590 computer program Methods 0.000 claims description 8
- 238000005259 measurement Methods 0.000 abstract description 13
- 238000005553 drilling Methods 0.000 abstract description 10
- 238000005516 engineering process Methods 0.000 abstract description 7
- 230000005540 biological transmission Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 125000004122 cyclic group Chemical group 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000002002 slurry Substances 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000013144 data compression Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012163 sequencing technique Methods 0.000 description 2
- 239000004215 Carbon black (E152) Substances 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 229930195733 hydrocarbon Natural products 0.000 description 1
- 150000002430 hydrocarbons Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000003208 petroleum Substances 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000011435 rock Substances 0.000 description 1
Classifications
-
- E—FIXED CONSTRUCTIONS
- E21—EARTH OR ROCK DRILLING; MINING
- E21B—EARTH OR ROCK DRILLING; OBTAINING OIL, GAS, WATER, SOLUBLE OR MELTABLE MATERIALS OR A SLURRY OF MINERALS FROM WELLS
- E21B47/00—Survey of boreholes or wells
- E21B47/12—Means for transmitting measuring-signals or control signals from the well to the surface, or from the surface to the well, e.g. for logging while drilling
- E21B47/14—Means for transmitting measuring-signals or control signals from the well to the surface, or from the surface to the well, e.g. for logging while drilling using acoustic waves
- E21B47/18—Means for transmitting measuring-signals or control signals from the well to the surface, or from the surface to the well, e.g. for logging while drilling using acoustic waves through the well fluid, e.g. mud pressure pulse telemetry
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mining & Mineral Resources (AREA)
- Geology (AREA)
- Remote Sensing (AREA)
- Environmental & Geological Engineering (AREA)
- Fluid Mechanics (AREA)
- Geophysics (AREA)
- Acoustics & Sound (AREA)
- General Life Sciences & Earth Sciences (AREA)
- Geochemistry & Mineralogy (AREA)
- Geophysics And Detection Of Objects (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
The invention discloses a mud pulse signal coding method and a device thereof of a near-bit geosteering system, and relates to the technical field of measurement while drilling, wherein the mud pulse signal coding method comprises the steps of determining to-be-coded values of all underground parameters transmitted to a ground receiver by the near-bit geosteering system, determining coding digits N of binary codes and the number I of preset coding values based on all to-be-coded values, determining the position range of each preset coding value in binary codes corresponding to the underground parameters based on a preset coding strategy, the coding digits N and the number I for each underground parameter, determining target position numbers of all preset coding values based on the position range of each preset coding value by adopting a preset verification strategy, and generating the binary codes corresponding to the underground parameters based on the target position numbers of all preset coding values. The invention solves the technical problem that the downhole parameters cannot be transmitted quickly due to lower coding efficiency of the downhole parameters in the related technology.
Description
Technical Field
The invention relates to the technical field of measurement while drilling, in particular to a mud pulse signal coding method and device of a near-bit geosteering system.
Background
In logging while drilling for petroleum geological exploration, downhole measurement data is typically transmitted through a slurry. Firstly, underground measurement data are collected and processed through underground instruments such as a near-bit, then the underground measurement data are encoded according to a certain encoding rule, then a mud pulse signal conforming to the encoding rule is generated through a pulse generator, the mud slurry is used as a medium to transmit the signal to the ground, then the mud pulse signal is collected by a pressure sensor on the ground, after preliminary processing of the ground processing instrument, the mud pulse signal is transmitted into decoding software to complete filtering of the mud signal, and finally the underground measurement data are resolved according to the established decoding rule. Thus, it is a critical step in the overall logging while drilling process how to encode the acquired downhole measurement data to obtain a mud pulse signal that can be transmitted.
Currently, with the development of drilling technology, the underground measurement and control parameters are more and more, and the requirement on underground measurement data is also higher and more, so that the transmission rate of the underground measurement data is higher and more required. The current method for encoding the mud pulse signals cannot meet the current requirements. Therefore, how to transmit more downhole parameters at the same time, research on more stable and efficient codec methods becomes a major problem in the measurement-while-drilling field.
In the related art, the rapid data transmission is realized by (1) a rapid coding scheme, namely, selecting proper time slot positions by moving pulse positions, so that the number of needed time slots is reduced, the coding efficiency is improved, and further more downhole parameters are transmitted, and (2) a data compression scheme, namely, compressing data and combining a rearrangement algorithm, so that the data volume actually transmitted is reduced, and the data transmission rate is improved. However, there is uncertainty in the pulse position in the above-mentioned fast encoding scheme, and it is difficult to accurately and rapidly determine the pulse position, resulting in lower encoding accuracy and lower encoding speed. In the data compression scheme, the operation amount of the compression algorithm is large, the operation is difficult in real time, and the algorithm is not easy to realize.
In view of the above problems, no effective solution has been proposed at present.
Disclosure of Invention
The embodiment of the invention provides a mud pulse signal coding method and device of a near-bit geosteering system, which at least solve the technical problem that the downhole parameters cannot be quickly transmitted due to low coding efficiency of the downhole parameters in the related technology.
According to one aspect of the embodiment of the invention, a mud pulse signal coding method of a near-bit geosteering system is provided, and the method comprises the steps of determining values to be coded of each downhole parameter transmitted to a surface receiver by the near-bit geosteering system, determining a coding bit number N of binary codes and the number I of preset coding values based on all the values to be coded, wherein N > I, N and I are positive integers, determining a position range of each preset coding value in the binary codes corresponding to the downhole parameter based on a preset coding strategy, the coding bit number N and the number I for each downhole parameter, determining target position numbers of all the preset coding values based on the position range of each preset coding value, and generating the binary codes corresponding to the downhole parameter based on the target position numbers of all the preset coding values, wherein the binary codes are used for generating the mud pulse signal of the downhole parameter.
Further, the step of determining the value to be encoded for each downhole parameter transmitted by the near-bit geosteering system to the surface receiver includes determining a resolution for each of the downhole parameters, and for each of the downhole parameters, determining the value to be encoded for the downhole parameter based on the parameter value for the downhole parameter and the resolution.
Further, the step of determining the number of binary coded bits N and the number of preset coded values I based on all the values to be coded comprises the steps of determining a range of values to be coded based on all the values to be coded, and determining the number of binary coded bits N and the number of preset coded values I of the binary coding corresponding to the range of values to be coded based on a preset corresponding table, wherein the preset corresponding table records binary coding information corresponding to each range of values to be coded, and the binary coding information comprises the number of coding bits N and the number of preset coded values I.
Further, the preset encoding strategy comprises the steps of determining a position range of each preset encoding value in the binary encoding corresponding to the downhole parameter based on a preset number of 0 ends and an encoding interval between every two preset encoding values, wherein the first residual number is a number obtained by subtracting a sequence number of the first preset encoding value from the number I, determining the starting position of the current preset encoding value based on the encoding number N, the preset number, a first residual number and the encoding interval, determining the ending position of the current preset encoding value based on the encoding number N, the preset number, the first residual number and the encoding interval, wherein the first residual number is a number obtained by subtracting the sequence number of the first preset encoding value from the number I, determining the starting position of the current preset encoding value based on the encoding interval and a position number of a last preset encoding value, and determining the ending position of the current preset encoding value based on the encoding number N, the preset number, a second residual number and the encoding interval, and determining the current position of the current preset encoding value until the preset number is equal to the sequence number of the current position of the current preset encoding value minus the sequence number of each preset number I.
Further, before determining target position numbers of all preset code values by a preset verification policy based on the position ranges of the preset code values of each bit, initializing a code total number, determining the target position numbers of all preset code values by a preset verification policy based on the position ranges of the preset code values of each bit, wherein the step of determining the target position numbers of all preset code values by the preset verification policy comprises determining initial position numbers of the preset code values of the I-1 th bit and all bits before the preset code values of the I-1 th bit based on the position ranges, determining the current position range of the preset code values of the I-1 th bit based on the initial position numbers of the preset code values of the I-1 th bit, determining an available position set and an available position number of the preset code values based on the preset verification policy, all the initial position numbers and the current position ranges, determining the current code total number based on the available position number, determining the available position number based on the current code total number being greater than the value to be coded, determining the available position number as the available position number from the preset code total number and the available position number and determining the available position number as the target position number of the I-1 th bit.
Further, after determining the current coding total number based on the available position number, the method further comprises the steps of adjusting the initial position number of the I-1 th bit preset coding value to obtain a latest position number under the condition that the current coding total number is smaller than or equal to the value to be coded, determining the latest position range of the I-1 th bit preset coding value based on the latest position number of the I-1 th bit preset coding value, calculating the sum of the initial position numbers of all the bits of the preset coding value before the I-1 th bit preset coding value and the latest position number to obtain a number sum, determining the latest available position set of the I-1 th bit preset coding value and the latest available position number based on the number sum and the preset verification strategy, accumulating the current coding total number based on the latest available position number, comparing the latest coding total number with the value to be coded, continuing to code the latest position number until the latest position number is smaller than or equal to the preset position number 1 st until the latest position number is smaller than the initial position number 1, and the latest position number is equal to the initial position number to the latest position number 1.
Further, after generating the binary codes corresponding to the downhole parameters based on the target position numbers of all the preset coding values, generating mud pulse signals of the downhole parameters based on the binary codes, and transmitting the mud pulse signals to the surface receiver through the near-bit geosteering system, wherein the surface receiver determines a decoding strategy based on the preset coding strategy and the preset verification strategy, and decodes the mud pulse signals by adopting the decoding strategy to obtain the downhole parameters.
According to another aspect of the embodiment of the invention, a mud pulse signal encoding device of a near-bit geosteering system is provided, and the device comprises a first determining unit, a third determining unit and a first generating unit, wherein the first determining unit is used for determining values to be encoded of each downhole parameter transmitted to a surface receiver by the near-bit geosteering system, and determining a coding bit number N of binary codes and the number I of preset coding values based on all the values to be encoded, wherein N > I, N and I are positive integers, the second determining unit is used for determining a position range of each preset coding value in the binary codes corresponding to each downhole parameter based on a preset coding strategy, the coding bit number N and the number I, the third determining unit is used for determining target position numbers of all the preset coding values based on the position range of each preset coding value, and the first generating unit is used for generating the binary codes corresponding to the downhole parameter based on the target position numbers of all the preset coding values, and the binary codes are used for generating the mud pulse signal corresponding to the downhole parameter.
Further, the first determining unit comprises a first determining module for determining a resolution of each of the downhole parameters, and a second determining module for determining, for each of the downhole parameters, the value to be encoded of the downhole parameter based on the parameter value of the downhole parameter and the resolution.
Further, the second determining unit comprises a third determining module and a fourth determining module, wherein the third determining module is used for determining a range of values to be encoded based on all the values to be encoded, the fourth determining module is used for determining the number N of the binary encoding bits and the number I of the preset encoding values corresponding to the range of values to be encoded based on a preset corresponding table, and the preset corresponding table records binary encoding information corresponding to each range of values to be encoded, wherein the binary encoding information comprises the number N of the encoding bits and the number I of the preset encoding values.
Further, the preset encoding strategy comprises a preset number ending with 0 and an encoding interval between every two preset encoding values, the third determining unit comprises a first serving module for taking a first encoding position of the binary encoding as a starting position of the first preset encoding value, a fifth determining module for determining an ending position of the first preset encoding value based on the encoding bit number N, the preset number, a first residual number and the encoding interval, wherein the first residual number is a number of the first preset encoding value subtracted from the number I, a sixth determining module for determining the starting position of the current preset encoding value based on the encoding interval and a position number of the last preset encoding value, and determining an ending position of the current preset encoding value based on the encoding bit number N, the preset number, a second residual number and the encoding interval until the ordering of the current preset encoding value is equal to the number I, wherein the first residual number is a number of the current preset encoding value subtracted from the number I, and the starting position of each preset encoding value is determined based on the range of the current preset encoding value subtracted from the second residual number.
Further, the mud pulse signal coding device further comprises an initializing unit, a tenth determining module, an eleventh determining module, a thirteenth determining module and a thirteenth determining module, wherein the initializing unit is used for initializing the total number of codes before the target position numbers of all preset coding values are determined by adopting a preset checking strategy based on the position range of each preset coding value, the eleventh determining module is used for determining the total number of current codes based on the position range, the ninth determining module is used for determining the current position range of the I-bit preset coding value based on the initial position numbers of the I-1-bit preset coding value, the tenth determining module is used for determining the available position set and the available position number of the I-bit preset coding value based on the preset checking strategy, all the initial position numbers and the current position range, the eleventh determining module is used for determining the total number of current codes based on the available position number, the twelfth determining module is used for determining the total number of available positions from the current positions to be coded, the position number is used for determining the available position number of the current codes based on the position set and the available position number, and the available position number is used for determining the position number of the available position numbers to be coded from the target position numbers.
Further, the mud pulse signal coding device further comprises a first adjusting unit, a fourth determining unit, a first accumulating unit and a second accumulating unit, wherein the first adjusting unit is used for adjusting the initial position number of the I-1 th bit preset coding value to obtain the latest position number after determining the current coding total number based on the available position number, the fourth determining unit is used for determining the latest position range of the I-1 th bit preset coding value based on the latest position number of the I-1 th bit preset coding value, the first calculating unit is used for calculating the sum of the initial position number and the latest position number of all the preset coding values before the I-1 th bit preset coding value to obtain a number sum and determining the latest available position set and the latest available position number of the I-1 th bit preset coding value based on the number sum and the preset checking strategy, the current coding total number is obtained based on the latest available position number, the first accumulating unit is used for comparing the latest position number with the latest position number to obtain the latest position number to be equal to the initial position number of the I-1 th bit preset coding value, the latest position number is smaller than the initial position number to be adjusted, the latest position number is smaller than the initial position number to be equal to the initial position number to the I-1, the latest position number is smaller than the initial position number to be adjusted, the latest position number is equal to the initial position number to the I-1 to be coded value to be coded, and the initial position number is adjusted, all position numbers up to the 1 st preset code value are used or the latest code total is larger than the value to be coded.
Further, the mud pulse signal encoding device further comprises a second generating unit, a first transmitting unit and a first transmitting unit, wherein the second generating unit is used for generating the mud pulse signal of the downhole parameter based on the binary code after generating the binary code corresponding to the downhole parameter based on the target position numbers of all the preset encoding values, and the first transmitting unit is used for transmitting the mud pulse signal to the surface receiver through the near-bit geosteering system, wherein the surface receiver determines a decoding strategy based on the preset encoding strategy and the preset checking strategy, and decodes the mud pulse signal by adopting the decoding strategy to obtain the downhole parameter.
According to another aspect of embodiments of the present invention, there is also provided a computer program product comprising a non-volatile computer readable storage medium storing a computer program which when executed by a processor implements the mud pulse signal encoding method of the near-bit geosteering system of any one of the above.
According to another aspect of embodiments of the present invention, there is also provided an electronic device comprising one or more processors and a memory for storing one or more programs, wherein the one or more programs, when executed by the one or more processors, cause the one or more processors to implement any of the methods for mud pulse signal encoding of a near-bit geosteering system described above.
According to the invention, the value to be coded of each underground parameter transmitted to the ground receiver by the near-bit geosteering system is determined, the number N of coding bits of binary codes and the number I of preset coding values are determined based on all the values to be coded, the position range of each preset coding value in binary codes corresponding to each underground parameter is determined based on a preset coding strategy, the number N of coding bits and the number I of the binary codes, the target position numbers of all the preset coding values are determined based on the position range of each preset coding value by adopting a preset verification strategy, and the binary codes corresponding to the underground parameter are generated based on the target position numbers of all the preset coding values, so that the technical problem that the underground parameter cannot be quickly transmitted due to low coding efficiency of the underground parameter in the related technology is solved.
In the invention, the value to be coded of each underground parameter (namely, the parameter which needs to be transmitted to a ground receiver by a near-bit geosteering system) can be determined firstly, then the number N of coding bits of binary codes and the number I of preset coding values (namely, the number 1) are determined according to the range size formed by all the values to be coded, then the position range of each preset coding value in the binary codes corresponding to each underground parameter can be determined according to the preset coding strategy, the number N of coding bits and the number I, then the target position numbers of all the preset coding values are determined by adopting the preset checking strategy, so that the binary codes corresponding to each underground parameter are generated according to the target position numbers of all the preset coding values, and then the mud pulse signals corresponding to the underground parameters can be generated according to the binary codes, so that the mud pulse is utilized for coding transmission, and the coding efficiency can be effectively improved by the coding method, thereby achieving the effect of transmitting more parameters in the same time.
Drawings
The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and together with the description serve to explain the invention and do not constitute a limitation on the invention. In the drawings:
FIG. 1 is a flow chart of an alternative method of mud pulse signal encoding for a near-bit geosteering system in accordance with an embodiment of the present invention;
FIG. 2 is a schematic diagram of the correspondence between the value 2 to be encoded of an alternative 9-2 code and a pulse according to an embodiment of the present invention;
FIG. 3 is a schematic illustration of an alternative mud pulse signal codec method for a near-bit geosteering system in accordance with an embodiment of the present invention;
FIG. 4 is a schematic diagram of a mud pulse signal encoding apparatus of an alternative near-bit geosteering system in accordance with an embodiment of the invention;
Fig. 5 is a block diagram of the hardware architecture of an electronic device (or mobile device) for a mud pulse signal encoding method for a near-bit geosteering system in accordance with an embodiment of the present invention.
Detailed Description
In order that those skilled in the art will better understand the present invention, a technical solution in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in which it is apparent that the described embodiments are only some embodiments of the present invention, not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the present invention without making any inventive effort, shall fall within the scope of the present invention.
It should be noted that the terms "first," "second," and the like in the description and the claims of the present invention and the above figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that the embodiments of the invention described herein may be implemented in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
It should be noted that, the relevant information (including but not limited to user equipment information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) collected and related by the present invention are information and data authorized by the user or fully authorized by each party, and the relevant data are collected, stored, used, processed, transmitted, provided, disclosed, applied, etc. in compliance with relevant laws and regulations and standards of relevant areas, necessary security measures are taken, no prejudice to the public order is made, and corresponding operation entries are provided for the user to select authorization or rejection. For example, an interface is provided between the system and the relevant user or institution, before acquiring the relevant information, the system needs to send an acquisition request to the user or institution through the interface, and acquire the relevant information after receiving the consent information fed back by the user or institution.
The invention provides a mud pulse signal coding method for a near-bit geosteering system, which relates to measurement while drilling technology in the field of oil and gas exploration and development, codes by multiple recursion coding rules, can have clearer pulse determination rules, adopts a strong parity check method to determine the position number of a code 1, can provide data support for subsequent binary code generation, finally maps downhole parameters into binary code values, and can further determine the pulse position and the coding method of mud pulses. In conclusion, the calculation amount and the complexity related to the mud pulse signal coding method are smaller, the mud pulse signal coding method is easier to realize in actual use, and the mud pulse signal coding method is more suitable for being applied to a real-time monitoring system for measurement while drilling.
The present invention will be described in detail with reference to the following examples.
Example 1
In accordance with an embodiment of the present invention, there is provided an embodiment of a mud pulse signal encoding method for a near-bit geosteering system, it being noted that the steps illustrated in the flow chart of the drawings may be performed in a computer system, such as a set of computer executable instructions, and, although a logical sequence is illustrated in the flow chart, in some cases, the steps illustrated or described may be performed in a different order than that illustrated herein.
FIG. 1 is a flow chart of an alternative method of mud pulse signal encoding for a near-bit geosteering system, as shown in FIG. 1, according to an embodiment of the present invention, comprising the steps of:
Step S101, determining values to be encoded of each downhole parameter transmitted to a surface receiver by a near-bit geosteering system, and determining the number N of binary encoded bits and the number I of preset encoded values based on all the values to be encoded, wherein N > I, N and I are positive integers.
Alternatively, in performing logging while drilling for oil and geological exploration, various downhole parameters, such as well deviation, near well deviation, azimuth, far-end gamma value, near-end gamma value, tool face, temperature, etc., may be transmitted to a surface receiver (e.g., pressure sensor) through a near-bit geosteering system to enable analysis of geological information (e.g., information of properties of subsurface rock, formation pressure, temperature, etc.) through the downhole parameters, thereby more accurately assessing the location, scale, and properties of the hydrocarbon reservoir.
In embodiments of the present invention, various downhole parameters may be acquired using downhole sensors in a near-bit geosteering system, and the acquired downhole parameters may be noted as X. The value X to be encoded for each of the downhole parameters may then be determined so that subsequent binary encoding of the downhole parameters is derived from the cyclic recursive encoding of the value X to be encoded.
Then, according to the range size determined by all the values to be encoded, the number of binary encoded encoding bits N and the number of preset encoding values I (i.e. encoding 1) I (N > I, N and I are positive integers, for example, n= 9,I =2) may be determined, and then the number of encoding 0 may be determined as N-I.
Step S102, for each underground parameter, determining the position range of each preset code value in binary codes corresponding to the underground parameter based on a preset coding strategy, a coding bit number N and a number I.
In step S102, a preset encoding strategy may be predetermined, for example, the binary value ends with the last two 0S at the time of encoding, and at least 1 encoding 0 is required to be spaced between encoding 1 and encoding 1. Then, according to the preset coding strategy, the coding bit number N and the number I, the position range of each preset coding value in the binary codes corresponding to each underground parameter can be determined.
Illustratively, assume that the preset encoding strategy is such that the binary value ends with the last two 0's at encoding and that 1 0's are required to be spaced between every two encoding 1's. The N-bit binary codes have position numbers i=1, 2,3,..n, the set of available ranges (i.e. the position ranges) for the first code 1 is [1, N-2- (I-1) x 2], i.e. starting from the first encodable position until the remaining I-1 encodable positions of code 1. The remaining position ranges of code 1 can be obtained by performing multiple recursion solutions based on the number position of the previous code 1, the sequence number of the code 1 itself and the code interval.
Step S103, determining target position numbers of all preset coding values by adopting a preset verification strategy based on the position range of each preset coding value.
In step S103, a preset verification policy (odd-numbered summation verification or even-numbered summation verification) may be selected in advance, and then the position numbers of all codes 1 are determined according to the selected preset verification policy, that is, the target position numbers of all preset code values are determined by adopting the preset verification policy according to the position range of each preset code value.
Alternatively, an odd summation check or an even summation check may be selected as a preset check strategy used for the current encoding according to the determined number of encoding bits N and the number I.
Step S104, generating binary codes corresponding to the downhole parameters based on the target position numbers of all preset code values, wherein the binary codes are used for generating mud pulse signals of the downhole parameters.
In step S104, a binary code corresponding to the downhole parameter may be generated based on the position numbers of all codes 1. Then, a mud pulse signal corresponding to the binary code can be generated by using a pulser so as to transmit data to the surface through mud, and then the data is decoded by surface decoding software, so that specific downhole parameters can be obtained.
Alternatively, the specific process of generating the binary code based on the position numbers of all codes 1 is that the target position numbers of all preset code values can be added to the position number set Q. The binary code has N bits in total, the position of the code 1 in the N bits is determined according to the target position numbers of all preset code values, and the rest positions are determined as the positions of the code 0. Starting from the initial position of the binary code, judging whether the position number I is in a position number set Q of the code 1, if so, the position number I is coded into 1, otherwise, the position number I is coded into 0, and finally, mapping to generate a string of binary code numbers consisting of 0 and 1, which accord with the coding rule. Wherein, the formula for generating binary codes is:。
In the embodiment of the invention, the coding is initialized based on multiple recursion coding rules, coding and decoding rules are provided for subsequent coding, the position numbers of all codes 1 are determined through a strong parity check method, all coding values of binary codes are determined according to the numbers, and then the mud pulse is used for coding and transmitting, and decoding is carried out on ground decoding software. The decoding method has the advantages of small operation amount, high execution speed and larger parameter data amount which can be transmitted in the same time, and provides a better encoding method for subsequently improving the transmission rate.
In summary, the value to be encoded of each underground parameter transmitted to the ground receiver by the near-bit geosteering system can be determined, the number N of encoding bits of binary encoding and the number I of preset encoding values are determined based on all the values to be encoded, the position range of each preset encoding value in binary encoding corresponding to each underground parameter is determined based on the preset encoding strategy, the number N of encoding bits and the number I, the target position numbers of all the preset encoding values are determined based on the position range of each preset encoding value by adopting the preset checking strategy, and the binary encoding corresponding to the underground parameter is generated based on the target position numbers of all the preset encoding values, so that the encoding efficiency can be effectively improved, the effect of transmitting more parameters in the same time is achieved, and the technical problem that the underground parameter cannot be rapidly transmitted due to lower encoding efficiency of the underground parameter in the related technology is solved.
In order to improve accuracy of determining values to be encoded of downhole parameters, in the method for encoding mud pulse signals of a near-bit geosteering system provided by the embodiment of the application, resolution of each downhole parameter is determined, and for each downhole parameter, the values to be encoded of the downhole parameter are determined based on the parameter values and the resolution of the downhole parameter.
In the embodiment of the invention, the value to be encoded can be determined according to the resolution of the downhole parameter. The method comprises the steps of determining the resolution k corresponding to each underground parameter, and calculating the value X to be encoded of each underground parameter by adopting a rounding function according to the parameter value X of each underground parameter and the resolution k corresponding to the parameter value X. The downhole parameter may determine the value X to be encoded according to its resolution using the following formula:
;
Wherein X is the parameter value of the acquired downhole parameter, k is the resolution of the downhole parameter, X is the value to be encoded, and round is a rounding function.
Alternatively, the resolution of the downhole parameters used to represent the accuracy of the acquired downhole parameters may be dynamically set by the near-bit geosteering system, as the case may be.
In order to improve the accuracy of determining the number of binary coded bits N and the number of preset coded values I, in the mud pulse signal coding method of the near-bit geosteering system provided by the embodiment of the application, the range of the to-be-coded values is determined based on all the to-be-coded values, and the number of binary coded bits N and the number of preset coded values I corresponding to the range of the to-be-coded values are determined based on a preset corresponding table, wherein the preset corresponding table records binary coded information corresponding to each range of the to-be-coded values, and the binary coded information comprises the number of the coded bits N and the number of the preset coded values I.
In the embodiment of the invention, the number N of the coding bits corresponding to different value ranges to be coded and the number I of the preset coding values (namely binary coding information) can be determined according to the coding result of the downhole parameter in the historical time period, so that the preset corresponding table is constructed according to the binary coding information corresponding to the different value ranges to be coded, and the binary coding information used when the downhole parameter is coded can be directly determined according to the value range to be coded determined when the downhole parameter is transmitted each time.
In the embodiment of the invention, the maximum value to be encoded and the minimum value to be encoded can be determined according to the values to be encoded corresponding to all downhole parameters to be transmitted, so as to obtain a range of values to be encoded, then the number N of binary encoded bits corresponding to the range of values to be encoded and the number I of preset encoded values can be determined according to a preset corresponding table, and the number N-I of encoded 0 can be determined.
In order to improve accuracy of determining a position range of a preset code value, in a mud pulse signal coding method of a near-bit geosteering system provided by the embodiment of the application, a preset coding strategy comprises taking a first code position of binary coding as a start position of the first bit preset code value by a preset number of 0 ends and a coding interval between every two bit preset code values, determining an end position of the first bit preset code value based on a code bit number N, a preset number, a first residual number and the coding interval, wherein the first residual number is a number of a sequence number of the first bit preset code value subtracted from a number I, determining the start position of the current bit preset code value based on the coding interval and a position number of a last bit preset code value, and determining the end position of the current bit preset code value based on the code bit number N, the preset number, a second residual number and the coding interval until the sequence number of the current bit preset code value is equal to a number I, wherein the second residual number is a number of a sequence numbers of the current bit preset code value subtracted from the number I, and determining the range of each bit preset code value based on the start position of the each bit preset code value and the end position preset code value.
In the embodiment of the present invention, the preset encoding strategy includes a preset number ending with 0 (e.g., 2, for example, the binary value ends with the last two 0 s when encoding) and an encoding interval (e.g., 1, for example, at least 1 encoding 0 is needed between encoding 1 and encoding 1) between preset encoding values of every two bits.
In the embodiment of the present invention, the starting position and the ending position of each preset code value may be determined to obtain the position range, specifically, the first code position of the binary code may be first used as the starting position of the preset code value of the first bit (i.e., the first encodable position of the binary code is determined to be the starting position of the first bit encode 1), then the ending position of the preset code value of the first bit is determined according to the number N of codes, the preset number, the first remaining number (i.e., the number I of preset code values minus the number of sequence numbers of the preset code values (i.e., 1) of the first bit encode values) and the encoding interval, i.e., for the preset code value of the first bit encode 1, the starting position is 1, the ending position is N-preset number- (I-1) (encoding interval +1), for example, the preset number is 2 (i.e., the binary code ends with two 0's at the end), the encoding interval is 1 (i.e., 10 at the interval between the encoding 1 and the encoding 1), and the available range of the first bit encode 1 is [1, N-2- (I-2).
Then, according to the coding interval and the position number of the last preset coding value (the current position number is a temporary position number determined in a recursion cycle and possibly adjusted along with continuous verification of a preset verification policy), determining the starting position of the preset coding value of the current bit, that is, the starting position of the preset coding value of the current bit is the position number of the last preset coding value plus (coding interval+1), and determining the ending position of the preset coding value of the current bit according to the number of coding bits N, the preset number, the second residual number (the number I of the preset coding values minus the number of the sequence numbers of the preset coding values of the current bit) and the coding interval until the sequence number of the preset coding value of the current bit is equal to the number I, that is, the ending position of the preset coding value of the current bit is N-preset number- (the sequence number of the preset coding value of the current bit) ×1 (coding interval+1).
For example, assuming that the preset number is 2 (i.e., the binary value ends with the last two 0 s), the coding interval is 1 (i.e., 1-0 s between coding 1 and coding 1), the available position range of position number I 1 of coding 1 is [1, n-2- (I-1) ×2], the available position range of position number I 2 of coding 12 is [ I 1 +2, n-2- (I-2) ×2], the available position range of position number I 3 of coding 13 is [ I 2 +2, n-2- (I-3) ×2], the available position range of position number I k of coding 1 k is [ I k-1 +2, n-2- (I-k) ×2], and so on, the available position range of position number I I-1 of coding 1I 1 is [ I I-2 +2, n-2-2], the available position range of position number I I of coding 1 is [ I I-1 +2, n-2]. The position size of each code 1 represents the size of the code value, and the smaller the position number of the code 1 is, the smaller the corresponding code value is.
And then, determining the position range of each preset code value according to the starting position and the ending position of each preset code value.
In order to improve accuracy of determining target position numbers of preset code values, in the mud pulse signal coding method of the near-bit geosteering system provided by the embodiment of the application, before the target position numbers of all preset code values are determined by adopting a preset verification strategy based on the position range of each preset code value, the total number of codes is initialized, the target position numbers of all preset code values are determined by adopting the preset verification strategy based on the position range of each preset code value, the method comprises the steps of determining initial position numbers of the I-1 bit preset code value and all bit preset code values before the I-1 bit preset code value based on the position range, determining the current position range of the I-1 bit preset code value based on the initial position numbers of the I-1 bit preset code value, determining an available position set and an available position number of the I-bit preset code value based on the preset verification strategy, all initial position numbers and the current position range, determining the current code total number based on the available position number, and determining the current code value based on the available position number and the available position number as the target position number I-1, and determining the available position number from the available position set and the available position number as the target position number I-1.
In the embodiment of the present invention, the total number of codes J needs to be initialized, so that the initial value of the total number of codes J is 0.
In the embodiment of the invention, whether the odd-numbered summation check or the even-numbered summation check is adopted is determined according to a parity check method (namely a preset check strategy) determined in the initialization stage of the code. The method comprises the steps of solving the position codes of all codes 1 successively, solving the positions of the previous I-1 codes 1, solving the available position number of the I-th code 1 based on a parity sum check method, and finally determining the target position numbers of all codes 1 according to the corresponding total number J of codes and the size of a value X to be coded.
In the embodiment of the invention, the I-1 bit preset code value and the initial position numbers of all bit preset code values before the I-1 bit preset code value can be determined according to the position range corresponding to the preset code value. For example, the position numbers may be sequentially determined from the position range corresponding to the code 1 in the order from the start position to the end position, the first position number in the position range may be initially selected as the initial position number, and then, when the position numbers need to be adjusted, the position numbers may be sequentially adjusted in the order from the start position to the end position. Then, according to the initial position number determined by the I-1 th preset code value, the current position range of the I-1 th preset code value is determined, namely the available range of the position number of the I-1 th code 1 is [ I I-1 +2, N-2] on the basis of the determined I-1 coding positions.
And then, determining an available position set and an available position number of the I-bit preset coding value according to a preset checking strategy, all initial position numbers and a current position range, specifically, if the preset checking strategy is odd-numbered sum checking, determining whether the sum of the initial position numbers of the previous I-1 bit preset coding value is odd-numbered or not, if the sum is odd-numbered sum checking, selecting even-numbered digits from the current position range as the available position of the I-bit preset coding value to obtain the available position set, and counting the available position number z. If z is greater than 0, the code rule conforming to the preset check strategy is indicated, the current code total J can be continuously determined according to the available position number, namely, the current code total J is equal to the initialized code total plus z, if z is equal to 0, the position number indicating that the I bit preset code value has no available position number in the current position range is not conforming to the code rule of the preset check strategy, and the position number of the I-1 th code 1 needs to be adjusted.
Illustratively, the position number sum of I codes 1 is circularly calculated according to the parity check method, taking the odd check method as an example, if the sum is odd, the code is in accordance with the rule, and if the sum is even, the code is out of accordance with the rule, and the odd check formula is as follows:
;
Wherein, The position number of the kth bit code 1 is indicated.
In the embodiment of the invention, if the coding rule of the preset checking strategy is met, the total number J of codes is increased by z (the number of available positions) to carry out the subsequent coding steps, if the coding rule of the preset checking strategy is not met, the coding rule is adjusted according to the available position ranges of the previous I-1 codes 1, and the recursive circulation is sequentially carried out according to the adjustment from the position of the code 1 with the larger sequencing number, until the coding rule of the preset checking strategy is met.
In the embodiment of the present invention, if the current code total J is greater than the value to be coded X, the available position may be determined from the available position set according to the value to be coded X, the current code total J and the available position number z, that is, the X- (J-z) +1 th position may be selected from the available position set as the available position, then the position number of the available position is determined as the target position number of the I-th preset code value, and then the I-1 th preset code value and the initial position numbers of all the preset code values before the I-1 th preset code value may be determined as the target position number.
Illustratively, the position numbers of all codes 1 are determined according to the corresponding total number of codes J and the size of the value X to be coded. The total number J of codes can be solved according to the position numbers of the codes 1, if J > X, the I-th code 1 under the position numbers of the current I-1 codes 1 has a encodable value conforming to the encoding rule, the position numbers of the I-th code 1 can be solved according to the cyclic judgment, otherwise, the available position ranges of the previous I-1 codes 1 are required to be adjusted, and the cyclic recursion is sequentially carried out according to the position adjustment of the codes 1 with larger sequencing number first until the position combination of the codes 1 with J > X is found, wherein the formula is as follows:
;
The set of position numbers Q for all codes 1 can thus be obtained.
In order to further improve accuracy of a target position number for determining a preset code value, in the mud pulse signal coding method of the near-bit geosteering system provided by the embodiment of the application, after determining a current code total number based on an available position number, the method further comprises the steps of adjusting an initial position number of an I-1 bit preset code value to obtain the latest position number under the condition that the current code total number is smaller than or equal to a value to be coded, determining a latest position range of the I-1 bit preset code value based on the latest position number of the I-1 bit preset code value, calculating a sum of initial position numbers and the latest position numbers of all bit preset code values before the I-1 bit preset code value, determining a latest available position set of the I-bit preset code value and the latest available position number based on a code total number and a preset check strategy, accumulating the current code total number to obtain the latest code total number based on the latest available position number, and continuing to adjust the I-1 bit preset code value to be coded until the latest position number is smaller than or equal to the latest position number 1 to the preset code total number is equal to the initial position number of all the value to be coded 1.
In the embodiment of the invention, if the current code total number J is less than or equal to the value X to be coded, the initial position number of the preset code value of the I-1 th bit needs to be adjusted to obtain the latest position number (namely, the position number of the preset code value of the I-1 th bit is adjusted backwards by one bit according to the sequence of the sequence numbers from the small to the large of the position range). Then according to the latest position number of the preset coding value of the I-1 th bit, determining the latest position range of the preset coding value of the I-1 th bit, calculating the sum of the initial position numbers and the latest position numbers of all the preset coding values before the preset coding value of the I-1 th bit to obtain a number sum, and then according to the number sum and a preset check strategy, determining the latest available position set and the latest available position number of the preset coding value of the I-1 th bit, if the latest available position number is larger than 0, indicating the coding rule conforming to parity check, and continuously accumulating the current coding total number according to the latest available position number to obtain the latest coding total number. And then comparing the latest code total number with the value to be coded, if the latest code total number is smaller than or equal to the value to be coded, indicating that the code rule is not met, continuing to adjust the initial position number of the preset code value of the I-1 bit, if all the position numbers of the preset code value of the I-1 bit are used (all the positions in the position range of the code1 are used), but the latest code total number is still smaller than or equal to the value to be coded, continuing to adjust the initial position number of the preset code value of the I-2 bit according to the sequence number until all the position numbers of the preset code value of the 1 st bit are used or the latest code total number is larger than the value to be coded.
In the embodiment of the present invention, if all the position numbers up to the 1 st preset code value are used and do not meet the code rule, the check strategy may be replaced, for example, the odd summation check is replaced by the even summation check, or the even summation check is replaced by the odd summation check.
Taking 9-2 codes (i.e. the number of bits N of binary code is 9, and the number I of codes 1 is 2) as an example, table 1 shows the code corresponding values (i.e. binary code values) of the 9-2 codes obtained by odd parity check and even parity check when the values to be coded are different.
TABLE 1
In order to improve the accuracy of generating a mud pulse signal, the mud pulse signal coding method of the near-bit geosteering system provided by the embodiment of the application further comprises the steps of generating a mud pulse signal of a downhole parameter based on binary codes after generating the binary codes corresponding to the downhole parameter based on target position numbers of all preset coding values, transmitting the mud pulse signal to a ground receiver through the near-bit geosteering system, wherein the ground receiver determines a decoding strategy based on a preset coding strategy and a preset checking strategy, and adopts the decoding strategy to decode the mud pulse signal to obtain the downhole parameter.
In the embodiment of the invention, the generation of the mud pulse signal can be sequentially determined according to 0 and 1 in the binary code value. Where a code 0 indicates that no mud pulse is sent and a code 1 indicates that 1 mud pulse is sent. The pulse signals corresponding to binary codes can be generated by using a pulser and transmitted to the ground through slurry, and corresponding downhole parameters are solved in the ground according to corresponding decoding rules (namely decoding strategies can be determined according to preset encoding strategies and preset verification strategies used in encoding).
In the embodiment of the invention, the decoding is the same as the encoding, all the encoding values of 1 in the encoding are traversed, and the corresponding encoding total number is sequentially determined to obtain the corresponding specific numerical value.
Fig. 2 is a schematic diagram of a correspondence between an optional 9-2 code to-be-encoded value 2 and a pulse, as shown in fig. 2, with time (t) as an abscissa and a pump pressure value as an ordinate, showing a mud pulse signal curve generated when a binary code value 100000100 is used for even verification.
The following detailed description is directed to alternative embodiments.
In the embodiment of the invention, a near-bit geosteering system acquires all downhole parameters by using a sensor module, determines a value to be encoded according to the resolution of each parameter, is used for encoding a subsequent mud pulse signal, initializes an encoding method based on a multiple recursion encoding rule, determines the initial state of the encoded value, checks the sum of all the determined encoding 1 positions by using a strong parity check method, determines a position number set according to the checking result, generates a binary encoded value based on the position number mapping of all the encoding 1, generates a mud pulse signal by using a pulser, transmits the mud pulse signal, senses the mud pulse signal on the ground by using a pressure sensor, and decodes the mud pulse signal by using decoding software in the ground system, thereby acquiring all downhole parameter information, effectively improving the transmission efficiency of the downhole parameters and meeting the normal use of measurement while drilling.
FIG. 3 is a schematic diagram of an alternative mud pulse signal codec method for a near-bit geosteering system, as shown in FIG. 3, including the following steps:
(1) Acquiring data of all underground sensors by using the underground sensors in the near-bit geosteering system, and acquiring and processing the data by using an underground central control circuit;
(2) Determining a value to be encoded according to the resolution, and determining the bit number of binary encoding and the bit number of encoding 1 according to the size range of the value to be encoded;
(3) Performing coding initialization based on multiple recursion coding rules;
(4) Determining the position numbers of all codes 1 by using a strong parity check method;
(5) Generating a binary code based on all the position numbers of code 1;
(6) And generating a mud pulse signal corresponding to the binary code by using a pulser, transmitting the code by using the mud pulse, and decoding on ground decoding software to obtain specific underground parameters.
In the embodiment of the invention, the positions of the codes 1 are determined in sequence through a multiple recursion algorithm, so that the realization is simple, the non-overlapping of the positions between the pulses can be ensured, the identification of the subsequent pulses is convenient, more data values can be transmitted in the same time, and the coding rule has higher transmission rate for the requirement of larger data quantity. And moreover, the parity summation method is utilized for verification, the verification rule is simple and effective, the operation amount is small, the complexity is low, errors can be detected to a certain extent, and the effectiveness and the correctness of data transmission are ensured.
The following describes in detail another embodiment.
Example two
The mud pulse signal encoding apparatus of the near-bit geosteering system provided in this embodiment includes a plurality of implementation units, each implementation unit corresponding to each implementation step in the first embodiment.
Fig. 4 is a schematic diagram of a mud pulse signal encoding apparatus of an alternative near-bit geosteering system, as shown in fig. 4, that may include a first determination unit 40, a second determination unit 41, a third determination unit 42, and a generation unit 43, in accordance with an embodiment of the present invention.
The first determining unit 40 is configured to determine values to be encoded of each downhole parameter transmitted by the near-bit geosteering system to the surface receiver, and determine, based on all the values to be encoded, a number of binary encoded bits N and a number of preset encoded values I, where N > I, N, and I are positive integers;
A second determining unit 41, configured to determine, for each downhole parameter, a position range of a preset code value of each bit in binary codes corresponding to the downhole parameter based on a preset coding strategy, a number of coding bits N, and a number I;
A third determining unit 42, configured to determine, based on the position range of each preset code value, target position numbers of all preset code values by using a preset verification policy;
And a generating unit 43, configured to generate a binary code corresponding to the downhole parameter based on the target position numbers of all preset code values, where the binary code is used to generate a mud pulse signal of the downhole parameter.
In the mud pulse signal coding device, the value to be coded of each downhole parameter transmitted to the ground receiver by the near-bit geosteering system can be determined by the first determining unit 40, the number N of coding bits of the binary code and the number I of preset coding values are determined based on all the values to be coded, the position range of each preset coding value in the binary code corresponding to each downhole parameter is determined by the second determining unit 41 based on the preset coding strategy, the number N of coding bits and the number I, the position range of each preset coding value in the binary code corresponding to the downhole parameter is determined by the third determining unit 42 based on the position range of each preset coding value, the target position numbers of all the preset coding values are determined by the preset checking strategy, and the binary codes corresponding to the downhole parameters are generated by the generating unit 43 based on the target position numbers of all the preset coding values, so that the coding efficiency can be effectively improved, the effect of transmitting more parameters in the same time is achieved, and the technical problem that the downhole parameters cannot be quickly transmitted in the related art is solved.
Optionally, the first determining unit comprises a first determining module for determining a resolution of each downhole parameter, and a second determining module for determining, for each downhole parameter, a value to be encoded of the downhole parameter based on the parameter value and the resolution of the downhole parameter.
Optionally, the second determining unit comprises a third determining module, a fourth determining module and a fourth determining module, wherein the third determining module is used for determining a value range to be encoded based on all values to be encoded, the fourth determining module is used for determining the number N of binary encoding bits and the number I of preset encoding values corresponding to the value range to be encoded based on a preset corresponding table, the preset corresponding table records binary encoding information corresponding to each value range to be encoded, and the binary encoding information comprises the number N of encoding bits and the number I of preset encoding values.
Optionally, the preset encoding strategy comprises a preset number ending with 0 and an encoding interval between every two preset encoding values, wherein the third determining unit comprises a first serving as a module for taking a first encoding position of binary encoding as a starting position of the preset encoding value of the first bit, a fifth determining module for determining an ending position of the preset encoding value of the first bit based on the number N of encoding bits, the preset number, the first residual number and the encoding interval, wherein the first residual number is a number obtained by subtracting a sequence number of the preset encoding value of the first bit from the number I, a sixth determining module for determining a starting position of the preset encoding value of the current bit based on the encoding interval and a position number of the last preset encoding value, and determining an ending position of the preset encoding value of the current bit based on the number N of encoding bits, the preset number, the second residual number and the encoding interval, until the sequence number of the preset encoding value of the current bit is equal to the number I, wherein the second residual number is a number obtained by subtracting the sequence number of the preset encoding value of the current bit, and a seventh determining module for determining a range of each preset encoding value based on the starting position and the ending position of the preset encoding value.
Optionally, the mud pulse signal coding device further comprises an initializing unit, a tenth determining module, an eleventh determining module and a twelfth determining module, wherein the initializing unit is used for initializing the total number of codes before the target position numbers of all preset coding values are determined by adopting a preset checking strategy based on the position range of each preset coding value, the twelfth determining module is used for determining the initial position numbers of the I-1 th preset coding value and all the preset coding values before the I-1 th preset coding value based on the position range, the ninth determining module is used for determining the current position range of the I-1 th preset coding value based on the initial position numbers of the I-1 th preset coding value, the tenth determining module is used for determining the available position set and the available position number of the I-th preset coding value based on the preset checking strategy, all the initial position numbers and the current position range, the eleventh determining module is used for determining the current coding total number based on the available position number, the twelfth determining module is used for determining the available position from the available position set based on the to-1 st position number and the available position number when the current coding total number is larger than the value to be coded, and the available position number is used for determining the position number which is equal to the target position number 1 th preset coding value.
Optionally, the mud pulse signal coding device further comprises a first adjusting unit, a fourth determining unit, a first calculating unit, a first accumulating unit and a second accumulating unit, wherein the first adjusting unit is used for adjusting the initial position number of the first preset coding value to obtain the latest position number under the condition that the current coding total number is smaller than or equal to the value to be coded after the current coding total number is determined based on the available position number, the fourth determining unit is used for determining the latest position range of the first preset coding value based on the latest position number of the first preset coding value, the first calculating unit is used for calculating the sum of the initial position numbers and the latest position numbers of all the preset coding values before the first preset coding value and the first preset coding value, and determining the latest available position set of the first preset coding value and the latest available position number based on the number total number and a preset checking strategy, the first accumulating unit is used for accumulating the current coding total number based on the latest available position number, the first accumulating unit is used for comparing the latest coding total number with the value to be coded, and continuing to code the first accumulating the latest position number with the value to be coded, and the first accumulating the latest position number is smaller than or equal to the preset position number to the first preset coding value and the first preset position number is smaller than or equal to the preset position number 1, and the first position number is adjusted to the first preset position number is equal to the initial number and the first position number is smaller than or equal to the preset value and the first position number is adjusted.
Optionally, the mud pulse signal coding device further comprises a second generating unit, a first transmitting unit and a first transmitting unit, wherein the second generating unit is used for generating a mud pulse signal of the downhole parameter based on binary codes after generating the binary codes corresponding to the downhole parameter based on target position numbers of all preset coding values, and the first transmitting unit is used for transmitting the mud pulse signal to a ground receiver through a near-bit geosteering system, wherein the ground receiver determines a decoding strategy based on a preset coding strategy and a preset checking strategy, and decodes the mud pulse signal by adopting the decoding strategy to obtain the downhole parameter.
The mud pulse signal encoding apparatus may further include a processor and a memory, wherein the first determining unit 40, the second determining unit 41, the third determining unit 42, the generating unit 43, and the like are stored in the memory as program units, and the processor executes the program units stored in the memory to implement the corresponding functions.
The processor includes a kernel, and the kernel fetches a corresponding program unit from the memory. The kernel can be provided with one or more than one, and the binary codes corresponding to the downhole parameters are generated based on the target position numbers of all preset coding values by adjusting the kernel parameters.
The memory may include volatile memory in a computer-readable medium, random Access Memory (RAM) and/or nonvolatile memory, such as Read Only Memory (ROM) or flash memory (flash RAM), which includes at least one memory chip.
According to another aspect of embodiments of the present invention, there is also provided a computer program product comprising a non-volatile computer readable storage medium storing a computer program which when executed by a processor implements a mud pulse signal encoding method of a near-bit geosteering system of any of the above.
When the computer program product is executed on a data processing device, it is adapted to perform a program for initializing the method steps of determining values to be encoded for each of the downhole parameters transmitted by the near-bit geosteering system to the surface receiver, determining a number of digits N of the binary encoding and a number I of preset encoding values based on all of the values to be encoded, for each of the downhole parameters, determining a range of positions for each of the preset encoding values in the binary encoding corresponding to the downhole parameters based on the preset encoding strategy, the number N of digits and the number I, determining a target position number for all of the preset encoding values based on the range of positions for each of the preset encoding values using the preset verification strategy, and generating the binary encoding corresponding to the downhole parameters based on the target position numbers for all of the preset encoding values.
According to another aspect of embodiments of the present invention, there is also provided an electronic device comprising one or more processors and a memory for storing one or more programs, wherein the one or more programs, when executed by the one or more processors, cause the one or more processors to implement the mud pulse signal encoding method of the near-bit geosteering system described above.
Fig. 5 is a block diagram of the hardware architecture of an electronic device (or mobile device) for a mud pulse signal encoding method for a near-bit geosteering system in accordance with an embodiment of the present invention. As shown in fig. 5, the electronic device may include one or more processors (e.g., processor 502a, processor 502b, etc., of fig. 5, processor 502N, etc., which may include, but are not limited to, a microprocessor MCU, programmable logic device FPGA, etc.), memory 504 for storing data. Among other things, a display, an input/output interface (I/O interface), a Universal Serial Bus (USB) port (which may be included as one of the ports of the I/O interface), a network interface, a keyboard, a power supply, and/or a camera may be included. It will be appreciated by those of ordinary skill in the art that the configuration shown in fig. 5 is merely illustrative and is not intended to limit the configuration of the electronic device described above. For example, the electronic device may also include more or fewer components than shown in FIG. 5, or have a different configuration than shown in FIG. 5.
The foregoing embodiment numbers of the present invention are merely for the purpose of description, and do not represent the advantages or disadvantages of the embodiments.
The embodiments or examples of the present disclosure are not intended to be exhaustive, but rather are merely illustrative of some of the embodiments or examples, and are not intended to limit the scope of the disclosure in any way. Each step in a certain implementation manner or embodiment may be implemented as an independent embodiment, and the steps may be arbitrarily combined, for example, a scheme after removing part of the steps in a certain implementation manner or embodiment may be implemented as an independent embodiment, and the sequence of the steps in a certain implementation manner or embodiment may be arbitrarily exchanged, further, an optional manner or optional embodiment in a certain implementation manner or embodiment may be arbitrarily combined, further, the implementation manner or embodiment may be arbitrarily combined, for example, part or all of the steps of different implementation manners or embodiments may be arbitrarily combined, and a certain implementation manner or embodiment may be arbitrarily combined with an optional manner or optional embodiment of other implementation manners or embodiments.
In the foregoing embodiments of the present invention, the descriptions of the embodiments are emphasized, and for a portion of this disclosure that is not described in detail in this embodiment, reference is made to the related descriptions of other embodiments.
In the several embodiments provided in the present invention, it should be understood that the disclosed technology may be implemented in other manners. The above-described embodiments of the apparatus are merely exemplary, and the division of the units, for example, may be a logic function division, and may be implemented in another manner, for example, a plurality of units or components may be combined or may be integrated into another system, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be through some interfaces, units or modules, or may be in electrical or other forms.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present invention may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention may be embodied essentially or in part or all of the technical solution or in part in the form of a software product stored in a storage medium, including instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present invention. The storage medium includes a U disk, a Read-Only Memory (ROM), a random access Memory (RAM, random Access Memory), a removable hard disk, a magnetic disk, or an optical disk, etc. which can store the program code.
The foregoing is merely a preferred embodiment of the present invention and it should be noted that modifications and adaptations to those skilled in the art may be made without departing from the principles of the present invention, which are intended to be comprehended within the scope of the present invention.
Claims (9)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202411264291.5A CN118774761B (en) | 2024-09-10 | 2024-09-10 | Mud pulse signal coding method and device for near-bit geosteering system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202411264291.5A CN118774761B (en) | 2024-09-10 | 2024-09-10 | Mud pulse signal coding method and device for near-bit geosteering system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN118774761A CN118774761A (en) | 2024-10-15 |
| CN118774761B true CN118774761B (en) | 2025-01-10 |
Family
ID=92984831
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202411264291.5A Active CN118774761B (en) | 2024-09-10 | 2024-09-10 | Mud pulse signal coding method and device for near-bit geosteering system |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN118774761B (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN120370433A (en) * | 2025-06-24 | 2025-07-25 | 德州联合石油科技股份有限公司 | A gamma sector resolution method for near-bit drilling |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103670380A (en) * | 2013-12-18 | 2014-03-26 | 贝兹维仪器(苏州)有限公司 | Down-hole slurry pulse signal generation device |
| CN105227503A (en) * | 2015-09-08 | 2016-01-06 | 北京航空航天大学 | A kind of down-hole Joint Source/channel Coding Design method based on wireless drilling measuring system |
Family Cites Families (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB2429474B (en) * | 2003-07-14 | 2008-01-09 | Halliburton Energy Serv Inc | Method and apparatus for mud pulse telemetry |
| US8255767B2 (en) * | 2008-02-01 | 2012-08-28 | Baker Hughes Incorporated | Method, system, and computer program product for transmission of bit sensitive information |
| CA2984296A1 (en) * | 2016-10-28 | 2018-04-28 | Antal Soos | Systems and methods for communicating downhole data |
| CN110067540B (en) * | 2018-01-19 | 2021-09-21 | 中国石油化工股份有限公司 | System for realizing separate injection well measuring and adjusting signal transmission |
| CN109653733B (en) * | 2018-11-22 | 2022-06-28 | 长江大学 | Method and equipment for downloading drilling guide parameters |
| CN110661580B (en) * | 2019-11-04 | 2022-03-01 | 中国石油集团川庆钻探工程有限公司 | Slurry pulse data coding method and transmission method |
| CN113882853B (en) * | 2020-07-03 | 2024-06-04 | 中国石油化工股份有限公司 | Method for transmitting near-bit logging while drilling data |
| CN111878055B (en) * | 2020-07-09 | 2022-03-25 | 中国石油大学(北京) | Control system and control method for drilling speed of drill bit |
| CN116446860A (en) * | 2022-01-10 | 2023-07-18 | 中国石油化工股份有限公司 | Method, device and storage medium for encoding transmission while drilling |
| CN116771323A (en) * | 2022-03-08 | 2023-09-19 | 中国石油化工股份有限公司 | Decoding device and method for transmitting pulse signals while drilling |
| CN115059458B (en) * | 2022-06-29 | 2022-12-06 | 中国地质大学(北京) | A Generation and Identification Method of Mud Pulse Signal for Downhole Measurement While Drilling |
| CN116464433A (en) * | 2022-09-01 | 2023-07-21 | 中国石油天然气集团有限公司 | A drilling fluid continuous wave smooth phase modulation method and system |
| CN118292866A (en) * | 2023-01-03 | 2024-07-05 | 中国石油化工股份有限公司 | Continuous wave mud pulse modulation and demodulation method and device |
-
2024
- 2024-09-10 CN CN202411264291.5A patent/CN118774761B/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN103670380A (en) * | 2013-12-18 | 2014-03-26 | 贝兹维仪器(苏州)有限公司 | Down-hole slurry pulse signal generation device |
| CN105227503A (en) * | 2015-09-08 | 2016-01-06 | 北京航空航天大学 | A kind of down-hole Joint Source/channel Coding Design method based on wireless drilling measuring system |
Also Published As
| Publication number | Publication date |
|---|---|
| CN118774761A (en) | 2024-10-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN118774761B (en) | Mud pulse signal coding method and device for near-bit geosteering system | |
| US8255767B2 (en) | Method, system, and computer program product for transmission of bit sensitive information | |
| US7068182B2 (en) | Method and apparatus for mud pulse telemetry | |
| CN103236845A (en) | Method for compacting data transmitted with drilling well mud pulse | |
| CN106130562B (en) | Logging-while-drilling data real-time compression method and decompression method | |
| US20060232438A1 (en) | Method and apparatus for telemetry | |
| US10378342B2 (en) | Mud pulse telemetry using gray coding | |
| CN105227503B (en) | A kind of underground Joint Source/channel Coding Design method based on wireless drilling measuring system | |
| US9644475B2 (en) | Communications protocol for downhole data collection | |
| CN113882853B (en) | Method for transmitting near-bit logging while drilling data | |
| US6788219B2 (en) | Structure and method for pulse telemetry | |
| CN115830723A (en) | A related method and related device for training set images | |
| CN114650103B (en) | Mud pulse data transmission method, device, equipment and storage medium | |
| SA116380082B1 (en) | Electromagnetic Telemetry Using Capacitive Surface Electrodes | |
| US20130018642A1 (en) | Hierarchical Modeling of Physical Systems and Their Uncertainties | |
| CN110611508B (en) | Combined code-based coding and decoding method for petroleum drilling | |
| CN114629962B (en) | Method and device for compressing, decompressing and transmitting downhole drilling data | |
| CN110995287B (en) | Method for checking and correcting mud pulse signal | |
| CN116291402B (en) | A method for encoding and decoding measurement data of a while-drilling inclinometer based on position combination verification | |
| EP0157766A1 (en) | Data encoding and synchronization for pulse telemetry | |
| US20250029213A1 (en) | Enhanced quality borehole image generation and method | |
| CN120357872B (en) | Pulse identification method and device for MWD (measurement while drilling) and electronic equipment | |
| CN1168260C (en) | Method, device and system for generating response | |
| CN115633096B (en) | Method, device and equipment for compressing and decompressing underground engineering data | |
| KR20130021633A (en) | Method and apparatus for veiling and detecting data using error correcting code |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |