Krugovi

Kako izgraditi Raspberry Pi Smart Mirror !: 7 koraka (sa slikama)

How to Make a Raspberry Pi Smart Mirror

How to Make a Raspberry Pi Smart Mirror

Sadržaj:

Anonim

Pozdrav svima!

Za moj završni projekt iz računalne znanosti, odlučio sam izgraditi Smart Mirror koji pokreće Raspberry Pi 3! Tu ideju sam dobio od Hacker Housea, sjajnog Youtube kanala koji ima mnogo zanimljivih ideja za kreativne projekte koji uključuju lako slijedive upute! Iako sam se uglavnom usredotočio na kodiranje u Javi, ovo Smart Mirror mi je omogućilo da radim Raspberry Pi kodiranjem u Linuxu i Pythonu, jezicima koje nikada prije nisam koristio. Također, morao sam napraviti zanimljivu obradu drveta izgradnjom okvira oko monitora, koji se nalazi iza dvosmjernog zrcala. Iako je ovo bio moj prvi Raspberry Pi projekt, trebalo mi je oko dva vikenda da završim, od kodiranja Pi do slikanja okvira. Bilo je to nevjerojatno iskustvo za izgradnju ovoga i nadam se da će vam ovaj vodič pomoći da napravite vlastite!

Pribor:

Korak 1: Što ćete trebati

Prije nego počnete, ovdje je popis svih potrebnih stavki za projekt:

  1. Raspberry Pi (koristio sam verziju Raspberry Pi 3 Model B, zbog činjenice da ima jednostavnu pristupačnost i jednostavno postavljanje bežične opcije)
  2. Monitor (koristio sam monitor od 12 inča X 20 inča s HDMI ulazom)
  3. Dva puta akrilno staklo ogledalo (postoje neke online, ali sam koristio jeftinije Hacker House preporučeno - vidi link na dnu)
  4. 4 x 3D ispisane zagrade (to nisu potrebne, ali olakšavaju postavljanje okvira. Opet, Hacker House ima web-lokaciju koja isporučuje STL i zip datoteke za dizajn zagrada - vidi link na dnu)
  5. HDMI kabel
  6. Mikro HDMI kabel za Pi napajanje
  7. Drvo ljepilo
  8. vijci
  9. Drvo (koristio sam dva komada dužine 8ft (1 "x 3" i 1 "x 4") za rezanje unutarnjeg i vanjskog okvira)
  10. Tipkovnica (USB)
  11. Miš (USB)
  12. stezaljke

3D zagrade ~

http://www.hackerhouse.site/parts.html

Dvosmjerno zrcalo ~

http: //www.amazon.com/gp/product/B01CZ35XWY/ref=o …

Korak 2: Postavljanje Raspberry Pi

Da bi Pi primio informacije iz modula Magic Mirror na mreži, ključno je postaviti Wi-Fi i vremensku zonu. Nakon što je instaliran operativni sustav "Raspbian" (koristio sam "Jessie" verziju) na mikro SD kartici, priključite tipkovnicu i miš na Pi i priključite HDMI kabel na monitor koji ćete koristiti. Pričekajte da se sustav podigne, a zatim možete početi s konfiguriranjem Pi na svoju lokaciju. Najprije kliknite simbol Wi-Fi u gornjem desnom kutu zaslona. Odaberite internet i unesite zaporku. Trebali biste se spojiti na Wi-Fi.Kada to učinite, pristupite svom terminalu i upišite sljedeće:

sudo dpkg-reconfigure tzdata

Tada možete početi pristupati određenoj vremenskoj zoni putem izbornika koji prikazuje Pi. Nakon što odaberete točnu vremensku zonu, spremite i ponovno pokrenite Pi. U ovom trenutku, Magic Mirror može upotrijebiti vašu lokaciju za prikaz vremena i pristup informacijama s interneta putem Wi-Fi mreže. Sada, možete početi programirati!

Korak 3: Magic Mirror 2

Prije nego počnete preuzimati i konfigurirati program, vjerojatno biste trebali znati kako ovaj program radi. MagicMirror je platforma za preuzimanje koju je stvorio Michael Teeuw (a.k.a MichMich), gdje se može pristupiti tom spremištu na www.github.com. Koristeći Pi, morate preuzeti i klonirati spremište, zajedno s njegovim ovisnostima. Time će Pi moći pokrenuti program i prikazati određene elemente sadržane u datoteci MagicMirror. Za daljnje objašnjenje, možete posjetiti http://magicmirror.builders/, online forum s mnoštvom korisnih modula i metodama rješavanja problema za svakoga tko kodira program. Da biste pokrenuli, pristupite terminalu i upišite sljedeći kôd:

bash -c "$ (curl -sL http://raw.githubusercontent.com/MichMich/MagicMirror/master/installers/raspberry.sh)"

Kada pritisnete Enter, Pi će započeti automatsko preuzimanje spremišta, koje traje oko 10 - 15 min. Usput, od vas će se tražiti da unesete "Y" ili "N" za određene ovisnosti, kao što je vim. Vim je presudna ovisnost koja uređivaču teksta omogućuje upravljanje MagicMirror-om. Također, preuzet će se program pod nazivom pm2, koji automatski pokreće program kada se Pi pokrene. Drugi prompt će biti Node.js, koji mrežnim aplikacijama omogućuje pokretanje na Pi. Kada se MagicMirror u potpunosti učita, ponovno pokrenite Pi. Nakon ponovnog pokretanja, trebali biste vidjeti kompliment, vrijeme i članke s vijestima (pogledajte gore navedenu fotografiju). Od tog trenutka možete početi prilagođavati program (dodavati nove module, orijentaciju, mijenjati fontove itd.).

Korak 4: Moduli

Kao što je prikazano ranije, program MagicMirror trebao bi automatski prikazati vrijeme, kompliment, američke praznike i neke novinske članke. Međutim, htio sam dodati neke značajke Pi kako bi bio estetski ugodniji i imao bih više informacija kojima bih mogao pristupiti (npr. Vrijeme, vremenska prognoza, kul citat, itd.). Da biste to učinili, morate učiniti više stvari kako bi MagicMirror mogao primati informacije o lokaciji u kojoj se nalazite. Da biste to učinili, morate pristupiti mapi modula. Ova mapa je ključ za smještaj svih željenih opcija koje želite za MagicMirror. Možete dodati module, izbrisati module (izbrisao sam popis praznika u SAD-u jer živim u Kanadi) i prilagoditi postavke. Da biste to učinili, pristupite terminalu i upišite:

cd ~ / MagicMirror / moduli

To bi trebalo otvoriti datoteku u kojoj možete vidjeti popis modula (potražite zatvorene zagrade s informacijama u njemu). Počela sam dodavanjem modula vremenske i vremenske prognoze. Trebali biste već vidjeti zadane module s vremenskim opcijama, ali primijetit ćete da nedostaju dva važna ključa. ID lokacije i API ID. Kao što je već rečeno, MagicMirror koristi internetske izvore za prikaz informacija. Ova dva ID-a dolaze s web stranice pod nazivom OpenWeatherMap (pogledajte link na dnu stranice). Ova stranica isporučuje API-je za vremenske uvjete koje ovaj modul treba. Prvo se besplatno prijavite na web-lokaciji i pristupite besplatnom API-ju. Upišite ovaj kôd u odjeljak "appid" modula. Zatim ćete morati pronaći identifikacijski broj mjesta / grada. OpenWeatherMap isporučuje OGROMNU datoteku s gotovo svakim gradom na svijetu i identifikacijskim brojem lokacije. Nisam svjestan lakšeg načina, ali možda ćete morati pregledati cijelu datoteku dok ne pronađete svoj grad / gradsku iskaznicu. Nakon što je to pronađeno (ovaj dio ozbiljno je sranje, trebalo mi je oko 20 minuta da pronađem ID svog grada), unesite ga u modul vremenske i vremenske prognoze. Nakon, spremite i izađite. Kada se vaše Pi čizme, trebali biste vidjeti vrijeme svog grada. Dodao sam dodatni modul, u kojem je na dnu zaslona prikazan nadahnuti citat (vidi sliku iznad). Međutim, popis modula ovisi o vama! Svakako provjerite web-stranicu modula koju MagicMirror2 forum nudi na svojim stranicama! Postoje neki stvarno kul moduli svatko može dodati da bi njihovo ogledalo puno više zanimljivo i zabavno!

http://openweathermap.org

Korak 5: Prilagodba

Ovaj korak ovisi isključivo o vama, ovisno o tome želite li da se ogledalo prikazuje u portretnoj perspektivi, a ne u pejzažu. Da biste prilagodili Pi tako da se rotira (vidi posljednju fotografiju), pristupite terminalu i upišite sljedeće:

sudo nano /boot/config.txt

To će otvoriti određene postavke sustava, gdje možete dodati opciju "zakretanje zaslona". Da biste to učinili, pomaknite se do dna datoteke i dodajte:

#rotatethescreen

display_rotate = 1

Spremi i izađi. Kada ponovno pokrenete Pi, MagicMirror bi se trebao pokrenuti i prikazati vodoravno. Također, trebali biste vidjeti sve module koje ste dodali u portretnoj perspektivi. Još jedna stvar koju biste trebali dodati kako biste prilagodili pokretanje Pi je pm2. Nakon instalacije pm2, otkrio sam da se MagicMirror neće pokrenuti ako ne pristupim terminalu i upišem nekoliko redaka koda. Da biste uklonili ovaj problem, učinite sljedeće:

Pristupite terminalu i upišite: pm2 startup

Zatim upišite:

sudo env PATH = $ PATH: / usr / bin / usr / lib / node_modules / pm2 / bin / pm2 sustav za pokretanje -u pi --hp / home / pi

Nakon toga pristupite skripti upisivanjem:

nano mm.sh

Zatim dodajte:

DISPLAY =: 0 npm početak

Spremi i izađi. Sada, kada se Pi pokrene, MagicMirror bi se trebao automatski pokrenuti

Također je bilo teško pronaći kako onemogućiti screensaver, samo zato što želite stalno vidjeti zaslon iza zrcala. Da biste to učinili, morat ćete pristupiti terminalu i upisati:

sudo nano /boot/config.txt

Zatim dodajte:

#eliminatescreensaver
hdmi_blanking = 1

Spremite i izađite, a zatim pristupite drugoj datoteci na terminalu upisivanjem:

sudo nano ~ / .config / lxsession / LXDE-pi / automatsko pokretanje

Zatim dodajte:

@xset s 0 0
@xset s nije prazan
@xset s nema ekspozicije
@xset dpms 0 0 0

Spremite i izađite, a zatim ponovno pokrenite Pi

Korak 6: Okvir

Iako je okvir relativno lako izgraditi, postoji nekoliko ključnih stvari koje morate učiniti kako biste se pripremili. Prvo, suočavanje s dvosmjernim ogledalom. Ovisno o veličini vašeg monitora, vjerojatno ćete morati rezati zrcalo na veličinu oko pola inča veće (širinu i dužinu) od monitora. Da biste to učinili, izmjerite i označite veličinu na zrcalu (koristio sam Sharpie - ne brinite! Postoji zaštitni plastični sloj na okviru koji se skida kada ste spremni) i stavite traku na liniju. Koristila sam traku slikara, samo zato što nije super jaka i može se lako skinuti. PAŽLJIVO odrežite duž trake (primijetit ćete da se zrcalo razbija na rubu dok rezate. Pokušajte ograničiti ove prekide, jer te pukotine mogu oštetiti životni vijek Vašeg zrcala). Nakon što se ogledalo izreže na veličinu, možete početi s izradom okvira. Uz okvir trebat ćete napraviti dva dijela. Unutarnje kućište i vanjski okvir. Da biste to učinili, izmjerite monitor i izrežite dva komada drva koji su oko 1,5 inča veći od duljine monitora (pogledajte gornju fotografiju). Nakon toga izrežite još dva komada koji se uklapaju između većih komada. Upotrijebite ljepilo i stezaljke za drvo. Kako biste ubrzali postupak, možete na rubu bušiti vijak kako biste ga bolje držali zajedno. Da biste napravili vanjski okvir (vidi drugu fotografiju), izrežite četiri komada s rezom od 45 stupnjeva na svakom kraju (zapamtite, kada postavite vanjski okvir na unutarnje kućište, stavite ga tako da polovica na 45 rezu počiva na kućište). Kada je okvir postavljen i stabilan, postavite ogledalo između okvira i monitora. Pričvrstite 3D zagrade, pazeći da su čvrsto postavljene. U ovom trenutku možete uključiti Pi i napajanje, a MagicMirror bi se trebao pokrenuti. Trebali biste vidjeti zaslon iza zrcala (datum, vrijeme, što god stavili u program). Čestitamo, sada imate svoj vlastiti Smart Mirror!

Korak 7: Završite

Ako imate bilo kakvih pitanja, molimo ostavite komentar! Volio bih pomoći s bilo kojim problemima ili idejama koje imate! Ovo je bio nevjerojatan projekt za sudjelovanje, zahvaljujući Hacker Houseu! Jedna stvar koju bih želio naglasiti je da preporučujem da kupite hladnjak za Pi. Budući da je ovaj program dizajniran za kontinuirano pokretanje, vaš će procesor postati nevjerojatno vruć. Kupnja hladnjaka omogućit će Vašem Smart Mirror-u da radi sigurnije, kao i da će ublažiti svaki stres koji Pi prolazi dok radi. Nadam se da ćete ovom projektu dati pokušaj, to može biti stvarno korisno i zanimljiva je estetika koju možete objesiti u bilo kojoj prostoriji. Puno vam hvala što ste posjetili moju stranicu, nadam se da ću u ogledalo dodati neke kul modele koje vam mogu pomoći (AI, senzor pokreta, alarm, itd.).