INHOUDSOPGAWE:
- Stap 1: Skep en meld aan by die THINGSIO -platform
- Stap 2: Skep nuwe projek
- Stap 3: Skep 'n nuwe toestel
- Stap 4: Definieer toestelparameter
- Stap 5: Werk die toestel op
- Stap 6: Kodering
- Stap 7: Keuse van bord en kompoort
- Stap 8: Kringaansluitings
- Stap 9: Stel op en laai op
- Stap 10: Serial Monitor
- Stap 11: Lesings
- Stap 12: Grafiese voorstelling
- Stap 13:
Video: LDR Gebruik Thingsai Cloud: 13 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:26
HEY …. vandag leer ons hoe ons die intensiteit van lig meet en die waardes op die THINGSAI IOT -wolkplatform plaas deur ESP32 te gebruik.
Die vereistes om hierdie projek te doen is
1. ESP32 Development Board (ek het ESP32 DEVKIT V1 gebruik)
2. LDR -sensor
3. Jumper Wires
4. Rekening in THINGSAI IOT PLATFORM
Stap 1: Skep en meld aan by die THINGSIO -platform
Meld aan by die THINGS AI -rekening. As u nuut is, registreer u dan op die rekening deur op die registrasie -knoppie te druk en vul al die inskrywings in. U rekening sal geskep word en vanaf dan kan u op die wolkplatform werk en u persoonlike projek skep
Stap 2: Skep nuwe projek
Nadat u by die rekening aangemeld het, klik op die nuwe projek om 'n projek te skep en gee die projeknaam.
Stap 3: Skep 'n nuwe toestel
Nadat u die projek geskep het, is die volgende ding wat u moet doen om 'n nuwe toestel te skep. Gee die toestelnaam en voer die toestel -ID handmatig in, óf deur die stelsel gegenereer.
Stap 4: Definieer toestelparameter
Gee die apparaatparameter en kies dan die tipe parameter
Stap 5: Werk die toestel op
Kies die parameter en werk dan die toestel op
Stap 6: Kodering
Kies die kode van esp32 uit die voorbeeldkodes en plak dit dan in die arduino IDE en maak die nodige veranderinge volgens die vereiste. Ek het die kode hieronder gegee
#include #include
#insluit
int telling = 0, i, m, j, k;
int t; int outputpin = A0; // ds18b20
int sensorwaarde;
////////////////////////////////////// ////////////////////////////
const char* host = "api.thingsai.io"; // OF
gasheer = devapi2.thethingscloud.com
const char* post_url = "/devices/deviceData"; // OF/api/v2/thingscloud2/_table/data_ac
const char* time_server = "baas.thethingscloud.com"; // dit is om die tydstempel om te skakel
const int httpPort = 80;
const int httpsPort = 443;
const char* bediener = "api.thingsai.io"; // Bediener -URL
char tydstempel [10];
WiFiMulti WiFiMulti;
// Gebruik WiFiClient -klas om TCP -verbindings te skep
WiFiClient -kliënt;
////////////////////////////////////////////// TIMESTAMP BEREKENING funksie //////////////////////////////////////// int GiveMeTimestamp () {unsigned long timeout = millis (); // WiFiClient -kliënt;
terwyl (client.available () == 0)
{
as (millis () - time -out> 50000)
{
client.stop (); terugkeer 0;
}
}
terwyl (client.available ())
{
String line = client.readStringUntil ('\ r'); // indexOf () is 'n funksie om na smthng te soek, dit gee -1 as dit nie gevind word nie
int pos = line.indexOf ("\" tydstempel / ""); // soek na "\" tydstempel / "" vanaf die begin van die antwoord, en kopieer daarna alle data, dit is u tydstempel
as (pos> = 0)
{
int j = 0;
vir (j = 0; j <10; j ++)
{
tydstempel [j] = reël [pos + 12 + j];
}
}
}
} ////////////////////////////////////////////////////////////////////////////////////////////////////////
leemte opstelling ()
{
Serial.begin (115200);
vertraging (10);
// Ons begin deur aan te sluit op 'n WiFi -netwerk
WiFiMulti.addAP ("wifi", "pswrd");
Serial.println ();
Serial.println ();
Serial.print ("Wag vir WiFi …");
terwyl (WiFiMulti.run ()! = WL_CONNECTED)
{
Serial.print (".");
vertraging (500);
}
Serial.println ("");
Serial.println ("WiFi gekoppel");
Serial.println ("IP -adres:"); Serial.println (WiFi.localIP ());
vertraging (500);
}
leemte lus ()
{
int analogValue = analogRead (uitvoerpen);
{////////////////////////////////////////// STUUR DIE VRAAG EN ONTVANG DIE ANTWOORD /// ////////////////////////
sensorwaarde = analogRead (A0); // lees analoog invoerpen 0
sensorwaarde = sensorwaarde/100;
Serial.print (sensorwaarde, DEC); // druk die geleesde waarde af
Serial.print ("\ n"); // druk 'n spasie tussen die getalle
vertraging (1000); // wag 100 ms vir die volgende lesing
Serial.print ("verbind met"); Serial.println (gasheer); // gedefinieerde onderstebo:- gasheer = devapi2.thethingscloud.com of 139.59.26.117
//////////////////////////////////////////// TIMESTAMP CODE SNIPPET //////////// /////////////////
Serial.println ("binne kry tydstempel / n");
as (! client.connect (time_server, {terugkeer; //*-*-*-*-*-*-*-*-*-*}
client.println ("GET/api/tydstempel HTTP/1.1"); // Wat hierdie deel doen, ek het nie client.println gekry nie ("Host: baas.thethingscloud.com");
client.println ("Cache-beheer: geen cache");
client.println ("Postman-Token: ea3c18c6-09ba-d049-ccf3-369a22a284b8");
client.println ();
GiveMeTimestamp (); // dit sal die funksie noem wat die reaksie van die tydstempel van die bediener kry Serial.println ("tydstempel ontvang");
Serial.println (tydstempel);
Serial.println ("binne ThingsCloudPost");
String PostValue = "{" device_id / ": 61121695844, \" slave_id / ": 2";
PostValue = PostValue + ", \" dts / ":" + tydstempel;
PostValue = PostValue +", \" data / ": {" INTENSITY / ":" +\ sensorvalue +"}" +"}";
Serial.println (PostValue);
/ * skep 'n voorbeeld van WiFiClientSecure */ WiFiClientSecure -kliënt;
Serial.println ("Koppel aan bediener via poort 443");
as (! client.connect (bediener, 443))
{
Serial.println ("Verbinding misluk!");
}
anders
{Serial.println ("gekoppel aan bediener!"); / * skep HTTP -versoek */
client.println ( POST/toestelle/deviceData
client.println ("Gasheer: api.thingsai.io"); //client.println("Connection: close "); kl
ient.println ("Inhoudstipe: toepassing/json");
client.println ("cache-control: no-cache");
client.println ("Magtiging: BearereyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC9PN5" client.print ("Inhoudlengte:");
client.println (PostValue.length ());
client.println ();
client.println (PostValue); ///////////////////////////////////////////////////////// bediener //////////////////////
Serial.print ("Wag vir reaksie");
terwyl (! client.available ()) {
vertraging (50); //
Serial.print (".");
} / * indien data beskikbaar is, ontvang en druk dit dan na Terminal * /
terwyl (client.available ())
{
char c = client.read ();
Reeks.skryf (c);
}
/ * as die bediener ontkoppel het, stop die kliënt */
as (! client.connected ())
{
Serial.println ();
Serial.println ("Server ontkoppel");
client.stop ();
}
} Serial.println ("//////////////////////// EINDE //////////////////// /");
vertraging (3000); }}
Stap 7: Keuse van bord en kompoort
Kies die bord uit die gereedskap en kies dan die com -poort
Stap 8: Kringaansluitings
Kodering word gedoen, en maak dan die volgende verbindings soos hieronder genoem
VERBINDINGS:
GND van esp32 tot GND van die LDR -sensor
3V3 0f esp32 na die Vcc van die LDR
VP van esp32 na die A0 van die LDR
Stap 9: Stel op en laai op
stel die kode saam en laai dit op in die esp32 en lees dan die lesings van die seriële monitor. Dit sou so 'n resultaat toon
Stap 10: Serial Monitor
Die waardes word op die seriële monitor verkry en dan na die THINGSAI IOT Cloud -platform gestuur.
Stap 11: Lesings
Dit toon die waardes verkry uit die esp32 -bord.
Stap 12: Grafiese voorstelling
Dit is die grafiese voorstelling van die verkryde waardes. Dit is die einde van die tutoriaal. Hoop jy het verstaan. Dankie
Aanbeveel:
Bewegingsdetektor met behulp van Thingsai.io Iot Cloud Platform: 6 stappe
Bewegingsdetektor met behulp van Thingsai.io Iot Cloud Platform: In hierdie tutoriaal gaan ek verduidelik oor bewegingsopsporing met behulp van 'n PIR -sensor en Esp32 saam met 'n IOT -wolkplatform Thingai.io
Hoe om Wemos ESP-Wroom-02 D1 Mini WiFi-module ESP8266 + 18650 te gebruik deur Blynk te gebruik: 10 stappe
Hoe om Wemos ESP-Wroom-02 D1 Mini WiFi-module ESP8266 + 18650 te gebruik deur Blynk te gebruik: Spesifikasie: Versoenbaar met nodemcu 18650 laaistelselintegrasie aansluiting kan gebruik word vir slaapmodus · 1 voeg by
Hoe om Mac Terminal te gebruik en hoe om sleutelfunksies te gebruik: 4 stappe
Hoe om Mac Terminal te gebruik en hoe om belangrike funksies te gebruik: Ons sal u wys hoe u die MAC Terminal kan oopmaak. Ons sal u ook 'n paar funksies in die Terminal wys, soos ifconfig, veranderende gidse, toegang tot lêers en arp. Met Ifconfig kan u u IP -adres en u MAC -advertensie nagaan
Hoe om Arduino WeMos D1 WiFi UNO ESP8266 IOT IDE -versoenbare bord te gebruik deur Blynk te gebruik: 10 stappe
Hoe om Arduino WeMos D1 WiFi UNO ESP8266 IOT IDE -versoenbare bord te gebruik deur Blynk te gebruik: Arduino WeMos D1 WiFi UNO ESP8266 IOT IDE -versoenbare bord Beskrywing: WiFi ESP8266 Development Board WEMOS D1. WEMOS D1 is 'n WIFI -ontwikkelingsbord gebaseer op ESP8266 12E. Die funksionering is soortgelyk aan dié van NODEMCU, behalwe dat die hardeware gebou is
Gebruik Orange Pi sonder monitor deur SSH- en VNC -bediener te gebruik: 6 stappe
Gebruik Orange Pi sonder monitor deur SSH- en VNC -bediener te gebruik: Orange Pi is soos 'n mini -rekenaar. Dit het alle basiese poorte wat 'n normale rekenaar het. Net soos HDMIUSBEthernetIT het 'n paar spesiale poorte, soos USB OTGGPIO Headers, SD -kaartgleuf, parallelle kamerapoort As u 'n oranje pi wil gebruik, moet u 'n behoefte hê