Cuprins:

Afișaj IoT Stat Covid19: 5 pași
Afișaj IoT Stat Covid19: 5 pași

Video: Afișaj IoT Stat Covid19: 5 pași

Video: Afișaj IoT Stat Covid19: 5 pași
Video: COVID 19(Corona Virus) Data Analysis Using SPSS 2024, Noiembrie
Anonim
Image
Image
Lucruri necesare
Lucruri necesare

Lumea aflată în prezent în pandemia de coronavirus și, ca multe alte țări, este blocată și în India, așa că am avut această idee de a crea un afișaj IoT care va oferi o actualizare în timp real a Statisticii Corona a țării. Folosesc un API care oferă date din India, dar puteți utiliza orice API cu o mică modificare a codului.

Pasul 1: Lucruri necesare

Lucruri necesare
Lucruri necesare
Lucruri necesare
Lucruri necesare

Iată lucrurile de care veți avea nevoie pentru a afișa IoT:

  • NodeMCU (ESP8266)
  • Modul LCD 16x2 (I2C)
  • Breadboard (opțional)
  • Unele fire / jumperi
  • cablu USB

Pasul 2: Conexiuni

Conexiuni
Conexiuni
Conexiuni
Conexiuni
Conexiuni
Conexiuni

Conexiunile sunt destul de ușoare. Există doar 4 fire pentru conectare. Puteți folosi o placă pentru a plasa esp8266 în ea și apoi să vă conectați la modulul LCD sau puteți utiliza doar fire jumper de la femelă la femelă pentru a vă conecta.

Conexiunile sunt (ESP-> LCD):

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

Acum trebuie doar să conectați esp8266 cu cablul USB la computer, acum trebuie doar să încărcăm codul.

Pasul 3: Codificare

Codificare
Codificare

Acum, aceasta este cea mai importantă parte. Mulți dintre voi vor avea întrebări cu privire la modul în care funcționează acest lucru?

Deci, se conectează mai întâi la wifi și apoi se conectează la un API pentru a colecta date JSON, apoi decodează datele JSON și stochează acele valori într-o variabilă, apoi LCD-ul afișează valorile și aceasta continuă într-o buclă.

API-ul pe care l-am folosit este https://coronago.xyz/api/data.json, care își obține datele de la https://www.covid19india.org/, oferă date numai pentru India, dar există multe API-uri pentru alte țări, puteți utiliza orice API, dar asigurați-vă că poate fi accesat prin

Mai întâi, trebuie să instalați suportul pentru placa ESP8266 pentru Arduino IDE. Urmați acest tutorial.

Al doilea lucru de făcut este să instalați toate bibliotecile necesare, le puteți instala cu ușurință din Arduino Library Manager.

Apoi deschideți codul și modificați acreditările wifi și încărcați codul.

codul este aici în depozitul meu GitHub -

Pasul 4: Explicarea codului și utilizarea altor API-uri

Explicarea codului și utilizarea altor API-uri
Explicarea codului și utilizarea altor API-uri

Codul este destul de simplu

În partea de configurare nulă inițializează modulul LCD și afișează mesajul fix, apoi se conectează la rețeaua wifi.

În partea buclă, preluează datele JSON din API și le decodează și le stochează într-o variabilă, apoi le afișează pe monitorul serial și pe ecranul LCD.

pentru utilizarea unui alt API trebuie să schimbați adresa din această linie a codului

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

Un alt lucru pe care API trebuie să funcționeze cu o conexiune HTTP, conexiunea HTTPS nu va funcționa în acest cod și veți primi o eroare -1.

API returnează date JSON astfel

Acum, următorul cod doar decodează JSON și stochează valorile în variabilă, acest lucru depinde în totalitate de datele API și JSON pe care le returnează. Dar este ușor de schimbat, pentru mai multe informații puteți consulta acest tutorial.

StaticJsonBuffer JSONBuffer; // Pool de memorie JsonObject & parsed = JSONBuffer.parseObject (sarcină utilă); // Analizați mesajul confirmat = analizat ["confirmat"]; recuperat = analizat ["recuperat"]; decese = analizate ["decese"]; current_active = parsed ["active"];

După aceea, codul afișează doar variabilele pe monitorul serial și pe ecranul LCD.

Serial.print ("confirmat:"); Serial.println (confirmat); Serial.print ("recuperat:"); Serial.println (recuperat); Serial.print ("currenty_active:"); Serial.println (current_active); Serial.print ("decese:"); Serial.println (decese); if (httpCode == 200) {// afișează datele în lcd lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Confirmat:"); lcd.print (confirmat); lcd.setCursor (0, 1); lcd.print ("Moarte:"); lcd.print (decese); întârziere (2500); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Activ:"); lcd.print (current_active); lcd.setCursor (0, 1); lcd.print („Recuperat:”); lcd.print (recuperat); întârziere (2500);

}

Pasul 5: Concluzie

Acesta este un proiect minunat pentru a monitoriza statisticile tot timpul și îl puteți construi pentru a vă trece timpul în această situație de blocare.

Dacă aveți nevoie de ajutor, mă puteți întreba prin comentarii sau puteți deschide o problemă în Github

github.com/Soumojit28/covid19-iot-display pentru orice problemă legată de cod.

Mulțumesc.

Recomandat: