Проект ambilight для ПК или для телевизора на который подается видеосигнал с пк. Первые наброски.
Что понадобится:
1.Arduino (любой)
2.Провода для подключения
3.Паяльник (припой, флюс)
4.Диодная лента ws2812b/ ws2812 (4 ножки/6 ножек на диод)
5.Блок питания 5v/12v не меньше 2A
6.Резистор 470 Ом
7.ПК (софт)
Описание:
Лента ws2812b/ws2812 состоит из диодов со встроенной микросхемой, что позволяет управлять каждым диодом по отдельности, в любом порядке. У такой ленты в отличии от стандартных RGB лент всего 3 контакта. +5в – управление – земля. Найти ее не так просто. Например я нашел только на Митинском радиорынке в одном месте. (ну и интернет конечно же).
Кстати: После покупки ленты и проверки ее работоспособности, при подключение к питанию – загораются не все диоды – это нормально.
Arduino – это микроконтроллер семейства Atmega. Микроконтроллер представляет из себя микропроцессор с памятью и различными периферийными устройствами, реализованный на одной микросхеме. Фактически это однокристальный микрокомпьютер, который способен выполнять относительно простые задачи – заказал с алиэкспресс. Адекватнее использовать модель NANO, у меня UNO и это пробный так сказать запуск.
Софт на пк – программа Prismatik – захватывает видео с экрана, анализируя световую гамму в определенных зонах. Программа для arduino.
Принцип действия:
Программа Prismatik – захватывает видео с экрана, анализируя световую гамму в определенных зонах (по краям экрана) . За зонами прикреплены определенные диоды (в зависимости от расположения и количества). Далее программа через провод USB передает эту информацию на Arduino, который в свою очередь подает сигналы к определённым диодам через управляющий провод (PIN). Есть аналог программы AmbiBox, настройка идентичная – язык русский.
Монтаж:
Сначала нарезаем ленту по длине сторон экрана
ВАЖНО: нужно посчитать количество всех диодов, которые будут использоваться!
спаиваем куски ленты между собой короткими проводами – это для создания прямых углов, т.к. лента не сгибается под прямым углом. Если кто-то сможет согнуть без проводов – тогда резать ничего не надо. К концу ленты припаиваем три провода. К началу ленты припаиваем провода.
ВАЖНО! На ленте обозначено направление сигнала стрелками. Направление сигнала на разных отрезках ленты надо соблюдать. Далее все, что получилось клеим на корпус экрана с обратной стороны.
Между управляющим контактом ленты (PIN) и платой Arduino – впаиваем резистор на 470 ОМ. К контакту ленты +5В подключаем питание от блока +5В, управляющий провод ленты (через резистор 470 ОМ) подключаем к пину (контакту) на Arduino №6 (1-13 – на любой – зависит от программы – скетча). Контакт №10 (1-13 – зависит от программы скетча) на плате Arduino и контакт GND (земля) – подключаем к «-» (земле) блока питания. Саму плату Arduino через USB к ПК.
Схемка:
Установка ПО:
Для начала устанавливаем программу для Arduino - Arduino IDE.
Качаем и устанавливаем библиотеку Fast LED – скаченный архив кидаем в папку «/lib»
Например: C:\Program Files (x86)\Arduino\lib
Скачиваем скетч (листинг программы) который и будет у нас обрабатывать сигнал с пк и распределять его по ленте. Открываем его. Тут надо поменять несколько цифр, а конкретно:
1.кол-во используемых светодиодов (у меня 128 – тут надо вписать ваше количество)
2.Номер управляющего пина (у меня 6 – у вас – в какой воткнули от 1 до 13).
3.Маркировка диодов – у меня это ws2812b
4.Жмем стрелочку (на рис – 1)
Если все сделано правильно – лента мигнет разными цветами.
Устанавливаем Prismatik - жмем далее, next пока программа не предложить нам выбрать порт – выбираем порт ардуино – он указан в нижнем правом углу окна программы Arduino IDE у меня это порт COM11
Далее программа предложит порядок расположения зон на экране – 2-3 -4 стороны (андромеда, касиопея, пегас). У меня нет внизу диодов – поэтому у меня три стороны. Тут нужно указать общее количество наших диодов, которые подсчитали раньше. Счет диодов идет от начала ленты и зоны пронумерованы – не перепутайте.
Внизу, рядом с часами появится иконка с изображением солнца, жмем правой кнопкой и попадаем в настройки. Выбираем захват экрана. Далее регулируем настройки – по вкусу.
Ну собственно и все)))
Я буду в дальнейшем дорабатывать. А именно: сделаю это все на ARDUINO NANO – маленькая платка размером с флэшку. Уменьшу провода между лентами по углам, установлю рассееватель на ленту, что бы свет был мягче и больше как бы заполнял заднюю область.
Телевизор подключен к пк через обычный VGA кабель.
ССЫЛКИ:
Arduino IDE : https://www.arduino.cc/en/Main/Software
Библиотека Fast LED https://yadi.sk/d/p_sEHUkr3GS3kQ
Aim box https://yadi.sk/d/9F0BMtk03GS3h3
Prismatik https://yadi.sk/d/rbHSiB2d3GS3q8
Скетч https://yadi.sk/d/jp-xdyKt3GS3n4
Видео:
Видео по динамичней: