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

Η σειρά γεωργικών αισθητήρων: 6 βήματα
Η σειρά γεωργικών αισθητήρων: 6 βήματα

Βίντεο: Η σειρά γεωργικών αισθητήρων: 6 βήματα

Βίντεο: Η σειρά γεωργικών αισθητήρων: 6 βήματα
Βίντεο: ΣΟΚ: ΒΡΗΚΑ ΚΑΡΧΑΡΙΑ😱😱 2024, Ιούλιος
Anonim
Ο πίνακας γεωργικών αισθητήρων
Ο πίνακας γεωργικών αισθητήρων

Ένα έργο των Jackson Breakell, Tyler McCubbins και Jakob Thaler για το EF 230

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

Η συσκευή μας, το Agricultural Sensor Array, επιτρέπει στους αγρότες να παρακολουθούν την κατάσταση των προεπιλεγμένων τμημάτων του χωραφιού τους χρησιμοποιώντας 4 αισθητήρες: αισθητήρα βρόχινου νερού, αισθητήρα υγρασίας εδάφους, αισθητήρα θερμοκρασίας και φωτοηλεκτρικό αισθητήρα. Ο συνδυασμός αυτών των αισθητήρων επιτρέπει σε έναν αγρότη να σχεδιάσει επαρκώς την παραγωγή της σεζόν, να προσαρμοστεί για πολύ λίγη ή πολύ βροχή, να αντιμετωπίσει καλύτερα καταστροφές που μπορεί να σκοτώσουν τις καλλιέργειες και να εξοικονομήσουν χρόνο και κόπο από τη λήψη δειγμάτων εδάφους και τη χρήση ακριβότερου εξοπλισμού αισθητήρων. Σε αυτό το Instructable, θα σας καθοδηγήσουμε μέσω της καλωδίωσης και της κωδικοποίησης πίσω από τη σειρά αγροτικών αισθητήρων, ώστε να κάνετε κι εσείς τη δική σας.

Βήμα 1: Συγκεντρώστε τα απαιτούμενα υλικά

Συγκεντρώστε τα απαιτούμενα υλικά
Συγκεντρώστε τα απαιτούμενα υλικά

Παρακάτω είναι μια λίστα με τα απαιτούμενα υλικά που θα χρειαστείτε για να ξεκινήσετε"

1. Arduino Board, κατά προτίμηση Arduino Uno

2. Βασικός πίνακας ψωμιού

3. Αντίσταση 1x 220 ohm

4. Ποικιλία καλωδίων διαφορετικών χρωμάτων

5. Καλώδιο Micro USB σε USB

6. Ηχείο που μπορεί να τοποθετηθεί στην πλακέτα

7. Φωτοηλεκτρικός αισθητήρας

8. Αισθητήρας θερμοκρασίας

9. Αισθητήρας βρόχινου νερού

10. Αισθητήρας υγρασίας εδάφους

11. Υπολογιστής με εγκατεστημένο το πακέτο υποστήριξης Matlab 2017 και Arduino (το πακέτο υποστήριξης βρίσκεται στα πρόσθετα)

Βήμα 2: Καλωδίωση της πλακέτας και σύνδεση

Καλωδίστε την πλακέτα και συνδεθείτε
Καλωδίστε την πλακέτα και συνδεθείτε

Ξεκινήστε είτε με καλωδίωση της σανίδας όπως φαίνεται παραπάνω, είτε με όποιον τρόπο σας ταιριάζει καλύτερα. Υπάρχουν κυριολεκτικά απεριόριστοι τρόποι με τον οποίο μπορείτε να συνδέσετε τον πίνακα, οπότε η ακριβής διαμόρφωση εξαρτάται πραγματικά από εσάς. Αφού συνδεθεί ο πίνακας, ξεκινήστε να συνδέετε τους αισθητήρες σας. Οι αισθητήρες βρόχινου νερού, υγρασίας του εδάφους και φωτοηλεκτρικοί είναι όλες αναλογικές έξοδοι, οπότε βεβαιωθείτε ότι είναι συνδεδεμένοι στο τμήμα αναλογικής εισόδου του Arduino. Ο αισθητήρας θερμοκρασίας, από την άλλη πλευρά, είναι μια ψηφιακή έξοδος, οπότε βεβαιωθείτε ότι είναι συνδεδεμένος σε μια διαθέσιμη ψηφιακή είσοδο στο Arduino σας. Το Arduino θα πρέπει να έχει έξοδο για 3.3v και 5v, οπότε βεβαιωθείτε ότι οι αισθητήρες είναι συνδεδεμένοι με τάσεις με τις οποίες είναι συμβατοί.

Αφού βεβαιωθείτε ότι η πλακέτα έχει συνδεθεί σωστά, συνδέστε το καλώδιο Micro USB σε USB από τον υπολογιστή σας στη θύρα Micro USB του υπολογιστή σας και ενεργοποιήστε το Arduino. Ανοίξτε το Matlab και βεβαιωθείτε ότι έχετε εγκαταστήσει το πακέτο υποστήριξης Arduino στα πρόσθετα, εκτελέστε την εντολή "fopen (σειριακό ('nada'))", χωρίς το ". Θα πρέπει να εμφανιστεί ένα σφάλμα και το σφάλμα να δείχνει υπάρχει ένα διαθέσιμο comport με έναν αριθμό. Εκτελέστε την εντολή "a = arduino ('comx', 'uno')", όπου x είναι ο αριθμός του comport σας, για να αντιστοιχίσετε το Arduino σας σε ένα αντικείμενο. Η λυχνία LED στο Arduino πρέπει να αναβοσβήνει γρήγορα για να δείξει ότι είναι συνδεδεμένο.

Βήμα 3: Κωδικοποιήστε τους φωτοηλεκτρικούς και αισθητήρες θερμοκρασίας

Κωδικοποιήστε τους φωτοηλεκτρικούς και αισθητήρες θερμοκρασίας
Κωδικοποιήστε τους φωτοηλεκτρικούς και αισθητήρες θερμοκρασίας

Πριν ξεκινήσετε την κωδικοποίηση, σημειώστε πού συνδέονται οι αισθητήρες σας στο Arduino, καθώς αυτό θα είναι σημαντικό για την εντολή readVoltage. Ξεκινήστε τον κωδικό σας ρυθμίζοντας το μεταβλητό ηλιακό φως ίσο με την εντολή "readVoltage (a, 'X#') ', όπου X# είναι η θύρα στην οποία είστε συνδεδεμένοι και a απλώς καλεί το Arduino που αντιστοιχίσατε σε αυτήν τη μεταβλητή. Ξεκινήστε μια πρόταση if, και ορίστε την πρώτη συνθήκη για το φως του ήλιου <3. Ορίστε την έξοδο ως "info. TOD =" night "" για να εξάγει την ώρα της ημέρας ως δομή και, στη συνέχεια, προσθέστε μια εντολή else με την έξοδο ως "info. TOD =" day " ο αισθητήρας θερμοκρασίας.

Ορίστε τη μεταβλητή θερμική τιμή ίση με μια άλλη εντολή readVoltage, με την εντολή "readVoltage (a, 'X#')". Στην περίπτωσή μας, η θερμοκρασία έπρεπε να μετατραπεί από μονάδες τάσης σε Κελσίου, οπότε η εξίσωση "tempC = (θερμο-.5).*100" για να μετατραπεί από την τάση σε Κελσίου. Για λόγους ευκολίας, μετατρέψαμε τη θερμοκρασία σε Κελσίου σε Φαρενάιτ, αλλά αυτό είναι καθαρά προαιρετικό.

Κωδικός για σκοπούς επικόλλησης

ηλιακό φως = readVoltage (a, 'A1') εάν το φως του ήλιου <3

info. TOD = 'νύχτα'

αλλού

info. TOD = 'ημέρα'

τέλος

thermo = readVoltage (a, 'A3');

tempC = (θερμο-.5).*100;

info.tempF = (9/5.*tempC) +32

Βήμα 4: Κωδικοποιήστε τους αισθητήρες υγρασίας βροχής και εδάφους

Κωδικοποιήστε τους αισθητήρες υγρασίας βροχής και εδάφους
Κωδικοποιήστε τους αισθητήρες υγρασίας βροχής και εδάφους

Όπως αναφέρθηκε στο τελευταίο βήμα, βεβαιωθείτε ότι γνωρίζετε σε ποιες θύρες είναι συνδεδεμένοι οι αισθητήρες σας στον πίνακα Arduino, καθώς θα κάνει αυτό το βήμα πολύ λιγότερο απογοητευτικό. Ξεκινήστε με τον αισθητήρα νερού της βροχής και ξεκινήστε μια δήλωση if. Ορίστε την πρώτη συνθήκη για "readVoltage (a, 'X#')> 4" και ορίστε την έξοδό του σε "info. Rain =" χωρίς βροχόπτωση ". Προσθέστε ένα elseif και ορίστε τον όρο του στην εντολή readVoltage πριν, αλλά ορίστε το στο> 2. Προσθέστε ένα "&&" για να δηλώσετε μια άλλη προϋπόθεση που πρέπει να πληρείται και ορίστε την σε μια εντολή readVoltage όπως πριν και ορίστε την σε <= 4. Η έξοδος θα είναι "info. Rain =" misting "". Τέλος, προσθέστε ένα άλλο και ορίστε την έξοδό του σε "info. Rain = 'rainpour'". Mayσως χρειαστεί να προσαρμόσετε τις τιμές για τις συνθήκες με βάση την υγρασία περιβάλλοντος του δωματίου στο οποίο εργάζεστε.

Στη συνέχεια, ξεκινήστε τον κωδικό για τον αισθητήρα υγρασίας του εδάφους και ξεκινήστε με μια δήλωση if. Ορίστε τη συνθήκη της δήλωσης if σε "readVoltage (a, 'X#')> 4 και προσθέστε την έξοδο" info.soil = 'dry' ". Προσθέστε μια δήλωση elseif και χρησιμοποιώντας την παραπάνω εντολή readVoltage, ρυθμίστε την για> 2. Προσθέστε μια ένδειξη "&&" και ορίστε μια άλλη εντολή readVoltage για <= 4. Ορίστε την έξοδό της σε "info.soil =" βέλτιστο κορεσμό ". ", και μην ξεχάσετε να προσθέσετε ένα τέλος.

Κωδικός για σκοπούς επικόλλησης

αν διαβάσετεVoltage (a, 'A0')> 4 πληροφορίες. Βροχή = 'χωρίς βροχόπτωση'

elseif readVoltage (a, 'A0')> 2 && readVoltage (a, 'A0') <= 4

info. Rain = 'misting'

αλλού

πληροφορίες. Βροχή = 'νεροποντή'

τέλος

αν είναι readVoltage (a, 'A2')> 4

info.soil = 'στεγνό'

elseif readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4

info.soil = 'βέλτιστος κορεσμός'

αλλού

info.soil = 'πλημμύρα'

τέλος

Βήμα 5: Κωδικοποίηση εξόδου ηχείου και κουτιού μηνυμάτων

Κωδικοποίηση εξόδου ηχείων και κουτιού μηνυμάτων
Κωδικοποίηση εξόδου ηχείων και κουτιού μηνυμάτων

Οι έξοδοι για αυτήν τη συσκευή μπορεί να διαφέρουν πολύ, αλλά, σε αυτή την περίπτωση, θα σας καθοδηγήσουμε μέσω μιας εξόδου ηχείου που είναι τοποθετημένη απευθείας σε μια συσκευή και μιας εξόδου κουτιού μηνυμάτων που μπορεί να προβληθεί σε απομακρυσμένο υπολογιστή. Το ηχείο μας έχει σχεδιαστεί για να εκπέμπει διαφορετικές συχνότητες, χαμηλότερη έννοια χειρότερα, για βέλτιστη θερμοκρασία καλλιέργειας, ηλιακό φως, υγρασία εδάφους και βροχόπτωση. Ξεκινήστε τον κωδικό εξόδου του ηχείου σας με μια δήλωση if και ορίστε τη συνθήκη του στην εντολή "readVoltage (a, 'X#')> 4 || info.tempF = 3 || readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4 ". Προσθέστε την ίδια εντολή playTone όπως φαίνεται παραπάνω, αλλά αλλάξτε 200 σε 1000 για να παράγετε υψηλότερο, πιο θετικό τόνο. Στη συνέχεια, προσθέστε ένα άλλο και προσθέστε ξανά την ίδια εντολή playTone, αλλά αλλάξτε 1000 σε 1500. Αυτοί οι διαφορετικοί τόνοι υποδεικνύουν τη σοβαρότητα της κατάστασης του πεδίου. Βεβαιωθείτε ότι έχετε προσθέσει ένα τέλος για να συμπληρώσετε τη δήλωση if.

Το τελευταίο τμήμα κώδικα θα είναι μια έξοδος που παράγει ένα πλαίσιο μηνυμάτων. Δημιουργήστε μια συμβολοσειρά χρησιμοποιώντας "σημάδια σε αγκύλες" και μετατρέψτε τα τμήματα της δομής σας σε συμβολοσειρές χρησιμοποιώντας την εντολή "num2str (info.x)", όπου το x είναι ένα όνομα της δομής στη δομή πληροφοριών. Χρησιμοποιήστε "string newline" για να προσθέσετε νέες γραμμές στο πλαίσιο μηνυμάτων σας και πληκτρολογήστε το μήνυμά σας σε κείμενο χρησιμοποιώντας το εισαγωγικό, προσθέτοντας την πραγματική τιμή του πεδίου στη συμβολοσειρά χρησιμοποιώντας την προαναφερθείσα εντολή num2str. Τέλος, με τη συμβολοσειρά καθορισμένη, χρησιμοποιήστε την εντολή "msgbox (string)" για να εμφανίσετε τα δεδομένα ως πλαίσιο μηνυμάτων στην οθόνη σας.

Κωδικός για σκοπούς επικόλλησης

αν διαβάζεταιΤάση (a, 'A2')> 4 || info.tempF <32 playTone (a, 'D9', 200, 1)

elseif ηλιακό φως> = 3 || readVoltage (a, 'A2')> 2 && readVoltage (a, 'A0') <= 4

playTone (a, 'D9', 1000, 3)

αλλού

playTone (a, 'D9', 1500, 5)

τέλος

string = ['Η θερμοκρασία είναι (βαθμός F)', num2str (info.tempF)]

string = [string newline 'The ground is', num2str (info.soil)]

string = [string newline 'Outside տեղում είναι', num2str (info. Rain)]

string = [string newline 'The time of day is', num2str (info. TOD)]

msgbox (συμβολοσειρά)

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

συμπέρασμα
συμπέρασμα

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

Καλή κωδικοποίηση, Η ομάδα αγροτικών αισθητήρων συστοιχιών

Συνιστάται: