Arduino based স্বয়ংক্রিয়ভাবে সেচ (Arduino based automatic irrigation system bangla)

 আমরা সবাই আমাদের বাড়িতে একটু সবুজ পছন্দ করি, তাই না? গাছের সত্যিই কম রক্ষণাবেক্ষণের প্রয়োজন হয় এবং তত্ত্বাবধান ছাড়াই কয়েক দিন রেখে দেওয়া যেতে পারে কিন্তু আমাদের দীর্ঘ ভ্রমণ এক সপ্তাহ বা ২ সপ্তাহের বেশি সময় ধরে মাটিতে আর্দ্রতার অভাবের কারণে উদ্ভিদের স্বাস্থ্যের জন্য ক্ষতিকর হতে পারে। এই ধরনের পরিস্থিতিতে, সঠিক জলের অভাবে গাছটি শুকিয়ে যেতে পারে বা মারা যেতে পারে। এই সমস্যা সমাধানের জন্য, এই Project এ , আমরা একটি Arduino Uno দিয়ে একটি Automatic Irrigation System তৈরি করছি যা আপনার গাছপালাকে স্বয়ংক্রিয়ভাবে সেচ দেবে এবং আপনি কয়েক সপ্তাহ বা মাসের জন্য শহরের বাইরে থাকলেও তাদের সুস্থ রাখবে। এই প্রজেক্টে , একটি আর্দ্রতা সেন্সর ব্যবহার করা হবে আপনার গাছের জন্য সর্বোত্তম স্তরের আর্দ্রতা বজায় রাখতে। এই সিস্টেমটি আপনার বাগানের জন্য বা আপনার বাসার ভেতরের গাছের জন্য উভয় ক্ষেত্রেই প্রয়োগ করা যেতে পারে এইভাবে আপনি দূরে থাকাকালীন আপনার পাতাযুক্ত গাছগুলোর যত্ন নিন।

স্বয়ংক্রিয় সেচ ব্যবস্থার কাজ ( Working of the Arduino Automatic Irrigation System )

এই সিস্টেমের Logic খুব সহজ. এই সিস্টেমে, আর্দ্রতা সেন্সর মাটির আর্দ্রতা স্তর অনুধাবন করে এবং যখন সেন্সর একটি কম আর্দ্রতা স্তর অনুভব করে তখন এটি একটি মাইক্রোকন্ট্রোলারের সাহায্যে স্বয়ংক্রিয়ভাবে জলের পাম্প পরিবর্তন করে এবং উদ্ভিদকে সেচ দেয়। পর্যাপ্ত জল সরবরাহ করার পরে, মাটি আর্দ্রতা ধরে রাখে তাই Automatically পাম্প বন্ধ করে দেয়।

Arduino Soil Moisture Sensor

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

সেন্সরটি একটি ইলেকট্রনিক মডিউলের সাথে আসে যা প্রোবটিকে Arduino এর সাথে সংযুক্ত করে। মডিউলটিতে একটি LM393 উচ্চ নির্ভুলতা তুলনাকারী রয়েছে যা অ্যানালগ সংকেতকে ডিজিটাল আউটপুটে রূপান্তর করে যা মাইক্রোকন্ট্রোলারে দেওয়া হয়।

DC Pump with arduino

গাছে সেচ দেওয়ার জন্য আমাদের একটি ছোট পাম্প দরকার, কিন্তু একটি বাগানের ক্ষেত্রে, আমাদের একটি বড় পাম্প চালাতে হবে যা আপনার বাগানের আকারের উপর নির্ভর করে উচ্চ পরিমাণে জল সরবরাহ করতে পারে যা সরাসরি আরডুইনো দ্বারা চালিত হতে পারে না। . তাই যদি আপনার একটি বড় পাম্প চালানোর প্রয়োজন হয়, আমি একটি 5v রিলে ব্যবহার করছি তা দেখানোর জন্য পাম্পের জন্য পর্যাপ্ত কারেন্ট সরবরাহ করার জন্য একজন ড্রাইভার আবশ্যক। আপনি একটি এসি-চালিত পাম্প ব্যবহার করতে পারেন এবং একটি উপযুক্ত রিলে ব্যবহার করতে পারেন। এই প্রজেক্টে দেখানো কাজটি একই রকম থাকবে, আপনাকে শুধু রিলেতে সংযুক্ত ডিসি পাওয়ার ইনপুটটিকে একটি এসি পাওয়ার ইনপুট দিয়ে প্রতিস্থাপন করতে হবে এবং আপনার আরডুইনোকে আলাদা ডিসি পাওয়ার সোর্স দিয়ে পাওয়ার করতে হবে।


Project er জন্য খুব কম component প্রয়োজন এবং সংযোগটিও খুব সহজ। উপাদান নীচে তালিকাভুক্ত করা হয়:

  • Arduino * 1
  • moisture sensor * 1
  • 5v relay module * 1
  • 6v Mini water pump with small pipe * 1
  • Connecting wires
  • 5v battery * 1


Arduino স্বয়ংক্রিয় সেচ ব্যবস্থার জন্য সম্পূর্ণ সার্কিট ডায়াগ্রাম নীচে দেখানো হয়েছে:

Circuit Diagram of the Arduino Automatic irrigation system

এই বিভাগে, আমি স্কিম্যাটিক ডায়াগ্রামের সাহায্যে সমস্ত বিবরণ ব্যাখ্যা করব। আরডুইনো ইউএনও এই পুরো প্রকল্পের মস্তিষ্ক। এটি মাটির আর্দ্রতা অনুযায়ী মোটর পাম্প নিয়ন্ত্রণ করে যা আর্দ্রতা সেন্সর দ্বারা দেওয়া হয়।

সার্কিট পাওয়ার জন্য, আমি একটি বাহ্যিক ব্যাটারি ব্যবহার করছি। আপনি যেকোনো 9v বা 12-ভোল্ট ব্যাটারি ব্যবহার করতে পারেন। ব্যাটারি Arduino এর Vin এবং GND পিনের সাথে সংযুক্ত এবং আমরা একটি রিলে এর মাধ্যমে মোটরটিকে এই ব্যাটারির সাথে সংযুক্ত করতে পারি। আর্দ্রতা সেন্সর আউটপুট Arduino এর এনালগ পিনের সাথে সংযুক্ত। সেন্সর এবং রিলে মডিউল পাওয়ার জন্য Arduino এর 5volt পিন ব্যবহার করতে ভুলবেন না।

Assembling the Automatic Irrigation System

আরডুইনো বোর্ডের সাথে রিলে সংযোগ দিয়ে শুরু করা যাক। রিলে মডিউলের ভিসিসিকে আরডুইনোর 5v পিনের সাথে সংযুক্ত করুন এবং রিলেটির মাটিকে আরডুইনোর মাটিতে সংযুক্ত করুন। এখন রিলে সিগন্যাল পিনটি পিন 13 ব্যতীত আরডুইনোর যেকোনো ডিজিটাল পিনের সাথে সংযুক্ত করুন। এখানে আমি নীচের ছবিতে দেখানো হিসাবে এটি পিন 3 এর সাথে সংযুক্ত করেছি।

পরবর্তী ধাপে আর্ডুইনোর সাথে মাটির আর্দ্রতা সেন্সর সংযুক্ত করা। সেন্সরের VCC এবং gnd কে Arduino এর 5volt এবং গ্রাউন্ড পিনের সাথে সংযুক্ত করুন। সেন্সরের অ্যানালগ আউটপুট আরডুইনোর যেকোনো অ্যানালগ পিনের সাথে সংযোগ করে, এখানে আমি এটিকে A0 পিনের সাথে সংযুক্ত করেছি (আমাদের প্রোগ্রাম অনুসারে)।


অবশেষে, পাম্পটিকে রিলে মডিউলের সাথে সংযুক্ত করুন। একটি রিলে মডিউলে 3টি সংযোগ পয়েন্ট থাকে যা সাধারণ, সাধারণত বন্ধ এবং সাধারণত খোলা থাকে। আমাদেরকে পাম্পকে পজিটিভকে সাধারণের সাথে সংযুক্ত করতে হবে এবং ব্যাটারির পজিটিভের সাথে সাধারণভাবে খোলা পিনটিকে সংযুক্ত করতে হবে। আপনার পাম্প অনুযায়ী ব্যাটারি নির্বাচন করতে হবে। পরবর্তী পদক্ষেপটি হল পাম্পের মাটিকে আরডুইনোর মাটিতে সংযুক্ত করা এবং অবশেষে, ছোট পায়ের পাতার মোজাবিশেষটি জলের পাম্পের সাথে সংযুক্ত করা।

এখন ব্যাটারিটি সার্কিটের সাথে সংযুক্ত করুন এবং যদি পাম্প কাজ করা শুরু করে তবে আপনার সার্কিট ঠিক আছে। এখন আরডুইনোতে কোড আপলোড করা যাক।

Explanation of the code for The Automatic Irrigation System

এই project এর জন্য, আমরা কোনো লাইব্রেরি ব্যবহার করছি না আমরা শুধু প্রোগ্রামিংয়ের জন্য basic ফাংশন ব্যবহার করছি। কোডটি খুবই সহজ এবং ব্যবহার করা সহজ। কোডের ব্যাখ্যা নিম্নরূপ।

আমরা এখানে সমস্ত প্রয়োজনীয় পূর্ণসংখ্যা সংজ্ঞায়িত করে শুরু করি আমি মাটির আর্দ্রতা এবং রূপান্তরিত আর্দ্রতা শতাংশ সংরক্ষণের জন্য দুটি পূর্ণসংখ্যা ব্যবহার করেছি।

int soilMoistureValue = 0;
int percentage=0;
এখন, আমরা পিন মোড সংজ্ঞায়িত করেছি, এখানে আমি পিন 3 একটি আউটপুট হিসাবে ব্যবহার করেছি এবং পরবর্তী লাইনে, আমি ডিবাগিংয়ের জন্য সিরিয়াল মনিটর শুরু করেছি। 

void setup() {
  pinMode(3,OUTPUT); 
  Serial.begin(9600);
}
void loop() {
soilMoistureValue = analogRead(A0); 
আমি মাটির আর্দ্রতা পড়ে লুপ বিভাগটি শুরু করেছি। আমি মাটির আর্দ্রতা পড়ার জন্য Arduino-এর analogRead ফাংশন ব্যবহার করেছি এবং আমি সেটিকে soilMoistureValue-এ সংরক্ষণ করেছি। এই মান 0 থেকে 1023 পর্যন্ত পরিবর্তিত হয় 

percentage = map(soilMoistureValue, 490, 1023, 0, 100);
Serial.println(percentage);
নীচের লাইনে, আমি সেন্সর মানগুলিকে 0-100 শতাংশ থেকে রূপান্তর করেছি যার জন্য আমরা আরডুইনোতে মানচিত্র ফাংশন ব্যবহার করি। এর মানে হল যে যদি মাটি শুষ্ক হয় তাহলে আউটপুট আর্দ্রতা শতাংশ 0% এবং যদি মাটি অত্যন্ত ভেজা হয় তবে আর্দ্রতা শতাংশ 100%।

Calibrating our Moisture Sensor 

map function use করে, আমাদের শুকনো মান এবং ভেজা মান নির্ধারণ করতে হবে। এটি করার জন্য আমাদের সেই মানগুলি নিরীক্ষণ করতে হবে। আপনি নিম্নলিখিত কোড ব্যবহার করে যে মান পড়তে পারেন:

void setup() {
  Serial.begin(9600);
}
void loop() {
 int sensorValue = analogRead(A0);
  Serial.println(sensorValue);
  delay(1);

উপরের কোডটি আপনার Arduino এ আপলোড করুন এবং সিরিয়াল মনিটর খুলুন। তারপরে আপনার মাটির আর্দ্রতা সেন্সরটি শুকনো মাটিতে রাখুন বা কেবল সেন্সরটিকে বাতাসে ধরে রাখুন এবং মানটি পড়ুন। এখন সেই মানটিকে 490 (second term of map function) এর জায়গায় রাখুন।

পরবর্তী ধাপে সেন্সরটিকে ভেজা মাটিতে স্থাপন করা বা পানিতে ডুবিয়ে মানটি পড়া এবং 1023 (third term of map function) এর জায়গায় সেই মান নির্ধারণ করা। এই মানগুলি আরও ভাল ফলাফল পেতে আপনার সেন্সরগুলিকে সঠিকভাবে ক্যালিব্রেট করবে।


মান পরিবর্তন করার পর আমরা মাটির আর্দ্রতা শতাংশ অনুযায়ী পাম্প নিয়ন্ত্রণ করতে পারি। 'ইফ কন্ডিশন'-এর সাহায্যে, আমি প্রথম শর্তটি লিখি, যদি আর্দ্রতা শতাংশ 10-এর নিচে চলে যায়, তাহলে আরডুইনো পিন 3 থেকে LOW-এ পরিণত হবে এবং পাম্প চালু হবে (আমাদের রিলে মডিউল ট্রিগার করতে সক্রিয় Low signal ব্যবহার করে) এবং Arduino সিরিয়াল মনিটরে বার্তার উপর পাম্প প্রিন্ট করবে। 


If (percentage < 10) 
{
  Serial.println(" pump on");
  digitalWrite(3,LOW);
}

আর্দ্রতা শতাংশ 80 শতাংশের উপরে চলে গেলে (মাটি জলে ভরা নির্দেশ করে) আরডুইনো পাম্পটি বন্ধ করবে এবং সিরিয়াল মনিটরে 'পাম্প অফ' প্রিন্ট করবে।

if(percentage >80) 
{
  Serial.println("pump off");
  digitalWrite(3,HIGH); 
}
}

Testing the Automatic Irrigation System

আরডুইনোতে কোডটি আপলোড করার পরে, আমি নীচের চিত্রের মতো একটি প্লাস্টিকের বাক্সে পাম্প এবং সেন্সর প্রোব ছাড়া পুরো সার্কিটটি রেখেছি।



এখন মাটিতে আর্দ্রতা সেন্সর রাখুন। উচ্চ নির্ভুলতার জন্য যতটা সম্ভব গাছের শিকড়ের কাছাকাছি সেন্সর রাখুন।



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


পাম্প শুরু এবং বন্ধ করার জন্য আপনাকে আর্দ্রতার শতাংশ পরিবর্তন করতে হতে পারে কারণ বিভিন্ন গাছের বিভিন্ন জলের প্রয়োজনীয়তা রয়েছে। আশা করি আপনি প্রকল্পটি উপভোগ করেছেন এবং Arduino ব্যবহার করে আপনার নিজস্ব স্বয়ংক্রিয় সেচ ব্যবস্থা তৈরি করতে প্রস্তুত। আপনার কোন প্রশ্ন থাকলে, আপনি নীচের মন্তব্য বিভাগে তাদের ছেড়ে যেতে পারেন.


int soilMoistureValue = 0;
int percentage=0;

void setup() {
  pinMode(3,OUTPUT);
  Serial.begin(9600);
}

void loop() {
    soilMoistureValue = analogRead(A0);
    Serial.println(percentage);
    percentage = map(soilMoistureValue, 490, 1023, 100, 0);

if(percentage < 10)  
    {
      Serial.println(" pump on");
      digitalWrite(3,LOW);
    }
if(percentage >80)
    {
      Serial.println("pump off");
      digitalWrite(3,HIGH);
    }
}




কোন মন্তব্য নেই

Blogger দ্বারা পরিচালিত.