INHOUDSOPGAWE:
Video: Live Covid19 Tracker met ESP8266 en OLED - Intydse Covid19 -dashboard: 4 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:24
Besoek die Techtronic Harsh -webwerf:
Oral is daar 'n groot uitbraak van die nuwe Corona -virus (COVID19). Dit het nodig geword om die huidige scenario van COVID-19 in die wêreld dop te hou.
Dus, tuis was dit die projek wat ek aan 'World's Live Covid19 Dashboard' gedink het-'n Dashboard wat intydse opdaterings bied oor die COVID-19-toestand van die wêreld. U hoef nie meer die TV aan te hou of op verskillende webwerwe te kyk nie.
Die ontwerp van die projek was nie die belangrikste deel nie. Maar om iets nuttigs te maak, deur die handige komponente te gebruik, was die uitdaging. Hierdie projek sal u beslis help om 'n eenvoudige dashboard -koppelvlak te bou om u op hoogte te hou.
Voorrade
- ESP8266
- OLED -skerm
- Springkabels
Stap 1: Skema's:
Stap 2: Opstel:
- Besoek die webwerf van die Realtime Covid19 Dashboard. Hier gebruik ek
-
Teken in/teken aan op https://thingspeak.com. Gaan na die app en skep nuwe ThingHttp -aksie.
- Gee die naam van u keuse, URL (https://trackcorona.live), metode as GET en in Parse String moet u die XPath plak vanaf die trackcorna.live -webwerf van die vereiste veld wat u moet wys.
-
In die voorbeeld hierbo (beeld), ontleed ek 'n string vir bevestigde gevalle, wat u slegs moet doen
- Klik met die rechtermuisknop op Aantal bevestigde gevalle> Inspekteer,
- Klik weer regs in die kode> Kopieer> CopyXPath
- Plak dit in die Ontleed String -veld van ThinkHttp Action en stoor dit.
- Doen dit ook vir alle herstelde, sterftes, sterftesyfers en sterftesyfers.
- Besoek die bronkode en vervang SSID met u Wifi -naam, wagwoord met u Wifi -wagwoord en API -sleutel met u ThingHttp -API.
- Laai die kode op. Dis dit!!
Stap 3: Bronkode:
/* © Techtronic Harsh
Youtube:
Instruksies: https://www.instructables.com/member/… Instagram: https://instagram.com/techtronicharsh Webwerf: https://techtronicharsh.com Telegram:
*/
#include // Gebruik ESP8266 -funksies #include #include #include #include #include
Adafruit_SSD1306 vertoning = Adafruit_SSD1306 (128, 32 en Wire);
const char*ssid = "*******"; // SSID van u router, dit wil sê WiFi -naam const char*wagwoord = "*******"; // U WiFi -wagwoord const char* host = "api.thingspeak.com"; // Ons lees die data van hierdie gasheer const int httpPortRead = 80; /* Verander net die API -sleutel met u API via ThingHttp*/const char* url1 = "/apps/thinghttp/send_request? Api_key = TGC4KNQ98REOA4JH"; // Bevestig const char* url2 = "/apps/thinghttp/send_request? Api_key = Y0ALN1QGDTNLLNNM"; // Herstel const char* url3 = "/apps/thinghttp/send_request? Api_key = 0J24MB3W9F9Q0E7M"; // Dood const char* url4 = "/apps/thinghttp/send_request? Api_key = R2BKR1DRVS5YT2PH"; // Hersteltempo const char* url5 = "/apps/thinghttp/send_request? Api_key = VYMVMGK9S8W21EXQ"; // Sterftesyfer
Stringgevalle, dood, herstel, verhaal, sterftesyfer;
WiFiClient -kliënt; // Skep 'n WiFi -kliënt en http -kliënt
HTTPClient
ongeldige opstelling () {
Serial.begin (9600); // Begin die seriële kommunikasie WiFi.disconnect (); // Ontkoppel en koppel weer aan die Wifi wat u vertraging stel (1000); WiFi.begin (ssid, wagwoord); Serial.println ("gekoppel aan die WiFi -netwerk"); // Gee terugvoer oor die seriële monitor Serial.println (WiFi.localIP ()); display.begin (); vertoon.display (); vertraging (1000);
display.clearDisplay ();
vertoon.display ();
display.setTextSize (1);
display.setTextColor (WIT);
}
leemte lus ()
{// Lees 1: Lees van bevestigde gevalle
if (http.begin (host, httpPortRead, url1)) // Koppel aan die gasheer en die url
{int httpCode = http. GET (); // Gaan terugvoer na as daar 'n antwoord is as (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Cases = http.getString (); Serial.print ("Bevestigde gevalle:"); Serial.println (gevalle); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Bevestigde gevalle:"); display.println (gevalle); vertoon.display (); vertraging (4000); display.clearDisplay (); }} anders // As ons nie data kan kry nie {Serial.printf ("[HTTP] GET … failed, error: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } anders // As ons nie aan die HTTP {Serial.printf ("[HTTP} kon nie verbind nie / n") koppel nie; }
// Lees 2: Lees van Herstel
as (http.begin (gasheer, httpPortRead, url2))
{int httpCode = http. GET (); if (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Herstel = http.getString (); Serial.print ("Herstel:"); Serial.println (Herstel); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Herstel:"); display.println (Herstel); vertoon.display (); vertraging (4000); display.clearDisplay (); }} anders {Serial.printf ("[HTTP] KRY … misluk, fout: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } anders {Serial.printf ("[HTTP} kon nie koppel nie / n"); }
// Lees 3: Lees van sterftes
as (http.begin (gasheer, httpPortRead, url3))
{int httpCode = http. GET (); as (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Death = http.getString (); Serial.print ("Sterftes:"); Serial.println (dood); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Sterftes:"); display.println (Death); vertoon.display (); vertraging (4000); display.clearDisplay (); }} anders {Serial.printf ("[HTTP] KRY … misluk, fout: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } anders {Serial.printf ("[HTTP} kon nie koppel nie / n"); }
// Lees 4: Lees van hersteltempo
as (http.begin (gasheer, httpPortRead, url4))
{int httpCode = http. GET (); as (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Recoveryrate = http.getString (); Serial.print ("Herstelkoers:"); Serial.println (Herstel); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Herstelsnelheid:"); display.print (Herstel); display.println (" %"); vertoon.display (); vertraging (4000); display.clearDisplay (); }} anders {Serial.printf ("[HTTP] KRY … misluk, fout: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } anders {Serial.printf ("[HTTP} kon nie koppel nie / n"); }
// Lees 5: Lees van sterftesyfer
as (http.begin (gasheer, httpPortRead, url5))
{int httpCode = http. GET (); as (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Deathrate = http.getString (); Serial.print ("Sterftesyfer:"); Serial.println (Deathrate); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Sterftesyfer:"); display.print (Deathrate); display.println (" %"); vertoon.display (); vertraging (4000); display.clearDisplay (); vertoon.display (); }} anders {Serial.printf ("[HTTP] KRY … misluk, fout: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } anders {Serial.printf ("[HTTP} kon nie koppel nie / n"); } terwyl (WiFi.status ()! = WL_CONNECTED) // As die Wifi -verbinding verlore gaan {WiFi.disconnect (); vertraging (1000); WiFi.begin (ssid, wagwoord); Serial.println ("Koppel weer aan WiFi.."); display.setCursor (0, 0); display.println ("Techtronic Harsh"); display.println (""); display.println ("Koppel …"); vertoon.display (); vertraging (10000); display.clearDisplay (); vertoon.display (); }
}
/* © Techtronic Harsh
Youtube:
Instruksies: https://www.instructables.com/member/… Instagram: https://instagram.com/techtronicharsh Webwerf: https://techtronicharsh.com Telegram:
*/
Stap 4: Werk:
Maak die verbindings volgens die stroombaan -diagram en laai die kode op nadat u die regte bord en COM -poort gekies het. As dit fout toon, maak seker dat u die biblioteek bygevoeg het volgens die instruksies hierbo.
As dit baie tyd neem om op OLED te werk, moet u seker maak dat u behoorlik gekoppel is aan internetdienste, dit wil sê u WiFi of hotspot.
Aanbeveel:
Desktop COVID19 -spoorsnyer met klok! Raspberry Pi Powered Tracker: 6 stappe
Desktop COVID19 -spoorsnyer met klok! Raspberry Pi Powered Tracker: Ons weet dat ons altyd kan sterf, selfs ek kan sterf terwyl ek hierdie berig skryf, ek, ek, u, ons is almal sterflinge. Die hele wêreld het geskud weens COVID19 -pandemie. Ons weet hoe om dit te voorkom, maar hey! ons weet hoe om te bid en waarom ons moet bid, doen ons dit
Internetklok: vertoon datum en tyd met 'n OLED met behulp van ESP8266 NodeMCU met NTP -protokol: 6 stappe
Internetklok: vertoon datum en tyd met 'n OLED met behulp van ESP8266 NodeMCU met NTP -protokol: Hallo ouens in hierdie instruksies, ons bou 'n internetklok wat tyd van die internet kan kry, sodat hierdie projek geen RTC nodig het nie, dit benodig slegs 'n werkende internetverbinding En vir hierdie projek benodig u 'n esp8266 wat 'n
Movie Tracker - Raspberry Pi Powered Theatrical Release Tracker: 15 stappe (met foto's)
Movie Tracker - Raspberry Pi Powered Theatrical Release Tracker: Movie Tracker is 'n klepbordvormige, Framboos Pi -aangedrewe Release Tracker. Dit gebruik die TMDb API om die plakkaat, titel, vrystellingsdatum en oorsig van komende films in u streek te druk, binne 'n bepaalde tydsinterval (bv. Filmvrystellings hierdie week) op
Grafika op 'n SSD1306 I2C OLED 128x64 -skerm met CircuitPython met 'n Itsybitsy M4 Express: 13 stappe (met foto's)
Grafika op 'n SSD1306 I2C OLED 128x64 -skerm met CircuitPython met behulp van 'n Itsybitsy M4 Express: Die SSD1306 OLED -skerm is 'n klein (0,96 "), goedkoop, algemeen beskikbaar, I2C, monochroom grafiese skerm met 128x64 pixels, wat maklik gekoppel kan word (slegs 4 drade) na mikroprosessor -ontwikkelingsborde soos 'n Raspberry Pi, Arduino of
Bitcoin Tracker met 'n Framboos Pi: 14 stappe (met foto's)
Bitcoin Tracker met 'n Raspberry Pi: Onthou u Bitcoin? …. die gedesentraliseerde, nuwe era, wat eens teen $ 19K verhandel is, wat 'n rewolusie in die wêreldwye betaalstelsel moes maak. Dit blyk dat daar minder as 3,585,825 Bitcoins oor is om te myn. Ongeveer 'n jaar gelede het ek