Схемы

Как создать умное зеркало Raspberry Pi! 7 шагов (с картинками)

Raspberry Pi 4B vs Jetson Nano

Raspberry Pi 4B vs Jetson Nano

Оглавление:

Anonim

Здравствуйте все!

Для своего финального проекта по информатике я решил создать Smart Mirror на базе Raspberry Pi 3! Я получил эту идею от Hacker House, потрясающего канала Youtube, на котором есть много интересных идей для творческих проектов, которые включают в себя простые инструкции! Хотя я в основном концентрируюсь на кодировании на Java, это Smart Mirror позволило мне работать с Raspberry Pi путем кодирования в Linux и Python - языках, которые я никогда раньше не использовал. Кроме того, мне пришлось заняться какой-то интересной работой по дереву, построив рамку вокруг монитора, расположенную за двухсторонним зеркалом. Хотя это был мой самый первый проект Raspberry Pi, у меня ушло около двух выходных, от написания кода Pi до рисования рамки. Это был потрясающий опыт, и я надеюсь, что этот урок поможет вам создать свой собственный!

Расходные материалы:

Шаг 1: что вам нужно

Прежде чем начать, вот список всех необходимых элементов для проекта:

  1. Raspberry Pi (я использовал версию R Raspberry Pi 3, модель B, так как она легко доступна и легко настраивается)
  2. Монитор (я использовал монитор Samsung 12 "X 20" с входом HDMI)
  3. Двухстороннее акриловое стеклянное зеркало (есть некоторые онлайн, однако я использовал более дешевый Hacker House, рекомендованный - см. Ссылку внизу)
  4. 4 х 3D печатных кронштейна (они не нужны, однако они облегчают размещение рамки. Опять же, у Hacker House есть веб-сайт, который предоставляет STL и zip-файлы для дизайна кронштейнов - см. Ссылку внизу)
  5. Кабель HDMI
  6. Кабель Micro HDMI для блока питания Pi
  7. Клей для дерева
  8. Винты
  9. Дерево (я использовал два 8-футовых длинных куска (1 x 3 дюйма и 1 x 4 дюйма), чтобы разрезать внутреннюю и внешнюю раму)
  10. Клавиатура (USB)
  11. Мышь (USB)
  12. Хомуты

3D скобки ~

http://www.hackerhouse.site/parts.html

Двухстороннее зеркало ~

Http: //www.amazon.com/gp/product/B01CZ35XWY/ref=o …

Шаг 2: Настройка Raspberry Pi

Чтобы Pi мог получать информацию от модулей Magic Mirror, найденных в сети, крайне важно настроить Wi-Fi и часовой пояс. После установки операционной системы «Raspbian» (я использовал версию «Jessie») на вашу карту micro SD, подключите клавиатуру и мышь к Pi и подключите кабель HDMI к монитору, который вы собираетесь использовать. Подождите, пока система загрузится, затем вы можете начать настройку Pi в соответствии с вашим местоположением. Сначала щелкните символ Wi-Fi в правом верхнем углу экрана. Выберите свой интернет и введите свой пароль. Затем вы должны быть подключены к вашему Wi-Fi.Как только вы это сделаете, войдите в свой терминал и введите следующее:

sudo dpkg-переконфигурировать tzdata

Затем вы можете начать доступ к вашему конкретному часовому поясу через меню, отображаемое Pi. После того, как вы выбрали правильный часовой пояс, сохраните и перезагрузите Pi. На этом этапе Magic Mirror может использовать ваше местоположение для отображения времени и доступа к информации из Интернета с помощью вашего Wi-Fi. Теперь вы можете начать программирование!

Шаг 3: Волшебное Зеркало 2

Прежде чем начать загрузку и настройку программы, вы, вероятно, должны знать, как эта программа работает. MagicMirror - это загружаемая платформа, созданная Майклом Теу (a.k.a MichMich), где можно получить доступ к этому хранилищу на сайте www.github.com. Используя Pi, вы должны загрузить и клонировать репозиторий вместе с его зависимостями. Благодаря этому Pi может запускать программу и отображать определенные элементы, содержащиеся в файле MagicMirror. Для более подробного объяснения вы можете посетить http://magicmirror.builders/, онлайн-форум с множеством полезных модулей и методов устранения неполадок для любого, кто кодирует программу. Чтобы начать, войдите в свой терминал и введите следующий код:

bash -c "$ (curl -sL http://raw.githubusercontent.com/MichMich/MagicMirror/master/installers/raspberry.sh)"

Когда вы нажмете Enter, Pi начнет автоматическую загрузку хранилища, что займет около 10 - 15 минут. По пути вам будет предложено ввести «Y» или «N» для определенных зависимостей, таких как vim. Vim является важной зависимостью, которая позволяет текстовому редактору управлять MagicMirror. Также будет загружена программа pm2, которая автоматически запускает программу при загрузке Pi. Другой подсказкой будет Node.js, который позволяет сетевым приложениям запускаться на Pi. Как только MagicMirror будет полностью загружен, перезагрузите Pi. После перезагрузки вы должны увидеть комплимент, время и новости (см. Фото выше). С этого момента вы можете начать настраивать программу (добавлять новые модули, ориентацию, менять шрифты и т. Д.).

Шаг 4: Модули

Как показано выше, MagicMirror должен автоматически отображать время, комплимент, праздничные дни в США и некоторые новостные статьи. Тем не менее, я хотел добавить некоторые функции в Pi, чтобы сделать его более эстетичным и иметь больше информации, к которой я мог бы получить доступ (например: погода, прогноз погоды, интересные цитаты и т. Д.). Чтобы сделать это, есть несколько вещей, которые вы должны сделать, чтобы MagicMirror получил информацию о вашем местоположении. Для этого вы должны получить доступ к папке модулей. Эта папка является ключом для размещения всех желаемых параметров для MagicMirror. Вы можете добавлять модули, удалять модули (я удалил список отпусков в США, потому что я живу в Канаде) и настроить параметры. Для этого войдите в терминал и введите:

cd ~ / MagicMirror / modules

Это должно открыть файл, где вы можете увидеть список модулей (ищите закрытые скобки с информацией в нем). Я начал с добавления модуля погоды и прогноза погоды. Вы уже должны увидеть модули по умолчанию с параметрами погоды, но вы заметите, что отсутствуют два важных ключа. Идентификатор местоположения и идентификатор API. Как указывалось ранее, MagicMirror использует онлайн-источники для отображения информации. Эти два идентификатора взяты с веб-сайта OpenWeatherMap (см. Ссылку внизу). Этот сайт предоставляет API для прогноза погоды, в котором нуждается этот модуль. Во-первых, зарегистрируйтесь бесплатно на сайте и получите доступ к бесплатному API. Введите этот код в разделе «appid» модуля. Затем вам нужно будет найти идентификатор города / населенного пункта. OpenWeatherMap предоставляет ОГРОМНЫЙ файл почти со всеми городами мира и идентификатором местоположения рядом с ним. Я не знаю более простого метода, но вам, возможно, придется пролистывать весь файл, пока не найдете идентификатор своего города / населенного пункта. Как только это будет найдено (эта часть серьезно отстой, мне понадобилось около 20 минут, чтобы найти идентификатор моего города), введите его в модуль погоды и прогноза погоды. После сохранения и выхода. Когда ваш Pi загрузится, вы должны увидеть погоду своего города. Я добавил дополнительный модуль, в котором вдохновляющая цитата отображается внизу экрана (см. Фото выше). Тем не менее, список модулей полностью зависит от вас! Обязательно посетите веб-страницу модуля, которую форум MagicMirror2 предоставляет на своем сайте! Есть несколько действительно крутых модулей, которые каждый может добавить, чтобы сделать их зеркало намного интереснее и веселее!

http://openweathermap.org

Шаг 5: Настройка

Этот шаг полностью зависит от вас, в зависимости от того, хотите ли вы, чтобы зеркало отображалось в портретной перспективе, а не в альбомной ориентации. Чтобы настроить Pi так, чтобы он вращался (см. Последнее фото), войдите в терминал и введите следующее:

sudo nano /boot/config.txt

Это откроет определенные системные настройки, где вы можете добавить «опцию поворота экрана». Чтобы сделать это, прокрутите до конца файла и добавьте:

#rotatethescreen

display_rotate = 1

Сохранить и выйти. Когда вы перезагрузите Pi, MagicMirror должен запуститься и отобразиться горизонтально. Кроме того, вы должны увидеть все добавленные модули в портретной перспективе. Еще одна вещь, которую вы должны добавить, чтобы настроить свой Pi - запуск pm2. После установки pm2 я обнаружил, что MagicMirror не запустится, если я не получу доступ к терминалу и не наберу несколько строк кода. Чтобы устранить эту проблему, сделайте следующее:

Войдите в терминал и введите: запуск pm2

Затем введите:

sudo env PATH = $ PATH: / usr / bin / usr / lib / node_modules / pm2 / bin / pm2 при запуске systemd -u pi --hp / home / pi

После, получите доступ к сценарию, набрав:

нано мм.ш

Затем, добавив:

DISPLAY =: 0 нпм старта

Сохранить и выйти. Теперь, когда ваш Pi запускается, MagicMirror должен автоматически запуститься

Также было трудно найти, как отключить заставку, просто потому, что вы хотите постоянно видеть дисплей за зеркалом. Для этого вам нужно получить доступ к терминалу и набрать:

sudo nano /boot/config.txt

Затем добавьте:

#eliminatescreensaver
hdmi_blanking = 1

Сохраните и выйдите, затем получите доступ к другому файлу в терминале, набрав:

sudo nano ~ / .config / lxsession / LXDE-pi / автозапуск

Затем добавьте:

@xset s 0 0
@xset с непустой
@xset s noexpose
@xset dpms 0 0 0

Сохраните и выйдите, затем перезагрузите ваш Pi

Шаг 6: Рамка

Хотя каркас относительно прост в сборке, есть несколько важных вещей, которые вы должны сделать, чтобы подготовиться. Прежде всего, имея дело с двусторонним зеркалом. В зависимости от размера вашего монитора вам, вероятно, придется разрезать зеркало до размера примерно на полдюйма больше (по ширине и длине), чем у монитора. Чтобы сделать это, измерьте и отметьте размер на зеркале (я использовал Sharpie - не волнуйтесь! На раме есть защитный пластиковый слой, который вы снимаете, когда будете готовы) и наклейте ленту на линию. Я использовал малярную ленту только потому, что она не очень прочная и легко снимается. Разрежьте ВНИМАТЕЛЬНО вдоль ленты (вы заметите, что зеркало режется по краю при резке. Постарайтесь ограничить эти разрывы, поскольку эти трещины могут повредить срок службы вашего зеркала). Как только зеркало обрезается по размеру, вы можете начать делать раму. С рамой вам нужно будет сделать две порции. Внутренний корпус и внешняя рама. Для этого измерьте монитор и обрежьте две части дерева примерно на 1,5 дюйма больше, чем длина монитора (см. Фото выше). Затем отрежьте еще две части, которые помещаются между большими частями. Используйте деревянный клей и зажимы, чтобы установить это. Чтобы ускорить процесс, вы можете сверлить винт по углам, чтобы лучше удерживать его вместе. Чтобы сделать внешнюю рамку (см. Вторую фотографию), отрежьте четыре части с разрезами по 45 градусов на каждом конце (помните, что, когда вы устанавливаете внешнюю рамку на внутреннем корпусе, вы должны расположить ее так, чтобы полпути на 45 срезах опиралось на Корпус). После того, как рамка установлена ​​и стабилизируется, поместите зеркало между рамкой и монитором. Вверните 3D-кронштейны, убедившись, что они надежно закреплены. В этот момент вы можете подключить Pi и блок питания, и MagicMirror должен запуститься. Вы должны увидеть дисплей за зеркалом (дата, время, все, что вы положили в программу). Поздравляем, теперь у вас есть собственное умное зеркало!

Шаг 7: Завершение

Если у вас есть какие-либо вопросы, пожалуйста, оставьте комментарий! Я хотел бы помочь с любыми вопросами или идеями, которые у вас есть! Это был удивительный проект, в котором можно было принять участие, все благодаря Hacker House! Я хотел бы отметить одну вещь: я настоятельно рекомендую вам купить радиатор для Pi. Поскольку эта программа предназначена для постоянной работы, ваш процессор будет невероятно горячим. Покупка радиатора позволит вашему умному зеркалу работать более безопасно, а также снимет стресс, который испытывает Pi во время работы. Я надеюсь, что вы попробуете этот проект, он может быть действительно полезным и интересным, что вы можете повесить в любой комнате. Большое спасибо за посещение моей страницы, надеюсь, я добавлю несколько интересных модулей в зеркало, с которыми я могу помочь вам, ребята (AI, датчик движения, сигнализация и т. Д.).