Πίνακας περιεχομένων:

Ζωντανός ιχνηλάτης Covid19 χρησιμοποιώντας ESP8266 και OLED - Πραγματικός πίνακας ελέγχου Covid19 σε πραγματικό χρόνο: 4 βήματα
Ζωντανός ιχνηλάτης Covid19 χρησιμοποιώντας ESP8266 και OLED - Πραγματικός πίνακας ελέγχου Covid19 σε πραγματικό χρόνο: 4 βήματα

Βίντεο: Ζωντανός ιχνηλάτης Covid19 χρησιμοποιώντας ESP8266 και OLED - Πραγματικός πίνακας ελέγχου Covid19 σε πραγματικό χρόνο: 4 βήματα

Βίντεο: Ζωντανός ιχνηλάτης Covid19 χρησιμοποιώντας ESP8266 και OLED - Πραγματικός πίνακας ελέγχου Covid19 σε πραγματικό χρόνο: 4 βήματα
Βίντεο: ✅ Microsoft Flight Simulator 2020●СМОТРИМ UPDATE 5●Live Stream●На Logitech 3d Pro 2024, Ιούλιος
Anonim
Image
Image

Επισκεφθείτε την ιστοσελίδα Techtronic Harsh:

Παντού υπάρχει μια τεράστια έξαρση του νέου κορονοϊού (COVID19). Έγινε απαραίτητο να παρακολουθούμε το τρέχον σενάριο του COVID-19 στον κόσμο.

Έτσι, όντας στο σπίτι, αυτό ήταν το έργο που σκέφτηκα "World's Live Covid19 Dashboard"-Ένας πίνακας εργαλείων που παρέχει ενημερώσεις σε πραγματικό χρόνο για την κατάσταση του COVID-19 στον κόσμο. Δεν χρειάζεται πλέον να κρατάτε την τηλεόραση ανοιχτή ή να παρακολουθείτε σε διάφορους ιστότοπους.

Ο σχεδιασμός του έργου δεν ήταν το σημαντικό μέρος. Αλλά το να κάνεις κάτι χρήσιμο, χρησιμοποιώντας τα απαραίτητα εξαρτήματα ήταν η πρόκληση. Αυτό το έργο σίγουρα θα σας βοηθήσει να δημιουργήσετε μια απλή διεπαφή πίνακα ελέγχου για να σας ενημερώνει.

Προμήθειες

  • ESP8266
  • Οθόνη OLED
  • Καλώδια βραχυκύκλωσης

Βήμα 1: Διαγράμματα:

Εγκαθιστώ
Εγκαθιστώ

Βήμα 2: Ρύθμιση:

Εγκαθιστώ
Εγκαθιστώ
Εγκαθιστώ
Εγκαθιστώ
  1. Επισκεφτείτε τον ιστότοπο του πίνακα ελέγχου Realtime Covid19. Εδώ χρησιμοποιώ το
  2. Είσοδος/Εγγραφή στο https://thingspeak.com. Μεταβείτε στην εφαρμογή και δημιουργήστε νέα δράση ThingHttp.

    • Δώστε το Όνομα της Επιλογής σας, URL (https://trackcorona.live), Μέθοδος ως GET και στο Parse String, πρέπει να επικολλήσετε το XPath από τον ιστότοπο trackcorna.live του απαιτούμενου πεδίου που πρέπει να εμφανίσετε.
    • Στο παραπάνω παράδειγμα (εικόνα), αναλύω συμβολοσειρά για επιβεβαιωμένες περιπτώσεις, το μόνο που χρειάζεται να κάνετε είναι

      • Κάντε δεξί κλικ στον αριθμό επιβεβαιωμένων περιπτώσεων> Επιθεώρηση,
      • Πάλι δεξί κλικ στον Κώδικα> Αντιγραφή> CopyXPath
      • Επικολλήστε αυτό στο πεδίο Parse String της δράσης ThinkHttp και αποθηκεύστε το.
      • Ομοίως, κάντε αυτό για όλους τους ανακτήτες, το θάνατο, το ποσοστό θανάτου και το ποσοστό θανάτου.
      • Επισκεφτείτε τον πηγαίο κώδικα και αντικαταστήστε το SSID με το όνομα Wifi, τον κωδικό πρόσβασης με τον κωδικό πρόσβασής σας Wi -Fi και το κλειδί API με το ThingHttp API.
  3. Ανεβάστε τον κωδικό. Αυτό είναι!!

Βήμα 3: Πηγαίος κώδικας:

/* © Techtronic Harsh

Youtube:

Οδηγίες: https://www.instructables.com/member/… Instagram: https://instagram.com/techtronicharsh Ιστότοπος: https://techtronicharsh.com Telegram:

*/

#Include // Χρήση λειτουργιών ESP8266 #include #include #include #include #include

Adafruit_SSD1306 εμφάνιση = Adafruit_SSD1306 (128, 32, & Wire);

const char*ssid = "*******"; // SSID του δρομολογητή σας, δηλαδή όνομα WiFi const char*password = "*******"; // Ο κωδικός πρόσβασής σας WiFi const char* host = "api.thingspeak.com"; // Διαβάζουμε τα δεδομένα από αυτόν τον κεντρικό υπολογιστή const int httpPortRead = 80; /* Απλώς αλλάξτε το κλειδί API με το API σας μέσω ThingHttp*/const char* url1 = "/apps/thinghttp/send_request? Api_key = TGC4KNQ98REOA4JH"; // Επιβεβαιώθηκε const char* url2 = "/apps/thinghttp/send_request? Api_key = Y0ALN1QGDTNLLNNM"; // Ανακτήθηκε const char* url3 = "/apps/thinghttp/send_request? Api_key = 0J24MB3W9F9Q0E7M"; // Death const char* url4 = "/apps/thinghttp/send_request? Api_key = R2BKR1DRVS5YT2PH"; // Ποσοστό ανάκτησης const char* url5 = "/apps/thinghttp/send_request? Api_key = VYMVMGK9S8W21EXQ"; // Ποσοστό μοιραίας

Κορνίζες, Θάνατος, Ανάκτηση, Ανάκτηση, Θάνατος

Πελάτης WiFiClient. // Δημιουργία πελάτη WiFi και πελάτη

HTTPClient

void setup () {

Serial.begin (9600); // Ξεκινήστε τη σειριακή επικοινωνία WiFi.disconnect (); // Αποσυνδέστε και επανασυνδεθείτε στο Wifi που έχετε ορίσει καθυστέρηση (1000). WiFi.begin (ssid, κωδικός πρόσβασης); Serial.println ("Συνδεδεμένο στο δίκτυο WiFi"); // Εμφάνιση σχολίων για τη σειριακή οθόνη Serial.println (WiFi.localIP ()); display.begin (); display.display (); καθυστέρηση (1000)?

display.clearDisplay ();

display.display ();

display.setTextSize (1);

display.setTextColor (ΛΕΥΚΟ);

}

κενός βρόχος ()

{// Ανάγνωση 1: Ανάγνωση επιβεβαιωμένων περιπτώσεων

if (http.begin (host, httpPortRead, url1)) // Σύνδεση με τον κεντρικό υπολογιστή και τη διεύθυνση url

{int httpCode = http. GET (); // Ελέγξτε τα σχόλια εάν υπάρχει απάντηση εάν (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Cases = http.getString (); Serial.print ("Επιβεβαιωμένες περιπτώσεις:"); Serial.println (Περιπτώσεις); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Επιβεβαιωμένες περιπτώσεις:"); display.println (Θήκες); display.display (); καθυστέρηση (4000)? display.clearDisplay (); }} else // Εάν δεν μπορούμε να λάβουμε δεδομένα {Serial.printf ("[HTTP] GET… απέτυχε, σφάλμα: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else // Εάν δεν μπορούμε να συνδεθούμε στο HTTP {Serial.printf ("[HTTP} Unable to connect / n"); }

// Ανάγνωση 2: Ανάγνωση των Ανακτημένων

εάν (http.begin (host, httpPortRead, url2))

{int httpCode = http. GET (); εάν (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Ανάκτηση = http.getString (); Serial.print ("Ανακτήθηκε:"); Serial.println (Ανάκτηση); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Ανακτήθηκε:"); display.println (Ανάκτηση); display.display (); καθυστέρηση (4000)? display.clearDisplay (); }} else {Serial.printf ("[HTTP] GET… απέτυχε, σφάλμα: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} Δεν είναι δυνατή η σύνδεση / n"); }

// Ανάγνωση 3: Ανάγνωση θανάτων

εάν (http.begin (host, httpPortRead, url3))

{int httpCode = http. GET (); εάν (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Death = http.getString (); Serial.print ("Θάνατοι:"); Serial.println (Θάνατος); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Θάνατοι:"); display.println (Θάνατος); display.display (); καθυστέρηση (4000)? display.clearDisplay (); }} else {Serial.printf ("[HTTP] GET… απέτυχε, σφάλμα: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} Δεν είναι δυνατή η σύνδεση / n"); }

// Ανάγνωση 4: Ανάγνωση του ποσοστού ανάκτησης

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

{int httpCode = http. GET (); εάν (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Recoveryrate = http.getString (); Serial.print ("Ποσοστό ανάκτησης:"); Serial.println (Recoveryrate); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Ποσοστό ανάκτησης:"); display.print (Επαναφορά) display.println (" %"); display.display (); καθυστέρηση (4000)? display.clearDisplay (); }} else {Serial.printf ("[HTTP] GET… απέτυχε, σφάλμα: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} Δεν είναι δυνατή η σύνδεση / n"); }

// Ανάγνωση 5: Ανάγνωση του ποσοστού θανάτου

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

{int httpCode = http. GET (); εάν (httpCode> 0) {if (httpCode == HTTP_CODE_OK || httpCode == HTTP_CODE_MOVED_PERMANENTLY) {Deathrate = http.getString (); Serial.print ("Ποσοστό μοιραίας:"); Serial.println (Deathrate); display.setCursor (0, 0); display.println ("COVID19 LIVE"); display.println (""); display.println ("Ποσοστό μοιραίας:"); display.print (Deathrate); display.println (" %"); display.display (); καθυστέρηση (4000)? display.clearDisplay (); display.display (); }} else {Serial.printf ("[HTTP] GET… απέτυχε, σφάλμα: %s / n", http.errorToString (httpCode).c_str ()); } http.end (); } else {Serial.printf ("[HTTP} Δεν είναι δυνατή η σύνδεση / n"); } while (WiFi.status ()! = WL_CONNECTED) // Σε περίπτωση που χαθεί η σύνδεση Wifi {WiFi.disconnect (); καθυστέρηση (1000)? WiFi.begin (ssid, κωδικός πρόσβασης); Serial.println ("Επανασύνδεση σε WiFi.."); display.setCursor (0, 0); display.println ("Techtronic Harsh"); display.println (""); display.println ("Σύνδεση …"); display.display (); καθυστέρηση (10000)? display.clearDisplay (); display.display (); }

}

/* © Techtronic Harsh

Youtube:

Οδηγίες: https://www.instructables.com/member/… Instagram: https://instagram.com/techtronicharsh Ιστότοπος: https://techtronicharsh.com Telegram:

*/

Βήμα 4: Εργασία:

Κάντε τις συνδέσεις σύμφωνα με το διάγραμμα κυκλώματος και ανεβάστε τον κωδικό αφού επιλέξετε την κατάλληλη πλακέτα και τη θύρα COM. Εάν εμφανίζει σφάλμα, βεβαιωθείτε ότι έχετε προσθέσει τη βιβλιοθήκη σύμφωνα με τις οδηγίες που δίνονται παραπάνω.

Εάν χρειάζεται πολύς χρόνος για να εκτελεστεί σε OLED, βεβαιωθείτε ότι έχετε συνδεθεί σωστά σε υπηρεσίες διαδικτύου, δηλαδή το WiFi ή το Hotspot.

Συνιστάται: