Mundarija:
- Ta'minotlar
- 1 -qadam: Raspbian -ni o'rnatish
- 2 -qadam: WiFi konfiguratsiyasi
- 3 -qadam: dasturiy ta'minotni o'rnatish va sozlash
- 4 -qadam: ma'lumotlar bazasi
- 5 -qadam: Ko'zgu ramkasini qurish
- 6 -qadam: elektronika
- 7 -qadam: Elektronni ramkaga o'rnatish
- 8 -qadam: teginishni tugatish
- 9 -qadam: Webapp bilan ishlash
Video: Yangiliklar, ob -havo, signal, taymer va Todolist bilan sehrli oyna: 9 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:24
Sehrli oyna-bu bir tomonlama maxsus ko'zgu, uning orqasida displey bor. Raspberry Pi -ga ulangan displeyda ob -havo, xona harorati, vaqt, sana, todolist va boshqalar kabi ma'lumotlar ko'rsatiladi. Siz hatto mikrofon qo'shishingiz va aqlli yordamchini o'rnatishingiz mumkin. Imkoniyatlar cheksiz.
Bu loyiha ancha qimmat bo'lishi mumkin, sizga kerak bo'ladigan eng qimmat qismlardan biri bu displey. Shuning uchun men eski noutbukdan displeyni qayta ishladim. Men bu loyihani amalga oshirish uchun katta, yorqin, yuqori kontrastli displeyni olishni maslahat beraman. Bunga arziydi.
Men qilgan oynada quyidagi xususiyatlar bor:
- Foydalanuvchi tanlagan RSS tasmasidan yangiliklar
- Ob -havo
- Ichki harorat
- Signal tizimi
- Taymer tizimi
- Toodist
- Bir nechta foydalanuvchilar: qaysi foydalanuvchi tanlanganiga qarab, chiziqlar chizig'i va axborot manbalari o'zgaradi.
Ta'minotlar
Ushbu sehrli oynani yaratish uchun sizga kerak bo'ladi:
- Bir tomonlama ko'zgu
- Yog'och
- Malinali Pi
- Micro SD karta (8+GB)
- Non paneli
- 20 Vt quvvatli ikkita dinamik
- Karnaylarni quvvatlantirish uchun MAX9744 20W kuchaytirgich
- 1 m 30 boshli WS2801 chizig'i
- DS18B20 1 simli harorat sensori
- HC-SR501 infraqizil sensori
- Aylanadigan kodlovchi
-
Monitor yoki eski noutbuk displeyi
Agar siz eski noutbuk displeyidan foydalansangiz, noutbuk displey adapterini sotib olishingiz kerak bo'ladi. Siz ularni AliExpress, Ebay yoki Amazon -dan olishingiz mumkin. Faqat displeyingizning seriya raqamini qidiring
Shuningdek, sizga quyidagi kichik komponentlar kerak bo'ladi:
- Diyot
- 4.7k Ohm qarshilik
- 470 Ohm qarshilik
- Sensorlarni Raspberry Pi -ga ulash uchun simlar
Va bu quvvat manbalari:
- 5V 2A yorug'lik chizig'ini quvvatlantirish uchun
- Displeyni quvvatlantirish uchun 12V 2A
- Kuchaytirgichni quvvatlantirish uchun 12V 2A
- Raspberry Pi -ni quvvatlantirish uchun 5.1V 3A (rasmiy RPi quvvat manbaidan foydalaning)
1 -qadam: Raspbian -ni o'rnatish
Displey va oynaning orqasidagi barcha komponentlar Raspberry Pi tomonidan quvvatlanadi. Siz SD -kartaga Pi standart operatsion tizimi Raspbian -ni o'rnatishingiz kerak bo'ladi.
- Win32 disk tasvirini yuklab oling. Linux va MacOS foydalanuvchilari Etcher kabi narsalardan foydalanishlari mumkin.
- Raspberry Pi veb -saytidan so'nggi Raspbian rasmini yuklab oling. "Ish stoli bilan Raspbian Buster" variantini tanlang.
- Win32 Disk Imager -ni oching va rasm faylini SD -kartaga yozing.
SD -karta deyarli tayyor. Biz Raspberry Pi -ga masofadan ulanishimizga ishonch hosil qilishimiz kerak:
- SD -kartaning "yuklash" bo'limiga o'ting va tizim fayllarini tekshiring.
- "Ssh" nomli faylni kengaytmasiz qo'shing.
- 'Cmdline.txt' birinchi satrining oxiriga 'ip = 169.254.10.1' (tirnoqsiz) qo'shing.
SD -kartani kompyuterdan xavfsiz chiqarib oling, Raspberry Pi -ga qo'ying va yuklang.
2 -qadam: WiFi konfiguratsiyasi
WiFi tarmoqlarini skanerlash uchun quyidagi buyruqni bajaring:
sudo iw dev wlan0 skanerlash | grep SSID
Siz Raspberry Pi ulanishi mumkin bo'lgan barcha SSID -lar ro'yxatini ko'rasiz.
Quyidagi buyruqni bajarish va tarmoq parolini kiritish orqali shifrlangan parol bilan tarmoq kirishini yarating:
wpa_passphrase "YOUR_NETWORK_SSID_HERE"
Endi yuqoridagi buyruq natijasini ushbu faylga joylashtiring:
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Endi Raspberry Pi -ni qayta ishga tushiring. Siz Internetga ulanasiz.
3 -qadam: dasturiy ta'minotni o'rnatish va sozlash
Ushbu loyiha uchun siz ushbu paketlarni Raspberry Pi -ga yuklab olishingiz kerak bo'ladi:
pip3 mysql-ulagichi-python kolbasi-rozetkasi kolbasi-korslari gevent gevent-websocket adafruit-circuitpython-ws2801 adafruit-circuitpython-max9744
sudo apt install apache2 mariadb-server
Ovozni GPIO 12 (chapda) va 13 (o'ngda) pinlari orqali yoqish uchun /boot/config.txt ostiga bu qatorni qo'shing:
dtoverlay = audremap
Raspi-config-dan foydalanib, displeyingiz aniqligini va i2c, bitta simli va SPI-ni yoqing. Shuningdek, yuklash usulini "Desktop Autologin" ga o'rnating.
/Etc/xdg/lxsession/LXDE-pi/autostart-ga quyidagilarni qo'shing:
@xset s off@xset -dpms@xset s noblank@chromium -browser --kiosk 127.0.0.1/mirror.html # yuklashdan so'ng xromni yuklang va veb -saytni to'liq ekran rejimida oching.
Bu LXDE (Raspbian ish stoli muhiti) yuklanganda brauzerni to'g'ri sahifada ochadi. Shuningdek, ekran saqlovchini o'chirish uchun @xscreensaver chizig'ini olib tashlang yoki izoh bering.
Github ombori
Mening GitHub omborimni klonlang va Frontend jildining tarkibini/var/www/html -ga qo'ying. Bizga keyinchalik Backend papkasi kerak bo'ladi.
4 -qadam: ma'lumotlar bazasi
Bu 3NF ga optimallashtirilgan ma'lumotlar bazasi sxemasi. U barcha signallarni, yangiliklar manbalarini, foydalanuvchilarni, sensor ma'lumotlarini, tovushlarni va todolistni saqlaydi.
- Pi ma'lumotlar bazasi serveriga kirish uchun MySQL Workbench -dan foydalaning (mariadb)
- Ushbu sxema yordamida ma'lumotlar bazasini yarating va o'z ma'lumotlaringizni kiriting.
- GitHub omborimning Backend papkasida config.py -ni tahrir qiling: ma'lumotlar bazasi nomini, siz tanlagan foydalanuvchi nomini va parolni o'zgartiring.
- App.py -ni tahrir qiling va OpenWeatherMap API -ni URL manzilini o'zgartiring. (Bu erda o'zingizni yarating)
5 -qadam: Ko'zgu ramkasini qurish
Men ramkani metall burchakli Miter bo'g'inlari yordamida oynaning atrofida qurdim. Men ishlatgan yog'och taxtalarning qalinligi 18 mm va kengligi 10 sm. Rasmlarda siz 45 sm x 60 sm o'lchamdagi oynaning aniq o'lchamlarini ko'rishingiz mumkin. Ko'zgu orqasida barcha elektronika bor, shuning uchun taxtalaringiz ularga mos keladigan darajada keng ekanligiga ishonch hosil qiling.
Men karnaylarni ramkaga mahkamlash uchun metall ilgaklar ishlatardim. Shunday qilib, ular oynaga tebranmaydilar, bu esa oynadagi tebranish stressini kamaytiradi.
6 -qadam: elektronika
Zanjirni qurish uchun yuqoridagi sxemalarga amal qiling. Elektronni oynaga mahkamlash uchun lenta ishlatardim.
7 -qadam: Elektronni ramkaga o'rnatish
Karnaylarni yuqori qismidagi metall ilgaklarga mahkamlagandan so'ng, qolgan elektronikani oynaga qo'shing. Men, shuningdek, oyna va elektronika orasiga yupqa yog'och taxta qo'ydim, shuning uchun elektronikani oynaga yopishtirish o'rniga, elektron taxtani yog'och taxtaga yopishtirdim. Laptop displeyi oynaning pastki qismidagi oq paneli.
Rasmlarda ko'rib turganingizdek, men barcha quvvat adapterlarini ko'p rozetkali rozetkaga uladim, shuning uchun ramkadan faqat bitta kabel chiqib ketdi. Shuning uchun menga etarlicha keng taxtalar kerak edi (10 sm).
Men aylanuvchi kodlovchi mos kelishi uchun oynaning o'ng tomonida kengligi 2 sm bo'lgan teshik ochdim. Bu sizga ovoz balandligini osongina o'zgartirish (burilish) yoki taymerlar va signallarni o'chirish (surish) imkonini beradi.
Men chiziqlar uchun kabellarni yo'naltirish uchun oynaning ikkala tomonida 8 mm ikkita ikkita teshik ochdim.
8 -qadam: teginishni tugatish
Men elektronikani yashirish uchun oynaning orqa qismiga qora mato qo'shdim. Bundan tashqari, korpusning ichki qismi qorayadi, bu esa simlarni oynadan ko'rishni ancha qiyinlashtiradi. Men uni velcro bilan biriktirdim, kerak bo'lganda elektronikaga kirishni osonlashtirdim.
Backend papkasini Github omboridan eslab qoladigan joyga nusxalash.
Python skript yuklashda ishlashi uchun systemd birligini qo'shing:
sudo nano /etc/systemd/system/magicmirror.service
[Birlik]
Tavsif = sehrli oyna python skriptlari uchun xizmatdan keyin = network.target [Service] ExecStart =/usr/bin/python3 -u app.py WorkingDirectory =/home/pi/magicMirror/Backend StandardOutput = irsiy StandardError = meros qilib qayta ishga tushirish = har doim foydalanuvchi = pi [O'rnatish] WantedBy = multi-user.target
"WorkingDirectory" ni Backend katalogiga o'zgartiring va "User" ni o'z foydalanuvchi nomingizga o'zgartiring.
9 -qadam: Webapp bilan ishlash
IP -manzilga o'ting (displeyda). Siz quyidagi xususiyatlarga ega mobil qurilmalar uchun birinchi veb-saytni ko'rasiz:
- O'zaro ta'sir qiladigan harorat o'lchagichi
- Vaqt. Taymer ishlayotganda, siz oynaning o'zida ham hisoblagichni ko'rasiz.
- Signal tizimi
- Foydalanuvchilar, yangiliklar manbalari va karnay ovozini tahrirlash mumkin bo'lgan sozlamalar yorlig'i.
- Toodist. Todo elementlari oynada ko'rsatiladi
Mirror.html - bu sehrli oynada ko'rsatiladigan sahifa. Men yuqoridagi rasmlarga misol qo'shdim.
Tavsiya:
Eski noutbukdan Alexa ovozli tanish yordamida suzuvchi aqlli sehrli oyna: 6 qadam (rasmlar bilan)
Alexa ovozli identifikatorli eski noutbukdan aqlli sehrli ko'zgu: "Elektronika" kursiga yoziling: https://www.udemy.com/electronics-in-a-nutshell/?couponCode=TINKERSPARK youtube kanalida boshqa loyihalar va elektronika bo'yicha darsliklar: https://www.youtube.com/channel/UCelOO
Vaqt, yangiliklar va atrof -muhit ma'lumotlari uchun o'zingizning MQTT EInk displeyingizni yarating: 7 qadam
Vaqt, yangiliklar va atrof -muhit ma'lumotlari uchun o'zingizning MQTT EInk displeyingizni yarating: "THE" - bu vaqt, yangiliklar va atrof -muhit ma'lumotlari uchun MQTT ma'lumotlarining mini displeyi. 4,2 dyuymli eInk ekranidan foydalanib, uning kontseptsiyasi oddiy-har ikki daqiqada yangilanib turuvchi ma'lumotlarni ko'rsatish. Ma'lumotlar har qanday tasma bo'lishi mumkin - f
Mini Sehrli Oyna 60 AQSh dollarigacha USD: 5 qadam (rasmlar bilan)
Mini Sehrli Oyna 60 AQSh dollarigacha: "Magic MRrror" - bu ikki tomonlama oynani ekranning ustiga qo'yish. Ekran qora pikselni ko'rsatadigan joyda, ko'zgu aks ettiradi. Ekranda oq yoki ochroq piksellar ko'rsatilsa, ular yorishadi. Bu b effektini yaratadi
Xellouin bayramining maxsus bezaklari - sehrli oyna: 5 qadam (rasmlar bilan)
Xellouin bayramining maxsus bezaklari - sehrli oyna: men sehrli oynani Xellouin bayramining maxsus bezagi sifatida qildim. Bu juda qiziq. Siz oynaga har qanday narsani, har qanday savolni yoki biron bir kichik sirni gapira olasiz. Biroz vaqt o'tgach, javob oynada ko'rinadi. Bu sehr. hahah ….. bolalarga yoqadi
Keling, sehrli sehrli billur to'p yasaylik! ~ Arduino ~: 9 qadam
Sehrli afsun bilan sehrli billur to'p yasaylik! ~ Arduino ~: Bunda biz harakat sensori va RFID skaneridan foydalanib, ichidagi LED chiroqlar animatsiyasini boshqaradigan sehrli to'p yasaymiz