Съдържание:

DIY SmartMirror: 6 стъпки
DIY SmartMirror: 6 стъпки

Видео: DIY SmartMirror: 6 стъпки

Видео: DIY SmartMirror: 6 стъпки
Видео: 20 Creative DIY Projects for Anyone Living in a Small Space 2024, Ноември
Anonim
Направи си сам SmartMirror
Направи си сам SmartMirror

Да, много е умно.

Стъпка 1: Първоначален дизайн и еволюция

Първоначален дизайн и еволюция
Първоначален дизайн и еволюция

Първоначалната ми идея беше да създам интелигентно огледало, което да показва всички видове информация, от която се нуждаете, когато се подготвяте за деня. Времето, новините и акциите бяха моите първоначални идеи за включване в дизайна. Исках също да имам разпознаване на глас, за да включа дисплея и да ви кажа важна информация. Това се оказа твърде дълбока заешка дупка, за да се покрие за един семестър, така че почти веднага отхвърлих идеята за разпознаване на глас.

Първоначалната идея имаше някакъв вид платка като Pi или Arduino, която да управлява дисплея и да получава данни от интернет. След известно проучване реших да взема 7 -инчов LCD дисплей и Raspberry Pi3 с декодер за дисплея. След това трябваше да намеря подходящ API, който да ми даде цялата необходима информация за времето (надявам се безплатно) и графичен интерфейс за показване на информацията. След като започнах да кодирам, осъзнах, че добавянето на функции, различни от времето, няма да е възможно в рамките на ограничението във времето.

Окончателният ми дизайн е дисплеят, свързан с декодер, който комуникира с Raspberry Pi3. Pi изпълнява скрипт на python, който извлича времето с API, наречен OpenWeatherMap, и показва данните, използвайки GUI Kivy.

Стъпка 2: Изследване

Изследвания
Изследвания

Вече имах идеята да направя умно огледало в главата си от много уроци в Youtube, които видях по темата. Много от тези хора, въпреки че са използвали API, за който трябва да платят, който има вграден графичен интерфейс. Не исках да плащам и това, че не го кодирах сам, се чувстваше като измама.

Този проект беше сравнително лесен за изследване. Имах ясен набор от материали, необходими за проекта: дисплей, компютър за управление на дисплея и огледало.

Избирам Raspberry Pi3, защото имаше голяма библиотека от вече завършени проекти, които можех да разгледам, ако някога срещна проблеми, които бяха няколко. Избраният от мен дисплей беше най -достъпният и най -големият дисплей, който можех да намеря, който беше достатъчно тънък, за да се побере зад профила на огледало. В крайна сметка се наложи да си направя собствено огледало, защото не можах да намеря с правилния размер и евтино.

В заключение, намерих, че е много по-евтино само да си го направите, стига да сте добре с това, че най-вероятно ще имате подпрофесионален вид.

Стъпка 3: Трудности и помощ

Трудности и помощ
Трудности и помощ

Една от първите трудности беше груба грешка от моя страна. Не успях да проверя изхода на пина от дисплея и входа на моя Pi. Изходът на пина беше 40, но входът на Pi беше 32. Но за щастие намерих онлайн декодер, който беше евтин и свалих натиска от Pi, което е плюс. Това ми костваше допълнителни няколко долара в корабоплаването, ако бях го разгледал, преди да поръчам всички части.

Следващото препятствие, което срещнах, беше намирането на GUI. Дори не знаех как се нарича един от тях, Графичен потребителски интерфейс. За щастие, моят професор Чък имаше някои предложения откъде да започна. Той ми даде няколко предложения, за които трябваше да реша сам. В крайна сметка стигнах до заключение доста бързо с помощта на някои онлайн предложения.

Един от начините, по които мисля, че M5 може да рационализира обучението в този клас, е да има описание на борда на персонала за това, което наистина знаят много. Примери като „Python“или „RaspberryPi“под всеки човек биха помогнали при намирането при кого да отида, когато имах въпроси. През повечето време щях да намеря най-близкия човек и те щяха да кажат нещо по подобие на "Уф, не знам наистина. Но така и това определено ще го направя." Тогава щях да намеря този човек и да се надявам да получа отговор. Ако можех да отида до дъската и да видя дали виждам някакви умения, които се отнасят до моя проблем, това би помогнало много в получаването на помощ.

Стъпка 4: Постижения

Едно от най -големите ми постижения е пътуването и завършването на този проект. Това е първият голям проект, който трябваше да завърша сам и имаше много учене в сферата на управление на проекти и време. Процесът на преминаване от проектиране към изпълнение беше труден и той обнови вярата ми в планирането. От изследването на части до простото ефективно структуриране на кода на python, актът на планиране и поддържане на организираност беше труден в момента. Но след като разбрах това, седнах и го планирах, не защото беше възложено или защото имах нужда от добра оценка, но органично стигнах до заключението, че е необходимо.

Другите постижения, с които най -много се гордея, са повишените ми умения в python и въвеждането ми в графичния интерфейс. Това беше първият графичен интерфейс, който някога съм кодирал, и той имаше стръмна крива на обучение с него. Изучаването на джаджи (kivy „обекти“) и как работи общата структура на GUI ми беше чуждо. Сега се чувствам по -добре закръглен и определено съм по -добре, когато става въпрос за изучаване на друг графичен интерфейс в бъдеще.

Стъпка 5: Репликация

Първото нещо, което бих направил, за да реконструирам този проект, за да реша вашия мащаб и цели.

Ако искате да направите интелигентен огледален стил „направи си сам“, следвайте моя дизайн, но не се колебайте да се отклоните от пътя.

Ако просто искате завършен проект, можете да копирате всичките ми стъпки и аз имам кода на моя Github.

Стъпка 6: Надстройки

Първото нещо, което ще направя, е да си взема ново огледало. Въпреки че моята работи, тя има несъвършенства в моето приложение.

Следващото нещо, което бих добавил към дисплея, са другите идеи като банер за новини и акции към графичния интерфейс и вероятно надграждане на дисплея до монитор или по -голям LCD, за да побере цялата информация.

Ако всичко това беше напълно, накрая бих добавил или сензор за движение, или функция за заспиване, така че да не е винаги включена, или да добавя разпознаване на глас, така че отново дисплеят не винаги е включен.

Препоръчано: