ارڈوینو کا استعمال کرتے ہوئے خودکار آبپاشی سرکٹ

مسائل کو ختم کرنے کے لئے ہمارے آلے کو آزمائیں





اس پوسٹ میں ہم ارڈوینو اور مٹی نمی سینسر کا استعمال کرتے ہوئے چھوٹے باغ کے لئے ایک خودکار پانی آبپاشی کا نظام تعمیر کرنے جارہے ہیں۔

تعارف

مجوزہ نظام کرسکتا ہے مٹی نمی کی سطح کی نگرانی کریں اور جب مٹی کی نمی پہلے سے طے شدہ قیمت سے کم ہوجاتی ہے تو ، 12V DC پمپ کو پہلے سے طے شدہ وقت کے لئے متحرک کردیا جائے گا۔ مٹی کی نمی کی سطح اور نظام کے دیگر افعال کی حیثیت کو حقیقی وقت میں 16 x 2 LCD ڈسپلے کے ذریعے مانیٹر کیا جاسکتا ہے۔



ایک اندازے کے مطابق دنیا بھر میں 3 کھرب درخت ہیں جو ہمارے گھر آکاشگنگا کہکشاں میں شروع ہونے کی تعداد سے زیادہ ہے جس کا تخمینہ 100 بلین ہے۔ لیکن ، ہم انسان اپنی بنیادی ضروریات کو عیش و آرام کی ضروریات کو پورا کرنے کے ل count ان گنت درختوں کو کاٹتے ہیں۔

مادر فطرت کو ایک آراء کے نظام کے ساتھ ڈیزائن کیا گیا ہے ، جب ایک پرجاتی بہت بڑی پریشانی متعارف کرائے گی ، تو فطرت اس پرجاتی کو وجود سے مٹا دے گی



انسان صدیوں سے بلاوجہ فطرت کو پریشان کررہا تھا لیکن ، سائنس اور ٹکنالوجی میں زبردست ترقی کے بعد بھی خلل کی شرح کم نہیں ہوئی ہے۔

موسمیاتی تبدیلی اس کی ایک مثال ہے ، جب یہ کافی حد تک سخت ہوجاتا ہے تو ہماری نسلیں زیادہ دیر تک نہیں چل پاتی ہیں۔
یہ پروجیکٹ فطرت کے تحفظ کے ل a ایک بچے کو آگے بڑھاتا ہے ، یہ آپ کے خوبصورت چھوٹے باغ کو بغیر کسی تعامل کے سیراب کرسکتا ہے۔ آئیے اب اس پروجیکٹ کی تکنیکی تفصیلات حاصل کرتے ہیں۔

مٹی نمی سینسر:

پروجیکٹ کا دل ہے مٹی نمی سینسر جو مٹی میں نمی کی مقدار کی مقدار کو سمجھ سکتا ہے۔ سینسر ینالاگ قدر دیتا ہے اور ایک مائکروقانت ثالث ان اقدار کی ترجمانی کرے گا اور نمی کی مقدار کو ظاہر کرے گا۔

دو الیکٹروڈ ہیں ، جو مٹی میں ڈالے جائیں گے۔ الیکٹروڈس سرکٹ بورڈ سے جڑے ہوئے ہیں جس میں تقابلی آایسی ، ایل ای ڈی ، ٹرمر ریزٹر ان پٹ اور آؤٹ پٹ پن شامل ہیں۔

مٹی نمی سینسر کی مثال:

مٹی نمی سینسر ماڈیول

اس میں 4 + 2 پن ، الیکٹروڈ کنکشن کے لئے 2 پن اور 4 پنوں میں سے Vcc ، GND ، ڈیجیٹل آؤٹ پٹ اور ینالاگ آؤٹ پٹ ہیں۔ ہم مٹی کی نمی کو محسوس کرنے کیلئے صرف ینالاگ آؤٹ پٹ استعمال کرنے جارہے ہیں۔
چونکہ ہم ڈیجیٹل آؤٹ پٹ پن کا استعمال نہیں کررہے ہیں ، لہذا ہم سینسر کیلیبریٹ کرنے کے لئے بورڈ پر ٹرائمر ریزٹر استعمال نہیں کریں گے۔

اب ، یہ مٹی نمی سینسر کا نتیجہ اخذ کرتا ہے۔

اسکیمیٹک آریگرام:

سرکٹ کافی آسان اور ابتدائی دوستانہ رکھا گیا ہے۔ منصوبے کی نقل کرتے ہوئے کنفیوژن کو کم کرنے کے لئے اسکیمیٹک کو ایک ہی پروجیکٹ کے دو حصوں میں تقسیم کیا گیا ہے۔

خودکار آبپاشی کے نظام کے لئے LCD وائرنگ آریھ

مندرجہ بالا منصوبہ بندی ہے ایل سی ڈی سے ارڈوینو وائرنگ LCD ڈسپلے کے برعکس کو ایڈجسٹ کرنے کے لئے 10K پوٹینومیٹر فراہم کیا گیا ہے۔

مائکروکنٹرولر پر مبنی خودکار آبپاشی کا نظام

مٹی نمی سینسر ، 12V ڈی سی پمپ ، ایک کیلیبریٹ پش بٹن اور 12V (1 - 2 AMP) بجلی کی فراہمی پر مشتمل باقی سکیمیٹک یہاں ہے۔ براہ کرم 12V DC پمپ کی موجودہ درجہ بندی کے کم سے کم 500mA سے زیادہ بجلی کی فراہمی کا استعمال کریں۔

نظام کی مجموعی طاقت کی کارکردگی کو بہتر بنانے کے لئے بی جے ٹی کی بجائے موزفٹ IRF540N (یا کوئی مساوی این چینل) استعمال کیا جاتا ہے۔

پمپ آپ کو چھوٹے باغ میں پانی دے گا ، اس بات کو یقینی بنائے کہ آپ کے پاس ہمیشہ مناسب مقدار میں پانی موجود ہو۔

پروگرام کا کوڈ:

//-------------Program Developed By R.Girish-------------//
#include
LiquidCrystal lcd(12, 11, 5, 4, 3, 2)
int Time = 5 // Set time in minutes
int threshold = 30 // set threshold in percentage 80, 70, 60, 50, 40, 30, 20 only.
int i
int x
int y
int z
int start
int calibrateValue
const int calibrateBTN = A1
const int input = A0
const int motor = 7
boolean calibration = false
boolean rescue = false
void setup()
{
Serial.begin(9600)
pinMode(input, INPUT)
pinMode(calibrateBTN, INPUT)
pinMode(motor, OUTPUT)
digitalWrite(calibrateBTN, HIGH)
lcd.begin(16,2)
lcd.setCursor(0,0)
lcd.print('Pour water and')
lcd.setCursor(0,1)
lcd.print('press calibrate')
while(!calibration)
{
if(digitalRead(calibrateBTN)==LOW)
{
calibrateValue = analogRead(input)
x = 1023 - calibrateValue
x = x/10
Serial.print('Difference = ')
Serial.println(x)
Serial.print('Calibration Value = ')
Serial.println(calibrateValue)
delay(500)
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Calibration done')
lcd.setCursor(0,1)
lcd.print('successfully !!!')
calibration = true
delay(2000)
}
}
}
void loop()
{
if(analogRead(input)<= calibrateValue)
{
delay(500)
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Soil Moisture')
lcd.setCursor(0,1)
lcd.print('Level: 100%')
}
if(analogRead(input) > calibrateValue && analogRead(input) <= calibrateValue+x)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Soil Moisture')
lcd.setCursor(0,1)
lcd.print('Level: 90 to 99%')
}
if(analogRead(input) > calibrateValue+x && analogRead(input) <= calibrateValue+2*x )
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Soil Moisture')
lcd.setCursor(0,1)
lcd.print('Level: 80 to 90%')
start = 80
}
if(analogRead(input) > calibrateValue+2*x && analogRead(input) <= calibrateValue+3*x)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Soil Moisture')
lcd.setCursor(0,1)
lcd.print('Level: 70 to 80%')
start = 70
}
if(analogRead(input) > calibrateValue+3*x && analogRead(input) <= calibrateValue+4*x)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Soil Moisture')
lcd.setCursor(0,1)
lcd.print('Level: 60 to 70%')
start = 60
}
if(analogRead(input) > calibrateValue+4*x && analogRead(input) <= calibrateValue+5*x)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Soil Moisture')
lcd.setCursor(0,1)
lcd.print('Level: 50 to 60%')
start = 50
}
if(analogRead(input) > calibrateValue+5*x && analogRead(input) <= calibrateValue+6*x)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Soil Moisture')
lcd.setCursor(0,1)
lcd.print('Level: 40 to 50%')
start = 40
}
if(analogRead(input) > calibrateValue+6*x && analogRead(input) <= calibrateValue+7*x)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Soil Moisture')
lcd.setCursor(0,1)
lcd.print('Level: 30 to 40%')
start = 30
}
if(analogRead(input) > calibrateValue+7*x && analogRead(input) <= calibrateValue+8*x)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Soil Moisture')
lcd.setCursor(0,1)
lcd.print('Level: 20 to 30%')
start = 20
}
if(analogRead(input) > calibrateValue+8*x && analogRead(input) <= calibrateValue+9*x)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Soil Moisture')
lcd.setCursor(0,1)
lcd.print('Level: 10 to 20%')
start = 10
}
if(analogRead(input) > calibrateValue+9*x && analogRead(input) <= calibrateValue+10*x)
{
lcd.clear()
lcd.setCursor(0,0)
lcd.print('Soil Moisture')
lcd.setCursor(0,1)
lcd.print('Level: <10%')
rescue = true
}
if(start == threshold || rescue)
{
y = Time
digitalWrite(motor, HIGH)
Time = Time*60
z = Time
for(i=0 i

آب پاشی کے اس نظام کو کیسے تراشنا ہے:

hardware مکمل ہارڈ ویئر کے ساتھ ، کہیں پانی کے بہاؤ کی راہ پر ، مٹی پر الیکٹروڈ داخل کریں۔
• اب پروگرام میں دو اقدار کو تبدیل کریں 1) وقت کی مقدار تمام پودوں (منٹ میں) پانی ڈالے گی۔ 2) تھریشولڈ لیول جس کے نیچے اردوینو پمپ کو متحرک کرتا ہے۔ آپ صرف 80 ، 70 ، 60 ، 50 ، 40 ، 30 ، 20 فیصد فیصد ترتیب دے سکتے ہیں۔

انٹ ٹائم = 5 // منٹ میں منٹ طے کریں
انٹریٹ تھریشولڈ = 30 // صرف حد 80 ، 70 ، 60 ، 50 ، 40 ، 30 ، 20 فیصد میں حد مقرر کریں۔

پروگرام میں اقدار کو تبدیل کریں۔

ar کوڈ کو ارڈینو میں اپ لوڈ کریں اور سرکٹ کو طاقت دیں۔ یہ 'پانی ڈالیں اور کیلیبریٹ کو دبائیں' دکھائے گا۔ اب آپ کو کافی حد تک اپنے باغ کو دستی طور پر پانی دینا ہے۔
garden باغ کو پانی دینے کے بعد ، کیلیبریٹ کا بٹن دبائیں۔ یہ پوری طرح نمی مٹی میں بجلی کی ترسیل کا تعین کرے گا اور اس کی وجہ سے حوالہ کی قیمت کو تیز کیا جاسکتا ہے۔
• اب نظام آپ کے چھوٹے باغ کی خدمت کے لئے تیار ہے۔ براہ کرم اس منصوبے کے لئے پاور بیک اپ شامل کرنے کی کوشش کریں۔ جب طاقت ناکام ہوجاتی ہے تو حوالہ کیلیبریٹڈ ویلیو میموری سے مٹ جائے گی اور آپ کو دوبارہ نظام کیلیبریٹ کرنا پڑے گا۔

مصنف کی پروٹو ٹائپ:

آرڈینوو پر مبنی خودکار آبپاشی پروٹوٹائپ امیج

مٹی کی نمی کی سطح کا اشارہ:

ایک بار جب پمپ آن ہو گیا تو ، یہ آف کرنے کے لئے (سیکنڈ میں) باقی وقت دکھائے گا۔




پچھلا: 3 اسمارٹ لیزر الارم پروٹیکشن سرکٹس اگلا: OCL یمپلیفائر کی وضاحت