Πίνακας περιεχομένων:
- Βήμα 1: Τι θα χρειαστείτε
- Βήμα 2: Ρυθμίστε τις πρίζες
- Βήμα 3: Δημιουργήστε έναν λογαριασμό PubNub
- Βήμα 4: Προετοιμάστε το Raspberry Pi
- Βήμα 5: Δημιουργία κυκλώματος
- Βήμα 6: Λάβετε τους κωδικούς RF
- Βήμα 7: Εκτέλεση του προγράμματος
- Βήμα 8: Εκτέλεση κατά την εκκίνηση
- Βήμα 9: Προσθήκη περισσότερων διακοπτών
- Βήμα 10: Προχωρώντας περαιτέρω
- Βήμα 11: Μονάδες
Βίντεο: Φθηνός και αποτελεσματικός αυτοματισμός σπιτιού με Raspberry Pi: 11 βήματα (με εικόνες)
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:38
Πάντα ήθελα να μπορώ να ελέγχω τα φώτα ασύρματα, αλλά οι εμπορικές επιλογές είναι συνήθως ακριβές. Τα φώτα Philips Hue κοστίζουν περίπου $ 70 και τα φώτα που συνδέονται με το WiFi είναι επίσης ακριβά. Αυτό το σεμινάριο θα σας πει πώς μπορείτε να ελέγχετε έως και πέντε φώτα/λάμπες/χριστουγεννιάτικα φωτιστικά για περίπου $ 50 και μπορεί να επεκταθεί ώστε να περιλαμβάνει και περισσότερα φώτα.
Βήμα 1: Τι θα χρειαστείτε
Υλικά:
Raspberry Pi Zero W (Ασύρματη έκδοση)
Κάρτα Micro SD (Τουλάχιστον 4 GB)
Μίνι καλώδιο/μετατροπέας HDMI σε HDMI (Υπάρχει διαφορά μεταξύ mini και micro, βεβαιωθείτε ότι έχετε το σωστό!)
Καλώδιο/μετατροπέας Micro USB σε USB
Πληκτρολόγιο USB
Σημείωση: Πήρα ένα κιτ εκκίνησης Raspberry Pi Zero W από την Amazon που συνοδεύτηκε από Raspberry Pi Zero W, κάρτα SD, θήκη, καλώδιο τροφοδοσίας, μετατροπέα HDMI και μετατροπέα USB. Για μόνο $ 30, είναι μια πολύ καλή επιλογή (σύνδεσμος)
Μπορείτε να χρησιμοποιήσετε ένα διαφορετικό μοντέλο Raspberry Pi, αλλά το Raspberry Pi πρέπει να έχει κάποια μορφή σύνδεσης στο Διαδίκτυο και το Pi Zero W είναι η φθηνότερη επιλογή.
Απομακρυσμένες πρίζες - τα χρησιμοποίησα
RF πομπός και δέκτης (Σημείωση: η συχνότητα του πομπού/δέκτη πρέπει να ταιριάζει με τη συχνότητα των απομακρυσμένων πρίζων) - τα χρησιμοποίησα
Σύρμα για κεραία (χρησιμοποίησα σύρμα χαλκού συμπαγούς πυρήνα 22 μετρητών, άλλο σύρμα μπορεί να λειτουργήσει)
Breadboard, καλώδια Jumper, κεφαλίδα 40 ακίδων από αρσενικό σε αρσενικό
Λογισμικό:
Raspberry Pi OS (Λήψη Raspbian Desktop)
Etcher disk imager (Για εγγραφή του Pi OS στην κάρτα SD)
Εργαλεία:
Συγκολλητικό σίδερο
Υπολογιστής για λήψη Pi OS και Etcher
Βήμα 2: Ρυθμίστε τις πρίζες
Ξεκινήστε συνδέοντας τις πρίζες σας σε μια πρίζα. Ακολουθήστε τις οδηγίες που περιλαμβάνονται για να τις ρυθμίσετε και συνδέστε τα φώτα/συσκευές σας. Βεβαιωθείτε ότι το τηλεχειριστήριό σας έχει αντιστοιχιστεί σωστά και ελέγχει τις πρίζες.
Βήμα 3: Δημιουργήστε έναν λογαριασμό PubNub
Το PubNub είναι ένας δωρεάν διακομιστής Διαδικτύου που σας επιτρέπει να επικοινωνείτε μεταξύ συσκευών, οπουδήποτε στον κόσμο. Το σενάριο python λαμβάνει μηνύματα από μια ιστοσελίδα και χρησιμοποιεί τις πληροφορίες στο μήνυμα για να ενεργοποιήσει ή να απενεργοποιήσει τα φώτα. Μπορείτε να εγγραφείτε για τον δωρεάν λογαριασμό σας εδώ. Αφού εγγραφείτε, συνδεθείτε στο λογαριασμό σας. Αυτό θα σας μεταφέρει σε μια σελίδα διαχείρισης εφαρμογών. Κάντε κλικ στο "Δημιουργία νέας εφαρμογής". Δώστε ένα όνομα στην εφαρμογή και, στη συνέχεια, επιλέξτε τη από τη λίστα εφαρμογών (Εάν αυτή είναι η πρώτη σας εφαρμογή, θα είναι η μόνη) Αυτό θα σας μεταφέρει στη σελίδα κλειδιών εφαρμογής. Κάντε κλικ στο "Demo Keyset" και θα δείτε τρία διαφορετικά κλειδιά. Συνεχίστε αυτήν τη σελίδα, θα χρειαστείτε αυτά τα κλειδιά αργότερα. Τώρα που έχετε τον λογαριασμό σας PubNub, μπορείτε να ρυθμίσετε το raspberry pi σας.
Βήμα 4: Προετοιμάστε το Raspberry Pi
Κατεβάστε το Etcher και το Raspberry Pi OS στον υπολογιστή σας (σύνδεσμοι στη λίστα μερών)
Εγκαταστήστε το Etcher στον υπολογιστή σας και αποσυμπιέστε (εάν είναι απαραίτητο) το Raspberry Pi OS. Τοποθετήστε την κάρτα Micro SD στον υπολογιστή σας και ανοίξτε το Etcher. Κάντε κλικ στην επιλογή "Επιλογή εικόνας" και μεταβείτε στο αποσυμπιεσμένο αρχείο Raspberry Pi OS. Επιλέξτε το και, στη συνέχεια, κάντε κλικ στην επιλογή "Επιλογή μονάδας δίσκου" και επιλέξτε την κάρτα micro SD από τη λίστα. Κάντε κλικ στο "Flash" και περιμένετε να ολοκληρωθεί το Etcher. Μόλις ολοκληρωθεί το Etcher, αφαιρέστε την κάρτα SD από τον υπολογιστή σας (ο Etcher την εξαγάγει αυτόματα) και τοποθετήστε την στο Raspberry Pi. Σε αυτό το σημείο, θα χρειαστεί να συνδέσετε το Raspberry Pi σε μια οθόνη με τον μετατροπέα HDMI. Συνδέστε ένα πληκτρολόγιο (και ποντίκι εάν έχετε διανομέα πολλαπλών USB) και συνδέστε το καλώδιο τροφοδοσίας. Υπάρχουν δύο θύρες micro USB. Το ένα είναι για τροφοδοσία, το άλλο είναι μια πραγματική θύρα USB. Το πιο κοντινό στο άκρο του Pi είναι η ισχύς, ενώ αυτό που είναι πιο κοντά στη μέση είναι το USB. Το raspberry pi σας θα αρχίσει τώρα να εκκινεί. Μπορεί να κάνει επανεκκίνηση μερικές φορές κατά την πρώτη εκκίνηση, αλλά αυτό είναι φυσιολογικό. Μόλις ξεκινήσει το raspberry pi, συνδέστε το στο WiFi σας. Αφού το συνδέσετε σε WiFi, μπορείτε να χρησιμοποιήσετε διακομιστή SSH, αλλά θεωρώ ότι είναι ευκολότερο να χρησιμοποιήσετε το GUI προς το παρόν. Ανοίξτε ένα παράθυρο τερματικού και εισαγάγετε αυτές τις εντολές:
sudo pip3 install 'pubnub == 3.9.0'
cd git κλώνος git: //git.drogon.net/wiringPi git κλώνος
sudo git clone
sudo chown root.root/var/www/rfoutlet/codesend sudo chmod 4755/var/www/rfoutlet/codesend
cd καλωδίωσηPi
./χτίζω
Τώρα, ανοίξτε το πρόγραμμα περιήγησης Raspberry Pi και θα δείτε τον φάκελο pi-home-automation. Κάντε διπλό κλικ σε αυτό και θα δείτε ένα αρχείο που ονομάζεται RFControl.py. Αντιγράψτε το (απέναντι κάντε κλικ και επιλέξτε "Αντιγραφή"), στη συνέχεια επιστρέψτε στον φάκελο pi και επικολλήστε τον εκεί.
Κλείστε το raspberry pi (Είτε από το μενού είτε εκτελώντας sudo poweroff από τη γραμμή εντολών) και αποσυνδέστε το μόλις σταματήσει να αναβοσβήνει το πράσινο φως.
Βήμα 5: Δημιουργία κυκλώματος
Τώρα ήρθε η ώρα να δημιουργήσετε το κύκλωμα. Χρησιμοποίησα ένα breadboard, αλλά μπορείτε να το κάνετε όπως θέλετε.
Πρώτον, πρέπει να δημιουργήσουμε μια κεραία για τον πομπό RF. Αυτό το εκπαιδευτικό σεμινάριο λέει πώς να φτιάξετε μια κεραία για έναν πομπό RF. Ακολουθήστε τις οδηγίες και, στη συνέχεια, κολλήστε το στον πείρο κεραίας του πομπού (Σε αυτόν που χρησιμοποίησα είχε την ετικέτα ANT) με τη μικρότερη πλευρά πιο κοντά στον πομπό
Καλωδίστε τον πομπό
Ο πομπός χρησιμοποιεί αυτές τις ακίδες:
ΔΕΔΟΜΕΝΑ: GPIO 17, Φυσική ακίδα 11
VCC: Raspberry Pi 5v, Physical pin 2
GND: Raspberry Pi GND, Φυσική καρφίτσα 6
Καλωδίστε τον δέκτη
Ο δέκτης χρησιμοποιεί αυτές τις ακίδες:
GND: Raspberry Pi GND, Φυσική καρφίτσα 9
VCC: Raspberry Pi 5v, Physical pin 4
ΔΕΔΟΜΕΝΑ: GPIO 27, Φυσική ακίδα 13 (Υπάρχουν δύο ακίδες δεδομένων στον δέκτη που χρησιμοποίησα και χρησιμοποίησα τον πιο κοντινό στο VCC)
Βήμα 6: Λάβετε τους κωδικούς RF
Αφού συνδεθεί το κύκλωμά σας στο Raspberry Pi, ελέγξτε το δύο φορές για να βεβαιωθείτε ότι όλα είναι στη θέση τους και, στη συνέχεια, ενεργοποιήστε το ξανά. Μόλις ενεργοποιηθεί, ανοίξτε ένα τερματικό και πληκτρολογήστε
sudo/var/www/rfoutlet/RFSniffer
Στη συνέχεια, ανοίξτε το πρόγραμμα RFControl. Η τοποθέτηση του παραθύρου του τερματικού και του παραθύρου δίπλα-δίπλα μπορεί να είναι χρήσιμη στο επόμενο βήμα.
Θα χρειαστείτε το τηλεχειριστήριο που συμπεριλήφθηκε στο κιτ πρίζας τώρα. Κρατήστε το κοντά στο δέκτη και πατήστε κάθε μεμονωμένο κουμπί. Όταν πατάτε ένα κουμπί, θα δείτε δύο αριθμούς τυπωμένους στην οθόνη. Ο ένας από αυτούς θα είναι εξαψήφιος ή επταψήφιος κωδικός και ο άλλος τριψήφιος κωδικός. Θα χρειαστεί να επεξεργαστείτε το λεξικό κωδικών στο πρόγραμμα. Εισαγάγετε τον 7ψήφιο κωδικό στη θέση του αντίστοιχου διακόπτη στο πρόγραμμα και για κάθε κουμπί ενεργοποίησης/απενεργοποίησης, εισαγάγετε τον τριψήφιο κωδικό (αυτό είναι το μήκος) στον αντίστοιχο διακόπτη στο πρόγραμμα.
Για παράδειγμα, εάν ο διακόπτης 1 ενεργοποιημένος έχει κωδικό 1234567, κωδικό απενεργοποίησης 7654321 και μήκος 890, ο κωδικός θα μοιάζει με αυτόν:
κωδικοί = {
'switch1': {'on': 1234567, #Αυτός είναι ο διακόπτης 1 on 'off': 7654321, #this is switch 1 off 'len': 890, #this is switch 1 length code}, 'switch2': {… },…}
Επαναλάβετε αυτό για κάθε κουμπί. Ενώ επεξεργάζεστε αυτό το αρχείο, αλλάξτε τις συμβολοσειρές που γράφουν "YOUR-SUB-KEY" στο κλειδί εγγραφής σας στο PubNub και "YOUR-PUB-KEY" στο κλειδί δημοσίευσης.
Μόλις καταγραφεί κάθε κουμπί, μπορείτε να συνεχίσετε στην επόμενη ενότητα.
Βήμα 7: Εκτέλεση του προγράμματος
Τώρα που έχετε όλους τους κωδικούς σας, μεταβείτε σε αυτήν τη σελίδα GitHub (Στον υπολογιστή σας, όχι raspberry pi) και κάντε κλικ στο πράσινο κουμπί που λέει "Κλωνοποίηση ή λήψη" και, στη συνέχεια, κάντε κλικ στην επιλογή "Λήψη ταχυδρομικού ταχυδρομείου". Μόλις γίνει λήψη αυτού του αρχείου, αποσυμπιέστε το και ανοίξτε το φάκελο. Ανοίξτε το αρχείο με το όνομα main.js. Θα χρειαστεί να εισαγάγετε τα κλειδιά εγγραφής και δημοσίευσης στο πρόγραμμα αντικαθιστώντας το "YOUR-PUB-KEY" με το κλειδί δημοσίευσης και το "YOUR-SUB-KEY" με το κλειδί εγγραφής σας.
Στη συνέχεια, επιστρέψτε στο Raspberry Pi και εισαγάγετε
python3 RFControl.py
Μόλις εκτυπώσει "Έτοιμο", επιστρέψτε στον υπολογιστή σας και ανοίξτε το αρχείο index.html σε ένα πρόγραμμα περιήγησης ιστού κάνοντας ένα αντίθετο κλικ, επιλέξτε "Άνοιγμα με" και επιλέξτε το πρόγραμμα περιήγησης που προτιμάτε. Θα πρέπει να δείτε 2 στήλες των 5 κουμπιών, με τα ονόματα των διακοπτών μεταξύ τους. Πατήστε οποιοδήποτε από τα κουμπιά. Αν ελέγχει σωστά την πρίζα, τέλεια! Εάν όχι, εδώ είναι μερικά πράγματα που πρέπει να δοκιμάσετε:
- Βεβαιωθείτε ότι το Raspberry Pi λαμβάνει μηνύματα. Θα πρέπει να εκτυπώνεται στην οθόνη κάθε φορά που λαμβάνει ένα μήνυμα από την ιστοσελίδα. Εάν όχι, βεβαιωθείτε ότι τα κλειδιά εγγραφής/δημοσίευσης είναι σωστά.
- Εάν το Raspberry Pi λαμβάνει μηνύματα, βεβαιωθείτε ότι οι κωδικοί RF είναι σωστοί. Βεβαιωθείτε ότι οι πρίζες σας έχουν αντιστοιχιστεί με το τηλεχειριστήριό σας, το τηλεχειριστήριό σας μπορεί να τις ελέγξει και ότι οι κωδικοί που εισαγάγατε στο πρόγραμμα είναι σωστοί.
- Εάν οι κωδικοί RF είναι σωστοί, βεβαιωθείτε ότι το Raspberry Pi βρίσκεται στην περιοχή των πριζ. Εάν αρχίσουν να λειτουργούν αφού το μετακινήσετε πιο κοντά, ίσως χρειαστεί να κάνετε εκ νέου την κεραία σας.
- Εάν εξακολουθούν να μην λειτουργούν, πείτε μου το πρόβλημά σας στα σχόλια και θα προσπαθήσω να το βοηθήσω.
Βήμα 8: Εκτέλεση κατά την εκκίνηση
Για να εκτελέσετε το πρόγραμμα python κατά την εκκίνηση, εισαγάγετε αυτό στο τερματικό raspberry pi:
crontab -e
Στη συνέχεια, μεταβείτε στο κάτω μέρος του αρχείου και εισαγάγετε αυτό:
@reboot python3 /home/pi/RFControl.py &
Αυτό θα κάνει το Python script σας να τρέχει κατά την εκκίνηση κάθε φορά. Τώρα επανεκκινήστε το Raspberry Pi.
Βήμα 9: Προσθήκη περισσότερων διακοπτών
Αν θέλετε να προσθέσετε περισσότερες πρίζες, ακολουθήστε αυτές τις οδηγίες:
Ανοίξτε το RFControl.py στο Raspberry Pi και προσθέστε έναν νέο διακόπτη στο λεξικό διακοπτών.
Παράδειγμα:
διακόπτες = {
… Άλλοι διακόπτες… 'NAME-OF-SWITCH': {'on': xxxxxxx, 'off': yyyyyyy, 'len': zzz,},}
Στη συνέχεια, προσθέστε ένα νέο κουμπί στην εφαρμογή ιστού επεξεργάζοντας τη μεταβλητή μεταγωγής στο main.js στον υπολογιστή σας.
Παράδειγμα:
διακόπτες var = [… Παλιοί διακόπτες… ['NAME-TO-DISPLAY', 'NAME-OF-SWITCH'],];
Αντικαταστήστε το NAME-TO-DISPLAY με το όνομα που θέλετε να εμφανίζεται στην ιστοσελίδα και το NAME-OF-SWITCH και στα δύο αρχεία με οτιδήποτε σας αρέσει. Πρέπει να είναι μοναδικό από τα άλλα όμως!
Βήμα 10: Προχωρώντας περαιτέρω
Το PubNub υποστηρίζεται σε πολλές διαφορετικές πλατφόρμες, πράγμα που σημαίνει ότι μπορείτε να στείλετε μηνύματα από σχεδόν οποιαδήποτε συσκευή! Χρησιμοποίησα ένα κιτ Raspberry Pi AIY Voice και PubNub για να στείλω εντολές με τη φωνή μου, αλλά αυτό μπορεί να είναι το θέμα ενός μεταγενέστερου Instructable. Σας ευχαριστώ που διαβάσατε το Instructable μου, ελπίζω να ήταν χρήσιμο!
Βήμα 11: Μονάδες
Ευχαριστώ τον Tim Leland για το σεμινάριο σχετικά με τη ρύθμιση του πομπού RF: φροντιστήριο
Χάρη στο diy_bloke για το σεμινάριο για τη δημιουργία κεραίας: φροντιστήριο
Ευχαριστώ επίσης όλους τους άλλους που δημοσίευσαν σεμινάρια στο διαδίκτυο που είδα για βοήθεια!
Συνιστάται:
Αυτοματισμός σπιτιού χρησιμοποιώντας το Google Assistant και το Adafruit IO: 3 βήματα
Οικιακός αυτοματισμός χρησιμοποιώντας το Google Assistant και το Adafruit IO: Ο βοηθός Google είναι υπηρεσία φωνητικών εντολών που βασίζεται σε AI (Τεχνητή Νοημοσύνη). Χρησιμοποιώντας τη φωνή, μπορούμε να αλληλεπιδράσουμε με τον βοηθό google και μπορεί να κάνει αναζήτηση στο διαδίκτυο, να προγραμματίσει συμβάντα, να ρυθμίσει συναγερμούς, να ελέγξει συσκευές κ.λπ. Αυτή η υπηρεσία είναι διαθέσιμη στο sma
PIR συναγερμού σε WiFi (και αυτοματισμός σπιτιού): 7 βήματα (με εικόνες)
PIR συναγερμού σε WiFi (και αυτοματισμός σπιτιού): Επισκόπηση Αυτό το διδακτικό θα σας δώσει τη δυνατότητα να δείτε την τελευταία ημερομηνία/ώρα (και προαιρετικά το ιστορικό των χρόνων) κατά την ενεργοποίηση των PIR του συναγερμού του σπιτιού σας (παθητικοί υπέρυθροι αισθητήρες), στον αυτοματισμό του σπιτιού σας λογισμικό. Σε αυτό το έργο, θα
Αυτοματισμός σπιτιού με Android και Arduino: Ανοίξτε την πύλη όταν επιστρέψετε στο σπίτι: 5 βήματα
Home Automation With Android και Arduino: Open the Gate When You Get Home: This Instructable αφορά τη δημιουργία ενός συστήματος αυτοματισμού σπιτιού που θα ελέγχεται μέσω smartphone, χρησιμοποιώντας σύνδεση στο Διαδίκτυο, έτσι ώστε να μπορεί να έχει πρόσβαση από οπουδήποτε το χρειάζεστε. Επιπλέον, θα εκτελεί ορισμένες ενέργειες όποτε ένα κριτήριο είναι
Απλούστερος αυτοματισμός σπιτιού χρησιμοποιώντας Bluetooth, Android Smartphone και Arduino .: 8 βήματα (με εικόνες)
Απλούστερος αυτοματισμός σπιτιού χρησιμοποιώντας Bluetooth, Android Smartphone και Arduino .: Γεια σε όλους, Αυτό το έργο αφορά στην κατασκευή της πιο απλοποιημένης συσκευής αυτοματισμού σπιτιού χρησιμοποιώντας ένα arduino και μια μονάδα bluetooth. Αυτό είναι πολύ εύκολο να κατασκευαστεί και μπορεί να κατασκευαστεί σε λίγες ώρες. Στην εκδοχή μου που εξηγώ εδώ, μπορώ
Απλός αυτοματισμός σπιτιού χρησιμοποιώντας Raspberry Pi3 και Android Things: 5 βήματα (με εικόνες)
Απλός αυτοματισμός σπιτιού χρησιμοποιώντας Raspberry Pi3 και Android Things: Η ιδέα είναι να σχεδιάσετε ένα “ έξυπνο HOME ” όπου κάποιος μπορεί να ελέγξει οικιακές συσκευές χρησιμοποιώντας Android Things και Raspberry Pi. Το έργο αποτελείται από τον έλεγχο οικιακών συσκευών όπως το φως, ο ανεμιστήρας, ο κινητήρας κ.λπ. Απαιτούμενα υλικά: Raspberry Pi 3HDMI Ca