Πίνακας περιεχομένων:
- Βήμα 1: Συστατικά:
- Βήμα 2: ΒΑΣΙΚΟΣ ΑΙΣΘΗΤΗΡΑΣ: Soil Moisture FC 28
- Βήμα 3: Κατανόηση του MQTT: για δημοσίευση απομακρυσμένων δεδομένων
- Βήμα 4: MQTT: Ρύθμιση λογαριασμού μεσίτη MQTT
- Βήμα 5: MQTT: Δημιουργία παρουσίας
- Βήμα 6: MQTT: Πληροφορίες παρουσίας
- Βήμα 7: MQTT: Προσθήκη χρήστη
- Βήμα 8: MQTT: Εκχώρηση κανόνα ACL
- Βήμα 9: Nodemcu: Διαμόρφωση
- Βήμα 10: Nodemcu: Μεταφόρτωση σεναρίων Lua στο Nodemcu με ESPlorer_1
- Βήμα 11: Nodemcu: Μεταφόρτωση σεναρίων Lua στο Nodemcu με ESPlorer_II
- Βήμα 12: Nodemcu: Μεταφόρτωση σεναρίων Lua στο Nodemcu με ESPlorer_III
- Βήμα 13: Nodemcu: Διαμόρφωση του Arduino για συνομιλία με τον Nodemcu
- Βήμα 14: Nodemcu: Ρύθμιση του προγράμματος -πελάτη MQTT στο Android
- Βήμα 15: Πρόσθετα βήματα: Εργασία με το Nokia LCD 5110
- Βήμα 16: Η τελική συναρμολόγηση
Βίντεο: ΠΑΡΑΚΟΛΟΥΘΗΣΤΕ ΤΟΝ ΚΗΠΟ ΣΑΣ: 16 Βήματα (με Εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:38
Παρακολουθήστε τον κήπο σας από οπουδήποτε, χρησιμοποιήστε τοπική οθόνη για να παρακολουθείτε τις συνθήκες του εδάφους τοπικά ή χρησιμοποιήστε το Mobile για παρακολούθηση από απόσταση. Το κύκλωμα χρησιμοποιεί αισθητήρα υγρασίας εδάφους, σε συνδυασμό με τη θερμοκρασία και την υγρασία για να ενημερωθούν για τις συνθήκες περιβάλλοντος του εδάφους.
Βήμα 1: Συστατικά:
- Arduino uno
- Nodemcu
- Αισθητήρας θερμοκρασίας & υγρασίας DHT 11
- Αισθητήρας υγρασίας εδάφους - FC28
- Τράπεζα μπαταριών 10000mah (για τροφοδοσία arduino & nodemcu)
- Nokia LCD 5110
- Resitor (5 x 10k, 1 x 330ohms)
- Ποτενσιόμετρο Περιστροφικός τύπος (για ρύθμιση της φωτεινότητας LCD) 0-100K
- Καλώδια βραχυκυκλωτήρων
- Breadboard
Βήμα 2: ΒΑΣΙΚΟΣ ΑΙΣΘΗΤΗΡΑΣ: Soil Moisture FC 28
Για να μετρήσουμε την υγρασία, χρησιμοποιούμε αισθητήρα υγρασίας εδάφους FC 28, η βασική αρχή του οποίου είναι ως εξής:-
Οι προδιαγραφές του αισθητήρα υγρασίας FC-28 είναι οι εξής: Τάση εισόδου: 3,3-5V
Τάση εξόδου: 0 - 4.2V
Ρεύμα εισόδου: 35mA
Σήμα εξόδου: Και αναλογικό και ψηφιακό
Ο αισθητήρας υγρασίας του εδάφους FC-28 έχει τέσσερις ακίδες: VCC: Ισχύς
A0: Αναλογική έξοδος
D0: Digitalηφιακή έξοδος
GND: Έδαφος
Για να συνδέσουμε τον αισθητήρα στην αναλογική λειτουργία, θα χρειαστεί να χρησιμοποιήσουμε την αναλογική έξοδο του αισθητήρα. Όταν λαμβάνουμε την αναλογική έξοδο από τον αισθητήρα υγρασίας εδάφους FC-28, ο αισθητήρας μας δίνει μια τιμή από 0 έως 1023. Η υγρασία μετριέται σε ποσοστό, οπότε θα χαρτογραφήσουμε αυτές τις τιμές από 0 έως 100 και στη συνέχεια θα τις δείξουμε η σειριακή οθόνη. Μπορείτε να ορίσετε διαφορετικά εύρη τιμών υγρασίας και να ενεργοποιήσετε ή να απενεργοποιήσετε την αντλία νερού σύμφωνα με αυτήν.
Η ενότητα περιέχει επίσης ένα ποτενσιόμετρο που θα ορίσει την τιμή κατωφλίου. Αυτή η τιμή κατωφλίου θα συγκριθεί από τον συγκριτή LM393. Η λυχνία LED εξόδου ανάβει και κατεβαίνει σύμφωνα με αυτήν την τιμή κατωφλίου.
Ο κώδικας για τη διασύνδεση με τον αισθητήρα υγρασίας του εδάφους λαμβάνεται σε περαιτέρω βήματα
Βήμα 3: Κατανόηση του MQTT: για δημοσίευση απομακρυσμένων δεδομένων
Πριν ξεκινήσουμε περαιτέρω, ας περάσουμε πρώτα από τη δημοσίευση απομακρυσμένων δεδομένων για το IOT
Το MQTT σημαίνει MQ Telemetry Transport. Είναι ένα πρωτόκολλο δημοσίευσης/εγγραφής, εξαιρετικά απλό και ελαφρύ, το οποίο έχει σχεδιαστεί για περιορισμένες συσκευές και δίκτυα χαμηλού εύρους ζώνης, μεγάλης καθυστέρησης ή αναξιόπιστων δικτύων. Οι αρχές σχεδιασμού είναι να ελαχιστοποιήσουν το εύρος ζώνης δικτύου και τις απαιτήσεις πόρων συσκευής, ενώ παράλληλα προσπαθούν να διασφαλίσουν την αξιοπιστία και κάποιο βαθμό διασφάλισης της παράδοσης. Αυτές οι αρχές αποδεικνύουν επίσης ότι καθιστούν το πρωτόκολλο ιδανικό για τον αναδυόμενο κόσμο «συνδεδεμένων συσκευών από μηχανή σε μηχανή» (M2M) ή «Διαδίκτυο των πραγμάτων» και για εφαρμογές σε κινητές συσκευές όπου το εύρος ζώνης και η ισχύς της μπαταρίας είναι κορυφαία.
Πηγή:
Το MQTT [1] (MQ Telemetry Transport or Message Queuing Telemetry Transport) είναι ένα πρότυπο ISO (ISO/IEC PRF 20922) [2] πρωτόκολλο ανταλλαγής μηνυμάτων δημοσίευσης-εγγραφής. Λειτουργεί πάνω από το πρωτόκολλο TCP/IP. Έχει σχεδιαστεί για συνδέσεις με απομακρυσμένες τοποθεσίες όπου απαιτείται "μικρό αποτύπωμα κώδικα" ή το εύρος ζώνης δικτύου είναι περιορισμένο.
Πηγή:
Βήμα 4: MQTT: Ρύθμιση λογαριασμού μεσίτη MQTT
Υπάρχουν διάφοροι λογαριασμοί μεσίτη MQTT, για αυτό το σεμινάριο, έχω χρησιμοποιήσει το cloudmqtt (https://www.cloudmqtt.com/)
Το CloudMQTT διαχειρίζεται διακομιστές Mosquitto στο cloud. Το Mosquitto εφαρμόζει το πρωτόκολλο MQ Telemetry Transport, MQTT, το οποίο παρέχει ελαφριές μεθόδους εκτέλεσης μηνυμάτων χρησιμοποιώντας μοντέλο αναμονής δημοσίευσης/εγγραφής μηνύματος.
Τα παρακάτω βήματα πρέπει να εκτελεστούν για τη ρύθμιση του λογαριασμού cloudmqtt ως μεσίτη
- Δημιουργήστε έναν λογαριασμό και συνδεθείτε στον πίνακα ελέγχου
- πατήστε Δημιουργία+ για να δημιουργήσετε μια νέα παρουσία
- Για να ξεκινήσετε πρέπει να εγγραφείτε για ένα πρόγραμμα πελατών, μπορούμε να δοκιμάσουμε το CloudMQTT δωρεάν με το σχέδιο CuteCat.
- Μετά τη δημιουργία του "στιγμιότυπου", το επόμενο βήμα είναι η δημιουργία χρήστη και η περαιτέρω εκχώρηση άδειας στον χρήστη για πρόσβαση στα μηνύματα (μέσω κανόνων ACL)
Μπορείτε να έχετε πρόσβαση στον πλήρη οδηγό για τη δημιουργία λογαριασμού μεσίτη MQTT στο cloudmqtt ακολουθώντας τον σύνδεσμο: -
Όλα τα παραπάνω βήματα τοποθετούνται ένα προς ένα στις ακόλουθες διαφάνειες
Βήμα 5: MQTT: Δημιουργία παρουσίας
Έχω δημιουργήσει ένα Instance με όνομα "myIOT"
σχέδιο: Χαριτωμένο σχέδιο
Βήμα 6: MQTT: Πληροφορίες παρουσίας
Η παρουσίαση παρέχεται αμέσως μετά την εγγραφή και μπορείτε να δείτε τις λεπτομέρειες της παρουσίας, όπως πληροφορίες σύνδεσης, στη σελίδα λεπτομερειών. Μπορείτε επίσης να μεταβείτε στη διεπαφή διαχείρισης από εκεί. Μερικές φορές πρέπει να χρησιμοποιήσετε ένα καθορισμένο URL σύνδεσης
Βήμα 7: MQTT: Προσθήκη χρήστη
Δημιουργήστε έναν χρήστη με όνομα "nodemcu_12" και δώστε έναν κωδικό πρόσβασης
Βήμα 8: MQTT: Εκχώρηση κανόνα ACL
Μετά τη δημιουργία νέου χρήστη (nodemcu_12) αποθηκεύστε τον νέο χρήστη, τώρα θα παρέχεται περαιτέρω ACL στο νέο χρήστη. Στη συνημμένη εικόνα, φαίνεται ότι, έχω παράσχει πρόσβαση ανάγνωσης και εγγραφής στον χρήστη.
Σημείωση: Το θέμα πρέπει να προστεθεί όπως φαίνεται σε μορφή (αυτό απαιτείται περαιτέρω για ανάγνωση και εγγραφή από κόμβο σε πρόγραμμα -πελάτη MQTT)
Βήμα 9: Nodemcu: Διαμόρφωση
Σε αυτό το συγκεκριμένο έργο, χρησιμοποίησα το nodemcu από την Knewron Technologies, περισσότερες πληροφορίες μπορείτε να λάβετε ακολουθώντας τον σύνδεσμο: -(https://www.dropbox.com/s/73qbh1jfdgkauii/smartWiFi%20Development%20Module%20-%20User% 20Guide.pdf? Dl = 0)
Μπορεί να φανεί ότι, το NodeMCU είναι ένα υλικολογισμικό που βασίζεται στο eLua για το ESP8266 WiFi SOC από το Espressif. Το Nodemcu από το knowron είναι προφορτωμένο με υλικολογισμικό, οπότε πρέπει απλά να φορτώσουμε το λογισμικό της εφαρμογής και συγκεκριμένα: -
- init.lua
- setup.lua
- config.lua
- app.lua
Όλα τα παραπάνω σενάρια lua μπορούν να μεταφορτωθούν από το Github ακολουθώντας τον σύνδεσμο: Λήψη από το Github
Από τα παραπάνω σενάρια lua, τροποποιήστε τα σενάρια config.lua με όνομα κεντρικού υπολογιστή MQTT, κωδικό πρόσβασης, wifi ssid κ.λπ.
Για να κατεβάσουμε τα παραπάνω σενάρια στο nodemcu, πρέπει να χρησιμοποιήσουμε εργαλεία όπως το "ESPlorer", ανατρέξτε στα έγγραφα για περισσότερες πληροφορίες:
Η εργασία με το ESPlorer περιγράφεται στο επόμενο βήμα
Βήμα 10: Nodemcu: Μεταφόρτωση σεναρίων Lua στο Nodemcu με ESPlorer_1
- Κάντε κλικ στο κουμπί Ανανέωση
- Επιλέξτε τη θύρα COM (Επικοινωνία) και το ρυθμό baud (Συνήθως χρησιμοποιείται 9600)
- Κάντε κλικ στο Άνοιγμα
Βήμα 11: Nodemcu: Μεταφόρτωση σεναρίων Lua στο Nodemcu με ESPlorer_II
Βήμα 12: Nodemcu: Μεταφόρτωση σεναρίων Lua στο Nodemcu με ESPlorer_III
Το κουμπί Save & compile θα στείλει και τα τέσσερα σενάρια lua στο nodemcu, αφού αυτό το nodemcu είναι έτοιμο να μιλήσει στο arduino μας.
Συγκέντρωση πληροφοριών CHIP ID:
Κάθε nodemcu έχει ένα αναγνωριστικό τσιπ (πιθανότατα κάποιο όχι), αυτό το αναγνωριστικό τσιπ απαιτείται περαιτέρω για τη δημοσίευση μηνύματος στον μεσίτη MQTT, για να μάθετε για το αναγνωριστικό τσιπ κάντε κλικ στο κουμπί Αναγνωριστικό τσιπ στο "ESPlorer"
Βήμα 13: Nodemcu: Διαμόρφωση του Arduino για συνομιλία με τον Nodemcu
Ο παρακάτω κωδικός καθορίζει την υγρασία, τη θερμοκρασία και την υγρασία του εδάφους και εμφανίζει περαιτέρω τα δεδομένα στο nokia LCD 5110 και σειριακά.
Κωδικός Arduino
Στη συνέχεια, συνδέστε το Arduino RX --- Nodemcu TX
Arduino TX --- Nodemcu RX
Ο παραπάνω κώδικας περιλαμβάνει επίσης τρόπους χρήσης softserial βιβλιοθήκης, με τους οποίους οι καρφίτσες DO μπορούν επίσης να χρησιμοποιηθούν για να λειτουργήσουν ως σειριακοί πείροι, έχω χρησιμοποιήσει καρφίτσες RX/TX για σύνδεση στη σειριακή θύρα nodemcu.
Προσοχή: Καθώς το nodemcu λειτουργεί με 3.3V, συνιστάται η χρήση αλλαγής επιπέδου, ωστόσο έχω συνδεθεί απευθείας χωρίς κανένα επιλογέα επιπέδου και η απόδοση φαίνεται σωστή για την παραπάνω εφαρμογή.
Βήμα 14: Nodemcu: Ρύθμιση του προγράμματος -πελάτη MQTT στο Android
Το τελευταίο βήμα για την προβολή πληροφοριών στο κινητό με android client:-
Υπάρχει ποικιλία εφαρμογών MQTT android, έχω χρησιμοποιήσει αυτήν από το google play με τον ακόλουθο σύνδεσμο:
.https://play.google.com/store/apps/details;
Η διαμόρφωση για την εφαρμογή Android είναι αρκετά απλή και πρέπει κανείς να διαμορφώσει τα παρακάτω
- Διεύθυνση κεντρικού υπολογιστή MQTT μαζί με τον αριθμό θύρας
- Όνομα χρήστη και διεύθυνση MQTT
- Διεύθυνση κόμβου μεσίτη MQTT
Αφού προσθέσετε τις παραπάνω λεπτομέρειες, συνδέστε την εφαρμογή, εάν η εφαρμογή είναι συνδεδεμένη με μεσίτη MQTT, τότε όλα τα δεδομένα εισόδου / σειριακής επικοινωνίας από το arduino εμφανίζονται ως αρχείο καταγραφής.
Βήμα 15: Πρόσθετα βήματα: Εργασία με το Nokia LCD 5110
Ακολουθούν οι διαμορφώσεις ακίδων για την οθόνη LCD 5110
1) RST - Επαναφορά
2) CE - Chip Enable
3) D/C - Επιλογή δεδομένων/εντολών
4) DIN - Σειριακή είσοδος
5) CLK - Είσοδος ρολογιού
6) VCC - 3.3V
7) ΦΩΣ - Έλεγχος οπίσθιου φωτισμού
8) GND - Ground
Όπως φαίνεται παραπάνω, συνδέστε το arduino με την LCD 5110 με την παραπάνω σειρά με αντίσταση 1-10 K ενδιάμεσα.
Ακολουθούν οι συνδέσεις pin to pin για LCD 5110 σε Arduino uno
- CLK - pinηφιακή ακίδα Arduino 3
- DIN - duηφιακή ακίδα Arduino 4
- D/C - pinηφιακή ακίδα Arduino 5
- RST - duηφιακή ακίδα Arduino 6
- CE - Arduino Digital pin 7
Περαιτέρω "BL" καρφίτσα του LCD 5110 μπορεί να χρησιμοποιηθεί μαζί με το δυναμόμετρο (0-100K) για τον έλεγχο της φωτεινότητας της οθόνης LCD
Η βιβλιοθήκη που χρησιμοποιείται για τον παραπάνω κώδικα είναι: - Κατεβάστε το PCD8544 από τον παρακάτω σύνδεσμο
Η ενσωμάτωση του DHT11, του αισθητήρα θερμοκρασίας και υγρασίας με το arduino μπορεί να εξεταστεί από τον ακόλουθο σύνδεσμο DHT11.
Βήμα 16: Η τελική συναρμολόγηση
Το τελευταίο βήμα είναι να συναρμολογήσετε όλα τα παραπάνω σε ένα κουτί κατά προτίμηση, για παροχή έχω χρησιμοποιήσει powerbank 10000mah για να τροφοδοτήσω τόσο το Arduino όσο και το Nodemcu.
Μπορούμε επίσης να χρησιμοποιήσουμε φορτιστή πρίζας τοίχου για μεγάλη διάρκεια, αν το επιθυμούμε.
Συνιστάται:
Ελέγξτε τον υπολογιστή σας με το κεφάλι σας!: 6 βήματα (με εικόνες)
Ελέγξτε τον υπολογιστή σας με το κεφάλι σας !: Γεια, δημιούργησα ένα σύστημα που σας επιτρέπει να ελέγχετε το ποντίκι του υπολογιστή σας απλά μετακινώντας το κεφάλι σας. Εάν σας αρέσει το έργο μου, μη διστάσετε να με ψηφίσετε στον διαγωνισμό Arduino 2017 .;) Γιατί το έκανα αυτό; wantedθελα να φτιάξω ένα αντικείμενο που κάνει τα βιντεοπαιχνίδια να
DIY: Παρακολουθήστε την μπαταρία του αυτοκινήτου σας: Κωδικός & ρύθμιση: 8 βήματα
DIY: Παρακολουθήστε τη μπαταρία του αυτοκινήτου σας: Κωδικός & ρύθμιση: Έχοντας τη δυνατότητα να παρακολουθείτε την μπαταρία του αυτοκινήτου σας μπορεί να αποτρέψετε μερικές δυσάρεστες εκπλήξεις. Θα σας δείξω πώς συναρμολόγησα το υλικό, φόρτωσα το λογισμικό και εγκατέστησα την οθόνη στο αυτοκίνητό μου. Θα χρησιμοποιήσω τον πίνακα ESP8266 που ονομάζεται Wemos D1 Mini. Νέο t
Παρακολουθήστε τη στάθμη ή την απόσταση του νερού της δεξαμενής στην επιφάνεια εργασίας σας: 3 βήματα
Παρακολούθηση της στάθμης ή της απόστασης του νερού της δεξαμενής στην επιφάνεια εργασίας σας: Χρησιμοποιώντας το Wemos D1, έναν υπερηχητικό αισθητήρα και πλατφόρμα Thingio.AI IoT
Ελέγξτε τα φώτα στο σπίτι σας με τον υπολογιστή σας: 3 βήματα (με εικόνες)
Ελέγξτε τα φώτα στο σπίτι σας με τον υπολογιστή σας: Θέλατε ποτέ να ελέγχετε τα φώτα στο σπίτι σας από τον υπολογιστή σας; Είναι πραγματικά αρκετά προσιτό να το κάνετε. Μπορείτε ακόμη να ελέγξετε συστήματα ψεκασμού, αυτόματες περσίδες παραθύρων, μηχανοκίνητες οθόνες προβολής κ.λπ. Χρειάζεστε δύο κομμάτια σκληρού πολέμου
Αποθηκεύστε τον πλανήτη και την τσέπη σας. $ $ Μετατρέψτε την φθηνή ψηφιακή σας κάμερα P&S σε επαναφορτιζόμενη: 4 βήματα (με εικόνες)
Αποθηκεύστε τον πλανήτη και την τσέπη σας. $$ Μετατρέψτε τη φθηνή ψηφιακή σας κάμερα P&S σε επαναφορτιζόμενη: Πριν από χρόνια, αγόρασα μια ψηφιακή φωτογραφική μηχανή Dolphin Jazz 2.0 Megapixel. Είχε καλά χαρακτηριστικά και τιμή. Είχε επίσης όρεξη για AAA Bateries. Ούτε ένας που θα απομακρυνθεί από μια πρόκληση, σκέφτηκα ότι θα το τροποποιήσω για να χρησιμοποιήσω μια επαναφορτιζόμενη μπαταρία για να σταματήσει να σπαταλά