Patent Publication Number: US-11391281-B2

Title: Priming protection

Description:
RELATED APPLICATIONS 
     This application is a divisional of U.S. application Ser. No. 14/877,817, filed on Oct. 7, 2015, which is a divisional of U.S. application Ser. No. 14/071,547, filed on Nov. 4, 2013, which is abandoned, which is a divisional of U.S. application Ser. No. 13/220,537 filed on Aug. 29, 2011, issued as U.S. Pat. No. 8,573,952 on Nov. 5, 2013, which is a continuation of U.S. application Ser. No. 11/608,001, filed on Dec. 7, 2006, issued as U.S. Pat. No. 8,469,675 on Jun. 25, 2013, which is a continuation-in-part of U.S. application Ser. No. 11/286,888, filed on Nov. 23, 2005, issued as U.S. Pat. No. 8,019,479 on Sep. 13, 2011, and of U.S. application Ser. No. 10/926,513, filed on Aug. 26, 2004, issued as U.S. Pat. No. 7,874,808 on Jan. 25, 2011, the entire disclosures of which are incorporated herein by reference. 
    
    
     FIELD OF THE INVENTION 
     The present invention relates generally to control of a pump, and more particularly to control of a variable speed pumping system for a pool, a spa or other aquatic application. 
     BACKGROUND OF THE INVENTION 
     Conventionally, a pump to be used in an aquatic application such as a pool or a spa is operable at a finite number of predetermined speed settings (e.g., typically high and low settings). Typically, these speed settings correspond to the range of pumping demands of the pool or spa at the time of installation. Factors such as the volumetric flow rate of water to be pumped, the total head pressure required to adequately pump the volume of water, and other operational parameters determine the size of the pump and the proper speed settings for pump operation. Once the pump is installed, the speed settings typically are not readily changed to accommodate changes in the aquatic application conditions and/or pumping demands. 
     Generally, pumps of this type must be primed before use. For example, the pump and the pumping system should be filled with liquid (e.g., water) and contain little or no gas (e.g., air), or else the pump may not prime. If the pump is operated in an unprimed condition (e.g., the gas has not been removed from the system), various problems can occur, such as an overload condition or loss of prime condition. In another example, if too much gas is in the system, a dry run condition can occur that can cause damage to the pump. In yet other examples, operation of the pump in an unprimed condition can cause a water hammer condition and/or a voltage spike that can damage the pump and/or even various other elements of the pumping system. 
     Conventionally, to prime a pump, a user can manually fill the pump with water and operate the pump, in a repetitious fashion, until the pump is primed. However, the user must be careful to avoid the aforementioned problems associated with operating the pump in an unprimed condition during this process. Thus, it would be beneficial to utilize an automated priming function to operate the pump according to an automated program, or the like, that can monitor the priming status and can automatically alter operation of the pump to avoid the aforementioned problems. However, since each aquatic application is different, the automated priming function must be adjustable and/or scalable, such as in terms of water flow or pressure through the system and/or time required to prime the pump of a specific aquatic application. 
     Accordingly, it would be beneficial to provide a pumping system that could be readily and easily adapted to respond to a variety of priming conditions. Further, the pumping system should be responsive to a change of conditions and/or user input instructions. 
     SUMMARY OF THE INVENTION 
     In accordance with one aspect, the present invention provides a pumping system for an aquatic application. The pumping system includes a pump, a motor coupled to the pump, and a controller in communication with the motor. The controller is configured to store a timeout time value. The controller is also configured to initiate a pump priming process and subsequently initiate a timeout counter to begin counting a counter time value. The controller is configured to initiate a timeout interrupt routine that interrupts the pump priming process when the counter time value exceeds the timeout time value. The timeout interrupt routine includes shutting down the motor. 
     In accordance with another aspect, the present invention provides a pumping system. The pumping system includes a pump, a motor coupled to the pump, and a controller in communication with the motor. The controller is configured to store a timeout time value and initiate a timeout counter to begin counting a counter time value. The controller is also configured to receive a performance value that is indicative of an actual power consumption of the motor and compare the performance value to a reference value indicative of a reference power value of the motor. The controller is further configured to prime and run the pump when the performance value is less than the reference value and to continue to do so until the performance value is equal to or greater than the reference value unless the counter time value exceeds the timeout time value. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The foregoing and other features and advantages of the present invention will become apparent to those skilled in the art to which the present invention relates upon reading the following description with reference to the accompanying drawings, in which: 
         FIG. 1  is a block diagram of an example of a variable speed pumping system in accordance with the present invention with a pool environment; 
         FIG. 2  is another block diagram of another example of a variable speed pumping system in accordance with the present invention with a pool environment; 
         FIGS. 3A and 3B  are a flow chart of an example of a process in accordance with an aspect of the present invention; 
         FIG. 4  is a perceptive view of an example pump unit that incorporates the present invention; 
         FIG. 5  is a perspective, partially exploded view of a pump of the unit shown in  FIG. 4 ; and 
         FIG. 6  is a perspective view of a control unit of the pump unit shown in  FIG. 4 . 
     
    
    
     DESCRIPTION OF EXAMPLE EMBODIMENTS 
     Certain terminology is used herein for convenience only and is not to be taken as a limitation on the present invention. Further, in the drawings, the same reference numerals are employed for designating the same elements throughout the figures, and in order to clearly and concisely illustrate the present invention, certain features may be shown in somewhat schematic form. 
     An example variable-speed pumping system  10  in accordance with one aspect of the present invention is schematically shown in  FIG. 1 . The pumping system  10  includes a pump unit  12  that is shown as being used with a pool  14 . It is to be appreciated that the pump unit  12  includes a pump  16  for moving water through inlet and outlet lines  18  and  20 . 
     The pool  14  is one example of an aquatic application with which the present invention may be utilized. The phrase “aquatic application” is used generally herein to refer to any reservoir, tank, container or structure, natural or man-made, having a fluid, capable of holding a fluid, to which a fluid is delivered, or from which a fluid is withdrawn. Further, “aquatic application” encompasses any feature associated with the operation, use or maintenance of the aforementioned reservoir, tank, container or structure. This definition of “aquatic application” includes, but is not limited to pools, spas, whirlpool baths, landscaping ponds, water jets, waterfalls, fountains, pool filtration equipment, pool vacuums, spillways and the like. Although each of the examples provided above includes water, additional applications that include liquids other than water are also within the scope of the present invention. Herein, the terms pool and water are used with the understanding that they are not limitations on the present invention. 
     A water operation  22  is performed upon the water moved by the pump  16 . Within the shown example, water operation  22  is a filter arrangement that is associated with the pumping system  10  and the pool  14  for providing a cleaning operation (i.e., filtering) on the water within the pool. The filter arrangement  22  is operatively connected between the pool  14  and the pump  16  at/along an inlet line  18  for the pump. Thus, the pump  16 , the pool  14 , the filter arrangement  22 , and the interconnecting lines  18  and  20  form a fluid circuit or pathway for the movement of water. 
     It is to be appreciated that the function of filtering is but one example of an operation that can be performed upon the water. Other operations that can be performed upon the water may be simplistic, complex or diverse. For example, the operation performed on the water may merely be just movement of the water by the pumping system (e.g., re-circulation of the water in a waterfall or spa environment). 
     Turning to the filter arrangement  22 , any suitable construction and configuration of the filter arrangement is possible. For example, the filter arrangement  22  may include a skimmer assembly for collecting coarse debris from water being withdrawn from the pool, and one or more filter components for straining finer material from the water. 
     The pump  16  may have any suitable construction and/or configuration for providing the desired force to the water and move the water. In one example, the pump  16  is a common centrifugal pump of the type known to have impellers extending radially from a central axis. Vanes defined by the impellers create interior passages through which the water passes as the impellers are rotated. Rotating the impellers about the central axis imparts a centrifugal force on water therein, and thus imparts the force flow to the water. Although centrifugal pumps are well suited to pump a large volume of water at a continuous rate, other motor-operated pumps may also be used within the scope of the present invention. 
     Drive force is provided to the pump  16  via a pump motor  24 . In the one example, the drive force is in the form of rotational force provided to rotate the impeller of the pump  16 . In one specific embodiment, the pump motor  24  is a permanent magnet motor. In another specific embodiment, the pump motor  24  is an induction motor. In yet another embodiment, the pump motor  24  can be a synchronous or asynchronous motor. The pump motor  24  operation is infinitely variable within a range of operation (i.e., zero to maximum operation). In one specific example, the operation is indicated by the RPM of the rotational force provided to rotate the impeller of the pump  16 . Thus, either or both of the pump  16  and/or the motor  24  can be configured to consume power during operation. 
     A controller  30  provides for the control of the pump motor  24  and thus the control of the pump  16 . Within the shown example, the controller  30  includes a variable speed drive  32  that provides for the infinitely variable control of the pump motor  24  (i.e., varies the speed of the pump motor). By way of example, within the operation of the variable speed drive  32 , a single phase AC current from a source power supply is converted (e.g., broken) into a three-phase AC current. Any suitable technique and associated construction/configuration may be used to provide the three-phase AC current. The variable speed drive supplies the AC electric power at a changeable frequency to the pump motor to drive the pump motor. The construction and/or configuration of the pump  16 , the pump motor  24 , the controller  30  as a whole, and the variable speed drive  32  as a portion of the controller  30 , are not limitations on the present invention. In one possibility, the pump  16  and the pump motor  24  are disposed within a single housing to form a single unit, and the controller  30  with the variable speed drive  32  are disposed within another single housing to form another single unit. In another possibility, these components are disposed within a single housing to form a single unit. Further still, the controller  30  can receive input from a user interface  31  that can be operatively connected to the controller in various manners. 
     The pumping system  10  has means used for control of the operation of the pump. In accordance with one aspect of the present invention, the pumping system  10  includes means for sensing, determining, or the like one or more parameters or performance values indicative of the operation performed upon the water. Within one specific example, the system includes means for sensing, determining or the like one or more parameters or performance values indicative of the movement of water within the fluid circuit. 
     The ability to sense, determine or the like one or more parameters or performance values may take a variety of forms. For example, one or more sensors  34  may be utilized. Such one or more sensors  34  can be referred to as a sensor arrangement. The sensor arrangement  34  of the pumping system  10  would sense one or more parameters indicative of the operation performed upon the water. Within one specific example, the sensor arrangement  34  senses parameters indicative of the movement of water within the fluid circuit. The movement along the fluid circuit includes movement of water through the filter arrangement  22 . As such, the sensor arrangement  34  can include at least one sensor used to determine flow rate of the water moving within the fluid circuit and/or includes at least one sensor used to determine flow pressure of the water moving within the fluid circuit. In one example, the sensor arrangement  34  can be operatively connected with the water circuit at/adjacent to the location of the filter arrangement  22 . It should be appreciated that the sensors of the sensor arrangement  34  may be at different locations than the locations presented for the example. Also, the sensors of the sensor arrangement  34  may be at different locations from each other. Still further, the sensors may be configured such that different sensor portions are at different locations within the fluid circuit. Such a sensor arrangement  34  would be operatively connected  36  to the controller  30  to provide the sensory information thereto. Further still, one or more sensor arrangement(s)  34  can be used to sense parameters or performance values of other components, such as the motor (e.g., motor speed or power consumption) or even values within program data running within the controller  30 . 
     It is to be noted that the sensor arrangement  34  may accomplish the sensing task via various methodologies, and/or different and/or additional sensors may be provided within the system  10  and information provided therefrom may be utilized within the system. For example, the sensor arrangement  34  may be provided that is associated with the filter arrangement and that senses an operation characteristic associated with the filter arrangement. For example, such a sensor may monitor filter performance. Such monitoring may be as basic as monitoring filter flow rate, filter pressure, or some other parameter that indicates performance of the filter arrangement. Of course, it is to be appreciated that the sensed parameter of operation may be otherwise associated with the operation performed upon the water. As such, the sensed parameter of operation can be as simplistic as a flow indicative parameter such as rate, pressure, etc. 
     Such indication information can be used by the controller  30 , via performance of a program, algorithm or the like, to perform various functions, and examples of such are set forth below. Also, it is to be appreciated that additional functions and features may be separate or combined, and that sensor information may be obtained by one or more sensors. 
     With regard to the specific example of monitoring flow rate and flow pressure, the information from the sensor arrangement  34  can be used as an indication of impediment or hindrance via obstruction or condition, whether physical, chemical, or mechanical in nature, that interferes with the flow of water from the aquatic application to the pump such as debris accumulation or the lack of accumulation, within the filter arrangement  34 . As such, the monitored information is indicative of the condition of the filter arrangement. 
     The example of  FIG. 1  shows an example additional operation  38  and the example of  FIG. 2  shows an example additional operation  138 . Such an additional operation (e.g.,  38  or  138 ) may be a cleaner device, either manual or autonomous. As can be appreciated, an additional operation involves additional water movement. Also, within the presented examples of  FIGS. 1 and 2 , the water movement is through the filter arrangement (e.g.,  22  or  122 ). Such additional water movement may be used to supplant the need for other water movement. 
     Within another example ( FIG. 2 ) of a pumping system  110  that includes means for sensing, determining, or the like one or more parameters indicative of the operation performed upon the water, the controller  130  can determine the one or more parameters via sensing, determining or the like parameters associated with the operation of a pump  116  of a pump unit  112 . Such an approach is based upon an understanding that the pump operation itself has one or more relationships to the operation performed upon the water. 
     It should be appreciated that the pump unit  112 , which includes the pump  116  and a pump motor  124 , a pool  114 , a filter arrangement  122 , and interconnecting lines  118  and  120 , may be identical or different from the corresponding items within the example of  FIG. 1 . In addition, as stated above, the controller  130  can receive input from a user interface  131  that can be operatively connected to the controller in various manners. 
     Turning back to the example of  FIG. 2 , some examples of the pumping system  110 , and specifically the controller  130  and associated portions, that utilize at least one relationship between the pump operation and the operation performed upon the water attention are shown in U.S. Pat. No. 6,354,805, to Moller, entitled “Method For Regulating A Delivery Variable Of A Pump” and U.S. Pat. No. 6,468,042, to Moller, entitled “Method For Regulating A Delivery Variable Of A Pump.” The disclosures of these patents are incorporated herein by reference. In short summary, direct sensing of the pressure and/or flow rate of the water is not performed, but instead one or more sensed or determined parameters associated with pump operation are utilized as an indication of pump performance. One example of such a pump parameter or performance value is power consumption. Pressure and/or flow rate can be calculated/determined from such pump parameter(s). 
     Although the system  110  and the controller  130  may be of varied construction, configuration and operation, the function block diagram of  FIG. 2  is generally representative. Within the shown example, an adjusting element  140  is operatively connected to the pump motor and is also operatively connected to a control element  142  within the controller  130 . The control element  142  operates in response to a comparative function  144 , which receives input from a performance value  146 . 
     The performance value  146  can be determined utilizing information from the operation of the pump motor  124  and controlled by the adjusting element  140 . As such, a feedback iteration can be performed to control the pump motor  124 . Also, operation of the pump motor and the pump can provide the information used to control the pump motor/pump. As mentioned, it is an understanding that operation of the pump motor/pump has a relationship to the flow rate and/or pressure of the water flow that is utilized to control flow rate and/or flow pressure via control of the pump. 
     As mentioned, the sensed, determined (e.g., calculated, provided via a look-up table, graph or curve, such as a constant flow curve or the like, etc.) information can be utilized to determine various performance characteristics of the pumping system  110 , such as input power consumed, motor speed, flow rate and/or the flow pressure. Thus, the controller (e.g.,  30  or  130 ) provides the control to operate the pump motor/pump accordingly. In one example, the operation can be configured to prevent damage to a user or to the pumping system  10 ,  110  caused by a dry run condition. In other words, the controller (e.g.,  30  or  130 ) can repeatedly monitor one or more performance value(s)  146  of the pumping system  10 , 110 , such as the input power consumed by, or the speed of, the pump motor (e.g.,  24  or  124 ) to sense or determine an unprimed status of the pumping system  10 ,  110 . 
     Turning to one specific example, attention is directed to the process chart that is shown in  FIGS. 3A and 3B . It is to be appreciated that the process chart as shown is intended to be only one example method of operation, and that more or less steps can be included in various orders. Additionally, the example process can be used during startup of the pump  12 ,  112  to ensure a primed condition, and/or it can also be used to later ensure that an operating pump  12 ,  112  is maintaining a primed condition. For the sake of clarity, the example process described below can determine a priming status of the pumping system based upon power consumption of the pump unit  12 ,  112  and/or the pump motor  24 ,  124 , though it is to be appreciated that various other performance values (i.e., motor speed, flow rate and/or flow pressure of water moved by the pump unit  12 ,  112 , or the like) can also be used for a determination of priming status (e.g., though either direct or indirect measurement and/or determination). In one example, an actual power consumption of the motor  24 ,  124  can be compared against a reference (e.g., expected) power consumption of the motor  24 ,  124 . When the priming status is in an unprimed condition, the motor  24 ,  124  will generally consume less power than the reference power consumption. Conversely, when the priming status is in a primed condition, the motor  24 ,  124  will generally consume an equal or greater amount of power as compared to the reference power consumption. 
     In another example, when the priming status is in an unprimed condition or the pumping system  10 ,  110  loses prime, the power consumed by the pump unit  12 ,  112  and/or pump motor  24 ,  124  can decrease. Thus, an unprimed condition or loss of prime can be detected upon a determination of a decrease in power consumption and/or associated other performance values (e.g., relative amount of decrease, comparison of decreased values, time elapsed, number of consecutive decreases, etc.). Power consumption can be determined in various ways. In one example, the power consumption can be based upon a measurement of electrical current and electrical voltage provided to the motor  24 ,  124 . Various other factors can also be included, such as the power factor, resistance, and/or friction of the motor  24 ,  124  components, and/or even physical properties of the aquatic application, such as the temperature of the water. 
     In yet another example, the priming status can be determined based upon a measurement of water flow rate. For example, when an unprimed condition or loss of prime is present in the pumping system  10 ,  110 , the flow rate of the water moved by the pump unit  12 ,  112  and/or pump motor  24 ,  124  can also decrease, and the unprimed condition can be determined from a detection of the decreased flow rate. In another example, the priming status can be determined based upon a comparison of determined reference and actual water flow rates. 
     As shown by  FIGS. 3A and 3B , the process  200  can be contained within a constantly repeating loop, such as a “while” loop, “if-then” loop, or the like, as is well known in the art. In one example, the “while” or “if-then” loop can cycle at predetermined intervals, such as once every 100 milliseconds. Further, it is to be appreciated that the loop can include various methods of breaking out of the loop due to various conditions and/or user inputs. In one example, the loop could be broken (and the program stopped and/or restarted) if a user input value is changed. In another example, the loop could be broken if an interrupt command is issued. Interrupt signals, as are well known in the art, allow a processor (e.g., controller  30 ,  130 ) to process other work while an event is pending. For example, the process  200  can include a timer that is configured to interrupt the process  200  after a predetermined threshold time has been reached, though various other interrupt commands and/or processes are also contemplated to be within the scope of the invention. It is to be appreciated that the interrupt command can originate from the controller  30 ,  130 , though it can also originate from various other processes, programs, and/or controllers, or the like. 
     The process  200  is initiated at step  202 , which is merely a title block, and proceeds to step  204 . At step  204 , information can be retrieved from a filter menu, such as the user interface  31 ,  131 . The information may take a variety of forms and may have a variety of contents. As one example, the information can include user inputs related a timeout value. Thus, a user can limit the amount of time the system can take to attempt to successfully prime. For example, a user can limit the process time to 5 minutes such that the process  200  stops the motor  24 ,  124  if the system remains in an unprimed status for a time exceeding the user input 5 minute timeout value, though various other times are also contemplated to be within the scope of the invention. In addition or alternatively, the information of step  204  can be calculated or otherwise determined (e.g., stored in memory or found in a look-up table, graph, curve or the like), and can include various forms, such as a value (e.g., “yes” or “no”, a numerical value, or even a numerical value within a range of values), a percentage, or the like. It should be appreciated that such information (e.g., times, values, percentages, etc.) is desired and/or intended, and/or preselected/predetermined. 
     It is to be appreciated that even further information can be retrieved from a filter menu or the like (e.g., user interface  31 ,  131 ). In one example, the additional information can relate to an “auto restart” feature that can be adapted to permit the pumping system  10 ,  110  to automatically restart in the event that it has been slowed and/or shut down due to an unsuccessful priming condition. As before, the information can include various forms, such as a value (e.g., 0 or 1, or “yes” or “no”), though it can even comprise a physical switch or the like. It is to be appreciated that various other information can be input by a user to alter control of the priming protection system. 
     Subsequent to step  204 , the process  200  can proceed onto step  206 . At step  206 , the process  200  can start/initialize the timeout timer. The timeout timer can include various types. In one example, the timeout timer can include a conventional timer that counts upwards or downwards in units of time (seconds, minutes, etc.). In another example, the timeout timer can include an electronic element, such as a capacitor or the like, that can increase or decrease an electrical charge over time. 
     Subsequent to step  206 , the process  200  can proceed onto step  208 . As can be appreciated, it can be beneficial to reset and/or initialize the various counters (e.g., timeout counter, retry counter, prime counter, etc.) of the process  200 . For example, the timeout counter of step  206  can be reset and/or initialized. As can be appreciated, because the counters can include various types, each counter can be reset and/or initialized in various manners. For example, a clock-based timeout counter can be reset to a zero time index, while a capacitor-based timeout counter can be reset to a particular charge. However, it is to be appreciated that various counters may not be reset and/or initialized. For example, because the process  200  can be a repeating process within a “while” loop or the like, various counters may be required during various cycles of the program. For example, it can be beneficial not to reset the retry/prime-error counter between program loops to permit cumulative counting during process restarts. 
     Subsequent to step  208 , the process can proceed onto step  210  to operate the motor  24 ,  124  at a motor speed. During a first program cycle, step  210  can operate the motor  24 ,  124  at an initial motor speed. However, during a subsequent program cycle, step  210  can operate the motor  24 ,  124  at various other motor speeds. The motor speed of the motor  24 ,  124  can be determined in various manners. In one example, the motor speed can be retrieved from a user input. In another example, the motor speed can be determined by the controller  30 ,  130  (e.g., calculated, retrieved from memory or a look-up table, graph, curve, etc). In yet another example, during subsequent program cycles, the motor speed can be increased or decreased from a previous program cycle. 
     Subsequent to step  210 , the process  200  can determine a reference power consumption of the motor  24 ,  124  (e.g., watts or the like) based upon a performance value of the pumping system  10 ,  110 . In one example, step  210  can determine a reference power consumption of the motor  24 ,  124  based upon the motor speed, such as by calculation or by values stored in memory or found in a look-up table, graph, curve or the like. In one example, the controller  30 ,  130  can contain a one or more predetermined pump curves or associated tables using various variables (e.g., flow, pressure, speed, power, etc.). The curves or tables can be arranged or converted in various manners, such as into constant flow curves or associated tables. For example, the curves can be arranged as a plurality of power (watts) versus speed (RPM) curves for discrete flow rates (e.g., flow curves for the range of 15 GPM to 130 GPM in 1 GPM increments) and stored in the computer program memory. Thus, for a given flow rate, one can use a known value, such as the motor speed to determine (e.g., calculate or look-up) the reference power consumption of the motor  24 ,  124 . The pump curves can have the data arranged to fit various mathematical models, such as linear or polynomial equations, that can be used to determine the performance value. 
     Additionally, where the pump curves are based upon constant flow values, a reference flow rate for the pumping system  10 ,  110  should also be determined. The reference flow rate can be determined in various manners, such as by being retrieved from a program menu through the user interface  31 ,  131  or from other sources, such as another controller and/or program. In addition or alternatively, the reference flow rate can be calculated or otherwise determined (e.g., stored in memory or found in a look-up table, graph, curve or the like) by the controller  30 ,  130  based upon various other input values. For example, the reference flow rate can be calculated based upon the size of the swimming pool (i.e., volume), the number of turnovers per day required, and the time range that the pumping system  10 ,  110  is permitted to operate (e.g., a 15,000 gallon pool size at 1 turnover per day and 5 hours run time equates to 50 GPM). The reference flow rate may take a variety of forms and may have a variety of contents, such as a direct input of flow rate in gallons per minute (GPM). 
     Subsequent to step  212 , the process  200  can proceed to step  214  to pause for a predetermined amount of time to permit the pumping system  10 ,  110  to stabilize from the motor speed change of step  210 . As can be appreciated, power consumption of the motor  24 ,  124  can fluctuate during a motor speed change transition and/or settling time. Thus, as show, the process  200  can pause for 1 second to permit the power consumption of the motor  24   124  to stabilize, though various other time intervals are also contemplated to be within the scope of the invention. 
     Subsequent to step  214 , the process can determine an actual power consumption of the motor  24 ,  124  when the motor is operating at the motor speed (e.g., from step  210 ). The actual power consumption can be measured directly or indirectly, as can be appreciated. For example, the motor controller can determine the present power consumption, such as by way of a sensor configured to measure, directly or indirectly, the electrical voltage and electrical current consumed by the motor  24 ,  124 . Various other factors can also be included, such as the power factor, resistance, and/or friction of the motor  24 ,  124  components. In addition or alternatively, a change in actual power consumption over time (e.g., between various program cycles) can also be determined. It is to be appreciated that the motor controller can provide a direct value of present power consumption (i.e., watts), or it can provide it by way of an intermediary or the like. It is also to be appreciated that the present power consumption can also be determined in various other manners, such as by way of a sensor (not shown) separate and apart from the motor controller. 
     Subsequent to step  216 , the process  200  can proceed onto step  218  to determine a determined value based upon a comparison of the reference power consumption and the actual power consumption. In one example, as shown, step  218  can be in the form of an “if-then” comparison such that if the actual power consumption is less than or greater than the reference power consumption, step  218  can output a true or false parameter, respectively. As stated previously, it is to be appreciated that when the priming status is in an unprimed condition, the motor  24 ,  124  will generally consume less power than the reference power consumption, and conversely, when the priming status is in a primed condition, the motor  24 ,  124  will generally consume an equal or greater amount of power as compared to the reference power consumption. Thus, as shown, if the actual power consumption is less than the reference power consumption (e.g., TRUE), the process  200  can proceed onto step  220  to increment (e.g., increase) a prime counter. For example, the prime counter can be increased by +1. Alternatively, if the actual power consumption is greater than the reference power consumption (e.g., FALSE), the process  200  can proceed onto step  222  to decrement (e.g., decrease) the prime counter (e.g., − 1 ). Thus, it is to be appreciated that the determined value can include the prime counter, though it can also include various other values based upon other comparisons of the reference power consumption and the actual power consumption of the motor  24 ,  124 . In addition or alternatively, in step  318 , the actual power consumption can be compared against a previous actual power consumption of a previous program or time cycle (i.e., the power consumption determination made during the preceding program or time cycle) for a determination of a change in power consumption. 
     Subsequent to steps  220  and  222 , the process  200  can proceed onto steps  224  and/or  226  to determine a priming status of the pumping system based upon the determined value (e.g., the prime counter). In steps  224  and  226 , the process can determine the priming status based upon whether the prime counter exceeds one or more predetermine thresholds. For example, in step  224 , the process  200  can determine whether the prime counter is less than −20. If the prime counter is less than −20 (e.g., TRUE), then the process  200  can be considered to be in a primed condition (e.g., see title block  230 ) and proceed onto step  228  to control the pumping system  10 ,  110  via a flow control scheme. That is, once the priming status is determined to be in a primed condition, control of the motor can be altered to adjust a flow rate of water moved by the pump unit  12 ,  112  towards a constant value (e.g., 15 GPM or other flow rate value). Additionally, once the system is determined to be in a primed condition, the process  200  can end until the pump is in need of further priming and/or a recheck of the priming status. 
     Alternatively, if the prime counter is not less than −20 (e.g., FALSE), then the process  200  can proceed onto step  226 . In step  226 , the process  200  can determine whether the prime counter is greater than +20. If the prime counter is not greater than +20 (e.g., FALSE), then the process  200  can be considered to be in a first unprimed condition and can proceed onto step  232  to increase the motor speed. In one example, the motor speed can be increased by 20 RPM, though various other speed increases can also be made. It is to be appreciated that various other changes in motor speed can also be performed, such as decreases in motor speed, and/or increasing/decreasing cycle fluctuations. 
     Additionally, after increasing the motor speed in step  232 , the process can repeat steps  212 - 226  with the increased motor speed. That is, the process  200  can determine a new reference motor power consumption (step  212 ) based upon the new, increased motor speed, can determine the actual motor power consumption when the motor is operating at the increased motor speed (step  216 ), and can make the aforementioned comparison between the actual and reference power consumptions (step  218 ). The process  200  can then determine whether to increase or decrease the prime counter (steps  218 - 222 ), determine the prime status (steps  224 - 226 ), and alter control of the motor accordingly. It is to be appreciated that, because the prime counter can be reset at the beginning of the process  200 , both of steps  224  and  226  should register as false conditions during at least the first nineteen cycle iterations (e.g., if the prime counter is reset to zero, and is increased or decreased by one during each cycle, it will take at least 20 program cycles for either of steps  224  or  226  for the prime counter to register +/−20). Thus, during the example general priming cycle process  200  shown herein, it is normal for both of steps  224  and  226  to output a false register during at least the first nineteen program cycle iterations. 
     Turning back to step  226 , if the process  200  determines that the prime counter is greater than +20, (e.g., TRUE), then the priming status can be considered to be in a second unprimed condition, and the process  200  can proceed onto step  234 . If the priming status is determined to be in the second unprimed condition, it can indicate that the pumping system  10 ,  110  is having difficulty achieving a primed condition for a variety of reasons. Accordingly, in step  234 , the process  200  can increase the motor speed to the maximum motor speed in an attempt to draw in a greater volume of water into the pump  12 ,  112  to thereby reduce the amount of gas in the system. 
     However, in the event that the pumping system  10 ,  110  is having a difficult time priming because of excess gas in the system, running the motor at a maximum speed can create a dry run condition that can damage the pump  24 ,  124 . As such, the process  200  can proceed onto steps  235  and  236  to provide a protection against a dry run condition. In step  235 , the process  200  can determine the actual motor power consumption when the motor is operating at maximum speed using any of the various methodologies discussed herein. 
     Next, in step  236 , the process  200  can determine whether the actual power consumption of the motor  24 ,  124  exceeds a dry run power consumption threshold. For example, in step  236 , the process  200  can determine whether the actual motor power consumption is less than a dry run power consumption threshold. If the motor power consumption is less than the dry threshold (e.g., TRUE), then the process can proceed onto step  238  to stop operation of the motor  24 ,  124  to avoid a dry run condition can. In addition or alternatively, in step  240 , the process  200  can also be configured to provide a visual and/or audible indication of dry run condition. For example, the process  200  can display a text message such as “Alarm: Dry Run” on a display, such as an LCD display, or it can cause an alarm light, buzzer, or the like to be activated to alert a user to the dry run condition. In addition or alternatively, the process  200  can lock the system in step  242  to prevent the motor  24 ,  124  from further operation during the dry run condition. The system can be locked in various manners, such as for a predetermined amount of time or until a user manually unlocks the system. 
     However, if the pumping system  10 ,  110  is not in a dry run condition (e.g., step  236  is FALSE), then the process can proceed onto step  238 . In step  238 , the process  200  can determine whether the actual power consumption of the motor operating at maximum motor speed is greater than a predetermined threshold. For example, the process  200  can determine whether the actual power consumption is greater than a priming power threshold when the motor is operating at maximum speed. If the actual power consumption is less than the priming power threshold (e.g., FALSE), then, because the system remains in an unprimed condition, the process  200  can repeat steps  234 - 244  to operate the motor at the maximum speed to thereby encourage a greater volume of water to move through the pump  12 ,  112  to reduce gas in the system. The process  200  can continue to repeat steps  234 - 244  until the timeout interrupt condition occurs, or until the system eventually becomes primed. 
     However, in step  244 , if the actual power consumption is greater than the priming power threshold (e.g., TRUE, operation of the motor at a maximum speed has encouraged the priming status towards a primed condition), the process can proceed onto step  246 . In step  246 , the process  200  can control the pumping system  10 ,  110  via a flow control scheme. That is, the process  200  can alter control the motor  24 ,  124  to adjust a flow rate of water moved by the pump unit  12 ,  112  towards a constant value (e.g., 15 GPM or other flow rate value). Next, the process  200  can determine whether the pumping system  10 ,  110  is stable at the constant flow rate (e.g., 15 GPM) to ensure a generally constant actual power consumption of the motor, and to avoid a transient and/or settling response by the motor. If the system is determined not to be stable at the constant flow rate, the process  200  can repeat steps  246 - 248  until the system becomes stable, or until the timeout interrupt condition occurs. It is to be appreciated that various methods can be used to determine whether the system is stable. For example, the process  200  can determine that the system is stable by monitoring the actual power consumption of the motor over time and/or the flow rate or flow pressure of the water to ensure that the system is not in a transition and/or settling phase. 
     Keeping with step  248 , if the process determines that the system is stable, the process can proceed back to step  208  to repeat the priming process to thereby ensure that the system is in fact primed. Thus, the process  200  can repeat steps  208 - 248  until the priming status achieves a primed condition, or until the timeout interrupt condition occurs, whichever is first. 
     Keeping with  FIG. 3B , the process  200  can also include a timeout interrupt routine  300 . The timeout interrupt routine  300  can act to protect the pump  12 ,  112  from damage in the event that the priming status remains in an unprimed condition for an amount of time that exceeds a predetermined amount of time. As stated previously, the timeout interrupt routine  300  operates as an interrupt, as is known in the art, which can break the process  200  loop if an interrupt command is issued. It is to be appreciated that the priming timeout routine  300  described herein is merely one example of an interrupt routine, and that various other interrupt routines can also be used. 
     The timeout interrupt routine  300  can operate in various manners to trigger a priming timeout interrupt command of step  302 . In one example, the process  200  can include a timer (e.g., digital or analog) that is initialized and begins counting upwards or downwards in units of time (seconds, minutes, etc.) as previously discussed in steps  206 - 208 . Thus, if the time counted by the timer exceeds a threshold time (e.g., the timeout input determined in step  204 ), and the priming status remains in an unprimed condition, the timeout interrupt routine  300  will trigger the interrupt command in step  302 . However, it is to be appreciated that the timer can various other mechanical and/or electronic elements, such as a capacitor or the like, that can increase and/or decrease an electrical charge over time to provide a timing function. 
     Subsequent to the interrupt trigger of step  302 , the timeout interrupt routine  300  can proceed onto step  304  to alter operation of the motor  24 ,  124 , such as by stopping the motor. Thus, the timeout interrupt routine  300  can act to protect the motor  24 ,  124  by inhibiting it from continuously operating the pump  12 ,  112  in an unprimed condition. Following step  304 , the timeout interrupt routine  300  can increment a prime error counter in step  306 . The prime error counter can enable the timeout interrupt routine  300  to keep track of the number of failed priming attempts. 
     In addition or alternatively, in step  308 , the timeout interrupt routine  300  can also be configured to provide a visual and/or audible indication of a priming error. For example, the process  200  can display a text message such as “Alarm: Priming Error” on a display, such as an LCD display, or it can cause an alarm light, buzzer, or the like to be activated to alert a user to the priming error. 
     Next, in step  310 , the timeout interrupt routine  300  can determine whether the prime error counter of step  306  exceeds a prime error threshold. For example, as shown, if the timeout interrupt routine  300  determines that the prime error counter is less than five (e.g., FALSE), the routine  300  can proceed onto step  312 . In step  312 , the routine  300  can cause the priming process  200  to pause for a predetermined amount of time, such as ten minutes, to provide a settling period for the various components of the pumping system  10 ,  110 . Following step  312 , the timeout interrupt routine  300  can permit the priming process  200  to restart with step  206 , wherein the timeout counter is re-initialized and the process  200  restarted. It is to be appreciated that various other prime error thresholds (e.g., step  310 ) and various other pause times (e.g., step  312 ) are also contemplated to be within the scope of the invention, and that the prime error thresholds and/or pause times can be retrieved from memory or input by a user. 
     Alternatively, if the timeout interrupt routine  300  determines that the prime error counter is greater than five (e.g., TRUE), then the routine  300  can proceed onto step  314  to lock the system. For example, if the routine  300  determines that the prime error counter is greater than the prime error threshold, it can indicate that the process  200  is having continued difficulty priming the pumping system  10 ,  110  without user intervention. Thus, locking the system can inhibit the motor  24 ,  124  from further operation in an unprimed condition after several unsuccessful attempts. The system can be locked in various manners, such as for a predetermined amount of time or until a user manually unlocks the system. The lockout step  314  can inhibit and/or prevent the pump unit  12 ,  112  and/or the motor  24 ,  124  from restarting until a user takes specific action. For example, the user can be required to manually restart the pump unit  12 ,  112  and/or the motor  24 ,  124  via the user-interface  31 ,  131 , or to take other actions. 
     Additionally, it is to be appreciated that, for the various counters utilized herein, the process  200  and/or routine  300  can be configured to count a discrete number of occurrences (e.g., 1, 2, 3), and/or can also be configured to monitor and/or react to non-discrete trends in data. For example, instead of counting a discrete number of occurrences of an event, the process  200  and/or means for counting could be configured to monitor an increasing or decreasing performance value and to react when the performance value exceeds a particular threshold. In addition or alternatively, the process  200  and/or routine  300  can be configured to monitor and/or react to various changes in a performance value with respect to another value, such as time, another performance value, priming status, or the like. 
     Further still, the various comparisons discussed herein (e.g., at least steps  218 ,  224 ,  226 ,  236 ,  244 ,  248 ,  310 ) can also include various other “if-then” statements, sub-statements, conditions, comparisons, or the like. For example, multiple “if-then” sub-statements must be true in order for the entire “if-then” statement/comparison to be true. The various other sub-statements or comparisons can be related to various other parameters that can be indicative of priming status. For example, the sub-statements can include a comparison of changes to various other performance values, such as other aspects of power, motor speed, flow rate, and/or flow pressure. Various numbers and types of sub-statements can be used depending upon the particular system. Further still, process  200  and/or the routine  300  can be configured to interact with (i.e., send or receive information to or from) another means for controlling the pump  12 ,  112 , such as a separate controller, a manual control system, and/or even a separate program running within the first controller  30 ,  130 . The second means for controlling the pump  12 ,  112  can provide information for the various sub-statements as described above. For example, the information provided can include motor speed, power consumption, flow rate or flow pressure, or any changes therein, or even any changes in additional features cycles of the pumping system  10 ,  110  or the like. 
     In addition to the methodologies discussed above, the present invention can also include the various components configured to determine the priming status of the pumping system  10 ,  110  for moving water of an aquatic application. For example, the components can include the water pump  12 ,  112  for moving water in connection with performance of an operation upon the water and the variable speed motor  24 ,  124  operatively connected to drive the pump  12 ,  112 . The pumping system  10 ,  110  can further include means for determining a reference power consumption of the motor  24 ,  124  based upon a performance value of the pumping system  10 ,  110 , means for determining an actual power consumption of the motor  24 ,  124 , and means for comparing the reference power consumption and the actual power consumption. The pumping system  10 ,  110  can further include means for determining a priming status of the pumping system  10 ,  110  based upon the comparison of the reference power consumption and the actual power consumption. The priming status can include at least one of the group of a primed condition and an unprimed condition. In addition or alternatively, the pumping system  10 ,  110  can include means for operating the motor  24 ,  124  at a motor speed and/or means for altering control of the motor  24 ,  124  based upon the priming status. It is to be appreciated that the pumping system  10 ,  10  discussed herein can also include any of the various other elements and/or methodologies discussed previously herein. 
     It is also to be appreciated that the controller (e.g.,  30  or  130 ) may have various forms to accomplish the desired functions. In one example, the controller  30  can include a computer processor that operates a program. In the alternative, the program may be considered to be an algorithm. The program may be in the form of macros. Further, the program may be changeable, and the controller  30 ,  130  is thus programmable. 
     Also, it is to be appreciated that the physical appearance of the components of the system (e.g.,  10  or  110 ) may vary. As some examples of the components, attention is directed to  FIGS. 4-6 .  FIG. 4  is a perspective view of the pump unit  112  and the controller  130  for the system  110  shown in  FIG. 2 .  FIG. 5  is an exploded perspective view of some of the components of the pump unit  112 .  FIG. 6  is a perspective view of the controller  130  and/or user interface  131 . 
     It should be evident that this disclosure is by way of example and that various changes may be made by adding, modifying or eliminating details without departing from the scope of the teaching contained in this disclosure. As such it is to be appreciated that the person of ordinary skill in the art will perceive changes, modifications, and improvements to the example disclosed herein. Such changes, modifications, and improvements are intended to be within the scope of the present invention.