Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja izmjena: 2025-01-13 06:57
Htio sam kontrolirati prekidač za svjetlo u svojoj spavaćoj sobi, a da ne moram ustajati iz kreveta, pa sam želio moći upravljati njime sa svog telefona. Imao sam nekoliko dodatnih ograničenja, želio sam lako upravljati njime sa bilo kojeg uređaja, htio sam moći koristiti prekidač za svjetlo kao i obično i nisam mogao mnogo mijenjati hardver dok iznajmljujem stan.
Odlučio sam upotrijebiti Raspberry Pi za upravljanje servo motorom koji bi pomaknuo prekidač. Raspberry Pi bi pokrenuo web server kojem bih mogao pristupiti dok sam na lokalnoj mreži. Veze na web stranici na ovom serveru omogućile bi mi uključivanje i isključivanje prekidača. Isključivanjem servo-a između prebacivanja mogao sam i dalje koristiti prekidač za svjetlo kao i obično.
Korak 1: Materijali
Rasperry Pi
Servo motor:
smile.amazon.com/gp/product/B0015H2V72/ref…
Žičane matice
Džemper žice
Korak 2: Korak 1: Postavite Raspberry Pi
Postoje različiti načini za to. Ako imate pri ruci HDMI monitor i usb tastaturu, mislim da je to malo lakše. U suprotnom možete postaviti "bez glave".
Evo dobrog vodiča o postavljanju bez glave na Windows:
www.circuitbasics.com/raspberry-pi-basics-…
I jedan za Mac:
www.circuitbasics.com/raspberry-pi-basics-…
Ali najjednostavnije je učitati SD karticu s NOOBS -om, pokrenuti pi dok je povezan s monitorom i tipkovnicom i jednostavno proći kroz konfiguraciju. Ovaj vodič to prilično dobro objašnjava:
www.circuitbasics.com/raspberry-pi-basics-…
Ako niste izvršili bezglavo postavljanje, trebali biste ipak pripremiti SSH, potrebno je za ostatak ovoga. Za to koristim kit. Nabavite ga ovdje:
www.circuitbasics.com/raspberry-pi-basics-…
A ako ne znate svoju IP adresu, možete upotrijebiti napredni IP skener:
Zatim samo unesite IP adresu za pi na ulazu za Ime hosta/IP adresu, ostavite port na 22 i kliknite otvoriti. Od vas će biti zatraženo da se prijavite.
Korak 3: Korak 2: Postavite web server
Za pokretanje web servera koristio sam Apache. Ovo možete instalirati pomoću naredbe:
sudo apt-get install apache2
Ovo bi vam prema zadanim postavkama trebalo dati uvodnu stranicu kada dođete do IP adrese vašeg pi. Trebalo bi izgledati kao na donjoj slici.
Korak 4: Korak 3: Izradite web stranicu
Poželjet ćete zamijeniti zadanu početnu stranicu sa svojom web lokacijom koja može kontrolirati servo motor. Prva stvar koju treba zamijeniti je datoteka indeksa. Vaša datoteka indeksa za web stranicu trebala bi biti u/var/www/html. Za kreiranje datoteke upotrijebite svoj omiljeni uređivač teksta ili jednostavno kopirajte datoteku ovdje koristeći nešto poput winscp. Dodajte "index.php" na ovu lokaciju, morat ćete je sami spremiti kao php datoteku jer je nisam mogao postaviti kao takvu. Ova php datoteka stvara vrlo osnovnu web stranicu s dvije veze, jednu do "cgi-bin/off.py" i jednu do "cgi-bin/on.py". Ovo su dvije python skripte koje mijenjaju položaj servo motora.
Python skripte moraju biti postavljene na drugu lokaciju da bi Apache mogao raditi. Morat će ih staviti u cgi-bin. Ovdje datoteke idu ako se žele pokrenuti u zajedničkom sučelju pristupnika (Gateway Interface) koje omogućuje pokretanje skripti na pi. Idite na/usr/lib/cgi-bin i dodajte dvije datoteke "on.py" i "off.py".
Korak 5: Korak 4: Montirajte motor
Našao sam veliki dio drugog proizvođača da montira servo tako da može okrenuti standardni prekidač za svjetlo. 3D datoteke za nju možete pronaći ovdje:
github.com/suyashkumar/smart-lights
Ovo je za servo standardne veličine kako je navedeno u odjeljku dijelova. Odštampajte ovo ili odštampajte, a zatim ga postavite na prekidač za svetlo.
Korak 6: Korak 5: Ožičite Pi i motor
Napajao sam pi mikro USB -om. Odvojio sam još jedan mikro usb i spojio uzemljenje i napajanje servo -a na ovo. Dijelio sam tlo između pi i servo. Zatim sam spojio signalni pin za servo na GPIO18 na Pi.
Korak 7: Korak 6: Konfigurirajte skripte
Morat ćete se malo poigrati s postavkama kako biste saznali koje vrijednosti za vas odgovaraju Uključeno i Isključeno. Pi vam omogućava da pišete u gpio iz komandne linije koristeći prilično jednostavne komande. da biste napravili gpio 18 pwm pin upotrijebite naredbu:
gpio -g način rada 18 pwm
zatim konfigurirajte pwm sa:
gpio pwm-ms
gpio pwmc 192
gpio pwmr 2000
Ovo su razumne vrijednosti za konfiguraciju frekvencije pwm. Sledeća upotreba:
gpio -g pwm 18 120
Gdje promijenite 120 kako biste pronašli odgovarajuće vrijednosti za položaj uključeno i isključeno.
Nakon što pronađete odgovarajuće vrijednosti za isključeno i uključeno, pomoću uređivača teksta promijenite te vrijednosti u odgovarajućim skriptama za dvije pozicije. Mjesto za promjenu istaknuto je na slici.
Korak 8: Korak 7: Isprobajte
Idite na ip adresu pi i trebali biste vidjeti web stranicu s vezom za uključivanje i isključivanje. Svaka stranica će imati i vezu za drugu stranicu.
Zgodno je dodati prečice do ovih stranica na početni ekran telefona radi lakšeg pristupa.