Patent Publication Number: US-2021164328-A1

Title: Controlling, Monitoring, and Optimizing Production from Multiple Oil and Gas Pumps

Description:
TECHNICAL FIELD 
     The present disclosure relates to controlling and monitoring oil and gas wells to ensure proper operation of the wells and more particularly to methods and systems for monitoring and controlling multiple types of well pumps using a single pump control system. 
     BACKGROUND 
     Oil and gas wells are commonly used to extract hydrocarbons from a subterranean formation. A typical well site includes a wellbore that has been drilled into the formation and sections of pipe or casing cemented in place within the wellbore to stabilize and protect the wellbore. The casing is perforated at a certain target depth in the wellbore to allow oil, gas, and other wellbore fluids to flow from the formation into the casing. Tubing is run down the casing to provide a conduit for the wellbore fluids to flow up to the surface where they are collected. The wellbore fluids can flow up the tubing naturally if there is sufficient pressure in the formation, or well pump equipment can be used to provide an artificial lift for the wellbore fluids. 
     Several types of artificial lift systems are known to those skilled in the art, including “sucker rod” or beam pumps, electric submersible pumps (ESP), reciprocating pumps, jet hydraulic pumps, progressing cavity pumps, plunger lift, gas lift and intermittent gas lift pumps. Each type of artificial system includes a prime mover, such as a variable speed drive or hydraulic motor, that drives the mechanical components of the system to move the pump and lift the wellbore fluids to the surface. 
     To operate an artificial lift system in a cost-effective manner, the well pump should have a pump fillage level and speed that result in a profitable amount of wellbore fluid being extracted by the pump while avoiding pumped-off conditions. A pumped-off condition occurs when the rate at which wellbore fluids are being pumped to the surface exceeds the rate at which the subterranean formation is supplying wellbore fluids to the pump. A well pump operating in a pumped-off condition is no longer pumping effectively and efficiently, which can damage the pump and associated downhole equipment. Such damage usually results in down time for the well, lost production, and expensive repairs to the damaged components. 
     Thus, while a number of advances have been made in the field of oil and gas production, it will be readily appreciated that improvements are continually needed. 
     SUMMARY 
     The present disclosure relates to systems and methods for monitoring and controlling oil and gas production at multiple wells using a single pump control system. The disclosed pump control system analyzes operation data from multiple well pumps to independently and concurrently control operation of each well pump. The system obtains the operation data from sensors mounted at suitable locations around the wells. The data is then processed by pump control algorithms in the pump control system, each control algorithm applicable to and operable on a separate well pump. The pump control algorithms determine whether a well pump should be started, stopped, continue to run, and an optimal speed at which each running pump should run to maintain a cost-effective operation. The above arrangement allows a single pump control system to automatically and independently control multiple different well pumps to optimize oil and gas production at each well. 
     In general, in one aspect, the present disclosure relates to a method of monitoring and controlling oil and gas production at multiple wells. The method comprises, among other things, connecting multiple well pumps concurrently to a pump control system, each well pump providing pumping operations for a different one of the multiple wells, at least two of the well pumps being a different pump type from one another. The method also comprises receiving, by the pump control system, operation data relating to each well pump, the operation data reflecting current operation parameters for the pumping operations provided by each well pump. The method further comprises performing, by the pump control system, an evaluation on the pumping operations provided by each well pump based on the operation data relating to each well pump. The method still further comprises determining, whether the pumping operations provided by each well pump needs to be modified based on the evaluation of the pumping operations by each well pump, and issuing, by the pump control system, a control signal to at least one well pump, the control signal causing the at least one well pump to modify at least one operation parameter for the pumping operations thereof. 
     In accordance with any one or more of the foregoing embodiments, the operation data relating to each well pump and the evaluation on the pumping operations provided by each well pump are stored at regular intervals by the pump control system; the operation data received by the pump control system is provided by sensors mounted at the multiple wells and the multiple well pumps; and/or the current operation parameters include one or more of the following: rod displacement, tension load, and wellbore fluid flow rate. 
     In accordance with any one or more of the foregoing embodiments, each well pump includes a prime mover and a pump mechanism and the control signal issued by the pump control system is issued to the prime mover of the well pump; the control signal issued to the prime mover by the pump control system causes the prime mover to perform one of the following: start running, stop running, change running speed; and/or the pump control system determines whether the pumping operations provided by each well pump needs to be modified using a control algorithm that is specific to each well pump. 
     In accordance with any one or more of the foregoing embodiments, a replacement well pump that replaces a given one of the multiple well pumps is connected to the pump control system; an evaluation on pumping operations provided by the replacement well pump based on operation data relating to the given well pump is performed by the pump control system; and/or the pump control system determines whether the pumping operations provided by the replacement well pump needs to be modified using a control algorithm that is specific to the given well pump. 
     In general, in another aspect, the present disclosure relates to a system for monitoring and controlling oil, gas, and o/or water production at multiple wells. The system comprises, among other things, a processor and a storage device coupled to communicate with the processor. The storage device stores computer-readable instructions thereon that, when executed by the processor, cause the system to connect to multiple well pumps concurrently, each well pump providing pumping operations for a different one of the multiple wells, at least two of the well pumps being a different pump type from one another. The computer-readable instructions also cause the system to receive operation data relating to each well pump, the operation data reflecting current operation parameters for the pumping operations provided by each well pump. The computer-readable instructions further cause the system to perform an evaluation on the pumping operations provided by each well pump based on the operation data relating to each well pump. The computer-readable instructions still further cause the system to determine whether the pumping operations provided by each well pump needs to be modified based on the evaluation of the pumping operations by each well pump, and issue a control signal to at least one well pump, the control signal causing the at least one well pump to modify at least one operation parameter for the pumping operations thereof. 
     In accordance with any one or more of the foregoing embodiments, the computer-readable instructions further cause the system to store at regular intervals the operation data relating to each well pump and the evaluation on the pumping operations provided by each well pump; the operation data is provided to the system by sensors mounted at the multiple wells and the multiple well pumps; and/or the current operation parameters include one or more of the following: rod displacement, tension load, and wellbore fluid flow rate. 
     In accordance with any one or more of the foregoing embodiments, each well pump includes a prime mover and a pump mechanism and the control signal issued by the system is issued to the prime mover of the well pump; the control signal issued to the prime mover by the system causes the prime mover to perform one of the following: start running, stop running, change running speed; and/or the system determines whether the pumping operations provided by each well pump needs to be modified using a control algorithm that is specific to each well pump. 
     In accordance with any one or more of the foregoing embodiments, the computer-readable instructions further cause the system to connect to a replacement well pump that replaces a given one of the multiple well pumps; the computer-readable instructions further cause the system to perform an evaluation on pumping operations provided by the replacement well pump based on operation data relating to the given well pump; and/or the computer-readable instructions further cause the system to determine whether the pumping operations provided by the replacement well pump needs to be modified using a control algorithm that is specific to the given well pump. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       A more detailed description of the disclosure, briefly summarized above, may be had by reference to various embodiments, some of which are illustrated in the appended drawings. While the appended drawings illustrate select embodiments of this disclosure, these drawings are not to be considered limiting of its scope, for the disclosure may admit to other equally effective embodiments. 
         FIG. 1  is a schematic diagram showing multiple wells being controlled by a single pump control system according to embodiments of the present disclosure; 
         FIG. 2  is a block diagram illustrating an exemplary pump control system for controlling multiple types of well pumps according to embodiments of the present disclosure; 
         FIG. 3  is a functional diagram showing multiple types of well pumps being controlled by a single pump control system according to embodiments of the present disclosure; 
         FIG. 4  is a flow diagram illustrating an exemplary method that may be used by a pump control system to control multiple types of well pumps according to embodiments of the present disclosure; and 
         FIG. 5  is another flow diagram illustrating an exemplary method that may be used by a pump control system to control multiple types of well pumps according to embodiments of the present disclosure. 
     
    
    
     Identical reference numerals have been used, where possible, to designate identical elements that are common to the figures. However, elements disclosed in one embodiment may be beneficially utilized on other embodiments without specific recitation. 
     DETAILED DESCRIPTION 
     Embodiments of the present disclosure relate to methods and systems for using a single pump control system to monitor and control multiple oil and gas producing wells with multiple types of artificial lift systems. Pumping, processing, and storing wellbore fluids is an expensive endeavor so well site operators often locate multiple wells close to one another to allow a single pump control system to control more than one well. Typically, the wells start with the same type of artificial lift system, but one or more wells may require switching to a different type of artificial lift system to maintain optimized production as the wells age and as wellbore fluid levels change. Embodiments of the pump control system disclosed herein can support multiple types of artificial lift systems while retaining pump configuration and well performance data for each type of system. This allows operators to minimize the capital investment costs needed to continue production operations at an optimized level as the wells age and evolve. 
     Referring now to  FIG. 1 , a schematic diagram of an exemplary pump control system  100  that can monitor and control production operations at several different wells  102 ,  104 ,  106 ,  108  concurrently is shown according to embodiments of the present disclosure. The wells are designated here as Well 1, Well 2, Well 3, and Well 4. These wells may be connected to the pump control system  100  using any suitable communication link, such as Ethernet, Wi-Fi, Bluetooth, GPRS, CDMA, and the like. For economy of the present disclosure, only Well 1 is detailed herein, with Well 2, Well 3, and Well 4 having similar arrangements. In addition, although four wells are shown in this example, it should be appreciated that the number of wells is exemplary only, and that the pump control system  100  may be used to control production operations at fewer or more wells within the scope of the present disclosure. 
     As can be seen at Well 1, a wellbore  110  has been drilled into the subterranean formation  112  and lined with cement  114  to stabilize and protect the wellbore  110 . Perforations  116  are formed in the wellbore  110  at a certain target depth  118  where oil, gas, and other wellbore fluids are expected to be found, and casing or tubing  120  is extended into the wellbore  110  for extraction of the wellbore fluids. The formation  112  in this example no longer has sufficient formation pressure to produce wellbore fluids naturally and therefore a rod pump assembly  122  is installed at the well to provide artificial lift for the wellbore fluids. The rod pump assembly  122 , also called a horse head pump jack, includes a variable speed drive (VSD)  124 , variable speed motor  126 , gear box  128 , beam  130 , horse head  132 , bridle  134 , polished rod  136 , and sucker rod  138 , connected as shown. 
     Operation of the rod pump assembly  122  is well known to those skilled in the art and is thus mentioned only briefly here. In general, the VSD  124  drives the variable speed motor  126  to rotate gears in the gearbox  128 , causing the beam  130  to seesaw, which moves the horse head  132 , and hence the bridle  134 , polished rod  136 , and sucker rod  138 , up and down, thereby converting the rotating motion of the variable speed motor  126  into a linear motion at the sucker rod  138 . A so-called plunger  140  is attached to the end of the sucker rod  138  for lifting the wellbore fluids. The plunger  140  has a riding valve  142  at a bottom thereof that opens on the downward stroke of the sucker rod  138  to let wellbore fluids into the plunger  140  and hence into the tubing  120 . The riding valve  142  closes on the upward stroke of the sucker rod  138 , thereby lifting the wellbore fluids up the tubing  120 . Conversely, a standing valve  144  at the bottom of the tubing  120  closes on the downward stroke of the sucker rod  138  and opens on the upward stroke to let in wellbore fluids from the wellbore  110 . A discharge line  146  carries the wellbore fluids from the tubing  120  to one or more holding tanks (not expressly shown) for storage and processing. 
     Although a rod pump assembly  122  is installed at Well 1, it will be appreciated that a different (or the same) artificial lift system having a different (or the same) type of well pump may be used at Well 2, Well 3, and Well 4. A useful characteristic of rod pump assemblies is that the operation thereof can be analyzed largely using two operation parameters, displacement of the sucker rod  138 , and tension load on the sucker rod  138 . Graphically plotting these two parameters with the rod displacement along the horizontal axis and tension load along the vertical axis produces a closed pattern commonly referred to as a dynagraph or dynacard. The particular shape of the closed pattern can be analyzed to diagnose whether the pump is operating properly (i.e., optimally) or may be experiencing a pumped-off condition or some other abnormal operation. Detecting abnormal operations for other types of well pumps may also be done in a similar manner by analyzing operation parameters for those well pumps. With an ESP, for example, the measured flow rate, head height and calculated pump efficiency may be compared to the pump performance curve to calculate an optimized pump speed. 
     In accordance with one or more embodiments the present disclosure, the pump control system  100  can analyze whether the well pumps at the various wells (i.e., Well 1, Well 2, Well 3, and Well 4) are operating properly using the operation parameters of the well pumps. The pump control system  100  can receive or otherwise obtain the operation parameters from a plurality of sensors  148  mounted at specified locations around each well and well pump. The sensors  148  may include sensors that measure, for example, rod displacement, rod tension, fluid flow rate, temperature, pressure, and other operation parameters. Any suitable sensors known to those skilled in the art may be used as the sensors  148 , including wired, wireless, analog, and digital sensors. Based on the operation parameters and the analyses thereof, the pump control system  100  can automatically control certain operational aspects of the well pumps to correct for a pumped-off condition or other abnormal operation and return the pumps to an optimum operation. 
     In some embodiments, the pump control system  100  can also send the operation parameters and analyses (or data therefor) to a network  150  for storage and subsequent monitoring and tracking purposes. Additionally, the pump control system  100  can transmit the operation parameters and analyses (or data therefor) to an external control system, such as a supervisory control and data acquisition (SCADA) system  152 . The transmissions may take place over any suitable communication link, such as Ethernet, Wi-Fi, Bluetooth, GPRS, CDMA, and the like. From there, the data may be forwarded to other systems within an enterprise and/or to the Cloud (which may include a private enterprise Cloud) for further processing as needed. Further, the pump control system  100  can display certain selected operation parameters and analyses on a display, such as a human-machine-interface (HMI)  154 , for review by a user. The user can then navigate the HMI  154  to manually control certain operations of the well pumps as needed via the pump control system  100 . 
       FIG. 2  is a block diagram illustrating an exemplary pump control system  100  in accordance with embodiments of the present disclosure. In one embodiment, the pump control system  100  includes a bus  202  or other communication pathway for transferring data within the control system, and a CPU  204 , which may be any suitable microprocessor or microcontroller, coupled with the bus  202  for processing the information. The pump control system  100  may also include a main memory  206 , such as a random-access memory (RAM) or other dynamic storage device coupled to the bus  202  for storing computer-readable instructions to be executed by the CPU  204 . The main memory  206  may also be used for storing temporary variables or other intermediate information during execution of the instructions executed by the CPU  204 . 
     The pump control system  100  may further include a read-only memory (ROM)  208  or other static storage device coupled to the bus  202  for storing static information and instructions for the CPU  204 . A computer-readable storage device  210 , such as a nonvolatile memory (e.g., Flash memory) drive or magnetic disk, may be coupled to the bus  202  for storing information and instructions for the CPU  204 . The CPU  204  may also be coupled via the bus  202  to a well pump interface  212  for allowing the pump control system  100  to communicate with the well pumps at the various wells (e.g., Well 1, Well 2, Well 3, and Well 4) connected thereto. A sensor interface  214  may be coupled to the bus  202  for allowing the pump control system  100  to communicate with the various sensors (e.g., sensors  148 ) mounted at the wells and well pumps. An external systems interface  216  may be coupled to the bus  202  for allowing the pump control system  100  to communicate with various external systems, such as a touchscreen or HMI (e.g., HMI  154 ), SCADA system (e.g., SCADA system  152 ), network (e.g., network  150 ), and the like. 
     The term “computer-readable instructions” as used above refers to any instructions that may be performed by the CPU  204  and/or other components. Similarly, the term “computer-readable medium” refers to any storage medium that may be used to store the computer-readable instructions. Such a medium may take many forms, including, but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media may include, for example, optical or magnetic disks, such as the storage device  210 . Volatile media may include dynamic memory, such as main memory  206 . Transmission media may include coaxial cables, copper wire and fiber optics, including wires of the bus  202 . Transmission itself may take the form of electromagnetic, acoustic or light waves, such as those generated during radio frequency (RF) and infrared (IR) data communications. Common forms of computer-readable media may include, for example, magnetic medium, optical medium, memory chip, and any other medium from which a computer can read. 
     A pump monitor and control application  220 , or rather the computer-readable instructions therefor, may also reside on or be downloaded to the storage device  210 . The pump monitor and control application  220  may then be executed by the CPU  204  and other components to automatically detect abnormal operations independently at each well pump and generate a separate corrective response thereto for each well pump. Such a pump monitoring and control application  220  may be written in any suitable computer programming language known to those skilled in the art using any suitable software development environment. Examples of suitable programming languages include IEC61131-3, C, C++, C#, Python, Java, Perl, and the like. 
     The pump monitor and control application  220  may include, or have access to, one or more pump control algorithms  222 , each algorithm  222  corresponding to a specific type of well pump. In the example shown, there are four control algorithms  222  corresponding to four well pumps (e.g., Pump 1, Pump 2, Pump 3, and Pump 4). The pump monitor and control application  220  may further include, or have access to, operation data  224  representing one or more operation parameters for each well pump. Such operation parameters may include, for example, rod displacement and tension load for a rod pump type well pump, wellbore fluid flow rate for an ESP type well pump, and the like. The operation data  224  may be obtained and stored by the pump control system  100  at regular intervals (e.g., each second, each minute, each hour, etc.) so that information required by the pump control algorithms  222  for a given pump type that is specific to optimizing that pump type is readily available and current (i.e., within a specified quality-of-service (QOS) level). 
     Each pump control algorithm  222  may derive a different corrective response for each well pump based on the operation data  224  for that well pump. For example, the pump control algorithm  222  for a rod pump type well pump (e.g., Pump 1) may indicate that the speed of the variable speed motor  126  may need to increase or decrease in response to an increase or decrease in the tension load on the rod pump  138 . As another example, the pump control algorithm  222  for an ESP type well pump (e.g., Pump 2) may indicate that the speed of the electric motor of the ESP may need to increase or decrease in response to an increase or decrease in the wellbore fluid flow rate, and so forth. The pump monitor and control application  220  may then apply the control algorithms  222  to the operation data  224  to automatically detect abnormal operations at the well pumps and generate a corrective response thereto. 
       FIG. 3  is a functional diagram showing an exemplary arrangement  300  for the pump control system  100  and the various wells (i.e., Well 1, Well 2, Well 3, and Well 4) in accordance with embodiments of the present disclosure. As can be seen, there are four well pumps  302 ,  304 ,  306 ,  308 , each well pump installed at one of the wells. The well pumps are designated Pump 1, Pump 2, Pump 3, and Pump 4 in this example, each well pump being a different type from the other well pumps, or two or more of the well pumps being the same type. Each well pump includes a prime mover  310 ,  312 ,  314 ,  316  that drives a corresponding pump mechanism  318 ,  320 ,  322 ,  324  to lift wellbore fluids up a tubing. For example, Pump 1 may be a beam pump, in which case a VSD and variable speed motor may form part of the prime mover (e.g., Prime Mover 1) and a beam and sucker rod may form part of the pump mechanism (e.g., Pump Mechanism 1). Pump 2 may be an electric semisubmersible pump (ESP), in which case an electric motor may form part of the prime mover (e.g., Prime Mover 2) and one or more impellers or blades may form part of the pump mechanism (e.g., Pump Mechanism 2), and so on. 
     To operate each well pump  302 ,  304 ,  306 ,  308  in an optimum manner, the speed at which each prime mover  310 ,  312 ,  314 ,  316  operates is controlled such that the amount of wellbore fluids brought up the tubing by each pump mechanism  318 ,  320 ,  322 ,  324  for each well is maximized without decreasing the level of wellbore fluids in the wellbores below a point at which a pumped-off condition results. The pump control system  100  can achieve this optimum operation for each pump separately by sending independent control signals  328 ,  330 ,  332 ,  334  to the pumps, specifically to the prime movers  310 ,  312 ,  314 ,  316  thereof. Each control signal  328 ,  330 ,  332 ,  334  includes commands that tell each prime mover  310 ,  312 ,  314 ,  316 , respectively, how to operate. For example, the control signals may include commands that instruct one prime mover to turn off, another prime mover to turn on, yet another prime mover to run at a certain speed, and the like. The pump control system  100  determines which commands to include in which control signal for which prime mover based on pump and well operation data  336 ,  338 ,  340 ,  342  fed back to the pump control system  100  separately from each well (e.g., via sensors mounted at the well pumps). As will be explained further below, several pump control algorithms (see  FIG. 2 ) in the pump control system  100 , each control algorithm corresponding to a different well pump, analyze and otherwise use the feedbacks  336 ,  338 ,  340 ,  342  from the well pumps to determine which commands to include in the control signals. 
       FIG. 4  is a flow diagram illustrating an exemplary method  400  that may be used by the pump control system  100  to control the various well pumps from  FIG. 3  according to embodiments of the present disclosure. The method  400  generally begins at block  402  where the pump control system checks whether any system configurations are different from the system configurations stored (e.g., in storage device  210 ) in the pump control system. Such system configurations may include, for example, a change in assignment of system communication parameters, such as the pump control system device&#39;s Modbus slave address, or a change to a setting for an alarm that affects operation of all the pumps controlled by the pump control system. If any system configurations are different from the stored system configurations, the pump control system updates the stored system configurations accordingly. 
     At block  404 , the pump control system samples and evaluates system data and parameters common to operation of all well pumps connected to the system. Such common data and parameters may pertain to or represent, for example, a system master switch that can shut off or otherwise stop all well pumps together. The pump control system then determines at block  406  whether the common system data and parameters indicate all pumps should be stopped. If yes, then the pump control system stops all pumps at block  408 , and stores and publishes any updated system data at block  410 . If no, then the pump control system simply stores and publishes any updated system data at block  410  (i.e., without stopping all pumps). 
     The pump control system next proceeds to check in turn whether each well pump is enabled at blocks  410 ,  412 ,  414 ,  416 . If a given well pump is not enabled, then the pump control system proceeds to check whether the next well pump is enabled, and so on. If any well pump is enabled, then the pump control system proceeds to evaluate that pump at blocks  418 ,  420 ,  422 ,  424 . Such evaluation involves the pump control system determining whether the well pump is operating properly (i.e., optimally) or abnormally and applying corrective actions as needed. The pump control system thereafter stores the results of the evaluation for that well pump (e.g., in storage device  210 , network  150 , SCADA system  152 , etc.) at blocks  426 ,  428 ,  430 ,  432 . 
       FIG. 5  is another flow diagram illustrating an exemplary method  500  that may be used by the pump control system  100  to perform the well pump evaluations at any of blocks  418 ,  420 ,  422 ,  424  from  FIG. 4  for each well pump according to embodiments of the present disclosure. For a given well pump, the method  500  generally begins at block  502  where the pump control system checks whether any pump configurations are different from the pump configurations stored (e.g., in storage device  210 ) in the pump control system. Such pump configurations may include, for example, the target pump fillage for a sucker rod pump, a low pump efficiency alarm setpoint for an ESP, a minimum pump speed for any artificial lift pump type, and the like. If any pump configurations are different from the stored pump configurations, the pump control system updates the stored pump configurations accordingly. 
     At block  504 , the pump control system determines whether the well pump is active (i.e., running). If yes, the pump control system evaluates one or more parameters associated with the active well pump at block  506 . These pump parameters may include, for example, the target pump fillage for a sucker rod pump, the suction pressure for an ESP, casing pressure for a gas lift pump, and the like. Based on the pump parameters, the pump control system determines the type of well pump at block  508 . The pump types may include, for example, rod pump, ESP, gas lift pump, jet lift pump, plunger lift pump, and any other type of artificial lift pump known to those skilled in the art. 
     Once the pump type is determined, the pump control system proceeds to obtain pump operation data (e.g., from the sensors  148 ) for that pump type at block  508 . For example, if the pump control system determines that the pump is an ESP, then ESP pump operation data, such as impeller speed, is obtained at block  508 . Alternatively, if the pump control system determines that the pump is a rod pump, then rod pump operation data, such as rod displacement and tension load, is obtained at block  508 . The pump control system may store such operation data (e.g., in the storage device  210 , network  150 , SCADA system  152 , etc.). 
     At block  510 , the pump control system analyzes the pump operation data for the well pump using the pump control algorithm (e.g., one of the pump control algorithms  222 ) for that well pump. At block  512 , the pump control system determines whether the well pump should be stopped based on the analysis from block  510 . For example, if the analysis determines that the well pump is operating in a pumped-off condition, then the pump control system should stop the pump. 
     If the determination at block  512  is no, then at block  514 , the pump control system determines whether the speed of the pump (or some other pump operation parameter) should be modified based on the analysis at block  510 . If yes, then the pump control system continues to block  516  to obtain operation data on other parameters related to the well that are not specifically necessary to the analysis of the well pump&#39;s operation. The pump control system then stores and publishes such operation data (e.g., in storage device  210 , network  150 , SCADA system  152 , etc.), including updates thereto, at block  518 . In some embodiments, the pump control system may optionally determine at block  520  whether the well pump is a rod pump. This is because most pump control systems, including the pump control system herein, are designed to automatically generate a dynagraph or dynacard when a rod pump is used, as such dynagraphs can facilitate detection of abnormal operations for rod pumps. If the control system determines that the well pump is a rod pump, then the dynagraph for the rod pump is updated to include any updates in the pump operation data making up the dynagraph at block  522 . 
     If the pump control system determines at block  512  that the well pump should be stopped, then at block  524  the pump configuration is changed to reflect that the pump should be stopped. The pump control system thereafter sends a control signal containing commands to the prime mover of the well pump to update the prime mover control settings based on the changed pump configuration. At block  530 , the prime mover (not the pump control system) applies the updated prime mover control settings to the pump mechanism, for example, by transmitting an appropriate electrical, hydraulic, or other signal to the pump mechanism. The pump control system then continues to block  516  to obtain and store pump operation data, as discussed above. 
     If the pump control system determines at block  514  that the pump speed (or some other pump operation parameter) should be modified, again based on the analysis from block  510 , then a new value is calculated for the pump speed (or some other pump operation parameter) at block  526 . The new value is preferably a value that optimizes the well pump&#39;s operation based on the current operation data for that well pump and may result in a production volume that differs from other well pumps or from the same well pump at a different time period. The pump control system then continues to block  528  to update the prime mover for the pump, as discussed above. 
     If the pump control system determines at block  504  that the well pump is not running, then a determination is made at block  532  whether to start the well pump. This determination whether to start the well pump may be based on, for example, a user using the pump control system to start a stopped pump, a user resetting an alarm that had stopped a pump, a pump off timer having elapsed, and the like. If the determination is yes, then the pump control system changes the pump configuration to reflect that the pump should be started. The pump control system then continues to block  528  to update the prime mover for the pump, as discussed above. 
     An additional benefit of regularly storing the configurations and operation data for each well pump, as described above, is the ability to reuse the configurations and operation data when a new well pump having the same pump type as an existing well pump is brought on line. This may occur, for example, when a new well is put into production or when an existing well pump needs to be replaced with a different well pump. When that happens, the pump control system can be seamlessly switched to controlling the new or replacement well pump. The ability to add or replace well pumps without having to add or replace (or modify) the pump control system provides significant savings in cost and time for well site operators. 
     In the preceding, reference is made to various embodiments. However, the scope of the present disclosure is not limited to the specific described embodiments. Instead, any combination of the described features and elements, whether related to different embodiments or not, is contemplated to implement and practice contemplated embodiments. Furthermore, although embodiments may achieve advantages over other possible solutions or over the prior art, whether or not a particular advantage is achieved by a given embodiment is not limiting of the scope of the present disclosure. Thus, the preceding aspects, features, embodiments and advantages are merely illustrative and are not considered elements or limitations of the appended claims except where explicitly recited in a claim(s). 
     The various embodiments disclosed herein may be implemented as a system, method or computer program product. Accordingly, aspects may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, aspects may take the form of a computer program product embodied in one or more computer-readable medium(s) having computer-readable program code embodied thereon. 
     Any combination of one or more computer-readable medium(s) may be utilized. The computer-readable medium may be a non-transitory computer-readable medium. A non-transitory computer-readable medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the non-transitory computer-readable medium can include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. Program code embodied on a computer-readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing. 
     Computer program code for carrying out operations for aspects of the present disclosure may be written in any combination of one or more programming languages. Moreover, such computer program code can execute using a single computer system or by multiple computer systems communicating with one another (e.g., using a local area network (LAN), wide area network (WAN), the Internet, etc.). While various features in the preceding are described with reference to flowchart illustrations and/or block diagrams, a person of ordinary skill in the art will understand that each block of the flowchart illustrations and/or block diagrams, as well as combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer logic (e.g., computer program instructions, hardware logic, a combination of the two, etc.). Generally, computer program instructions may be provided to a processor(s) of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus. Moreover, the execution of such computer program instructions using the processor(s) produces a machine that can carry out a function(s) or act(s) specified in the flowchart and/or block diagram block or blocks. 
     The flowchart and block diagrams in the Figures illustrate the architecture, functionality and/or operation of possible implementations of various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions. 
     It is to be understood that the above description is intended to be illustrative, and not restrictive. Many other implementation examples are apparent upon reading and understanding the above description. Although the disclosure describes specific examples, it is recognized that the systems and methods of the disclosure are not limited to the examples described herein, but may be practiced with modifications within the scope of the appended claims. Accordingly, the specification and drawings are to be regarded in an illustrative sense rather than a restrictive sense. The scope of the disclosure should, therefore, be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled.