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

SmartBox - Σύστημα έξυπνου σπιτιού για το δωμάτιό σας: 6 βήματα
SmartBox - Σύστημα έξυπνου σπιτιού για το δωμάτιό σας: 6 βήματα

Βίντεο: SmartBox - Σύστημα έξυπνου σπιτιού για το δωμάτιό σας: 6 βήματα

Βίντεο: SmartBox - Σύστημα έξυπνου σπιτιού για το δωμάτιό σας: 6 βήματα
Βίντεο: Smart Home - Τι είναι το έξυπνο σπίτι & τι εξοπλισμό χρειάζεσαι 2024, Νοέμβριος
Anonim
SmartBox - Σύστημα έξυπνου σπιτιού για το δωμάτιό σας
SmartBox - Σύστημα έξυπνου σπιτιού για το δωμάτιό σας

Γεια σε όλους!

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

Μια γενική συσκευή με αισθητήρα υγρασίας και αισθητήρα θερμοκρασίας που μετρά την τρέχουσα ποιότητα ζωής στο δωμάτιό σας. Θα μπορείτε να ρυθμίσετε την επιθυμητή ελάχιστη και μέγιστη θερμοκρασία/υγρασία. Όταν αποκλίνουν αυτές οι τιμές, θα λάβετε ειδοποιήσεις στην αρχική σελίδα.

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

Ως δεύτερη και ξεχωριστή συσκευή, θα μπορείτε να ελέγχετε μια λωρίδα LED με προ-προγραμματισμένα μοτίβα και χρώματα.

Προμήθειες

- Raspberry Pi 3 μοντέλο B+

- Κάρτα SD 16 GB

- Arduino Uno

- Συναρμολογημένο Pi T-Cobbler Plus

- Μικρή σανίδα ψωμιού

- Τροφοδοσία Breadboard (Για παράδειγμα το τροφοδοτικό YwRobot)

- Αισθητήρας θερμοκρασίας ενός καλωδίου (DS18B20+)

- Digitalηφιακός αισθητήρας υγρασίας & υγρασίας (DHT22)

- Αισθητήρας υπερηχητικής απόστασης (HC-SR05)

- Οθόνη LCD 16x2

- Ποτενσιόμετρο

- Ενισχυτής (Adafruit MAX98357A I2S 3W Class D Amplifier)

- Ηχείο 3 Διάμετρος - 4 Ohm 3 Watt

- Μονάδα Bluetooth (HC-05)

- 5V RGB Ledstrip (WS1812B)

- 1x 4.7K Ohm Resistor

- 1x αντίσταση 10K Ohm

- Αντίσταση 3x 1K Ohm

- 1x 330 Ohm Resistor

- Μεταπήδηση καλωδίων καλωδίων

Βήμα 1: Καλωδίωση

Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση
Καλωδίωση

Ας ξεκινήσουμε, ε;

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

ΣΗΜΕΙΩΣΗ: Εάν θέλετε να κάνετε προσαρμογές, τότε θα πρέπει να επεξεργαστείτε τον κώδικα. Κάνε το μόνο αν ξέρεις τι κάνεις! Μπορείτε πάντα να επικοινωνήσετε μαζί μου για ερωτήσεις ή προβλήματα.

Εάν χρειάζεστε τα προγράμματα ψύξης, μπορείτε να τα κατεβάσετε εδώ.

Βήμα 2: Βάση δεδομένων

Βάση δεδομένων
Βάση δεδομένων

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

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

ΣΗΜΕΙΩΣΗ: Ο μηχανισμός σύνδεσης δεν περιλαμβάνεται, αλλά μπορώ να το προσθέσω αργότερα.

Βήμα 3: Ρύθμιση Raspberry Pi

Έτσι, αν όλα είναι συνδεδεμένα, μπορούμε να ξεκινήσουμε με τη ρύθμιση του Raspberry Pi.

Αρχικά, ας ξεκινήσουμε με την εικόνα.

Η εικόνα

1: Κατεβάστε την εικόνα του Raspberry Pi OS:

2: Λήψη και εγκατάσταση του Win32DiskImager:

3: Τοποθετήστε την κάρτα SD και εκτελέστε το Win32DiskImager.

4: Επιλέξτε τη λήψη της εικόνας στη μονάδα δίσκου. Στη συνέχεια, επιλέξτε την κάρτα SD και πατήστε το κουμπί εγγραφής. (Βεβαιωθείτε ότι η κάρτα SD είναι άδεια πριν ξεκινήσετε αυτήν τη διαδικασία, όλα τα δεδομένα θα αφαιρεθούν!)

5: Εάν ολοκληρωθεί η διαδικασία, μπορούμε να κάνουμε τις τελευταίες προσαρμογές στο Raspberry Pi. Μεταβείτε στον κατάλογο της κάρτας SD και προσθέστε ένα αρχείο "ssh" χωρίς επέκταση για να βεβαιωθείτε ότι το pi θα ενεργοποιήσει το SSH κατά την εκκίνηση.

6: Στη συνέχεια, ανοίξτε το cmdline.txt στον ίδιο κατάλογο και προσθέστε "ip = 169.254.10.1" στο τέλος της γραμμής και κάντε κλικ στην επιλογή αποθήκευση. ΣΗΜΕΙΩΣΗ: Διατηρήστε τα πάντα σε μία γραμμή ή ορισμένες ρυθμίσεις δεν θα λειτουργήσουν.

7: Τώρα αφαιρέστε με ασφάλεια την κάρτα SD από τον υπολογιστή σας και τοποθετήστε την κάρτα SD στο Raspberry Pi.

8: Όταν ολοκληρωθεί, μπορείτε να συνδέσετε το pi με καλώδιο Ethernet στη θύρα LAN του φορητού υπολογιστή ή του υπολογιστή σας.

9: Τροφοδοτήστε το Raspberry Pi.

Διαμόρφωση Wi-Fi και Pi

Για να ελέγξουμε το Raspberry Pi μέσω SSH χρειαζόμαστε ένα λογισμικό που ονομάζεται Putty. Μπορείτε να κατεβάσετε και να εγκαταστήσετε το Putty εδώ:

1: Μόλις εγκατασταθεί το Putty, μπορείτε να συνδεθείτε στο pi με IP: 169.254.10.1 και θύρα: 22. Όταν εμφανιστεί η διεπαφή της γραμμής εντολών, μπορείτε να συνδεθείτε με το χρήστη: pi και τον κωδικό πρόσβασης: βατόμουρο.

2: Τώρα έχουμε συνδεθεί στον τύπο "sudo raspi-config" και μεταβαίνουμε στις επιλογές διασύνδεσης. Βεβαιωθείτε ότι το One-Wire, Serial (Ενεργοποιήστε μόνο τη θύρα σειριακού υλικού, όχι το κάλυμμα σύνδεσης πάνω από το σειριακό), το I2C en SPI είναι ενεργοποιημένο.

3: Για να συνδεθούμε με το Wifi πρέπει να χρησιμοποιήσουμε τον root χρήστη. Πληκτρολογήστε "sudo -i" για να συνδεθείτε ως ο βασικός χρήστης.

4: Για να προσθέσετε το δίκτυό σας Wifi στο Raspberry Pi, πληκτρολογήστε

"wpa_passphrase" SSID "" your password ">> /etc/wpa_supplicant/wpa_supplicant.conf"

στο τερματικό με το όνομα και τον κωδικό πρόσβασης του δικτύου σας.

5: Μόλις γίνει αυτό, επανεκκινήστε το pi σας.

6: Εάν όλα είναι σωστά, θα πρέπει να δείτε ότι έχετε μια IP στη διεπαφή wlan0. Κάντε "ip a" για να το ελέγξετε.

7: Ως τελευταίος τύπος "sudo apt-get update" και "sudo apt-get upgrade" για να ενημερώσετε το pi σας.

8: Βεβαιωθείτε ότι έχετε εγκαταστήσει MySQL, apache2 και php-mysql για αυτό το έργο. Τύπος: sudo apt install apache2 mariadb-server php-mysql -y

9: Για εγκατάσταση MySQL διαβάστε αυτό το άρθρο:

10: Επεξεργαστείτε τον χρήστη και τον κωδικό πρόσβασης MySQL στο αρχείο config.py στο backend.

Ρύθμιση Bluetooth

1: Τροφοδοτήστε το Arduino

2: Πληκτρολογήστε hcitool scan για να βρείτε τη διεύθυνση mac της μονάδας Bluetooth. Μόλις βρεθεί, γράψτε το ή αντιγράψτε το σε διαφορετικό έγγραφο.

3: Τώρα θα προσθέσουμε τη μονάδα Bluetooth στο Raspberry Pi. Κάντε τις ακόλουθες εντολές:

sudo bluetoothctl

πράκτορας ενεργοποιημένος

ζεύγος διεύθυνσης mac (Αν ζητάει καρφίτσα, ο τυπικός πείρος είναι 1234)

εμπιστοσύνη mac-διεύθυνση

4: Προσθέστε τη διεύθυνση mac σας στο αρχείο app.py στο backend.

Ρύθμιση ηχείου

Τώρα το pi σας είναι ενημερωμένο και έχουμε σύνδεση στο Διαδίκτυο. Μπορούμε να ξεκινήσουμε τη διαμόρφωση των ηχείων.1: Εκτελέστε την ακόλουθη εντολή: "curl -sS https://raw.githubusercontent.com/adafruit/Raspbe… | bash"

2: Όταν τελειώσει, θα σας ζητήσει επανεκκίνηση, πατήστε y και εισαγάγετε.

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

4. Όταν γίνει αυτό, κάντε επανεκκίνηση για δεύτερη φορά.

Διαμόρφωση Python

Ο κώδικας του έργου τρέχει σε python, οπότε βεβαιωθείτε ότι έχετε εγκαταστήσει το python 3.7. Ελέγξτε αυτό με το "python3 -V". Εάν έχετε python, μπορείτε να εγκαταστήσετε τα ακόλουθα πακέτα με το πρόγραμμα εγκατάστασης pip: pip install Flask Flask-Cors Flask-MySQL Flask-SocketIO PyMySQL gevent gevent-websocket python-socketio αιτήματα

Εγκατάσταση SmartBox

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

1: Κλωνοποιήστε το αποθετήριο SmartBox στον αρχικό σας κατάλογο (/home/pi) πληκτρολογώντας: git clone

2: Μόλις γίνει αυτό, μπορείτε να εκτελέσετε το αρχείο sql. Πληκτρολογήστε "sudo mysql -u root -p << SmartBox.sql" για να δημιουργήσετε τη βάση δεδομένων.

3: Στη συνέχεια, αντιγράψτε το frontend στο/var/www/html κάνοντας "cp -R frontend/./Var/www/html"

4: Για αυτόματη εκκίνηση προσθέστε το αρχείο υπηρεσίας στο systemd. Πληκτρολογήστε: "cp service/SmartBox.service /etc/systemd/system/SmartBox.service" και κάντε "sudo systemctl enable myscript.service" για να το ενεργοποιήσετε.

5: Μόλις ολοκληρωθεί, μεταβείτε στο config.py στο backend και αλλάξτε το στον κωδικό πρόσβασης mysql.

6: Επανεκκινήστε το pi σας

Βήμα 4: Ρύθμιση Arduino Uno

Τώρα η κύρια συσκευή έχει τελειώσει, θα ξεκινήσουμε με το ledstrip. Το Arduino θα ελέγχει τη λωρίδα LED 5V WS1812B για εμάς.

1: Λήψη και εγκατάσταση του Arduino IDE:

2: Κατεβάστε τον κώδικα Arduino στο αποθετήριο github μου:

3: Εάν έχουν γίνει λήψη και εγκατάσταση όλων, μπορείτε να συνδέσετε το Arduino Uno.

4: Ανοίξτε το αρχείο LedStripCode.ino και ανεβάστε το στο Arduino σας κάνοντας κλικ στο βέλος που δείχνει προς τα δεξιά.

5: Συνδέστε τη μονάδα bluetooth και το ledstrip στο arduino και όλα πρέπει να λειτουργήσουν. (Δείτε βήμα 1 καλωδίωση)

Βήμα 5: Σχεδιασμός θήκης

Σχεδιασμός θήκης
Σχεδιασμός θήκης
Σχεδιασμός θήκης
Σχεδιασμός θήκης
Σχεδιασμός θήκης
Σχεδιασμός θήκης

Για το σχεδιασμό της θήκης μου χρησιμοποίησα ένα υπάρχον πλαστικό κουτί και την επίσημη θήκη Raspberry Pi. Στην μπροστινή όψη έκανα διαφορετικές οπές για το ηχείο και μία για την οθόνη LCD.

Στην πίσω πλευρά έκανα ένα άνοιγμα για την καλωδίωση του αισθητήρα θερμοκρασίας και υγρασίας. Υπάρχει επίσης ένα άνοιγμα για την καλωδίωση της τροφοδοσίας του breadboard στο εσωτερικό.

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

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

Μόλις γίνει αυτό, μπορείτε να ενσωματώσετε το T-cobbler και τους αισθητήρες σας. Χρησιμοποίησα βίδες και σιλικόνη για να βεβαιωθώ ότι όλα είναι στερεά.

ΣΗΜΕΙΩΣΗ: Εάν χρησιμοποιείτε μεταλλικές βίδες για να τοποθετήσετε το Raspberry Pi, βεβαιωθείτε ότι χρησιμοποιείτε μονωτική ταινία.

Βήμα 6: Τελειώνοντας την αφή

Τώρα όλα έχουν γίνει, μπορείτε να διαγράψετε το τμήμα IP στο cmdline.txt.

Χρήση: sudo nano /boot/cmdline.txt

Συνιστάται: