Sisukord:

Covid19 statistiline IoT -ekraan: 5 sammu
Covid19 statistiline IoT -ekraan: 5 sammu

Video: Covid19 statistiline IoT -ekraan: 5 sammu

Video: Covid19 statistiline IoT -ekraan: 5 sammu
Video: ДОМА MAGIC FIVE БОЛЬШЕ НЕТ… ** УЕХАЛИ НАВСЕГДА ** 2024, November
Anonim
Image
Image
Vajalikud asjad
Vajalikud asjad

Maailm on praegu koroonaviiruse pandeemias ja nagu paljud teised riigid, on see ka Indias suletud, nii et sain idee luua IoT -ekraan, mis annab reaalajas värskenduse riigi koroonastatistika kohta. Ma kasutan API -d, mis pakub India andmeid, kuid saate kasutada mis tahes API -d, muutes veidi koodi.

Samm: vajalikud asjad

Vajalikud asjad
Vajalikud asjad
Vajalikud asjad
Vajalikud asjad

Siin on asjad, mida peate asjade Interneti -kuvamiseks tegema:

  • NodeMCU (ESP8266)
  • 16x2 LCD -moodul (I2C)
  • Leivalaud (valikuline)
  • Mõned juhtmed/ džemprid
  • USB kaabel

Samm 2: Ühendused

Ühendused
Ühendused
Ühendused
Ühendused
Ühendused
Ühendused

Ühendused on üsna lihtsad. Ühendamiseks on ainult 4 juhet. Esp8266 paigutamiseks leivaplaadi külge saate selle ühendada LCD -mooduliga või ühendamiseks kasutada lihtsalt naissoost naissoost vahejuhtmeid.

Ühendused on (ESP-> LCD):

  1. VIN -> VCC (5V jaoks)
  2. GND -> GND
  3. D2 -> SDA
  4. D1 -> SCL

Nüüd ühendage esp8266 USB -kaabli abil arvutiga, nüüd peame koodi üles laadima.

Samm: kodeerimine

Kodeerimine
Kodeerimine

Nüüd on see kõige olulisem osa. Paljudel teist on küsimusi, kuidas see toimib?

Niisiis, see loob esmalt ühenduse WiFi -ga ja seejärel ühendub API -ga, et koguda JSON -andmeid, seejärel dekodeerib JSON -andmed ja salvestab need väärtused muutujale, seejärel kuvab LCD väärtused ja see jätkub silmusena.

API, mida kasutasin, on https://coronago.xyz/api/data.json, mis saab andmed aadressilt https://www.covid19india.org/, see pakub andmeid ainult India kohta, kuid teiste riikide jaoks on palju API -sid, saate kasutada mis tahes API -d, kuid veenduge, et sellele pääseks juurde HTTP kaudu.

Esiteks peate Arduino IDE jaoks installima ESP8266 tahvli toe. Järgige seda õpetust.

Teine asi, mida teha, on kõigi nõutavate raamatukogude installimine, saate need hõlpsalt Arduino raamatukoguhaldurist installida.

Seejärel avage kood ja muutke wifi mandaati ning laadige kood üles.

kood on siin minu GitHubi hoidlas-https://github.com/Soumojit28/covid19-iot-display.

Samm: koodi selgitamine ja muu API kasutamine

Koodi selgitus ja muu API kasutamine
Koodi selgitus ja muu API kasutamine

Kood on üsna lihtne

Tühjuse seadistamise osas initsialiseerib see LCD -mooduli ja kuvab jõllitussõnumi, seejärel loob ühenduse WiFi -võrguga.

Silmuseosas tõmbab see JSON -i andmed API -st ja dekodeerib reklaami, salvestades need muutujaks, seejärel kuvab need jadamonitoris ja LCD -ekraanil.

teise API kasutamiseks peate koodi sellel real muutma

http.begin ("https://coronago.xyz/api/data.json"); // API

Teine asi, mida API peab töötama HTTP -ühendusega, HTTPS -ühendus selles koodis ei tööta ja saate vea -1.

API tagastab JSONi andmed niimoodi

Nüüd see järgmine kood dekodeerib lihtsalt JSON -i ja salvestab muutuja väärtused, see sõltub täielikult API ja JSON -i andmetest, mille see tagastab. Kuid seda on lihtne muuta, lisateabe saamiseks vaadake seda õpetust.

StaticJsonBuffer JSONBuffer; // Mälu kogum JsonObject & parsed = JSONBuffer.parseObject (kasulik koormus); // Sõnumi sõelumine on kinnitatud = parsitud ["kinnitatud"]; taastatud = parsitud ["taastatud"]; surmajuhtumid = parsitud ["surmad"]; praegune_aktiivne = parsitud ["aktiivne"];

Pärast seda kuvab kood lihtsalt muutujad jadamonitoris ja LCD -ekraanil.

Serial.print ("kinnitatud:"); Serial.println (kinnitatud); Serial.print ("taastatud:"); Serial.println (taastatud); Serial.print ("currenty_active:"); Serial.println (praegune_aktiivne); Serial.print ("surmajuhtumid:"); Serial.println (surmad); if (httpCode == 200) {// kuvab andmed lcd lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Kinnitatud:"); lcd.print (kinnitatud); lcd.setCursor (0, 1); lcd.print ("Surmad:"); lcd.print (surmad); viivitus (2500); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Aktiivne:"); lcd.print (praegune_aktiivne); lcd.setCursor (0, 1); lcd.print ("Taastatud:"); lcd.print (taastatud); viivitus (2500);

}

5. samm: järeldus

See on suurepärane projekt kogu aeg statistika jälgimiseks ja kas saate selle sulgemisolukorras aega veeta.

Kui vajate abi, võite küsida minult kommentaaride kaudu või avada probleemi minu Githubis

github.com/Soumojit28/covid19-iot-display mis tahes koodiga seotud probleemide korral.

Aitäh.

Soovitan: