Spisu treści:

Przełącznik światła: 7 kroków
Przełącznik światła: 7 kroków

Wideo: Przełącznik światła: 7 kroków

Wideo: Przełącznik światła: 7 kroków
Wideo: Jak podłączyć włącznik światła pojedynczy 2024, Listopad
Anonim
Przełącznik światła
Przełącznik światła

W tym projekcie zilustruję, jak stworzyć całkowicie bezprzewodowy system sterowania oświetleniem z dodatkowym bonusem na końcu. Śledź dalej, aby uzyskać pełny samouczek.

Wymagania:

- Raspberry Pi (każdy smak jest w porządku, ale użyłem modelu 3B+)

- Dwa tranzystory 2n2222 (polecam zakup co najmniej pięciu, ponieważ istnieje duże prawdopodobieństwo, że przez pomyłkę skrócisz kilka)

- Kable połączeniowe męskie-męskie i męskie-żeńskie

- Deska do krojenia chleba

- (opcjonalne, ale zalecane) Zasilanie płytki chlebowej 5V

- Dwa z każdego rezystora 1k i 10k

- Moduł podwójnego przekaźnika

- Dwie stare lampy domowe lub inne urządzenia oświetleniowe (użyj żarówek ledowych, ponieważ te żarowe mają tendencję do spalania się podczas testowania)

- Taśma klejąca i przecinak do kabli do łączenia

Krok 1: Konfiguracja serwera i zależności na Raspberry Pi

Do mojego projektu użyłem NGiNX, chociaż możesz użyć dowolnego serwera (Apache2, itp.). Waniliowa instalacja z menedżerem pakietów jest w porządku, nie ma potrzeby kompilowania własnego źródła ani niczego w tym rodzaju. Będziemy też potrzebować PHP, Python3 i Composera.

- SSH do swojego PI i wpisz $ sudo nano /etc/dhcpcd.conf

- Skonfiguruj statyczne parametry IP

- Zrestartuj swoje PI

- Sprawdź, czy wszystko działa, wpisując {the_ip_you_chose} w pasku adresu przeglądarki (powinieneś zobaczyć stronę powitalną nginx)

Krok 2: Zainstaluj Web Framework i konfigurację dla NGiNX

Chcemy mieć stronę internetową, do której będziemy mogli uzyskać dostęp z naszej przeglądarki mobilnej lub stacjonarnej, a żeby pozbyć się pisania zwykłego kodu php/html, który nie jest zakresem tego samouczka, zamiast tego użyjemy frameworka PHP o nazwie Yii2 do obsługi podstawowych trasowanie i stylizacja dla nas.

- Przejdź do strony instalacyjnej Yii2 i użyj kompozytora, aby zainstalować go w /var/www/html/light-switch

- Jeszcze nic nie zobaczymy, ponieważ nadal nie umieściliśmy naszego pliku konfiguracyjnego dla serwera

- Załączyłem plik (domyślnie) do tego kroku

- Użyj go tak, jak w przypadku tego frameworka lub wyszukaj inny w Internecie, jeśli wolisz inny backend

- Musisz umieścić ten plik w /etc/nginx/sites-available/

- Przeładuj NGiNX za pomocą $sudo systemctl przeładuj nginx

- Jeśli coś nie działa, możesz uruchomić $sudo nginx -t, aby debugować pliki konfiguracyjne

Krok 3: Konfigurowanie skryptów Pythona, które będą współdziałać z GPIO

Ponieważ PHP nie lubi tak dobrze bawić się skryptami typu runtime, takimi jak API GPIO, a python nie jest zbyt przyjazny dla aplikacji internetowych, użyjemy każdego z nich w ich korzystnych kontekstach. Do tego kroku dołączone są 4 niezbędne skrypty Pythona, które wchodzą w interakcję z pinami i uruchamiają światła. Umieść skrypty w dowolnym miejscu, ale zanotuj ich lokalizację, ponieważ będziemy ich potrzebować w następnym kroku, gdy skonfigurujemy stronę php.

Krok 4: Dokończenie po stronie PHP

Dokończenie po stronie PHP
Dokończenie po stronie PHP

Wszystko, co musimy zrobić, to usunąć niektóre domyślne ścieżki i strony z głównego układu i dodać kilka wierszy kodu w SiteController oraz nową metodę o nazwie actionLightswitch(). Następnie wykona skrypty Pythona z poprzedniego kroku, które z kolei będą sterować pinami GPIO.

Krok 5: Tworzenie obwodu

Tworzenie obwodu
Tworzenie obwodu
Tworzenie obwodu
Tworzenie obwodu
Tworzenie obwodu
Tworzenie obwodu
Tworzenie obwodu
Tworzenie obwodu

Ze względu na specyfikę tego konkretnego modułu przekaźnikowego (przełącza się po podłączeniu do GND) musimy zbudować układ z tranzystorów. PI otworzy tylko tranzystor, który pozwoli prądowi przepływać z pinów danych przekaźnika do GND, wyzwalając w ten sposób cewkę i zamykając obwód dla lamp. Postępuj zgodnie ze schematami na załączonych obrazkach, a będziesz gotowy.

W tej następnej części musisz być bardzo ostrożny, bo czas podłączyć przekaźnik. Najpierw odłącz wszystko! Przekaźnik ma 3 porty na połączenie. Do środkowego i tego z napisem „otwarty” podłączymy kable naszych urządzeń. Ostrożnie splataj kabel, aby odsłonić miedziane przewodniki i włóż je do wyżej wymienionych portów przekaźników. Kolejność nie ma znaczenia, ponieważ pracujemy teraz z prądem alternatywnym.

Krok 6: Testy końcowe

Sprawdź swój obwód i przypisane piny co najmniej dwa razy, a następnie podłącz PI do zasilania i wpisz {the_chosen_ip} w pasku adresu przeglądarki. Pierwsza strona będzie miała nasze dwa przełączniki. Kliknij na nie i obserwuj, jak światła włączają się/wyłączają.

Krok 7: Część dodatkowa: Oldschoolowy spust klapy

Wymagania:

- dowolny mikrofon USB (nie musi być wysokiej jakości)

- Pakiet ALSA (metoda instalacji będzie się różnić w zależności od twojej dystrybucji)

- Moduł PyAudio

Skopiuj załączony skrypt Pythona i podłącz mikrofon. Uruchom ponownie PI. Wykonaj skrypt i postępuj zgodnie z monitami konsoli. Zbliż się do mikrofonu i dwukrotnie klasnij w dłonie. Powinieneś zobaczyć rejestrowanie klaśnięć w wyjściu konsoli, a jeśli się powiedzie, oba światła zaświecą się po 2 sekundach.

Zalecana: