תוכן עניינים:

LDR שימוש בענן Thingsai: 13 שלבים
LDR שימוש בענן Thingsai: 13 שלבים

וִידֵאוֹ: LDR שימוש בענן Thingsai: 13 שלבים

וִידֵאוֹ: LDR שימוש בענן Thingsai: 13 שלבים
וִידֵאוֹ: ארדואינו-פרויקטים,הכנה לבחינת הגמר על הפרויקט,הסבר על חיישר אור ldr כולל הסבר על המרה מאנלוג לדיגיטל 2024, נוֹבֶמבֶּר
Anonim
LDR באמצעות ענן Thingsai
LDR באמצעות ענן Thingsai

היי …. היום נלמד על מדידת עוצמת האור ופרסום הערכים בפלטפורמת הענן של THINGSAI IOT באמצעות ESP32.

הדרישות לביצוע פרויקט זה הן

1. לוח פיתוח ESP32 (השתמשתי ב- ESP32 DEVKIT V1)

2. חיישן LDR

3. חוטי מגשר

4. חשבון ב- THINGSAI IOT PLATFORM

שלב 1: יצירה והתחברות לפלטפורמת THINGSIO

יצירה והתחברות לפלטפורמת THINGSIO
יצירה והתחברות לפלטפורמת THINGSIO

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

שלב 2: יצירת פרויקט חדש

יצירת פרויקט חדש
יצירת פרויקט חדש

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

שלב 3: יצירת מכשיר חדש

יצירת מכשיר חדש
יצירת מכשיר חדש

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

שלב 4: הגדרת פרמטר התקן

הגדרת פרמטר התקן
הגדרת פרמטר התקן

תן את פרמטר המכשיר ולאחר מכן בחר את סוג הפרמטר

שלב 5: עדכון המכשיר

מעדכן את המכשיר
מעדכן את המכשיר

בחר את הפרמטר ולאחר מכן עדכן את המכשיר

שלב 6: קידוד

סִמוּל
סִמוּל

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

#כלול #כלול

#לִכלוֹל

int count = 0, i, m, j, k;

int t; int outputpin = A0; // ds18b20

int sensorvalue;

/////////////////////////// //////////////////////////

const char* host = "api.thingsai.io"; // או

מארח = devapi2.thethingscloud.com

const char* post_url = "/devices/deviceData"; // OR/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;

////////////////////////////////////////// פונקציית חישוב הזמן //////// ////////////////////////////>/ // לקוח 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);

עיכוב (10);

// אנו מתחילים בחיבור לרשת WiFi

WiFiMulti.addAP ("wifi", "pswrd");

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);

}

לולאת חלל ()

{

int analogValue = analogRead (outputpin);

שלח את השאילתה וקבל את התשובה /// //////////////////////

sensorvalue = analogRead (A0); // קרא את סיכת הכניסה האנלוגית 0

sensorvalue = sensorvalue/100;

Serial.print (sensorvalue, DEC); // מדפיס את הערך הנקרא

Serial.print ("\ n"); // מדפיס רווח בין המספרים

עיכוב (1000); // המתן 100 ms לקריאה הבאה

Serial.print ("מתחבר אל"); Serial.println (מארח); // מוגדר כלפי מעלה:- host = devapi2.thethingscloud.com או 139.59.26.117

////////////////////////////////////////// SNIPPET CODE ////////////////

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");

String PostValue = "{" device_id / ": 61121695844, \" slave_id / ": 2";

PostValue = PostValue + ", \" dts / ":" + חותמת זמן;

PostValue = PostValue +", \" data / ": {" INTENSITY / ":" +\ sensorvalue +"}" +"}";

Serial.println (PostValue);

/ * צור מופע של WiFiClientSecure */ WiFiClientSecure client;

Serial.println ("התחבר לשרת דרך יציאה 443");

אם (! client.connect (שרת, 443))

{

Serial.println ("החיבור נכשל!");

}

אַחֵר

{Serial.println ("מחובר לשרת!"); / * צור בקשת HTTP */

client.println ( POST/devices/deviceData

client.println ("מארח: api.thingsai.io"); //client.println("חיבור: קרוב "); cl

ient.println ("סוג תוכן: יישום/json");

client.println ("cache-control: no-cache");

client.println ("הרשאה: BearereyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC2PNy)" client.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); }}

שלב 7: בחירת לוח ולוח נמל

בחירת הלוח ונמל קום
בחירת הלוח ונמל קום

מתוך הכלים בחר את הלוח ולאחר מכן בחר את יציאת ה- com

שלב 8: חיבורי מעגלים

חיבורי מעגלים
חיבורי מעגלים
חיבורי מעגלים
חיבורי מעגלים
חיבורי מעגלים
חיבורי מעגלים

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

חיבורים:

GND של esp32 עד GND של חיישן LDR

3V3 0f esp32 ל- Vcc של ה- LDR

סמנכ ל esp32 ל- A0 של ה- LDR

שלב 9: הידור והעלאה

הידור והעלאה
הידור והעלאה

הידור והעלה את הקוד ל- esp32 ולאחר מכן קרא את הקריאות מהצג הטורי. זה יראה תוצאה כזו

שלב 10: צג סידורי

צג סידורי
צג סידורי

הערכים מתקבלים במסך הטורי ואז הם נשלחים לפלטפורמת הענן THINGSAI IOT.

שלב 11: קריאות

קריאות
קריאות

זה מראה את הערכים המתקבלים מלוח esp32.

שלב 12: ייצוג גרפי

ייצוג גרפי
ייצוג גרפי

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

מוּמלָץ: