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

Arduino Plant Irrigator, χωρίς κωδικό: 11 βήματα
Arduino Plant Irrigator, χωρίς κωδικό: 11 βήματα

Βίντεο: Arduino Plant Irrigator, χωρίς κωδικό: 11 βήματα

Βίντεο: Arduino Plant Irrigator, χωρίς κωδικό: 11 βήματα
Βίντεο: ESP32 Project 24 - Measuring Soil Mositure for Irrigation | SunFounder's ESP32 IoT Learnig kit 2024, Νοέμβριος
Anonim
Image
Image
Ρομπότ Μακιγιάζ
Ρομπότ Μακιγιάζ

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

Βήμα 1: Μακιγιάζ ρομπότ

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

Δεν θέλουμε να ποτίζουμε το φυτό μας τη νύχτα, οπότε ο αισθητήρας φωτεινότητας ελέγχει αν είναι μέρα.

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

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

Ένας πίνακας Iskra Neo (Arduino Leonardo) διοικεί όλες τις ενότητες.

Βήμα 2: Συναρμολόγηση ηλεκτρονικών ενοτήτων

Συναρμολόγηση ηλεκτρονικών ενοτήτων
Συναρμολόγηση ηλεκτρονικών ενοτήτων

Ενότητες που χρησιμοποιούνται:

  • Iskra Neo board (Arduino Leonardo)
  • Κουλοχέρη
  • Αισθητήρας υγρασίας εδάφους (x2)
  • Αισθητήρας φωτεινότητας
  • Μονάδα LED (x2)
  • Αντλία
  • Βύσμα τοίχου (6-9V DC)

Σημειώστε το κύκλωμα τροφοδοσίας:

  • Χρησιμοποιήστε ένα βραχυκυκλωτήρα για να κάνετε το δίαυλο V2 σε ασπίδα υποδοχής να χρησιμοποιεί τροφοδοτικό Vin (απευθείας από το βύσμα)
  • Τοποθετήστε τη μονάδα MOSFET σε οποιαδήποτε υποδοχή V2 με ενεργοποιημένο το βραχυκυκλωτήρα V = P+
  • Βεβαιωθείτε ότι άλλες μονάδες χρησιμοποιούν το V1 power bus (που είναι το 5V του Arduino)

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

Βήμα 3: Κατανόηση της ροής εργασίας

Κατανόηση της ροής εργασίας
Κατανόηση της ροής εργασίας

Εξετάστε το διάγραμμα από κάτω προς τα πάνω!

  • Η αντλία τίθεται σε λειτουργία όταν πληρούνται οι συνθήκες "κλίματος" και "νερού"
  • Η κατάσταση του νερού σημαίνει ότι υπάρχει αρκετό νερό στη δεξαμενή, αν δεν είναι έτσι, ανάβει το "χωρίς νερό" και το αποτέλεσμα της σύνδεσης για τις συνθήκες του κλίματος και του νερού γίνεται ψευδές
  • Η κλιματική κατάσταση είναι επίσης πολύπλοκη: είναι αλήθεια εάν ισχύουν τόσο οι συνθήκες εδάφους όσο και η φωτεινότητα
  • Η κατάσταση του εδάφους βασίζεται στη σύγκριση μεταξύ του τρέχοντος επιπέδου υγρασίας του εδάφους και μιας προκαθορισμένης τιμής κατωφλίου Η κατάσταση φωτεινότητας είναι παρόμοια με την κατάσταση του εδάφους, αλλά αντ 'αυτού μετρά τη φωτεινότητα

Βήμα 4: Απόκτηση τιμών κατωφλίου

Λήψη τιμών κατωφλίου
Λήψη τιμών κατωφλίου

Κατώφλια αισθητήρα (δείγματα δεδομένων, ενδέχεται να διαφέρουν στην περίπτωσή σας):

  • Υγρασία εδάφους: 0,15
  • Φωτεινότητα: 0,58
  • Νερό: 0,2

Πώς να λάβετε μετρήσεις (για εκδόσεις XOD χωρίς σειριακές λειτουργίες):

  1. Κατεβάστε και εγκαταστήστε το Arduino IDE
  2. Άνοιγμα αρχείου-Παραδείγματα-01. Basics-AnalogReadSerial παράδειγμα
  3. Αλλαγή "καθυστέρηση (1);" να "καθυστερήσει (250);"
  4. Συνδέστε την πλακέτα. Βεβαιωθείτε ότι το μοντέλο και η θύρα της πλακέτας σας είναι επιλεγμένα στο μενού Υπηρεσία
  5. Επαναλάβετε για κάθε αισθητήρα:
  • Ελέγξτε τον αριθμό pin στο "int sensorValue = analogRead (A0);" και αλλάξτε A0 σε A3 και A2 για αισθητήρες φωτεινότητας και νερού αντίστοιχα (εάν έχετε συναρμολογήσει τη συσκευή σας σύμφωνα με το σχήμα)
  • Ανεβάστε το σκίτσο Open Service-Serial Monitor, βεβαιωθείτε ότι έχει επιλεγεί 9600 baud στο κάτω δεξί αναπτυσσόμενο μενού και παρακολουθήστε τις ζωντανές μετρήσεις να αλλάζουν καθώς προσαρμόζετε το περιβάλλον του αισθητήρα
  • Επιλέξτε μια τιμή μεταξύ του εγγεγραμμένου ελάχιστου και του μέγιστου (πλησιέστερο στο ελάχιστο για τον αισθητήρα φωτεινότητας), διαιρέστε το με το 1023 και χρησιμοποιήστε το αποτέλεσμα στην ενημερωμένη έκδοση κώδικα

Βήμα 5: Βασικά στοιχεία XOD

Βασικά XOD
Βασικά XOD
  • Κατεβάστε και εγκαταστήστε το XOD IDE
  • Ένα πρόγραμμα XOD ονομάζεται patch. το χτίζουμε στην περιοχή με μια σειρά από σχισμές στα δεξιά.
  • Κατά την πρώτη εκκίνηση μπορείτε να αντιμετωπίσετε ένα ενσωματωμένο ενημερωτικό κώδικα.
  • Το έμπλαστρο αποτελείται από κόμβους, που συνδέονται με συνδέσμους μέσω των ακίδων.
  • Κάθε κόμβος αντιπροσωπεύει είτε μια φυσική συσκευή/σήμα είτε ένα στοιχείο δεδομένων, ενώ οι σύνδεσμοι ελέγχουν τη ροή δεδομένων.
  • Κάντε διπλό κλικ σε οποιοδήποτε κενό διάστημα της ενημερωμένης έκδοσης κώδικα ή πατήστε το πλήκτρο "i" για να ανοίξετε ένα παράθυρο διαλόγου γρήγορης αναζήτησης όπου οι κόμβοι μπορούν να βρεθούν με τα ονόματα ή τις περιγραφές τους.
  • Χρησιμοποιήστε το πρόγραμμα περιήγησης στο επάνω αριστερό μέρος για να εξερευνήσετε τις ενημερώσεις κώδικα.
  • Επιλέξτε έναν κόμβο και δείτε/επεξεργαστείτε τις ιδιότητές του στον επιθεωρητή στην κάτω αριστερή πλευρά.
  • Για να δοκιμάσετε τον εαυτό σας XODing, κάντε κλικ στην επιλογή Αρχείο-Νέο έργο και δημιουργήστε μια κενή ενημερωμένη έκδοση κώδικα.
  • Μπορείτε να επιστρέψετε στο σεμινάριο όποτε θέλετε, ανοίγοντας το μενού Βοήθεια.

Βήμα 6: Έμπλαστρο Irrigator

Έμπλαστρο άρδευσης
Έμπλαστρο άρδευσης

Χρησιμοποιήστε το έμπλαστρο (Basic-irrgator.xodball) ή δημιουργήστε το μόνοι σας σύμφωνα με το διάγραμμα.

Παρατηρήστε ότι η ενημερωμένη έκδοση κώδικα έχει ήδη δημιουργηθεί, οπότε ορισμένοι κόμβοι ενημερώθηκαν στο IDE:

  • Οι κόμβοι "αναλογικής εισόδου" έχουν πλέον καταργηθεί, χρησιμοποιήστε αντ 'αυτού "αναλογική ανάγνωση"
  • Ο κόμβος "led" έχει περισσότερες δυνατότητες τώρα

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

Βήμα 7: Ανάπτυξη

Ανάπτυξη
Ανάπτυξη
  • Όταν η ενημερωμένη έκδοση κώδικα είναι έτοιμη, κάντε κλικ στην επιλογή Ανάπτυξη, Μεταφόρτωση στο Arduino.
  • Συνδέστε την πλακέτα.
  • Ελέγξτε το μοντέλο της πλακέτας και τη σειριακή θύρα στα αναπτυσσόμενα μενού και, στη συνέχεια, κάντε κλικ στην επιλογή Μεταφόρτωση.
  • Αυτό μπορεί να πάρει λίγο χρόνο; Απαιτείται σύνδεση στο Διαδίκτυο.
  • Εάν χρησιμοποιείτε το πρόγραμμα περιήγησης XOD IDE, χρησιμοποιήστε το Arduino IDE για να ανεβάσετε το πρόγραμμα στον πίνακα.
  • Εάν αντιμετωπίζετε προβλήματα κατά τη μεταφόρτωση της ενημερωμένης έκδοσης κώδικα, εξερευνήστε το φόρουμ XOD

Βήμα 8: Χρόνος κατασκευής

Χρόνος κατασκευής
Χρόνος κατασκευής

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

Βήμα 9: Τοποθέτηση αισθητήρα στάθμης νερού

Τοποθέτηση αισθητήρα στάθμης νερού
Τοποθέτηση αισθητήρα στάθμης νερού

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

Βήμα 10: Δοκιμή

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

  • Στεγνώστε τον αισθητήρα στάθμης νερού. Μόνο το κόκκινο LED πρέπει να είναι αναμμένο. Ακόμα κι αν το χώμα είναι στεγνό και το δωμάτιο φωτίζεται ταυτόχρονα, η αντλία δεν πρέπει να ξεκινά.
  • Τώρα προσθέστε το νερό, αλλά πρώτα καλύψτε τον αισθητήρα φωτεινότητας για να βεβαιωθείτε ότι το ξηρό χώμα και η παρουσία νερού δεν θα κάνουν το ρομπότ να ποτίζει τη νύχτα.
  • Τέλος, αφήστε το ρομπότ να ποτίσει το φυτό σας. Θα πρέπει να σταματήσει όταν το χώμα είναι αρκετά υγρό.
  • Βγάλτε τον αισθητήρα χώματος για να επαναλάβετε την άρδευση (για να είστε σίγουροι).

Βήμα 11: Απολαύστε και βελτιώστε

Απολαύστε και βελτιώστε
Απολαύστε και βελτιώστε

Τώρα που ο βασικός αρδευτήρας έχει ολοκληρωθεί, εξετάστε μερικές επιλογές βελτίωσης:

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

Συνιστάται: