Cuprins:

Live Covid19 Tracker Utilizând ESP8266 și OLED - Tablou de bord Covid19 în timp real: 4 pași
Live Covid19 Tracker Utilizând ESP8266 și OLED - Tablou de bord Covid19 în timp real: 4 pași

Video: Live Covid19 Tracker Utilizând ESP8266 și OLED - Tablou de bord Covid19 în timp real: 4 pași

Video: Live Covid19 Tracker Utilizând ESP8266 și OLED - Tablou de bord Covid19 în timp real: 4 pași
Video: Scanare automată a Certificatului Verde cu EDA71, utilizând aplicația WEB Check DCC 2024, Noiembrie
Anonim
Image
Image

Accesați site-ul Web Techtronic Harsh:

Peste tot există un focar uriaș al virusului Corona de roman (COVID19). A devenit necesar să urmărim scenariul actual al COVID-19 în lume.

Așadar, fiind acasă, acesta a fost proiectul pe care l-am gândit la „World’s Live Covid19 Dashboard” - Un tablou de bord care oferă actualizări în timp real despre starea lumii COVID-19. Nu mai este nevoie să păstrați televizorul pornit sau să urmăriți în continuare pe diferite site-uri web.

Proiectarea proiectului nu a fost partea importantă. Dar a face ceva util, folosind componentele care erau la îndemână a fost provocarea. Acest proiect vă va ajuta cu siguranță să construiți o interfață simplă de tablou de bord pentru a vă menține la curent.

Provizii

  • ESP8266
  • Afișaj OLED
  • Cabluri jumper

Pasul 1: Scheme:

Configurare
Configurare

Pasul 2: Configurare:

Configurare
Configurare
Configurare
Configurare
  1. Accesați site-ul web Realtime Covid19 Dashboard. Aici folosesc
  2. Conectați-vă / Înscrieți-vă la https://thingspeak.com. Accesați aplicația și creați o acțiune ThingHttp nouă.

    • Dați numele alegerii dvs., adresa URL (https://trackcorona.live), metoda ca GET și în Parse String, trebuie să lipiți XPath de pe site-ul trackcorna.live din câmpul obligatoriu pe care trebuie să îl afișați.
    • În Exemplul de mai sus (Imagine), Analizez șirul pentru cazuri confirmate, tot ce trebuie să faceți este

      • Faceți clic dreapta pe Numărul de cazuri confirmate> Inspectați,
      • Din nou Faceți clic dreapta în Cod> Copiere> CopiereXPath
      • Lipiți acest lucru în câmpul Parse String al acțiunii ThinkHttp și Salvați-l.
      • În mod similar, faceți acest lucru pentru toți cei recuperați, deces, rata mortalității și rata mortalității.
      • Accesați codul sursă și înlocuiți SSID cu numele dvs. Wifi, parola cu parola dvs. Wifi și cheia API cu API-ul ThingHttp.
  3. Încărcați codul. Asta e!!

Pasul 3: Cod sursă:

/ * © Techtronic Harsh

Youtube:

Instrucțiuni: https://www.instructables.com/member/… Instagram: https://instagram.com/techtronicharsh Site web: https://techtronicharsh.com Telegramă:

*/

#include // Utilizați funcțiile ESP8266 #include #include #include #include #include

Adafruit_SSD1306 display = Adafruit_SSD1306 (128, 32, & Wire);

const char * ssid = "*******"; // SSID-ul routerului dvs. adică Nume WiFi const char * parolă = "*******"; // Parola dvs. WiFi const char * host = "api.thingspeak.com"; // Citim datele din această gazdă const int httpPortRead = 80; / * Doar schimbați cheia API cu API-ul dvs. prin ThingHttp * / const char * url1 = "/ apps / thinghttp / send_request? Api_key = TGC4KNQ98REOA4JH"; // Conf confirmat const char * url2 = "/ apps / thinghttp / send_request? Api_key = Y0ALN1QGDTNLLNNM"; // Recuperat const char * url3 = "/ apps / thinghttp / send_request? Api_key = 0J24MB3W9F9Q0E7M"; // Death const char * url4 = "/ apps / thinghttp / send_request? Api_key = R2BKR1DRVS5YT2PH"; // Rata de recuperare const char * url5 = "/ apps / thinghttp / send_request? Api_key = VYMVMGK9S8W21EXQ"; // Rata de fatalitate

Cazuri de șir, deces, recuperare, recuperare, rata mortalității;

Client WiFiClient; // Creați un client WiFi și un client

HTTPClient

configurare nulă () {

Serial.begin (9600); // Porniți comunicația serial WiFi.disconnect (); // Deconectați-vă și reconectați-vă la Wifi setat întârziere (1000); WiFi.begin (ssid, parolă); Serial.println ("Conectat la rețeaua WiFi"); // Afișați feedback pe monitorul serial Serial.println (WiFi.localIP ()); display.begin (); display.display (); întârziere (1000);

display.clearDisplay ();

display.display ();

display.setTextSize (1);

display.setTextColor (ALB);

}

bucla nulă ()

{// Citirea 1: citirea cazurilor confirmate

if (http.begin (host, httpPortRead, url1)) // Conectați-vă la gazdă și la adresa URL

{int httpCode = http. GET (); // Verificați feedback-ul dacă există un răspuns if (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Cases = http.getString (); Serial.print („Cazuri confirmate:”); Serial.println (Cazuri); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Cazuri confirmate:"); display.println (Cazuri); display.display (); întârziere (4000); display.clearDisplay (); }} else // Dacă nu putem obține date {Serial.printf ("[HTTP] GET … a eșuat, eroare:% s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else // Dacă nu ne putem conecta la HTTP {Serial.printf ("[HTTP} Nu se poate conecta / n"); }

// Citirea 2: Citirea de recuperat

if (http.begin (host, httpPortRead, url2))

{int httpCode = http. GET (); if (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Recuperare = http.getString (); Serial.print ("Recuperat:"); Serial.println (Recuperare); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Recuperat:"); display.println (Recuperare); display.display (); întârziere (4000); display.clearDisplay (); }} else {Serial.printf ("[HTTP] GET … a eșuat, eroare:% s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} Imposibil de conectat / n"); }

// Lectura 3: Lectura morților

if (http.begin (host, httpPortRead, url3))

{int httpCode = http. GET (); if (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Death = http.getString (); Serial.print ("Moarte:"); Serial.println (Moarte); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Moarte:"); display.println (Moarte); display.display (); întârziere (4000); display.clearDisplay (); }} else {Serial.printf ("[HTTP] GET … a eșuat, eroare:% s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} Imposibil de conectat / n"); }

// Citirea 4: citirea ratei de recuperare

if (http.begin (host, httpPortRead, url4))

{int httpCode = http. GET (); if (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Recoveryrate = http.getString (); Serial.print („Rata de recuperare”); Serial.println (Recoveryrate); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Rata de recuperare:"); display.print (Recoveryrate); display.println ("%"); display.display (); întârziere (4000); display.clearDisplay (); }} else {Serial.printf ("[HTTP] GET … a eșuat, eroare:% s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} Imposibil de conectat / n"); }

// Lectura 5: Citirea ratei mortalității

if (http.begin (host, httpPortRead, url5))

{int httpCode = http. GET (); if (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Deathrate = http.getString (); Serial.print („Rata de fatalitate”); Serial.println (Deathrate); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Rata de fatalitate:"); display.print (Deathrate); display.println ("%"); display.display (); întârziere (4000); display.clearDisplay (); display.display (); }} else {Serial.printf ("[HTTP] GET … a eșuat, eroare:% s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} Imposibil de conectat / n"); } while (WiFi.status ()! = WL_CONNECTED) // În cazul în care conexiunea Wifi se pierde {WiFi.disconnect (); întârziere (1000); WiFi.begin (ssid, parolă); Serial.println ("Reconectarea la WiFi.."); display.setCursor (0, 0); display.println ("Techtronic Harsh"); display.println (""); display.println ("Conectarea …."); display.display (); întârziere (10000); display.clearDisplay (); display.display (); }

}

/ * © Techtronic Harsh

Youtube:

Instrucțiuni: https://www.instructables.com/member/… Instagram: https://instagram.com/techtronicharsh Website: https://techtronicharsh.com Telegramă:

*/

Pasul 4: Lucrul:

Faceți conexiunile conform schemei de circuit și încărcați codul după ce ați selectat placa și portul COM corespunzătoare. Dacă arată eroare, asigurați-vă că ați adăugat biblioteca conform instrucțiunilor date mai sus.

Dacă este nevoie de mult timp pentru a rula pe OLED, asigurați-vă că v-ați conectat corect la serviciile de internet, adică WiFi sau hotspot.

Recomandat: