INHOUDSOPGAWE:
- Stap 1: Die opstel van die bediener en afhanklikheid van die Raspberry Pi
- Stap 2: Installeer die webraamwerk en -konfigurasie vir NGiNX
- Stap 3: Die opstel van die Python -skrifte wat met die GPIO in wisselwerking sal tree
- Stap 4: Voltooi aan die Php -kant van dinge
- Stap 5: Skep die kring
- Stap 6: Finale toetsing
- Stap 7: Bonusdeel: Old-school Clapper Trigger
2025 Outeur: John Day | [email protected]. Laas verander: 2025-01-13 06:56
In hierdie projek sal ek 'n voorbeeld gee van hoe om 'n volledig draadlose ligbeheerstelsel te skep met 'n ekstra bonus aan die einde. Volg saam vir die volledige tutoriaal.
Vereistes:
- Framboos Pi (enige geur is goed, maar ek het die 3B+ -model gebruik)
- Twee 2n2222 transistors (ek beveel aan dat u ten minste vyf koop, aangesien die kans groot is dat u per ongeluk 'n paar sal kortkom)
-Man-tot-man en man-tot-vroulike springkabels
- Broodbord
- (opsioneel, maar aanbeveel) Breadboard 5V -kragtoevoer
- Twee van elke 1k en 10k weerstande
- Dual-Relay-module
- Twee ou huislampe of ander verligtingstoestelle (gebruik gloeilampe, aangesien die gloeilampe geneig is om tydens die toetsing te brand)
Duct-tape en 'n kabelsnyer vir splicing
Stap 1: Die opstel van die bediener en afhanklikheid van die Raspberry Pi
Vir my projek het ek NGiNX gebruik, alhoewel u die bediener kan gebruik wat u wil (Apache2, ens.). Die vanielje -installasie met die pakketbestuurder is goed, u hoef nie ons eie bron saam te stel nie. Ons benodig ook PHP, Python3 en Composer.
- SSH in u PI en tik $ sudo nano /etc/dhcpcd.conf
- Stel die statiese IP -parameters op
- Herlaai u PI
- Kyk of alles werk deur {the_ip_you_chose} in die adresbalk van u blaaier te tik (u moet die welkomstbladsy van nginx sien)
Stap 2: Installeer die webraamwerk en -konfigurasie vir NGiNX
Ons wil 'n webwerf hê waartoe ons toegang kan verkry vanaf ons selfoon- of lessenaarblaaier, en om ontslae te raak van eenvoudige php/html -kode wat nie die omvang van hierdie tutoriaal is nie, gebruik ons eerder 'n PHP -raamwerk genaamd Yii2 om basiese routing en styl vir ons.
- Gaan na die Yii2-installasiebladsy en gebruik die komponis om dit in/var/www/html/light-switch te installeer
- Ons sal nog niks sien nie, aangesien ons nog nie ons config -lêer vir die bediener ingevoer het nie
- Ek het die lêer (standaard) by hierdie stap aangeheg
- Gebruik dit soos met hierdie raamwerk, of soek 'n ander een aanlyn as u 'n ander backend verkies
- U moet hierdie lêer in/etc/nginx/sites-available/plaas
- Herlaai NGiNX met $ sudo systemctl herlaai nginx
- As iets nie werk nie, kan u $ sudo nginx -t hardloop om die konfigurasielêers te ontfout
Stap 3: Die opstel van die Python -skrifte wat met die GPIO in wisselwerking sal tree
Aangesien PHP nie daarvan hou om so goed te speel met runtime-tipe scripts soos die GPIO API en python nie baie vriendelik is met webprogramme nie, gebruik ons elkeen in hul voordelige kontekste. By hierdie stap vind u die 4 nodige python -skrifte wat met die penne in wisselwerking is en die ligte veroorsaak. Plaas die skrifte waar u wil, maar let op die ligging daarvan, aangesien ons dit in die volgende stap nodig sal hê wanneer ons die php -kant van dinge opstel.
Stap 4: Voltooi aan die Php -kant van dinge
Al wat ons hoef te doen is om 'n paar van die standaardpaaie en bladsye uit die hoofuitleg te verwyder en 'n paar reëls kode in die SiteController te voeg, plus 'n nuwe metode genaamd actionLightswitch (). Hierna voer die python -skrifte uit die vorige stap, wat weer die GPIO -penne beveel.
Stap 5: Skep die kring
As gevolg van die aard van hierdie spesifieke aflosmodule (dit skakel oor wanneer dit aan GND gekoppel is), moet ons die stroombaan bou met behulp van transistors. Die PI sal slegs die transistor oopmaak wat die stroom van die relay data pins na GND laat vloei, wat die spoel aktiveer en die kring vir die lampe sluit. Volg die skemas in die aangehegte foto's, en u sal klaar wees.
Vir hierdie volgende deel moet u baie versigtig wees, aangesien dit tyd is om die aflos aan te sluit. Ontkoppel alles eers! Die aflos het 3 poorte per verbinding. Ons verbind die toestelle se kabels met die middelste en die een met die oop bord daarop. Maak die kabel versigtig om die kopergeleiers bloot te stel en steek dit in die voormelde relaispoortjies. Die volgorde maak nie saak nie, aangesien ons nou met alternatiewe stroom werk.
Stap 6: Finale toetsing
Kontroleer u kring en toegewysde penne ten minste twee keer en koppel die PI aan op die stroom en tik {the_chosen_ip} in die adresbalk van die blaaier. Die eerste bladsy bevat ons twee skakelaars. Klik daarop en kyk hoe die ligte aan/af skakel.
Stap 7: Bonusdeel: Old-school Clapper Trigger
Vereistes:
- enige usb -mikrofoon (dit hoef nie een van hoë gehalte te wees nie)
- ALSA -pakket (die installeringsmetode sal afhang van u verspreiding)
- PyAudio -module
Kopieer die aangehegte python -script en koppel u mikrofoon aan. Herlaai die PI. Voer die script uit en volg die konsole -aanwysings. Kom naby die mikrofoon en klap twee keer in u hande. U moet sien dat die klappe in die konsole -uitvoer geregistreer word, en as dit suksesvol is, sal albei ligte na 2 sekondes aanskakel.