Mündəricat:
- Təchizat
- Addım 1: Raspbian qurmaq
- Addım 2: WiFi Konfiqurasiyası
- Addım 3: Proqramın Quraşdırılması və Konfiqurasiyası
- Addım 4: Verilənlər bazası
- Addım 5: Güzgü Çərçivəsinin Qurulması
- Addım 6: Elektronika
- Addım 7: Elektronikanı Çərçivəyə yerləşdirmək
- Addım 8: Toxunuşları bitirmək
- Addım 9: Webapp ilə qarşılıqlı əlaqə
Video: Xəbərlər, Hava, Siqnal, Taymer və Todolist ilə Sehrli Güzgü: 9 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:44
Sehrli Güzgü, arxasında ekranı olan xüsusi bir tərəfli güzgüdür. Raspberry Pi -yə qoşulan ekranda hava, otaq istiliyi, vaxt, tarix, todolist və sair kimi məlumatlar göstərilir. Hətta mikrofon əlavə edib ağıllı köməkçi də qura bilərsiniz. İmkanları sonsuzdur.
Bu layihə olduqca bahalı ola bilər, ehtiyacınız olan ən bahalı hissələrdən biri əlbəttə ki ekrandır. Buna görə köhnə bir noutbukdan bir ekranı geri qaytardım. Bununla birlikdə, bu layihəni həyata keçirmək üçün böyük, parlaq, yüksək kontrastlı bir ekran almağı məsləhət görürəm. Buna dəyər.
Hazırladığım güzgü bu xüsusiyyətlərə malikdir:
- İstifadəçinin seçdiyi RSS lentindən xəbərlər
- Hava
- Daxili temperatur
- Siqnalizasiya sistemi
- Taymer sistemi
- Bir todolist
- Birdən çox istifadəçi: istifadəçi seçildiyinə görə ledstrip rəngi və xəbər mənbəyi dəyişir.
Təchizat
Bu Sehrli Güzgü qurmaq üçün sizə lazım olacaq:
- Bir tərəfli güzgü
- Ağac
- Bir Moruq Pi
- Micro SD kart (8+GB)
- Çörək taxtası
- İki 20W dinamik
- Dinamikləri gücləndirmək üçün MAX9744 20W gücləndirici
- 1m 30 başlıqlı WS2801 led lent
- DS18B20 1 telli temperatur sensoru
- HC-SR501 infraqırmızı sensoru
- Dönən bir kodlayıcı
-
Bir monitor və ya köhnə noutbuk ekranı
Köhnə bir laptop ekranı istifadə edirsinizsə, bir dizüstü ekran adapteri almalısınız. Bunları AliExpress, Ebay və ya Amazon -dan əldə edə bilərsiniz. Ekranınızın seriya nömrəsini axtarın
Aşağıdakı kiçik komponentlərə də ehtiyacınız olacaq:
- Bir diod
- 4.7k Ohm müqavimət
- 470 Ohm müqavimət
- Sensorları Raspberry Pi -yə bağlamaq üçün tellər
Və bu enerji təchizatı:
- Led zolağını gücləndirmək üçün 5V 2A
- Ekranı gücləndirmək üçün 12V 2A
- Gücləndiricini gücləndirmək üçün 12V 2A
- Raspberry Pi -ni gücləndirmək üçün 5.1V 3A (rəsmi RPi enerji təchizatı istifadə edin)
Addım 1: Raspbian qurmaq
Ekran və güzgü arxasındakı bütün komponentlər Raspberry Pi ilə təchiz edilmişdir. Pi -nin standart əməliyyat sistemi olan Raspbian -ı SD karta yükləməlisiniz.
- Win32 disk görüntüləyicisini yükləyin. Linux və MacOS istifadəçiləri Etcher kimi bir şeydən istifadə edə bilərlər.
- Raspberry Pi veb saytından ən son Raspbian şəklini yükləyin. 'Masaüstü ilə Raspbian Buster' seçimini seçin
- Win32 Disk Imager proqramını açın və şəkil faylını SD karta yazın.
SD kart demək olar ki, hazırdır. Raspberry Pi -yə uzaqdan qoşula biləcəyimizdən əmin olmalıyıq:
- Sisteminizin fayl araşdırıcısını istifadə edərək SD kartın 'açılış' bölməsinə gedin.
- Uzantısı olmayan 'ssh' adlı bir fayl əlavə edin.
- 'Cmdline.txt' ilk sətirinin sonuna 'ip = 169.254.10.1' (tirnoq olmadan) əlavə edin.
SD kartı kompüterinizdən etibarlı şəkildə çıxarın, Raspberry Pi -yə qoyun və yükləyin.
Addım 2: WiFi Konfiqurasiyası
WiFi şəbəkələrini taramaq üçün aşağıdakı əmri yerinə yetirin:
sudo iw dev wlan0 scan | grep SSID
Raspberry Pi -nin qoşula biləcəyi bütün SSID -lərin siyahısını görəcəksiniz.
Aşağıdakı əmri yerinə yetirərək və şifrənizi daxil edərək şifrəli parol ilə bir şəbəkə girişi yaradın:
wpa_passphrase "YOUR_NETWORK_SSID_HERE"
İndi yuxarıdakı əmrin çıxışını bu fayla yapışdırın:
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
İndi Raspberry Pi -ni yenidən başladın. İnternetə qoşulacaqsınız.
Addım 3: Proqramın Quraşdırılması və Konfiqurasiyası
Bu layihə üçün bu paketləri Raspberry Pi -yə yükləməlisiniz:
pip3 mysql-connector-python flask-socketio flask-cors qurmaq gevent gevent-websocket adafruit-circuitpython-ws2801 adafruit-circuitpython-max9744
sudo apt install apache2 mariadb-server
GPIO sancaqları 12 (solda) və 13 (sağda) vasitəsilə səsi aktiv etmək üçün /boot/config.txt faylının altına bu xətti əlavə edin:
dtoverlay = audremap
Ekranınızın qətnaməsini təyin etmək və i2c, Bir telli və SPI-ni aktivləşdirmək üçün raspi-config istifadə edin. Ayrıca açılış metodunu 'Masaüstü Avtomatlaşdırma' olaraq təyin edin.
/Etc/xdg/lxsession/LXDE-pi/autostart-a aşağıdakıları əlavə edin:
@xset s off@xset -dpms@xset s noblank@chromium -browser --kiosk 127.0.0.1/mirror.html # açıldıqdan sonra xrom yükləyin və veb saytı tam ekran rejimində açın
Bu, LXDE (Raspbian masa üstü mühiti) yükləndikdə brauzeri düzgün səhifədə açır. Ekran qoruyucusunu deaktiv etmək üçün @xscreensaver xəttini silin və ya şərh edin.
Github anbarı
GitHub depomu klonlayın və Frontend qovluğunun məzmununu/var/www/html -ə qoyun. Daha sonra Backend qovluğuna ehtiyacımız olacaq.
Addım 4: Verilənlər bazası
Bu, 3NF üçün optimallaşdırılmış verilənlər bazası sxemidir. Bütün həyəcan siqnallarını, xəbər mənbələrini, istifadəçiləri, sensor məlumatlarını, səsləri və todolisti saxlayır.
- Pi -nin verilənlər bazası serverinə (mariadb) daxil olmaq üçün MySQL Workbench -dən istifadə edin.
- Bu sxemdən istifadə edərək bir verilənlər bazası yaradın və öz məlumatlarınızı daxil edin.
- GitHub depomun Backend qovluğunda config.py -ni redaktə edin: verilənlər bazası adını, seçdiyiniz istifadəçi adını və şifrənizi dəyişdirin.
- App.py faylını redaktə edin və OpenWeatherMap API URL'sini özünüzə dəyişdirin. (Burada özünüz yaradın)
Addım 5: Güzgü Çərçivəsinin Qurulması
Çərçivəni metal küncləri olan Miter birləşmələrindən istifadə edərək güzgü ətrafında qurdum. İstifadə etdiyim taxta taxtaların qalınlığı 18 mm və eni 10 sm -dir. Şəkillərdə 45 sm x 60 sm ölçülü bir aynanın dəqiq ölçülərini görə bilərsiniz. Güzgünün arxasında bütün elektronika var, buna görə taxtalarınızın onlara uyğun olacaq qədər geniş olduğundan əmin olun.
Dinamikləri çərçivəyə bağlamaq üçün metal qarmaqlardan istifadə etdim. Bu şəkildə güzgü üzərində dayanmırlar, şüşədəki titrəmə stressini azaldırlar.
Addım 6: Elektronika
Dövr qurmaq üçün yuxarıdakı sxemlərə əməl edin. Elektronikanı güzgüyə bağlamaq üçün lentdən istifadə etdim.
Addım 7: Elektronikanı Çərçivəyə yerləşdirmək
Dinamikləri yuxarıdakı metal qarmaqlara bağladıqdan sonra elektronikanın qalan hissəsini güzgüyə əlavə edin. Güzgü ilə elektronika arasına nazik taxta taxta da qoydum, ona görə də elektronikanı güzgüyə yapışdırmaq əvəzinə, taxtanı taxtaya yapışdırdım. Laptop ekranı güzgünün altındakı ağ paneldir.
Şəkillərdə görə biləcəyiniz kimi, bütün güc adapterlərini çoxlu prizə bağladım, belə ki, çərçivədən çıxan yalnız bir kabel var. Buna görə kifayət qədər geniş taxtalara ehtiyacım var (10 sm).
Dönən enkoderin daxil olması üçün güzgünün sağ tərəfində 2 sm genişliyində bir çuxur qazdım. Bu, səs səviyyəsini asanlıqla dəyişdirməyə (döndərməyə) və ya taymerləri və həyəcan siqnallarını (itələməyə) buraxmağa imkan verir.
Led şeritləri üçün kabelləri istiqamətləndirmək üçün aynanın hər iki tərəfində 8 mm -lik iki delik açdım.
Addım 8: Toxunuşları bitirmək
Elektronikanı gizlətmək üçün aynanın arxasına qara parça əlavə etdim. Həm də korpusun içini qaraldır ki, bu da telləri güzgüdən görməyi xeyli çətinləşdirir. Velcro ilə bağladım, lazım olduqda elektronikaya daxil olmağı asanlaşdırdı.
Backend qovluğunu Github depomdan xatırlayacağınız bir yerə kopyalayın.
Python skriptinin açılışda işləməsi üçün bir systemd vahidi əlavə edin:
sudo nano /etc/systemd/system/magicmirror.service
[Bölmə]
Description = magicmirror python script xidməti sonra = network.target [Service] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory =/home/pi/magicMirror/Backend StandardOutput = miras StandardError = miras Yenidən Başlat = həmişə İstifadəçi = pi [Quraşdır] WantedBy = multi-user.target
'WorkingDirectory'yi Backend qovluğuna dəyişdirin və İstifadəçini öz istifadəçi adınıza dəyişdirin.
Addım 9: Webapp ilə qarşılıqlı əlaqə
IP ünvanına gedin (ekranda). Aşağıdakı xüsusiyyətlərə sahib bir mobil ilk veb saytını görəcəksiniz:
- Qarşılıqlı təsir göstərən bir temperatur tutucusu
- Bir vaxt. Taymer işləyərkən aynanın özündə də geri sayım görəcəksiniz.
- Siqnalizasiya sistemi
- İstifadəçiləri, xəbər mənbələrini və dinamikin həcmini redaktə edə biləcəyiniz bir ayarlar sekmesi.
- Bir todolist. Todo əşyaları güzgüdə göstəriləcək
Mirror.html, Sehrli Güzgüdə göstərilən səhifədir. Yuxarıdakı şəkillərə bir nümunə əlavə etdim.
Tövsiyə:
Alexa Səs Tanıma ilə Köhnə Laptopdan Üzən Ağıllı Sehrli Güzgü: 6 addım (şəkillərlə)
Alexa Səs Tanıma ilə Köhnə Laptopdan Üzən Ağıllı Sehrli Güzgü: "Elektronika" kursuna buradan daxil olun: https://www.udemy.com/electronics-in-a-nutshell/?couponCode=TINKERSPARK daha çox layihə və elektronika dərsləri üçün youtube kanalı: https://www.youtube.com/channel/UCelOO
Mini Sehrli Güzgü $ 60 -dan aşağı USD: 5 addım (şəkillərlə)
60 USD -dən aşağı olan Mini Sehrli Güzgü: 'Magic MIrror', bir növ ekranın üzərinə 2 tərəfli güzgü yerləşdirildiyi bir layihədir. Ekranda qara piksellərin olduğu yerdə güzgü əks etdiricidir. Ekranda ağ və ya daha açıq piksellər göstərildikdə, onlar işıq saçır. Bu b təsirini yaradır
Yer və Ay Sehrli Güzgü: 4 addım
Yer və Ay Sehrli Güzgü: Ay / Yer və mövcud xarici şərtləri göstərən Tablet Powered Magic Mirror Saatı
Xüsusi Halloween Dekorasiyası - Sehrli Güzgü: 5 addım (şəkillərlə)
Xüsusi Halloween Dekorasiyası - Sehrli Güzgü: Xüsusi bir Halloween bəzəyi olaraq sehrli bir güzgü etdim. Çox maraqlıdır. Güzgüyə bir şey, hər hansı bir sual və ya kiçik bir sirr danışa bilərsiniz. Bir müddət sonra cavab güzgüdə görünəcək. Bu bir sehrdir. hahah ….. Uşaqlar bəyənirlər
Sehrli sehrlərlə sehrli bir büllur topu edək! ~ Arduino ~: 9 addım
Sehrli sehrlərlə sehrli bir kristal top hazırlayaq! ~ Arduino ~: İçərisində LED işıqlarının animasiyalarını idarə etmək üçün hərəkət sensoru və RFID skanerdən istifadə edən Sehrli Top hazırlayacağıq