A simple graphical tool was developed, that finds the optimal combination of pumps and their rotational speeds for all possible working points for a pump battery. The tool was integrated into EPANET as well as EPA SWMM simulation packages. The tool allows us to analyse and optimize operation non-identical parallel pumps with different minimum and maximum frequencies for all possible working points. Pump characteristics and efficiency curves can be given in tabular format or as analytical functions of flow. Degradation of pump efficiency at lower rotational speed is taken into account, as well as motor and variable speed drive efficiencies at partial loads. The optimal solution provided by the tool was compared to measurements in two case studies. Our case studies showed 6.1–8.5% reduction in energy usage using the optimal parallel pumping control strategy compared to the currently used strategy, where all running pumps have the same frequency.

## INTRODUCTION

Pumping presents up to 80% of the energy demand of water supply systems (Brandt *et al.* 2011). Good design can save 30% of this energy demand. It's not enough, however, to consider just the pump's efficiency, but the pumping system must be considered as a whole. The optimal design should also account for the specifics of the system, such as variable flow and head. (Kaya *et al.* 2008).

Tools for optimizing the pump station design and operation have been lacking, especially when differently sized pumps are to be used. While recently some work in this field has been done: the research by Costa Bortoni *et al.* (2008), Yang & Borsting (2010), Wu *et al.* (2015) and Koor *et al.* (2014). The methods for optimization were genetic algorithm, non-linear programming, mixed integer non-linear programming and dynamic programming, respectively. The earlier research has focused on identical pumps or characteristic curves which can be presented in second order polynomial formulation, and only a little attention is paid to degradation of pump hydraulic efficiency at lower rotational speed, or motor and variable-speed drive (VSD) efficiencies at reduced loads.

In this research paper, a tool was developed to solve the aforementioned limitations. The tool was applied in two case studies showing its feasibility for both identical and non-identical pumps. The efficiency model and the tool were implemented also in EPANET (Rossman 2000) and EPA SWMM (Rossman 2010).

## METHODS

### Background

The pump battery is described as a set of pumps. Each pump is given a characteristic curve, an efficiency curve, minimum and maximum allowed frequency, nominal motor power *P*_{NOM}, and either IE efficiency class and number of poles, for standard motor efficiency values based on IEC60034-30 (2008), motor efficiency values at both 100% and 75% load, *η _{M,}*

_{100}and

*η*

_{M,}_{75}, respectively, or tabular motor efficiency curve as a function of load.

*Q*,

*H*) pairs, which is then linearly interpolated, or in analytical power curve format as in EPANET (Rossman 2000) where is the relative rotational speed, and

*σ*and

*τ*are flow exponent and flow coefficient, obtained by curve fitting. A separate pump specific parameter

*Q*

_{max}determining the maximum flow at the nominal speed can be specified.

*Q*

_{BEP},

*η*

_{BEP}) the efficiency curve is where and for two points (

*Q*

_{BEP},

*η*

_{BEP}) and (

*Q*,

_{2}*η*),

_{2}*Q*>

_{2}*Q*

_{BEP}the curve is where

*a*and

*b*are solved as described in Equation (5) and Pump hydraulic efficiency at different rotational speed (Sârbu & Borza 1998) While there are more general, friction factor (Strub

*et al.*1987) or Reynolds number (Wiesner 1979) based methods, Equation (8) is accurate for medium sized pumps and reasonable variation of rotational speed (Simpson & Marchi 2013).

*η*

_{M}_{,100}is the motor efficiency at rated load.

*η*

_{M,}_{100}and

*η*

_{M,}_{75}): Wallbom-Carlson (1998) proposes usage of an idealized VSD efficiency factor that would include losses from the VSD itself and losses generated in the motor by the VSD. However, experiments presented in Burt

*et al.*(2007), and Brandt

*et al.*(2011) support that the motor's efficiency does not change much if a VSD is used. This work assumes that modern VSDs can mostly compensate generated losses in motors. The VSD efficiency is taken from a lookup table based on load calculated as in Equation (11), rotational speed and VSD's nominal power as per IEC60034-31 (2009).

Table 1 shows an example, how load and different efficiency components change; when the pump's rotational speed is reduced in a zero static head system. The motor presented in the table is a 55 kW motor, with 4/4 load efficiency of 85.0% and 3/4 efficiency of 85.5%. The VSD is also 55 kW. The pump's BEP is 80% at nominal rotational speed at 50 Hz. While the pump's BEP decreases from 80.0 to 78.6% when the rotational speed is reduced from 50 to 25 Hz, motor's efficiency reduces from 85.0 to 65.6% and VSD efficiency from 97.9 to 95.7%. This results in a total efficiency of 66.6% at 50 Hz and only 49.3% at 25 Hz.

Hz . | Load (%) . | Efficiency . | |||
---|---|---|---|---|---|

Motor (%) . | VSD (%) . | Pump (%) . | Total (%) . | ||

50.0 | 100.0 | 85.0 | 97.9 | 80.0 | 66.6 |

45.4 | 75.0 | 85.5 | 97.9 | 79.8 | 66.8 |

39.7 | 50.0 | 84.5 | 97.3 | 79.5 | 65.4 |

31.5 | 25.0 | 77.9 | 96.5 | 79.1 | 59.4 |

25.0 | 12.5 | 65.6 | 95.7 | 78.6 | 49.3 |

18.4 | 5.0 | 43.8 | 95.0 | 77.9 | 32.4 |

14.6 | 2.5 | 28.1 | 94.7 | 77.4 | 20.6 |

10.8 | 1.0 | 13.5 | 94.3 | 76.7 | 9.8 |

Hz . | Load (%) . | Efficiency . | |||
---|---|---|---|---|---|

Motor (%) . | VSD (%) . | Pump (%) . | Total (%) . | ||

50.0 | 100.0 | 85.0 | 97.9 | 80.0 | 66.6 |

45.4 | 75.0 | 85.5 | 97.9 | 79.8 | 66.8 |

39.7 | 50.0 | 84.5 | 97.3 | 79.5 | 65.4 |

31.5 | 25.0 | 77.9 | 96.5 | 79.1 | 59.4 |

25.0 | 12.5 | 65.6 | 95.7 | 78.6 | 49.3 |

18.4 | 5.0 | 43.8 | 95.0 | 77.9 | 32.4 |

14.6 | 2.5 | 28.1 | 94.7 | 77.4 | 20.6 |

10.8 | 1.0 | 13.5 | 94.3 | 76.7 | 9.8 |

### Algorithm development

The optimization is done for every working point the pump battery can produce, using user specified resolution *Q*_{step} × *H*_{step}. The step size depends on the wanted accuracy, and it affects the computational time and amount of memory required.

The algorithm and user interface were developed using Java programming language 1.8 and Swing toolkit, JFreeChart 1.0.19 charting library and Apache POI 3.10.1 library for Excel file access. The programming language was chosen for rapid development cycle, good industry acceptance and penetration, and good multi-thread programming features. The calculation is parallel and utilizes all available threads at the computer.

First each pump's working regime is optimized. Minimum and maximum allowed head, and maximum allowed flow are calculated based on the pump characteristic curve and the allowed frequency range. The code loops over allowed frequencies using a step size of 0.01 Hz. Each resulting pump frequency combination is pushed to a queue, from which one of the processor threads picks it up and calculates all possible flow and head combinations for the given frequency. If multiple frequencies result in overlapping working points in the *Q*_{step} × *H*_{step} resolution, the frequency that produces the highest total efficiency is chosen for that particular working point.

**F**, contains the optimal frequency and the other,

**H**, contains the total pump train efficiencies for all working points. Array elements that present invalid working points are set to 0. Next, all the possible non-identical pump combinations are considered. The combinations are presented as a binary string,

*S*, where 1 signifies the pump is on and 0 the pump is off. Minimum and maximum head is calculated for each combination so that each pump running in the combination can work within the limits: where

*n*is the number of pumps running in the combination.

For each combination the algorithm iterates over the allowed heads in the range [*H*_{min}, *H*_{max}] using the head step size. Head *H _{i}* and combination string

*S,*are added to a queue, where one of the processor threads picks it up for calculation.

A processor thread calculates all possible combinations of flows for the pumps running in *S* that result in a head of *H _{i}*. Each pump's total efficiency is looked up from the pump's working regime array

**H**. The total efficiency for the total flow

*Q*is calculated. If it's less than the previous best value for the same working point (

_{i}*Q*), the combination and efficiency are stored in the result arrays

_{i}, H_{i}**C**and

**R**.

*Q*

_{step}and

*H*

_{step}. Results array

**C**contains the numerical presentation of the optimal combination binary string and

**R**contains the optimal total pump train efficiencies: Two naive algorithms were implemented too, to facilitate easier comparison of various control strategies. Naive 1 algorithm drives all running pumps with equal frequency, and naive 2 algorithm adjusts only the lastly added pump's frequency while the other pumps run at their respective maximum frequencies. The naive algorithms store the results the same way as the optimizator, so the algorithms can be used interchangeably.

The program contains a graphical user interface, for inputting the pump battery information, and for presenting the results graphically, shown in Figure 1. Colour scheme is selected by the user: specific energy, total efficiency, number of pumps running, or pump combination number (i.e. decimal representation of the combination binary string). All the other parameters are shown in a tool-tip, and in a separate panel, if the user clicks on the chart.

The user can optionally import a set of working points and their relative probabilities to the program. Working points can be imported from an Excel file, comma or tab separated files, or from EPANET or EPA SWMM results. If the file contains no probability information, the points are considered to be equally probable. The program then shows the working points on the chart, and calculates total annual energy consumption for the set of points.

The result array and the working points including their total efficiencies, if available, can be saved to an Excel file for further processing and analysis. The saved file can be reopened in the program saving the need to recompute the results.

The efficiency model was integrated into EPANET (Rossmann 2000) and EPA SWMM (Rossmann 2010) similarly to Simpson & Marchi (2013) to enable better energy analysis and pump battery control strategy optimization in hydraulic models. A new pump battery element was developed for both simulators, which uses the tool to calculate pump and frequency combinations and efficiencies.

## RESULTS

The tool was used for evaluating the current performance and optimizing the control strategy of network pumping from the freshwater tank of two different ground water sources of two different, major Finnish water utilities. The first case has three identical pumps and the second case has four pumps of two different types. The pump characteristic curves for the new pumps were used in both cases.

In both cases, the pump battery was modelled in the pump battery analysis tool, and the optimal combinations for all possible working points were calculated. The averaged flow and head combinations calculated from Supervisory Control and Data Acquisition (SCADA) were imported into the tool as working points, and later exported back to Excel with the optimal efficiency and power values. The computed optimal efficiency and power values were compared with the values collected from the VSDs by the SCADA.

The SCADA systems collect VSD power and frequency, and pump flow and head. Data from the year 2013 were processed and the hourly averages were used in the first case and five minute averages in the second case.

The case optimizations were performed on an Intel Core i7-4800MQ @ 2.70 GHz laptop, with 32 Gb of RAM, Windows 7 operating system and Java runtime version 1.8.0_31. Calculation times are reported as average for five runs.

### Case study 1 – identical pumps

The pump battery has three identical pumps of which at most two can run in parallel. About 1.5 million m³ is pumped from the source into the network annually. The median flow is about 200 m³/h, and the median total head is about 62 m of water.

The pumps are Pleuger 50 kW QN83-7a submersible pumps with Pleuger 55 kW M8-480-2 motors. Each pump has its own 55 kW VSD. The pumps have a BEP of 80%, and the motors' 4/4 load efficiency is 85.0% and 3/4 load efficiency is 85.5%.

The optimal annual energy consumption with the current pump configuration is 421,227 kWh/year, which is 8.5% lower compared to the measured energy consumption 460,302 kWh/year. Figure 2 shows how the optimized total efficiency compares to the measured efficiencies as a function of flow. Optimization took 2.7 s to complete.

The current control strategy seems to use always two pumps in parallel regardless of the flow and the head. Even the naive 1 algorithm, which resembles the currently used control algorithm very closely, results in 7.8% savings compared to the current strategy, mainly because it uses only one pump when the requested flow is small.

### Case study 2 – non-identical pumps

The pump battery has two pairs of pumps: the older pumps, number 3 and 4, are Grundfos’ 80 kW NK100-200/219 with 110 kW ABB HXR 280MC 2 B3W motors with full load efficiency of 95.1% and 3/4 load efficiency of 95.0%, and the new pumps, number 1 and 2, are Flygt's 80 kW L150-400U3SN-7504 pumps with 75 kW FFD SEE 280 S4 motors with full load efficiency of 95.2% and 3/4 load efficiency of 94.9%. The Grundfos pumps have BEP of 84.3% and the Flygt pumps – 86.4%. Each pump has its own VSD.

About 3.8 million m^{3} is pumped from the source annually. The median flow is about 425 m^{3}/h, and the median head about 35.5 m of water.

The optimal annual energy consumption with the current pump configuration is 515,561 kWh/year which is 6.1% lower compared to the measured energy consumption of 548,486 kWh/year. Figure 3 shows how the optimized total efficiency compares to the measured efficiencies as a function of flow. Optimization took 40 seconds to complete.

From Figure 3 it is apparent, that the current control algorithm results in one pump pumping only with too high flows and two pumps pumping with too low flows. The optimal flow to switch from one to two pumps and vice versa, is about 130 l/s, depending on the exact head required.

## CONCLUSIONS

The developed tool provides interesting insight into pump battery working behaviour, such as the available working regime, specific energy usage and efficiency. The calculated optimal pump combinations and their frequencies for different flow and head regimes provide a good basis for developing more optimal pump control strategies and comparing different sets of pumps for the case at hand.

The developed tool can handle non-identical pumps that can also be described by non-analytical methods. Both features are quite common in practical engineering work, but so far, little research has been done on the optimization of the pump battery with non-identical pumps.

The problem with the tool is that doing an exhaustive search on a large number of pumps, results in exponential growth in computational time as the number of concurrently running pumps increases. The algorithm implementation optimizes calculation for identical pumps and combinations, and up to four or five concurrently running non-identical pumps can easily be calculated in a short time on modern workstation computers, but a larger number of concurrent pumps can quickly result in a long calculation time. However, the search method is guaranteed to find a global optimum, thus the presented method can be used as a reference benchmark for computationally more efficient optimization methods.

The case studies show that the tool gives efficiency that is comparable to the values measured from VSDs, but optimizing the pump battery control can still lead to savings in the range of 5–10%. The savings depend largely on the current control strategy, pump specifics and working points. In some cases it may be beneficial to install differently sized pumps as this leaves more room for optimization.

However, implementing the optimal strategy into the control system can be troublesome. One possibility is to use the optimization results as a lookup table, but as the pumps degrade there must be a compensation for the lost capacity. An easier way is to use the tool to calculate the optimal pump combinations for different regions in the working regime, and implement an algorithm that chooses the combination based on predefined flow and head threshold.

## ACKNOWLEDGEMENT

This work was supported by the institutional research funding IUT (IUT19-17) of the Estonian Ministry of Education and Research.