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

Covid19 Stat IoT Display: 5 Βήματα
Covid19 Stat IoT Display: 5 Βήματα

Βίντεο: Covid19 Stat IoT Display: 5 Βήματα

Βίντεο: Covid19 Stat IoT Display: 5 Βήματα
Βίντεο: How to Moonwalk 2024, Ιούλιος
Anonim
Image
Image
Πράγματα που χρειάζονται
Πράγματα που χρειάζονται

Ο κόσμος που βρίσκεται σήμερα στην πανδημία του κορωνοϊού και όπως πολλές άλλες χώρες το κλείδωμά του και στην Ινδία, έτσι πήρα αυτή την ιδέα να δημιουργήσω μια οθόνη IoT που θα δώσει μια πραγματική ενημέρωση σε πραγματικό χρόνο των στατιστικών Corona της χώρας. Χρησιμοποιώ ένα API που παρέχει δεδομένα της Ινδίας, αλλά μπορείτε να χρησιμοποιήσετε οποιοδήποτε API με μικρή αλλαγή στον κώδικα.

Βήμα 1: Τα πράγματα που χρειάζονται

Πράγματα που χρειάζονται
Πράγματα που χρειάζονται
Πράγματα που χρειάζονται
Πράγματα που χρειάζονται

Εδώ είναι τα πράγματα που θα χρειαστείτε για να κάνετε την εμφάνιση του IoT:

  • NodeMCU (ESP8266)
  • 16x2 μονάδα LCD (I2C)
  • Breadboard (προαιρετικό)
  • Μερικά καλώδια/ άλτες
  • καλώδιο USB

Βήμα 2: Συνδέσεις

Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις
Συνδέσεις

Οι συνδέσεις είναι αρκετά εύκολες. Υπάρχουν μόνο 4 καλώδια για σύνδεση. Μπορείτε να χρησιμοποιήσετε ένα breadboard για να τοποθετήσετε το esp8266 σε αυτό και, στη συνέχεια, να συνδεθείτε με τη μονάδα LCD ή μπορείτε απλά να χρησιμοποιήσετε καλώδια απευθείας θηλυκού προς θηλυκού άλτη για σύνδεση.

Οι συνδέσεις είναι (ESP-> LCD):

  1. VIN -> VCC (για 5V)
  2. GND -> GND
  3. D2 -> SDA
  4. D1 -> SCL

Τώρα απλώς συνδέστε το esp8266 με το καλώδιο USB στον υπολογιστή, τώρα απλά πρέπει να ανεβάσουμε τον κώδικα.

Βήμα 3: Κωδικοποίηση

Κωδικοποίηση
Κωδικοποίηση

Τώρα, αυτό είναι το πιο σημαντικό μέρος. Πολλοί από εσάς θα έχετε ερωτήσεις στο μυαλό σας πώς λειτουργεί αυτό;

Έτσι, συνδέεται πρώτα με το wifi και στη συνέχεια συνδέεται με ένα API για τη συλλογή δεδομένων JSON, στη συνέχεια αποκωδικοποιεί τα δεδομένα JSON και αποθηκεύει αυτές τις τιμές σε μια μεταβλητή, στη συνέχεια η οθόνη LCD εμφανίζει τις τιμές και αυτό συνεχίζεται σε έναν βρόχο.

Το API που χρησιμοποίησα είναι το https://coronago.xyz/api/data.json, το οποίο λαμβάνει τα δεδομένα του από το https://www.covid19india.org/, παρέχει δεδομένα μόνο για την Ινδία, αλλά υπάρχουν πολλά API για άλλες χώρες, μπορείτε να χρησιμοποιήσετε οποιοδήποτε API, αλλά βεβαιωθείτε ότι είναι προσβάσιμο από το

Πρώτον, πρέπει να εγκαταστήσετε την υποστήριξη πλακέτας ESP8266 για το Arduino IDE. Ακολουθήστε αυτό το σεμινάριο.

Το δεύτερο πράγμα που πρέπει να κάνετε είναι να εγκαταστήσετε όλες τις απαιτούμενες Βιβλιοθήκες, μπορείτε εύκολα να τις εγκαταστήσετε από το Arduino Library Manager.

Στη συνέχεια, ανοίξτε τον κώδικα και αλλάξτε τα διαπιστευτήρια wifi και ανεβάστε τον κώδικα.

ο κώδικας βρίσκεται εδώ στο αποθετήριο GitHub-https://github.com/Soumojit28/covid19-iot-display.

Βήμα 4: Επεξήγηση κώδικα και χρήση άλλου API

Επεξήγηση κώδικα και χρήση άλλου API
Επεξήγηση κώδικα και χρήση άλλου API

Ο κώδικας είναι αρκετά απλός

Στο τμήμα κενής ρύθμισης αρχικοποιεί τη μονάδα LCD και εμφανίζει το επίκεντρο μήνυμα και στη συνέχεια συνδέεται στο δίκτυο wifi.

Στο τμήμα του βρόχου, παίρνει τα δεδομένα JSON από το API και αποκωδικοποιεί την αποθήκευση διαφημίσεων σε μια μεταβλητή και στη συνέχεια εμφανίζει αυτά στη σειριακή οθόνη και την οθόνη LCD.

για τη χρήση άλλου API πρέπει να αλλάξετε τη διεύθυνση σε αυτήν τη γραμμή του κώδικα

http.begin ("https://coronago.xyz/api/data.json"); // API

Ένα άλλο πράγμα που το API πρέπει να λειτουργεί με σύνδεση HTTP, η σύνδεση HTTPS δεν θα λειτουργήσει σε αυτόν τον κώδικα και θα λάβετε σφάλμα -1.

Το API επιστρέφει τα δεδομένα JSON έτσι

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

StaticJsonBuffer JSONBuffer; // Μνήμη JsonObject & parsed = JSONBuffer.parseObject (ωφέλιμο φορτίο); // Ανάλυση μηνύματος επιβεβαιωμένο = ανάλυση ["επιβεβαιωμένο"]; ανακτηθηκε = αναλυθηκε ["ανακτηθηκε"]? θάνατοι = αναλυμένοι ["θάνατοι"]; current_active = parsed ["active"];

Στη συνέχεια, ο κώδικας απλώς εμφανίζει τις μεταβλητές στη σειριακή οθόνη και στην οθόνη LCD.

Serial.print ("επιβεβαιώθηκε:"); Serial.println (επιβεβαιωμένο); Serial.print ("ανακτήθηκε:"); Serial.println (ανακτήθηκε); Serial.print ("currenty_active:"); Serial.println (current_active); Serial.print ("θάνατοι:"); Serial.println (θάνατοι); εάν (httpCode == 200) {// εμφανίσει τα δεδομένα σε lcd lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Επιβεβαιώθηκε:"); lcd.print (επιβεβαιωμένο) lcd.setCursor (0, 1); lcd.print ("Θάνατοι:"); lcd.print (θάνατοι) καθυστέρηση (2500)? lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Ενεργό:"); lcd.print (current_active); lcd.setCursor (0, 1); lcd.print ("Ανακτήθηκε:"); lcd.print (ανακτήθηκε) καθυστέρηση (2500)?

}

Βήμα 5: Συμπέρασμα

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

Εάν χρειάζεστε βοήθεια, μπορείτε να με ρωτήσετε μέσω σχολίων ή μπορείτε να ανοίξετε ένα θέμα στο Github μου

github.com/Soumojit28/covid19-iot-display για τυχόν προβλήματα που σχετίζονται με τον κώδικα.

Σας ευχαριστώ.

Συνιστάται: