Создание окружающий свет система для вашего телевизора или монитора ПК проще и дешевле, чем вы думаете, и в этой статье мы расскажем вам, как вы можете сделать собственный Светодиод Ambilight система легко и дешево, хотя да, желательно иметь некоторые знания с Arduino.
К сожалению, Ambilight — это эксклюзивная технология, доступная только в некоторых моделях телевизоров Philips, но, к счастью, есть альтернативы, позволяющие получить такой же эффект и довольно дешевым способом. Если мы скажем вам, что то, что мы расскажем вам дальше, будет стоить вам чуть больше 50 евро, что вы думаете?
Что такое Ambilight или рассеянный свет?
Окружающий свет — одно из лучших дополнений, которые вы можете добавить к телевизору или монитору, для более полного погружения в процесс просмотра. Эти системы динамического освещения расширяют возможности вашего экрана, отражая его содержимое на стене за ним, не только делая просмотр более захватывающим, но и помогая снизить нагрузку на глаза.
ПОДСТВЕТКА ambilight своими руками с АЛИ ЭКСПРЕСС
Есть коммерческие варианты, чтобы получить это легко и быстро… хотя и не совсем дешево. Например, световые планки монитора Corsair iCUE LS100 Smart Lighting обеспечивают практически все готовое, но стоят немногим более 100 евро, а также совместимы только с ПК, поскольку для работы требуется установка программного обеспечения iCUE.
Материалы, необходимые для создания собственной подсветки Ambilight
- Плата для разработки Arduino Uno ( 24 евро на Amazon ).
- Внешний источник питания 5В ( 9 евро на Amazon ).
- 5 метров совместимой светодиодной ленты ( 20 евро на Amazon ).
- Двухсторонний скотч ( 5 евро на Amazon ).
Общая сумма этих компонентов составляет около 58 евро, но, очевидно, вы можете выбрать несколько более дешевые компоненты, и они будут стоить менее 50 евро, если хотите, не говоря уже о том, что у вас, вероятно, есть блок питания 5 В в ящике, который того стоит, и вы можете сэкономить эти деньги.
Вам также понадобится ПК с Обработка установлен для начальной конфигурации (после настройки о ней можно забыть).
Как создать собственную систему рассеянного света «Ambilight»
Первое, что мы рекомендуем вам сделать, прежде чем что-либо еще, — это проверить светодиодные ленты, чтобы убедиться, что нет заводских светодиодов, перегоревших на заводе, и что источник питания имеет достаточную мощность. Подключите контакт 6 вашей платы Arduino Uno к линии с надписью DIN (обычно средний) на светодиодной ленте (полоса должна иметь перемычку на одном конце, поэтому используйте к ней перемычку «папа-мама»).
Вам также необходимо подключить контакт GND Arduino к GND светодиодной ленты. Пока не подключайте разъем 5V к контакту 5V Arduino, так как вы, скорее всего, его поджарьте. Вместо этого вы должны использовать внешний источник питания 5 В для полосы при подключении Arduino к USB-порту на вашем ПК для подачи питания на него.
Фоновая подсветка телевизора своими руками
Чтобы подчеркнуть этот момент, только сигнал (DIN) и земля (GND) необходимо подключить от светодиодной ленты к Arduino.
Имейте в виду, что эти полосы обычно имеют определенное направление, в котором должен течь сигнал, обозначенное стрелками (вы можете увидеть это на изображении выше). Если вы подключаете несколько полос, вам, возможно, придется повторно впрыснуть энергию пополам, чтобы избежать падения напряжения, хотя при использовании всего 5 метров в этом обычно нет необходимости, как и в случае со светодиодной лентой, которую мы рекомендовали выше (мы указываем это, однако , если вы решили использовать другую светодиодную ленту).
Процесс установки
Теперь, когда у вас есть соединения, пришло время настроить систему, и для этого вам нужно будет подключить Arduino к ПК, на котором установлена обработка, как мы указывали ранее. Вам нужно будет включить Библиотеки FastLED в каталог библиотеки Arduino, а затем скачать этот код .
Отредактируйте его и изменить строку 7 указать на количество светодиодов которые вы собираетесь установить на полосу (желательно заранее наложить полосу на телевизор или монитор и вырезать там, где это необходимо, чтобы на полосе были только нужные вам светодиоды). Если вы видите, что цветовой профиль не работает, вы также должны изменить линия 47 ; Для рекомендованной нами светодиодной ленты используйте набор микросхем WS2812B, а порядок цветов — GRB вместо RGB, например. Вы можете проконсультироваться Документация FastLED чтобы узнать, как откалибровать светодиодную ленту.
Наконец, вам понадобятся компоненты обработки из Код проекта Adafruit . Для проверки откройте файл Colorswirl.pde, измените количество светодиодов в строке 29 и устройство в строке 44; Если Arduino — единственное подключенное устройство COM, то параметр Serial.list () [0] подойдет, но если нет, попробуйте Serial.list () [1]. Запустите приложение, и если все прошло хорошо, ваши светодиодные ленты уже должны показывать красивую серию движущихся цветов.
Установите полоски на телевизор или монитор
На данный момент у вас уже есть светодиодные ленты, подключенные к Arduino, и он настроен и работает, поэтому пришло время установить полосы на экране с помощью двусторонней ленты и помните, что на полосках есть стрелки, указывающие вам, где сигнал течет (не важно, да, в каком углу экрана вы начинаете их устанавливать).
В зависимости от размеров вашего телевизора или монитора вам может потребоваться обрезать светодиодные ленты, чтобы они «поместились» правильно. На всех полосках есть определенные части, отмеченные, где их можно разрезать, и вы увидите, что у них есть контакты, к которым вы можете припаять перемычки для соединения с другим участком полосы. Помните также, очень важно, что нельзя соединять конец последней полосы с началом , но должен быть «в воздухе».
После приклеивания пришло время доказать, что все работает как надо. После установки мы рекомендуем вам повторно протестировать то, что мы сделали на предыдущем шаге, чтобы убедиться, что все подключено и работает нормально.
Настроить Adalight
Последний шаг — самый утомительный, но он необходим, чтобы освещение и цвет светодиодных лент синхронизировались с информацией, отображаемой на экране. Каждый из светодиодов должен быть определен индивидуально в программном обеспечении, и для этого вам нужно будет загрузить Adalight.pde в Processing и изменить переменную, которая определяет количество пикселей по бокам и сверху (пока игнорируйте отсутствующие). Это делается в строке 87, и если, например, у вас есть 35 светодиодов вверху и 22 по бокам, вы должны определить этот параметр как .
Чуть ниже этой строки вы найдете список под названием «информация для каждого светодиода», который определяет каждый из отдельных светодиодов вокруг экрана. Каждый светодиод обозначается набором из трех цифр:
- Номер монитора (обычно ноль).
- Координата X (0 остается, если смотреть на экран спереди).
- Координата Y (0 вверх, если смотреть на экран спереди).
Как только это будет сделано, запустите код и запустите фильм или что угодно, чтобы увидеть результат. Консоль отладки предоставит вам такие данные, как частота кадров в секунду, при которой работает светодиодная лента (15 кадров в секунду более чем достаточно для хорошего визуального восприятия), и позволит вам изменить некоторые другие переменные, например, яркость.
report this ad
Источник: itigic.com
PaintPack: динамическая подсветка Ambilight своими руками
Фоновая подсветка Ambilight — одна из главных фишек компании Philips. Благодаря ей достигается эффект присутствия. Сегодня мы расскажем, как сэкономить существенную сумму, модернизируя имеющийся или просто более дешёвый телевизор.
Телевизоры с динамической подсветкой вокруг рамки дисплея — одна из фирменных фишек компании Philips. И в отличие от многих других она работает. Однако за всё приходится платить, и телевизоры с Ambilight и повышенным эффектом присутствия стоят дороже многих других моделей.
Российские разработчики предложили способ, который позволит оснастить динамической подсветкой телевизоры и мониторы любого производителя. Для этого даже не придётся везти устройство в сервисный центр: потребуется только немного времени и усидчивости.
Вообще, подобную подсветку можно приобрести в виде радиодеталей и сконфигурировать самостоятельно. Но, как показывает практика, это практически сравнимо с готовыми вариантами от PaintPack.
Предлагается две основные модели: версия для монитора (30 светодиодов) и версия для телевизора (60 светодиодов). Есть и совсем простая — на 10 светодиодов, но она подходит только для самых маленьких мониторов.
Версия для телевизоров оборудована внешним блоком питания. Также в её пользу говорит большее количество светодиодов, что даёт большую площадь подсветки (будет светиться шире и выше, другими словами). Если подобные варианты не подходят по каким-либо соображениям, можно связаться с разработчиками: за небольшую доплату они предложат модифицированный вариант.
PaintPack, по сути, представляет собой небольшой корпус, к которому с двух сторон подключаются съёмные светодиодные ленты. Коробочка с начинкой несёт на себе индикаторы и разъём питания, а также microUSB для соединения с ПК. Есть ещё мастер-разъём (проприетарный) для последовательного подключения двух устройств.
Корпус устройства размещается на задней панели телевизора или монитора. Затем прокладываются LED-ленты в соответствии с инструкцией, подключается питание и начинается колдовство. При соединении PaintPack с компьютером через USB-разъём необходимо установить драйверы и произвести настройку устройства в комплектной программе.
Настройка производится при помощи пакета AmbiBox. Необходимо перейти в меню «Интеллектуальная подсветка», выбрать способ захвата экрана и один из предложенных в программе режимов работы:
- Статический фон — устанавливается любой цвет, регулируется свечение светодиодов.
- Цветомузыка — подсветка будет мигать в такт звучанию музыки. Цвет подсветки устанавливается на зелёно-жёлтый.
- Динамический фон — плавное перетекание одного цвета в другой.
- Захват экрана — основной режим работы.
В этом режиме возможен захват цвета из просматриваемых фильмов и игр. Цвет подсветки будет меняться в соответствии с изображением на экране, разделяясь на верхнюю, нижнюю и боковые зоны (каждая в отдельности).
Работает PaintPack немного медленнее, чем официальный аналог от Philips. Но с учётом разницы в стоимости и возможности модернизации любого устройства выбор очевиден.
Источник: lifehacker.ru
Тема: Фоновая подсветка телевизора Ambilight
Администратор Регистрация 08.06.2007 Возраст 53 Сообщений 13,366 Вес репутации 10
Фоновая подсветка телевизора Ambilight
Собираем Ambilight своими руками
Название проекта Ardulight.
Идею я вынашивал давно , но как всегда не хватало времени.
Несколько дней назад Krusty подкинул ссылку на один форум , на котором давно обсуждается подсветка работающая с HTPC.
Так как я для просмотра и закачки фильмов использую HTPC на базе Acer Revo, то сразу загорелся немедленной реализацией этой идеи . Для меня как всегда возникает проблема с травлением платы, это что то сравнимо с капитальным ремонтом двигателя в автомобиле на улице И тут как всегда на помощь приходит arduino Nano V.7 и макетная плата. На сборку устройства ушло всего пол часа. Конечно в этом есть и свои минусы , так как приходится все элементы соединять проводками, но так как мне требовалось экспериментировать то это был самый подходящий вариант.
За пол часа спаял на макетке ардуино + ключи. За 15 мин. написал скетчь для Arduino , работающий с двумя зонами(6 каналов аппаратного ШИМ)
Но уперся в настройки программы в Win 7, программа ни как не хотела передавать синхронно данные, наблюдалось отставание до 10 сек.
Оказалось все просто, нужно было сменить тему AERO на упрощенную, и все сразу заработало.
Для работы программы нужно в ее конфиге указать сом порт на котором сидит Arduino. Запускать нужно файлом Start_Ambilight
Другая проблема возникла при написании четырех зонового скетча.
Все уперлось в аппаратный PWM и прерывания по таймеру.
Вообщем при программировании прерывания по таймеру автоматом отключается две ножки аппаратного ШИМ, так как все 6 выходов ШИМ используют все три тамера, по две ноги PWM на каждый таймер, пришлось отказаться от аппаратного ШИМ и сделать софтверный ШИМ.
Теперь все отлично работает смотрите на видео.
Для увеличения зон до восьми можно использовать еще один arduino и связать их между собой по I2C или сделать на регистрах 74HC595. Погонял пару дней программу Boblight , понял что мне многово не хватает, регулировки яркости, температуры цвета и насыщенности. К то муже у этой программы куча недостатков, таких как отставание от реальной картинки от 1 до 10 сек. Программа не работает с темами AERO в Windows 7 и многое другое.
Решил написать свою программу.
Моя программа умеет выводить от 1 до 42 каналов, есть регулировка яркости , насыщенности и баланса белого.
Корректно работает с Windows 7 и темой AERO , не тормозит на разрешениях 1900х1080, корректно выходит из Сна и Hibernation , имеется конфигурационный фаил, с возможностью отключения не нужных каналов и настройкой областей сканирования, изменения времени сканирования и т.д. Проверял программу с 4-мя зонами, то есть 12 каналов, все отлично работает
Подсветку установил на плазму 50′ , использовал светодиодные ленты RGB двойной плотности. Всего ушло 2м 60 см. Данная лента потребляет ток 800мА на один метр, так что БП от моего монитора Lilliput мне хватило для питания светодиодных лент. Расчет простой 2,6*0,8=2А при максимально открытых ключах.
На фото RGB светодиодная лента.
Еще два варианта AmbiLight: на 84 канала от crazydnb и вариант на 42 канала собраный SBorovkov
На видео 50′ дюймовая плазма .
Снимал мыльницой, качество получилось не очень хорошее,
нарушена цветопередача
Собрал на скорую руку на мекетке
Sketch для Arduino на 18 каналов(6 зон)
#define D2_High PORTD |=B00000100 //red
#define D2_LOW PORTD = B11110111
#define D4_High PORTD |=B00010000 //blue
#define D4_LOW PORTD = B11011111
#define D6_High PORTD |=B01000000
#define D6_LOW PORTD = B01111111
#define D8_High PORTB |=B00000001
#define D8_LOW PORTB = B11111101
#define D10_High PORTB|=B00000100
#define D10_LOW PORTB = B11110111
#define D12_High PORTB |=B00010000
#define D12_LOW PORTB = B11011111
#define D14_High PORTC |=B00000001
#define D14_LOW PORTC = B11111101
#define D16_High PORTC |=B00000100
#define D16_LOW PORTC = B11110111
#define D18_High PORTC |=B00010000
#define D18_LOW PORTC = B11011111
volatile unsigned int tcnt2 ;
volatile byte pwm_time ;
//byte pwm_time, Red_R_Old, Green_L_Old, Blue_T_Old;
unsigned long blank = 0 ; //таймер простоя
byte volatile color [ 18 ]; //массив храннения цветов 12-ть каналов
void setup ()
<
for ( int i = 2 ; i < 20 ; i ++)< pinMode ( i , OUTPUT );>
Serial . begin ( 115200 );
void loop ()
<
if ( Serial . available () > 18 )
<
if ( Serial . read () == 255 ) //проверка прификса
<
for ( int i = 0 ; i < 18 ; i ++)
<
color [ i ] = Serial . read (); // прочитать данные о цветах из порта в массив
>
// if (Red_R_Old == color[0] Green_L_Old == color[4] Blue_T_Old == color[8])
blank = 0 ;
>
> else <
if( blank > 100000 ) < blank = 0 ; for ( byte i = 0 ; i < 18 ; i ++) color [ i ] = 0 ;>
blank ++;
>
>
//****************обработчик прерывания********************
ISR ( TIMER2_OVF_vect )
<
TCNT2 = tcnt2 ;
pwm_time ++;
if( color [ 0 ] > pwm_time ) D2_High ; else D2_LOW ;
if( color [ 1 ] > pwm_time ) D3_High ; else D3_LOW ;
if( color [ 2 ] > pwm_time ) D4_High ; else D4_LOW ;
if( color [ 3 ] > pwm_time ) D5_High ; else D5_LOW ;
if( color [ 4 ] > pwm_time ) D6_High ; else D6_LOW ;
if( color [ 5 ] > pwm_time ) D7_High ; else D7_LOW ;
if( color [ 6 ] > pwm_time ) D8_High ; else D8_LOW ;
if( color [ 7 ] > pwm_time ) D9_High ; else D9_LOW ;
if( color [ 8 ] > pwm_time ) D10_High ; else D10_LOW ;
if( color [ 9 ] > pwm_time ) D11_High ; else D11_LOW ;
if( color [ 10 ] > pwm_time ) D12_High ; else D12_LOW ;
if( color [ 11 ] > pwm_time ) D13_High ; else D13_LOW ;
if( color [ 12 ] > pwm_time ) D14_High ; else D14_LOW ;
if( color [ 13 ] > pwm_time ) D15_High ; else D15_LOW ;
if( color [ 14 ] > pwm_time ) D16_High ; else D16_LOW ;
if( color [ 15 ] > pwm_time ) D17_High ; else D17_LOW ;
if( color [ 16 ] > pwm_time ) D18_High ; else D18_LOW ;
if( color [ 17 ] > pwm_time ) D19_High ; else D19_LOW ;
>
Вариант расположения 6 зон
По схеме железу:
Транзисторы использовал с запасом на будущее, так что можно и по слабее поставить. Транзисторы без драйверов в полне справляются на частоте 31000гц, происходит полное открывание , при использовании на протяжении нескольких часов они не нагрелись , остались холодными.
Бюджет:
arduino Nano V.7 — 1шт. 780руб.
Транзисторы IRLR2905 — 9шт. по 20руб. = 180руб.
Резисторы 0,25W — 9шт. по 1руб. = 9руб.
Макетка 1шт. 40 руб.
Клеммная колодка на 2 провода 6шт. по 3руб. = 18руб
Лента светодиодная RGB двойной плотности — 3м по 750руб = 2250руб.
Для тех кому кажется что подсветка сильно яркая , можно купить светодиодную ленту обычную не двойной плотности цена 400руб. за 1м
Ардуино следит за тем когда заснет комп и выключает подсветку.
P.S.
Эффект классный , на динамических сценах создается ощущение что объект выходит за пределы экрана. При взрывах и вспышках эффект удваивается
Короче говоря супер . Всем рекомендую.
Еще одна программа от пользователя Eraser
Программа поддерживает двухмониторный режим, визуальны настройки зон и т.д.
Также программа для Linux от Eraser
Есть еще программа для работы этой подсветки с музыкой .
Будут вопросы спрашивайте.
Вложения
- boblight-1.3-beta1.rar (1.14 Мб, Просмотров: 7270)
- Ardulight.rar (310.7 Кб, Просмотров: 8498)
Источник: compcar.ru