Новогодняя гирлянда-экран на ws2812 и arduino

Новогодняя гирлянда-экран на ws2812 и arduino

  • Цена: 41 $ (покупал у другого продавца)

Применение WS2812 в качестве новогодней гирлянды-экрана и что из этого вышло. Опыт использования в три сезона. https:// aliexpress.com/item/1m-4m-5m-WS2812B-Smart-led-pixel-strip-Black-White-PCB-30-60-144-leds-m/2036819167.htmlВ последние годы всё больше и больше окон в нашем городе к Новому году украшаются красивыми гирляндами, мрачные при дневном свете окна домов по вечерам преображаются, напоминая, что праздник уже скоро. Я однажды подумал, а может мне тоже поучаствовать?

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

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

Сразу скажу, мысли о возможности трансляции какой-нибудь рекламы на этой гирлянде-экране не только на новый год у меня были, но так как все окна в моей квартире выходят во двор П-образного дома, а не на центральную улицу, от этой идеи я сразу отказался и в вопросах законности подобных действий у нас в стране не стал разбираться.Итак, в ноябре 2014 года была заказана лента с WS2812. Данного лота, как и других товаров в этом магазине уже не существует, потому указал ссылку на аналогичный товар у другого продавца (сам у этого продавца не покупал, но рейтинг хороший, а лента идентичная).

Цена товара на тот момент составляла 41$ за 4-х метровую не герметичную ленту из 240 светодиодов (60 штук на метр). Сейчас можно найти аналогичные лоты гораздо дешевле.Пока посылка была в пути, начал разбираться в особенностях управления.

Варианты подключенияУправление экранами с использованием данных светодиодов возможно несколькими способами:— отдельно купленным контроллером — Arduino как контроллер, управляющий экраном спецэффектами из прошитого в него скетча.— Arduino как контроллер, управляемый программой, установленной на компьютере.Первый вариант мне не понравился, так как я только начал разбираться с этой темой и покупать узкоспециализированную железку без ясности, что же в результате получится из экрана я счёл неразумным.Второй вариант гораздо лучше, для большинства случаев будет достаточен. Но хотелось чего-то большего.Третий вариант мне понравился больше всего своей гибкостью (очень нравится смешение разных эффектов) и дополнительными возможностями (например, можно отображать на будущий экран-гирлянду изображения из любого видеофайла, тв-тюнера, web-камеры, анимированного gif и прочее), к тому же свободных ресурсов на расположенном рядом с предполагаемым местом установки гирлянды медиасервере с HMS (atom d525, Windows 7) имеется более чем достаточно.

При желании можно управлять с Raspberry\Banana\Orange Pi и подобных.Просмотрел, какими программами пользуются в качестве управляющих. Первую, которую нашёл, была Glediator. Составил подборку эффектов в программе.Стоит отметить, что также существует более продвинутая программа для управления пикселями — JINX.

До сих пор использую Glediator, так как мне его полностью хватает.Недавно прочитал, что существует возможность воспроизведения файлов Glediator’а и JINX в Arduino с подключённой SD-картой без использования компьютера. Хотя там, судя по отзывам, есть проблемы со скоростью отображения на экранах с более 200 пикселями.Количество 240 пикселей выбрал из-за удобства размещения в четырёх секциях окна лоджии четырьмя сегментами 6 на 10 светодиодов.

Схема подключения: Деление на секции было необходимо для сохранения возможности открытия двух центральных створок окна. Сразу решил, что крепление конструкции гирлянды-экрана будет скотчем на стекло внутри помещения (потому ленту брал не герметичную), свет от пикселей направлен на улицу. После получения ленты был произведён её прогон через скетч Arduino для ws2812.

Видео и фото этого эксперимента не сохранилось, просто бегущая цветная волна подряд по всем пикселям. В качестве контроллера использовал Arduino pro mini. В качестве источника питания использовал выход 5 вольт от блока питания ATX.

При проверке ни одного неработающего пикселя не обнаружено. Выбор был сделан, положительный тест произведён, настало время подготовки к изготовлению матрицы экрана. На полу была разложена змейкой лента, повторяющая контуры будущего экрана.

В Arduino залит скетч с сайта Glediatora (предварительно в скетче установлен понравившийся пин и количество пикселей в ленте), настроил программу и проверка началась. И тут оказалось, что для 240 пикселей скорости было недостаточно. Что было тому виной — Arduino или usb-ttl переходник, выяснять не стал, просто заменил их на Arduino mega с установленной скоростью 1000000 в Glediator.

Кстати, для работы программы с COM-портом необходимо добавить в директорию Java файлы библиотеки RXTX, а для работы скетча под Glediator необходимо разрезать дорожку между контактами «RESET-EN» на Mege. Настройка программы GlediatorНемного пришлось повозиться с настройкой Glediatora.

Для моего экрана с матрицей 24 х 10 пикселей (ширина х высота), вход сигнала — левый нижний угол (если смотреть со стороны работающего экрана) настройки получились такие:Пришло время резки ленты на отдельные кусочки по 1 пикселю, для чего на ней имеется разметка с подготовленными площадками под пайку.Лента разрезана, нарезаны необходимые куски проводов для получения необходимых размеров ячейки пикселей. Провода выбрал гибкие ПВС с сечением для сигнального и питания вертикальных столбцов — 0,5 мм2, для подвода к вертикальным участкам 2,5 мм2.

Сечения проводов выбраны для уменьшения падения напряжения. Кстати, в работе по зачистке проводов очень помог стриппер КВТ WS-04. Пайка заняла пару вечеров.

Изолировать места пайки не стал, так как собранное изделие будет находиться внутри сухого помещения, а «нечаянно» замыкать контакты некому.На второй год использования выяснился небольшой недостаток — при креплении на стекло окна от одного пикселя оторвался сигнальный провод вместе с контактной площадкой на ленте.

Вышел из этой ситуации, просто припаяв сигнальный кабель напрямую к контакту пикселя. Видео работы с улицы:Вид работающего экрана из квартиры:Достоинства:— относительно дешево;— применение отдельных пикселей даёт возможность составить экран любой формы, в том числе в разных плоскостях;— нет необходимости в специальных управляющих контроллерах, на время можно задействовать Arduino.Недостатки:— низкая нагрузочная способность контактных площадок ленты;— ограничение в количестве пикселей на одну управляющую линию — максимум 1024, типовое значение 512 для некоторых прошивок Arduino.

Хотя это скорее условный недостаток.Вывод: применение пикселей на WS2812 дает возможность создавать довольно сложные световые украшения с недорогими средствами управления. Покупал за свои, покупкой полностью удовлетворён. P.S.

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

Arduino garland with LEDs ws2812


Читайте также: