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

Μετεωρολογικός Σταθμός WIFI Με Magicbit (Arduino): 6 Βήματα
Μετεωρολογικός Σταθμός WIFI Με Magicbit (Arduino): 6 Βήματα

Βίντεο: Μετεωρολογικός Σταθμός WIFI Με Magicbit (Arduino): 6 Βήματα

Βίντεο: Μετεωρολογικός Σταθμός WIFI Με Magicbit (Arduino): 6 Βήματα
Βίντεο: Παρουσίαση μετεωρολογικού σταθμού Bresser 7-in-1 Solar WLAN 4CAST - Mέρος 2 2024, Ιούλιος
Anonim
Image
Image

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

Προμήθειες

  • Magicbit
  • Καλώδιο USB-A σε Micro-USB
  • Μονάδα αισθητήρα Magicbit DHT11

Βήμα 1: Ιστορία

Σε αυτό το σεμινάριο θα μάθουμε πώς να φτιάξουμε έναν φορητό μετεωρολογικό σταθμό χρησιμοποιώντας τον πίνακα Magicbit dev με μονάδα αισθητήρα DHT11. Χρησιμοποιώντας έξυπνο τηλέφωνο, μπορούμε να λάβουμε τις λεπτομέρειες για τον καιρό όπου βρίσκεται το Magicbit.

Βήμα 2: Θεωρία και Μεθοδολογία

Σε αυτόν τον μετεωρολογικό σταθμό ελπίζουμε να λάβουμε δεδομένα σχετικά με τη θερμοκρασία και την υγρασία όπου θέλουμε. Πρώτον, πρέπει να λάβουμε τα δεδομένα από τον αισθητήρα που είναι ευαίσθητος στη θερμοκρασία και την υγρασία. Στη συνέχεια, το σήμα εξόδου αυτού του αισθητήρα δίνεται στον μικροελεγκτή που διαθέτει προσαρμογέα WIFI για σύνδεση με το διαδίκτυο. Για όλα αυτά χρησιμοποιήσαμε απλώς τον κεντρικό πίνακα Magicbit και τη μονάδα αισθητήρα DHT11 που μπορούν να συνδεθούν απευθείας στο Magicbit. Το Magicbit διαθέτει επεξεργαστή ESP32. Επομένως, έχει ενσωματωμένη σύνδεση WIFI για σύνδεση με το Διαδίκτυο. Στη συνέχεια μεταφέρουμε τα δεδομένα των αισθητήρων μας στην πλατφόρμα cloud και χρησιμοποιώντας συγκεκριμένη εφαρμογή σχεδιάσαμε την προσαρμοσμένη μας διεπαφή και δείχνουμε αυτές τις λεπτομέρειες χρησιμοποιώντας το. Για το σκοπό αυτό χρησιμοποιούμε την εφαρμογή Blynk. Αυτή η εφαρμογή βασίζεται σε εφαρμογή IOT. Αλλά είναι πολύ απλό και μπορούμε να κάνουμε πολλά έργα από αυτό. Επίσης υποστηρίζει πολλούς τύπους επεξεργαστών όπως Arduino, Esp32 και ούτω καθεξής. Μπορείτε να λάβετε περισσότερες λεπτομέρειες σχετικά με αυτήν την εφαρμογή και αυτήν την πλατφόρμα on/ine, μεταβαίνοντας στον ακόλουθο σύνδεσμο.

blynk.io/el/getting-started

Βήμα 3: Ρύθμιση υλικού

Ρύθμιση λογισμικού
Ρύθμιση λογισμικού

Αυτό είναι πολύ απλό. Συνδέστε τη μονάδα αισθητήρα στο Magicbit. Στη συνέχεια, συνδέστε το Magicbit στον υπολογιστή χρησιμοποιώντας καλώδιο micro USB.

Βήμα 4: Ρύθμιση λογισμικού

Ρύθμιση λογισμικού
Ρύθμιση λογισμικού
Ρύθμιση λογισμικού
Ρύθμιση λογισμικού

Το μεγαλύτερο μέρος αυτού του έργου γίνεται στη ρύθμιση λογισμικού. Στο μέρος της θεωρίας και της μεθοδολογίας, αναφέραμε ότι χρησιμοποιούμε την εφαρμογή Blynk για την εμφάνιση των δεδομένων μας. Επομένως, ας το ρυθμίσουμε.

Πρώτα πρέπει να κατεβάσετε και να εγκαταστήσετε την εφαρμογή Blynk από το play store στο τηλέφωνό σας Android ή από το κατάστημα εφαρμογών στο ios σας. Στη συνέχεια ανοίξτε το. Τώρα ζητά να εγγραφεί ή να συνδεθεί. Αυτό είναι πολύ εύκολο. Εάν χρησιμοποιείτε για πρώτη φορά αυτήν την εφαρμογή, δώστε τη διεύθυνση email σας και πληκτρολογήστε όποιον κωδικό θέλετε και εγγραφείτε

Αφού συνδεθείτε στο Blynk, επιλέξτε νέο εικονίδιο έργου και θα μπείτε στη νέα σελίδα έργου. Στη συνέχεια, εισαγάγετε το όνομα του έργου σας και σας ρώτησε ποιος τύπος πλακέτας χρησιμοποιήσατε και ποια σύνδεση χρησιμοποιήσατε για να επικοινωνήσετε με τον επεξεργαστή. Ορίστε το ως ESP32 dev και WIFI. Τώρα κάντε κλικ στο κουμπί δημιουργίας και θα δείτε κάποιο μασάζ στην οθόνη. Σύμφωνα με αυτό τώρα πρέπει να ελέγξετε τα εισερχόμενα email σας. Επειδή σας έστειλαν κάποιο κωδικό ταυτότητας για το έργο σας. Ελέγξτε το email σας βεβαιωθείτε ότι το λάβατε. Χρησιμοποιούμε αυτόν τον κωδικό στον πηγαίο κώδικα Arduino αργότερα. Τώρα έχετε άδειο χώρο εργασίας και μπορείτε να τον προσαρμόσετε όπως σας αρέσει

Τώρα κάντε κλικ στο θετικό πρόσημο στην επάνω γραμμή της οθόνης και θα μπείτε στη νέα σελίδα. Έχει πολλές επιλογές που ονομάζονται widgets. Αυτά τα widget χρησιμοποιούνται για την εμφάνιση δεδομένων και τον έλεγχο συσκευών από απόσταση. Μπορείτε να μάθετε περισσότερα για αυτό περαιτέρω από αυτόν τον σύνδεσμο

docs.blynk.cc/#:~:text=Now%20imagine%3A%2… a%20blynk%20of%20an%20eye.

Σε αυτό το έργο αναπαριστούμε τα δεδομένα μας χρησιμοποιώντας δύο αναλογικούς μετρητές και δείχνουμε τη διακύμανση των δεδομένων μας με το χρόνο χρησιμοποιώντας το γράφημα. Γι 'αυτό χρησιμοποιούμε δύο μετρητές και ένα σούπερ γράφημα. Επιλέγοντας αυτά τα γραφικά στοιχεία, μπορείτε να τα προσθέσετε στη σελίδα του χώρου εργασίας σας

Τώρα έχουμε πολύ μέρος εισαγωγής για να ολοκληρώσουμε. Αυτό διαμορφώνει αυτά τα γραφικά στοιχεία με τον κατάλληλο τρόπο. Για να το κάνετε αυτό, μπορείτε να εισέλθετε στις ρυθμίσεις κάθε widget. Κάνοντας κλικ σε οποιοδήποτε γραφικό στοιχείο, μπορείτε να εισαγάγετε τις σχετικές ρυθμίσεις του γραφικού στοιχείου στο οποίο κάνατε κλικ. σας επιτρέπει να αλλάξετε τις ρυθμίσεις κάθε widget. επειδή χρησιμοποιούμε το αριστερό widget για να δείξουμε τις λεπτομέρειες υγρασίας και το δεξί widget για τις λεπτομέρειες της θερμοκρασίας, καταχωρίστε πρώτα τις ρυθμίσεις του widget αριστερού μετρητή κάνοντας κλικ σε αυτό. Ορίστε το προτιμώμενο και το όνομα στο μετρητή και επιλέξτε το χρώμα που θέλετε για εμφάνιση των δεδομένων υγρασίας από το μανόμετρο. Ορίστε την είσοδο ως V5 και εύρος 0 έως 100. Το V5 σημαίνει οπτικό 5 ακίδων. Αυτό σημαίνει ότι η εφαρμογή λαμβάνει δεδομένα από την οπτική 5 ακίδα. δεν είναι ο πέμπτος πείρος από το ESP32. Το Visual 5 pin χρησιμοποιείται μόνο για επικοινωνία μεταξύ του πίνακα και της εφαρμογής μέσω διαδικτύου. Δεν είναι πραγματική καρφίτσα. Η υγρασία θα εμφανίζεται μεταξύ 0 και 100. Ορίστε επίσης το ρυθμό ανάγνωσης στο 1. έτσι ώστε η ανάγνωση δεδομένων να ενημερώνεται σε κάθε δευτερόλεπτο. Μπορείτε να το αλλάξετε από οποιαδήποτε τιμή. αλλά σε πολλές περιπτώσεις το 1s είναι καλό για λήψη δεδομένων χωρίς καθυστέρηση

Bow επιστρέφοντας στην προβολή του έργου και εισαγάγετε τις σωστές ρυθμίσεις μετρητή και αλλάξτε τις ρυθμίσεις όπως κάναμε πριν. Θυμηθείτε να ορίσετε την είσοδο ως pin V6. Επειδή χρησιμοποιήσαμε ήδη το V5 για τα δεδομένα υγρασίας

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

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

Στο πρώτο στάδιο συμπεριλαμβάνουμε συγκεκριμένες βιβλιοθήκες για τη δημιουργία σύνδεσης στο Διαδίκτυο χρησιμοποιώντας WIFI. Οι βιβλιοθήκες είναι ήδη εγκατεστημένες με τον πίνακα Magicbit στο Arduino εκτός από τη βιβλιοθήκη Blynk. Μεταβείτε λοιπόν στο Sketch> Include Library> Manage Libraries και αναζητήστε τη βιβλιοθήκη Blynk και εγκαταστήστε την πιο πρόσφατη έκδοση. επίσης μπορείτε να κατεβάσετε τη βιβλιοθήκη από αυτόν τον σύνδεσμο

github.com/blynkkk/blynk-library

Αφού το κατεβάσετε, μεταβείτε στο Sketch> Include Library> add zip Library και επιλέξτε το αρχείο zip που κατεβάσατε.

Στη συνέχεια, πρέπει να ορίσετε το όνομα και τον κωδικό πρόσβασης WIFI στον κωδικό για σύνδεση στο Διαδίκτυο. Τώρα αντιγράψτε και επικολλήστε τον κωδικό Auth Token που λάβατε μέσω email. Ελέγξτε πού είναι συνδεδεμένος ο αισθητήρας μας στο Magicbit. Σε αυτήν την περίπτωση, ο συνδεδεμένος πείρος είναι 33. Στη ρύθμιση μπορείτε να δείτε ότι υπάρχουν δύο εικονικές ακίδες. Ορίστε αυτές τις καρφίτσες ως V5 και V6. Εάν χρησιμοποιούσατε διαφορετικούς ακροδέκτες στην εφαρμογή, τότε αλλάξτε την στον κώδικα. Όταν ο κωδικός εκτελείται στον επεξεργαστή, πρώτα συνδέεται με WIFI. Στη συνέχεια μεταδίδει τα δεδομένα μέσω διαδικτύου μέσω V5 και V6. Αυτή είναι μια διαδικασία βρόχου. Τώρα επιλέξτε τη σωστή θύρα com και επιλέξτε τον τύπο της πλακέτας ως magicbit. Τώρα ήρθε η ώρα να το ανεβάσετε

Μετά την επιτυχή μεταφόρτωση του κώδικα, ο πίνακας Magicbit θα συνδεθεί αυτόματα στο WIFI σας. Ανάλογα με την κατάσταση του περιβάλλοντός σας, μπορεί να είναι αργή ή ταχύτερη διαδικασία.

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

Βήμα 5: Αντιμετώπιση προβλημάτων

Εάν κάνετε κλικ στο κουμπί αναπαραγωγής έργου και αν δεν ανταποκρίνεται. Τότε,

  • Περίμενε λίγο. Επειδή μερικές φορές ο πίνακας είναι δύσκολο να ανακαλυφθεί το WIFI σας σύμφωνα με την περιβαλλοντική σας κατάσταση. επίσης αργή σύνδεση στο Διαδίκτυο μπορεί να είναι λόγος για αυτό.
  • Ελέγξτε τον κωδικό Auth και τα στοιχεία WIFI είναι σωστά στον κωδικό που εισαγάγατε.
  • Αλλάξτε τη σύνδεση WIFI.

Βήμα 6: Κωδικός Arduino

/*************************************************************

Κατεβάστε την πιο πρόσφατη βιβλιοθήκη Blynk εδώ:

github.com/blynkkk/blynk-library/releases/latest Το Blynk είναι μια πλατφόρμα με εφαρμογές iOS και Android για τον έλεγχο του Arduino, του Raspberry Pi και των προτιμήσεων μέσω Διαδικτύου. Μπορείτε εύκολα να δημιουργήσετε γραφικές διεπαφές για όλα τα έργα σας, απλά σύροντας και αποθέτοντας widget. Λήψεις, έγγραφα, μαθήματα: https://www.blynk.cc Γεννήτρια σκίτσων: https://examples.blynk.cc Κοινότητα Blynk: https://community.blynk.cc Ακολουθήστε μας: https://www.fb. com/blynkapp Η βιβλιοθήκη Blynk έχει άδεια με άδεια MIT Αυτός ο κώδικας παραδείγματος είναι δημόσιος τομέας. ********************************************** *********** Αυτό το παράδειγμα δείχνει πώς μπορεί να προωθηθεί η αξία από το Arduino στην εφαρμογή Blynk. ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Για αυτό το παράδειγμα θα χρειαστείτε βιβλιοθήκες αισθητήρων Adafruit DHT: https://github.com/adafruit/Adafruit_Sensor https://github.com/adafruit/DHT-sensor-library Ρύθμιση έργου εφαρμογής: Γραφικό στοιχείο Value Display που επισυνάπτεται στο V5 Γραφικό στοιχείο Value Display που επισυνάπτεται στο V6 **************************************** *****************//*Σχολιάστε αυτό για να απενεργοποιήσετε τις εκτυπώσεις και να εξοικονομήσετε χώρο*/ #define BLYNK_PRINT Serial #include #include #include #include "DHT.h" // Θα πρέπει να λάβετε το Auth Token στην εφαρμογή Blynk. // Μεταβείτε στις Ρυθμίσεις έργου (εικονίδιο παξιμαδιού). char auth = "****************"; // το διακριτικό έγκρισης σας έλαβε μέσω email // Τα διαπιστευτήριά σας WiFi // Ορίστε τον κωδικό πρόσβασης σε "" για ανοιχτά δίκτυα. char ssid = "**********"; /// το όνομα wifi σας char pass = "**********"; // wifi password #define DHTPIN 33 // Σε ποια ψηφιακή καρφίτσα είμαστε συνδεδεμένοι // Μην σχολιάζετε τον τύπο που χρησιμοποιείτε! #define DHTTYPE DHT11 // DHT 11 //#define DHTTYPE DHT22 // DHT 22, AM2302, AM2321 //#define DHTTYPE DHT21 // DHT 21, AM2301 DHT dht (DHTPIN, DHTTYPE); Χρονοδιακόπτης BlynkTimer. // Αυτή η λειτουργία αποστέλλει τον χρόνο αύξησης του Arduino κάθε δευτερόλεπτο στο Virtual Pin (5). // Στην εφαρμογή, η συχνότητα ανάγνωσης του Widget πρέπει να οριστεί σε PUSH. Αυτό σημαίνει // ότι ορίζετε τη συχνότητα αποστολής δεδομένων στην εφαρμογή Blynk. void sendSensor () {float h = dht.readHumidity (); float t = dht.readTemperature (); // ή dht.readTemperature (true) για Fahrenheit if (isnan (h) || isnan (t)) {Serial.println ("Δεν ήταν δυνατή η ανάγνωση από τον αισθητήρα DHT!"); ΕΠΙΣΤΡΟΦΗ; } // Μπορείτε να στείλετε οποιαδήποτε τιμή ανά πάσα στιγμή. // Μην στείλετε περισσότερες από 10 τιμές ανά δευτερόλεπτο. Blynk.virtualWrite (V5, h); Blynk.virtualWrite (V6, t); } void setup () {// Κονσόλα εντοπισμού σφαλμάτων Serial.begin (115200); καθυστέρηση (1000)? Blynk.begin (auth, ssid, pass); // Μπορείτε επίσης να καθορίσετε διακομιστή: //Blynk.begin(auth, ssid, pass, "blynk-cloud.com", 80); //Blynk.begin(auth, ssid, pass, IPAddress (192, 168, 1, 100), 8080); dht.begin (); // Ρυθμίστε μια λειτουργία που θα καλείται κάθε δεύτερο timer.setInterval (1000L, sendSensor); } void loop () {Blynk.run (); timer.run (); }

Συνιστάται: