Динамическая подсветка ТВ или монитора


Динамическая подсветка телевизора

Все наверное видели как работает динамическая подсветка в телевизорах Philips, называемая Amilight. В данной статье представлено устройство позволяющее сделать динамическую подсветку для телевизора или монитора. Телевизор/монитор должен быть подключен к компьютеру, на котором будет воспроизводится видеоконтент.

Итак, для сборки устройства понадобится:
1. Контроллер Arduino
2. Светодиодная RGB-лента с плотностью светодиодов 30шт на метр (для моего 32'' ТВ ушло 2 метра)
3. Светодиодный драйвер TLC5940
4. Источник питания 12 В

Ниже изображено схематичное изображение устройства подсветки:

Схематичное изображение

Сзади телевизора наклеено 4 светодиодных ленты (левая, левая вверху, правая вверху, правая). Каждая лента подключена к LED-драйверу TLC4950 и источнику питания 12В. Светодиодный драйвер TLC4950 обеспечивает ШИМ управление яркостью каждого цвета: красного, зеленого и синего. LED-драйвером управляет контроллер Arduino, который в свою очередь получает команды от ПК. На компьютере запущена специальная программа, написанная на языке processing, которая анализирует каждый кадр видеоизображения и дает соответствующие команды Arduino.

Выводы светодиодной ленты

Далее необходимо заготовить светодиодные ленты. Для моего 32" телевизора получилось в каждой ленте получилось по 15 светодиодов. На лентах предусмотрены специальные места, где можно спокойно припаяться после того, как вы обрезали ее.

RGB-ленты

К каждой RGB-ленте необходимо припаять четыре провода. На концах я использовал обычные автомобильные разьемы, чтобы в случае необходимости можно было отсоединить ленты.

Сборка устройства

Соединение Arduino и TLC5940:
Arduino             TLC5940
Pin 2 ======= Pin 27 (VPRG)
Pin 3 ======= Pin 26 (SIN)
Pin 7 ======= Pin 25 (SCLK)
Pin 4 ======= Pin 24 (XLAT)
Pin 5 ======= Pin 23 (BLANK)
Pin 6 ======= Pin 19 (DCPRG)
Pin 8 ======= Pin 18 (GSCLK)

Остальные выводы TLC5940 присоединяем согласно следующей таблице:
Pin 22 (GND) === Arduino Ground
Pin 21 (VCC) === Arduino +5V
Pin 20 (IREF) === Arduino Ground через резистор 2кОм
Pin 1-15,28 === PWM Output (ШИМ выход на RGB-ленты)

От источника питания +12В я подключил к светодиодным лентам, а "общий" от источника питания к Arduino Ground.

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

Сборка устройства

Сборка устройства

Сборка устройства

Программа, запускаемая на компьютере написана на языке Processing (официальный сайт http://www.processing.org). Программа постоянно делает скриншоты экрана, а затем вычисляет средние значения трех цветов (красный, зеленый, синий) для разных мест на экране (левое, левое верхнее, правое верхнее, правое). После вычислений, программа пересылает данные в порт, к которому подключен контроллер Arduino.

Программа для Arduino считывает приходящие ей данные с порта и дает управляющие команды для LED-драйвера TLC5940, какой уровень яркости нужен для красного, зеленого или синего цветов. А далее, TLC5940 выдает ШИМ-сигнал для управления светодиодами.

После того как все собрано и компьютер подключен к телевизору или монитору, подключите к ПК контроллер Arduino, затем включите источник питания 12В, а затем, на ПК запустите программу Processing.

Скачать программу для Arduino и ПО для компьютера

Оригинал статьи на английском языке (перевод Колтыков А.В.)


Добавил:  Павел (Admin)  [email protected] | 

Автор:  Неизвестно  Рейтинг@Mail.ru