מעגל השקיה אוטומטי באמצעות ארדואינו

נסה את הכלי שלנו לביטול בעיות





בפוסט זה אנו הולכים לבנות מערכת השקיית מים אוטומטית לגינה קטנה באמצעות ארדואינו וחיישן לחות קרקע.

מבוא

המערכת המוצעת יכולה לפקח על רמת הלחות בקרקע וכאשר לחות האדמה יורדת מתחת לערך שנקבע מראש, יופעל משאבת ה- DC 12V לתקופה קבועה מראש. ניתן לעקוב אחר מצב רמת הלחות בקרקע ופונקציות אחרות של המערכת באמצעות תצוגת LCD בגודל 16x2 בזמן אמת.



ההערכה היא כי ישנם 3 טריליון עצים ברחבי העולם שהוא גדול יותר ממספר ההתחלות בגלקסיית שביל החלב הביתית שלנו, המוערכת בכמאה מיליארד דולר. אבל אנו בני האדם כורתים אינספור עצים כדי למלא את הצרכים הבסיסיים שלנו לצרכי היוקרה.

אמא טבע מתוכננת עם מערכת משוב, כאשר מין מציג הפרעות עצומות, הטבע ימחק את המין מקיומו.



בני אדם הפרו את הטבע באופן לא מודע במשך מאות שנים אך גם לאחר התפתחות רבה במדע ובטכנולוגיה קצב ההפרעה לא פחת.

שינויי אקלים הם אחת הדוגמאות, כאשר הוא נהיה מספיק דרסטי המין שלנו לא יחזיק מעמד זמן רב.
פרויקט זה לוקח צעד תינוק קדימה כדי לשמור על הטבע, הוא יכול להשקות את הגינה הקטנה והיפה שלך ללא כל אינטראקציה אנושית. עכשיו בואו ניכנס לפרטים הטכניים של הפרויקט.

חיישן לחות קרקע:

לב הפרויקט הוא חיישן לחות קרקע שיכול לחוש בכמות תכולת הלחות בקרקע. החיישן נותן ערך אנלוגי ומיקרו-בקר יפרש את הערכים הללו ויציג את תכולת הלחות.

ישנן שתי אלקטרודות, שיוחדרו לקרקע. האלקטרודות מחוברות ללוח מעגל המורכב משווה IC, LED, כניסת נגדי גוזם וסיכות פלט.

איור של חיישן לחות קרקע:

מודול חיישן לחות קרקע

יש לו 4 + 2 פינים, 2 פינים לחיבור אלקטרודה ושאר 4 הפינים הם Vcc, GND, פלט דיגיטלי ופלט אנלוגי. אנו הולכים להשתמש רק בסיכת הפלט האנלוגית לחישת לחות קרקע.
מכיוון שאיננו משתמשים בסיכת פלט דיגיטלית, לא נשתמש נגד גוזם על הלוח בכיול החיישן.

עכשיו, זה מסכם את חיישן לחות האדמה.

תרשים סכמטי:

המעגל נשמר פשוט למדי וידידותי למתחילים. הסכימה מחולקת לשני חלקים מאותו פרויקט כדי להפחית את הבלבול תוך שכפול הפרויקט.

תרשים חיווט LCD למערכת השקיה אוטומטית

הסכימה הנ'ל היא ה- LCD ל arduino תִיוּל. פוטנציומטר 10K מסופק בכדי להתאים את הניגודיות של תצוגת ה- LCD.

מערכת השקיה אוטומטית מבוססת מיקרו-בקר

הנה שאר הסכמה המורכבת מחיישן לחות קרקע, משאבת DC 12V, כפתור לחיצה מכויל וספק כוח 12V (1 - 2 אמפר). אנא השתמש בספק חשמל של לפחות 500mA של הדירוג הנוכחי של משאבת DC 12V.

MOSFET IRF540N (או כל ערוץ N מקביל) משמש במקום BJT כדי לשפר את יעילות ההספק הכוללת של המערכת.

המשאבה תשקה לך גינה קטנה, וודא שיש לך תמיד כמות מספקת של מים.

קוד תכנית:

//-------------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

כיצד לכייל את מערכת ההשקיה האוטומטית הזו:

• עם חומרה שהושלמה, הכנס את האלקטרודה על אדמה, איפשהו בדרך של זרימת המים.
• שנה כעת את שני הערכים בתוכנית 1) משך הזמן שייקח את כל הצמחים (בדקות). 2) רמת סף שמתחתיה ארדואינו מפעיל את המשאבה. ניתן להגדיר את ערכי האחוזים 80, 70, 60, 50, 40, 30, 20 בלבד.

int זמן = 5 // הגדר זמן בדקות
סף int = 30 // סף מוגדר באחוזים 80, 70, 60, 50, 40, 30, 20 בלבד.

שנה את הערכים בתוכנית.

• העלה את הקוד לארדואינו והפעל את המעגל. הוא יציג 'לשפוך מים וללחוץ על כיול'. עכשיו אתה צריך להשקות ידנית את הגינה שלך לרמה מספקת.
• לאחר השקיית הגן, לחץ על כפתור הכיול. זה יקבע את הולכת החשמל בקרקע לחה לחלוטין וצילום הצילום את ערך הייחוס.
• כעת המערכת מוכנה לשרת את הגן הקטן שלך. נסה להוסיף גיבוי חשמל לפרויקט זה. כאשר הכוח נכשל הערך המכויל של הייחוס יימחק מהזיכרון ותצטרך לכייל את המערכת שוב.

אב הטיפוס של המחבר:

תמונת אב טיפוס להשקיה אוטומטית על בסיס ארדואינו

אינדיקציה לרמת לחות הקרקע:

לאחר הפעלת המשאבה, היא תציג את הזמן שנותר לכיבוי (בשניות).




קודם: 3 מעגלי הגנה מפני אזעקת לייזר חכמה הבא: הסבר על מגבר OCL