Πίνακας περιεχομένων:
2025 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2025-01-13 06:57
Wantedθελα να ελέγξω τον διακόπτη φωτισμού στην κρεβατοκάμαρά μου χωρίς να χρειαστεί να σηκωθώ από το κρεβάτι, οπότε ήθελα να μπορώ να τον ελέγξω από το τηλέφωνό μου. Είχα μερικούς επιπλέον περιορισμούς, ήθελα να μπορώ να τον ελέγχω εύκολα από οποιαδήποτε συσκευή, ήθελα να μπορώ να χρησιμοποιώ τον διακόπτη φωτός κανονικά και δεν μπορούσα να κάνω πολλές τροποποιήσεις στο υλικό καθώς νοικιάζω το διαμέρισμα.
Αποφάσισα να χρησιμοποιήσω ένα Raspberry Pi για τον έλεγχο ενός σερβοκινητήρα που θα κινούσε το διακόπτη. Το Raspberry Pi θα εκτελούσε έναν διακομιστή ιστού στον οποίο θα μπορούσα να έχω πρόσβαση ενώ βρίσκομαι στο τοπικό δίκτυο. Οι σύνδεσμοι στον ιστότοπο αυτού του διακομιστή θα μου επέτρεπαν να ενεργοποιήσω και να απενεργοποιήσω τον διακόπτη. Με την απενεργοποίηση του σερβο μεταξύ της αλλαγής θα μπορούσα επίσης να χρησιμοποιήσω τον διακόπτη φώτων κανονικά.
Βήμα 1: Υλικά
Rasperry Pi
Βοηθητικό μοτέρ:
smile.amazon.com/gp/product/B0015H2V72/ref…
Καρύδια σύρματος
Jumper Wires
Βήμα 2: Βήμα 1: Ρυθμίστε το Raspberry Pi
Υπάρχουν διάφοροι τρόποι για να γίνει αυτό. Εάν έχετε οθόνη HDMI και πρακτικό πληκτρολόγιο usb νομίζω ότι είναι λίγο πιο εύκολο. Διαφορετικά, μπορείτε να κάνετε μια ρύθμιση "χωρίς κεφάλι".
Ακολουθεί ένα καλό σεμινάριο για την εγκατάσταση μιας ακέφαλης εγκατάστασης στα Windows:
www.circuitbasics.com/raspberry-pi-basics-…
Και ένα για Mac:
www.circuitbasics.com/raspberry-pi-basics-…
Αλλά το πιο εύκολο είναι να φορτώσετε μια κάρτα SD με NOOBS, να εκκινήσετε το pi ενώ είστε συνδεδεμένοι σε οθόνη και πληκτρολόγιο και απλώς να περάσετε από τη διαμόρφωση. Αυτό το σεμινάριο το εξηγεί αρκετά καλά:
www.circuitbasics.com/raspberry-pi-basics-…
Εάν δεν κάνατε μια ρύθμιση χωρίς κεφάλι, θα πρέπει να ετοιμάσετε το SSH, είναι απαραίτητο για τα υπόλοιπα. Για να το κάνω αυτό χρησιμοποιώ το Putty. Αποκτήστε το εδώ:
www.circuitbasics.com/raspberry-pi-basics-…
Και αν δεν γνωρίζετε τη διεύθυνση IP του Pi σας, μπορείτε να χρησιμοποιήσετε προηγμένο σαρωτή IP:
Στη συνέχεια, απλώς εισάγετε τη διεύθυνση IP για την εισαγωγή pi για Όνομα κεντρικού υπολογιστή/διεύθυνση IP, αφήστε τη θύρα στις 22 και κάντε κλικ στο άνοιγμα. Θα σας ζητηθεί η σύνδεση.
Βήμα 3: Βήμα 2: Ρύθμιση διακομιστή ιστοσελίδων
Για την εκτέλεση του διακομιστή ιστού χρησιμοποίησα το Apache. Μπορείτε να το εγκαταστήσετε χρησιμοποιώντας την εντολή:
sudo apt-get install apache2
Αυτό θα σας δώσει από προεπιλογή μια σελίδα splash όταν μεταβαίνετε στη διεύθυνση IP του pi σας. Θα πρέπει να μοιάζει με την παρακάτω εικόνα.
Βήμα 4: Βήμα 3: Δημιουργήστε τον ιστότοπο
Θα θέλετε να αντικαταστήσετε την προεπιλεγμένη σελίδα splash με τον ιστότοπό σας που μπορεί να ελέγξει τον σερβοκινητήρα. Το πρώτο πράγμα που πρέπει να αντικαταστήσετε είναι το αρχείο ευρετηρίου. Το αρχείο ευρετηρίου για τον ιστότοπο πρέπει να είναι σε/var/www/html. Χρησιμοποιήστε τον αγαπημένο σας επεξεργαστή κειμένου για να δημιουργήσετε το αρχείο ή απλώς αντιγράψτε το αρχείο εδώ χρησιμοποιώντας κάτι όπως το wincp. Προσθέστε το "index.php" σε αυτήν τη θέση, θα πρέπει να το αποθηκεύσετε ξανά ως αρχείο php, καθώς δεν μπορούσα να το ανεβάσω ως τέτοιο. Αυτό το αρχείο php δημιουργεί έναν πολύ βασικό ιστότοπο με δύο συνδέσμους, έναν προς "cgi-bin/off.py" και έναν προς "cgi-bin/on.py". Πρόκειται για δύο σενάρια python που αλλάζουν τη θέση του σερβοκινητήρα.
Τα σενάρια python πρέπει να τοποθετηθούν σε διαφορετική θέση για να μπορέσει το Apache να εκτελεστεί. Θα πρέπει να τοποθετηθούν στον κάδο cgi. Εδώ πηγαίνουν τα αρχεία εάν πρόκειται να εκτελεστούν στο Common Gateway Interface, το οποίο επιτρέπει την εκτέλεση σεναρίων στο pi. Μεταβείτε στο/usr/lib/cgi-bin και προσθέστε τα δύο αρχεία "on.py" και "off.py".
Βήμα 5: Βήμα 4: Τοποθετήστε το μοτέρ
Βρήκα ένα μεγάλο μέρος από έναν άλλο κατασκευαστή για να τοποθετήσει ένα σερβο, ώστε να μπορεί να αναστρέψει έναν τυπικό διακόπτη φωτός. Μπορείτε να βρείτε τα τρισδιάστατα αρχεία για αυτό εδώ:
github.com/suyashkumar/smart-lights
Αυτό αφορά σερβο σερβιρίσματος κανονικού μεγέθους όπως αναφέρεται στην ενότητα ανταλλακτικών. Εκτυπώστε το ή εκτυπώστε το και στη συνέχεια τοποθετήστε το στον διακόπτη των φώτων σας.
Βήμα 6: Βήμα 5: Συνδέστε το Pi και το Motor
Τροφοδοτούσα το pi με micro usb. Έχω διακόψει ένα άλλο micro usb και συνδέω τη γείωση και την ισχύ για το σερβο σε αυτό. Μοιράστηκα το έδαφος μεταξύ του pi και του σερβο. Στη συνέχεια, συνδέσα τον ακροδέκτη σήματος για το σερβο σε GPIO18 στο Pi.
Βήμα 7: Βήμα 6: Διαμόρφωση σεναρίων
Θα χρειαστεί να παίξετε λίγο με τη ρύθμισή σας για να μάθετε ποιες τιμές αντιστοιχούν σε Ενεργοποίηση και Απενεργοποίηση για εσάς. Το Pi σας επιτρέπει να γράφετε στο gpio από τη γραμμή εντολών χρησιμοποιώντας πολύ απλές εντολές. για να κάνετε το gpio 18 pin pwm χρησιμοποιήστε την εντολή:
gpio -g λειτουργία 18 pwm
στη συνέχεια, διαμορφώστε το pwm με:
gpio pwm-ms
gpio pwmc 192
gpio pwmr 2000
Αυτές είναι απλώς λογικές τιμές για τη διαμόρφωση συχνότητας pwm. Επόμενη χρήση:
gpio -g pwm 18 120
Όπου αλλάζετε 120 για να βρείτε τις κατάλληλες τιμές για τη θέση ενεργοποίησης και απενεργοποίησης.
Αφού βρείτε τις κατάλληλες τιμές για απενεργοποίηση και ενεργοποίηση, χρησιμοποιήστε έναν επεξεργαστή κειμένου για να αλλάξετε αυτές τις τιμές στα αντίστοιχα σενάρια για τις δύο θέσεις. Το μέρος για να κάνετε την αλλαγή επισημαίνεται στην εικόνα.
Βήμα 8: Βήμα 7: Δοκιμάστε το
Μεταβείτε στη διεύθυνση IP του pi θα πρέπει να δείτε μια ιστοσελίδα με σύνδεσμο για ενεργοποίηση και απενεργοποίηση. Κάθε σελίδα θα έχει επίσης έναν σύνδεσμο για την άλλη σελίδα.
Είναι βολικό να προσθέσετε μια συντόμευση σε αυτές τις σελίδες στην αρχική οθόνη του τηλεφώνου σας για εύκολη πρόσβαση.