ESP8266 দিয়ে পানির ট্যাংক কন্ট্রোল করুন খুব সহজে

Esp8266 ওয়াইফাই মডিউল ।এটা নিয়ে আমরা বিভিন্ন প্রজেক্ট করতে চাই।কারণ এই esp8266 wifi Module এর মাধ্যমে বিভিন্ন IOT Based প্রজেক্ট করা সম্ভব ।অর্থাৎ ইন্টারনেট কন্ট্রোলের মাধ্যমে বিভিন্ন প্রজেক্ট করা সম্ভব । আপনি যদি esp8266 wifi Module মাধ্যমে কোন প্রজেক্ট করেন সেই প্রজেক্টে কিন্তু আপনি বিশ্বের যে কোন প্রান্ত থেকে ইন্টারনেটের মাধ্যমে কন্ট্রোল করতে পারবেন । আজকে আমি আপনাদের দেখাবো এবং বোঝাবো যে esp8266wifi মডিউল এর সাহায্যে আপনি আপনার বাসার ওয়াটার ট্যাংকের পানি পরিমাপ করতে পারবেন-water tank control ।ওয়াটার ট্যাংকিতে কতটুকু পানি রয়েছে কতটুক খালি রয়েছে এটা আপনি মোবাইল অ্যাপসের মাধ্যমে জানতে পারবেন ।

আর আপনি যদি চান আপনার পাম্প মটর কে এই অ্যাপসের মাধ্যমে অন-অফ করবেন তাও কিন্তু এই প্রোজেক্টের মাধ্যমে করতে পারবেন ।আবার এমনটাও করতে পারবেন যে ট্যাংকিতে একটা নির্দিষ্ট লেভেলে পানি চলে গেলে পাম্প মটর টি অটোমেটিকলি অন হবে ।আবার ট্যাংকিতে পানিপূর্ণ হয়ে গেলে পাম্প মটর টি অটোমেটিক অফ হয়ে যাবে ।এই প্রোজেক্টের কোডিং এবং প্র্যাকটিক্যাল সহকারে আপনাদের দেখাবো এবং বোঝাবো । চলুন জেনে নেই এই প্রজেক্টটি করতে আমার কি কি কম্পোনেন্ট লাগবে বা ডিভাইস লাগবে ।

  1. ESP8266 wifi Module.
  2. 5v Power supply.
  3. Ultrasonic sensor.
  4. Relay Module.
  5. Magnetic contractor.
  6. pump Motor.

মোটামুটি এই কম্পোনেন্টগুলো হলেই হবে ।এখন আপনাদের একটু কানেকশন ডায়াগ্রাম টা দেখায়।

water tank control
water tank control

উপরে আমি কানেকশন ডায়াগ্রাম টা দেখিয়ে দিলাম । এই ডায়াগ্রাম অনুযায়ী কানেকশন করে আপনি অ্যাপসের মাধ্যমে ওয়াটার ট্যাংক এর কতটুকু পানি রয়েছে কতটুকু খালি রয়েছে সব কিছুই দেখতে পারবেন । এটা পরিমাপ করার জন্য এখানে আল্ট্রাসনিক সেন্সর ব্যবহার করা হয়েছে । আল্ট্রাসনিক সেন্সরটি ট্যাংকের উপরে দিয়ে দিতে হবে । আল্ট্রাসনিক সেন্সর মূলত ট্যাংকের পানির অবস্থা পরিমাপ করে Esp8266wifi মডিউলে প্রেরণ করবে । Esp8266wifi মডিউল ইন্টারনেটের সাথে সংযুক্ত থাকবে ।এর ফলে বিশ্বের যে কোন প্রান্ত থেকে আপনি অ্যাপসের মাধ্যমে ওয়াটার ট্যাংক এর অবস্থা বুঝতে পারবেন ।এবং আপনি ঐ অ্যাপস এর মাধ্যমে পাম্প মটর অন অফ করতে পারবেন । পাম্প মোটর চালানোর জন্য এই প্রজেক্ট এর পুরো সার্কিট বা কানেকশন ডায়াগ্রাম আপনাদের দেখিয়ে দিলাম ।

water tank control
water tank control

এখন কোডিং টা ভালোভাবে বুঝতে হবে । কোডিং  বোঝার আগে আল্ট্রাসনিক সেন্সর কিভাবে কাজ করে এটা আপনাকে ভালোভাবে বুঝতে হবে ।

Code:

 

 #define BLYNK_PRINT Serial  
 #include <ESP8266WiFi.h>  
 #include <BlynkSimpleEsp8266.h>  
 #define Relay1  D0  
 #define trigPin D1  
 #define echoPin D2  
 long duration;  
 float distanceCm, distanceInch, distanceft ,Watercft ,Waterlitre,Waterft, ECm,Eft,Wft;//fffddc  
  int wper,WCm;   
 // You should get Auth Token in the Blynk App.  
 char auth[] = "6ebEjufhDN07Hx-yqG9PdAwmGxUYXViI";  
 // Your WiFi credentials.  
 // Set password to "" for open networks.  
 char ssid[] = "FreeFire";  
 char pass[] = "123456789###";  
 BlynkTimer timer;  
 void setup()  
 {  
  // Debug console  
  pinMode(trigPin, OUTPUT);  
  pinMode(D0, OUTPUT);// Sets the trigPin as an Output  
  pinMode(echoPin, INPUT);  // Sets the echoPin as an Inpu  
  Serial.begin(9600);  
  Blynk.begin(auth, ssid, pass);  
  // Setup a function to be called every second  
  timer.setInterval(1000L, sendSensor);  
 }  
 void loop()  
 {  
  Blynk.run();  
  timer.run();  
 }  
 void sendSensor()  
 {  
  digitalWrite(trigPin, LOW);  
 delayMicroseconds(2);  
 digitalWrite(trigPin, HIGH);  
 delayMicroseconds(10);  
 digitalWrite(trigPin, LOW);  
 duration = pulseIn(echoPin, HIGH);  
 distanceCm= duration*0.034/2;  
 distanceInch = duration*0.0133/2;  
 Serial.print("Distance: ");  
  Serial.print(distanceInch);    
  Serial.println("Inch");   
 distanceft = distanceInch/12;  
 ECm = (distanceCm-12);  
 WCm = (82-ECm);  
 Eft = (distanceft-0.39);  
 Wft = (2.69-Eft);  
 Watercft = Wft *3.66;   
 Waterlitre = Watercft*28.32;  
 Serial.print("water: ");  
  Serial.print(Waterlitre);    
  Serial.println("litre");   
 wper=(WCm*1.21);  
 Blynk.virtualWrite(V1,Waterlitre);  
 Blynk.virtualWrite(V2,WCm);  
 Blynk.virtualWrite(V3,ECm);  
 Blynk.virtualWrite(V4,wper);  
  delay(400);              
 }  

 

উপরে আমি কোডিং টা দেখিয়ে দিলাম ।

digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distanceCm= duration*0.034/2;
distanceInch = duration*0.0133/2;
Serial.print(“Distance: “);
Serial.print(distanceInch);
Serial.println(“Inch”);
distanceft = distanceInch/12;

কোডিংয়ের এই অংশটুকু দেখেন । Ultrasonic Sensor কে প্রজেক্টে ব্যবহার করার জন্য এই কোডিংটুকু লিখতে হবে ।এই কোডিংটুকু ভালভাবে বোঝার জন্য এখানে ক্লিক করুন

এই প্রজেক্টটি করার জন্য আল্ট্রাসনিক সেন্সর কে ওয়াটার ট্যাংক এর উপর স্থাপন করতে হবে । আপনার বাসা বাড়িতে যে কয় লিটার ওয়াটার ট্যাংক রয়েছে সেই অনুযায়ী ক্যালকুলেশন করে আপনাকে কোডিং করতে হবে । নিচের ছবিটি লক্ষ্য করুন ।

water tank control
water tank control

উপরের লক্ষ্য করুন আমি একটা চার্ট দেখিয়েছি ।এখানে কত লিটার ওয়াটার ট্যাংকিতে হাইট কত ডায়ামিটার কত সেটা লিস্ট আকারে দেওয়া আছে । আমি 300 লিটার পানির ট্যাংকি নিয়ে ক্যালকুলেশন করে কোডিং করব । আপনারা নিয়ম অনুযায়ী যে কোন পানির ট্যাংকির জন্য কোডিং করতে পারবেন ।যেহেতু আমি 300 লিটার পানির ট্যাংকি নিয়ে কোডিং করব । চলুন এর ক্যালকুলেশন টা একটু দেখে নি ।

water tank control
water tank control

এভাবে পানির ট্যাংকির হাইট এবং ডায়ামিটার দিয়ে এর এর পানি ধারণ ক্ষমতা পরিমাপ করা হয় ।

ECm = (distanceCm-12);
WCm = (82-ECm);
Eft = (distanceft-0.39);
Wft = (2.69-Eft);
Watercft = Wft *3.66;
Waterlitre = Watercft*28.32;

wper=(WCm*1.21);

এই প্রজেক্ট এর এই কোডিংটুকু খুবই গুরুত্বপূর্ণ । এই কোডিংটুকু যদি আপনি ভালো করে বোঝেন তাহলে যেকোনো পানির ট্যাংকি নিয়ে আপনি কোডিং করতে পারবেন । এখানে ক্যালকুলেশন টা বোঝার জন্য নিচের ছবিটা লক্ষ্য করুন ।

water tank control
water tank control

 

2 thoughts on “ESP8266 দিয়ে পানির ট্যাংক কন্ট্রোল করুন খুব সহজে”

  1. do you have any demo vdo for this project ?
    it would be great if you also share the price for the components individually for the project

    Reply

Leave a Comment