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

ΠΑΡΑΚΟΛΟΥΘΗΣΤΕ ΤΟΝ ΚΗΠΟ ΣΑΣ: 16 Βήματα (με Εικόνες)
ΠΑΡΑΚΟΛΟΥΘΗΣΤΕ ΤΟΝ ΚΗΠΟ ΣΑΣ: 16 Βήματα (με Εικόνες)

Βίντεο: ΠΑΡΑΚΟΛΟΥΘΗΣΤΕ ΤΟΝ ΚΗΠΟ ΣΑΣ: 16 Βήματα (με Εικόνες)

Βίντεο: ΠΑΡΑΚΟΛΟΥΘΗΣΤΕ ΤΟΝ ΚΗΠΟ ΣΑΣ: 16 Βήματα (με Εικόνες)
Βίντεο: 5 πράγματα που πρέπει να κάνεις στο σεξ για να κολλήσει μαζί σου 2024, Ιούλιος
Anonim
ΠΑΡΑΚΟΛΟΥΘΗΣΤΕ ΤΟΝ ΚΗΠΟ ΣΑΣ
ΠΑΡΑΚΟΛΟΥΘΗΣΤΕ ΤΟΝ ΚΗΠΟ ΣΑΣ

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

Βήμα 1: Συστατικά:

  1. Arduino uno
  2. Nodemcu
  3. Αισθητήρας θερμοκρασίας & υγρασίας DHT 11
  4. Αισθητήρας υγρασίας εδάφους - FC28
  5. Τράπεζα μπαταριών 10000mah (για τροφοδοσία arduino & nodemcu)
  6. Nokia LCD 5110
  7. Resitor (5 x 10k, 1 x 330ohms)
  8. Ποτενσιόμετρο Περιστροφικός τύπος (για ρύθμιση της φωτεινότητας LCD) 0-100K
  9. Καλώδια βραχυκυκλωτήρων
  10. Breadboard

Βήμα 2: ΒΑΣΙΚΟΣ ΑΙΣΘΗΤΗΡΑΣ: Soil Moisture FC 28

ΒΑΣΙΚΟΣ ΑΙΣΘΗΤΗΡΑΣ: Soil Moisture FC 28
ΒΑΣΙΚΟΣ ΑΙΣΘΗΤΗΡΑΣ: 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: για δημοσίευση απομακρυσμένων δεδομένων

Κατανόηση του MQTT: για δημοσίευση απομακρυσμένων δεδομένων
Κατανόηση του 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: Δημιουργία παρουσίας

MQTT: Δημιουργία παρουσίας
MQTT: Δημιουργία παρουσίας

Έχω δημιουργήσει ένα Instance με όνομα "myIOT"

σχέδιο: Χαριτωμένο σχέδιο

Βήμα 6: MQTT: Πληροφορίες παρουσίας

MQTT: Πληροφορίες παρουσίας
MQTT: Πληροφορίες παρουσίας

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

Βήμα 7: MQTT: Προσθήκη χρήστη

MQTT: Προσθήκη χρήστη
MQTT: Προσθήκη χρήστη

Δημιουργήστε έναν χρήστη με όνομα "nodemcu_12" και δώστε έναν κωδικό πρόσβασης

Βήμα 8: MQTT: Εκχώρηση κανόνα ACL

MQTT: Εκχώρηση κανόνα ACL
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

Nodemcu: Μεταφόρτωση σεναρίων Lua στο Nodemcu με ESPlorer_1
Nodemcu: Μεταφόρτωση σεναρίων Lua στο Nodemcu με ESPlorer_1
  • Κάντε κλικ στο κουμπί Ανανέωση
  • Επιλέξτε τη θύρα COM (Επικοινωνία) και το ρυθμό baud (Συνήθως χρησιμοποιείται 9600)
  • Κάντε κλικ στο Άνοιγμα

Βήμα 11: Nodemcu: Μεταφόρτωση σεναρίων Lua στο Nodemcu με ESPlorer_II

Nodemcu: Μεταφόρτωση σεναρίων Lua στο Nodemcu με ESPlorer_II
Nodemcu: Μεταφόρτωση σεναρίων Lua στο Nodemcu με ESPlorer_II

Βήμα 12: Nodemcu: Μεταφόρτωση σεναρίων Lua στο Nodemcu με ESPlorer_III

Nodemcu: Μεταφόρτωση σεναρίων Lua στο Nodemcu με ESPlorer_III
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

Nodemcu: Ρύθμιση του προγράμματος -πελάτη MQTT στο Android
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

Πρόσθετα βήματα: Εργασία με το Nokia LCD 5110
Πρόσθετα βήματα: Εργασία με το 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.

Μπορούμε επίσης να χρησιμοποιήσουμε φορτιστή πρίζας τοίχου για μεγάλη διάρκεια, αν το επιθυμούμε.

Συνιστάται: