Automated Water System at House Using Arduino Uno and C# Desktop Application to Reduce Water Wastage and Energy Loss

This post is going to summary one of my conference papers titled Smart Water System at House Using Arduino Uno and C# Desktop Application to Reduce Water Wastage and Energy Loss.

Figure 1: Proposed Model Diagram

History Behind the Paper

I always try to solve new problems with hot or trending technologies. In case of this application, I did the same. My aim was to make something which would be very relevant to the issue of my country (Bangladesh). So, I chose the Water System to reduce Water Wastage and Energy Loss.

Problem Statement

Model at a Glance

  1. The tank is automatically filled by Arduino Uno using the 1st motor (MOTOR 1) based on the certain water levels (Upper and Lower Level) in the tank
  2. Desktop application controls the water distribution to the users through the 2nd motor (MOTOR 2)


Water level detection and controlling Motor 1

Fig. 2

So, there must be four wires in total for level detection. Two wires in the top level and another two wires in the bottom level (Figure 2).

Fig. 3. First Phase- Tank is getting filled up with water

When the tank is set up for use, it is empty. That’s why both down level and top-level wires are LOW at that moment. Arduino Uno senses the signals from the wires and turns on
the 1st motor (MOTOR 1) to pull up the water from the ground to the tank (Figure 3).

Fig. 4. Water surface between lower and upper level

In this way, tank is going to be filled up with water by Motor 1 until the water touches the upper level. When
the water surface is above the down line and below the upper line, down wires and upper wires will provide HIGH and LOW signals respectively (Figure 4).

Fig. 5. Motor 1 is switched off and Alarm goes on

After a while, the tank will be full of water. During this time both upper and lower wires provide the HIGH signal. While Arduino gets these signal, it will turn off the Motor 1 (Figure 5). A buzzer that is connected to the Arduino for providing an alarm to the house owner to indicate that there is sufficient water in the tank, goes on for a few seconds.

B. Desktop Application

Fig. 6. Water distribution to the users by the Application

Desktop Application Interface is shown in Figure 7.

Fig. 7. Desktop Application

There are two buttons. These are for controlling Motor 2. After consumption of water, when the tank becomes empty, upper and lower level wires will signal LOW. At this very moment, if there is no water and 2nd motor is still on, any technical damage or accident can happen. Also, suppose the owner of the house unintentionally starts Motor 2 in this situation. Fortunately, Arduino let not him/her to do. To avoid any accidents, Arduino turns off the Motor 2 immediately and turns on the Motor 1 whenever both pair of wires signals LOW.

There rises a question, if Arduino is responsible for shutting off the Motor 2, then there should not be any OFF button in the application. But consider a situation, while there is enough water in the house and the 2nd motor is still turned on, the user continuously gets water but they need not it at that time. This can make water wastage. So to get rid of this problem, owner can turn off the Motor 2 by using OFF button during this kinds of scenario. Moreover, there is a counter of how many times Motor 2 is turned on a particular day. By this counter, owner can track the water usage.

Fig. 8. Full Architecture of the Proposed System

C. Hardware Diagram

Fig. 9. Hardware Diagram

D. Pseudo Algorithm

The above model is pretty simple, you are welcome to use it in your research or university project or anywhere by providing essential references to my research paper. You can go further by extending additional features to make this system more useful.

If you like this article, make sure to follow my Medium profile and check out some other articles of mine!

Software Engineer | Professional Scrum Master | Research Enthusiast

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store