Taula de continguts:
Vídeo: Live Covid19 Tracker mitjançant ESP8266 i OLED - Tauler de control Covid19 en temps real: 4 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:12
Visiteu el lloc web de Techtronic Harsh:
A tot arreu hi ha un brot enorme del virus de la nova corona (COVID19). Es va fer necessari vigilar l’escenari actual de COVID-19 al món.
Per tant, en estar a casa, aquest era el projecte que vaig pensar en "World's Live Covid19 Dashboard": un tauler que proporciona actualitzacions en temps real sobre l'estat del món COVID-19. Ja no cal que mantingueu el televisor encès ni que continueu mirant en diversos llocs web.
El disseny del projecte no va ser la part important. Però fer alguna cosa útil, fer servir els components útils era el repte. Aquest projecte segurament us ajudarà a crear una interfície de tauler senzill per mantenir-vos actualitzat.
Subministraments
- ESP8266
- Pantalla OLED
- Cables de pont
Pas 1: esquemes:
Pas 2: Configuració:
- Visiteu el lloc web de Realtime Covid19 Dashboard. Aquí estic fent servir
-
Inicieu sessió / registreu-vos a https://thingspeak.com. Aneu a l'aplicació i creeu una acció ThingHttp nova.
- Indiqueu el nom que vulgueu, URL (https://trackcorona.live), mètode com a GET i, a Parse String, heu d’enganxar l’XPath des del lloc web trackcorna.live del camp obligatori que heu de mostrar.
-
A l'exemple anterior (imatge), estic analitzant la cadena per a casos confirmats, el que només heu de fer és
- Feu clic dret a Nombre de casos confirmats> Inspeccioneu,
- Torneu a fer clic amb el botó dret al codi> Copia> CopiaXPath
- Enganxeu-ho al camp Parse String de ThinkHttp Action i deseu-lo.
- De la mateixa manera, feu-ho per a totes les persones recuperades, mortals, mortals i mortals.
- Visiteu el codi font i substituïu l'SSID pel vostre nom de Wifi, la contrasenya per la contrasenya de Wifi i la clau API per la vostra API ThingHttp.
- Pengeu el codi. Això és!!
Pas 3: Codi font:
/ * © Techtronic Harsh
Youtube:
Instructables: https://www.instructables.com/member/… Instagram: https://instagram.com/techtronicharsh Lloc web: https://techtronicharsh.com Telegram:
*/
#include // Utilitza les funcions ESP8266 #include #include #include #include #include
Adafruit_SSD1306 display = Adafruit_SSD1306 (128, 32 i Wire);
const char * ssid = "*******"; // El vostre SSID del router, és a dir, el nom de WiFi const char * password = "*******"; // La vostra contrasenya WiFi const char * host = "api.thingspeak.com"; // Llegim les dades d’aquest host const int httpPortRead = 80; / * Simplement canvieu la clau de l'API amb la vostra API mitjançant ThingHttp * / const char * url1 = "/ apps / thinghttp / send_request? Api_key = TGC4KNQ98REOA4JH"; // Const const confirmat * 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"; // Taxa de recuperació const char * url5 = "/ apps / thinghttp / send_request? Api_key = VYMVMGK9S8W21EXQ"; // Taxa de mortalitat
Casos de cadena, mort, recuperació, recuperat, taxa de mort;
Client WiFiClient; // Creeu un client WiFi i un client
HTTPClient
configuració nul·la () {
Serial.begin (9600); // Inicieu la comunicació en sèrie WiFi.disconnect (); // Desconnecteu i torneu a connectar a la connexió Wifi que heu establert amb retard (1000); WiFi.begin (ssid, contrasenya); Serial.println ("Connectat a la xarxa WiFi"); // Mostra els comentaris al monitor sèrie Serial.println (WiFi.localIP ()); display.begin (); display.display (); retard (1000);
display.clearDisplay ();
display.display ();
display.setTextSize (1);
display.setTextColor (BLANC);
}
bucle buit ()
{// Lectura 1: lectura de casos confirmats
if (http.begin (host, httpPortRead, url1)) // Connecteu-vos a l’amfitrió i a la URL
{int httpCode = http. GET (); // Comproveu els comentaris si hi ha resposta si (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Cases = http.getString (); Serial.print ("Casos confirmats"); Serial.println (casos); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Casos confirmats:"); display.println (casos); display.display (); retard (4000); display.clearDisplay (); }} else // Si no podem obtenir dades {Serial.printf ("[HTTP] GET … ha fallat, error:% s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else // Si no ens podem connectar a l'HTTP {Serial.printf ("[HTTP} No es pot connectar / n"); }
// Lectura 2: lectura de recuperats
if (http.begin (host, httpPortRead, url2))
{int httpCode = http. GET (); if (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Recuperar = http.getString (); Serial.print ("Recuperat:"); Serial.println (Recuperar); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Recuperat:"); display.println (Recuperar); display.display (); retard (4000); display.clearDisplay (); }} else {Serial.printf ("[HTTP] GET … ha fallat, error:% s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} No es pot connectar / n"); }
// Lectura 3: Lectura de defuncions
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 ("Defuncions:"); Serial.println (Mort); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Defuncions:"); display.println (Mort); display.display (); retard (4000); display.clearDisplay (); }} else {Serial.printf ("[HTTP] GET … ha fallat, error:% s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} No es pot connectar / n"); }
// Lectura 4: lectura del percentatge de recuperació
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 ("Taxa de recuperació"); Serial.println (Recoveryrate); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Taxa de recuperació"); display.print (Recoveryrate); display.println ("%"); display.display (); retard (4000); display.clearDisplay (); }} else {Serial.printf ("[HTTP] GET … ha fallat, error:% s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} No es pot connectar / n"); }
// Lectura 5: lectura de la taxa de mortalitat
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 ("Taxa de mortalitat"); Serial.println (mortalitat); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Taxa de mortalitat"); display.print (mortalitat); display.println ("%"); display.display (); retard (4000); display.clearDisplay (); display.display (); }} else {Serial.printf ("[HTTP] GET … ha fallat, error:% s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} No es pot connectar / n"); } while (WiFi.status ()! = WL_CONNECTED) // En cas que es perdi la connexió Wifi {WiFi.disconnect (); retard (1000); WiFi.begin (ssid, contrasenya); Serial.println ("Reconnexió a WiFi.."); display.setCursor (0, 0); display.println ("Techtronic Harsh"); display.println (""); display.println ("Connectant …"); display.display (); retard (10000); display.clearDisplay (); display.display (); }
}
/ * © Techtronic Harsh
Youtube:
Instructables: https://www.instructables.com/member/… Instagram: https://instagram.com/techtronicharsh Lloc web: https://techtronicharsh.com Telegram:
*/
Pas 4: treballar:
Feu les connexions segons el diagrama del circuit i pengeu el codi després de seleccionar la placa i el port COM adequats. Si es mostra un error, assegureu-vos que heu afegit la biblioteca segons les instruccions anteriors.
Si es necessita molt de temps per executar-se amb OLED, assegureu-vos que us heu connectat correctament als serveis d’Internet, és a dir, el vostre WiFi o punt d’accés.
Recomanat:
Representació de gràfics en temps real a Android des d’Arduino mitjançant HC-05: 3 passos
Representació de gràfics en temps real a Android des d’Arduino a través d’HC-05: hey, aquí teniu un tutorial sobre com traçar un gràfic de valors en temps real des d’un microcontrolador, com ara un Arduino, fins a l’aplicació. Utilitza un mòdul Bluetooth com l'HC-05 per actuar com a dispositiu de missatgeria per transmetre i rebre les dades entre l'Ar
Reconeixement de dispositius en temps real mitjançant empremtes EM: 6 passos
Reconeixement de dispositius en temps real mitjançant empremtes EM: aquest dispositiu està destinat a classificar diferents dispositius electrònics segons els seus senyals EM. Per a diferents dispositius, emeten senyals EM diferents. Hem desenvolupat una solució IoT per identificar els dispositius electrònics mitjançant Particle
SCARA Robot: Aprendre sobre Foward i la cinemàtica inversa !!! (Plot Twist Aprèn a fer una interfície en temps real a ARDUINO mitjançant PROCESSAMENT !!!!): 5 passos (amb imatges)
SCARA Robot: Aprendre sobre Foward i la cinemàtica inversa !!! (Plot Twist Aprèn a fer una interfície en temps real a ARDUINO mitjançant el processament !!!!): Un robot SCARA és una màquina molt popular al món de la indústria. El nom significa tant el braç de robot de muntatge selectiu que compleix com el braç de robot articulat que compleix selectivament. Bàsicament és un robot de tres graus de llibertat, sent els dos primers desplaçaments
Configuració del DS3231 RTC (rellotge en temps real) de manera precisa, ràpida i automatitzada mitjançant Java (+ -1s): 3 passos
Configuració del DS3231 RTC (rellotge en temps real) amb precisió, ràpida i automatitzada mitjançant Java (+ -1s): aquest manual us mostrarà com configurar l'hora en un rellotge en temps real DS3231 mitjançant un Arduino i una petita aplicació Java que utilitza la connexió sèrie de l’Arduino. La lògica bàsica d’aquest programa: 1. L'Arduino envia una sol·licitud en sèrie
Rellotge basat en Arduino mitjançant el mòdul Rellotge en temps real (RTC) DS1307 i 0,96: 5 passos
Rellotge basat en Arduino mitjançant el mòdul DS1307 de rellotge en temps real (RTC) i 0,96: Hola, nois en aquest tutorial, veurem com fer un rellotge de treball mitjançant un mòdul de rellotge en temps real DS1307 & Pantalles OLED, així que llegirem l’hora del mòdul de rellotge DS1307. I imprimiu-lo a la pantalla OLED