Visualizations of items, and alerts associated with those items, can be helpful in monitoring a particular item. For example, a completion in a hydrocarbon environment can be a valuable part of a system for producing hydrocarbons. A completion can also be complicated. For example, a completion may include multiple components situated at different locations within the completion, may have multiple laterals, or have other complicating aspects. In addition, a completion may be related to other completions for a particular field. The health of completions can matter for a hydrocarbon company and the ability to monitor the status of completions and quickly appreciate the nature of problems can be of great benefit to a hydrocarbon company.
Embodiments of the present disclosure may provide methods, computing systems, and computer-readable media for visualizing completions in a hydrocarbon environment. A system may include multiple actual components within an actual completion. These components may include monitors that monitor various elements of the components (pressure, flow through the component, water cut, etc.) and generate real-time data for those elements. The components may also include communications modules for sending the real-time data to a computing system. The computing system may include processors, a receiver for receiving the real-time data, and memory. The memory may include instructions for displaying a three-dimensional model of the actual completion and displaying graphics representing the components. The graphics representing the components may be displayed on the three-dimensional model at locations corresponding to the actual locations of the components within the completion. The computing device may also receive real-time data for the actual components and display alerts on the display when the real-time data triggers alarm conditions.
The disclosure may be realized as a non-transitory computer-readable medium that stores instructions that, when executed by a processor, causes the processor to perform operations. The operations may include displaying a three-dimensional model of an actual completion on a display and displaying a graphic representing an actual component of the completion on the three-dimensional model at a location that corresponds to the actual location of the component within the completion. The operations may also include receiving real-time data for the actual component and displaying an alert at the location of the graphic in response to the real-time data triggering one or more alarm conditions.
The disclosure may be realized as a method that involves displaying a three-dimensional model of an actual completion on a display and displaying a graphic representing an actual component of the completion on the three-dimensional model. The graphic may be displayed at a location that corresponds to the location of the actual component within the actual completion. The method may also involve receiving real-time data for the actual component and displaying an alert on the display if the real-time data triggers an alarm condition.
In other embodiments, the disclosure is realized in connection with an item that is not a completion. For example, the disclosure may be realized as a non-transitory computer-readable medium storing instructions for displaying a three-dimensional model of an actual item on a display and displaying a graphic representing an actual component of the item on the three-dimensional model. The graphic may be displayed at a location corresponding to the actual location of the component within the actual item. The media may also store instructions for receiving real-time data for the actual component and for displaying an alert at the location of the graphic representing the actual component if the real-time data triggers an alarm conditions.
The foregoing summary is provided to introduce a selection of concepts that are further described below in the detailed description. This summary is not intended to be used as an aid in limiting the scope of the claimed subject matter.
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments of the present teachings and together with the description, serve to explain the principles of the present teachings. In the figures:
The following detailed description refers to the accompanying drawings. Wherever convenient, the same reference numbers are used in the drawings and the following description to refer to the same or similar parts. While several embodiments and features of the present disclosure are described herein, modifications, adaptations, and other implementations are possible, without departing from the spirit and scope of the present disclosure.
In general, embodiments of the present disclosure may provide systems, methods, and computer-readable media for generating and displaying three-dimensional models of actual item on a display.
The method 1000 may also involve receiving real-time data for the actual components. The engine may include multiple components for which real-time data is gathered. One or more monitors may gather real-time data associated with the components of the engine, such as temperature, air/fuel mixture levels, and others. The method 1000 may further involve displaying 1008 an alert on the display screen in response to the real-time data triggering one or more alarm conditions. For example, in a three-dimensional model of an engine, if the heat of an engine component is outside a threshold, that engine component within the three-dimensional model may have its color changed from green to red to indicate the alert. The user may then select the engine component to gather more information about the alarm condition.
Actual components 102 may include monitors 104, such as the monitors 104a-g illustrated in
The actual component 102 may also include a communications module for sending the real-time data generated by the monitors 104. The communications module may be part of the monitor 104 associated with the actual component 102. The communications module may send the real-time data using a wireless communications component, a wired communications component, or other suitable technology for communicating real-time data. In certain embodiments, the communications modules send the real-time data to a surface acquisition unit (not shown). The surface acquisition unit may store the real-time data received for multiple actual components 102 of the actual completion 100. The surface acquisition unit may be configured to share the real-time data with local or remote computing devices. In one embodiment, the surface acquisition unit sends the real-time data to a computing system that includes processors and memory. The computing system may include instructions for creating visualizations such as those discussed below.
The three-dimensional model 200 allows the user to see how the actual completion 100 is disposed. In certain embodiments, the three-dimensional model 200 may be rotatable within the three dimensions. For example, the user may be able to use a mouse to “spin” the three-dimensional model 200 in order to see it from a different perspective. The computing device may also include instructions allowing the user to zoom in and zoom out on the three-dimensional model 200. This may allow the user to look more closely at specific areas of interest.
Graphics 210 representing the actual components 104 are displayed on the three-dimensional model 200 at locations that correspond to the actual locations of the components 102 within the completion 100. The three-dimensional model 200 may thus allow the user to see where in the actual completion 100 the actual components 104 are located. In
The graphics 210 representing the actual components 104 may have any suitable appearance. In one embodiment, graphics 210 of the same or similar components 104 have common characteristics. For example, flow meters may be represented as having a triangular shape. In another embodiment, packers are represented with the same color. Other ways in which components 104 may be represented graphically in the three-dimensional model 200 may also be used.
As described in greater detail below, alerts may also be displayed on the display screen 202 if actual components 104 experience problems or are in a state that may be of interest to the user. For example, if values of real-time data for a particular component fall outside of predefined bounds, the color of the graphic 210 representing the actual component 102 may change from green to red. These alerts may help the user appreciate what is happening within the actual completion 100 and what areas could use attention.
In certain embodiments, the three-dimensional model 200 is shown alongside data about the makeup of the subterranean environment. For example, the three-dimensional model 200 may be shown along with reservoir model data. The reservoir model data may provide information about the lithology and the fluid contacts in the reservoir. The reservoir model data may include geological information or other relevant data. Similarly, the three-dimensional model 200 may be shown along with well log information. Viewing the three-dimensional model 200 in the context of the reservoir model data may aid the user in appreciating any connection between the physical environment and alerts.
In one embodiment, the three-dimensional model 200 is created automatically from information about the actual completion 100. In one embodiment, the three-dimensional model 200 is created from the deviation survey data for the actual completion 100. Data about the placement of the actual components 104 (for example, recorded measured depth for the actual component 104, which lateral in a multi-lateral well, etc.) may be used to determine where to locate the graphics 210 representing the actual components 104 within the three-dimensional model 200.
In certain embodiments, an alert may be defined by one or more rules associated with the real-time data. An alert may be generated when one or more data values fall outside a scope defined by the rules. The alert may be displayed by changing the color of the graphic 302. For example, the colors green, yellow, and red may be used to indicate that a particular actual component 102 is within limits, close to limits, or outside limits respectively. Other approaches to displaying an alert may also be used alone or in combination with the above. For example, the alert may involve automatically opening a dialog box on the display screen 350 when one or more alarm conditions for the alert are met. The alert may also include an audible component. The alert may also include a notification or message sent to another device via email, text message, or other appropriate approach to sending notifications.
The alarm conditions for the real-time data may be defined by a user, provided with default values, or a combination thereof. The alarm conditions may be one or more threshold values that define different alarm levels. For example, if a real-time data value falls outside a particular range, an alarm condition may be triggered. In certain embodiments, the alarm conditions are applied to averages of real-time data. For example, in one embodiment, average real-time data values over a 30 second period are compared to the threshold values.
In certain embodiments, a user may desire additional information about a particular actual component 102. The user may select the graphic 302 to cause additional information about the actual component 102 to be displayed on the display 202. The user may select the graphic 302 by clicking on it with a mouse, selecting it from a list, or other appropriate selection actions.
In the example shown in
The information may include an illustration of the actual component 102. The information may include an identifier that identifies the actual component 102 such as, for example, the name, type, or manufacturer of the actual component 102. The information may include real-time data collected for the actual component 102. In certain embodiments, the real-time data is shown as it is received in real time. The additional information may also include a historical view of the real-time data.
In certain embodiments, the actual component 102 may have multiple parameters that are measured at the actual component 102. The additional information may identify which parameters are measured and the current values for those parameters. For example, the actual component 102 represented by graphic 302a in
In embodiments where the graphic 302 includes multiple elements that are measured and reported for the actual component 102 represented by the graphic 302, the alert may be triggered if any of the alarm conditions for the elements measured for the actual component 102 are met. For example, if any of the multiple elements shown in
A single completion icon 510 may be associated with multiple possible alarm conditions for those components within the completion represented by the completion icon 510. In one embodiment, when an alarm condition occurs for a particular completion 100, an alert is displayed for the completion. For example, if an alarm condition occurs for an actual component 102 of a completion represented by completion icon 510c, an alert may be displayed on the display screen 505 for the completion icon 510c. In one embodiment, the color of the completion icon 510c changes in response to the alarm condition for the component within the completion represented by the completion icon 510c.
In certain embodiments, the field-completion-component structure may be hierarchal. For example, a field may contain many completions, and a completion may contain many components. The alarm conditions may be configured to account for the hierarchical structure. For example, an alarm condition for a component may affect the status of the component itself, the completion that includes the component, and the field that includes the completion. The manner in which the alert is displayed may vary depending on what level of the hierarchy is being viewed by the user.
For example, an alarm condition for a component in the completion represented by completion icon 510c may cause the color of the completion icon 510c to change. The user may select the completion icon 510c after seeing the alarm condition. A three-dimensional model of the completion 100 associated with the completion icon 510c may then be displayed, such as that shown in
Alerts may be further “nested” in addition to the manner described above; for example, another view within the application may show multiple fields. When an alert is generated for one of the completions within the field, an icon for that particular field may change color. In response to the user selecting the field icon, the view shown in
The method 600 may also involve receiving 606 real-time data for the actual component shown in connection with the three-dimensional model of the completion. In certain embodiments, the method 600 may involve, in response to a user selecting the graphic representing the actual component, displaying 607 information about the actual component on the display screen. This information may include, for example, an identifier of the actual component, real-time data collected for the actual component, or other information.
The method 600 may include displaying 608 an alert on the display screen in response to the real-time data triggering one or more alarm conditions such as those described above. Displaying the alert, in one embodiment, involves changing the color of the graphic representing the actual component (for example, changing the color from green to red).
Embodiments of the disclosure may also include one or more systems for implementing one or more embodiments of the method 600.
The processor system 700 may also include a memory system, which may be or include one or more memory devices and/or computer-readable media 704 of varying physical dimensions, accessibility, storage capacities, etc. such as flash drives, hard drives, disks, random access memory, etc., for storing data, such as images, files, and program instructions for execution by the processor 702. In an embodiment, the computer-readable media 704 may store instructions that, when executed by the processor 702, are configured to cause the processor system 700 to perform operations. For example, execution of such instructions may cause the processor system 700 to implement one or more portions and/or embodiments of the method(s) described above.
The processor system 700 may also include one or more network interfaces 706. The network interfaces 706 may include any hardware, applications, and/or other software. Accordingly, the network interfaces 706 may include Ethernet adapters, wireless transceivers, PCI interfaces, and/or serial network components, for communicating over wired or wireless media using protocols, such as Ethernet, wireless Ethernet, etc.
As an example, the processor system 700 may be a mobile device that includes one or more network interfaces for communication of information. For example, a mobile device may include a wireless network interface (e.g., operable via one or more IEEE 802.11 protocols, ETSI GSM, BLUETOOTH®, satellite, etc.). As an example, a mobile device may include components such as a main processor, memory, a display, display graphics circuitry (e.g., optionally including touch and gesture circuitry), a SIM slot, audio/video circuitry, motion processing circuitry (e.g., accelerometer, gyroscope), wireless LAN circuitry, smart card circuitry, transmitter circuitry, GPS circuitry, and a battery. As an example, a mobile device may be configured as a cell phone, a tablet, etc. As an example, a method may be implemented (e.g., wholly or in part) using a mobile device. As an example, a system may include one or more mobile devices.
The processor system 700 may further include one or more peripheral interfaces 708, for communication with a display, projector, keyboards, mice, touchpads, sensors, other types of input and/or output peripherals, and/or the like. In some implementations, the components of processor system 700 may not be enclosed within a single enclosure or even located in close proximity to one another, but in other implementations, the components and/or others may be provided in a single enclosure. As an example, a system may be a distributed environment, for example, a so-called “cloud” environment where various devices, components, etc. interact for purposes of data storage, communications, computing, etc. As an example, a method may be implemented in a distributed environment (e.g., wholly or in part as a cloud-based service).
As an example, information may be input from a display (e.g., a touchscreen), output to a display or both. As an example, information may be output to a projector, a laser device, a printer, etc. such that the information may be viewed. As an example, information may be output stereographically or holographically. As to a printer, consider a 2D or a 3D printer. As an example, a 3D printer may include one or more substances that can be output to construct a 3D object. For example, data may be provided to a 3D printer to construct a 3D representation of a subterranean formation. As an example, layers may be constructed in 3D (e.g., horizons, etc.), geobodies constructed in 3D, etc. As an example, holes, fractures, etc., may be constructed in 3D (e.g., as positive structures, as negative structures, etc.).
The memory device 704 may be physically or logically arranged or configured to store data on one or more storage devices 710. The storage device 710 may include one or more file systems or databases in any suitable format. The storage device 710 may also include one or more software programs 712, which may contain interpretable or executable instructions for performing one or more of the disclosed processes. When requested by the processor 702, one or more of the software programs 712, or a portion thereof, may be loaded from the storage devices 710 to the memory devices 704 for execution by the processor 702.
Those skilled in the art will appreciate that the above-described componentry is merely one example of a hardware configuration, as the processor system 700 may include any type of hardware components, including any accompanying firmware or software, for performing the disclosed implementations. The processor system 700 may also be implemented in part or in whole by electronic circuit components or processors, such as application-specific integrated circuits (ASICs) or field-programmable gate arrays (FPGAs).
The foregoing description of the present disclosure, along with its associated embodiments and examples, has been presented for purposes of illustration. It is not exhaustive and does not limit the present disclosure to the precise form disclosed. Those skilled in the art will appreciate from the foregoing description that modifications and variations are possible in light of the above teachings or may be acquired from practicing the disclosed embodiments.
For example, the same techniques described herein with reference to the processor system 700 may be used to execute programs according to instructions received from another program or from another processor system altogether. Similarly, commands may be received, executed, and their output returned entirely within the processing and/or memory of the processor system 700. Accordingly, the described embodiments may be performed without a visual interface command terminal or other terminal.
Likewise, the method described may not be performed in the same sequence discussed or with the same degree of separation. Various aspects may be omitted, repeated, combined, or divided, as appropriate to achieve the same or similar objectives or enhancements. Accordingly, the present disclosure is not limited to the above-described embodiments, but instead is defined by the appended claims in light of their full scope of equivalents. Further, in the above description and in the below claims, unless specified otherwise, the term “execute” and its variants are to be interpreted as pertaining to any operation of program code or instructions on a device, whether compiled, interpreted, or run using other techniques. In the claims that follow, section 112 paragraph sixth is not invoked unless the phrase “means for” is used.