IntroductionThis article will demonstrate how you can balance a pump curve against a system curve to calculate liquid velocity with Excel.
First, we'll develop the equations that determine the liquid velocity in a simple pump and pipe system. Then we'll discuss how these equations be solved using Excel's Goal Seek feature. Finally, we'll show Visual Basic code that can be used to automate Goal Seek so that any parameter change will automatically calculate the new liquid velocity.
The spreadsheet can be downloaded here, but read the rest of this article if you'd like to understand the theory.
Pump and Pipe SystemConsider a centrifugal pump receiving liquid from a reservoir and forcing liquid through a pipe to a reservoir.
First consider the pump. Its flowrate-head curve is can be described by a polynomial derived from empirical data, where a, b and c are best-fit coefficients, and Q is the volumetric flowrate
Now consider the pipe. Frictional head loss through the pipe can be described by the Bernoulli equation and written as
We'll call Equation 4 the System Curve. f is the friction factor, given by the Haaland Equation.
where Re is the Reynolds Number.
The Haaland equation is only valid in turbulent flow, i.e. if the Reynolds Number is over 2500.
For our pump and pipe system, the pump head is equal to the head loss in the pipe. Hence
We can now use Excel to find the liquid velocity that satisfies Equation 7 (effectively determining the intersection between the pump curve and the system curve).
The Excel spreadsheet uses this cell coloring convention.
Step 1. First define the parameters and calculate the cross-sectional area of the pipe.
Step 2. Now define the coefficients of the pump curve
Step 3. Set up the calculations required by Goal Seek
Step 4. Go to Data > What-If Analysis > Goal Seek. Make the changes such that we find the liquid velocity that makes difference between pump curve and the system curve equal to zero.
You should now have the correct value of the liquid velocity.
Ensure that the Reynolds number is greater than 2500 so that our assumption of turbulent flow (and hence the use of the Haaland equation) is verified.
Visual Basic Macro to Automate Goal Seek
If you're really keen, you can use Visual Basic to automate Goal Seek.
Private Sub Worksheet_Change(ByVal Target As Range)Dim bSuccess As Boolean
On Error Resume Next
bSuccess = Range("C23").GoalSeek(0, Range("c18"))
On Error GoTo 0
If Not bSuccess Then
MsgBox "Goal Seek Failed"
Whenever any value in the worksheet is changed, the Worksheet_Change() event is initiated . The VB code then asks GoalSeek() to find the liquid velocity ("C18") that makes the difference between the pump and system curve ("C23") equal to zero.