Sisällysluettelo:
- Vaihe 1: THINGSIO -alustan luominen ja sisäänkirjautuminen
- Vaihe 2: Uuden projektin luominen
- Vaihe 3: Uuden laitteen luominen
- Vaihe 4: Laitteen parametrin määrittäminen
- Vaihe 5: Laitteen päivittäminen
- Vaihe 6: Koodaus
- Vaihe 7: Hallituksen ja Com -portin valinta
- Vaihe 8: Piiriliitännät
- Vaihe 9: Käännä ja lataa
- Vaihe 10: Sarjamonitori
- Vaihe 11: Lukemat
- Vaihe 12: Graafinen esitys
- Vaihe 13:
Video: LDR Thingsai Cloudin avulla: 13 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:02
HEI….. tänään opimme valon voimakkuuden mittaamisesta ja arvojen julkaisemisesta THINGSAI IOT -pilvialustalle ESP32: n avulla.
Tämän projektin toteuttamisen edellytykset ovat
1. ESP32 Development Board (olen käyttänyt ESP32 DEVKIT V1)
2. LDR -anturi
3. Hyppyjohdot
4. Tili THINGSAI IOT -ALUSTALLA
Vaihe 1: THINGSIO -alustan luominen ja sisäänkirjautuminen
Kirjaudu THINGS AI -tilille. Jos olet uusi, rekisteröidy tilille painamalla rekisteröintipainiketta ja täytä kaikki käyttäjätiedot. Tilisi luodaan ja siitä lähtien voit työskennellä pilvialustalla ja luoda mukautetun projektisi
Vaihe 2: Uuden projektin luominen
Kun olet kirjautunut tilille, luo projekti napsauttamalla uutta projektia ja antamalla sitten projektin nimi.
Vaihe 3: Uuden laitteen luominen
Kun olet luonut projektin, seuraavaksi sinun on luotava uusi laite. anna laitteen nimi ja kirjoita laitteen tunnus joko manuaalisesti tai järjestelmän luoma.
Vaihe 4: Laitteen parametrin määrittäminen
Anna laiteparametri ja valitse sitten parametrin tyyppi
Vaihe 5: Laitteen päivittäminen
Valitse parametri ja päivitä laite
Vaihe 6: Koodaus
Valitse näytekoodeista esp32 -koodi ja kopioi se ja liitä se arduino IDE: hen ja tee tarvittavat muutokset vaatimuksen mukaisesti. Annoin alla olevan koodin
#Sisällytä #Sisällytä
#sisältää
int -luku = 0, i, m, j, k;
int t; int outputpin = A0; // ds18b20
int anturin arvo;
///////////////////////////////////////////////////////////////////// KAIKKI ILMOITUKSET PILVILLE ////// /////////////////////////
const char* isäntä = "api.thingsai.io"; // TAI
isäntä = devapi2.thethingscloud.com
const char* post_url = "/devices/deviceData"; // TAI/api/v2/thingscloud2/_table/data_ac
const char* time_server = "baas.thethingscloud.com"; // tämä on aikaleiman muuntaminen
const int httpPort = 80;
const int httpsPort = 443;
const char* palvelin = "api.thingsai.io"; // Palvelimen URL -osoite
char -aikaleima [10];
WiFiMulti WiFiMulti;
// Käytä WiFiClient -luokkaa TCP -yhteyksien luomiseen
WiFiClient -asiakas;
///////////////////////////////////////////////////////////////////// AIKAISLEIMAN LASKELU -funktio //////// /////////////////////////////// int GiveMeTimestamp () {unsigned long timeout = millis (); // WiFiClient -asiakas;
kun taas (client.available () == 0)
{
jos (millis () - aikakatkaisu> 50000)
{
client.stop (); palauta 0;
}
}
kun taas (client.available ())
{
Merkkijono = client.readStringUntil ('\ r'); // indexOf () on smthng -hakutoiminto, se palauttaa -1, jos sitä ei löydy
int pos = line.indexOf ("\" aikaleima / ""); // etsi "\" aikaleima / "" vastauksen alusta ja kopioi kaikki tiedot sen jälkeen, se on aikaleimasi
jos (pos> = 0)
{
int j = 0;
(j = 0; j <10; j ++)
{
aikaleima [j] = rivi [pos + 12 + j];
}
}
}
} ////////////////////////////////////////////////////////////////////////////////////////////////////////
mitätön asennus ()
{
Sarja.alku (115200);
viive (10);
// Aloitamme muodostamalla yhteyden WiFi -verkkoon
WiFiMulti.addAP ("wifi", "pswrd");
Sarja.println ();
Sarja.println ();
Serial.print ("Odota WiFi -yhteyttä …");
kun taas (WiFiMulti.run ()! = WL_CONNECTED)
{
Serial.print (".");
viive (500);
}
Serial.println ("");
Serial.println ("WiFi -yhteys");
Serial.println ("IP -osoite:"); Serial.println (WiFi.localIP ());
viive (500);
}
tyhjä silmukka ()
{
int analogValue = analogRead (outputpin);
{////////////////////////////////////////////////////// LÄHETÄ KYSYMYS JA VASTAA VASTAUS /// /////////////////////
anturin arvo = analoginen luku (A0); // lue analogisen tulon nasta 0
anturin arvo = anturin arvo/100;
Sarjajälki (anturin arvo, DEC); // tulostaa luetun arvon
Serial.print ("\ n"); // tulostaa välilyönnin numeroiden väliin
viive (1000); // odota 100 ms seuraavaa lukemista
Serial.print ("yhdistäminen"); Serial.println (isäntä); // määritelty ylösalaisin:- isäntä = devapi2.thethingscloud.com tai 139.59.26.117
/////////////////////////////////////////////////////////////////////////////////////////////// ////////////////
Serial.println ("inside get timestamp / n");
if (! client.connect (aikapalvelin, {paluu; //*-*-*-*-*-*-*-*-*-*}
client.println ("GET/api/aikaleima HTTP/1.1"); // Mitä tämä osa tekee, en saanut client.println ("Isäntä: baas.thethingscloud.com");
client.println ("Välimuistin hallinta: ei välimuistia");
client.println ("Postimies-tunnus: ea3c18c6-09ba-d049-ccf3-369a22a284b8");
client.println ();
GiveMeTimestamp (); // se kutsuu funktion, joka saa aikaleiman vastauksen palvelimelta Serial.println ("aikaleima vastaanotettu");
Serial.println (aikaleima);
Serial.println ("sisällä ThingsCloudPost");
Merkkijono PostValue = "{" device_id / ": 61121695844, \" slave_id / ": 2";
Postiarvo = Postiarvo + ", \" dts / ":" + aikaleima;
Postiarvo = Postiarvo +", \" data / ": {" INTENSITY / ":" +\ sensorvalue +"}" +"}";
Serial.println (PostValue);
/ * luo WiFiClientSecure -ilmentymä */ WiFiClientSecure -asiakas;
Serial.println ("Yhdistä palvelimeen portin 443 kautta");
if (! client.connect (palvelin, 443))
{
Serial.println ("Yhteys epäonnistui!");
}
muu
{Serial.println ("Yhdistetty palvelimeen!"); / * luo HTTP -pyyntö */
client.println ( POST/devices/deviceData
client.println ("Isäntä: api.thingsai.io"); //asiakas.println ("Yhteys: sulje"); cl
ient.println ("Sisältötyyppi: application/json");
client.println ("cache-control: no-cache");
client.println ("Valtuutus: BearereyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9. IjVhMzBkZDFkN2QwYjNhNGQzODkwYzQ4OSI.kaY6OMj5cYlWNqC2p2kvkfk" client.print ("Content-Length:");
client.println (PostValue.length ());
client.println ();
client.println (PostValue); ////////////////////////////////////////////////// Tietojen julkaiseminen pilveen on valmis ja nyt saat vastauslomakkeen pilvi palvelin ////////////////////
Serial.print ("Odotetaan vastausta");
while (! client.available ()) {
viive (50); //
Serial.print (".");
} / * jos tietoja on saatavilla, vastaanota ja tulosta päätelaitteeseen * /
kun taas (client.available ())
{
char c = asiakas.luku ();
Serial.write (c);
}
/ * jos palvelimen yhteys katkeaa, pysäytä asiakas */
jos (! client.connected ())
{
Sarja.println ();
Serial.println ("Palvelin irrotettu");
client.stop ();
}
} Serial.println ("////////////////////// LOPPU /////////////////// /");
viive (3000); }}
Vaihe 7: Hallituksen ja Com -portin valinta
Valitse työkaluista taulu ja sitten com -portti
Vaihe 8: Piiriliitännät
Koodaus suoritetaan ja muodostetaan seuraavat liitännät alla kuvatulla tavalla
LIITÄNNÄT:
GND esp32 - GND LDR -anturista
3V3 0f esp32 LDR: n Vcc: hen
Esp32: n VP LDR: n A0: een
Vaihe 9: Käännä ja lataa
koota ja lataa koodi esp32: een ja lue sitten sarjamonitorin lukemat. Se näyttäisi jotain tällaista tulosta
Vaihe 10: Sarjamonitori
Arvot saadaan sarjamonitorista ja lähetetään sitten THINGSAI IOT Cloud -alustaan.
Vaihe 11: Lukemat
Tämä näyttää esp32 -kortilta saadut arvot.
Vaihe 12: Graafinen esitys
Tämä on saatujen arvojen graafinen esitys. Se on opetusohjelman loppu. Toivottavasti ymmärsit. Kiitos
Suositeltava:
Lämpötilan ja kosteuden valvonta ESP-01 & DHT: n ja AskSensors Cloudin avulla: 8 vaihetta
Lämpötilan ja kosteuden valvonta ESP-01 & DHT: n ja AskSensors Cloudin avulla: Tässä ohjeessa opimme kuinka seurata lämpötilaa ja kosteusmittauksia IOT-MCU/ESP-01-DHT11 -kortin ja AskSensors IoT -alustan avulla .Valitsen IOT-MCU ESP-01-DHT11 -moduulin tähän sovellukseen, koska se
Automaattinen verho/ikkunaverho Arduinon ja LDR: n avulla: 3 vaihetta
Automaattinen verho/ikkunaverho Arduinon ja LDR: n avulla: Tässä opetusohjelmassa aiomme osoittaa, kuinka tehdä automaattinen ikkunaverho Arduinon ja LDR -moduulin avulla. Päivällä verho/ikkunaluukku rullaa alas ja yöllä se rullaa ylös
Liikeilmaisin Thingsai.io Iot -pilvialustan avulla: 6 vaihetta
Liiketunnistin Thingsai.io Iot -pilvialustan avulla: Tässä opetusohjelmassa aion selittää liiketunnistuksen käyttämällä PIR -anturia ja Esp32: ta yhdessä IOT -pilvialustan Thingai.io kanssa
Kasvien valvonta ja hälytykset ESP8266: n ja AskSensors IoT Cloudin avulla: 6 vaihetta
Kasvien valvonta ja hälytykset ESP8266: n ja AskSensors IoT Cloudin avulla: Tämän projektin tavoitteena on rakentaa älykäs laitoksen seurantajärjestelmä, joka käyttää ESP8266: ta ja AskSensors IoT -alustaa. Tämän järjestelmän avulla voidaan seurata maaperän kosteustasoa ja tarjota objektiivisia kriteerejä kastelupäätöksille. jotka auttavat varmistamaan kastelun
Vedenlaadun valvonta MKR1000: n ja ARTIK Cloudin avulla: 13 vaihetta (kuvien kanssa)
Vedenlaadun seuranta MKR1000: n ja ARTIK Cloudin avulla: Johdanto Tämän projektin ensisijainen tavoite on käyttää MKR1000: ta ja Samsung ARTIK Cloudia uima -altaiden pH: n ja lämpötilan valvontaan. emäksisyys