Innholdsfortegnelse:

Lysbryter: 7 trinn
Lysbryter: 7 trinn

Video: Lysbryter: 7 trinn

Video: Lysbryter: 7 trinn
Video: Xiaomi Qingping CGPR1 - датчик движения с сенсором освещенности, обзор, интеграция в Home Assistant 2024, November
Anonim
Lysbryter
Lysbryter

I dette prosjektet vil jeg eksemplifisere hvordan du lager et helt trådløst lysstyringssystem med en ekstra bonus på slutten. Følg med for hele opplæringen.

Krav:

- Bringebær Pi (enhver smak er fin, men jeg brukte 3B+ -modellen)

- To 2n2222 -transistorer (jeg anbefaler å kjøpe minst fem, da det er stor sjanse for at du kommer til å korte noen få ved en feiltakelse)

-Mann-til-mann og mann-til-hunn-jumperkabler

- Brødbrett

- (valgfritt, men anbefalt) Breadboard 5V strømforsyning

- To av hver 1k og 10k motstand

- Dual-Relay-modul

- To gamle huslamper eller andre belysningsapparater (bruk LED -pærer da glødelampene har en tendens til å brenne opp under testing)

Duct-tape og kabelkutter for skjøting

Trinn 1: Konfigurere serveren og avhengigheter på Raspberry Pi

For prosjektet mitt brukte jeg NGiNX, selv om du kan bruke hvilken server du vil (Apache2, etc.). Vaniljeinstallasjonen med pakkelederen er helt ok, du trenger ikke å kompilere vår egen kilde eller noe sånt. Vi trenger også PHP, Python3 og Composer.

- SSH i PI -en din og skriv inn $ sudo nano /etc/dhcpcd.conf

- Konfigurer de statiske IP -parametrene

- Start PI -en på nytt

- Sjekk om alt fungerer ved å skrive {the_ip_you_chose} i adresselinjen i nettleseren din (du bør se velkomstsiden til nginx)

Trinn 2: Installer Web Framework and Configuration for NGiNX

Vi ønsker å ha et nettsted vi kan få tilgang til fra vår mobile eller stasjonære nettleser, og for å kvitte oss med å skrive ren php/html -kode som ikke er omfanget av denne opplæringen, bruker vi i stedet et PHP -rammeverk kalt Yii2 for å håndtere grunnleggende ruting og styling for oss.

- Gå til installasjonssiden for Yii2 og bruk komponisten til å installere den i/var/www/html/light-switch

- Vi vil ikke se noe ennå, ettersom vi fremdeles ikke har lagt inn konfigurasjonsfilen vår for serveren

- Jeg har vedlagt filen (standard) til dette trinnet

- Bruk den som den er med dette rammeverket, eller slå opp en annen online hvis du foretrekker en annen backend

- Du må sette denne filen i/etc/nginx/sites-available/

- Last inn NGiNX på nytt med $ sudo systemctl last inn nginx på nytt

- Hvis noe ikke fungerer, kan du kjøre $ sudo nginx -t for å feilsøke konfigurasjonsfilene

Trinn 3: Konfigurere Python -skriptene som vil samhandle med GPIO

Ettersom PHP ikke liker å spille så godt med skript av kjøretidstype som GPIO API og python ikke er veldig vennlig med webapps, vil vi bruke hver av dem i sine fordelaktige sammenhenger. Vedlagt dette trinnet finner du de 4 nødvendige python -skriptene som samhandler med pinnene og utløser lysene. Plasser skriptene hvor du vil, men legg merke til plasseringen, da vi trenger det i neste trinn når vi setter opp php -siden av ting.

Trinn 4: Fullfør opp på Php -siden av ting

Etterbehandling på Php -siden av ting
Etterbehandling på Php -siden av ting

Alt vi trenger å gjøre er å fjerne noen av standardbanene og sidene fra hovedoppsettet og legge til noen få kodelinjer i SiteController pluss en ny metode kalt actionLightswitch (). Etter dette vil det utføre python -skriptene fra forrige trinn, som igjen vil kommandere GPIO -pinnene.

Trinn 5: Opprette kretsen

Opprette kretsen
Opprette kretsen
Opprette kretsen
Opprette kretsen
Opprette kretsen
Opprette kretsen
Opprette kretsen
Opprette kretsen

På grunn av arten til denne spesifikke relemodulen (den bytter når den er koblet til GND) må vi bygge kretsen ved hjelp av transistorer. PI vil bare åpne transistoren som lar strømmen strømme fra relédatapinnene til GND og dermed utløse spolen og lukke kretsen for lampene. Følg skjemaene i de vedlagte bildene, så er du i gang.

For denne neste delen må du være veldig forsiktig, da det er på tide å koble reléet. Koble fra alt først! Reléet har 3 porter per tilkobling. Vi vil koble apparatets kabler til den midtre og den med det åpne skiltet på. Skjøt kabelen forsiktig for å avsløre kobberlederne og sett dem inn i de nevnte reléportene. Rekkefølgen spiller ingen rolle da vi nå jobber med alternativ strøm.

Trinn 6: Sluttesting

Kontroller kretsen og de tildelte pinnene minst to ganger, og koble deretter PI -en til strømmen og skriv inn {the_chosen_ip} i nettleserens adresselinje. Den første siden vil ha våre to brytere. Klikk på dem og se lysene slås på/av.

Trinn 7: Bonusdel: Old-school Clapper Trigger

Krav:

- hvilken som helst usb -mikrofon (den trenger ikke å være av høy kvalitet)

- ALSA -pakke (installasjonsmetoden vil variere avhengig av distribusjonen din)

- PyAudio -modul

Kopier det vedlagte python -skriptet og koble til mikrofonen. Start PI -en på nytt. Utfør skriptet og følg konsollinstruksjonene. Kom nær mikrofonen og klapp hendene to ganger. Du bør se at klappene blir registrert i konsollutgangen, og hvis det lykkes, vil begge lampene tennes etter 2 sekunder.

Anbefalt: