Word Clock для Android
Компоненты и расходные материалы
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
![]() |
| × | 1 | |||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
Необходимые инструменты и машины
![]() |
|
Приложения и онлайн-сервисы
![]() |
| |||
![]() |
| |||
![]() |
|
Об этом проекте
А как насчет часов, говорящих на языке пользователя? Вот оно!
Основная идея этих часов заключается в том, что в течение дня будут включены только буквы, необходимые для создания текущего времени в словах, а остальные - выключены.
Этот проект является прекрасным примером устройства Smart Home, обеспечивающего плавную интеграцию с Google Assistant, что позволяет естественным образом взаимодействовать с помощью голосовых команд, и все это в конечном итоге красиво выглядит и может быть размещено в любой гостиной.
Создайте свой
Первое, что нужно сделать, это создать макет со всеми буквами и вырезать его лазером нужного размера, чтобы он поместился в рамке изображения, и чтобы каждая буква находилась на том же расстоянии друг от друга, что и светодиоды на полосе.
В репозиторий проекта я поместил векторные файлы как для английской, так и для итальянской версии часов, а в будущем и других языков:
- Английский макет для лазерной резки
- Итальянский макет лазерной резки

Что касается светодиодов, то проект будет работать как с лентами WS2801, так и с WS2812B. Единственное отличие состоит в том, что светодиоды WS2801 будут работать напрямую с Raspberry Pi (или другой платой, совместимой с Android Things), в то время как светодиоды WS2812B потребуют отдельного блока для управления ими (я использовал Arduino Nano, подключенный к плате Android Things через последовательное соединение USB. ). Исходный код приложения Android Things в репозитории будет содержать два варианта:по одному для каждого формата светодиодов и соответствующей схемы.
Нам нужно разрезать и собрать ленту светодиодов так, чтобы она образовала что-то вроде зигзагообразного узора. Он будет размещен за раскладкой букв, каждый светодиод будет отвечать за освещение одной буквы.


Нам нужно быть уверенными, что свет от одного светодиода будет направлен на одну букву, а не распространится на соседние. Я решил эту проблему, просверлив несколько отверстий в дереве, по одному на каждую букву, достаточно широкой, чтобы вместить всю букву.



Затем светодиоды помещаются внутрь отверстия и прикрепил с помощью скотча.

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

Теперь мы можем подключить светодиоды к плате Android Things, в зависимости от формата светодиодов, который мы выбираем:


Перед созданием приложения с помощью Android Studio нам нужно выбрать правильную версию приложения из вариантов сборки . меню Android Studio:

Здесь у нас есть по одной версии для каждой комбинации языка макета и формата светодиода.
Мы создаем приложение и запускаем его на доске Android Things после установки правильного параметра для сети Wi-Fi. При наличии активного интернированного соединения Android автоматически установит текущее время и начнет отображать его, включая правильные буквы, образующие временное предложение.

В случае отсутствия подключения к Интернету после перезагрузки отобразится соответствующее состояние ошибки:

Сопутствующее приложение для Android
В репозитории GitHub также присутствует код для мобильного приложения-компаньона Android, который позволяет пользователю изменять цвет светодиодов и часовой пояс (скоро) часов.
После установки и запуска приложение будет искать часы в диапазоне, используя Android Nearby API, без какой-либо пользовательской конфигурации. Как только часы найдены, отображается цветовая палитра, и как только пользователь выбирает новый цвет, светодиоды обновляются с использованием этого цвета.

Умный дом
С помощью Умного дома можно изменить цвет светодиодов часов через Google Ассистент. Это приведет к тому, что функция Firebase изменит некоторые значения в базе данных Firebase Realtime проекта, которые будут считаны доской Android Things. Затем изменения будут отражены на реальных часах.
В репозитории GitHub можно найти все необходимые шаги для настройки Умного дома для Word Clock, и после этого можно будет управлять как цветом, так и яркостью, как показано в следующем видео:
Код
Часы со словом Android Things на Github
https://github.com/danybony/word-clock/tree/master/AndroidThingsСхема
Прямое подключение 4 проводов, необходимых для светодиодной ленты WS2801, к плате Android Things ws2801_NrdL4yHYgS.fzz Для светодиодов WS2812B нам нужно использовать внешний модуль (в данном случае Arduino Nano) в качестве человека посередине между светодиодами и платой Android Things. ws2812b_dE6hG5tmEZ.fzzПроизводственный процесс