Բովանդակություն:
- Քայլ 1. Ստեղծել և մուտք գործել THINGSIO հարթակ
- Քայլ 2: Նոր նախագծի ստեղծում
- Քայլ 3: Նոր սարքի ստեղծում
- Քայլ 4: Սարքի պարամետրի սահմանում
- Քայլ 5: Սարքի թարմացում
- Քայլ 6: Կոդավորում
- Քայլ 7. Խորհրդի և Com Port- ի ընտրություն
- Քայլ 8: Շղթայի միացումներ
- Քայլ 9: Կազմել և վերբեռնել
- Քայլ 10: Սերիական մոնիտոր
- Քայլ 11: Ընթերցումներ
- Քայլ 12: Գրաֆիկական ներկայացում
- Քայլ 13:
Video: LDR Thingsai Cloud- ի օգտագործմամբ. 13 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
HEY…..այսօր մենք կսովորենք լույսի ինտենսիվությունը չափելու և արժեքները տեղադրելու THINGSAI IOT ամպային հարթակում ՝ օգտագործելով ESP32:
Այս նախագիծը կատարելու պահանջներն են
1. ESP32 զարգացման խորհուրդ (ես օգտագործել եմ ESP32 DEVKIT V1)
2. LDR սենսոր
3. Jumper լարերը
4. Հաշիվ THINGSAI IOT PLATFORM- ում
Քայլ 1. Ստեղծել և մուտք գործել THINGSIO հարթակ
Մուտք գործեք THINGS AI հաշիվ: Եթե դուք նորեկ եք, ապա գրանցվեք հաշվին `սեղմելով գրանցման կոճակը և լրացրեք բոլոր հավատարմագրերը: Ձեր հաշիվը կստեղծվի, և դրանից հետո դուք կկարողանաք աշխատել ամպային հարթակում և ստեղծել ձեր անհատական նախագիծը
Քայլ 2: Նոր նախագծի ստեղծում
Հաշիվ մուտք գործելուց հետո, նախագիծ ստեղծելու համար պարզապես կտտացրեք նոր նախագծի վրա, այնուհետև տվեք ծրագրի անունը:
Քայլ 3: Նոր սարքի ստեղծում
Նախագծի ստեղծումից հետո հաջորդ բանը, որ պետք է անեք, նոր սարքի ստեղծումն է: Տվեք սարքի անունը և մուտքագրեք սարքի ID- ն ՝ ձեռքով կամ ստեղծված համակարգով:
Քայլ 4: Սարքի պարամետրի սահմանում
Տվեք սարքի պարամետրը, ապա ընտրեք պարամետրի տեսակը
Քայլ 5: Սարքի թարմացում
Ընտրեք պարամետրը և ապա թարմացրեք սարքը
Քայլ 6: Կոդավորում
Նմուշի կոդերից ընտրեք esp32- ի կոդը պատճենեք այն, այնուհետև տեղադրեք arduino IDE- ում և կատարեք անհրաժեշտ փոփոխությունները ըստ պահանջի: Ես տվել եմ ներքևի ծածկագիրը
#ներառել #ներառել
#ներառում
int հաշվարկ = 0, i, m, j, k;
int t; int outputpin = A0; // ds18b20
int սենսորային արժեք;
///////////////////////////////////////// ԲՈԼՈՐ ՀԱՅՏԱՐԱՐՈԹՅՈՆՆԵՐԸ Ամպի համար ////// //////////////////////////
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* սերվեր = "api.thingsai.io"; // Սերվերի URL
char timestamp [10];
WiFiMulti WiFiMulti;
// Օգտագործեք WiFiClient դասը ՝ TCP կապեր ստեղծելու համար
WiFiClient հաճախորդ;
//////////////////////////////////////// TIMESTAMP ՀԱՇՎԱՐԿ գործառույթ ///////// //////////////////////////////// int GiveMeTimestamp () {unsigned long timeout = millis (); // WiFiClient հաճախորդ;
while (client.available () == 0)
{
if (millis () - timeout> 50000)
{
client.stop (); վերադարձ 0;
}
}
while (client.available ())
{
Լարային գիծ = client.readStringUntil ('\ r'); // indexOf () -ը smthng որոնելու գործառույթ է, այն չգտնվելու դեպքում վերադարձնում է -1
int pos = line.indexOf ("\" ժամանակային նշան / ""); // որոնման համար "\" timestamp / "" պատասխանների սկզբից ստացել և պատճենել բոլոր տվյալները դրանից հետո, դա կլինի քո ժամադրոշմը
եթե (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 (ելքային փին);
{//////////////////////////////////////// Ո SԱՐԿԵԼ ՀԱՐUԸ ԵՎ ՊԱՏԱՍԽԱՆԵԼ ՊԱՏԱՍԽԱՆԸ /// /////////////////////
sensorvalue = analogRead (A0); // կարդալ անալոգային մուտքային փին 0
sensorvalue = sensorvalue/100;
Serial.print (sensorvalue, DEC); // տպում է կարդացված արժեքը
Serial.print ("\ n"); // տպում է տարածություն թվերի միջև
ուշացում (1000); // սպասեք 100 ms հաջորդ ընթերցմանը
Serial.print («միանալով»); Serial.println (հաղորդավար); // սահմանված է գլխիվայր.- հյուրընկալող = devapi2.thethingscloud.com կամ 139.59.26.117
////////////////////////////////////// TIMESTAMP CODE SNIPPET /////////// /////////////////
Serial.println ("ներսում ստացեք ժամանակային նշան / n");
եթե (! client.connect (time_server, {վերադարձ; //*-*-*-*-*-*-*-*-*-*}
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 հաճախորդի օրինակ;
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.kaY6OMj5cYlWNqC2PNTkXs9PKy6_m9tdW5AG7ajfVlY"); client.print ("Բովանդակություն-երկարություն.");
client.println (PostValue.length ());
client.println ();
client.println (PostValue); /////////////////////////////////// ամպի վրա տվյալների տեղադրումը կատարված է, և այժմ ստացեք պատասխանի ձևը ամպ սերվեր ///////////////////
Serial.print («Սպասում ենք պատասխանին»);
իսկ (! client.available ()) {
ուշացում (50); //
Serial.print (".");
} / * եթե տվյալները հասանելի են, ստացեք և տպեք տերմինալում * /
while (client.available ())
{
char c = client.read ();
Սերիա. Գրել (գ);
}
/ * եթե սերվերն անջատված է, դադարեցրեք հաճախորդին */
եթե (! client.connected ())
{
Serial.println ();
Serial.println ("Սերվերն անջատված է");
client.stop ();
}
} Serial.println ("///////////////////// ՎԵՐ END /////////////////// /");
ուշացում (3000); }}
Քայլ 7. Խորհրդի և Com Port- ի ընտրություն
Գործիքներից ընտրեք տախտակը և այնուհետև ընտրեք com պորտը
Քայլ 8: Շղթայի միացումներ
Կոդավորումը կատարվում է, ապա կատարեք հետևյալ կապերը, ինչպես նշված է ստորև
ՄԻԱՈՄՆԵՐ.
GND- ի esp32- ից GND- ի LDR տվիչի
3V3 0f esp32 դեպի LDR- ի Vcc
Esp32- ի VP- ն LDR- ի A0- ին
Քայլ 9: Կազմել և վերբեռնել
կազմեք և վերբեռնեք կոդը esp32- ում, այնուհետև կարդացեք ընթերցումները սերիական մոնիտորից: Դա ցույց կտար արդյունք այսպիսի մի բան
Քայլ 10: Սերիական մոնիտոր
Արժեքները ստացվում են սերիական մոնիտորի վրա, այնուհետև դրանք ուղարկվում են THINGSAI IOT Cloud հարթակ:
Քայլ 11: Ընթերցումներ
Սա ցույց է տալիս esp32 տախտակից ստացված արժեքները:
Քայլ 12: Գրաֆիկական ներկայացում
Սա ստացված արժեքների գրաֆիկական ներկայացումն է: Դասընթացն ավարտվում է դրանով: Հուսով եմ հասկացաք: Շնորհակալություն
Խորհուրդ ենք տալիս:
[2020] Երկու (x2) միկրո օգտագործմամբ ՝ RC մեքենան կառավարելու համար. 6 քայլ (նկարներով)
[2020] Երկու (x2) միկրո. Բիթ օգտագործելով RC մեքենան կառավարելու համար. Եթե ունեք երկու (x2) միկրո: բիթ, մտածե՞լ եք դրանք օգտագործել RC մեքենայի հեռակառավարման համար: Դուք կարող եք կառավարել RC մեքենան ՝ օգտագործելով միկրո
Պիեզոէլեկտրական ցնցումների հպման տվիչի մոդուլի օգտագործմամբ հայտնաբերեք թրթռանքներ. 6 քայլ
Պիեզոէլեկտրական ցնցման հպման տվիչի մոդուլի օգտագործմամբ հայտնաբերեք թրթռումներ. Այս ձեռնարկում մենք կսովորենք, թե ինչպես կարելի է հայտնաբերել ցնցումների թրթռումները ՝ օգտագործելով պարզ պիեզոէլեկտրական սենսորային թրթռումային մոդուլ և Visuino: Դիտեք ցուցադրական տեսանյութ
D-882 տրանզիստորի օգտագործմամբ 3 էլեկտրատեխնիկայի հիանալի նախագիծ. 9 քայլ
D-882 տրանզիստորի օգտագործմամբ 3 հիանալի էլեկտրոնիկայի նախագիծ. JLCPCB- ն Չինաստանում PCB- ի ամենամեծ նախատիպ ձեռնարկությունն է և բարձր տեխնոլոգիական արտադրող, որը մասնագիտացած է արագ PCB նախատիպի և փոքր խմբաքանակի PCB- ի արտադրության մեջ, PCB- ի արտադրության ավելի քան 10 տարվա փորձով: Նրանք ի վիճակի են ապահովել ծախսարդյունավետ լուծում
Funվարճալի սպորտ `MakeyMakey- ի օգտագործմամբ. 3 քայլ
MakeyMakey- ի օգտագործմամբ զվարճալի սպորտ. Այս նախագծի նպատակն է խրախուսել սպորտը տեխնոլոգիայի կիրառման միջոցով, քանի որ այն խթան է տալիս երաժշտություն նվագելով և միավորներ հավաքելով
Շարժման դետեկտոր ՝ օգտագործելով Thingsai.io Iot Cloud պլատֆորմը ՝ 6 քայլ
Շարժման դետեկտոր, որն օգտագործում է Thingsai.io Iot Cloud պլատֆորմը. Այս ձեռնարկում ես պատրաստվում եմ բացատրել շարժման հայտնաբերման մասին ՝ օգտագործելով PIR տվիչ և Esp32 ՝ IOT ամպային հարթակ Thingai.io- ի հետ միասին: