Monday, April 11, 2016

Low cost continuous pricision liquid level measurement using arduino

The purpose of this turorial is to demonstrate an innovative approach for low cost continuous liquid level monitoring based on MPX5010DP differential pressure sensor. Most of the traditional measuring systems were designed and implemented by complicated hardware circuitry. It made the product expensive, with low functionality and with limited precision. With virtual measurement technology, more of the instrument can be substituted by software. Using this approach the cheaper and more versatile measurement system can be developed. The method for obtaining liquid level with one differential pressure sensors MPX5010DP is suggested and considered. Some basic considerations about the modern integrated pressure sensors and some aspects concerning their capability for liquid level measurement are done. Finally, a prototype of a liquid level monitoring system based on integrated differential pressure sensors, arduino board and LabVIEW environment is developed for measuring liquid level accurately at distances up to 10 metres. In order to illustrate flexibility of the designed system the front panel of the developed virtual instrument is presented. Measurements carried out in laboratory show that the accuracy of some millimetres could be achieved.

Hydrostatic pressure and level sensing theory:
There are three types of pressure measurement. Absolute pressure does include atmospheric
pressure, and is measured relative to vacuum. Differential pressure is the difference between two pressures. Gage pressure is a form of differential pressure measurement in which atmospheric pressure is used as the reference. A pressure transmitter can be used to determine the liquid level in a tank, well, river or other body of liquid. If a pipe is placed vertically, with one end dipped into a liquid and the upper end of the pipe is closed off and some air volume is trapped.

Components Required:
1. Arduino Uno or any internal ADC microcontroller
2. MPX5010DP Pressure sensor
3. LCD Display 16x2
4. Water purifier pipe 1 mtr

Step 1: Circuit Connections

Pin Diagram of MPX5010DP:


Setup Diagram for Level Measurement:
Arduino Level measurement


Step 2: Programming (Arduino Code for Level Measurement)


/*=================================================
Blog.circuits4you.com - 2016
Pricision Liquid Level measurement using arduino
=================================================*/
#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);
int Level;

void setup()
{
  lcd.begin(16,1);
}

void loop() 
{
  Level = analogRead(A0)-45;  //Sensor is having some offset so do some calibration here
  
  lcd.setCursor(0 , 0);
  lcd.print("Liquid Level:");
  lcd.print(Level);
  lcd.print(" Ltr");
  delay(1000);
}

Step 3:Test your liquid level measurement in water
1. Put the pipe in water as you dip it in water you will see the level of water.
2. The principle of operation is when liquid level rises the trapped air in pipe generates pressure on sensor that is proportional to the liquid level.
3. Take care of proper sealing at the joint of sensor and pipe.
4. You can use water purifier pipe.

For more interesting projects visit Project section

No comments:

Post a Comment