Flow Rate Measurement Performance

In order to use the sensor we first have to install aquasuite. I quickly found the 2013 version on the AquaComputer website. It’s fast and easy to install and when it opened up you see tabs on the left side to select what you want to see. I first configured AquaSuite to use imperial gallons per minute, because that’s what my King Rotameter uses. The default setting only shows flow to the nearest 0.1GPM, you can change this later though for more accuracy. If we then go to the MPS sensor settings tab we see the following:

There are is a zero flow calibration button – useful if there is residual pressure across the sensor (perhaps because of a different orientation). The calibration file for the tubing size can also be selected as well as the degree of “filtering” the data received. The less filtering the more jumpy or “noisy” the readings are. To sweep flow I varied power and pulse width to a MCP35x2 dual pump. This gave me a wide degree of control of flow rate. I plotted the “raw” uncalibrated data vs flow rate as measured by my King Instruments Rotameter. The rotameter has a worst case accuracy of +/- 0.07GPM across the range:

Here we can see that the raw values cap at about 750. The exact maximum value depends on your zero-flow calibration result. I measured a few different ways because I was confused as to why the filtered results looked so much lower than the “fast” results. Plotting the maximum and minimum of the observed “fast” results showed that the filtering seemed to be nearer the minimum rather than the average result. Given how the filtered result still jumps around sporadically I believe that the filtering controls how long the last minimum observed value is displayed for. This is less good for accuracy but is more useful for a quicker response to a pump failure. If we also plot the range of observed minimum and maximum flow rate data at each pump setting we can see that the range seems to increase as the data value increases:

This implies that the error is a fixed percentage. As the full scale range is about 750 we can draw the conclusion that the noise is about +/-0.03%. This is similar to a medium size rotameter which is pretty good! If we then take our data (in this case the average of the minimum and maximum observed values), we can then come up with our own calibration algorithm to see how good the supplied algorithm is:

Here I used an over the top 5th order polynomial calibration to give a nice smooth curve even though a square root curve might be supposed to fit more accurately. We can then plot this alongside the measured flow and the results given by the supplied calibration file:

The 5th order poly cal shows extremely good results. However the supplied calibration is quite far off and also artificially limits the range of the sensor to 1.5GPM as this is the extent of the calibration file. Note that AquaSuite was rounding the data to 0.1GPM, changing the settings would improve the plot slightly, but wouldn’t account for the large 0.2+GPM offset over most of the range. This is easy to see when we plot the error of each calibration routine vs the measured data:

Here we can see just how good the sensor could be with a good calibration. It also shows how poor the supplied calibration was for this particular sensor.

4 COMMENTS

  1. How would you recommend calibrating this sensor suite (flow, temps) in a system? Any specific tool? Should it be re-calibrated once in a while?

    • I just found out that my multimeter has a type k thermal probe (no idea what that means, though). Is that enough to calibrate the internal thermal sensor of the mps?

      • Hah well thermal probes themselves often need to be calibrated. Since that review was written AquaComputer fixed the bug with the non linearity, so it should be a lot better now. Unless you’re really testing stuff it’s probably good enough to be honest. If it’s not it’s probably easier to buy a 10$ probe and add it in the loop instead.

Comments are closed.