Оглавление:

Свет елки, управляемый игрушкой: 12 шагов (с картинками)
Свет елки, управляемый игрушкой: 12 шагов (с картинками)

Видео: Свет елки, управляемый игрушкой: 12 шагов (с картинками)

Видео: Свет елки, управляемый игрушкой: 12 шагов (с картинками)
Видео: Света и Богдан играют в ГИГАНТСКУЮ ИГРУ - АВТОГОНКИ ! 2024, Ноябрь
Anonim
Image
Image
Подготовка. Светодиодная полоса
Подготовка. Светодиодная полоса

Привет создателям!

Скоро Рождество и Новый год. Это праздничное настроение, подарки и, конечно же, елка, украшенная яркими разноцветными огоньками.

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

В этом руководстве я расскажу, как это сделать.

Шаг 1. Идея

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

Шаг 2: Подготовка. Светодиодная полоса

Подготовка. Светодиодная полоса
Подготовка. Светодиодная полоса
Подготовка. Светодиодная полоса
Подготовка. Светодиодная полоса
Подготовка. Светодиодная полоса
Подготовка. Светодиодная полоса

Во-первых, мне нужно найти замену обычным рождественским огням.

Новые огни должны быть яркими, цветными, а главное, их должно быть легко программировать.

Для рождественских огней я выбрал адресную программируемую цифровую светодиодную ленту RGB ws2812b. Эти светодиодные ленты очень популярны, их можно найти где угодно. Их легко подключить к различным контроллерам Arduino. Такие светодиоды продаются лентами по несколько десятков штук и питаются от 5 напряжений 12 или 24 В постоянного тока. Вы можете связать несколько лент в ряд и управлять огромным количеством светодиодов.

Я нашла дома пару таких полосок. Мои полоски имеют 50 светодиодов каждая и питаются от 5 В постоянного тока.

2 x WS2812B Предварительно припаянные узлы светодиодного модуля ~ 18 $

Вот возможная замена из магазина Amazon:

  • WS2812b 5 м 60 светодиодов / пикселей / м Гибкая светодиодная лента с индивидуальной адресацией
  • Светодиодная лента с индивидуальной адресацией ALITOVE WS2812B, 16,4 фута

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

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

Шаг 3: Подготовка. Игрушка

Подготовка. Игрушка
Подготовка. Игрушка
Подготовка. Игрушка
Подготовка. Игрушка

Найдите игрушку и решите, где разместить контроллер светодиодной ленты.

Этот шаг самый важный, потому что результат будут оценивать дети =).

В соседнем магазине игрушек я нашла замечательного новогоднего медведя. Вы можете улучшить игрушку, которая у вас уже есть.

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

Купила два куска ткани с забавными узорами. Один мягкий для основы, а второй тонкий для верхнего слоя.

Шаг 4: Подготовка. Электроника

Подготовка. Электроника
Подготовка. Электроника
Подготовка. Электроника
Подготовка. Электроника
Подготовка. Электроника
Подготовка. Электроника

Чтобы игрушка стала умнее, нужны электронные компоненты.

Использую коммутационные платы и щиты Arduino из магазина Amperka. Как по мне, они очень удобны из-за модульной конструкции. Модули легко комбинируются без пайки.

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

Контроллер

Я использую отладочную плату ESP-12 на базе микросхемы ESP8266. Эти платы очень маленькие и обладают достаточной функциональностью. Хороший выбор для небольших проектов, требующих ограниченного пространства, даже если вы не используете Wi-Fi и подключаетесь к Интернету.

1 x Амперка Wi-Fi слот ~ 19 $

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

Также он имеет квадратную форму! Он должен легко уместиться в небольшой подарочной коробке для медведя.

Возможная замена:

  • ESP-12E NODEMCU
  • WEMOS D1 MINI

Датчик цвета

Для определения цвета я использую плату датчика цвета Amperka Troyka TCS34725. Мой датчик совместим с платой контроллера, но его можно заменить на этот:

1 x датчик цвета RGB с ИК-фильтром и белым светодиодом - TCS34725 ~ 8 $

Этот датчик использует интерфейс I2C для связи. Он имеет встроенный яркий светодиод и расширенные настройки, такие как усиление цвета или интеграция цвета для более точного распознавания.

Кнопка

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

1 х кнопочный модуль Амперка Тройка ~ 1 $

Возможная замена:

  • Кнопка выключателя питания Adafruit
  • Электронные строительные блоки кнопочный модуль

Преобразователь переменного напряжения в постоянный

Для питания светодиодной ленты и контроллера я купил блок питания AC-DC 5V 8A.

1 блок питания 5V 8.0A 40W ~ 16 $

Моя светодиодная лента питается от 5В. Сила тока 8А хватает на огромное количество светодиодов. Я также питаю контроллер ESP от этого блока питания. Обязательно приобретайте блоки питания в изолированных корпусах, без открытых контактных площадок!

Возможная замена:

  • Преобразователь блока питания адаптера переменного тока в постоянный ток ALITOVE 5V 8A 40W
  • MEAN WELL оригинал LPV-60-5 5V 8A meanwell LPV-60 5V 40W

По желанию:

Преобразователь напряжения постоянного тока в постоянный и драйвер WS2812b

Для контроллеров Arduino сигнальный провод светодиодной ленты ws2812b можно напрямую подключить к контактам на плате контроллера. Большинство контактов платы разработки ESP8266 несовместимы с логикой 5 В. Теперь лучше подключать светодиодную ленту к таким контроллерам напрямую. Для решения этой проблемы я использую этот модуль.

1 x драйвер светодиодной ленты Amperka Troyka ws2812 ~ 9 $

Я использую этот модуль, потому что он легко подключается к моему контроллеру. Также модуль имеет логический буфер на 5 Вольт и преобразователь постоянного напряжения 5 или 3,3 В. Таким образом, контроллер ESP может питаться от одного провода вместе со светодиодной лентой 12 или 24 В.

Шаг 5: Сборка. Электроника

Сборка. Электроника
Сборка. Электроника
Сборка. Электроника
Сборка. Электроника
Сборка. Электроника
Сборка. Электроника
Сборка. Электроника
Сборка. Электроника

Соберите электронные компоненты. Я подключил свои компоненты, как показано на прилагаемой схеме.

Схема может отличаться в зависимости от ваших комплектующих, но смысл остается прежним.

  • Подключите кнопку к контроллеру. Я подключил его к выводу A2 Esp8266. Если вы не используете модуль, вы можете подключить обычную кнопку мгновенного действия через резистор.
  • Подключите датчик цвета к контроллеру. Коммутационные платы датчика цвета TCS34725 обмениваются данными по шине I2C. Свяжите контакты SDA и SCL между датчиком и контроллером. Если на вашей плате датчика есть светодиодный вывод для управления встроенным светодиодом, подключите его. Я подключил свой светодиодный вывод к выводу A0 Esp8266.
  • Подключите один конец светодиодной ленты к контроллеру. Светодиодная лента ws2812b подключается к контроллеру с помощью вывода DI. Логическое напряжение для светодиодных лент ws2812b составляет 5В. Если вы используете платы, подобные Arduino, вы можете подключить вывод DI напрямую к выводу контроллера. Напряжение логического уровня для большинства плат Esp8266 составляет 3,3 В, поэтому используйте преобразователь логического уровня или драйвер светодиодной ленты. Я припаял провод DI Strip к плате драйвера и подключил плату драйвера к контакту A5 Esp8266.
  • Присоедините другой конец светодиодной ленты к блоку питания. Тот, у которого есть булавка DO. При необходимости припаяйте вилку к блоку питания. Не забываем изолировать провода.

Моя светодиодная лента ws2812b питается от 5В. Я запитал и полосу, и контроллер от одного источника питания AC-DC 5V. Если ваша светодиодная лента работает на 12 или 24 В, используйте понижающий преобразователь напряжения для питания всей электроники от одного источника питания.

Шаг 6: XOD

XOD
XOD
XOD
XOD

Запрограммируем контроллер.

Как и в предыдущих проектах, я использую среду визуального программирования XOD для прошивки контроллера.

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

  • gabbapeople / christmas-tree - Библиотека содержит драйвер ws2811 Neopixel и оболочку для датчика цвета tcs34725.
  • gabbapeople / color - Библиотека для работы с цветом в XOD.

Далее я собираюсь описать, как программировать это устройство в XOD.

Шаг 7: Программирование

Программирование
Программирование
Программирование
Программирование
Программирование
Программирование
Программирование
Программирование

Вот необходимые вам узлы:

Узел tsc-color-sensor.

Это первый узел, который нужно разместить на патче. Он используется для измерения значения цвета от датчика. Node использует интерфейс I2C для обмена данными.

Датчик цвета определяет цвет поверхности по шкале RGB. Цвет - это результат взаимодействия источника света, объекта и наблюдателя. В случае отраженного света, свет, падающий на объект, будет отражаться или поглощаться в зависимости от характеристик поверхности. Большинство цветных датчиков содержат излучатель белого света и три датчика интенсивности света с цветными фильтрами.

  • Входные контакты LED и LUM предназначены для встроенного светодиода на коммутационной плате датчика. Этот встроенный светодиод является излучателем света датчика. Согласно моей схеме, я помещаю значение A0 на вывод светодиода и устанавливаю значение яркости 1 на вывод LUM.
  • Вывод IT устанавливает значение времени интегрирования. Этот фактор описывает количество циклов интеграции цвета. Возможные значения IT: 1, 10, 20, 42, 64, 256.
  • Значение вывода GAIN является коэффициентом усиления. Этот коэффициент усиливает цвет. Вы можете увеличить значение цвета в 4, 16 или 60 раз. Вы не можете улучшить цвет. Тогда значение на выводе GAIN должно быть равно 1. Я получил наиболее точный результат, используя значение 20 IT и значение 60 GAIN.
  • Контакт INIT запускает инициализацию датчика и устанавливает пользовательские коэффициенты. Я меняю значение вывода INIT на При загрузке.
  • Контакт UPD запускает новое считывание датчика. Пусть это значение будет Непрерывным.

Узел tcs-color-node выводит значение цвета в форме пользовательского типа цвета.

Узел ws2811

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

  • Вывод DI предназначен для номера порта платы, к которому подключена светодиодная лента или матрица. По своей схеме ставлю ему значение А5.
  • Поместите количество используемых светодиодов на контакт SIZE. У меня есть 2 светодиодные ленты по 50 диодов, соединенных друг с другом, поэтому я установил значение SIZE на 100.
  • Контакт B устанавливает общую яркость для всех светодиодов в диапазоне от 0 до 100. Я установил яркость на 80.

Этот узел инициализирует светодиодную ленту или матрицу и создает настраиваемый тип ws2811 для дальнейших операций.

Узел для всех цветов

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

  • цвет-все. Node закрашивает все светодиоды на полосе или матрице в выбранный цвет.
  • цвет-пиксель. Узел окрашивает конкретный светодиод на полосе в выбранный цвет. Поместите номер пикселя на вывод PN.
  • цвет-n-пикселей. Узел окрашивает группу из N светодиодов в выбранный цвет. Укажите номер начального светодиода группы с помощью вывода STRT. Укажите упорядоченность группы на выводе STEP. Например, чтобы раскрасить каждый второй светодиод, начиная с номера 30 и заканчивая номером 70, введите следующие значения: STRT = 30; N = 40 (70 - 30); ШАГ = 2.

В этом проекте я управляю всеми светодиодами одновременно и использую узел «Все цвета».

Я соединяю первый входной контакт узла color-all с выходным контактом узла ws2811. Затем я связываю входной контакт CLR, который принимает значение цвета, с выходным контактом датчика.

Импульс на выводе SET узла color-all запускает новый набор цветов.

Узел кнопки

Я использую кнопку, чтобы сообщить контроллеру о новом объекте перед датчиком цвета. Для этого я помещаю узел-кнопку на патч и связываю его выходной вывод PRS с выводом SET узла «Все цвета». Таким образом, нажатие на кнопку генерирует импульсный сигнал для изменения цвета.

Я прикрепил кнопку к выводу A2 Esp8266, поэтому я установил значение A2 на вывод PORT.

Узел очистки

Датчик цвета может выводить значения цвета в огромном диапазоне. Но светодиодная лента не может отображать промежуточные оттенки. Для решения этой проблемы я использую только так называемые чистые цвета. Они имеют произвольный оттенок, но всегда имеют максимальную насыщенность. Чтобы очистить значение цвета, я помещаю узел очистки между узлами tsc-color-sensor и color-all.

Патч готов, можно нажать Deploy, выбрать тип платы и загрузить на устройство.

Шаг 8: Сборка. Рамка

Сборка. Рамка
Сборка. Рамка
Сборка. Рамка
Сборка. Рамка
Сборка. Рамка
Сборка. Рамка

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

В качестве рамки я распечатала выкройку коробки на плотном картоне.

Затем согнул бока коробки и проделал квадратное отверстие для датчика цвета.

Примечание:

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

Шаг 9: Сборка. Ткань

Сборка. Ткань
Сборка. Ткань
Сборка. Ткань
Сборка. Ткань
Сборка. Ткань
Сборка. Ткань

Я кладу друг на друга две разные ткани.

Мягкая плотная ткань - для объема, а тонкая - для внешнего вида. В обеих тканях проделал еще дырочку для сенсора.

Картонную рамку закрепила на ткани обычным скотчем. Таким же образом закрепила края лунки.

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

Скажу сразу, я не лучший закройщик, поэтому не судите о качестве. знак равно

Шаг 10: Сборка. Мягкий футляр

Сборка. Мягкий футляр
Сборка. Мягкий футляр
Сборка. Мягкий футляр
Сборка. Мягкий футляр
Сборка. Мягкий футляр
Сборка. Мягкий футляр
Сборка. Мягкий футляр
Сборка. Мягкий футляр

Растянула ткань и зафиксировала этим же скотчем. Лента останется внутри футляра и не будет видна.

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

Шаг 11: Сборка. Игрушка и устройство

Сборка. Игрушка и устройство
Сборка. Игрушка и устройство
Сборка. Игрушка и устройство
Сборка. Игрушка и устройство
Сборка. Игрушка и устройство
Сборка. Игрушка и устройство

Пришила свой девайс к лапкам медвежонка.

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

Шаг 12: Результат

Результат
Результат
Результат
Результат

После того, как устройство запрограммировано и закреплено на игрушке, можно подключить светодиодную ленту и положить игрушку под елку!

Прикрепите к подарку плюшевых мишек разноцветные предметы, и елка раскрасится в такой же цвет!

Подпишитесь Если вам понравился этот мини-проект! знак равно

Будет много разных забавных инструкций.

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