תוכן עניינים:
וִידֵאוֹ: מדידת תכולת לחות הקרקע באמצעות פלטפורמת Esp32 ו- Thingsio.ai: 6 שלבים
2024 מְחַבֵּר: John Day | [email protected]. שונה לאחרונה: 2024-01-30 09:15
במדריך זה אני הולך להסביר על קריאת תכולת הלחות באדמה באמצעות esp32 ולאחר מכן שליחת הערכים לפלטפורמת הענן של דבריםio.ai IoT.
שלב 1: רכיבים
רכיבי חומרה:
1. לוח פיתוח esp32
2. חיישן קרקע
3. חוטי מגשר
תוֹכנָה:
1. Arduino IDE
2. Thingsio.ai
שלב 2: חיבורים
חיישן לחות קרקע ---------------------- esp32 לוח
VCC --------------------------------------- 3V3
GND -------------------------------------- GND
A0 ---------------------------------------- סמנכ ל
שלב 3: קידוד:
#לִכלוֹל
#לִכלוֹל
#לִכלוֹל
int count = 0, i, m, j, k;
int t;
int sensor_pin = A0;
ערך int;
/////////////////////////////////
עבור CLOUD //////////////////////////////////
const char* host = "api.thingsai.io"; // או מארח =
devapi2.thethingscloud.com
const char* post_url = "/devices/deviceData"; // או
/api/v2/thingscloud2/_table/data_ac
const char* time_server =
"baas.thethingscloud.com"; // זה כדי להמיר את חותמת הזמן
const int httpPort = 80;
const int httpsPort = 443;
const char* server =
"api.thingsai.io"; // כתובת URL של השרת
חותמת זמן של צ'ארה [10];
WiFiMulti WiFiMulti;
// השתמש בכיתה WiFiClient ליצירת חיבורי TCP
לקוח WiFiClient;
//////////////////////////////////////////
פונקציית חישוב ////////////////////////////
int GiveMeTimestamp ()
{
ארוך ללא סימן
פסק זמן = מיליס ();
// לקוח WiFiClient;
בזמן
(client.available () == 0)
{
אם (מיליס () -
פסק זמן> 50000)
{
client.stop ();
החזר 0;
}
}
בעוד (client.available ())
{
קו מחרוזת =
client.readStringUntil ('\ r'); // indexOf () הוא פונקציה לחיפוש smthng, הוא מחזיר -1 אם לא נמצא
int pos =
line.indexOf ("\" חותמת זמן / ""); // חפש "\" חותמת זמן / "" מתחילת התגובה שקיבלת והעתק את כל הנתונים לאחר מכן, זה יהיה חותמת הזמן שלך
אם (pos> =
0)
{
int j = 0;עבור (j = 0; j <10; j ++)
{חותמת זמן [j] = שורה [pos + 12 + j];
}
}
}
}
////////////////////////////////////////////////////////////////////////////////////////////////////////
הגדרת חלל ()
{Serial.begin (115200);Serial.println ("קריאה מהחיישן …");
עיכוב (2000);
// נתחיל ב
חיבור לרשת WiFi
WiFiMulti.addAP ("Wifi_name", "Wifi_Password");
Serial.println ();
Serial.println ();Serial.print ("המתן ל- WiFi …");בעוד (WiFiMulti.run ()! = WL_CONNECTED) {Serial.print (".");
עיכוב (500);
}Serial.println ("");Serial.println ("WiFi מחובר");
Serial.println ( IP
כתובת: );Serial.println (WiFi.localIP ());
עיכוב (500);
}
לולאת חלל ()
{
{
/////////////////////////////////
קבל את התגובה /////////////////////
ערך =
analogRead (sensor_pin);
// ערך =
מפה (ערך, 550, 0, 0, 100);Serial.print ("Mositure:");Serial.print (ערך);Serial.println ("%");עיכוב (1000);Serial.print ("מתחבר אל");Serial.println (מארח); // מוגדר כלפי מעלה:- host = devapi2.thethingscloud.com או 139.59.26.117
////////////////////////////////////////// SNIPPET
/////////////////////////
Serial.println ("בפנים חותמת זמן / n");
אם
(! client.connect (שרת הזמן, {
לַחֲזוֹר;
//*-*-*-*-*-*-*-*-*-*
}client.println ("GET/api/timestamp HTTP/1.1"); // מה החלק הזה עושה, לא הבנתיclient.println ("מארח: baas.thethingscloud.com");client.println ("Cache-Control: no-cache");client.println ("אגרת דוור: ea3c18c6-09ba-d049-ccf3-369a22a284b8");
client.println ();
GiveMeTimestamp ();
// הוא יקרא לפונקציה שתקבל את תגובת חותמת הזמן מהשרת
Serial.println ("חותמת זמן התקבלה");
Serial.println (חותמת זמן);Serial.println ("בתוך ThingsCloudPost");
מחרוזת PostValue =
"{" device_id / ": 61121695918, \" slave_id / ": 2";
PostValue =
PostValue + ", \" dts / ":" + חותמת זמן;
PostValue =
PostValue +", \" data / ": {" MOIST / ":" +ערך +"}" +"}";Serial.println (PostValue);
/ * צור מופע של WiFiClientSecure */
לקוח WiFiClientSecure;Serial.println ("התחבר לשרת דרך יציאה 443");
אם
(! client.connect (שרת, 443)) {Serial.println ("החיבור נכשל!");
} אחר {Serial.println ("מחובר לשרת!");
/* צור
בקשה */client.println ("POST/devices/deviceData HTTP/1.1");client.println ("מארח: api.thingsai.io");//client.println("חיבור: קרוב ");client.println ("סוג תוכן: יישום/json");
client.println ( cache-control:
ללא מטמון ");client.println ("הרשאה: נושאת eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC2PNYs9k9y7y9y9s9y9k9y9c9y9c9y9c9y9c9p6y9c9y9c9y9c9y9c9p6y9c5j9J9JyJ9JyN9C9pK9y9YYYYYYN9CYPWzQy9J9yYyYNJC9pJ6y9JyJJJJJJJJ9JyJJ9JyJJJjJJJJJJJgclient.print ("אורך התוכן:");
client.println (PostValue.length ());client.println ();client.println (PostValue);
////////////////////////////////////// לפרסם את הנתונים ב
ענן נעשה ועכשיו קבל את טופס התגובה שרת ענן ////////////////////
Serial.print ( מחכה לתגובה
);
בזמן
(! client.available ()) {
עיכוב (50);
//Serial.print (".");
}
/* אם הנתונים
זמין ואז קבל והדפס לטרמינל */
בזמן
(client.available ()) {
char c = client.read ();Serial.write (ג);
}
/* אם
השרת נותק, עצור את הלקוח */
אם
(! client.connected ()) {Serial.println ();Serial.println ("השרת נותק");
client.stop ();
}
}
Serial.println ( //////////////////////// END
///////////////////// );
עיכוב (3000);
}
}
שלב 4: פלט:
מוצג פלט הקוד.
שלב 5: גרף
זהו הייצוג הגרפי של הערכים הנקראים מהחיישן.
שלב 6:
להלן הסרטון המלא של הפרויקט. תודה.
מוּמלָץ:
כיול חיישן לחות הקרקע: 5 שלבים
כיול חיישן לחות הקרקע: קיימים בשוק מדי מדי לחות קרקע רבים המסייעים לגנן להחליט מתי להשקות את הצמחים שלהם. למרבה הצער, לתפוס חופן אדמה ולבדוק את הצבע והמרקם אמין כמו רבים מהגאדג'טים האלה! כמה בדיקות אפילו רושמות
השתמש בחיישן לחות הקרקע עם Magicbit [Magicblocks]: 5 שלבים
השתמש בחיישן לחות הקרקע באמצעות Magicbit [Magicblocks]: מדריך זה ילמד אותך להשתמש בחיישן לחות הקרקע עם Magicbit שלך באמצעות Magicblocks. אנו משתמשים ב- magicbit כלוח הפיתוח בפרויקט זה המבוסס על ESP32. לכן ניתן להשתמש בכל לוח פיתוח ESP32 בפרויקט זה
מדידת לחות הקרקע עם פטל פי 4: 4 שלבים
מדידת לחות הקרקע עם פטל פי 4: האם אתה יודע באיזו תדירות יש להשקות צמחים? או שפכו צמחים ואיבדו אותם. כדי לפתור את זה חשבתי שזה יהיה נסיבתי יותר אם נוכל לקבל את ערך תכולת המים בתוך האדמה על מנת לקבל החלטה להשקות את הצמחים כראוי
מדידת לחות הקרקע עם ארדואינו: 6 שלבים
מדידת לחות הקרקע באמצעות Arduino: במדריך מהיר זה, אני הולך להראות לך כיצד לקרוא חיישן לחות קרקע באמצעות arduino ולהדפיס את רמת לחות הקרקע ב- Arduino Serial Monitor. אתה יכול למצוא את ההודעה המקורית שנכתבה על ידי בסינהלה בשולי הקישור הזה
מדידת לחות הקרקע עם אמפליטודות צליל: 6 שלבים (עם תמונות)
מדידת לחות הקרקע עם אמפליטודות צליל: במדריך זה נסביר כיצד לייצר מכשיר המודד לחות קרקע בעזרת אמפליטודות צליל