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

Αυτόματο σύστημα παρακολούθησης νερού ποταμού: 14 βήματα
Αυτόματο σύστημα παρακολούθησης νερού ποταμού: 14 βήματα

Βίντεο: Αυτόματο σύστημα παρακολούθησης νερού ποταμού: 14 βήματα

Βίντεο: Αυτόματο σύστημα παρακολούθησης νερού ποταμού: 14 βήματα
Βίντεο: ΠΗΡΑ ενα κουτι ΠΡΟΦΥΛΑΚΤΙΚΑ…. 2024, Ιούλιος
Anonim
Αυτόματο σύστημα παρακολούθησης νερού ποταμού
Αυτόματο σύστημα παρακολούθησης νερού ποταμού
Αυτόματο σύστημα παρακολούθησης νερού ποταμού
Αυτόματο σύστημα παρακολούθησης νερού ποταμού

Αυτό το instrucatbale χρησιμοποιείται για την τεκμηρίωση της ανάπτυξης ενός αυτοματοποιημένου συστήματος παρακολούθησης νερού του ποταμού. Οι παράμετροι που παρακολουθούνται είναι η στάθμη και η θερμοκρασία του νερού. Ο στόχος αυτού του έργου ήταν η ανάπτυξη ενός χαμηλού κόστους και ανεξάρτητου καταγραφικού που είναι συνδεδεμένο με μια βάση δεδομένων. Η στάθμη του νερού παρακολουθείται με ειδικό επίπεδο QR. Μια κάμερα στο Pi τραβάει μια φωτογραφία κάθε 15 λεπτά. Οι κωδικοί QR σε αυτήν την εικόνα αποκωδικοποιούνται από το λογισμικό και είναι ενδεικτικοί για την πραγματική στάθμη του νερού. Η θερμοκρασία του νερού μετράται με αισθητήρα DS18B20.

Προμήθειες

  1. Raspberry Zero WH
  2. WittyPi Mini
  3. Raspberry Pi Camera Module v2.1
  4. Huawei E3531 SurfStick
  5. Κάρτα SIM (ThingsMobile)
  6. Μετατροπέας DC DC Step Down Buck
  7. Digitalηφιακό θερμόμετρο DS18B20
  8. Καλώδιο micro USB OTG
  9. Ένα άκρο καλωδίου micro USB
  10. Γυαλί παραθύρου
  11. Σφραγισμένο περίβλημα (G258)
  12. Τοποθέτηση καλωδίου
  13. Srew Terminal Block 3-pin
  14. Αντίσταση 4, 7kOhm
  15. Κενός πίνακας κυκλωμάτων 65x30mm
  16. Κεφαλίδα με 40 πείρους
  17. 4 x βίδες M3x20
  18. 8 βίδες xM3
  19. Καλώδιο τηλεφώνου
  20. Καλώδιο ηχείων

Βήμα 1: Συγκόλληση της μονάδας θερμοκρασίας

Συγκόλληση της μονάδας θερμοκρασίας
Συγκόλληση της μονάδας θερμοκρασίας
Συγκόλληση της μονάδας θερμοκρασίας
Συγκόλληση της μονάδας θερμοκρασίας
Συγκόλληση της μονάδας θερμοκρασίας
Συγκόλληση της μονάδας θερμοκρασίας

Σε αυτό το βήμα δημιουργούμε μια μονάδα θερμοκρασίας από την αρχή. Έχει μέγεθος pHAT και μπορεί να συνδεθεί με το GPIO 40-pin του Pi. Αυτή η μέθοδος μας επιτρέπει να τοποθετήσουμε με ασφάλεια τον αισθητήρα DS18B20 στο Raspberry Pi.

  1. Αρχικά, πρέπει να συγκολλήσουμε την κεφαλίδα στοίβαξης 40 ακίδων στην κενή πλακέτα κυκλώματος 60x35 mm.
  2. Τοποθετήστε το μπλοκ ακροδεκτών βίδας και την αντίσταση στη θέση τους, όπως φαίνεται στην εικόνα
  3. Συνδέστε την αντίσταση στις εξωτερικές ακίδες του μπλοκ ακροδεκτών
  4. Συγκολλήστε την αντίσταση και τις καρφίτσες μαζί
  5. Συγκολλήστε τα καλώδια (μαύρο, κόκκινο και κίτρινο) στις ακριβείς ακίδες της επικεφαλίδας πονταρίσματος και στις ακίδες του μπλοκ ακροδεκτών
  6. Για να ανοίξετε τις οπές στερέωσης, τοποθετήστε πρώτα τη μονάδα στο βατόμουρο πι μηδέν και, στη συνέχεια, τρυπήστε με ένα τρυπάνι 3 χιλιοστών μέσα από τις υπάρχουσες οπές από το Raspberry Pi στη νέα σας μονάδα.
  7. Τέλος, μπορείτε να συνδέσετε τον αισθητήρα DS18B20 στη μονάδα σας συνδέοντας τα καλώδια του αισθητήρα σας στα αντίστοιχα χρώματα της πλακέτας σας.

Βήμα 2: Δημιουργία του καλωδίου μετατροπής DCDC

Χτίζοντας το καλώδιο μετατροπέα DCDC
Χτίζοντας το καλώδιο μετατροπέα DCDC
Χτίζοντας το καλώδιο μετατροπέα DCDC
Χτίζοντας το καλώδιο μετατροπέα DCDC

Για να τροφοδοτήσουμε το Raspberry Pi πρέπει να μετατρέψουμε τα 12V που παίρνουμε από την μπαταρία μας σε 5V. Χρησιμοποιούμε μετατροπέα DC DC buck για να μειώσουμε την τάση.

  1. Συγκολλήστε το μαύρο καλώδιο από το καλώδιο του ηχείου σας στη θύρα με την ένδειξη GND
  2. Συγκολλήστε το κόκκινο καλώδιο στη θύρα με την ένδειξη IN+
  3. Συγκολλήστε το μαύρο καλώδιο από το καλώδιο micro-USB στη θύρα με την ένδειξη GND
  4. Συγκολλήστε το κόκκινο καλώδιο από το καλώδιο micro-USB στη θύρα με την ένδειξη OUT+
  5. Αποκοπή του κυκλώματος που επισημαίνεται με το κόκκινο βέλος στην εικόνα
  6. Συγκολλήστε τα μαξιλάρια συγκόλλησης για να έχετε σταθερή έξοδο 5V (μπλε βέλος)

Βήμα 3: Εγκατάσταση του Surfstick

Εγκατάσταση του Surfstick σας
Εγκατάσταση του Surfstick σας
Εγκατάσταση του Surfstick σας
Εγκατάσταση του Surfstick σας
Εγκατάσταση του Surfstick σας
Εγκατάσταση του Surfstick σας

Για να δημιουργήσουμε μια σύνδεση στο διαδίκτυο, πρέπει να συνδέσουμε το ραβδί surf μας στο Raspberry Pi. Πρώτα πρέπει να κάνουμε μερικές διαμορφώσεις:

  1. Τοποθετήστε μια κάρτα SIM από τον πάροχο moblie της επιλογής σας, στο ραβδί σερφ. Σε αυτό το παράδειγμα χρησιμοποιούμε μια SIM από το Things Mobile.
  2. Συνδέστε το ραβδί σερφ στον υπολογιστή σας μέσω USB.
  3. Θα πρέπει να εμφανιστεί ένα παράθυρο στο πρόγραμμα περιήγησής σας.
  4. Στην ενότητα Ρυθμίσεις> Διαχείριση προφίλ αλλάξτε το APN σε αυτόν του παρόχου κινητής τηλεφωνίας σας. Για τα Things Mobile είναι "TM".
  5. Ενεργοποιήστε τη λειτουργία περιαγωγής στις Ρυθμίσεις> Σύνδεση για κινητά και "Ενεργοποίηση" Δεδομένα κινητής τηλεφωνίας.
  6. Κάντε κλικ στην επιλογή Εφαρμογή.
  7. Στην Αρχική σελίδα μπορείτε να ελέγξετε εάν υπάρχει σύνδεση.
  8. Τώρα είστε καλά, αποσυνδέστε το μπαστούνι σερφ.
  9. Το surf stick μπορεί να συνδεθεί με το Raspberry σας χωρίς περαιτέρω διαμορφώσεις.

Βήμα 4: Δημιουργήστε μια βάση δεδομένων PostgreSQL

Σε αυτό το βήμα δημιουργούμε τη βάση δεδομένων μας. Αξιοποιούμε τη δωρεάν προσφορά επιπέδου από τις υπηρεσίες Web Amazon.

  1. Δημιουργήστε πρώτα έναν δωρεάν λογαριασμό στο AWS:
  2. Ακολουθήστε αυτό το σεμινάριο για να δημιουργήσετε τη βάση δεδομένων σας PostgreSQL και μάθετε πώς να συνδέεστε σε αυτήν:

Βήμα 5: Προετοιμασία της κάρτας SD

Πρώτα πρέπει να κατεβάσετε την εικόνα Raspian Stretch Lite:

Λήψεις Raspberry Pi

Τώρα πρέπει να αναβοσβήνουμε την εικόνα σε μια άδεια κάρτα SD (τουλάχιστον 16 GB). Τοποθετήστε την κάρτα SD στη συσκευή ανάγνωσης καρτών SD. Κατεβάστε το Balena Etcher και εγκαταστήστε το στον υπολογιστή σας:

www.balena.io/etcher/

Ανοίξτε το Balena Etcher, επιλέξτε το αρχείο.zip της εικόνας Raspian που κατεβάσατε προηγουμένως. Επιλέξτε την κάρτα SD σας στο Select Drive. Κάντε κλικ στο Flash!

Βήμα 6: Εγκατάσταση του Raspberry και σύνδεση σε αυτό μέσω SSH

Πριν μπορέσουμε να χρησιμοποιήσουμε το Raspberry Pi, πρέπει να κάνουμε κάποιες αρχικές ρυθμίσεις.

  1. Τοποθετήστε την κάρτα SD σας στο Raspberry Pi και συνδέστε την σε οθόνη, πληκτρολόγιο και ποντίκι. (Εάν δεν έχετε επιπλέον οθόνη, πληκτρολόγιο και ποντίκι, μπορείτε να πραγματοποιήσετε εγκατάσταση χωρίς κεφαλή. Κοιτάξτε, έχει γίνει πριν)
  2. Ακολουθήστε τα βήματα ρύθμισης του Raspberry Pi [wifi, γλώσσα, ζώνη ώρας]
  3. Ενεργοποίηση SSH μέσω του Terminal on you PI: sudo raspi-configgo σε: 5 επιλογές διασύνδεσης Ενεργοποίηση SSH
  4. Κάντε λήψη του Termius στον υπολογιστή σας. Αυτό το πρόγραμμα διευκολύνει τη σύνδεση στο Raspberry Pi μέσω του SSH.1. https://termius.com/2. Δημιουργήστε έναν λογαριασμό

    3. Δημιουργήστε ΝΕΟ HOST4. Δώστε μια ετικέτα στο Raspberry σας (επιλέξτε ένα όνομα) 5. Εισαγάγετε τη διεύθυνση IP του PI σας από το ΔΙΚΤΥΟ που είναι συνδεδεμένο (αν δεν γνωρίζετε το IP-ADRESSE μπορείτε να το αναζητήσετε με ένα πρόγραμμα που ονομάζεται "ADVANCED IP SCANNER") 7. Εισαγάγετε το όνομα χρήστη (pi από προεπιλογή εάν δεν αλλάξει) 8. Εισαγάγετε τον κωδικό πρόσβασής σας (βατόμουρο από προεπιλογή εάν δεν αλλάξει) 9. Κάντε κλικ στην αποθήκευση 10. Κάντε διπλό κλικ στον νέο δημιουργημένο κεντρικό υπολογιστή σας 11. Εμφανίζεται ένα μήνυμα -> κάντε κλικ στο ναι

Το Raspberry σας θα πρέπει να συνδεθεί στον υπολογιστή σας μέσω SSH

Βήμα 7: Εγκατάσταση του καταγραφικού

  1. Ενεργοποιήστε την κάμερα στις επιλογές διασύνδεσης: sudo raspi-configgo σε: 5 επιλογές διασύνδεσης Ενεργοποιήστε την επανεκκίνηση της κάμερας
  2. Δημιουργήστε έναν νέο κατάλογο στην /home /pi directorycd /home /pisudo mkdir Desktop σας
  3. Δημιουργήστε ένα νέο αρχείο python στον κατάλογο Desktopcd Desktopsudo nano ctrl+και καλέστε το αρχείο qrbooftemp.pyenterctrl+x
  4. Εγκατάσταση πακέτου pyboof (το numpy και το py4j εγκαθίστανται αυτόματα) αυτό μπορεί να διαρκέσει έως και 40 λεπτά. Sudo pip3 εγκατάσταση pyboof == 0.33.1
  5. Εκτελέστε μια ενημέρωση (αν δεν το κάνετε αυτό ενδέχεται να αντιμετωπίσετε προβλήματα κατά την εγκατάσταση πακέτων αργότερα) sudo apt-get updatesudo apt-get install libpq-dev
  6. Εγκαταστήστε το postgreSQL και το psycopg2 για να αλληλεπιδράσετε με τη βάση δεδομένων postgreSQL μέσω Pythonsudo apt-get install postgresqlsudo pip3 install psycopg2

Βήμα 8: Εγκατάσταση του καταγραφικού (μονάδα θερμοκρασίας)

Εγκατάσταση του καταγραφικού (μονάδα θερμοκρασίας)
Εγκατάσταση του καταγραφικού (μονάδα θερμοκρασίας)

Για να εγκαταστήσετε τη μονάδα θερμοκρασίας πρέπει να τοποθετήσετε τη μονάδα στο Raspberry Pi σας με έναν αισθητήρα DS18B20 προσαρτημένο σε αυτήν. Η μονάδα τοποθετείται μέσω της κεφαλίδας 40 ακίδων.

  1. ενεργοποίηση 1-καλωδίου στις επιλογές διασύνδεσης sudo raspi-configgo σε: 5 επιλογές διασύνδεσης Ενεργοποίηση επανεκκίνησης 1-Wiresudo
  2. ορίστε 1-Wire pin στην καρφίτσα 23 και gpu_mem = 256sudo nano /boot/config.txt προσθήκη dtoverlay = w1-gpio, gpiopin = 23, pullup = επάνω στο τέλος της αλλαγής αρχείου gpu_mem = 128 σε gpu_mem = 256
  3. ενεργοποίηση 1-Wiresudo modprobe w1-gpiosudo modprobe w1-thermsudo επανεκκίνηση
  4. μάθετε τη διεύθυνσή σας για το DS18B20 σας, θα πρέπει να ξεκινάει με 28-… cd/sys/bus/w1/devicesls γράψτε τη διεύθυνση, χρειάζεται αργότερα στο σενάριο Python

Βήμα 9: Λήψη και προσαρμογή σεναρίου Pyhton

  1. Κατεβάστε το σενάριο Python στον υπολογιστή σας και ανοίξτε το σε γραπτό επεξεργαστή
  2. Αντιγράψτε ολόκληρο το σενάριο στον πίνακα κλιπ (ctrl+a, ctrl+c)
  3. Μεταβείτε στο αρχείο που δημιουργήσατε προηγουμένως python filecd/home/pi/Desktopsudo nano qrbooftemp.py
  4. Κάντε δεξί κλικ για να εισαγάγετε το σενάριο
  5. Αλλάξτε τη διεύθυνση του αισθητήρα θερμοκρασίας σε αυτήν που γράψατε προηγουμένως
  6. Αλλάξτε τη ρύθμιση σύνδεσης postgresql στις συγκεκριμένες πληροφορίες σας, όπως υποδεικνύεται στο σενάριο
  7. Αποθήκευση και έξοδοςctrl+oenterctrl+x

Βήμα 10: Εγκατάσταση της μονάδας WittyPi

  1. Κατεβάστε το αρχείο εγκατάστασης από το Witty Pi wget
  2. Εκτελέστε το σενάριο εγκατάστασης sudo sh installWittyPi.sh
  3. Επανεκκίνηση sudo επανεκκίνηση

Βήμα 11: Κάντε ορισμένες αλλαγές στη ρύθμιση εικονικής μηχανής Java

Αυτό το βήμα είναι απαραίτητο για να βεβαιωθείτε ότι το JVM θα ξεκινήσει όταν εκτελείται το σενάριο python.

  1. Μεταβείτε στον κατάλογο py4j και ανοίξτε jawa_gateway.py cd /usr/local/lib/python3.5/dist-packages/py4jsudo nano jawa_gateway.pyset DEFAULT_CALLBACK_SERVER_ACCEPT_TIMEOUT = 20
  2. Μεταβείτε στον κατάλογο pyboof και ανοίξτε _init _. Pycd /usr/local/lib/python3.5/dist-packages/pyboofsudo nano _init _. Pyset while time.time () - start_time <20.0

Βήμα 12: Ρυθμίστε το Cron Job

Σε αυτό το βήμα, ορίζουμε ένα cronjob όταν ξεκινάει το Raspberry. Με αυτόν τον τρόπο κάθε φορά που το Pi ξυπνά, το σενάριό μας python εκτελείται.

  1. Ορίστε το cronjob και γράψτε το σε αρχείο καταγραφής. Αυτό καθιστά την αντιμετώπιση προβλημάτων πιο αποτελεσματική.crontab -e@reboot sleep 20 && sudo python3 /home/pi/Desktop/qrbooftemp.py >> /home/pi/Desktop/log.txt
  2. Προσθέστε μια άλλη γραμμή στο crontab. Αυτή η γραμμή διασφαλίζει ότι όταν το WittyPi αποτύχει, το Raspberry Pi επανεκκινείται ούτως ή άλλως.@Reboot sleep 1500 && sudo rebootctrl+oenterctrl+x

Βήμα 13: Το βάζουμε όλα μαζί

Το βάζουμε όλα μαζί
Το βάζουμε όλα μαζί
Το βάζουμε όλα μαζί
Το βάζουμε όλα μαζί
Το βάζουμε όλα μαζί
Το βάζουμε όλα μαζί
  1. Βεβαιωθείτε ότι το Pi σας είναι απενεργοποιημένο, αν όχι, κλείστε το downsudo shutdown -h τώρα
  2. Στοίβα το WittyPi στο Raspberry Pi και τη μονάδα θερμοκρασίας πάνω από αυτό.
  3. Βιδώστε τις 3 μονάδες μαζί
  4. Συνδέστε τη μονάδα κάμερας στη θύρα CSI του βατόμουρου πι μηδέν
  5. Συνδέστε το surfstick σας στο Raspberry Pi σας μέσω του καλωδίου USB OTG
  6. Συνδέστε το καλώδιο τροφοδοσίας στο WittyPi (όχι στο Raspberry Pi!)
  7. Βάλτε τα όλα στο περίβλημα και βιδώστε το καπάκι
  8. Συνδέστε το καλώδιο τροφοδοσίας στην μπαταρία σας
  9. Συγχαρητήρια ο καταγραφέας σας πρέπει να λειτουργεί!

Βήμα 14: Τελική εγκατάσταση

Τελική εγκατάσταση
Τελική εγκατάσταση
Τελική εγκατάσταση
Τελική εγκατάσταση

Αυτές οι εικόνες δείχνουν το τοποθετημένο καταγραφικό με εγκατεστημένη τη στάθμη νερού με κωδικό QR.

Οι καταγραφείς εγκαταστάθηκαν κάτω από μια γέφυρα για βέλτιστα αποτελέσματα. Πρέπει να αποφεύγεται το άμεσο ηλιακό φως.

Συνιστάται: