Одна снежинка — ещё не снег, ещё не снег…

title1

 

 

Новогодняя снежинка на WS2812B получилась одним из самых повторяемых моих проектов.

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

Компоненты

Все компоненты подбирались на Алиэкспресс по соображениям минимальных затрат и максимально простого монтажа.

Контроллер

Практически самый дешевый из Ардуин. По цене соизмерим только DigiSpark с Attiny85

Контролер для снежинки

Arduino Pro Mini Atmega168P

 

Контроллер для снежинки

Arduino Pro Mini Atmega168P

 

Это китайский клон Arduino Pro Mini с более слабой микросхемой Atmega 168PA. В отличие от более навороченной Atmega328P, 168-й имеет вдвое меньшее ОЗУ (1Кб вместо 2-х) и ПЗУ под программу (16Кб вместо 32Кб). Еще меньше размеры и стоимость, а даташит у них общий. Дизайн платы немного отличается от продающихся сейчас Pro Mini, и кварц там стоит огромный, но в целом платы вполне годные и очень привлекательные по цене.

Контроллеры Arduino Pro Mini

Сравнение Arduino Pro Mini Atmega168p и Atmega328p

 

Светодиодная лента на WS2812B

Использование ленты в данном проекте значительно сократило трудоемкость и стоимость (если учесть все материалы) свето-динамической снежинки.

 

Светодиодная лента на WS2812B

Светодиодная лента на WS2812B

 

Светодиодная лента на WS2812B

Светодиодная лента на WS2812B

Разъемы USB

Очень удобные для пайки разъемы USB Type A

Разъемы USB Type A

Разъемы USB Type A

Разъемы USB Type A

Разъемы USB Type A

Конструкция снежинки

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

Три снежинки 250 мм - v2

Если нужны чертежи жмем сюда

Чертеж снежинки (три типа) в формате Corel Draw

 

Чертеж снежинки (три типа) в формате SVG

Сборка снежинки

Схема очень простая — шесть полосок ленты по 5-10 светодиодов. И контроллер

Схема снежинки

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

Пайка контроллера

Перед тем как приклеивать контроллер, заливаем скетч снежинки при помощи любого USB/TTLконвертера. При программирование в Arduino IDE выбираем Arduino Pro Mini 5V Atmega168

Программирование контроллера

Сам скетч можно взять здесь

Скетч снежинки Arduino/WS2812

 

От ленты отрезаем шесть полосок по пять светодиодов

Нарезка ленты для снежинки

 

Паяем входными контактами к центру (определяется стрелочками на ленте). Для монтажа я использовал провода из кабеля UTP, обрезков которых у меня скопилось великое множество.

Сборка снежинки

Припаиваем три проводка к контроллеру — земля, питание и выход на светодиоды. Полоски ленты приклеиваем на скотч, который уже есть с обратной стороны, контроллер на полоску двухстороннего скотча. Главным апгрейтом контроллера является заклеивание светодиода питания изолентой, чтобы не мешал световым эффектом. Хотя нужно отдать должное приобретенным контроллерам — светодиод питания там достаточно тусклый, чего не скажешь о ярком синем светодиоде на 13 выводе.

Сборка снежинки

 

Припаиваем провод нужной длины к USB разъемом.

USB-разъем

Теперь можно соединять половинки корпуса между собой. Для этого я использовал винты с полукруглой головкой M4 длиной 12/16мм и декоративные гайки-колпачки.
Готовые снежинки

4006

Что получилось

5000 4005 4003 4002 4001

Ну что еще сказать, на маленькую снежинку уходит ровно 0.5м ленты. Потребляет она при данных световых эффектах 270мА. Большая 510мА. Мой ноутбук вполне тянет по USB все разом. (Благо управление током зарядки и защита в нем есть)

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

Следующие же подобные устройства буду делать на ESP8266. (Цена у них теперь соизмеримая с Ардуино — около $2) Можно будет управлять снежинкой прямо со смартфона и загружать эффекты из интернета. А также координировать работу снежинок единой программой в системе «Умный Новый год» ))) Ну и конечно, лазерная резка располагает разнообразию форм.

c01 c02

 

Вы можете оставить отзыв или трекбек со своего сайта.

21 комментарий на «Одна снежинка — ещё не снег, ещё не снег…»

  1. vitfil:

    Где лазерную резку делаете?

  2. Владимир:

    Очень круто! А какое потребление тока, когда все светодиоды горят?

    • Alexey Alexey:

      При моих эффектах до 0.27А снежинка на 5 светодиодов в луче
      Если зажечь все светодиоды с максимальной яркостью, то получится 0.06A * 30 = 1.8A

  3. Юрий:

    столкнулся со странным эффектом при метровой ленте — сильные помехи по питанию

    ик-приемник подключенный к ардуине выдает случайные коды, если отключить ленту — все хорошо

    блоки питания включал разные, включая лабораторный с высоким качеством стабилизации

    конденсатор подключенный возле ленты емкостью 2000 мкФ не дал результатов

    что можно предпринять?

    Лента и контроллер на одном блоке питания

    • Alexey Alexey:

      На ленте кондеров нет?
      Кондеры должны быть 0.1мКф желательно керамика. Электролиты высокую частоту пропускают.
      Можно прямо к контроллеру подпаять.
      ИК приемник работает по прерыванию, WS2812 тоже. Видимо в момент чтения кода ИК происходит обновление WS2812.
      Можно попробовать блокировать при помощи глобальной переменной обновление WS2812 при получении первого бита на приемник ИК
      Как? Пока еще не разбирался.

      • Юрий:

        Выяснил в чем беда …
        библиотека неопиксель блокирует все прерывания — причем там дефайнами eps выпилен — но написано что работать может нестабильно

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

        Включение прерываний — приводит к паралитическому поведению ленты …

        • Alexey Alexey:

          Ловить в цикле сигнал с ИК самому. Если что-то прилетело, останавливать эффект и включать обработку кода. Первый код с пульта сбойнет, второй нормально обработается.

          • Юрий:

            нет, так не выйдет, шумов очень много на ик приемник приходит

  4. Юрий:

    спасибо
    кондеры на ленте стоят — стандартная лента

  5. Василий:

    Вам бы присмотреться к эффектам, которые на видео, цены бы вашей снежинке не было бы!
    http://www.youtube.com/watch?v=yli5DNovclA

  6. Andee:

    Ув.Автор! А можно в коде прокомментировать весь код, хочется разобраться

  7. Balzamalex:

    Уважаемый Автор. Близится следующий Новый Год. По проекту «снежинка» новостей никаких? Хочется новых эффектов 🙂

    • Alexey Alexey:

      Едут контроллеры, лента и пр. Есть масса задумок по изменению конструкции и программы

  8. Relic:

    Здравствуйте! Собираю пятилучевую звезду на елку на основе Вашего проекта, с небольшими изменениями, в связи с чем появилось несколько вопросов.
    1. Планируете ли добавить эффектов?
    2. Как насчет переключения эффектов с пульта ДУ, стоит ли закупать комплектующие, для его реализации, или ограничиться существующей конструкцией, чтобы успеть до НГ (с Алика в мой регион доставка больше месяца)?
    С уважением, Relic.
    З.Ы. Собираем звездочку с сыном — второклассником, ребенок в восторге 🙂

    • Alexey Alexey:

      На этот год немного изменил формфактор. Собираю «елочки», «фонарики» и «метеоры»
      Там добавил один интересный эффект радужной волны
      Сейчас готовлю несколько статей. Простенькие эффекты запустил даже под ATtiny13
      Сделал на повышающем стабилизаторе BL8530. Елочка с 8-ю WS2812 на одном ААА аккумуляторе проработала 2ч. На 2-х — 5 часов.

      По поводу управления — сделал на микрофоне по хлопку/двойному хлопку. Но сигнал с микрофона, подключенного напрямую к анлоговому входу слабоват. Хорошо получилось на ATtiny85 (можно взять Digi Spark). У этих контроллеров можно включить на аналоговый вход встроенный усилитель. У ATmega328 его нет.

      Так что если хотите покупайте электрентные микрофоны. DigiSpark, кстати, сегодня на распродаже можно купить меньше $1
      http://ali.pub/vrshz

      • Relic:

        Жаль распродажа быстро закончилась )
        Нахапал всякой мелочевки, авось пригодится в будущем…
        Ждем новых статей от Вас.
        P.S. От управления с пульта решил отказаться, понравилась идея управления с использованием микрофона, спасибо за мысль.

  9. Игорь:

    Добрый день!

    Алексей, на ESP8266 получилось загружать эффекты? Хотел сделать с вращением лучей, спирали цветные, у Ардуины памяти не хватает. 🙁 Или у меня мозгов.
    Tiny 13 тоже на wiring программируете?

Ваш отзыв