Post Top Ad

Thursday, November 2, 2023

on video Automatic Water Filling Machine using Water Flow Sensor &Arduino/DIY Automatic Water Liquid Machine


 Hi this is sarath From Einfotainment . This video is made as per viewers Request. this video explain how to simulate the Automnatic water filling machine in proteus software, watch fully the video tutorial And i hope you got idea About Automatic Water filling process using Arduino And Water flow Sensor

Creator of this article:


Gilbert - BINUS Student majoring in Computer Engineering


Vincent Cunardy - BINUS Student majoring in Computer Engineering


As we know water is one of the essential elements that a living being needs to stay healthy. Human indeed needs to consume a minimum of 4L water a day to stay dehydrated and healthy. In this pandemic, we are asked to do social distancing that means we need to make an effort to minimize direct physical interaction. Therefore in order to be able to consume water even doing social-distancing. The water dispenser project is being made.


This is a project which was designed to apply an Internet of thing (IoT) system with Arduino and ESP (as Wifi) as the base, although there are many projects based on Arduino and ESP. In order to apply the IoT system this project should be a more useful project that will be able to help and maximize the productivity of the user.

In this project, we prepare the supplies listed above for the Hardware preparation In order to build an IoT water dispenser system. For the software system as we use Arduino IDE which is a cross-platform application that is written in C and C++ programming language. The software provides the feature to write and upload the code to the microcontroller and easier to provide the library that we will be using.


You also need to prepare a Blynk Account to help you follow the next step of this project. The project using Blynk to understand the application of IoT Hardware. This software is easy to access and it is an open-source application that will be helpful in building the software application for the hardware.

After installing the app, create your account and log in to start using the app.


Create a new project, and name your project, choose the device as in our case we choose (NodeMCU/ESp8266) with the connection type is WiFi, then there will be an email sent by Blynk it contains the authorization token.


Using the widget box choose the widget feature that will be used. Position the widget item in the place exactly as the UI Frame above.


The widget uses is Gauge, Vertical V, notification, email, and 5 buttons.

In this step consist figure of the Block diagram and Flow chart of the system in this project.

In the Block diagram, the PSU breadboard that connects to ESP8266 and Arduino Uno is the same voltage supplier. The PSU Breadboard is an Input voltage to the controller.


In the ESP8266 Block diagram both of the Ultrasonic sensor is defined as an Input. Then the input data is processed in the controller(ESP8266). The output will be the 5V relay that is connected to Water Pump.


In the Arduino Uno Block diagram, MRFC522 RFID is the system input. The input then is processed by the controller(Arduino Uno). Then the controller will send the output to LCD to display either the input is successful or failed.

In the Arduino IDE


Ctrl +Comma or Go to File => Preferences to Paste (http://arduino.esp8266.com/stable/package_esp8266com_index.json) in Additional Board Manager URLs


Go to Tools => Board => Board Manager => Search "ESP8266" => Install "esp8266" by ESP8266 Community.


Ctrl + Shift + I or Go to Sketch => Include Library => Manage Libraries


Search "Blynk" => Install "Blynk" by Volodymyr Shymanskyy


Search "Liquid Crystal I2C" => Install "Liquid Crystal I2C" by Frank de Brabander.


Search "MRFC522" => Install "MRFC522" by Github Community.

Firstly, wire the component as the schematic diagram as above. The ESP will work as the connection to the WiFi Module. In this system, the data will be sent to the application is the water level of the dispenser.


In the relay, we connected the motor to NO of the relay so that when the relay is activated the motor will start working and pumping the water. For the pipe use a better pipe that is usable for drinking and connecting it to the pump so the system can pump out the water.


After connecting the pin of the component to the circuit. The next step will be including the library in the Arduino IDE. Include BLYNK and ESP8266WiFi library to Arduino IDE software. Then use the code below to test the ESP WIFI is working fine as needed.


In the code below is the setup configuration to use the hardware and Blynk software. In order to use Blynk, we use Blynk.begin() in the setup function and give the essential parameter such as Blynk authentication, SSID and pass to access the Blynk project.

In the code below is the code for the Ultrasonic sensor to measure the distance of the object detected to the sensor. The ultrasonic sensor will send a vibration to echo and catch back it the trigger pin. Thereby applying the method of distance = (speed * time)/2 we will be able to get the actual distance of the object to the sensor.


In this code below is the main program the water dispenser. The main program will update the system and keep track of the water level. The system will update to the Blynk software the water level by using the ultrasonic sensor. Blynk.virtualWrite will update the data to Blynk software of the water level. When the water level is low by using Blynk.notify() and Blynk.email() the software will send and notify email to the user to refill the water tank.


Blynk.run() is essential in the main function because it is used to connect the microcontroller to the Blynk application

Next, we set up another microcontroller that will be connected to RFID and LCD 16x2. By using the schematic above for the wiring configuration.


Pin 13 to 9 will be used for the RFID. FOR the LCD we will use I2C to connect to the microcontroller. LCD SDA and SCL pin is connected to the Analog pin in the Arduino SDA->A4 and SCL->A5. Because the voltage uses for RFID and LCD are different. we connected 3.3V to RFID and 5V to LCD.


In the code includes library SPI and Wire for the communication protocol used by RFID, MRFC522 library is also included because the component that we use as RFID reader is MRFC522, and then we include LiquidCrystal_I2C library because the LCD we use are solder with I2C module, By using I2C LCD module we will reduce the usage of the pin that is being used for the Arduino. In this project, we mainly use the I2C communication protocol to reduce the cost of wiring the components.

in this code below is the main program for the Arduino microcontroller. The RFID will scan the tag/card that has been authorized and shown the user of the card by LCD.


PICC_IsNewCardPresent() this function is used to check either there is a tag/card that is currently in the range of the RFID sensor.


PICC_ReadCardSerial() this function is used to check either the card data could be read or not.


The card/tag that is being read by the RFID sensor will use the data UID to check either it is Authorize or not. If the card or tag is not authorized it will return an error message through LCD.

To set up the whole system the voltage that will be using is an AC to DC voltage. The system of the microcontroller will be connected to 12V Adapter which is connected with a jack DC. Then connecting the V+ and V- from the adapter to the PSU breadboard, then from the PSU breadboard to Vin of ESP and Arduino Microcontroller to supply the system with a voltage to run the system. This PSU breadboard will convert the 12V voltage to either 3.3V or 5V according to the voltage needed by the component.


Next is placing the ultrasonic Sensor. One at the top of the water tank and the other placed under the pipe so it could detect if there are any cup detected in the range.


Then place the RFID in the front so it could use to scan the card/tag that is currently authorized. Also, make sure to put the LCD so it is visible to know either the card that is used to scan is either register or not.


 Hi this is sarath From Einfotainment . This video is made as per viewers Request. this video explain how to simulate the Automnatic water filling machine in proteus software, watch fully the video tutorial And i hope you got idea About Automatic Water filling process using Arduino And Water flow Sensor

Creator of this article:


Gilbert - BINUS Student majoring in Computer Engineering


Vincent Cunardy - BINUS Student majoring in Computer Engineering


As we know water is one of the essential elements that a living being needs to stay healthy. Human indeed needs to consume a minimum of 4L water a day to stay dehydrated and healthy. In this pandemic, we are asked to do social distancing that means we need to make an effort to minimize direct physical interaction. Therefore in order to be able to consume water even doing social-distancing. The water dispenser project is being made.


This is a project which was designed to apply an Internet of thing (IoT) system with Arduino and ESP (as Wifi) as the base, although there are many projects based on Arduino and ESP. In order to apply the IoT system this project should be a more useful project that will be able to help and maximize the productivity of the user.

In this project, we prepare the supplies listed above for the Hardware preparation In order to build an IoT water dispenser system. For the software system as we use Arduino IDE which is a cross-platform application that is written in C and C++ programming language. The software provides the feature to write and upload the code to the microcontroller and easier to provide the library that we will be using.


You also need to prepare a Blynk Account to help you follow the next step of this project. The project using Blynk to understand the application of IoT Hardware. This software is easy to access and it is an open-source application that will be helpful in building the software application for the hardware.

After installing the app, create your account and log in to start using the app.


Create a new project, and name your project, choose the device as in our case we choose (NodeMCU/ESp8266) with the connection type is WiFi, then there will be an email sent by Blynk it contains the authorization token.


Using the widget box choose the widget feature that will be used. Position the widget item in the place exactly as the UI Frame above.


The widget uses is Gauge, Vertical V, notification, email, and 5 buttons.

In this step consist figure of the Block diagram and Flow chart of the system in this project.

In the Block diagram, the PSU breadboard that connects to ESP8266 and Arduino Uno is the same voltage supplier. The PSU Breadboard is an Input voltage to the controller.


In the ESP8266 Block diagram both of the Ultrasonic sensor is defined as an Input. Then the input data is processed in the controller(ESP8266). The output will be the 5V relay that is connected to Water Pump.


In the Arduino Uno Block diagram, MRFC522 RFID is the system input. The input then is processed by the controller(Arduino Uno). Then the controller will send the output to LCD to display either the input is successful or failed.

In the Arduino IDE


Ctrl +Comma or Go to File => Preferences to Paste (http://arduino.esp8266.com/stable/package_esp8266com_index.json) in Additional Board Manager URLs


Go to Tools => Board => Board Manager => Search "ESP8266" => Install "esp8266" by ESP8266 Community.


Ctrl + Shift + I or Go to Sketch => Include Library => Manage Libraries


Search "Blynk" => Install "Blynk" by Volodymyr Shymanskyy


Search "Liquid Crystal I2C" => Install "Liquid Crystal I2C" by Frank de Brabander.


Search "MRFC522" => Install "MRFC522" by Github Community.

Firstly, wire the component as the schematic diagram as above. The ESP will work as the connection to the WiFi Module. In this system, the data will be sent to the application is the water level of the dispenser.


In the relay, we connected the motor to NO of the relay so that when the relay is activated the motor will start working and pumping the water. For the pipe use a better pipe that is usable for drinking and connecting it to the pump so the system can pump out the water.


After connecting the pin of the component to the circuit. The next step will be including the library in the Arduino IDE. Include BLYNK and ESP8266WiFi library to Arduino IDE software. Then use the code below to test the ESP WIFI is working fine as needed.


In the code below is the setup configuration to use the hardware and Blynk software. In order to use Blynk, we use Blynk.begin() in the setup function and give the essential parameter such as Blynk authentication, SSID and pass to access the Blynk project.

In the code below is the code for the Ultrasonic sensor to measure the distance of the object detected to the sensor. The ultrasonic sensor will send a vibration to echo and catch back it the trigger pin. Thereby applying the method of distance = (speed * time)/2 we will be able to get the actual distance of the object to the sensor.


In this code below is the main program the water dispenser. The main program will update the system and keep track of the water level. The system will update to the Blynk software the water level by using the ultrasonic sensor. Blynk.virtualWrite will update the data to Blynk software of the water level. When the water level is low by using Blynk.notify() and Blynk.email() the software will send and notify email to the user to refill the water tank.


Blynk.run() is essential in the main function because it is used to connect the microcontroller to the Blynk application

Next, we set up another microcontroller that will be connected to RFID and LCD 16x2. By using the schematic above for the wiring configuration.


Pin 13 to 9 will be used for the RFID. FOR the LCD we will use I2C to connect to the microcontroller. LCD SDA and SCL pin is connected to the Analog pin in the Arduino SDA->A4 and SCL->A5. Because the voltage uses for RFID and LCD are different. we connected 3.3V to RFID and 5V to LCD.


In the code includes library SPI and Wire for the communication protocol used by RFID, MRFC522 library is also included because the component that we use as RFID reader is MRFC522, and then we include LiquidCrystal_I2C library because the LCD we use are solder with I2C module, By using I2C LCD module we will reduce the usage of the pin that is being used for the Arduino. In this project, we mainly use the I2C communication protocol to reduce the cost of wiring the components.

in this code below is the main program for the Arduino microcontroller. The RFID will scan the tag/card that has been authorized and shown the user of the card by LCD.


PICC_IsNewCardPresent() this function is used to check either there is a tag/card that is currently in the range of the RFID sensor.


PICC_ReadCardSerial() this function is used to check either the card data could be read or not.


The card/tag that is being read by the RFID sensor will use the data UID to check either it is Authorize or not. If the card or tag is not authorized it will return an error message through LCD.

To set up the whole system the voltage that will be using is an AC to DC voltage. The system of the microcontroller will be connected to 12V Adapter which is connected with a jack DC. Then connecting the V+ and V- from the adapter to the PSU breadboard, then from the PSU breadboard to Vin of ESP and Arduino Microcontroller to supply the system with a voltage to run the system. This PSU breadboard will convert the 12V voltage to either 3.3V or 5V according to the voltage needed by the component.


Next is placing the ultrasonic Sensor. One at the top of the water tank and the other placed under the pipe so it could detect if there are any cup detected in the range.


Then place the RFID in the front so it could use to scan the card/tag that is currently authorized. Also, make sure to put the LCD so it is visible to know either the card that is used to scan is either register or not.

No comments:

Post a Comment

Post Top Ad

Pages