Sadržaj:
- Pribor
- Korak 1: Instaliranje Raspbiana
- Korak 2: WiFi konfiguracija
- Korak 3: Instalacija i konfiguracija softvera
- Korak 4: Baza podataka
- Korak 5: Izgradnja zrcalnog okvira
- Korak 6: Elektronika
- Korak 7: Ugradnja elektronike u okvir
- Korak 8: Završni dodiri
- Korak 9: Interakcija s Webappom
Video: Čarobno ogledalo s vijestima, vremenom, alarmom, mjeračem vremena i todolistom: 9 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:33
Čarobno ogledalo je posebno jednosmjerno ogledalo s zaslonom iza njega. Zaslon, povezan s Raspberry Pi, prikazuje informacije poput vremena, sobne temperature, vremena, datuma, todolista i još mnogo toga. Možete čak dodati mikrofon i postaviti pametnog pomoćnika. Mogućnosti su beskrajne.
Ovaj projekt može biti prilično skup, jedan od najskupljih dijelova koji će vam trebati je naravno zaslon. Zato sam reciklirao zaslon sa starog prijenosnog računala. Ipak, preporučujem da za izradu ovog projekta nabavite veliki, svijetli zaslon s visokim kontrastom. Vrijedno je toga.
Ogledalo koje sam napravio ima sljedeće značajke:
- Vijesti iz RSS izvora koji je odabrao korisnik
- Vrijeme
- Unutrašnja temperatura
- Alarmni sustav
- Sustav mjerača vremena
- Todolist
- Više korisnika: boja trake i traka za novine mijenja se ovisno o tome koji je korisnik odabran.
Pribor
Za izradu ovog čarobnog ogledala trebat će vam:
- Jednosmjerno ogledalo
- Drvo
- Pivo od maline Pi
- Micro SD kartica (8+GB)
- Matična ploča
- Dva zvučnika snage 20W
- MAX9744 Pojačalo od 20 W za napajanje zvučnika
- 1m vodilna traka WS2801 sa 30 vodilica
- DS18B20 1-žični osjetnik temperature
- HC-SR501 Infracrveni senzor
- Rotacijski davač
- Monitor ili ekran starog prijenosnog računala
Ako koristite stari zaslon za prijenosno računalo, morat ćete kupiti adapter za prijenosno računalo. Možete ih nabaviti na AliExpressu, Ebayu ili Amazonu. Samo potražite serijski broj zaslona
Također će vam trebati sljedeće male komponente:
- Dioda
- Otpornik od 4,7 k Ohma
- Otpornik od 470 Ohma
- Žice za povezivanje senzora s Raspberry Pi
I ova napajanja:
- 5V 2A za napajanje LED trake
- 12V 2A za napajanje zaslona
- 12V 2A za napajanje pojačala
- 5.1V 3A za napajanje Raspberry Pi (koristite službeno napajanje RPi)
Korak 1: Instaliranje Raspbiana
Zaslon i sve komponente iza zrcala pokreće Raspberry Pi. Morat ćete instalirati Raspbian, zadani operativni sustav Pi, na SD karticu.
- Preuzmite Win32 Disk Imager. Korisnici Linuxa i MacOS -a mogu koristiti nešto poput Etchera.
- Preuzmite najnoviju Raspbian sliku s web stranice Raspberry Pi. Odaberite opciju 'Raspbian Buster s radnom površinom'
- Otvorite Win32 Disk Imager i zapišite slikovnu datoteku na SD karticu.
SD kartica je sada gotovo spremna. Moramo se samo pobrinuti da se daljinski povežemo s Raspberry Pi:
- Idite na particiju za podizanje sustava SD kartice pomoću programa za istraživanje datoteka vašeg sustava.
- Dodajte datoteku pod nazivom 'ssh' bez nastavka.
- Dodajte "ip = 169.254.10.1" (bez navodnika) na kraj prvog retka "cmdline.txt".
Sigurno izbacite SD karticu iz računala, stavite je u Raspberry Pi i pokrenite je.
Korak 2: WiFi konfiguracija
Za skeniranje WiFi mreža izvršite sljedeću naredbu:
sudo iw dev wlan0 scan | grep SSID
Vidjet ćete popis svih SSID -ova na koje se vaš Raspberry Pi može povezati.
Izradite mrežni unos s šifriranom lozinkom izvršavanjem sljedeće naredbe i unosom lozinke vaše mreže:
wpa_passphrase "YOUR_NETWORK_SSID_HERE"
Sada zalijepite izlaz gornje naredbe u ovu datoteku:
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Sada ponovno pokrenite Raspberry Pi. Bit ćete povezani s internetom.
Korak 3: Instalacija i konfiguracija softvera
Za ovaj projekt morate preuzeti ove pakete na svoj Raspberry Pi:
pip3 instalirajte mysql-connector-python flask-socketio flask-cors gevent gevent-websocket adafruit-circuitpython-ws2801 adafruit-circuitpython-max9744
sudo apt instalirajte apache2 mariadb-poslužitelj
Dodajte ovaj redak na dno /boot/config.txt kako biste omogućili zvuk putem GPIO pinova 12 (lijevo) i 13 (desno):
dtoverlay = audremap
Pomoću raspi-config postavite rezoluciju zaslona i omogućite i2c, One-wire i SPI. Također postavite način pokretanja na 'Desktop Autologin'.
U/etc/xdg/lxsession/LXDE-pi/autostart dodajte sljedeće:
@xset s off@xset -dpms@xset s noblank@chromium -browser --kiosk 127.0.0.1/mirror.html # učitavanje kroma nakon pokretanja i otvaranje web stranice u načinu prikaza na cijelom zaslonu
Ovo otvara preglednik na ispravnoj stranici kada se učita LXDE (Raspbian desktop okruženje). Također uklonite ili komentirajte liniju @xscreensaver da biste onemogućili čuvar zaslona.
Spremište Github
Kloniraj moje spremište GitHub i stavi sadržaj mape Frontend u/var/www/html. Mapa Backend će nam trebati kasnije.
Korak 4: Baza podataka
Ovo je shema baze podataka, optimizirana na 3NF. Pohranjuje sve alarme, nove izvore, korisnike, podatke senzora, zvukove i popis pjesama.
- Koristite MySQL Workbench za pristup poslužitelju baze podataka vašeg pi (mariadb)
- Izradite bazu podataka pomoću ove sheme i umetnite vlastite podatke.
- Uredite config.py u pozadinskoj mapi mojega GitHub spremišta: promijenite naziv baze podataka, odabrano korisničko ime i lozinku.
- Uredite app.py i promijenite URL API -ja OpenWeatherMap u svoj. (Ovdje izradite vlastiti)
Korak 5: Izgradnja zrcalnog okvira
Izgradio sam okvir oko zrcala koristeći Mitre spojeve s metalnim uglovima. Drvene daske koje sam koristio su debele 18 mm i široke 10 cm. Na slikama možete vidjeti točne mjere ogledala dimenzija 45 x 60 cm. Iza zrcala nalazi se sva elektronika, stoga pazite da vam daske budu dovoljno široke da im stane.
Za pričvršćivanje zvučnika na okvir koristio sam metalne kuke. Na taj način ne odmaraju se na ogledalu, smanjujući vibracijski stres na staklu.
Korak 6: Elektronika
Slijedite gornje sheme za izgradnju kruga. Koristio sam traku za pričvršćivanje elektronike na ogledalo.
Korak 7: Ugradnja elektronike u okvir
Nakon što ste pričvrstili zvučnike na metalne kuke na vrhu, dodajte ostatak elektronike u ogledalo. Također sam stavio tanku drvenu dasku između zrcala i elektronike, pa sam umjesto elektronike zalijepio za ogledalo, zalijepio sam elektroniku za drvenu dasku. Zaslon prijenosnog računala je bijela ploča na dnu ogledala.
Kao što možete vidjeti na slikama, sve adaptere za napajanje priključio sam u utičnicu s više utičnica tako da samo jedan kabel napušta okvir. Zato su mi trebale dovoljno široke daske (10 cm).
Izbušio sam rupu širine 2 cm na desnoj strani zrcala kako bi rotacijski davač mogao proći. To vam omogućuje jednostavno mijenjanje glasnoće (okretanje) ili odbacivanje mjerača vremena i alarma (guranje).
Izbušio sam dvije rupe od 8 mm s obje strane ogledala kako bih usmjerio kabele za trake za trake.
Korak 8: Završni dodiri
Dodao sam crnu tkaninu na stražnju stranu ogledala kako bih sakrio elektroniku. Također zatamnjuje unutrašnjost kućišta, što znatno otežava gledanje žica kroz ogledalo. Pričvrstio sam ga čičkom, olakšavajući pristup elektronici po potrebi.
Kopirajte Backend mapu iz mog Github spremišta na mjesto koje ćete pamtiti.
Dodajte jedinicu systemd tako da se python skripta pokreće pri pokretanju:
sudo nano /etc/systemd/system/magicmirror.service
[Jedinica]
Opis = Usluga za python skriptu magicmirror After = network.target [Service] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory =/home/pi/magicMirror/Backend StandardOutput = naslijedi StandardError = naslijedi Restart = uvijek Korisnik = pi [Instaliraj] TraženBy = višekorisnički cilj
Promijenite 'WorkingDirectory' u Backend direktorij i promijenite User u svoje korisničko ime.
Korak 9: Interakcija s Webappom
Pređite na IP adresu (koja je na zaslonu). Prikazat će se web lokacija za mobilne uređaje sa sljedećim značajkama:
- Grafikon interaktivne temperature
- Vrijeme. Kad mjerač vremena radi, vidjet ćete i odbrojavanje na samom ogledalu.
- Alarmni sustav
- Kartica postavki na kojoj možete uređivati korisnike, izvore novina i glasnoću zvučnika.
- Todolist. Todo stavke bit će prikazane na ogledalu
Mirror.html je stranica koja se prikazuje na Magic Mirror -u. Dodao sam primjer na gornjim slikama.
Preporučeni:
Prvi sat za bebu - s mjeračem vremena za uključivanje: 16 koraka (sa slikama)
Mali dječji sat - s mjeračem vremena za paljenje: Ovaj vodič pokazuje vam kako izmijeniti "lica" sata - na kojima mogu biti slike vašeg djeteta, fotografije obitelji/kućnog ljubimca - ili bilo što drugo - što ste mislili da bi bilo lijepo povremeno mijenjati. Jednostavno pričvrstite prozirni staklo na željenu ar
Koračni motor s D japankama i mjeračem vremena 555; prvi dio kruga 555 Timer: 3 koraka
Koračni motor s D japankama i mjeračem vremena 555; prvi dio kruga 555 Timer: Koračni motor je istosmjerni motor koji se kreće u diskretnim koracima. Često se koristi u pisačima, pa čak i u robotici. Objasnit ću ovaj krug u koracima. Prvi dio kruga je 555 mjerač vremena. To je prva slika (vidi gore) sa čipom 555 w
Plivajuće pametno čarobno ogledalo sa starog prijenosnog računala s Alexa prepoznavanjem glasa: 6 koraka (sa slikama)
Lebdeće pametno čarobno ogledalo sa starog prijenosnog računala s prepoznavanjem glasa Alexa: Upišite se na moj tečaj "Ukratko o elektronici" ovdje: https://www.udemy.com/electronics-in-a-nutshell/?couponCode=TINKERSPARK Pogledajte i moj youtube kanal ovdje za više projekata i upute o elektronici: https://www.youtube.com/channel/UCelOO
Mini čarobno ogledalo za manje od 60 USD: 5 koraka (sa slikama)
Mini Magic Mirror za manje od 60 USD: 'Magic MIrror' je projekt u kojem se dvosmjerno ogledalo postavlja na neku vrstu zaslona. Tamo gdje ekran prikazuje crne piksele, ogledalo reflektira. Tamo gdje zaslon prikazuje bijele ili svjetlije piksele, oni sjaje. To stvara učinak b
Posebna dekoracija za Noć vještica - Čarobno ogledalo: 5 koraka (sa slikama)
Posebna dekoracija za Noć vještica - Čarobno ogledalo: Napravio sam čarobno ogledalo kao poseban ukras za Noć vještica. Vrlo je zanimljivo. Zrcalu možete govoriti bilo što, bilo koje pitanje ili bilo koju malu tajnu. Nakon nekog vremena odgovor će se pojaviti u ogledalu. To je čarolija. hahah ….. djeci se sviđa