Mundarija:

DIY SmartMirror: 6 qadam
DIY SmartMirror: 6 qadam

Video: DIY SmartMirror: 6 qadam

Video: DIY SmartMirror: 6 qadam
Video: DIY Smart Mirror [Complete Guide] 2024, Noyabr
Anonim
DIY SmartMirror
DIY SmartMirror

Ha, bu juda aqlli.

1 -qadam: Dastlabki dizayn va evolyutsiya

Dastlabki dizayn va evolyutsiya
Dastlabki dizayn va evolyutsiya

Mening birinchi fikrim, kunga tayyorgarlik ko'rayotganda sizga kerak bo'lgan barcha turdagi ma'lumotlarni aks ettiradigan aqlli oynani yaratish edi. Ob -havo, yangiliklar va qimmatli qog'ozlar dizaynga kiritish uchun mening birinchi g'oyalarim edi. Men, shuningdek, displeyni yoqish va sizga muhim ma'lumotlarni aytib berish uchun ovozni tanib olishni xohlardim. Bu quyon tuynugi bir semestrda yopib bo'lmaydigan darajada chuqur bo'lib chiqdi, shuning uchun men deyarli ovozni tan olish g'oyasini rad etdim.

Dastlabki g'oyada displeyni haydash va internetdan ma'lumot olish uchun Pi yoki Arduino kabi qandaydir taxta bor edi. Biroz tadqiqotdan so'ng, men 7 dyuymli LCD displey va Raspberry Pi3 ni dekoderli displeyga ega bo'lishga qaror qildim. Shundan so'ng, men ob -havo haqida barcha kerakli ma'lumotlarni berish uchun mos API va ma'lumotni ko'rsatish uchun GUIni topishga majbur bo'ldim. Men kodlashni boshlaganimdan so'ng, vaqt chegarasida ob -havodan boshqa xususiyatlarni qo'shib bo'lmasligini tushundim.

Mening oxirgi dizaynim - bu Raspberry Pi3 bilan bog'lanadigan dekoderga ulangan displey. Pi OpenWeatherMap deb nomlangan API yordamida ob -havo ma'lumotlarini oladigan va GUI Kivy yordamida ma'lumotlarni ko'rsatadigan python skriptini boshqaradi.

2 -qadam: tadqiqot

Tadqiqot
Tadqiqot

Men bu mavzuda ko'rgan ko'plab Youtube darsliklaridan boshimda aqlli oynani yasash g'oyasini allaqachon boshlaganman. Bu odamlarning ko'pchiligi GUI -da o'rnatilgan API uchun to'lovni to'lashlari kerak edi. Men pul to'lamoqchi emas edim va o'zingizni kodlamasligingiz aldashdek tuyuldi.

Bu loyihani tadqiq qilish nisbatan oson edi. Menda loyiha uchun zarur bo'lgan aniq materiallar to'plami bor edi: displey, displeyni boshqaradigan kompyuter va ko'zgu.

Men Raspberry Pi3 ni tanlayman, chunki unda allaqachon tugallangan loyihalarning katta kutubxonasi bor edi, agar men muammolarga duch kelsam, ularni ko'rib chiqishim mumkin edi. Men tanlagan displey eng arzon va eng katta displey bo'lib, u ko'zgu profilining orqasiga sig'adigan darajada ingichka edi. Men o'z oynamni qurishga majbur bo'ldim, chunki men kerakli o'lcham va arzonni topa olmadim.

Xulosa qilib aytganda, men buni o'zingiz qilishingizdan ko'ra arzonroq deb topdim.

3 -qadam: qiyinchiliklar va yordam

Qiyinchiliklar va yordam
Qiyinchiliklar va yordam

Birinchi qiyinchiliklardan biri men tomondan qilingan xato edi. Men displeydan pin chiqishi va Pi -dagi kirishni tekshira olmadim. Pin chiqishi 40 edi, lekin Pi kiritish 32 edi. Lekin baxtga ko'ra, men internetdan arzon bo'lgan dekoderni topdim va Pi bosimini tushirdim, bu ortiqcha. Agar men barcha qismlarga buyurtma berishdan oldin ko'rib chiqqanimda, menga qo'shimcha ikki dollarlik yuk tashish kerak edi.

Men duch kelgan keyingi to'siq GUIni topish edi. Hatto ulardan biri grafik foydalanuvchi interfeysi nima deb nomlanganini ham bilmasdim. Yaxshiyamki, professor Chak nimadan boshlash kerakligi haqida ba'zi takliflarga ega edi. U menga bir nechta takliflarni berdi, men o'zim qaror qabul qilishim kerak edi. Men Internetdagi ba'zi takliflar yordamida tezda xulosaga keldim.

O'ylaymanki, M5 bu sinfda o'qishni soddalashtirishi mumkin - bu xodimlar taxtasida ular haqiqatan ham ko'p biladigan narsalarning tavsifi. Har bir odamning "Python" yoki "RaspberryPi" kabi misollari menda savollar tug'ilganda kimga murojaat qilishni topishga yordam beradi. Ko'pincha men eng yaqin odamni topardim va ular "Oof, men bilmayman. Lekin, falonchi, albatta, bo'ladi" qatorida biror narsa deyishardi. Keyin men bu odamni topardim va umid qilamanki, javob olaman. Agar men taxtaga borib, muammomga tegishli bo'lgan ko'nikmalarni ko'rsam, bu yordam olishda katta yordam beradi.

4 -qadam: Yutuqlar

Mening eng katta yutuqlarimdan biri bu loyihaning sayohati va yakunlanishi. Bu men mustaqil ravishda yakunlashim kerak bo'lgan birinchi yirik loyiha va loyiha va vaqtni boshqarish sohasida ko'p narsa bor edi. Dizayndan amalga oshirishga o'tish jarayoni qiyin kechdi va bu mening rejalashtirishga bo'lgan ishonchimni tikladi. Qismlarni o'rganishdan tortib, oddiygina python kodini samarali tuzishgacha, rejalashtirish va tartibni saqlash juda qiyin edi. Ammo men buni tushunganimdan so'ng, men o'tirdim va uni rejalashtirdim, chunki u menga yaxshi baho kerak emas edi, lekin men organik ravishda zarur degan xulosaga keldim.

Men g'ururlanadigan boshqa yutuqlar - bu pythonda malakamning oshishi va GUI bilan tanishishim. Bu men hech qachon kodlamagan birinchi GUI edi va u bilan o'qishning keskin egri chizig'i bor edi. Vidjetlarni o'rganish (kivy ob'ektlari) va GUIning umumiy tuzilishi men uchun begona edi. Endi men o'zimni ancha dumaloq his qilyapman va kelajakda boshqa GUIni o'rganishga kelsam, o'zimni yaxshi his qilaman.

5 -qadam: Replikatsiya

Men sizning loyihangiz va maqsadlaringizni aniqlash uchun ushbu loyihani qayta qurish uchun qilgan birinchi ishim.

Agar siz aqlli oynali DIY uslubini yaratishni xohlasangiz, mening dizaynimga amal qiling, lekin o'zingizni yo'ldan chetlashtiring.

Agar siz tugallangan loyihani xohlasangiz, mening barcha qadamlarimni nusxalashingiz mumkin va menda Github -da kod bor.

6 -qadam: yangilanishlar

Men qiladigan birinchi narsa - yangi ko'zgu. Mening ishim bo'lsa -da, u mening ilovamda kamchiliklarga ega.

Displeyga qo'shadigan keyingi narsa - bu GUI -dagi yangiliklar va aktsiyalar bannerlari kabi boshqa g'oyalar va, ehtimol, displeyni monitorga yoki kattaroq LCD -ga barcha ma'lumotlarga mos ravishda yangilang.

Agar bularning barchasi to'liq bo'lsa, nihoyat men harakat sezgisini yoki uyqu funktsiyasini qo'shardim, shunda u doimo yonmaydi yoki ovozni tanib olishni qo'shib qo'yaman, shuning uchun displey har doim ham yoqilmaydi.

Tavsiya: