Tuesday, October 06, 2009

I had a little time to experiment with a new project. I'm working on using a Freescale pressure sensor to measure the specific gravity of a liquid. This is a piece of a larger project that I'm working on, but I need to research this before I work on the rest of it. More on that later.

Pressure in a liquid follows this formula:
p = ghd
where p = pressure, h = height of liquid above sensor, g = acceleration of gravity, d = density of liquid

So using a differential pressure sensor (MPVX5010DP) from Freescale, I can get all of the values in the formula and solve for d. The physical test setup is show in the picture below. Basically I have lengths of plastic tubing of two different lengths attached to the sensor's pressure ports (make sure to get the right tube to the right pressure port; pressure port 1 always have to have a higher pressure on it than pressure port 2; check the datasheet). The tubes are then tied to a steel ruler with the tube ends a fixed distance apart (in this case 4" apart).

It seems like the pressure reading does indeed change with the density of the liquid the probe is placed in. However the difference in the readings is fairly small. This tells me a couple of things:
1) I should increase the distance between the end of the tubes (essentially increasing "h" from the formula before). This should increase the magnitude of the voltage read from the sensor, thereby amplifying the sensor voltage. Eight inches between the tube ends should be good. 2) Since I'm eventually going to be reading the sensor voltage using a microprocessor's ADC, I can decrease the voltage range of the ADC to increase the resolution of the ADC readings. Based on my final application, I'm going to set the voltage range to 0-1.1 V.

Here is then data I got with several different sugar solutions:

Hydrometer Reading -> Sensor Reading
1.000 -> 707mV
1.036 -> 723mV
1.068 -> 734mV