Patent Publication Number: US-9417353-B2

Title: Remote processing of well tool sensor data and correction of sensor data on data acquisition systems

Description:
RELATED APPLICATIONS 
     This application is a nationalization under 35 U.S.C. 371 of PCT/US2007/017145, filed Aug. 1, 2007 and published as WO 2009/017481 A1 on Feb. 5, 2009; which application and publication are incorporated herein by reference in their entirety and made a part hereof. 
     FIELD 
     The present invention relates to measurement while drilling a well. 
     BACKGROUND 
     In geo-steering or directional drilling, it is important to determine direction while drilling. Data indicative of drilling tool direction is collected from sensors on the drilling tool for various depths and at various measurement times. Such sensors may measure the local earth&#39;s magnetic field, for example. This data is stored in a field computer nearby the well site, and is often stored in another computer system in a real time operations center. In this way, experts at the real time operations center have access to the same database at the remote well site, and may provide their expertise to the analysis of sensor data from various well sites. 
     Magnetic storms, and other phenomenon, may affect the accuracy of the data obtained from the sensors. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  illustrates a system according to an embodiment of the present invention. 
         FIG. 2  illustrates a communication model according to an embodiment of the present invention. 
         FIG. 3  illustrates correction of a remote database according to an embodiment of the present invention. 
         FIG. 4  illustrates a communication model according to an embodiment of the present invention. 
         FIG. 5  illustrates correction of a remote database according to an embodiment of the present invention. 
         FIG. 6  illustrates a computer system architecture according to various embodiments of the invention. 
     
    
    
     DESCRIPTION OF EMBODIMENTS 
     In the description that follows, the scope of the term “some embodiments” is not to be so limited as to mean more than one embodiment, but rather, the scope may include one embodiment, more than one embodiment, or perhaps all embodiments. 
     Embodiments are expected to find applications to MWD (Measurement While Drilling) operations in which correction of directional data is desirable. The MWD operations may be performed by conventional drilling using a vertical drill string down a vertical drill hole, or by other types of drilling techniques, such as coiled tube drilling in non-vertical well holes (e.g., horizontal drilling).  FIG. 1  illustrates, in simplified fashion, a MWD operation according to an embodiment in which coiled tube drilling and directional drilling are employed to steer a drill bit along a non-vertical borehole. However, it should be appreciated that embodiments are not limited to coiled tube drilling, and are applicable to other types of drilling, such as conventional drilling into vertical boreholes with rigid drill strings. 
     In  FIG. 1 , coiled tube  102  is fed into borehole  104  by injector head  106 . At an end of coiled tube  102  is rotary steerable tool  107 . For some embodiments, drill bit  108  on rotary steerable tool  107  may be powered by a mud-motor, whereby mud is pumped into coiled tube  102 . In other embodiments, drill bit  108  may be powered by an electric motor, whereby power may be provided by way of an electrical cable inside coiled tube  102 . Above drill bit  108  are tools  110 , which may comprise a MWD tool and a LWD tool. A MWD tool may comprise various sensors, such as sensor to provide signals that may be processed to derive directional data, such as for example a magnetometer, an accelerometer, and a gyroscope, to name a few. Data provided by such sensors are transmitted to a field computer, which may reside in field equipment truck  112 . 
     The transmission of the sensor signals from the tool to the field computer at the well site may be performed in a number of ways. For some embodiments, the transmission may be performed wirelessly using a transmitter at or near the MWD tool, and a receiver at the well site. There may be transponders at various points of coiled tube  102 . For some embodiments, mud telemetry may be used, whereby pressure pulses in the mud are used to convey information. Other embodiments may utilize a cable, or optic fiber, in coiled tube  102  to provide communication between the MWD tool and the field computer. These examples are cited for illustrative purposes only, and other embodiments may utilize other communication systems. 
     The field computer performs signal processing on the MWD data to provide estimates of borehole direction as a function of depth. The direction may be represented by an inclination angle relative to vertical, and an azimuth relative to north, where the z-axis for the azimuth angle is taken as the vertical to the borehole at the surface. Based upon this data, the field computer may construct a survey database, providing borehole directional data at different depths of the borehole 
     The survey database is transmitted to Real Time Operations Center (ROC)  114  by way of network  116 . ROC  114  may comprise one or more networked computers. Network  116  may be the Internet, in which case for most practical purposes a secure connection is set up between the field computer and ROC  114 . For some embodiments, network  116  may be a proprietary network. 
     Correction application  118  is a software application in communication with the field computer, ROC  114 , or both. Correction application  118  corrects the survey databases stored in the field computer and ROC  114  based upon magnetic correction parameters. The updating of the databases may proceed without intervention by a user at the field, or a user at ROC  114 . Correction application  118  may reside on a computer, or a number of networked computers, distinct from ROC  114 . For some embodiments, correction application  118  may reside on ROC  114 . For some embodiments, correction application  118  may obtain real-time magnetic correction parameters from the British Geological Survey (BGS). For other embodiments, surveys other than the BGS may be accessed. Furthermore, for some embodiments, correction parameters other than magnetic correction parameters may be utilized to correct the survey databases. 
       FIG. 2  illustrates four communication models by which correction application  118  may correct the survey databases in field computers and ROCs. Communication channels are indicated by arrows, where the direction of the arrow indicates the direction of survey data flow. A solid arrow indicates a communication channel that is independent of correction application  118 , a dashed arrow indicates a communication channel that carries uncorrected (non-corrected) survey data (that is to say, not corrected by correction application  118 ), and a double-lined arrow indicates a communication channel that carries survey data that has been corrected by correction application  118 . 
     In practice, these communication channels are not necessarily direct physical channels, and may represent paths by which data is routed from one router to another. These communication channels may be within a single LAN (Local Area Network), or may span more than one LAN. Various protocols may be used for the communication channels, and may represent a connection oriented paradigm, or a connectionless oriented paradigm. For example, IP/UDP (Internet Protocol/User Datagram Protocol) or TCP/IP may be used. In setting up a communication channel, sockets (e.g., UDP or TCP sockets) are set up between the communicating processes (e.g., field computers, ROCs, and correction application  118 ). For some embodiments, these sockets are kept open temporarily, long enough for correction application  118  to pull information from databases, and write information to databases. For some embodiments, the connection set up between correction application  118  and a remote database may include the activities of authentication (account and password verification), encryption (exchanging public/private keys), and compression. 
     Referring to field computer  202   a  and ROC  114   a , field computer  202   a  transmits its survey database, as new entries are entered, to ROC  114   a . This communication channel between field computer  202   a  and ROC  114   a  may be set up whether or not correction application  118  is present. When correction application  118  has new correction parameters, it sets up a network connection to the survey database in ROC  114   a , and ROC  114   a  transmits requested survey data from its survey database to correction application  118 . When correction application  118  has corrected this requested survey data, it sets up a communication channel with field computer  202   a , and corrects the database stored in field computer  202   a  accordingly. Field computer  202   a  sets up a communication channel with ROC  114   a  so that the database stored in field computer  202   a  is replicated in ROC  114   a . In this way, both field computer  202   a  and ROC  114   a  have identical databases. 
     Referring to field computer  202   b  and ROC  114   b , field computer  202   b  and ROC  114   b  have bi-directional database replication so that changes to the database in any one of them are propagated to the other, so that each has identical survey databases. This function is independent of whether correction application  118  is present or not. When correction application  118  has new correction parameters, it sets up a communication channel with ROC  114   b  so that ROC  114   b  can send requested uncorrected survey data to correction application  118 . When correction application  118  has corrected the received survey data, it sets up a communication channel with ROC  114   b  whereby it corrects the survey database stored in ROC  114   b . Because field computer  202   b  and ROC  114   a  have a bi-directional communication channel, changes to the database stored in ROC  114   a  are propagated to field computer  202   b.    
     Referring to field computer  202   c , correction application  118  sets up a communication channel with field computer  202   c  when it has new correction parameters so as to receive requested survey data. When the received survey data has been corrected, correction application  118  corrects the database stored in field computer  202   c . Note that ROC  114   c  does not play a role in the communication between correction application  118  and field computer  202   c.    
     Referring to field computer  202   d  and ROC  114   d , field computer  202   d  propagates its database to ROC  114   d  when new entries are added; as for the other field computers discussed above. When correction application  118  has new correction parameters, it sets up a communication path to receive requested survey data from ROC  114   d . When this has been corrected, it sets up communication channels to both ROC  114   d  and field computer  202   d  so that both of their databases may be corrected at the same time, or nearly the same time. 
     For some embodiments, correction application  118  may be able to support a relatively large number of field computers and ROCs, for example, between 50 and 100. These field computers and ROCs may utilize some or all of the communication models illustrated in  FIG. 2 . Furthermore, the number of ROCs and field computers need not be equal to each other. For example, there may be a larger number of field computers than ROCs. The four instances of a communication model illustrated in  FIG. 2  are not meant to imply an equal number of field computers and ROCs. 
     For reading information from a remote database, correction application  118  establishes a network connection to the remote database, executes a database command sequence (a database query) for new data used to perform survey corrections, and then closes the network connection. Timeouts, network errors, and other similar connection difficulties results in correction application  118  closing the database communication connection in progress, and then attempting the same network sequence again. 
     For some embodiments, correction application  118  periodically polls remote databases for new information. The poll rate and timeout periods may be individually configurable for each remote database. 
     Correction application  118  obtains correction parameters from a geophysical survey service, such as obtaining magnetic correction parameters from the BGS. Correction application  118  may poll a geophysical survey service to obtain correction parameters. For other embodiments, correction application  118  may be a subscriber in a publish-subscribe paradigm. The BGS and other geographic societies maintain an array of magnetic sensors located around the world, and are able to interpolate the magnetic correction parameters for any spot in the vicinity of these sensors within a few minutes. As a customer service, the BGS provides data on magnetic correction parameters for a specific location on earth close to real-time. For embodiments using the BGS, correction application  118  copies the information to its own database, so that well site magnetic data may be corrected with the BGS corrections. Correction application  118  may subscribe to more than one database to obtain magnetic data from many locations, and may interpolate the magnetic data to other locations for which measured magnetic data may not be available. 
     Correction application  118  may apply corrections such as earth magnetic field variations, bias, scale factors, tool drift, sag, crustal anomaly, and co-ordinate conversion, to name a few examples. Furthermore, some embodiments may provide further services. For example, correction application  188  may alarm a survey computation when that survey violates some conditional requirement. For some embodiments, magnetic storms may be identified. Data collected during such periods may be identified as suspect in terms of accuracy. Drilling operations may be warned as to the reduced accuracy of magnetic measurements, where the warning is promulgated through the data link back to the rig, alerting rig personnel by an on-screen alarm that survey conditions are not reliable. Alarms may also be transmitted via e-mail and text messaging, and may inform rig personnel when conditions have stabilized to allow valid surveying to proceed. 
     Embodiments may store survey data using tables as abstract data types (ADT).  FIG. 3  illustrates a table ADT according to an embodiment, where a row (record in the database) comprises fields (columns) such as a depth value, a time value, raw sensor data, a descriptor indicating the data source for the row, and an enable flag. In  FIG. 3 , the topmost displayed row is some row in the database, say row i, with variable D to denote depth, variable T to denote time, variables S 1 , S 2 , . . . , S n  to denote raw sensor data, and variable DS to denote data source. The enable flag is a binary variable, which may be represented by either “YES” or “NO”. A YES enable flag indicates that the row of data is available to answer queries, and represents the most current version of the sensor data at that particular depth and time. 
     The depth values, time values, and data source values may serve as keys to rows in the table ADT. Other embodiments may utilize a different set of keys. 
     When the topmost displayed row is corrected by correction application  118 , its enable flag is changed from YES to NO to indicate that correction equations have been applied to the sensor data. This is indicated by the middle-displayed row in  FIG. 3 , which is still row i in the database, with the same row values as before except that now the enable flag is set to NO. An enable flag of NO indicates that the row values have been corrected. 
     Correction application  118  also enters a new row in the table, indicated as row j (last displayed row) in  FIG. 3 . In row j, the depth and time are the same as in row i, but now the values for the sensor data may have changed, indicated by S 1 ′, S 2 ′, . . . , S n ′. Also, the value for the data source is changed from DS to DS′ to indicate that the sensor data has been corrected. For example, the data source in the original row of data, row i, may be Negative Pulse Detection. After correction application  118  has corrected row i, the data source for row i may be changed to Negative Pulse Detection Corrected to indicate that the sensor data has been corrected by correction application  118 . The enable flag for new row j is set to YES to indicate that its sensor data may be used for database queries to provide directional information. 
     As a particular example, suppose the on-site survey processing application writes a new survey row into the survey database with a depth of 13,412 feet, a time value of 10:30:24 pm, and a data source Negative Pulse Detection. During one of its polling sequences for new data, correction application  118  reads the survey at 13,412 feet, 10:30:24 pm, from the remote database and writes the uncorrected survey to its local database, and then corrects the survey data based upon correction parameters it has obtained from one or more geophysical survey services (e.g., BGS). Correction application  118  then corrects the new survey at depth 13,412 feet, time value 10:30:24 pm, and data source Negative Pulse Detection, by changing the flag enable in the original row in the remote database to a value indicating that it is disabled; and by writing a new row into the remote database with the same depth and time as the original row, but where now the data source is changed to Negative Pulse Detection Corrected, and the sensor data is corrected. This new row is enabled. 
     The polling of remote databases need not be synchronous with accessing the geophysical survey services for corrected parameters.  FIG. 4  illustrates this in simplified form, where correction application  118  communicates with geophysical survey services  402  and  404  for correction parameters. (Embodiments may use one or more geophysical survey services.) In the particular embodiment of  FIG. 4 , access is made to a geophysical survey service, such as accessing a web site, and correction parameters are then communicated to correction application  118  and stored into memory. For some embodiments, a publish-subscribe communication model may be employed, where correction application  118  subscribes to correction events published by a geophysical survey service. In  FIG. 4 , correction application  118  polls remote databases  406  and  408 , although in practice there may be many remote databases. When data is polled, the survey data is communicated to correction application  118  and stored into memory. The survey data is then corrected according to correction parameters stored in correction application  118 . Communication with geophysical survey services  402  and  404 , and with remote databases  406  and  408 , need not be synchronous. 
     Note that for the embodiment of  FIG. 3 , the original row of data has not been deleted by correction application  118 . In this way, historical data may still be available for troubleshooting or analysis. By preserving the original data in the survey database, correction application  118  may remove its corrections from one or more rows of the database, and restore some or all of the survey database back to its original, field-computed form. Other embodiments may delete old rows of data when they have been corrected, but such implementations may not provide for restoration of data if copies of the original data have not been made. 
     Other embodiments may employ ADTs other than tables to store the survey data. Furthermore, other types of database architectures may be used. For example, separate databases for corrected and uncorrected survey data may be used, with a data descriptor that (virtually) pieces together the two sets of data. As a particular example, a time descriptor may indicate the most recent time entry in a database for which corrected data is available. Survey data from a corrected database should be used at the field or ROC when reading database rows having entry times (database keys) less than or equal to the time descriptor, and an uncorrected database should be used otherwise. As correction application  118  reads the uncorrected surveys, processes the surveys, and writes them back to the corrected survey database, the time descriptor used to virtually combine the two databases would be updated to the time at which correction occurred. This is illustrated in  FIG. 5 . 
       FIG. 5  illustrates a row at depth D and time T in two databases, labeled “uncorrected” and “corrected”, before and after a time descriptor is corrected. In the top portion of  FIG. 5 , the time descriptor is at time value T 0 , where T&gt;T 0 . In this case, a database query would access the uncorrected database for the row of sensor data corresponding to time T. At time T 1 , correction application  118  performs a correction. Because T 1 &gt;T, the row in the uncorrected database is corrected, and the corrected row is placed into the corrected database. This is shown in the bottom portion of  FIG. 5 . Note that for the particular embodiment of  FIG. 5 , the old row of data in the uncorrected database is removed once it is corrected. However, other embodiments may retain the old row of data with it properly flagged. 
     In some applications, correction application  118  may not be able to set up a network connection with a field computer because of secure routers or firewalls, which may allow only outbound traffic and responses to outbound traffic. In such applications, a client may be run on the field computer to initiate communication with correction application  118 , and correction application  118  may use a World Wide Web based service to manage movement of data to and from the field computer behind the firewall. 
     In practice, correction application  118  may be a software application running on one or more general purpose computers, or special-purpose computers optimized for communication. For example, correction application  118  may run on one computer system, or be virtualized over more than one computer system, meaning that parts of correction application  118  may be dynamically instantiated across multiple computers, so as to scale in order to support usage demands. 
       FIG. 6  illustrates in simple fashion a portion of a computer system in which an embodiment may be instantiated. Functional unit  602  represents one or more processors. Controller  604  serves as an interface between processor  602 , memory  606 , and I/O (Input/Output) functional unit  608 . Controller  604  is sometimes referred to as a chipset, or a hub. Some, or all, of the functionality of controller  604  may be integrated with processor  602 . Memory  606  may represent a hierarchy of memory, perhaps including removable storage, and may be referred to in general as computer readable media. I/O functional unit  608  provides communication over a physical link. Instructions stored in memory (computer readable media)  606  cause the computer system of  FIG. 6  to implement the previously described processes. 
     Various modifications may be made to the described embodiments without departing from the scope of the invention as claimed below. For example, for some embodiments, instead of using an enable flag as discussed with respect to  FIG. 3 , two tables, or two sets of datasets, may be used, where one may be labeled as “survey” and the other may be labeled as “survey disabled”. When a row (database record) has been corrected, the old, uncorrected row is deleted from the survey table (database) and written into the survey disabled table (database). The new corrected survey row is written into the survey table (database). The two datasets may be combined virtually for survey management, so that the presence of two separate datasets is invisible to a user. 
     Although the subject matter has been described in language specific to structural features and methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.