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

Διακόπτης φωτός: 7 βήματα
Διακόπτης φωτός: 7 βήματα

Βίντεο: Διακόπτης φωτός: 7 βήματα

Βίντεο: Διακόπτης φωτός: 7 βήματα
Βίντεο: 7 ΑΣΥΡΜΑΤΟΣ ΔΙΑΚΟΠΤΗΣ - tutorial 2024, Νοέμβριος
Anonim
Διακόπτης φωτός
Διακόπτης φωτός

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

Απαιτήσεις:

- Raspberry Pi (κάθε γεύση είναι ωραία, αλλά χρησιμοποίησα το μοντέλο 3B+)

- Δύο τρανζίστορ 2n2222 (προτείνω να αγοράσετε τουλάχιστον πέντε καθώς υπάρχουν μεγάλες πιθανότητες να βραχυκυκλώσετε μερικά κατά λάθος)

-Καλώδια από άλμα αρσενικό σε αρσενικό και αρσενικό σε θηλυκό

- Breadboard

- (προαιρετικό αλλά συνιστάται) Τροφοδοτικό Breadboard 5V

- Δύο από κάθε αντίσταση 1k και 10k

- Μονάδα διπλού ρελέ

- Δύο παλιές λάμπες σπιτιού ή άλλες συσκευές φωτισμού (χρησιμοποιήστε λαμπτήρες led καθώς οι πυρακτώσεις τείνουν να καίγονται κατά τη διάρκεια των δοκιμών)

Κολλητική ταινία και κόπτης καλωδίων για συναρμογή

Βήμα 1: Ρύθμιση του διακομιστή και των εξαρτήσεων στο Raspberry Pi

Για το έργο μου χρησιμοποίησα το NGiNX, αν και μπορείτε να χρησιμοποιήσετε όποιον διακομιστή θέλετε (Apache2, κ.λπ.). Η εγκατάσταση βανίλιας με τον διαχειριστή πακέτων είναι μια χαρά, δεν χρειάζεται να συντάξουμε τη δική μας πηγή ή κάτι παρόμοιο. Θα χρειαστούμε επίσης PHP, Python3 και Composer.

- SSH στο PI σας και πληκτρολογήστε $ sudo nano /etc/dhcpcd.conf

- Διαμορφώστε τις στατικές παραμέτρους IP

- Επανεκκινήστε το PI σας

- Ελέγξτε αν όλα λειτουργούν πληκτρολογώντας {the_ip_you_chose} στη γραμμή διευθύνσεων του προγράμματος περιήγησής σας (θα πρέπει να δείτε τη σελίδα καλωσορίσματος του nginx)

Βήμα 2: Εγκαταστήστε το Πλαίσιο Ιστού και τη Διαμόρφωση για το NGiNX

Θέλουμε να έχουμε έναν ιστότοπο στον οποίο μπορούμε να έχουμε πρόσβαση από το πρόγραμμα περιήγησής μας για κινητά ή επιτραπέζιους υπολογιστές και για να απαλλαγούμε από τη συγγραφή απλού κώδικα php/html που δεν εμπίπτει σε αυτό το σεμινάριο, θα χρησιμοποιήσουμε αντ 'αυτού ένα πλαίσιο PHP που ονομάζεται Yii2 για χειρισμό βασικών δρομολόγηση και στυλ για εμάς.

- Μεταβείτε στη σελίδα εγκατάστασης Yii2 και χρησιμοποιήστε το composer για να το εγκαταστήσετε στο/var/www/html/light-switch

- Δεν θα δούμε τίποτα ακόμα καθώς δεν έχουμε βάλει ακόμα το αρχείο ρυθμίσεων για τον διακομιστή

- Επισυνάπτω το αρχείο (προεπιλογή) σε αυτό το βήμα

- Χρησιμοποιήστε το με αυτό το πλαίσιο ή αναζητήστε ένα άλλο διαδικτυακά εάν προτιμάτε διαφορετικό backend

- Πρέπει να βάλετε αυτό το αρχείο στο/etc/nginx/sites-available/

- Φορτώστε ξανά το NGiNX με $ sudo systemctl reload nginx

- Σε περίπτωση που κάτι δεν λειτουργεί, μπορείτε να εκτελέσετε $ sudo nginx -t για να εντοπίσετε σφάλματα στα αρχεία διαμόρφωσης

Βήμα 3: Ρύθμιση των σεναρίων Python που θα αλληλεπιδράσουν με το GPIO

Καθώς η PHP δεν του αρέσει να παίζει τόσο καλά με σενάρια τύπου χρόνου εκτέλεσης, όπως το GPIO API και το python δεν είναι πολύ φιλικό με τις εφαρμογές ιστού, θα χρησιμοποιήσουμε καθένα από αυτά στα πλεονεκτικά τους πλαίσια. Επισυνάπτονται σε αυτό το βήμα θα βρείτε τα 4 απαραίτητα σενάρια python τα οποία αλληλεπιδρούν με τις ακίδες και ενεργοποιούν τα φώτα. Τοποθετήστε τα σενάρια όπου θέλετε, αλλά σημειώστε τη θέση τους καθώς θα το χρειαστούμε στο επόμενο βήμα όταν ρυθμίσουμε την πλευρά php των πραγμάτων.

Βήμα 4: Τελειώνοντας στο Php Side of Things

Τελειώνοντας στο Php Side of Things
Τελειώνοντας στο Php Side of Things

Το μόνο που χρειάζεται να κάνουμε είναι να αφαιρέσουμε μερικές από τις προεπιλεγμένες διαδρομές και σελίδες από την κύρια διάταξη και να προσθέσουμε μερικές γραμμές κώδικα στο SiteController συν μια νέα μέθοδο που ονομάζεται actionLightswitch (). Μετά από αυτό, θα εκτελέσει τα σενάρια python από το προηγούμενο βήμα, τα οποία με τη σειρά τους θα δώσουν εντολή στις καρφίτσες GPIO.

Βήμα 5: Δημιουργία κυκλώματος

Δημιουργία κυκλώματος
Δημιουργία κυκλώματος
Δημιουργία κυκλώματος
Δημιουργία κυκλώματος
Δημιουργία κυκλώματος
Δημιουργία κυκλώματος
Δημιουργία κυκλώματος
Δημιουργία κυκλώματος

Λόγω της φύσης αυτής της συγκεκριμένης μονάδας ρελέ (αλλάζει όταν συνδέεται στο GND) πρέπει να κατασκευάσουμε το κύκλωμα χρησιμοποιώντας τρανζίστορ. Το PI θα ανοίξει μόνο το τρανζίστορ το οποίο θα αφήσει το ρεύμα να ρέει από τις ακίδες δεδομένων ρελέ στο GND ενεργοποιώντας έτσι το πηνίο και κλείνοντας το κύκλωμα για τους λαμπτήρες. Ακολουθήστε τα σχήματα στις συνημμένες εικόνες και θα είστε έτοιμοι.

Για αυτό το επόμενο μέρος, πρέπει να είστε πραγματικά προσεκτικοί καθώς ήρθε η ώρα να συνδέσετε το ρελέ. Αποσυνδέστε τα πάντα πρώτα! Το ρελέ έχει 3 θύρες ανά σύνδεση. Θα συνδέσουμε τα καλώδια των συσκευών μας στο μεσαίο και αυτό με την ανοιχτή πινακίδα πάνω του. Συνδέστε προσεκτικά το καλώδιο για να εκθέσετε τους χάλκινους αγωγούς και τοποθετήστε τους στις προαναφερθείσες θύρες ρελέ. Η σειρά δεν έχει σημασία καθώς τώρα εργαζόμαστε με εναλλακτικό ρεύμα.

Βήμα 6: Τελική δοκιμή

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

Βήμα 7: Μέρος μπόνους: Old-school Clapper Trigger

Απαιτήσεις:

- οποιοδήποτε μικρόφωνο USB (δεν χρειάζεται να είναι υψηλής ποιότητας)

- Πακέτο ALSA (η μέθοδος εγκατάστασης διαφέρει ανάλογα με τη διανομή σας)

- Ενότητα PyAudio

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

Συνιστάται: