Оглавление:

Часы бесконечности - Arduino - WS2813 и DS3231: 5 шагов (с изображениями)
Часы бесконечности - Arduino - WS2813 и DS3231: 5 шагов (с изображениями)

Видео: Часы бесконечности - Arduino - WS2813 и DS3231: 5 шагов (с изображениями)

Видео: Часы бесконечности - Arduino - WS2813 и DS3231: 5 шагов (с изображениями)
Видео: make a flexible LED Display | Addressable Strip Light Screen | WS2813 elektric-junkys 2024, Ноябрь
Anonim
Image
Image
Часы бесконечности - Arduino - WS2813 и DS3231
Часы бесконечности - Arduino - WS2813 и DS3231

Часы бесконечности - Arduino - WS2813 и DS3231

Я хотел создать часы, и мне понравилась идея попробовать свои силы в создании часов бесконечности на Arduino. Я хотел, чтобы он был построен из обычных вещей и сам написал программу.

Что такое часы бесконечности?

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

В этом руководстве я проведу вас через шаги по созданию часов бесконечности, а затем рассмотрю некоторые настраиваемые параметры в программе.

Шаг 1: Детали, необходимые для этого проекта

Детали, необходимые для этого проекта
Детали, необходимые для этого проекта

Список деталей:

  1. Arduino Uno 6 долларов на taydaelectronics
  2. Protoshield для arduino uno. Вы можете получить один за 2,50 на Amazon здесь.
  3. Аккумулятор DS3231 plus. Вы можете получить его примерно за 3,00 на Amazon здесь.
  4. WS2813 LED 144 на 1 метр. 20 долларов на Амазоне здесь.
  5. Карбоновый пленочный резистор 470 Ом, 1 Вт, около 1 цента на Taydaelectronics.
  6. 1000 мкФ 16V электролитический конденсатор 9 центов на Taydaelectronics
  7. Блок питания 5в - Я использовал старое зарядное устройство Blackberry.
  8. 6-дюймовое круглое зеркало. около 5 долларов на Amazon
  9. 6-дюймовый акриловый диск около 10 на Amazon
  10. 2–6-дюймовые деревянные пяльцы для вышивания (да, именно так) 2 доллара за штуку на Amazon.
  11. Серебряная односторонняя зеркальная пленка. Ebay кажется самым дешевым.
  12. Ассорти из проводов.
  13. Деревянный квадратный дюбель 3/8 дюйма HomeDepot за 1,27 доллара США.
  14. старую деревянную основу для часов или другую выставочную витрину.
  15. 2 маленькие застежки-молнии.

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

Также может понадобиться паяльник.

Я ожидал, что проект будет стоить около 40 долларов.

Шаг 2: Настройте свой компьютер

Настройте свой компьютер
Настройте свой компьютер
Настройте свой компьютер
Настройте свой компьютер
Настройте свой компьютер
Настройте свой компьютер

Если это ваш первый проект Arduino:

  1. Загрузите программное обеспечение arduino с arduino.cc
  2. Подключите Arduino к ПК с помощью кабеля USB.
  3. После запуска программного обеспечения вам необходимо установить три библиотеки:

    • Щелкните меню «Эскиз», затем щелкните «Включить библиотеки», затем «Управление библиотеками…»
    • Установите две библиотеки: FastLED и RTClib. Смотрите изображения для более подробной информации.
  4. Получите Scketch Arduino из моего github

    • Я проверю код в конце, чтобы вы могли изменить его по мере необходимости.
    • На этом этапе загрузите программу Infinity_Clock_DS3231_WS2813.ino
  5. Перейдите в Sketch и Upload, чтобы загрузить Arduino.
  6. Последний раздел Instructable охватывает некоторые настраиваемые параметры.

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

Шаг 3: Подключение проекта

Электромонтаж проекта
Электромонтаж проекта
Электромонтаж проекта
Электромонтаж проекта

Если вы используете ProtoType Shield, установите его на Arduino.

Электромонтаж - самая сложная часть проекта. Я включил изображения, чтобы помочь вам увидеть, что я сделал. Я рекомендую дважды проверить все соединения перед включением.

DS3231 - Модуль часов реального времени

Вставьте модуль DS3231 в макетную плату и подключите, как показано на рисунке.

  • Земля Arduino на GND
  • Arduino 5V в VCC
  • Arduino A4 в SDA
  • Arduino A5 в SCL

На картинке я подключаю 5 В и землю к их собственному проводу на макетной плате, потому что позже мы захотим подключить внешнее питание.

Прикрепите светодиодную ленту WS2813

  • arduino 5V к вашему питанию 5V.
  • Два средних разъема - это резервные выводы данных. они идут к выводу 7

    Убедитесь, что между выводом 7 и двумя выводами данных установлен резистор на 470 Ом

  • Arduino Заземление до последнего разъема.

Подключите внешний источник питания 5 В (не рекомендуется использовать светодиодную ленту от источника питания Arduino в течение длительного времени).

  • Поместите электролитический конденсатор 1000 мкФ между выводами.
  • Подключите питание и заземление к Arduino Power (5 В) и земле (GND).

Я не рекомендую одновременно подключать к Arduino внешнее питание и USB.

Шаг 4: Создайте бесконечное зеркало

Создайте зеркало бесконечности
Создайте зеркало бесконечности

Шаги по созданию Зеркала Бесконечности:

  1. Нанесите пленку на акриловые пластины. Это сделает ваше одностороннее зеркало.
  2. Поместите акриловый диск в пяльцы. Затяните винт, чтобы он не соскользнул
  3. Вставьте зеркало в другой обруч для вышивки. Затяните винт.
  4. Квадратный дюбель разрежьте на небольшие участки. около 1/2 дюйма
  5. Оберните светодиодную ленту так, чтобы светодиоды указывали внутри круга.

    1. Используйте стяжки, чтобы удерживать светодиод на месте.
    2. Возможно, вам придется сделать надрез на галстуке-молнии.
  6. Наденьте петлю на зеркало

    1. Используйте деревянные бруски в качестве распорок
    2. Приклейте блоки на место. Они должны быть достаточно надежными, чтобы удерживать светодиод на месте.
  7. Поместите акриловое зеркало поверх зеркала / светодиодов и приклейте на место.

Шаг 5: Код

Код
Код
Код
Код

Программа использует библиотеки Real Time Clock и Fastled.

Вот несколько фрагментов кода для настройки поведения.

  • OFFSET - это перекрытие. Программа ожидает, что перекрытие будет от LED0. У меня смещение 3 светодиода.
  • CLOCKSTART - это место, где на часах полдень. Светодиод 30 откладывает его от электрических соединений.

Я написал программу для использования цветов HTML. Вы можете получить их на https://htmlcolorcodes.com/. Просто замените # на 0x в программе.

Вы можете изменить фон для am / pm

  • backgroundAM = 0x070707;
  • backgroundPM = 0x646D7E;

Светодиодные стрелки часов:

  • hourHand = 0x000FFF;
  • minHand = 0x00CC00;
  • secHand = 0xcc0000;

Чтобы выделить его, я добавил возможность иметь 3 светодиода для часовой стрелки, но вы можете изменить цвет по обе стороны от средней, чтобы она выделялась.

  • theeledhour = true; // вы можете сделать это истинным или ложным
  • extraHourHand = 0x00001F;

Еще одна приятная функция - RTClib обнаружит, что из вашего DS3231 была удалена батарея, и установит время на время компиляции ПК. Это хорошая особенность для нового DS3231.

Если вы не получили набросок в начале документа, его можно найти на GitHub.

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

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