Talaan ng mga Nilalaman:
- Mga gamit
- Hakbang 1: Pag-install ng Raspbian
- Hakbang 2: Pag-configure ng WiFi
- Hakbang 3: Pag-install at Pag-configure ng Software
- Hakbang 4: Ang Database
- Hakbang 5: Pagbuo ng Mirror Frame
- Hakbang 6: Ang Elektronika
- Hakbang 7: Pagkabit ng Elektronikong sa Frame
- Hakbang 8: Pagtatapos ng Mga Touch
- Hakbang 9: Nakikipag-ugnay sa Webapp
Video: Magic Mirror Sa Balita, Panahon, Alarm, Timer at Todolist: 9 Mga Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:11
Ang isang Magic Mirror ay isang espesyal na one-way mirror na may isang display sa likuran nito. Ang display, na konektado sa isang Raspberry Pi, ay nagpapakita ng impormasyon tulad ng panahon, temperatura sa kuwarto, oras, petsa, isang todolist at marami pa. Maaari ka ring magdagdag ng isang mikropono at mag-set up ng isang matalinong katulong. Ang mga posibilidad ay walang katapusan.
Ang proyektong ito ay maaaring maging masyadong mahal, isa sa pinakamahal na bahagi na kakailanganin mo ay syempre ang display. Iyon ang dahilan kung bakit nag-recycle ako ng isang display mula sa isang luma na laptop. Gayunpaman inirerekumenda ko ang pagkuha ng isang malaki, maliwanag, mataas na display ng kaibahan upang gawin ang proyektong ito. Sulit naman
Ang salamin na ginawa ko ay may mga tampok na ito:
- Balita mula sa napiling gumagamit na RSS feed
- Panahon
- Sa loob ng temperatura
- Isang sistema ng alarma
- Isang timer system
- Isang todolist
- Maramihang mga gumagamit: ang kulay ng ledstrip at pagbabago ng newssource batay sa kung aling gumagamit ang napili.
Mga gamit
Upang maitayo ang Magic Mirror na ito, kakailanganin mo ang:
- Isang one-way mirror
- Kahoy
- Isang Raspberry Pi
- Isang Micro SD card (8 + GB)
- Isang breadboard
- Dalawang 20W speaker
- MAX9744 20W amplifier upang mapagana ang mga speaker
- 1m 30-led WS2801 ledstrip
- DS18B20 1-wire sensor ng temperatura
- HC-SR501 Infrared sensor
- Isang rotary encoder
-
Isang monitor o lumang laptop display
Kung gumagamit ka ng isang lumang display sa laptop, kakailanganin mong bumili ng isang laptop display adapter. Maaari mong makuha ang mga ito mula sa AliExpress, Ebay o Amazon. Maghanap lang para sa serial number ng iyong display
Kakailanganin mo rin ang mga sumusunod na maliliit na bahagi:
- Isang diode
- Isang 4.7k Ohm resistor
- Isang 470 Ohm resistor
- Mga wire upang ikonekta ang mga sensor sa Raspberry Pi
At ang mga power supply na ito:
- 5V 2A upang mapagana ang ledstrip
- 12V 2A upang mapagana ang display
- 12V 2A upang mapagana ang amplifier
- 5.1V 3A upang mapagana ang Raspberry Pi (gumamit ng isang opisyal na supply ng kuryente na RPi)
Hakbang 1: Pag-install ng Raspbian
Ang display at lahat ng mga bahagi sa likod ng salamin ay pinalakas ng Raspberry Pi. Kakailanganin mong i-install ang Raspbian, ang default na operating system ng Pi, papunta sa SD card.
- I-download ang Win32 Disk imager. Ang mga gumagamit ng Linux at MacOS ay maaaring gumamit ng tulad ni Etcher.
- I-download ang pinakabagong imahe ng Raspbian mula sa website ng Raspberry Pi. Piliin ang opsyong 'Raspbian Buster na may desktop'
- Buksan ang Win32 Disk Imager at isulat ang file ng imahe sa SD card.
Halos handa na ang SD card. Kailangan lamang tiyakin na makakonekta kami sa Raspberry Pi mula sa malayo:
- Pumunta sa partisyon ng 'boot' ng SD card gamit ang file explorer ng iyong system.
- Magdagdag ng isang file na tinatawag na 'ssh' nang walang isang extension.
- Idagdag ang 'ip = 169.254.10.1' (walang mga quote) sa dulo ng unang linya ng 'cmdline.txt'.
Ligtas na maalis ang SD card mula sa iyong computer, ilagay ito sa iyong Raspberry Pi at i-boot ito.
Hakbang 2: Pag-configure ng WiFi
Upang i-scan ang mga WiFi network, ipatupad ang sumusunod na utos:
sudo iw dev wlan0 scan | grep SSID
Makikita mo ang listahan ng lahat ng SSID na maaaring kumonekta sa iyong Raspberry Pi.
Lumikha ng isang entry sa network na may isang naka-encrypt na password sa pamamagitan ng pagpapatupad ng sumusunod na utos at pagpasok ng password ng iyong network:
wpa_passphrase "HIS_NETWORK_SSID_HERE"
I-paste ngayon ang output ng utos sa itaas sa file na ito:
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Ngayon i-reboot ang Raspberry Pi. Makakonekta ka sa internet.
Hakbang 3: Pag-install at Pag-configure ng Software
Para sa proyektong ito, kakailanganin mong i-download ang mga package na ito sa iyong Raspberry Pi:
pip3 i-install ang mysql-konektor-python flask-socketio flask-cors gevent gevent-websocket adafruit-circuitpython-ws2801 adafruit-circuitpython-max9744
sudo apt i-install ang apache2 mariadb-server
Idagdag ang linyang ito sa ilalim ng /boot/config.txt upang paganahin ang audio sa pamamagitan ng mga GPIO pin 12 (kaliwa) at 13 (kanan):
dtoverlay = audremap
Gumamit ng raspi-config upang maitakda ang resolusyon ng iyong display at paganahin ang i2c, One-wire at SPI. Itakda din ang paraan ng pag-boot sa 'Desktop Autologin'.
Sa / etc / xdg / lxsession / LXDE-pi / autostart, idagdag ang sumusunod:
@xset s off @ xset -dpms @ xset s noblank @ chromium-browser --kiosk 127.0.0.1/mirror.html # load chromium pagkatapos ng boot at buksan ang website sa buong screen mode
Bubukas nito ang browser sa tamang pahina kapag nag-load ang LXDE (desktop environment ng Raspbian). Alisin din o puna ang linya ng @xscreensaver upang huwag paganahin ang screensaver.
Repository ng Github
I-clone ang aking GitHub repository at ilagay ang mga nilalaman ng folder ng Frontend sa / var / www / html. Kakailanganin namin ang folder ng Backend sa ibang pagkakataon.
Hakbang 4: Ang Database
Ito ang database schema, na-optimize sa 3NF. Iniimbak nito ang lahat ng mga alarma, mapagkukunan ng balita, gumagamit, data ng sensor, tunog at todolist.
- Gumamit ng MySQL Workbench upang ma-access ang database server ng iyong pi (mariadb)
- Lumikha ng isang database gamit ang schema na ito at ipasok ang iyong sariling data.
- I-edit ang config.py sa Backend folder ng aking GitHub repository: baguhin ang pangalan ng database, ang iyong napiling username, at ang password.
- I-edit ang app.py at baguhin ang OpenWeatherMap API URL sa sarili mo. (Lumikha ng sarili mo rito)
Hakbang 5: Pagbuo ng Mirror Frame
Itinayo ko ang frame sa paligid ng salamin gamit ang Miter joint na may mga sulok na metal. Ang ginamit kong mga tabla na kahoy ay 18mm makapal at 10cm ang lapad. Sa mga imahe maaari mong makita ang eksaktong mga sukat para sa isang 45cm x 60cm na salamin. Sa likod ng salamin ay ang lahat ng mga electronics, kaya siguraduhin na ang iyong mga tabla ay sapat na lapad upang magkasya ang mga ito.
Gumamit ako ng mga metal na kawit upang ikabit ang mga speaker sa frame. Sa ganoong paraan hindi sila nakasalalay sa salamin, binabawasan ang stress ng panginginig ng boses sa baso.
Hakbang 6: Ang Elektronika
Sundin ang mga iskemat sa itaas upang mabuo ang circuit. Gumamit ako ng tape upang ayusin ang electronics sa salamin.
Hakbang 7: Pagkabit ng Elektronikong sa Frame
Matapos ilakip ang mga speaker sa mga metal hook sa itaas, idagdag ang natitirang electronics sa salamin. Naglagay din ako ng isang manipis na sahig na gawa sa kahoy sa pagitan ng salamin at ng electronics, kaya sa halip na i-tape ang mga electronics sa salamin, nai-tape ko ang mga electronics sa sahig na gawa sa kahoy. Ang display ng laptop ay puting panel sa ilalim ng salamin.
Tulad ng nakikita mo sa mga imahe, isinaksak ko ang lahat ng mga adaptor ng kuryente sa loob ng isang multi-socket outlet kaya may isang cable lamang na iniiwan ang frame. Ito ang dahilan kung bakit kailangan ko ng sapat na malawak na mga tabla (10cm).
Nag-drill ako ng isang 2cm na lapad na butas sa kanang bahagi ng salamin para magkasya ang rotary encoder. Pinapayagan kang madali mong baguhin ang lakas ng tunog (turn) o i-dismiss ang mga timer at alarma (push).
Nag-drill ako ng dalawang 8mm na butas sa magkabilang panig ng salamin upang i-ruta ang mga kable para sa ledstrips.
Hakbang 8: Pagtatapos ng Mga Touch
Nagdagdag ako ng isang itim na tela sa likuran ng salamin upang maitago ang electronics. Pinapadilim din nito ang loob ng kaso, na ginagawang mas mahirap makita ang mga wire sa salamin. Ikinabit ko ito sa velcro, ginagawang mas madali ang pag-access sa electronics kung kinakailangan.
Kopyahin ang Backend folder mula sa aking Github repository sa isang lugar na iyong matatandaan.
Magdagdag ng isang systemd unit upang ang script ng python ay tumatakbo sa boot:
sudo nano /etc/systemd/system/magicmirror.service
[Yunit]
Paglalarawan = Ang serbisyo para sa magicmirror python script Pagkatapos = network.target [Serbisyo] ExecStart = / usr / bin / python3 -u app.py WorkingDirectory = / home / pi / magicMirror / Backend StandardOutput = inherit StandardError = inherit Restart = laging User = pi [I-install] WantedBy = multi-user.target
Baguhin ang 'WorkingDirectory' sa direktoryo ng Backend, at palitan ang Gumagamit sa iyong sariling username.
Hakbang 9: Nakikipag-ugnay sa Webapp
Mag-surf sa IP address (na nasa display). Makakakita ka ng isang mobile-first website na may mga sumusunod na tampok:
- Isang mapag-ugnay na temperatura ng grap
- Isang oras Kapag tumatakbo ang timer, makikita mo rin ang isang countdown sa mirror mismo.
- Isang sistema ng alarma
- Isang tab na mga setting, kung saan maaari mong i-edit ang mga gumagamit, mga mapagkukunan ng balita at dami ng speaker.
- Isang todolist. Ang mga item na Todo ay ipapakita sa salamin
Ang Mirror.html ay ang pahina na ipinakita sa Magic Mirror. Nagdagdag ako ng isang halimbawa sa mga imahe sa itaas.
Inirerekumendang:
IoT ESP8266-Batay sa Panahon ng Panahon: 6 Mga Hakbang
IoT ESP8266-Batay sa Panahon ng Panahon: Nais na bumuo ng isang proyekto ng istasyon ng panahon nang hindi gumagamit ng anumang sensor, at makakuha ng mga impormasyong tungkol sa panahon mula sa buong mundo? Gamit ang OpenWeatherMap, magiging isang tunay na gawain ito
Particle Photon IoT Personal na Panahon ng Panahon: 4 na Hakbang (na may Mga Larawan)
Particle Photon IoT Personal na Panahon ng Panahon:
Isang Istasyon ng Panahon ng Panahon ng Home ng ESP-Ngayon: 9 Mga Hakbang (na may Mga Larawan)
Isang Station ng Panahon ng Panahon ng Home ng ESP-Ngayon: Nais kong magkaroon ng isang istasyon ng panahon sa bahay nang medyo matagal at isa na madaling suriin ng lahat sa pamilya para sa temperatura at halumigmig. Bilang karagdagan upang subaybayan ang mga kondisyon sa labas nais kong subaybayan ang mga tukoy na silid sa bahay bilang wel
3-Araw na Pagtataya ng Panahon ng Panahon: 4 na Hakbang
3-Araw na Pagtataya ng Panahon ng Panahon: Ang 3-Araw na Pagtataya ng Panahon ng Panahon ay nagbibigay ng isang komprehensibong 3-araw na pagtataya ng panahon sa iyong nais na lokasyon o batay sa lokasyon ng iyong IP address. Gumagamit ang proyekto ng serbisyo sa Wunderground Weather API na nagbibigay ng mga tugon sa format na JSON tuwing
Acurite 5 in 1 Weather Station Paggamit ng isang Raspberry Pi at Weewx (iba pang Mga Panahon ng Panahon ay Tugma): 5 Mga Hakbang (na may Mga Larawan)
Acurite 5 in 1 Weather Station Paggamit ng isang Raspberry Pi at Weewx (iba pang Mga Weather Stations ay Tugma): Nang binili ko ang Acurite 5 sa 1 istasyon ng panahon nais kong masuri ang lagay ng panahon sa aking bahay habang wala ako. Nang makauwi ako at naayos ko ito napagtanto ko na dapat kong magkaroon ng display na konektado sa isang computer o bumili ng kanilang smart hub,