Оглавление:

Матричные настенные часы O-R-A со светодиодной подсветкой и др. ** обновлено, июль 2019 г. **: 6 шагов (с изображениями)
Матричные настенные часы O-R-A со светодиодной подсветкой и др. ** обновлено, июль 2019 г. **: 6 шагов (с изображениями)

Видео: Матричные настенные часы O-R-A со светодиодной подсветкой и др. ** обновлено, июль 2019 г. **: 6 шагов (с изображениями)

Видео: Матричные настенные часы O-R-A со светодиодной подсветкой и др. ** обновлено, июль 2019 г. **: 6 шагов (с изображениями)
Видео: 🤯Вызов принят: часы из часов на дисплее из дисплеев! 2024, Декабрь
Anonim
Image
Image
Матричные настенные часы O-R-A со светодиодной подсветкой и многое другое ** обновлено, июль 2019 г. **
Матричные настенные часы O-R-A со светодиодной подсветкой и многое другое ** обновлено, июль 2019 г. **
Матричные настенные часы O-R-A со светодиодной подсветкой и многое другое ** обновлено, июль 2019 г. **
Матричные настенные часы O-R-A со светодиодной подсветкой и многое другое ** обновлено, июль 2019 г. **
Матричные настенные часы O-R-A со светодиодной подсветкой и многое другое ** обновлено, июль 2019 г. **
Матричные настенные часы O-R-A со светодиодной подсветкой и многое другое ** обновлено, июль 2019 г. **

Привет. Вот я с новым проектом под названием O-R-A

Это настенные часы с матрицей и светодиодной подсветкой RGB, которые отображают:

  • час: минута
  • температура
  • влажность
  • значок текущих погодных условий
  • События Календаря Google и уведомления о напоминаниях за 1 час

в определенное время он показывает:

  • Календарь Google Календарь сегодня и список завтрашних событий
  • прогноз погоды
  • последние новости

Зависимые функции:

  • текущая дата
  • Волшебный шар 8
  • Кухонный таймер

Для любой функциональности устройство воспроизводит другой звуковой сигнал. Для любых погодных условий есть соответствующий аудиофайл, который будет воспроизводиться при вызове функции.

Такие функции, как список календаря Google, прогноз погоды, RSS-новости, запускаются в заранее выбранное время, когда устройство находится в «режиме часов», их также можно вызвать непосредственно с помощью переключателей. Еще одна функция в «режиме часов» - отображение текущего дня / месяца / года. Его можно запустить, нажав кнопку ENTER. Нажав кнопку ИЗМЕНИТЬ СОСТОЯНИЕ, а затем кнопку ВВОД в течение 3 секунд в «режиме часов», вы можете войти в меню параметров. Кнопка ИЗМЕНИТЬ СОСТОЯНИЕ предназначена для прокрутки внутри меню, кнопка ВВОД - для подтверждения выбранной опции.

Этот проект является развитием моих предыдущих LEGOLED и TEMPO. Матричная панель со светодиодной подсветкой RGB теперь имеет разрешение 32x64, что позволяет отображать более понятную графику, фиксированный и прокручиваемый текст одновременно. Используя функции TEMPO, устройство включается и выключается автоматически без каких-либо кнопок или внешнего таймера. Модуль PIR обнаруживает присутствие людей, поэтому включает / выключает дисплей.

Прогноз погоды и данные календаря собираются каждую минуту с помощью Календаря Google и Open Weather Map.

Этот проект полностью настраивается, начиная с Raspberry PI B +, двухмодульной светодиодной матрицы 16x64 rgb и блока питания. Его можно расширить, как это сделал я, добавив звуковые карты USB, динамики, схему включения / выключения питания.

Шаг 1. Что вам нужно

  • Raspberry Pi B + (со встроенным Wi-Fi или донглом)
  • 2 x 16x64 светодиодных матрицы RGB или 2 x 32x32
  • стандартная рама (примерно 40x50 см и глубиной 3 см)
  • матовый пластиковый лист
  • оконная солнечная пленка
  • ПС 5В 10А
  • кабели
  • термореактивная оболочка (*)
  • релейный модуль (*)
  • дополнительный PS для аудиоусилителя (*)
  • Модуль звукового усилителя мощностью 3 Вт (*)
  • динамики (*)
  • Звуковая карта USB (*)
  • 2 х микровыключателя (*)
  • PIR (*)
  • Attiny85 (*)
  • DS3231 (*)
  • Mosfet IRF540 (*)
  • Резисторы: 3x1K, 2x10K, 1x2K (*)
  • клеммная колодка (*)
  • полоски жатки с внутренней резьбой (*)
  • полоски заголовка наружная (*)

(*) по желанию

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

Это руководство в основном основано на библиотеке Raspbian Jessie Lite, Python 2.7 и RGB LED MATRIX от пользователя Hzeller Github.

Прежде всего, обновите и обновите RPI

Установить git

~ $ sudo apt-get install git

Загрузите библиотеку RGB LED MATRIX с Github

~ $ git clone

~ $ cd rpi-rgb-led-матрица

~ $ sudo make

черный список внутренней звуковой карты RPI

~ $ cat << EOF | sudo tee /etc/modprobe.d/blacklist-rgb-matrix.conf

черный список snd_bcm2835

EOF

~ $ sudo update-initramfs -u

Установите параметры внешней звуковой карты, если нужны звуковые возможности:

~ $ sudo nano /usr/share/alsa/alsa.conf

изменение:

defaults.ctl.card 0

defaults.pcm.card 0

к

defaults.ctl.card 1

defaults.pcm.card 1

затем перезагрузитесь.

Теперь установите матричную библиотеку

~ $ cd / home / pi / rpi-rgb-led-матрица

~ $ sudo apt-get update && sudo apt-get install python2.7-dev python-Pillow -y

~ $ make build-python

~ $ sudo make install-python

и установите другие необходимые библиотеки:

~ $ sudo easy_install pip

~ $ sudo pip install

Скопируйте скрипт samplebase.py из ~ / rpi-rgb-led-matrix / bindings / python / samples / в домашний каталог

Получите бесплатную регистрацию ключа API, чтобы открыть карту погоды

Установить сейчас оболочку OWM Python для PYthon 2.7 (спасибо пользователю CSPARPAGithub)

~ $ sudo pip install git +

Получите учетные данные Календаря Google, следуя инструкциям в API Календаря Google.

Для воспроизведения звука установите Pygame

~ $ sudo apt-get install python-pygame

Для RSS-каналов необходимо установить Feedparser.

~ $ sudo pip установить feedparser

скопируйте мой скрипт ORAeng_131.py (английская версия) или ORAita_131.py (итальянская версия) в домашний каталог

создавать папки для звуков и изображений:

mkdir dbsounds

mkdir owm

скачайте и скопируйте все файлы-p.webp

www.dropbox.com/sh/nemyfcj1a1i18ic/AAB1W7I6lg5EgqL1gJZPWVTxa?dl=0

добавьте свои учетные данные OWM в строку 69 (API_key)

укажите город для прогноза погоды (проверьте, входит ли он в OWM и правильное ли название принято) в строках 213, 215

obs = owm.weather_at_place ('Неаполь, Италия')

fc = owm.three_hours_forecast ('Неаполь, Италия')

********************************* ОБНОВЛЕНИЕ 28/7/2019 ********** ******************

Новый Google Calendar API создает проблемы. Я решил удалить некоторые модули:

~ $ sudo apt-get remove --purge python-setuptools

~ $ sudo apt-get автоудаление python-pyasn1

попробуйте запустить скрипт

~ $ sudo python ORAeng_150.py # или ORAita_150.py для итальянской версии

в первый раз скрипт запросит авторизацию GCAL. Щелкните ссылку на учетные данные API Google. Тогда дайте разрешение, если все в порядке, вы увидите, что часы начнутся.

из-за чрезмерного использования ОЗУ через несколько часов я написал сценарий, который просто перезапускает сценарий Python, когда использование ОЗУ превышает пороговый уровень. Затем скопируйте в домашний каталог скрипт с именем memcheck, переименовав его в memcheck.sh и добавьте в crontab -e вместе основной скрипт

* / 5 * * * * bash /home/pi/memcheck.sh@reboot sudo python /home/pi/ORAeng_150.py

Шаг 3: Сценарии

Основной сценарий необходимо изменить в соответствии с вашими потребностями. Предполагая, что учетные данные OWM и Goggle Calendar заданы как соответствующие инструкции API, наиболее важными параметрами являются:

список событий календаря, выполняющихся каждый час на 2, 32 минуте (см. строку 65 скрипта)

погодные условия и прогноз выполняются каждый час на 7, 37 минуте (см. строку 66 скрипта)

последние новости каждый час на 11-й минуте (см. строку сценария 67)

Последние новости rss канал. Внутри скрипта установлен Instructable RSS, но его можно изменить. (см. строку сценария 366)

Очевидно, что скрипт отдает приоритет приходящим календарным событиям или уведомлениям-напоминаниям. Иногда часы не выполняют свои функции, чтобы избежать пересечения функций.

Таймер включения / выключения Attiny85 необходимо запрограммировать, загрузив скетч Tempo_V1_9_1Mhz_bugfix.ino.

Это позволяет включать устройство в 8 часов утра и выключать в 23. Для получения дополнительной информации см. Руководство.

Шаг 4: Схема

Схема
Схема
Схема
Схема
Схема
Схема

Схема состоит в основном из 3-х секций.

- таймер включения / выключения, управляемый модулем DS3231, Attiny85 и Mosfet

- переключатель для ручного управления функциями часов

- секция подключения, где проложены кабели для данных и питания RGB LED Matrix, аудиоусилителя и Raspberry Pi

Не упоминается резистивный делитель напряжения, который позволяет RPI считывать сигнал HIGH / LOW 5V от Attiny85.

Переключатели подключаются к выводу RPI и GND напрямую с помощью внутренних резисторов.

Таймер Attiny85 взят из моего предыдущего проекта под названием TEMPO. По сути, DS3231 отправляет сигнал LOW на вывод прерывания Attiny85, который выводит его из спящего режима. При пробуждении Attiny85 отправляет HIGH сигнал на транзистор Mosfet, активируя цепь питания для RPI, светодиодной матрицы и аудиоусилителя (если не подключен к дополнительному PS через реле, как моя последняя конфигурация).

Чтобы выключить RPI, мой сценарий предполагает, что RPI прослушивает цифровой сигнал на выводе 14, когда он ВЫСОКИЙ, называется командой выключения. Затем RPI выполняет правильный процесс выключения, затем через одну минуту Attiny85 возвращается в спящий режим, а Mosfet получает сигнал LOW, который выключает все устройство. Это грубый, но эффективный процесс.

Модуль PIR не является обязательным и подключается непосредственно к RPI GPIO.

Моя конфигурация требует, чтобы следующие контакты RPI GPIO были подключены к:

15 в PIR

14 к контакту 3 Attiny85 через делитель напряжения

21 к релейному модулю

2 для переключения (КНОПКА ВВОДА)

3 для переключения (КНОПКА ИЗМЕНЕНИЯ СОСТОЯНИЯ)

Проблемы:

- шум от источника питания LED Matrix, решаемый с помощью небольшого PS только для аудиоусилителя. Дополнительное реле позволяет включать усилитель только при необходимости. Это может вызвать шум при включении / выключении.

Схема была вытравлена с помощью медной пластины, 3D-принтера, маркера и хлорида железа.

Шаг 5: Сборка

Сборка
Сборка
Сборка
Сборка
Сборка
Сборка
Сборка
Сборка

Я адаптировал для этого проекта стандартную раму 40x50 см вместе с деталями, напечатанными на 3D-принтере, и некоторыми дополнительными аксессуарами.

Стекло защищено оконной солнечной пленкой и матовым пластиковым листом. Светодиодную матрицу необходимо держать на расстоянии около 1 см от стекла, чтобы не видеть белые внутренние светодиоды. Маленькие винты необходимы как гайки и болты M3. Обязательны кабели и термореактивная оболочка.

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

Шаг 6: А теперь?

И сейчас ?
И сейчас ?
И сейчас ?
И сейчас ?

Следующим шагом будет добавление датчика температуры, активация возможностей bluetooth и, почему бы и нет, интернет-радио плеера до максимального потенциала Raspberry Pi.

до свидания

Конкурс часов
Конкурс часов
Конкурс часов
Конкурс часов

Финалист в конкурсе часов

Рекомендуемые: