Mündəricat:
- Addım 1: THINGSIO Platformasının yaradılması və daxil olması
- Addım 2: Yeni Layihə Yaratmaq
- Addım 3: Yeni Cihaz Yaratmaq
- Addım 4: Cihaz Parametrini təyin edin
- Addım 5: Cihazı yeniləyin
- Addım 6: Kodlaşdırma
- Addım 7: Board və Com Port seçimi
- Addım 8: Dövrə Bağlantıları
- Addım 9: Kompilyasiya edin və Yükləyin
- Addım 10: Serial Monitor
- Addım 11: Oxumalar
- Addım 12: Qrafik Təmsil
- Addım 13:
Video: Thingsai Buludundan istifadə edərək LDR: 13 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
HEY ….. bu gün ESP32 istifadə edərək işığın intensivliyini ölçmək və dəyərləri THINGSAI IOT bulud platformasına yerləşdirmək haqqında öyrənəcəyik.
Bu layihəni həyata keçirmək üçün tələblər var
1. ESP32 İnkişaf Şurası (ESP32 DEVKIT V1 istifadə etmişəm)
2. LDR sensoru
3. Jumper Telləri
4. THINGSAI IOT PLATFORM -da hesab
Addım 1: THINGSIO Platformasının yaradılması və daxil olması
THINGS AI hesabına daxil olun. Yenisinizsə, qeydiyyat düyməsini basaraq hesaba daxil olun və bütün etimadnamənizi doldurun. Hesabınız yaradılacaq və bundan sonra bulud platformasında işləyə və özəl layihənizi yarada biləcəksiniz
Addım 2: Yeni Layihə Yaratmaq
Hesaba daxil olduqdan sonra bir layihə yaratmaq üçün yeni layihəni vurun və sonra layihənin adını verin.
Addım 3: Yeni Cihaz Yaratmaq
Layihəni yaratdıqdan sonra etməli olduğunuz şey yeni bir cihaz yaratmaqdır. Cihazın adını verin və ya əl ilə və ya sistem tərəfindən yaradılan cihaz ID -ni daxil edin.
Addım 4: Cihaz Parametrini təyin edin
Cihaz parametrini verin və sonra parametr növünü seçin
Addım 5: Cihazı yeniləyin
Parametr seçin və sonra cihazı yeniləyin
Addım 6: Kodlaşdırma
Nümunə kodlarından esp32 kodunu seçin, kopyalayın və sonra arduino IDE -ə yapışdırın və tələbə uyğun olaraq lazımi dəyişiklikləri edin. Aşağıdakı kodu verdim
#daxil edin #daxil edin
#daxil edin
int sayı = 0, i, m, j, k;
int t; int çıxış pin = A0; // ds18b20
int sensor dəyəri;
///////////////////////////////////////// BÜTÜN BÜTÜN Bəyannamələr ////// ///////////////////////////
const char* host = "api.thingsai.io"; // OR
ev sahibi = devapi2.thethingscloud.com
const char* post_url = "/devices/deviceData"; // OR/api/v2/thingscloud2/_table/data_ac
const char* time_server = "baas.thethingscloud.com"; // bu zaman damgasını çevirməkdir
const int httpPort = 80;
const int httpsPort = 443;
const char* server = "api.thingsai.io"; // Server URL
simvol işarəsi [10];
WiFiMulti WiFiMulti;
// TCP əlaqələri yaratmaq üçün WiFiClient sinifindən istifadə edin
WiFi müştəri;
////////////////////////////////////////////////////// TIMESTAMP CALCULATION funksiyası //////// ////////////////////////////////////////// GiveMeTimestamp () {işarəsiz uzun zaman aşımı = millis (); // WiFiClient müştəri;
while (client.available () == 0)
{
if (millis () - zaman aşımı> 50000)
{
client.stop (); qaytarma 0;
}
}
while (client.available ())
{
String xətti = client.readStringUntil ('\ r'); // indexOf () smthng axtaran bir funksiyadır, tapılmazsa -1 qaytarır
int pos = line.indexOf ("\" zaman damgası / ""); // "\" zaman damgası / "" nı axtarın və sonra bütün məlumatları kopyalayın, bu sizin zaman damganız olacaq
əgər (pos> = 0)
{
int j = 0;
üçün (j = 0; j <10; j ++)
{
vaxt damgası [j] = sətir [pos + 12 + j];
}
}
}
} ////////////////////////////////////////////////////////////////////////////////////////////////////////
boş quraşdırma ()
{
Serial.begin (115200);
gecikmə (10);
// WiFi şəbəkəsinə qoşulmaqla başlayırıq
WiFiMulti.addAP ("wifi", "pswrd");
Serial.println ();
Serial.println ();
Serial.print ("WiFi gözləyin …");
isə (WiFiMulti.run ()! = WL_CONNECTED)
{
Serial.print (".");
gecikmə (500);
}
Serial.println ("");
Serial.println ("WiFi bağlıdır");
Serial.println ("IP ünvanı:"); Serial.println (WiFi.localIP ());
gecikmə (500);
}
boşluq döngəsi ()
{
int analogValue = analogRead (çıxış pin);
{/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //////////////////////
sensor dəyəri = analogRead (A0); // analoq giriş pinini oxuyun 0
sensor dəyəri = sensor dəyəri/100;
Serial. çap (sensor dəyəri, DEC); // oxunan dəyəri çap edir
Serial.print ("\ n"); // ədədlər arasında boşluq yazır
gecikmə (1000); // növbəti oxumaq üçün 100 ms gözləyin
Serial.print ("qoşulur"); Serial.println (ev sahibi); // tərs olaraq təyin olunur:- host = devapi2.thethingscloud.com və ya 139.59.26.117
//////////////////////////////////////////////////////////////// TIMESTAMP KOD SNIPPET /////////// ////////////////
Serial.println ("daxilində zaman damgası alın / n");
əgər (! client.connect (time_server, {qayıt; //*-*-*-*-*-*-*-*-*-*-*}
client.println ("GET/api/zaman damgası HTTP/1.1"); // Bu hissə nə edir, client.println almadım ("Host: baas.thethingscloud.com");
client.println ("Önbelleğe Nəzarət: önbelleği yoxdur");
client.println ("Poçtalyon-Token: ea3c18c6-09ba-d049-ccf3-369a22a284b8");
müştəri.println ();
GiveMeTimestamp (); // Serial.println serverindən zaman damgası cavabı alacaq funksiyanı çağıracaq ("zaman damgası alındı");
Serial.println (vaxt damgası);
Serial.println ("ThingsCloudPost daxilində");
String PostValue = "{" device_id / ": 61121695844, \" slave_id / ": 2";
PostValue = PostValue + ", \" dts / ":" + zaman damgası;
PostValue = PostValue +", \" data / ": {" INTENSITY / ":" +\ sensorvalue +"}" +"}";
Serial.println (PostValue);
/ * WiFiClientSecure nümunəsi yaratmaq */ WiFiClientSecure müştəri;
Serial.println ("Serverə 443 portu ilə qoşulun");
if (! client.connect (server, 443))
{
Serial.println ("Bağlantı uğursuz oldu!");
}
başqa
{Serial.println ("Serverə qoşuldu!"); / * HTTP sorğusu yaradın */
client.println ( POST/cihazlar/cihazData
client.println ("Host: api.thingsai.io"); //client.println("Bağlantı: yaxın "); cl
ient.println ("Məzmun Növü: application/json");
client.println ("cache-control: no-cache");
client.println ("Yetkilendirme: BearereyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC2PNT" client.print ("Məzmun-Uzunluq:");
müştəri.println (PostValue.length ());
müştəri.println ();
client.println (PostValue); /////////////////////////////////////////////// Buluddakı məlumatların yerləşdirilməsi tamamlandı və indi cavab formasını buluddan əldə edin server ////////////////////
Serial.print ("Cavab gözləyir");
while (! client.available ()) {
gecikmə (50); //
Serial.print (".");
} / * əgər məlumat varsa, alın və Terminalda çap edin * /
while (client.available ())
{
char c = client.read ();
Serial.write (c);
}
/ * server bağlantısı kəsilərsə, müştərini dayandırın */
əgər (! müştəri. bağlı ())
{
Serial.println ();
Serial.println ("Server bağlantısı kəsildi");
client.stop ();
}
} Serial.println ("/////////////////////// SONU //////////////////// /");
gecikmə (3000); }}
Addım 7: Board və Com Port seçimi
Alətlərdən lövhəni seçin və sonra əlaqə limanını seçin
Addım 8: Dövrə Bağlantıları
Kodlaşdırma sonra aşağıda qeyd edildiyi kimi aşağıdakı əlaqələri qurun
BAĞLANTILAR:
LDR sensorunun esp32 -dən GND -ə GND
LDR Vcc -ə 3V3 0f esp32
LDR -nin A0 -na esp32 -nin VP -si
Addım 9: Kompilyasiya edin və Yükləyin
kodu esp32 -ə yığın və yükləyin və sonra oxunuşları serial monitordan oxuyun. Nəticə belə bir şey göstərəcək
Addım 10: Serial Monitor
Dəyərlər serial monitorda əldə edilir və sonra THINGSAI IOT Cloud platformasına göndərilir.
Addım 11: Oxumalar
Bu, esp32 lövhəsindən əldə edilən dəyərləri göstərir.
Addım 12: Qrafik Təmsil
Bu, əldə edilən dəyərlərin qrafik təsviridir. Dərsliyin sonu budur. Ümid edirəm başa düşdün. Çox sağ ol
Tövsiyə:
ESP-01 və DHT və AskSensors Buludundan İstifadə və Nəmlik Monitorinqi: 8 Addım
ESP-01 & DHT və AskSensors Buludundan istifadə edərək Temperatur və Rütubətin İzlənməsi: Bu təlimatda IOT-MCU/ESP-01-DHT11 lövhəsi və AskSensors IoT Platformasından istifadə edərək temperatur və rütubət ölçülərinin necə izləniləcəyini öyrənəcəyik. .Bu proqram üçün IOT-MCU ESP-01-DHT11 modulunu seçirəm, çünki
Arduino istifadə edərək İnternetdən istifadə edərək bütün dünyanı idarə et: 4 addım
Arduino istifadə edərək İnternetdən istifadə edərək bütün dünyanı idarə et: Salam, mən Rithikəm. Telefonunuzdan istifadə edərək internetə nəzarət edən bir led quracağıq. Arduino IDE və Blynk kimi proqramlardan istifadə edəcəyik. Bu çox sadədir və uğur qazansanız istədiyiniz qədər elektron komponenti idarə edə bilərsiniz
Python istifadə edərək Raspberry Pi və AIS328DQTR istifadə edərək sürətlənməni izləyin: 6 addım
Python istifadə edərək Raspberry Pi və AIS328DQTR istifadə edərək Sürətləndirməni izləyin: Sürətləndirmə sonsuzdur, düşünürəm ki, Fizikanın bəzi qanunlarına görə. Sahilə çıxan ən sürətli məxluq, bir anda ən yüksək sürətindən istifadə edərək ovunu tutur
Arduino UNO istifadə edərək pilotsuz təyyarə necə etmək olar - Mikrokontrolördən istifadə edərək bir Quadcopter hazırlayın: 8 addım (şəkillərlə)
Arduino UNO istifadə edərək pilotsuz təyyarə necə etmək olar | Mikrokontrolördən istifadə edərək Quadcopter hazırlayın: Giriş Youtube Kanalımı Ziyarət Edin Drone almaq üçün çox bahalı bir gadget (məhsul) təşkil edir. Bu yazıda necə ucuz satacağımı müzakirə edəcəyəm? Ucuz qiymətə öz əlinizlə bunu necə edə bilərsiniz … Yaxşı Hindistanda bütün materiallar (mühərriklər, ESClər
Neopixel Ws2812 M5stick-C ilə Göy qurşağı LED Glow - Arduino IDE -dən istifadə edərək M5stack M5stick C -dən istifadə edərək Neopixel Ws2812 -də Göy qurşağının Çalışması: 5 addım
Neopixel Ws2812 M5stick-C ilə Göy qurşağı LED Glow | Arduino IDE istifadə edərək M5stack M5stick C istifadə edərək Neopixel Ws2812 üzərində Göy qurşağı çalıştırın: Salam uşaqlar bu təlimatlarda Arduino IDE ilə m5stack m5stick-C inkişaf lövhəsi ilə neopixel ws2812 LED və ya led şerit və ya led matris və ya led üzük istifadə etməyi öyrənəcəyik. onunla bir göy qurşağı nümunəsi