Satura rādītājs:
Video: Tiešais Covid19 izsekotājs, izmantojot ESP8266 un OLED - Reāllaika Covid19 informācijas panelis: 4 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:53
Apmeklējiet Techtronic skarbo vietni:
Visur ir milzīgs jauna koronavīrusa (COVID19) uzliesmojums. Bija nepieciešams sekot līdzi pašreizējam COVID-19 scenārijam pasaulē.
Tātad, būdams mājās, es domāju par projektu “World’s Live Covid19 Dashboard”-informācijas panelis, kas sniedz reāllaika atjauninājumus par COVID-19 stāvokli pasaulē. Vairs nav nepieciešams ieslēgt televizoru vai skatīties dažādās vietnēs.
Projekta dizains nebija svarīga daļa. Taču izaicinājums bija izveidot kaut ko noderīgu, izmantojot parocīgus komponentus. Šis projekts noteikti palīdzēs jums izveidot vienkāršu informācijas paneļa saskarni, lai jūs pastāvīgi atjauninātu.
Piegādes
- ESP8266
- OLED displejs
- Jumper kabeļi
1. darbība. Shēmas:
2. darbība: iestatīšana:
- Apmeklējiet reāllaika Covid19 informācijas paneļa vietni. Šeit es izmantoju
-
Piesakieties/reģistrējieties vietnē https://thingspeak.com. Dodieties uz lietotni un izveidojiet jaunu ThingHttp darbību.
- Norādiet savas izvēles nosaukumu, URL (https://trackcorona.live), metodi kā GET un Parse String, jums jāielīmē XPath no vajadzīgā lauka, kas jāparāda, no trackcorna.live vietnes.
- Iepriekš minētajā piemērā (attēls) es analizēju virkni apstiprinātiem gadījumiem, viss, kas jums jādara
- Ar peles labo pogu noklikšķiniet uz Apstiprināto gadījumu skaits> Pārbaudīt,
- Atkal ar peles labo pogu noklikšķiniet uz koda> Kopēt> CopyXPath
- Ielīmējiet to ThinkHttp Action laukā Parse String un saglabājiet to.
- Līdzīgi dariet to visiem atgūtajiem, nāves, mirstības un nāves rādītājiem.
- Apmeklējiet avota kodu un aizstājiet SSID ar savu Wifi nosaukumu, paroli ar savu Wifi paroli un API atslēgu ar savu ThingHttp API.
- Augšupielādējiet kodu. Tieši tā!!
3. darbība. Avota kods:
/* © Techtronic Harsh
Youtube:
Instrukcijas: https://www.instructables.com/member/… Instagram: https://instagram.com/techtronicharsh Tīmekļa vietne: https://techtronicharsh.com Telegramma:
*/
#include // Izmantojiet ESP8266 funkcijas #include #include #include #include #include
Adafruit_SSD1306 displejs = Adafruit_SSD1306 (128, 32, & Wire);
const char*ssid = "*******"; // Jūsu maršrutētāja SSID, t.i., WiFi nosaukums const char*password = "*******"; // Jūsu WiFi parole const char* host = "api.thingspeak.com"; // Mēs lasām datus no šī resursdatora konst int httpPortRead = 80; /* Vienkārši nomainiet API atslēgu ar savu API, izmantojot ThingHttp*/const char* url1 = "/apps/thinghttp/send_request? Api_key = TGC4KNQ98REOA4JH"; // Apstiprināta const char* url2 = "/apps/thinghttp/send_request? Api_key = Y0ALN1QGDTNLLNNM"; // Atgūts const char* url3 = "/apps/thinghttp/send_request? Api_key = 0J24MB3W9F9Q0E7M"; // Death const char* url4 = "/apps/thinghttp/send_request? Api_key = R2BKR1DRVS5YT2PH"; // Atkopšanas ātrums const char* url5 = "/apps/thinghttp/send_request? Api_key = VYMVMGK9S8W21EXQ"; // Nāvējošais rādītājs
Stīgu lietas, nāve, atgūšana, atveseļošanās, nāve;
WiFiClient klients; // Izveidojiet WiFi klientu un http klientu
HTTP klients
void setup () {
Sērijas sākums (9600); // Sāciet seriālo komunikāciju WiFi.disconnect (); // Atvienojiet un atkārtoti izveidojiet savienojumu ar iestatīto Wifi (1000); WiFi.begin (ssid, parole); Serial.println ("Savienots ar WiFi tīklu"); // Parādīt atsauksmes par seriālo monitoru Serial.println (WiFi.localIP ()); display.begin (); display.display (); kavēšanās (1000);
display.clearDisplay ();
display.display ();
display.setTextSize (1);
display.setTextColor (BALTS);
}
tukša cilpa ()
{// 1. lasījums: apstiprinātu gadījumu lasīšana
if (http.begin (resursdators, httpPortRead, url1)) // Izveidojiet savienojumu ar resursdatoru un URL
{int httpCode = http. GET (); // Pārbaudiet atsauksmes, vai ir atbilde, ja (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Cases = http.getString (); Serial.print ("Apstiprinātie gadījumi:"); Serial.println (lietas); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Apstiprinātie gadījumi:"); display.println (Lietas); display.display (); kavēšanās (4000); display.clearDisplay (); }} else // Ja mēs nevaram iegūt datus {Serial.printf ("[HTTP] GET … neizdevās, kļūda: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else // Ja mēs nevaram izveidot savienojumu ar HTTP {Serial.printf ("[HTTP} Nevar izveidot savienojumu / n"); }
// 2. lasījums: Atgūto lasīšana
ja (http.begin (resursdators, httpPortRead, url2))
{int httpCode = http. GET (); ja (httpCode> 0) {ja (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Recover = http.getString (); Serial.print ("Atkopts:"); Serial.println (Atgūt); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Atkopts:"); display.println (Atgūt); display.display (); kavēšanās (4000); display.clearDisplay (); }} else {Serial.printf ("[HTTP] GET … neizdevās, kļūda: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} Nevar izveidot savienojumu / n"); }
// 3. lasījums: Nāves lasīšana
ja (http.begin (resursdators, httpPortRead, url3))
{int httpCode = http. GET (); ja (httpCode> 0) {ja (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Nāve = http.getString (); Serial.print ("Nāves:"); Serial.println (Nāve); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Nāves:"); display.println (Nāve); display.display (); kavēšanās (4000); display.clearDisplay (); }} else {Serial.printf ("[HTTP] GET … neizdevās, kļūda: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} Nevar izveidot savienojumu / n"); }
// 4. lasījums: atkopšanas ātruma nolasīšana
ja (http.begin (resursdators, httpPortRead, url4))
{int httpCode = http. GET (); ja (httpCode> 0) {ja (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Recoveryrate = http.getString (); Serial.print ("Atkopšanas ātrums:"); Serial.println (atkopšanas); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Atkopšanas ātrums:"); display.print (Recoveryrate); display.println (" %"); display.display (); kavēšanās (4000); display.clearDisplay (); }} else {Serial.printf ("[HTTP] GET … neizdevās, kļūda: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} Nevar izveidot savienojumu / n"); }
// 5. lasījums: Nāves rādītāja nolasīšana
ja (http.begin (resursdators, httpPortRead, url5))
{int httpCode = http. GET (); ja (httpCode> 0) {ja (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Deathrate = http.getString (); Serial.print ("Fatality Rate:"); Serial.println (Deathrate); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Fatality Rate:"); display.print (Deathrate); display.println (" %"); display.display (); kavēšanās (4000); display.clearDisplay (); display.display (); }} else {Serial.printf ("[HTTP] GET … neizdevās, kļūda: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} Nevar izveidot savienojumu / n"); } while (WiFi.status ()! = WL_CONNECTED) // Gadījumā, ja tiek zaudēts Wifi savienojums {WiFi.disconnect (); kavēšanās (1000); WiFi.begin (ssid, parole); Serial.println ("Atkārtota savienojuma izveide ar WiFi.."); display.setCursor (0, 0); display.println ("Techtronic skarbs"); display.println (""); display.println ("Notiek savienošana …"); display.display (); kavēšanās (10000); display.clearDisplay (); display.display (); }
}
/* © Techtronic Harsh
Youtube:
Instrukcijas: https://www.instructables.com/member/… Instagram: https://instagram.com/techtronicharsh Tīmekļa vietne: https://techtronicharsh.com Telegramma:
*/
4. solis: darbs:
Izveidojiet savienojumus saskaņā ar shēmu un augšupielādējiet kodu pēc atbilstošas plates un COM porta izvēles. Ja tas parāda kļūdu, pārliecinieties, vai esat pievienojis bibliotēku saskaņā ar iepriekš sniegtajiem norādījumiem.
Ja OLED palaišana prasa daudz laika, pārliecinieties, vai esat pareizi izveidojis savienojumu ar interneta pakalpojumiem, ti, savu WiFi vai tīklāju.
Ieteicams:
Tasmota Admin - IIoT informācijas panelis: 6 soļi
Tasmota administrators - IIoT informācijas panelis: TasmoAdmin ir administratīva vietne ierīcēm, kas ir aprīkotas ar Tasmota. To varat atrast šeit: TasmoAdmin GitHub. Tā atbalsta darbību Windows, Linux un Docker konteineros. FunkcijasLogin aizsargāts Vairāku atjaunināšanas processIzvēlieties ierīces, lai atjauninātu Autom
COVID-19 PVO informācijas panelis: 8 soļi (ar attēliem)
COVID-19 PVO informācijas panelis: šīs instrukcijas parāda, kā izmantot ESP8266/ESP32 un LCD, lai izveidotu COVID-19 situāciju PVO informācijas panelis
COVID19 informācijas panelis pasaules kartē (izmantojot Python): 16 soļi
COVID19 informācijas panelis pasaules kartē (izmantojot Python): es zinu, ka gandrīz visi no mums zina lielāko daļu informācijas par COVID19. Un šis pamācības mērķis ir izveidot burbuļu karti, lai attēlotu reāllaika datus (gadījumus) pasaules kartē. , esmu pievienojis programmu Github krātuvei: https: //github.co
LTE Arduino GPS izsekotājs + IoT informācijas panelis (1. daļa): 6 soļi (ar attēliem)
LTE Arduino GPS izsekotājs + IoT informācijas panelis (1. daļa): Ievads Kas notiek puiši! Šis pamācība ir turpinājums manam pirmajam norādījumam par Botletics LTE/NB-IoT vairoga izmantošanu Arduino, tāpēc, ja vēl neesat to izdarījis, lūdzu, izlasiet to, lai iegūtu labu pārskatu par vairoga lietošanu un to, kas tas viss
LTE Arduino GPS izsekotājs + IoT informācijas panelis (2. daļa): 6 soļi (ar attēliem)
LTE Arduino GPS izsekotājs + IoT informācijas panelis (2. daļa): Ievads & Jā, ir pienācis laiks vēl vienam norādījumam SIM7000 GPS izsekotājā ar Arduino un LTE! Ja vēl neesat to izdarījis, lūdzu, iepazīstieties ar Botletics SIM7000 CAT-M/NB-IoT vairoga darba sākšanas pamācību, pēc tam izlasiet rakstu Pa