תוכן עניינים:
וִידֵאוֹ: צג צמחים באמצעות ESP32 Thing ו- Blynk: 5 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:12
סקירה כללית
מטרתו של פרויקט זה היא ליצור מכשיר קומפקטי המסוגל לעקוב אחר תנאי צמח הבית. המכשיר מאפשר למשתמש לבדוק את רמת הלחות בקרקע, רמת הלחות, הטמפרטורה והטמפרטורה "מרגישה" באמצעות סמארטפון באמצעות אפליקציית Blynk. בנוסף, המשתמש יקבל התראה בדוא"ל כאשר התנאים לא יתאימו למפעל. לדוגמה, המשתמש יקבל תזכורת להשקות את הצמח כאשר רמות לחות הקרקע יורדות מתחת לרמה המתאימה.
שלב 1: דרישות
פרויקט זה משתמש בדבר Sparkfun ESP32, בחיישן DHT22 ובחיישן לחות של קרקע בקרקע. בנוסף, נדרשת רשת wifi ואפליקציית Blynk. רצוי ליצור מארז עמיד למים שיכיל את הדבר ESP32. בעוד שדוגמה זו משתמשת בשקע סטנדרטי למקור חשמל, הוספת סוללה נטענת, פאנל סולארי ובקר טעינה תאפשר להפעיל את המכשיר באמצעות אנרגיה מתחדשת.
שלב 2: בלינק
כדי להיות, הורד את אפליקציית Blynk וצור פרויקט חדש. שימו לב לאסימון האימות-הוא ישמש בקוד. צור יישומוני תצוגה חדשים באפליקציית Blynk ובחר את הסיכות הווירטואליות המתאימות המוגדרות בקוד. הגדר את מרווח הרענון לדחיפה. לכל יישומון יש להקצות סיכה וירטואלית משלו.
שלב 3: Arduino IDE
הורד את Arduino IDE. עקוב אחר הוראות ההורדה של מנהל ההתקן של דבר ESP32 וההדגמה כדי להבטיח קישוריות wifi. הורד את ספריות Blynk ו- DHT הכלולות בקוד. מלא את אסימון האימות, סיסמת ה- wifi, שם המשתמש wifi והאימייל בקוד הסופי. השתמש בקוד ההדגמה עבור חיישן לחות הקרקע כדי למצוא את הערכים המינימליים והמקסימליים לסוג הקרקע. רשום והחליף ערכים אלה בקוד הסופי. החלף את ערכי המינימום לטמפרטורה, לחות הקרקע ולחות הצמח בקוד הסופי. העלה את הקוד.
שלב 4: בנה אותו
ראשית, חבר את חיישן לחות הקרקע ל- 3.3V, קרקע וסיכת כניסה 34. שים לב, הוא אינטגרלי, המתג מוגדר ל- A מכיוון שההגדרה האנלוגית של חיישן זה תשמש. לאחר מכן, חבר את חיישן DHT ל -3.3 וולט, קרקע וסיכת קלט 27. חיישן DHT22 דורש נגד 10K אוהם בין ה- VCC לבין סיכת הנתונים החוצה. הקפד לבדוק את תרשים DHT כדי לוודא שהוא מחובר כראוי. הגדר את ESP32 בתוך מארז עמיד למים עם חיישן הלחות בקרקע וחיישן DHT מעל פני השטח. התחבר למקור חשמל ותהנה מנתונים על סביבת המפעל שלך.
שלב 5: קוד
// כלול ספריות
#הגדר סדרה BLYNK_PRINT
#include #include #include #include "DHT.h"
// מידע על חיישן DHT
#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321 #define DHTPIN 27 // סיכה דיגיטלית המחוברת לחיישן DHT dht (DHTPIN, DHTTYPE); // אתחל חיישן DHT.
// להגדיר סיכות ויציאות קלט
int soil_sensor = 34; // הגדר מספר סיכה קלט אנלוגי המחובר לחיישן לחות
int output_value; // הגדר כפלט
int לחות; // להגדיר כתפוקה
int notified = 0; // הגדר הודעה כ- 0
int timedelay = 60000L; // הגדר טיימר להפעלה קבל נתונים אחת לדקה או 60, 000 מילי שניות
// הגדר ערכי מינימום לצמח
int min_fuisture = 20; int min_temperature = 75; int min_humidity = 60;
// אתה אמור לקבל Auth Token באפליקציית Blynk.
char auth = "Auth_Token_Here";
// אישורי ה- WiFi שלך.
char ssid = "Wifi_Network_Here"; char pass = "Wifi_Password_Here";
טיימר BlynkTimer;
// פונקציה זו שולחת את זמן העלייה של Arduino בכל שנייה לפין הווירטואלי (5).
// באפליקציה יש להגדיר את תדירות הקריאה של ווידג'ט ל- PUSH. המשמעות היא // שאתה מגדיר את התדירות שבה יש לשלוח נתונים לאפליקציית Blynk.
חיישני חלל () // הפונקציה העיקרית לקריאת חיישנים ולחיצה על בלינק
{output_value = analogRead (soil_sensor); // קרא אות אנלוגי מ- jord_sensor והגדר כ output_value // מפה output_vlaue מ- min, ערכי מקסימום ל- 100, 0 והגבל בין 0, 100 // השתמש בקוד לדוגמא ובצג טורי כדי למצוא דקות ו- ערכים מקסימליים לחיישן ולסוג קרקע בודדים לכיול לחות טוב יותר = רמה (מפה (פלט_ערך, 1000, 4095, 100, 0), 0, 100); float h = dht.readHumidity (); // קראו צף לחות t = dht.readTemperature (); // קראו את הטמפרטורה כצף צלזיוס (ברירת המחדל) f = dht.readTemperature (true); // קראו את הטמפרטורה כפרנהייט (isFahrenheit = true) // חישוב מדד החום ב- פרנהייט (ברירת המחדל) float hif = dht.computeHeatIndex (f, h); // בדוק אם קריאה נכשלה וצאי מוקדם (כדי לנסות שוב). if (isnan (h) || isnan (t) || isnan (f)) {Serial.println (F ("נכשלה קריאה מחיישן DHT!")); לַחֲזוֹר; } // זה מחבר ערכים לסיכות וירטואליות המוגדרות בווידג'טים באפליקציית Blynk Blynk.virtualWrite (V5, לחות -רמה); // שלח רמת לחות לסיכה וירטואלית 5 Blynk.virtualWrite (V6, f); // שלח טמפרטורה לוירטואלית סיכה 6 Blynk.virtualWrite (V7, h); // שלח לחות לסיכה וירטואלית 7 Blynk.virtualWrite (V8, hif); // שלח אינדקס חום לפין וירטואלי 8
אם (הודעה == 0)
{if (moisturelevel <= min_voisture) // אם רמת הלחות שווה לערך המינימלי או מתחת לו {Blynk.email ("Email_Here", "Monitor Monitor", "Plant Plant!"); // שלח דוא"ל למפעל המים} עיכוב (15000); // הודעות הדוא"ל של Blynk חייבות להיות בהפרש של 15 שניות. עיכוב של 15000 אלפיות השנייה אם (f <= min_temperature) // אם הטמפרטורה שווה לערך המינימלי או מתחת לו {Blynk.email ("Email_Here", "Monitor Monitor", "טמפרטורה נמוכה!"); // שלח דוא"ל שהטמפרטורה נמוכה
}
עיכוב (15000); // הודעות הדוא"ל של Blynk חייבות להיות בהפרש של 15 שניות. עיכוב של 15000 אלפיות השנייה אם (h <= min_humidity) // אם הלחות שווה לערך המינימלי או מתחת לו {Blynk.email ("Emial_Here", "Monitor Monitor", "לחות נמוכה!"); // שלח דוא"ל שהלחות נמוכה} הודעה = 1; timer.setTimeout (timedelay *5, resetNotified); // הכפל את זמן הזמן במספר הדקות המבוקשות בין הודעות אזהרה חוזרות}}
void resetNotified () // פונקציה נקראה לאיפוס תדירות הדוא ל
{הודעה = 0; }
הגדרת חלל ()
{Serial.begin (9600); // מסוף באגים Blynk.begin (auth, ssid, pass); // התחבר ל- blynk timer.setInterval (timedelay, חיישנים); // הגדר פונקציה שתקרא לה כל דקה או איזה שעה מוגדרת ל- dht.begin (); // הפעל חיישן DHT}
// לולאת Void צריכה להכיל רק blynk.run וטיימר
לולאת חלל () {Blynk.run (); // הפעל את blynk timer.run (); // יוזם BlynkTimer}
מוּמלָץ:
כיצד לבנות צג צמחים באמצעות Arduino: 7 שלבים
כיצד לבנות צג צמחים באמצעות Arduino: במדריך זה נלמד כיצד לזהות לחות קרקע באמצעות חיישן לחות ולהבהב נורית ירוקה אם הכל תקין ותצוגת OLED ו- Visuino. צפו בסרטון
מערכת השקיית צמחים אוטומטית באמצעות מיקרו: ביט: 8 שלבים (עם תמונות)
מערכת השקיית צמחים אוטומטית באמצעות מיקרו: ביט: במדריך זה אני הולך להראות לך כיצד לבנות מערכת השקיית צמחים אוטומטית באמצעות מיקרו: ביט ועוד כמה רכיבים אלקטרוניים קטנים. המיקרו: ביט משתמש בחיישן לחות. לפקח על רמת הלחות בקרקע הצמח ו
כיצד לבנות מערכת השקיית צמחים באמצעות Arduino: 7 שלבים
כיצד לבנות מערכת השקיית צמחים באמצעות ארדואינו: במדריך זה נלמד כיצד להכין מערכת השקיית צמחים באמצעות חיישן לחות, משאבת מים והבהב LED ירוק אם הכל תקין ותצוגת OLED ו- Visuino. צפו בסרטון
כיצד לזהות מחלות צמחים באמצעות למידת מכונה: 6 שלבים
כיצד לזהות מחלות צמחים באמצעות למידת מכונה: תהליך הגילוי והזיהוי של צמחים חולים תמיד היה תהליך ידני ומייגע המחייב בני אדם לבדוק באופן חזותי את גוף הצמח אשר עלול להוביל לאבחנה לא נכונה. כמו כן, ניבא כי ככל שגלובלית
השקיית צמחים חכמה המופעלת באמצעות פאנל סולארי: 7 שלבים
השקיית צמחים חכמה המופעלת באמצעות פאנל סולארי: זוהי גרסה מעודכנת של פרויקט SmartPlantWatering הראשון שלי (https://www.instructables.com/id/Smart-Plant-Water…הבדלים עיקריים עם הגרסה הקודמת: 1. מתחבר ל- ThingSpeaks.com ומשתמש באתר זה כדי לפרסם נתונים שנתפסו (טמפרטורה