2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-23 15:01
Bezoek de Techtronic Harsh-website:
Overal is er een enorme uitbraak van het Novel Corona Virus (COVID19). Het werd noodzakelijk om het huidige scenario van COVID-19 in de wereld in de gaten te houden.
Dus toen ik thuis was, was dit het project dat ik dacht van "World's Live Covid19 Dashboard" - een dashboard dat realtime updates biedt over de COVID-19-toestand van de wereld. U hoeft de tv niet meer aan te houden of naar verschillende websites te blijven kijken.
Het ontwerp van het project was niet het belangrijkste onderdeel. Maar iets nuttigs maken, gebruikmakend van de componenten die handig waren, was de uitdaging. Dit project zal je zeker helpen bij het bouwen van een eenvoudige dashboardinterface om je op de hoogte te houden.
Benodigdheden
- ESP8266
- OLED-scherm
- Startkabels
Stap 1: Schema's:
Stap 2: Instellen:
- Bezoek de website van het Realtime Covid19-dashboard. Hier gebruik ik
-
Login / meld u aan bij https://thingspeak.com. Ga naar de app en maak een nieuwe ThingHttp-actie.
- Geef de naam van uw keuze, URL (https://trackcorona.live), methode als GET en in Parse String moet u de XPath van de trackcorna.live-website van het vereiste veld plakken dat u moet tonen.
-
In het bovenstaande voorbeeld (afbeelding) ben ik de string aan het parseren voor bevestigde gevallen, wat u alleen maar hoeft te doen:
- Klik met de rechtermuisknop op Aantal bevestigde gevallen > Inspecteren,
- Klik nogmaals met de rechtermuisknop in de Code> Kopiëren> CopyXPath
- Plak dit in het veld Parse String van ThinkHttp-actie en sla het op.
- Doe dit op dezelfde manier voor alle Hersteld, Sterfte, Sterftecijfer en Sterftecijfer.
- Ga naar de broncode en vervang SSID door uw wifi-naam, wachtwoord door uw wifi-wachtwoord en API-sleutel door uw ThingHttp API.
- Upload de code. Dat is het!!
Stap 3: Broncode:
/* © Techtronic Harsh
Youtube:
Instructables: https://www.instructables.com/member/… Instagram: https://instagram.com/techtronicharsh Website: https://techtronicharsh.com Telegram:
*/
#include //Gebruik ESP8266-functies #include #include #include #include #include
Adafruit_SSD1306 display = Adafruit_SSD1306(128, 32, &Wire);
const char* ssid = "*******"; // Uw router-SSID, d.w.z. WiFi-naam const char* wachtwoord = "*******"; //Uw wifi-wachtwoord const char* host = "api.thingspeak.com"; //We lezen de gegevens van deze host const int httpPortRead = 80; /* Wijzig gewoon de API-sleutel met uw API via ThingHttp */ const char* url1 = "/apps/thinghttp/send_request?api_key=TGC4KNQ98REOA4JH"; //Confirmed const char* url2 = "/apps/thinghttp/send_request?api_key=Y0ALN1QGDTNLLNNM"; //Recovered const char* url3 = "/apps/thinghttp/send_request?api_key=0J24MB3W9F9Q0E7M"; //Death const char* url4 = "/apps/thinghttp/send_request?api_key=R2BKR1DRVS5YT2PH"; //Herstelpercentage const char* url5 = "/apps/thinghttp/send_request?api_key=VYMVMGK9S8W21EXQ"; //Sterftecijfer
String Cases, Death, Recover, Recoveryrate, Deathrate;
WiFiClient-client; //Maak een WiFi-client en
HTTPClient
ongeldige setup() {
Serieel.begin(9600); //Start de seriële communicatie WiFi.disconnect(); //Verbreek de verbinding en maak opnieuw verbinding met de wifi die je hebt ingesteld voor vertraging (1000); WiFi.begin(ssid, wachtwoord); Serial.println("Verbonden met het wifi-netwerk"); // Feedback weergeven op de seriële monitor Serial.println (WiFi.localIP ()); weergave.begin(); weergave.weergave(); vertraging (1000);
display.clearDisplay();
weergave.weergave();
display.setTextSize(1);
display.setTextColor(WIT);
}
lege lus()
{ // Lezen 1: Lezen van bevestigde gevallen
if(http.begin(host, httpPortRead, url1)) // Maak verbinding met de host en de url
{ int httpCode = http. GET(); //Controleer feedback als er een reactie is if (httpCode > 0) { if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) { Cases = http.getString(); Serial.print("Bevestigde gevallen: "); Serial.println(Gevallen); display.setCursor(0, 0); display.println ("COVID19 LIVE"); display.println(""); display.println("Bevestigde gevallen: "); display.println(Gevallen); weergave.weergave(); vertraging (4000); display.clearDisplay(); } } else //If we can't get data { Serial.printf("[HTTP] GET… failed, error: %s\n", http.errorToString(httpCode).c_str()); } http.end(); } else //If we can't connect to the HTTP { Serial.printf("[HTTP} Unable to connect\n"); }
// Lezen 2: Lezen van Hersteld
if(http.begin(host, httpPortRead, url2))
{ int httpCode = http. GET(); if (httpCode > 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) { Recover = http.getString(); Serial.print("Hersteld: "); Serial.println (Herstellen); display.setCursor(0, 0); display.println ("COVID19 LIVE"); display.println(""); display.println("Hersteld: "); display.println(Herstellen); weergave.weergave(); vertraging (4000); display.clearDisplay(); } } else { Serial.printf("[HTTP] GET… mislukt, fout: %s\n", http.errorToString(httpCode).c_str()); } http.end(); } else { Serial.printf("[HTTP} Kan geen verbinding maken\n"); }
// Lezen 3: Lezen van sterfgevallen
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("Overleden: "); Serial.println(Dood); display.setCursor(0, 0); display.println ("COVID19 LIVE"); display.println(""); display.println("Overleden: "); display.println(Dood); weergave.weergave(); vertraging (4000); display.clearDisplay(); } } else { Serial.printf("[HTTP] GET… mislukt, fout: %s\n", http.errorToString(httpCode).c_str()); } http.end(); } else { Serial.printf("[HTTP} Kan geen verbinding maken\n"); }
// Lezen 4: Lezen van herstelpercentage
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("Herstelpercentage: "); Serial.println (Recoveryrate); display.setCursor(0, 0); display.println ("COVID19 LIVE"); display.println(""); display.println("Herstelpercentage: "); display.print(Herstel); display.println(" % "); weergave.weergave(); vertraging (4000); display.clearDisplay(); } } else { Serial.printf("[HTTP] GET… mislukt, fout: %s\n", http.errorToString(httpCode).c_str()); } http.end(); } else { Serial.printf("[HTTP} Kan geen verbinding maken\n"); }
// Lezen 5: Lezen van sterftecijfer
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("Dodental: "); Serial.println (Deathrate); display.setCursor(0, 0); display.println ("COVID19 LIVE"); display.println(""); display.println("Dodental: "); display.print(Deathrate); display.println(" % "); weergave.weergave(); vertraging (4000); display.clearDisplay(); weergave.weergave(); } } else { Serial.printf("[HTTP] GET… mislukt, fout: %s\n", http.errorToString(httpCode).c_str()); } http.end(); } else { Serial.printf("[HTTP} Kan geen verbinding maken\n"); } while (WiFi.status() != WL_CONNECTED) //In het geval dat de wifi-verbinding wegvalt { WiFi.disconnect(); vertraging (1000); WiFi.begin(ssid, wachtwoord); Serial.println("Opnieuw verbinding maken met wifi.."); display.setCursor(0, 0); display.println ("Techtronic Harsh"); display.println(""); display.println(" Verbinding maken… "); weergave.weergave(); vertraging (10000); display.clearDisplay(); weergave.weergave(); }
}
/* © Techtronic Harsh
Youtube:
Instructables: https://www.instructables.com/member/… Instagram: https://instagram.com/techtronicharsh Website: https://techtronicharsh.com Telegram:
*/
Stap 4: Werken:
Maak de verbindingen volgens het schakelschema en upload de code na het selecteren van de juiste kaart en COM-poort. Als er een fout wordt weergegeven, zorg er dan voor dat u de bibliotheek hebt toegevoegd volgens de bovenstaande instructie.
Als het veel tijd kost om op OLED te draaien, zorg er dan voor dat u goed bent verbonden met internetdiensten, d.w.z. uw wifi of hotspot.
Aanbevolen:
Live gegevens van een temperatuursensor plotten (TMP006) met behulp van MSP432 LaunchPad en Python: 9 stappen
Live gegevens van een temperatuursensor plotten (TMP006) met behulp van MSP432 LaunchPad en Python: De TMP006 is een temperatuursensor die de temperatuur van een object meet zonder contact met het object te maken. In deze tutorial zullen we live temperatuurgegevens van het BoosterPack (TI BOOSTXL-EDUMKII) plotten met Python
Ableton Live besturen met Atto of een Arduino Leonardo: 3 stappen
Ableton Live besturen met Atto of een Arduino Leonardo: Dit is een demovideo voor de Piksey Atto. We leren hoe je het als een MIDI-apparaat kunt gebruiken en hoe je tracks kunt besturen in Ableton Live 10 Lite. We gebruiken een breadboard samen met momentschakelaars en je kunt ook een Arduino Leonardo gebruiken voor dit project. Als je bouwt
Loactor Met Of Live Rapport Met Chat Bot: 4 Stappen
Loactor Of Live Reporting Chat Bot gebruiken: verkrijg via WhatsApp variabelen (locatie, hoogte, druk…) van NodeMCU zoals gevraagd of stuur commando's naar NodeMCU via Twilio's API. Sinds een paar weken werk ik met Twilio's API, speciaal voor WhatsApp-berichten, en zelfs een app gemaakt
Live streamen met Raspberry Pi: 5 stappen
Live streamen met Raspberry Pi: in deze tutorial leren we hoe we onze eigen bewakingscamera kunnen maken met Raspberry Pi. Je hebt toegang tot deze stream met elk apparaat, zolang het maar is verbonden met hetzelfde netwerk als de RPi
Internetklok: datum en tijd weergeven met een OLED met ESP8266 NodeMCU met NTP-protocol - Ajarnpa
Internetklok: datum en tijd weergeven met een OLED met behulp van ESP8266 NodeMCU met NTP-protocol: Hallo allemaal, in deze instructables zullen we een internetklok bouwen die tijd van internet haalt, zodat dit project geen RTC nodig heeft om te draaien, het heeft alleen een werkende internetverbinding En voor dit project heb je een esp8266 nodig die een