Sadržaj:

Otvarač garažnih vrata Raspberry Pi: 5 koraka
Otvarač garažnih vrata Raspberry Pi: 5 koraka

Video: Otvarač garažnih vrata Raspberry Pi: 5 koraka

Video: Otvarač garažnih vrata Raspberry Pi: 5 koraka
Video: 102 Year Old Lady's Abandoned Home in the USA ~ Power Still ON! 2024, Srpanj
Anonim
Otvarač garažnih vrata Raspberry Pi
Otvarač garažnih vrata Raspberry Pi

Naša petnaestogodišnja tipkovnica koja nam omogućuje otvaranje garažnih vrata polako je umirala, s nekoliko tipki koje se jedva registriraju, što otežava našim tinejdžerima (ili psećem čuvaru) ulazak u kuću kad zaborave ključ.

Umjesto da ga zamijenim i skočim kroz obruče reprogramiranja, odlučio sam otići malo više u tehnologiju i zamijeniti ga nečim za što je potreban samo pristup našem WiFi -u i telefonu za korištenje.

Koristio sam Pi Zero Wireless i 2-kanalni relej koji mi je ostao iz drugog projekta, što mi omogućuje kontrolu i vrata i svjetla koja su ugrađena u otvarač garažnih vrata. Budući da sam imao staru/rezervnu USB kameru koja je skupljala prašinu, koristio sam je umjesto PiCam -a, ali to je bilo samo iz praktičnosti. Ovo bi dobro funkcioniralo sa bilo kojom podržanom kamerom - nema ništa posebno u mojoj, samo što je Raspbian to podržao.

Za razliku od nekih drugih sličnih projekata, pokušao sam to učiniti što jednostavnijim, koristeći "standardne" softverske pakete koje je prilično lako pokrenuti ako slijedite upute. Ova fotografija prikazuje moju posljednju (nimalo lijepu, ali to je moja garaža) instalaciju, uključujući Pi, relejni modul i USB web kameru usmjerenu prema vratima. Ne postoji poseban razlog za korištenje Pi Zero - bilo koji Pi bi to učinio, sve dok ga možete povezati s unutarnjom mrežom, a wifi to čini jednostavnim.

Korak 1: Spajanje na postojeću upravljačku ploču

Spajanje na postojeću upravljačku ploču
Spajanje na postojeću upravljačku ploču

Prvo, VAŠI MOGU BITI RAZLIČITI! Moja ima jedan par žica koje idu od otvarača garažnih vrata do upravljačke ploče na zidu. Budući da postoje samo dvije žice, za koje se činilo da su imale oko 18 volti pri testiranju, isprva sam bio malo zbunjen kako točno ta stvar može kontrolirati više funkcija. MISLIM da svaki trenutni gumb jednostavno dovršava krug, ali s različitim razinama otpora. Tada glavna jedinica može očitati taj otpor kroz različite padove napona i izvršiti ispravnu radnju. Ništa od ovoga nije važno, osim ako ne pokušavate potpuno zamijeniti upravljačku jedinicu s Pi. Nisam siguran zašto biste to htjeli učiniti, jer je lijepo imati fizičku jedinicu na mjestu.

AAAAAnnnyway, sve što trebate učiniti je ponoviti različite pritiske tipki povezivanjem trenutnih prekidača na PCB -u s relejnim modulom. Ovo je bilo jedino lemljenje koje sam morao napraviti, a jastučići na PCB -u bili su prilično veliki, pa je bilo prilično jednostavno. Ostavite ove žice zasad na duže vrijeme, jer je mnogo lakše skratiti žicu nego je kasnije produljiti, osim ako u blizini nemate ACME nosila za žice, ali one su prilično rijetke.

Korak 2: Ožičenje relejne ploče

Ožičenje relejne ploče
Ožičenje relejne ploče
Ožičenje relejne ploče
Ožičenje relejne ploče

Ovdje nema previše za reći, samo povežite sve kao na slikama. Na Sainsmart 2-relejnom modulu, pinove JC-VCC i VCC potrebno je spojiti zajedno, osim ako za njih ne želite koristiti potpuno zasebno napajanje, ali za ovu uporabu to je pretjerano. Spojite GND na Pi GND pin, VCC na 5v pin, a IN1 i IN2 na sve GPIO pinove koje želite koristiti. Budući da ćete ih koristiti samo kao preklopke HIGH/LOW, zaista nije važno koje.

Korak 3: Instaliranje softvera

Instaliranje softvera
Instaliranje softvera

Ovo je vjerojatno korak koji oduzima najviše vremena, jer ćete neko vrijeme gledati kako se stvari preuzimaju i instaliraju. Gledajte youtube ili nešto slično dok su neke od ovih stvari instalirane.

Neću objašnjavati kako instalirati Raspbian. Ako još ne znate kako to učiniti, možda prvo proguglajte neku vrstu vodiča "hello world". U svakom slučaju, vjerojatno je najbolje upotrijebiti novu instalaciju Raspbian Lite. Nema potrebe za gui -jem za ovaj projekt, a to su samo dodatni troškovi. raspberrypi.org vas može provesti kroz taj proces.

Omogućite SSH i (ako želite) ili konfigurirajte statički IP za svoj Pi (još jednom, postoji više vodiča o tome kako to učiniti, napisali su bolji autori od mene) ili još bolje, konfigurirajte svoj usmjerivač/DHCP poslužitelj kako biste svom Pi dodijelili statički IP.

Ako želite lijepu, laku za instaliranje i korištenje video uslugu, idite i instalirajte MotionEye. Vjerojatno je to pretjerano, ali to je jedna od instalacija koja "jednostavno radi" svaki put i ima lijepo web -sučelje jednostavno za korištenje. Ovdje provjerite:

github.com/ccrisan/motioneye/wiki/Install-… Slijedite ove upute koristeći sudo prije svake naredbe i imat ćete lijep video streamer. Nije potrebno imati video stream ako vam je jedino važno otvoriti vrata kad ga vidite, ali lijepo je imati povratne informacije.

Nakon što instalirate Motioneye, posjetite https:// YourIPAddress: 8765 i prijavite se s korisničkim imenom "admin" i praznom lozinkom. Vjerojatno ćete morati dodati kameru, koja bi, opet, trebala "samo raditi" i izvan opsega ovih uputa.

Dok ste prijavljeni kao administrator, kliknite prekidač "Napredne postavke", a zatim postavite svoje mogućnosti videozapisa - za svoj sam videozapis koristio 320x240 jer mi je više stalo do bržih ažuriranja nego do kvalitete, jer sam to samo želio vidjeti vrata bila otvorena ili ne, i ne morate čitati brojeve poštanskih sandučića s druge strane ulice.

U području postavki "Video Streaming" kliknite vezu "URL Streaming" i zabilježite adresu koju vam predstavlja. Trebat će vam kasnije ako namjeravate postaviti sučelje na isti način na koji sam ja.

Postoji više načina za upravljanje vašim GPIO pinovima. Za ovaj projekt koristio sam WiringPi, za instalaciju koristite upute na web stranici:

wiringpi.com/download-and-install/

Ili samo izdajte sljedeće naredbe na svom Pi:

wget https://lion.drogon.net/wiringpi-2.50-1.debsudo dpkg -i wiringpi-2.50-1.deb gpio -v gpio readall

Ovo bi vam trebalo dati popis onoga što se događa s vašim GPIO pinovima.

Ako koristite pinove 4 i 17 (u BCM shemi numeriranja), možete provjeriti svoje veze sa sljedećim naredbama. Imajte na umu da će postavljanje pina LOW aktivirati releje ako koristite ovaj modul Sainsmart. Vaši mogu biti drugačiji, pa ćete se tome morati prilagoditi. Prilikom izvođenja ovih naredbi trebali biste čuti kako su releji kliknuli na svoje mjesto, a LED (i) bi trebale zasvijetliti.

gpio -g način 17 van

gpio -g pisanje 17 0 gpio -g pisanje 1 1 gpio -g način rada 4 izlaz gpio -g pisanje 4 0 gpio -g pisanje 4 1

U redu, sada možemo prijeći na izradu korisničkog sučelja.

Korak 4: Izrada sučelja

Izrada sučelja
Izrada sučelja

Koristio sam apache i PHP. Lijepo i jednostavno, ništa previše otmjeno. Još jednom je bolje objašnjeno na drugom mjestu, pa samo slijedite upute koje se nalaze ovdje:

www.raspberrypi.org/documentation/remote-a…

"Korijen" vašeg web poslužitelja, prema zadanim postavkama, je na/var/www/html/sa zadanim index.html koji vam daje informacije o vašem web poslužitelju. Zamijenit ćete taj index.html pa ga možete izbrisati ili preimenovati u nešto drugo poput index.copy. Korisnika "pi" također sam učinio vlasnikom html direktorija, samo da budem lijen u pogledu dozvola. Konačno, stvorio sam imenik za pohranu svojih slika, od kojih postoje dvije. Jedan koji ima samo glupu povratnu informaciju da je pritisnuto dugme, a drugi koji se može koristiti za ikonu na početnom ekranu telefona.

pi@garagedoor: ~ $ cd/var/www/html/

pi@garagedoor:/var/www/html $ sudo chown pi.pi@garagedoor:/var/www/html $ mv index.html index.copy pi@garagedoor:/var/www/html $ mkdir slike

Postoji beskonačan broj načina za stvaranje web stranice, ali ja sam odabrao da bude što jednostavniji i lakši na temelju MOJE vještine. Dakle, PHP, otkad znam. Ako ste python guru ili neki drugi skriptni jezik, slobodno to upotrijebite.

Napravio sam stranicu "container" index.html koja zapravo ima dva iframe -a koji obavljaju sav posao. Jedan od iframea sadrži gumbe/veze koji zapravo pokreću releje putem GPIO -a, a drugi iframe koji prikazuje video. Također sadrži veze do-p.webp

Iframe index.html koji sadrži gumbe ima datoteku buttons.html kao svoj sadržaj. (smiješno kako to funkcionira, ha?) Obje veze u button.html vode do action.php s jedinstvenom vrijednošću GET varijable. Na temelju prenesene vrijednosti, action.php će ili aktivirati vrata ili gumb za svjetlo. HTML i PHP kôd možete dobiti na mom githubu:

Postavite sav HTML i PHP u korijenski direktorij (/var/www/html/), po potrebi ažurirajte kôd imenom slike koju možda koristite za potvrdu pritiskom na gumb i adresom vašeg videotoka. Sjećate li se kad sam vam rekao da će vam to trebati, u prethodnom koraku?

Korak 5: Isprobajte

U redu, sad kad ste sve ožičili i instalirali, sve radi savršeno u prvom pokušaju, zar ne? Slatko!

Preporučeni: