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

Airduino: 6 βήματα
Airduino: 6 βήματα

Βίντεο: Airduino: 6 βήματα

Βίντεο: Airduino: 6 βήματα
Βίντεο: Arduino, ένας οδηγός για αρχάριους! 2024, Ιούλιος
Anonim
Airduino
Airduino
Airduino
Airduino

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

Τι είναι λοιπόν το Airduino; Σύντομο: είναι μια φανταχτερή ασύρματη οθόνη αέρα. Long: ένα Arduino μετρά την ποιότητα του αέρα, στέλνει όλα τα δεδομένα σε ένα Raspberry Pi μέσω Bluetooth και τα αποθηκεύει σε μια βάση δεδομένων. Έφτιαξα έναν απλό ιστότοπο για την οπτική εμφάνιση των δεδομένων. Αλλά το πιο σημαντικό πράγμα, έχει ένα ισχυρό ελεγχόμενο led RGB!

Τι ακριβώς μετράει; Λοιπόν, επέλεξα να μετρήσω τη θερμοκρασία, την υγρασία, την πίεση του αέρα, το CO2 και το CO. Μπορείτε να μετρήσετε ό, τι θέλετε, αρκεί να υπάρχει συμβατός αισθητήρας για αυτό.

Έχω συμπεριλάβει μια λεπτομερή λίστα προμηθειών με συνδέσμους για μερικά από τα προϊόντα που αγόρασα.

Προμήθειες

Αυτά είναι όλα τα στοιχεία που χρησιμοποίησα:

Arduino

Raspberry Pi

οθόνη LCD

HC-05, οποιαδήποτε μονάδα Bluetooth θα λειτουργήσει

BMP-180 (αισθητήρας πίεσης αέρα)

DHT-11 (αισθητήρας υγρασίας αέρα)

MQ-7 (αισθητήρας CO)

MQ-135 (αισθητήρας CO2)

9W RGB led (3x3W)

XL4015 Μετατροπείς με βήμα προς τα κάτω (σύνδεσμος) (2x)

XL6009E1 Ενισχυτικός μετατροπέας ενίσχυσης (σύνδεσμος)

Μπαταρία MH CD42 (σύνδεσμος)

18650 Μπαταρία (4x)

4 υποδοχή μπαταρίας 18650 Bay

BC337 τρανζίστορ (5x)

Αντιστάσεις (1 Kohm (5x), 10 Kohm)

Διακόπτης

Κουμπί

Προσαρμογέας Micro USB σε DIP

Καλώδια

Perfboard

Heatsink (από έναν παλιό υπολογιστή)

Βήμα 1: Κύκλωμα Arduino

Κύκλωμα Arduino
Κύκλωμα Arduino
Κύκλωμα Arduino
Κύκλωμα Arduino

Το πιο δύσκολο κομμάτι είναι το μέρος του Arduino γιατί χειρίζεται βασικά τα πάντα.

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

Οι περισσότεροι από τους αισθητήρες είναι αρκετά ευθείες, εκτός από τον MQ-7. Αυτός ο αισθητήρας είναι, για την εμπειρία μου, δύσκολο να ενσωματωθεί στο έργο. Ακολούθησα έναν από τους μοναδικούς καλούς οδηγούς που μπορούσα να βρω και φάνηκε να λειτουργεί αν συνδέσω μόνο αυτόν τον αισθητήρα. Αν συνέδεσα τους άλλους αισθητήρες, λειτουργούσε περίεργα, οπότε έπρεπε να κάνω κάποιο χειρισμό του κώδικα, περισσότερο αργότερα.

Βήμα 2: Κωδικός Arduino

Εάν έχετε δημιουργήσει το κύκλωμά σας σε ένα breadboard, τότε μπορείτε να δοκιμάσετε το μεγαλύτερο μέρος του. Συνδέστε το Arduino σας σε έναν υπολογιστή και ανεβάστε τον κωδικό που περιλαμβάνεται. Εάν αποσυνδέσετε τις ακίδες tx και rx, μπορείτε να στείλετε εντολές μέσω του Arduino IDE Monitor. Εάν στείλετε "BMPTemp" θα πρέπει να λάβετε μια απάντηση εάν κάνατε τα πάντα σωστά.

Βήμα 3: Κύκλωμα Raspberry Pi

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

Βήμα 4: Κωδικός Raspberry Pi

Το πρώτο πράγμα που πρέπει να κάνετε είναι να διαμορφώσετε το ενσωματωμένο Bluetooth. Έκανα τα πάντα χρησιμοποιώντας τη γραμμή εντολών, μπορεί να γίνει χρησιμοποιώντας ένα GUI, αλλά δεν θα το καλύψω. Υποθέτω ότι γνωρίζετε τα βασικά στοιχεία ενός Raspberry PI και του Rasbian, του λειτουργικού συστήματος.

Έχει ως εξής:

Βήμα 1: Συνδεθείτε στο Pi σας μέσω SSH, χρησιμοποιώ το Putty.

Βήμα 2: Πληκτρολογήστε τις ακόλουθες εντολές στο τερματικό:

  1. 'sudo bluetoothctl'
  2. 'power on'
  3. 'πράκτορας ενεργός'
  4. 'σάρωση ενεργοποιημένη'

Βήμα 3: Τώρα περιμένετε μέχρι να ανακαλυφθεί το HC-05, πρέπει να το ενεργοποιήσετε.

Βήμα 4: Τώρα θα πρέπει να αντιστοιχίσετε και να εμπιστευτείτε τη συσκευή, πληκτρολογήστε τις ακόλουθες εντολές:

  1. «ζεύγος xx: xx: xx: xx: xx: xx», με τη διεύθυνση mac της μονάδας HC-05 στη θέση των x'es.
  2. 'Connect xx: xx: xx: xx: xx: xx', αλλά αυτό πιθανότατα θα δώσει σφάλμα.
  3. 'εμπιστοσύνη xx: xx: xx: xx: xx: xx'

Βήμα 5: Τώρα που η μονάδα είναι αντιστοιχισμένη και αξιόπιστη, πρέπει να τη συνδέσουμε σε σειριακή θύρα. Αυτό μπορεί να γίνει με την ακόλουθη εντολή: 'sudo rfcomm bind 0 xx: xx: xx: xx: xx: xx', και πάλι με τα x'es να αντιπροσωπεύουν τη διεύθυνση mac της μονάδας HC-05. Κανονικά αν κοιτάξετε στο '/dev' θα πρέπει να δείτε το 'rfcomm0', εάν δεν προσπαθήσετε να κάνετε επανεκκίνηση.

Το πρόβλημα είναι τώρα ότι πρέπει να εκτελέσετε χειροκίνητα αυτήν την εντολή για κάθε εκκίνηση του Pi. Για να το κάνω αυτό αυτόματα, πρόσθεσα την εντολή '/etc/rc.local' πριν από την 'έξοδο 0'. Τώρα θα συνδέσει αυτόματα τη μονάδα.

Τώρα που έχετε διαμορφώσει το Bluetooth, μπορείτε να εκτελέσετε τον κωδικό που συμπεριέλαβα. Προσοχή ότι έχω βάλει μια βάση δεδομένων MariaDB στο Pi μου, δεν θα αναφέρω πώς να το ρυθμίσω, θα συμπεριλάβω μόνο ένα μοντέλο της βάσης δεδομένων μου και ένα dumbfile. Εάν θέλετε να εκτελέσετε τον κώδικα χωρίς τη βάση δεδομένων και τον ιστότοπο, συμπεριέλαβα ένα απλό πρόγραμμα για να το κάνετε.

Αντιγράψτε το περιεχόμενο του αρχείου zip στο Pi σας και εκτελέστε το με την ακόλουθη εντολή: 'python3 airduino.py', υποθέτοντας ότι βρίσκεστε στον ίδιο φάκελο. Εάν το Arduino είναι ενεργοποιημένο και οι ακίδες tx και rx είναι συνδεδεμένες, θα πρέπει να δείτε μερικά μηνύματα σχετικά με την εισαγωγή δεδομένων στη βάση δεδομένων. Εάν θέλετε να ξεκινήσετε αυτόματα το πρόγραμμα, προσθέστε αυτήν τη γραμμή στο '/etc/rc.local': 'python3 //arduino.py', αντικαταστήστε με την πραγματική διαδρομή.

Για τον ιστότοπο, εγκατέστησα έναν διακομιστή appache για τη φιλοξενία του ιστότοπου. Αντιγράψτε τα αρχεία από το zipfile στο '/var/www/html/'. Τώρα, εάν μεταβείτε στη διεύθυνση IP του PI σας, θα πρέπει να δείτε τον ιστότοπο και τα δεδομένα εάν όλα λειτουργούσαν σωστά.

Βήμα 5: Δημιουργία θήκης και συγκόλληση

Δημιουργία θήκης και συγκόλληση
Δημιουργία θήκης και συγκόλληση
Δημιουργία θήκης και συγκόλληση
Δημιουργία θήκης και συγκόλληση
Δημιουργία θήκης και συγκόλληση
Δημιουργία θήκης και συγκόλληση

Arduino

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

Πρώτα όμως κόλλησα όλα τα εξαρτήματα στην σανίδα και στερέωσα μερικά καλώδια για το Ground και το Vcc. Έβαλα κυρίως ένα ή δύο εξαρτήματα σε ένα κομμάτι και τα τοποθέτησα γύρω από τον πύργο.

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

Σε αυτό το σημείο τοποθέτησα τους οδηγούς για το led στο τελευταίο επίπεδο του πύργου μου. Απενεργοποίησα την τάση εξόδου των προγραμμάτων οδήγησης σε 2,2 για το κόκκινο led και 3,2 για το πράσινο και μπλε led. Συνδέω το led στο ψυγείο μου και τον ανεμιστήρα μου με φερμουάρ. Στη συνέχεια χρησιμοποίησα λίγο ξύλο για να το κρατήσω στη θέση του.

Συνδέσα τα περισσότερα καλώδια γείωσης και καλώδια Vcc χρησιμοποιώντας βιδωτούς ακροδέκτες.

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

Raspberry Pi

Για το Raspberry Pi μόλις έφτιαξα ένα απλό ξύλινο κουτί με την οθόνη LCD στην κορυφή και το κουμπί στο πλάι.

Βήμα 6: Τελικό

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

Σχετικά με τις μπαταρίες:

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

Github:

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

Συνιστάται: