# Automatic Water Level Controller

45,094

46

15

Hi all , are you looking to control your tank water level automatically here's the post for you, how can water level be controlled automatically?

There are many ways by using a float sensor to determine the water level, or using probes to detect peak and low level in the tank.

How to measure water level without using probe or contacting with water?

yeah there is a way just using a Ultrasonic sensor, this is very simple where the level of water is measured using ultrasonic sensor which gives the depth , by determining the tank depth we can set the maximum and minimum level

### Teacher Notes

Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.

## Step 1: Circuit Diagram

This water level controller uses only two components apart from arduino

1. HC-SR04 Ultrasonic sensor

2. relay board

## Step 2: Working Model

Note : give the distance according to your specification, I've used a small bucket where 25 is the minimum level to turn ON the motor and if the water level reaches a distance of 10cm or lesser than that the motor automatically stops.

## Step 3: Arduino Program

/*

HC-SR04 Ping distance sensor:

VCC to arduino 5v

GND to arduino GND

Echo to Arduino pin 9

Trig to Arduino pin 8*/

#define echopin 9 // echo pin

#define trigpin 8 // Trigger pin

int maximumRange = 50;

long duration, distance;

void setup() {

Serial.begin (9600);

pinMode (trigpin, OUTPUT);

pinMode (echopin, INPUT );

pinMode (4, OUTPUT);

pinMode (13,OUTPUT);

}

void loop ()

{

{

digitalWrite(trigpin,LOW);

delayMicroseconds(2);

digitalWrite(trigpin,HIGH);

delayMicroseconds(10);

duration=pulseIn (echopin,HIGH);

distance= duration/58.2;

delay (50);

Serial.println(distance);

}

if (distance >= 25 ){

digitalWrite (4,HIGH);

digitalWrite (13,HIGH);

}

else if (distance <=10) {

digitalWrite (4,LOW);

digitalWrite (13,LOW);

}

}

If you want the same project using labview and arduino check this out here: http://www.labviewarduino.in/

Participated in the
Formlabs Contest

## Recommendations

• ### Internet of Things Class

22,786 Enrolled

## 15 Discussions

I am a beginner .. so can u just tell me how to connect arduino to relay to motor

sir i have confusion which relay i use for arduino 328

Get a relay module of either 5V or 12V based on power supply of arduino.Feed in the power and use the digitalwrite method to set any pin high like pin 13.This pin should be connected with the relay.

And don't use this method.The sensor can't withhold the moisture and humid condition of the tank and will stop working soon.I had tried this and it failed in 2 days because of the sensor.Use magnetic float sensor instead

Hiw much volt is the motor

Hi, before starting the motor, I need to check the water level at the ground level tank also to prevent dry run. In which case, I need to put another ultrasonic sensor for the ground tank. Can you pls include a step to accommodate one more sensor, so when the water level goes down in the overhead tank, the system checks for the water level in the sump before starting the motor? Thanks.

hey, please can u explain more about the setup