Андрей Смирнов
Время чтения: ~23 мин.
Просмотров: 3

DIY: Универсальный Ambilight для домашней мультимедиа системы — Атмосвет

18 января 2017, 12:06

Компания Philips в 2007 году запатентовала невероятно простую, но, без преувеличения, потрясающую технологию фоновой подсветки ТВ Ambilight. С такой адаптивной подсветкой меньше устают глаза при просмотре в темноте, увеличивается эффект присутствия, расширяется область отображения и пр. Ambilight применима не только к видео и фото контенту, но и играм. Ambilight превратилась в визитную карточку телевизоров Philips. С тех пор компания Philips пристально бдит, чтобы никто из крупных производителей и думать не смел посягать на святое, создавая что-то подобное. Наверное, лицензировать эту технологию можно, но условия какие-то запредельные, и другие игроки рынка не особо горят желанием это делать. Небольшие компании тоже пытались (и сейчас есть компании, которые это делают) внедрять аналогичную технологию в виде отдельных комплектов, но кара от Philips была неизбежна. Так что в лучшем случае, если компания не продлит каким-то образом патент или его производную, другие производители лишь в 2027 году смогут выпускать что-то похожее. Но нас, обычных потребителей, такая кара не касается. Мы вольны для себя делать то, что считаем нужным. Сегодня я расскажу в деталях, как самостоятельно сделать адаптивную фоновую подсветку для ТВ или монитора по типу Philips Ambilight (далее просто Ambilight). Для некоторых статья ничего нового в себе содержать не будет, т.к. таких проектов десятки, а статей написано сотни на разных языках, и людей, которые себе уже сделали подобное, тысячи. Но для многих это всё может оказаться очень интересным. Никаких особых навыков вам не потребуется. Только базовые знания физики за 8 класс средней школы. Ну, и совсем чуть-чуть пайки проводов. Чтобы вы лучше понимали, о чём я говорю, приведу свой пример того, что получилось. Реальные затраты на ТВ 42″ — около 1000 рублей и 2 часа работы. Видео не передаёт всех ощущений и эффекта целиком, но дети в первый раз сидели с открытыми ртами. Нравится? Тогда смело читайте дальше, как это сделать для себя!

Возможные варианты реализации

Существует несколько вариантов вариантов реализации Ambilight. Зависят они от источника видеосигнала. Самый дешёвый, простой и эффективный вариант — источником сигнала выступает ПК с Windows, Mac OS X или Linux. Сейчас очень распространены Windows-боксы на процессорах Atom, которые стоят от 70$. Все они идеально подходят для реализации Ambilight. Я уже несколько лет использую разные Windows-боксы (в тумбе под ТВ) в роли медиаплеера, написал небольшую кучку обзоров и считаю их самыми лучшими ТВ-приставками для медиаконтента. Аппаратная реализация этого варианта едина для всех перечисленных операционных систем. Именно об этом варианте я расскажу в статье. Программная часть будет относиться к Windows системе, в роли универсальной управляющей программы будет выступать AmbiBox. С Mac OS X и Linux можно использовать Prismatik. Второй вариант — источником сигнала выступает медиаприставка на базе Android, коих тоже огромное количество. Этот вариант самый проблемный. Во-первых, подсветка будет работать только в медиакомбайне Kodi (и в ответвлениях этого проекта). Во-вторых, в подавляющем большинстве случаев всё работает только с отключённым аппаратным декодированием видео, что для большинства боксов неприемлемо. Аппаратная реализация проекта тоже накладывает определённые требования. Я его затрагивать не буду, но если что-то интересует конкретное, то постараюсь ответить в комментариях. Третий вариант — независимое от источника сигнала решение. Это самое затратное, но абсолютно универсальное решение, т.к. сигнал снимается прямо с HDMI кабеля. Для него вам понадобится достаточно мощный микрокомпьютер (типа Raspberry Pi), HDMI сплиттер (разветвитель), конвертер HDMI-RCA AV, USB 2.0 устройство захвата аналогового видео. Только с таким вариантом вы сможете гарантированно задействовать Ambilight с любой ТВ-приставкой/ресивером, Android-боксами, Apple TV, игровыми приставками (например, Xbox One, PlayStation 4) и пр. устройствами, которые имеют выход HDMI. Для варианта с поддержкой 1080p60 стоимость компонентов(без светодиодной ленты) будет около 70$, с поддержкой 2160p60 — около 100$. Это вариант очень интересный, но по нему нужно писать отдельную статью.

Аппаратная часть

Для реализации понадобится три основных компонента: управляемая светодиодная RGB лента, блок питания, микрокомпьютер Arduino. Сначала небольшое количество объяснений. WS2811 — это трёхканальный канальный контроллер/драйвер (микросхема) для RGB светодиодов с управлением по одному проводу (адресация к произвольному светодиоду). WS2812B — это RGB светодиод в корпусе SMD 5050, в который уже встроен контроллер WS2811. Подходящие для проекта светодиодные ленты для простоты так и называют — WS2811 или WS2812B. WS2812B лента — это лента, на которой последовательно размещены светодиоды WS2812B. Лента работает с напряжением 5 В. Существуют ленты с разной плотностью светодиодов. Обычно это: 144, 90, 74, 60, 30 на один метр. Бывают разные степени защиты. Чаще всего это: IP20-30 (защита от попадания твёрдых частиц), IP65 (защиты от пыли и водяных струй), IP67 (защита от пыли и защита при частичном или кратковременном погружении в воду на глубину до 1 м). Подложка чёрного и белого цвета. Вот пример такой ленты:db3bf608fb.png WS2811 лента — это лента, на которой последовательно размещены WS2811 контроллер и какой-то RGB светодиод. Есть варианты, рассчитанные на напряжением 5 В и 12 В. Плотность и защита аналогичны предыдущему варианту. Вот пример такой ленты:0ef7643656.png Ещё встречаются WS2811 «ленты» с большими и мощными светодиодами, как на фотографии ниже. Они тоже подходят для реализации Ambilight для какой-нибудь огромной панели.Какую ленту выбрать, WS2812B и WS2811? Важный фактор — питание ленты, о чём я расскажу чуть позже. Если у вас дома окажется подходящий по мощности блок питания (часто дома от старой или испорченной техники остаются блоки питания), то выбирайте ленту, исходя из напряжения блока питания, т.е. 5 В — WS2812B, 12 В — WS2811. В этом случае вы просто сэкономите деньги. От себя могу дать рекомендацию. Если общее количество светодиодов в системе будет не более 120, то WS2812B. Если более 120, то WS2811 с рабочим напряжением 12 В. Почему именно так, вы поймёте, когда речь зайдёт о подключение ленты к блоку питания. Какое уровень защиты ленты выбрать? Для большинства подойдёт IP65, т.к. с одной стороны она покрыта «силиконом» (эпоксидной смолой), а с другой есть самоклеющаяся поверхность 3M. Эту ленту удобно монтировать на ТВ или монитор и удобно протирать от пыли. Какую плотность светодиодов выбрать? Для проекта подойдут ленты с плотностью от 30 до 60 светодиодов на метр (конечно, можно и 144, никто не запрещает). Чем выше плотность, тем больше будет разрешение Ambilight (количество зон) и больше максимальная общая яркость. Но стоит учитывать, чем больше светодиодов в проекте, тем сложнее будет устроена схема питания ленты, и понадобится более мощный блок питания. Максимальное количество светодиодов в проекте — 300. Покупка ленты Если ваш ТВ или монитор висит на стене, и все 4 стороны имеют рядом много свободного пространства, то ленту лучше всего разместить сзади по периметру на все 4 стороны для максимального эффекта. Если ваш ТВ или монитор установлен на подставку, или снизу мало свободного пространства, то ленту надо размещать сзади на 3-х сторонах (т.е. низ без ленты). Для себя я выбрал белую ленту WS2812B IP65 с 30 светодиодами на метр. Подходящий блок питания на 5 В у меня уже был. Решал, 60 или 30 светодиодов на метр, но выбрал последнее после пересмотра видео с готовыми примерами реализации — яркость и разрешение меня устроили, да и питание легче организовать, меньше проводов. На Алиэкспресс огромное количество лотов лент WS2812B. Я заказывал здесь 5 метров за 16$. Для моего ТВ (42″, 3 стороны) нужно было только 2 метра, т.е. можно было купить за 10$, оставшиеся три метра для друга. Цены часто меняются у продавцов, предложений много, так что просто выберите на Алиэкспресс дешёвый лот с высоким рейтингом (ключевые слова для поиска — WS2812B IP65 иди WS2811 12V IP65).

Покупка блока питания для ленты Блок питания подбирается по мощности и напряжению. Для WS2812B — напряжение 5 В. Для WS2811 — 5 или 12 В. Максимальная потребляемая мощность одного WS2812B светодиода 0,3 Вт. Для WS2811 в большинстве случаев аналогично. Т.е. мощность блока питания должна быть не ниже N * 0,3 Вт, где N — количество светодиодов в проекте. Например, у вас ТВ 42″, вы остановились на ленте WS2812B с 30 светодиодами на метр, вам нужно 3 метра ленты все 4 стороны. Вас понадобится блок питания с напряжением 5 В и максимальной мощностью от 0,3 * 30 * 3 = 27 Вт, т.е. 5 В / 6 А. В моей реализации используются только 3 стороны, всего 60 светодиодов (если быть точным, то 57) — мощность от 18 Вт, т.е. 5 В / 4 А. У меня давно уже лежит без дела многопортовая USB-зарядка ORICO CSA-5U (8 А), оставшаяся после старого обзора. Питание портов у неё запараллельно (это критически важно), мне это ЗУ идеально подходит в роли БП, т.к. подключать ленту я буду через 2 параллельных соединения (объяснения будут чуть позже в статье). Если бы этого ЗУ у меня не было, то я бы выбрал такой БП 5 В / 4 А за 4$ (есть информация, что именно в этот БП ставят внутренности на 2,5 А, так что надо детальней изучить этот вопрос у продавца, или посмотреть другие модели).Покупка микрокомпьютера Управлять Ambilight будет микрокомпьютер Arduino. Arduino Nano на Алиэкспресс стоит около 2,5$ за штуку. Затраты на мой вариант (для ТВ 42″): 10$ — 2 метра WS2812B IP65 (30 светодиодов на метр) 4$ — блок питания 5 В / 4 А (денег на БП не тратил, привожу стоимость для ясности) 2,5$ — Arduino Nano ————16,5$ или 1000 рублейРеализация аппаратной части Самое главное — это правильно организовать питание ленты. Лента длинная, напряжение просаживается при большом токе, особенно при 5 В. Большинство проблем, которые возникают у тех, кто делает себе Ambilight, связаны именно с питанием. Я пользуюсь правилом — нужно делать отдельную подводку питания на каждые 10 Вт потребляемой максимальной мощности при 5 В и 25 Вт потребляемой мощности при 12 В. Длина подводки питания (от блока питания до самой ленты) должна быть минимальной (без запаса), особенно при 5 В. Общая схема подключения выглядит следующим образом (на схеме отображено подключение питания для моего варианта): К ленте с обоих концов подведено питание — два параллельных подключения. Для примера, если бы я делал подсветку на все 4 стороны, а лента была по 60 светодиодов на метр (т.е. максимальная мощность 54 Вт), то я бы сделал такой подвод питания: Провода подводки нужно использовать соответствующие, чем меньше калибр (AWG), тем лучше, чтобы их с запасом хватало для расчётной силы тока. К Arduino от ленты идут два контакта. GND, который нужно подключить к соответствующему пину на Arduino. И DATA, который нужно подключить к шестому цифровому пину через резистор 300-550 Ом (лучше 470 Ом). Если резистора у вас нет, то в большинстве случаев всё будет прекрасно работать и без него, но лучше, чтобы он был. Резистор можно купить за пару копеек в любом радиомагазине. Сам микрокомпьютер Arduino можете разместить в любом удобном корпусе, многие используют для этого яйцо Киндер-сюрприза. Arduino нужно размещать как можно ближе к ленте, чтобы подводка DATA имела минимальную длину. Припаивать провода к ленте просто. Главное правило — время контакта с паяльником должно быть минимальным, «возюкать» паяльником нельзя. В моём случае получилось вот так:
Два чёрных качественных USB кабеля пошли на питание, а белый для подключение к компьютеру. Белые термоусадочные трубки у меня закончились, я использовал красные. Не так «красиво», но меня устраивает (всё равно это спрятано за ТВ). Важный вопрос — как изгибать ленту под прямым углом? Если у вас лента на 60 светодиодов, то ленту нужно разрезать и соединять короткими проводами (разместив всё это в термоусадочной трубке). Можете купить специальные угловые коннекторы на три контакта для светодиодных лент (на снимке 4 контакта, просто для примера): Если у вас лента на 30 светодиодов, то расстояние между светодиодами большое, вы легко можете сделать угол без резки. Удаляете кусочек «силиконового» покрытия, изолируйте (можно даже «скотчем») контактную площадку и сгибаете по схеме: Я отрезал кусок ленты, чтобы практиковаться. Главное, не нужно переусердствовать — слегка согнули один раз и всё. Тюда-сюда перегибать не нужно, сильно сдавливать линию изгиба не нужно. Вот вид сзади ТВ, все провода через отверстие уходят внутрь тумбы:

Программная часть

Это самое простое. Загружаем и распаковываем Arduino IDE. Загружаем библиотеку FastLED и кладём папку FastLED в папку libraries (Arduino IDE). Запускаем Arduino IDE и закрываем её. В папке Документы будет создана папка Arduino. В ней создаём папку Adalight и копируем тут скетч Adalight.ino. Подключаем микрокомпьютер Arduino по USB. Драйвер (последовательного интерфейса CH340) установится автоматически. Если этого не произошло, то в папке Arduino IDE есть папка Drivers со всем необходимым. Запускаем Arduino IDE и открываем файл Adalight.ino. Изменяем количество светодиодов в коде. У меня 57. Инструменты > Плата > Arduino nano Инструменты > Порт > Выбираете COM-порт (там будет нужный вариант) Нажимаем кнопку «Загрузить»: Программа проинформирует, когда загрузка будет завершена (это буквально пара секунд). Готово. Нужно отключить Arduino от USB и подключить заново. Лента загорится последовательно красным, зелёным и синим цветом — Arduino активировался и готов к работе. Загрузите и установите программу AmbiBox. В программе нажмите «Больше настроек» и укажите устройство — Adalight, COM-порт и количество светодиодов. Выберите количество кадров для захвата (до 60). Далее, нажмите «Показать зоны захвата» > «Мастер настройки зон». Выберите конфигурацию вашей ленты. Нажмите «Применить» и «Сохранить настройки». На этом базовые настройки заканчиваются. Потом вы сможете поэкспериментировать с размерами зон захвата, сделать цветокоррекцию ленты и пр. В программе много разных настроек. Чтобы активировать профиль, достаточно два раза мышкой нажать на соответствующую иконку (профилей AmbiBox) в области уведомлений Windows. Лента сразу загорится. Отключается тоже двойным нажатием. Вот в принципе и всё. Результат вы видели в начале статьи. Ничего сложного, дёшево и здорово. Уверен, что у вас получится лучше, так что делитесь своими поделками в комментариях.03 октября 2018, 22:03Что такое Hyperion AmbilightТехнология фоновой подсветки для телевизоров, которая была изобретена и запатентована компанией Philips Electronics.Представляет собой подсветку, которая, анализируя цветовую картинку кадра на экране телевизора, воспроизводит рассеянный свет по периметру телевизора. Благодаря этому поверхность стены за корпусом телевизора динамически освещается, тем самым дополняя ореолом интенсивность изображения на самом экране и визуально как бы увеличивая размер изображения.

1. Основное железо

Поскольку технология запатентованная, еще много лет мы ее не видим в телевизорах, отличных от марки Philips. К слову, я обладал таким телевизором, с трехсторонней подсветкой, но он был настолько медленным, что я продал его через 6 дней после покупки. Ну что ж, придется сделать самим… Для этого нам понадобятся:

  • Raspberry Pi 3 ссылка (42$) — просто возьмите самую последнюю версию малинки, если планируется использовать как медиа-сервер, то советую взять что-то помощнее, например Asus Tinker Board. Если завалялась Raspberry Pi 2, то и на ней все будет хорошо работать, без каких-либо задержек.
  • Светодиодная лента APA102 ссылка (8$/метр) — тут только два варианта, либо брать оригинал АPA102, либо ее аналог SK9822, который дешевле, но работает точно так же. Я использую аналог. Советую взять Black IP67 30/метр. IP67 идет в силиконовой защите, которая не желтеет от времени, защищает от пыли и помех. По-поводу количества диодов, 30 на метр вполне достаточно, и блок питания можно будет найти в «ноутбучном» исполнении. Берите на все 4 стороны ТВ, даже если он стоит на подставке. На телевизор 48 дюймов уходит ровно 3 метра ленты. Рекомендую взять сразу всю необходимую ленту у одного продавца и в одном заказе, так как разные партии ленты могут иметь разные оттенки, это будет резать глаз. Никогда не верьте, что систему можно построить на основе ws28*, просто взгляните на характеристики:

У меня был крайне печальный опыт с лентой ws2801: во-первых, она откровенно тормозит, не хватает ей частоты обновления, во-вторых, белый не белый, нужно подстраивать, в-третьих, постоянно произвольное мигание диодов, в-четвертых, банально отваливаются чипы с этой ленты, в-пятых, надо паять.

  • Блок питания 5V 8A ссылка (11$) — выбор блока зависит от конфигурации ленты, я просто приведу свой пример расчета: лента 30 диодов/метр потребляет 9Вт на 1 метр (в случаях когда включен белый, в реальности значительно меньше), считаем по максимуму: 9Вт * 3 (количество метров) 20% резерва = 32.4Вт, блок питания выдает 5*8 = 40Вт вполне подойдет, и от него же можно будет запитать все остальные устройства.
  • Коннекторы — паять не будем, зачем усложнять, возьмем и закажем некоторые коннекторы:

1600x_image.png

ссылка (2$ за 5 штук)

Берите вот такие коннекторы, ширина APA102 10мм, отлично влезет. 

Ни в коем случае не берите вот эти стильные уголки, в них невозможно подключить ленту, контакты /- неправильно разведены

ссылка  (меньше 1$)Если купили ноутбучный блок питания, то такой коннектор не будет лишним.

ссылка (меньше 1$)

Нажал — вставил, для быстрого соединения.

2. Сборка железа

Собираем по следующей схеме. Важно запитать начало и конец ленты, чтобы свечение было равномерным. Обязательно соединить питание ленты с малиной общей землей. Чтобы избежать возможных помех сигнала, можно использовать ферритовые фильтры, но я делал без них, проблем не обнаружено. 

Примеряем, обрезаем, соединяем уголками, клеим.

Светодиодная лента поставляется со стандартной липкой основой — на ней лента не держится, отвалится быстро. Я покупал, в строительном гипермаркете, вспененную клейкую ленту для крепления зеркал. Обязательно обезжирить поверхность ТВ. Корпус ТВ может быть скругленным, появляется возможность наклеить ленту под углом, чтобы диоды светили больше по сторонам, но я этого делать не советую. Стоит наклеить ленту строго перпендикулярно стене. Идеальное расстояние от стены 15см-20см. В моем случае, получилось 24см, из-за формы подставки ТВ.

Малинку можно так же наклеить на заднюю часть ТВ. Я приклеил на липучку от одежды, чтобы была возможность снимать.

3. Софт

Сайт проекта https://hyperion-project.org. Все инструкции, для разных систем, можно посмотреть в разделе WIKI. Я расскажу, как поставил у себя.

Я использую raspberry в качестве медиа-сервера, поставил образ OSMC. Можно поставить стандартную сборку raspbian. Как ставить образ системы, расписывать не буду, все сводится к записи ISO образа на microSD.

На малине надо включить SPI интерфейс, для этого выполняем:

sudo raspi-config

Зайти в раздел Interfacing Options

Включить поддержку SPI и SSH.

Устанавливать и настраивать Hyperion будем через программу HyperCon (скачать), для ее работы потребуется JAVA SDK. HyperCon надо ставить не на малину, а на свой компьютер, настраивать будем удаленно, через SSH.

java -jar HyperCon.jar

Тут надо настроить конфигурацию системы: 

RGB Byte Order — может отличаться, зависит от светодиодной ленты, у меня это BGR. Когда будете устанавливать, например, зеленый цвет, а лента светит красным — значит надо поменять эту настройку.

Bottom Gap — у меня ТВ стоит на подставке, и этот параметр говорит о том, что ленты нет в этом месте, на картинке это видно.

1st LED offset — на картинке, показан вид ТВ спереди, надо добиться, чтобы справа снизу отсчет шел от 0. Просто меняйте эту настройку и поймете.

Process вкладка — тут стандартные настройки, можно попробовать поменять задержки и частоту, влияет на плавность смены цветов. Также можно откалибровать цвета, это может понадобится, если стена не белого цвета.

External вкладка — тоже стандартные настройки, Kodi checked будет брать проигрываемый видеопоток и делать свою магию.

Вкладка SSHПриступаем к финальному шагу настройки. IP адрес вашей малинки, вводим имя пользователя и пароль, для OSCM это osmc/osmc, для raspbian — pi/raspberry.Нажимаем Connect, после подключения — Inst./Upd. Hyperion.Теперь надо сохранить конфигурацию:Save и Create Hyperion Configuration, советую сохранить в папку, где находится сам HyperCon.jar.После этого отправляем конфигурацию на малину — Send Config. Мои поздравления!, если все было сделано правильно, уже можно удаленно управлять цветом через Colorpicker.Если не получилось, смотрите логи: Get Log и Show Traffic, там будет написана причина.Если правой кнопкой мыши нажать на экране, то можно выбрать тестовое изображение или загрузить свое.На KODI, можно запустить видео и насладиться результатом. (запомните опцию Take grabber screenshot)

4. Подсветка от ТВ каналов

Надо расширить возможности системы, пусть во время просмотра ТВ-каналов тоже будет подсветка.

ссылка (2$)

Я читал, что такой scart переходник работает не на всех ТВ, но советую попробовать, это дешево. Переходник надо установить в режим OUT.

ссылка (6$)

USB втыкается в малину, тюльпаны в scart-av переходник. Выделяют 2 вида устройств на чипсете UTV007 и на STK1160. У меня UTV007, второй я не тестировал.

НастройкаUSB GrabberНа вкладке Grabber, настроим получение видеопотока с USB малины. Включите ТВ канал, правой кнопкой мыши, на окне конфигурации, выбрать Take grabber screenshot, будет показан кадр, который смог получить девайс.Дальше надо поиграться с настройками, и добиться наилучшего качества, убрать черные бордеры, убедиться, что изображение не зеленое (да, бывало и такое, все изображение в зеленую полоску).Отдельное внимание на параметр Priority, он будет фигурировать еще и не только тут, но в других программах. Это работает следующим образом: у KODI приоритет 890, а у граббера 900, чем меньше приоритет, тем важнее выполнение. Получается, что когда включено видео на KODI, будет показана подсветка KODI (даже если в данный момент включен ТВ-канал), но если выйти из видео и переключиться на ТВ-канал, то будет подсветка от граббера.В приложениях это работает точно так же, если у приложения приоритет 500, и вы задали красный цвет, то ни KODI, ни граббер — не смогут изменить цвет, до тех пор, пока вы его не уберете из приложения.

5. Подсветка от HDMI

Хотите насладиться подсветкой от вашей xbox или ps4 ? Без проблем. Единственное, уделите повышенное внимание выбору следующих устройств, от этого зависит качество, надо брать подороже и желательно с поддержкой 4K.

ссылка (10-20$) 

HDMI Splitter — с одной стороны втыкаем HDMI вашего устройства, с другой два кабеля на ТВ и на HDMI2AV.

ссылка (6$)

HDMI to AV переходник. К нему будет подключаться Grabber.

Схема подключения представлена ниже. Я не тестировал работу с 4K, на схеме представлен девайс 4k to 1080p scaler, я думаю, что он не нужен, так как HDMI2AV сам по себе делает то же самое (просто убедитесь что в нем есть эта функция).

6. Управление Hyperion другими способами

hyperion-remoteМожно поставить на любой компьютер и удаленно управлять цветами и эффектами:

hyperion-remote -a 192.168.1.120:19444 -p 100 -c FF0000

Внимание на -p приоритет, должен быть ниже, чем текущая подсветка, чтобы установить цвет.

Hyperion Remote для iOSХорошее, но платное приложение, однако есть бесплатные функции.

Hyperion для Android

OpenHab2 Hyperion BindingБиндинг для опенхаба. 
HomeyУправление через колобок.

Home Assistant Связка с хоум ассистант.

Заключение

Данные из этой статьи основаны на личном опыте. Мой hyperion работает с 2016 года, стабильно и четко, и до сих пор я наслаждаюсь этими эффектами, а также использую как ночник ночью. Проект простой, для начинающих самодельщиков, не требует каких-то особых умений и навыков, советую и желаю удачи!

02.12.2018  версия 1.3: Добавлено ограничение тока для всей системы, настройка CURRENT_LIMIT21.10.2019: Вышел проект “Компактный Ambilight by Karman” – читай здесь

</span>

Динамическая фоновая подсветка экрана телевизора или монитора компьютера (аналог Philips Ambilight). Работает под управлением Arduino, на компьютере вертится программа Ambibox. Arduino управляет адресной светодиодной лентой на чипах WS2812. В схему добавлен фоторезистор для адаптивной подстройки яркости ленты в зависимости от интенсивности освещения в помещении.

  • Очень дешёвый аналог Ambilight для любого монитора/телевизора, подключенного к компьютеру
  • Разрешение самодельной фоновой подсветки гораздо выше, чем предлагают даже дорогие модели от Philips
  • Самая простая схема подключения среди всех моих проектов
  • Удобная программа Ambibox для настройки и персонализации фоновой подсветки

ПОДРОБНОЕ ВИДЕО ПО ПРОЕКТУ

  • В данном видео показан полный и максимально подробный процесс разработки и изготовления устройства, а также обзор его возможностей и функций, всё это с приятным монтажиком, музычкой и комментариями. В общем, приятного просмотра!
  • Понятные схемы, OpenSource прошивки с комментариями и подробные инструкции это очень большая работа. Буду рад, если вы поддержите такой подход к созданию Ардуино проектов! Основная страница пожертвовать – здесь.

ИНСТРУКЦИИ ПО ЭКСПЛУАТАЦИИ

Теперь ставим программу амбибокс. Тут всё стандартно, далее далее продолжить далее далее завершить. В конце при выборе устройства нужно указать адалайт. Запускаем. Сразу можно поставить русский язык. И можно поставить автозапуск программы при старте компьютера. Чтобы она не мешала остальным, можно поставить задержку запуска. Теперь переходим на вторую вкладку и сразу жмём кнопку больше настроек. Не пугаемся. Вспоминаем номер порта, у меня это был порт номер 5, и указываем его. Далее в программе есть несколько методов захвата изображения, из них у меня работают вроде бы первые 6, можете их все потыкать посомтреть посмотреть какой будет меньше тормозить. Но. Все методы кроме GDI FS Aero включают классическую тему оформления виндоус, то есть без прозрачных окошек, они даже подписаны no aero. Я люблю прозрачные окошки так что оставил аэро. Теперь нажимаем показать зоны захвата и видим, что они не настроены. Зон должно быть столько же, сколько у вас светодиодов. 98. Оп, перезагрузилась. Теперь жмём мастера настрйоки зон. Я наклеивал ленту так, что она получилась без угловых светодиодов, ставлю галочку. Далее, по горизонтали у меня 31 светодиод, ориентироваться нужно не на это число, а сразу смотреть вниз на зоны. Соотношение сторон определяется автоматически, но я на всякий случай поставил как у своего монитора, 16 на 9. И ещё можно удлинить зоны, чтобы они брали источник цвета с большей площади, так результат будет более симпатичным. Ну и всё. Сохраняем настрйоки и ставим галку включить подсветку. Тадаааам. Поздравляю, теперь у нас есть динамическая подсветка монитора. С режимом виндоус аэро наблюдается небольшая задержка, в других режимах без аэро задержки почти нет. В папке с картинками для тестов вы найдёте несколько сочных картинок для проверки вашей фоновой подсветки.

СХЕМЫ, ПЕЧАТНЫЕ ПЛАТЫ

Обычная

pc.jpg

Контроль яркости

photoResist.jpg

Ноутбучная

notebook.jpg

На телевизор 1

wiring1.jpg

На телевизор 2

wiring2.jpg

МАТЕРИАЛЫ И КОМПОНЕНТЫ

Ссылки на магазины, с которых я закупаюсь уже не один год

Вам скорее всего пригодится:

ino NANO 328p – искать</li>

ПРОШИВКА И НАСТРОЙКА

Загружать прошивку желательно до подключения компонентов, чтобы убедиться в том, что плата рабочая. После сборки можно прошить ещё раз, плата должна спокойно прошиться. В проектах с мощными потребителями в цепи питания платы 5V (адресная светодиодная лента, сервоприводы, моторы и проч.) необходимо подать на схему внешнее питание 5V перед подключением Arduino к компьютеру, потому что USB не обеспечит нужный ток, если например лента его потребует. Это может привести к выгоранию защитного диода на плате Arduino. Гайд по скачиванию и загрузке прошивки можно найти под спойлером на следующей строчке.

ИНСТРУКЦИЯ ПО ЗАГРУЗКЕ ПРОШИВКИ

guide0-300x179.jpg

1. Если это ваше первое знакомство с Arduino, внимательно изучите гайд для новичков и установите необходимые для загрузки прошивки программы.

guide1-300x179.jpg

2. Скачайте архив со страницы проекта. Если вы зашли с GitHub – кликните справа вверху Clone or download, затем Download ZIP. Это тот же самый архив!

guide2-300x179.jpg

3. Извлеките архив. Содержимое папки libraries перетащите в пустое место папки с библиотеками Arduino C:/Program Files (x86)/Arduino/libraries/

guide3-300x179.jpg

4. Папку с прошивкой из firmware положите по пути без русских букв. Если в папке с прошивкой несколько файлов – это вкладки, они откроются автоматически.

guide4-300x179.jpg

5. Настройте прошивку (если нужно), выберите свою плату, процессор. Подключите Arduino к компьютеру, выберите её COM порт и нажмите загрузить.

guide5-300x179.jpg

6. При возникновении ошибок или красного текста в логе обратитесь к 5-ому пункту гайда для новичков – “Разбор ошибок загрузки и компиляции“.

Содержимое папок в архиве

  • Библиотеки – библиотеки для дисплея и прочего, скопировать вC:Program Files (x86)Arduinolibraries (Windows x64)C:Program FilesArduinolibraries (Windows x86)
  • Gyver_Ambilight – прошивка для Arduino, файл в папке открыть в Arduino IDE (читай FAQ)
  • Schemes – папка со схемами подключения
  • Test pictures – папка с ядрёными радугами для теста подсветки

Дополнительно

  • Может случиться так, что при работе от USB компьютер не выключается, пока не будет извлечён штекер, ведущий к Arduino
  • Мини FAQ: Ответы на большинство вопросов можно найти здесь: https://alexgyver.ru/ws2812_guide/

Настройки в прошивке

#define NUM_LEDS 98          // число светодиодов в ленте  #define DI_PIN 13            // пин, к которому подключена лента    #define start_flashes 0      // проверка цветов при запуске (1 - включить, 0 - выключить)    #define auto_bright 0        // автоматическая подстройка яркости от уровня внешнего освещения (1 - включить, 0 - выключить)  #define max_bright 255       // максимальная яркость (0 - 255)  #define min_bright 50        // минимальная яркость (0 - 255)  #define bright_constant 500  // константа усиления от внешнего света (0 - 1023)  // чем МЕНЬШЕ константа, тем "резче" будет прибавляться яркость  

Используемые источники:

  • https://www.ixbt.com/live/tv/delaem-adaptivnuyu-fonovuyu-podsvetku-dlya-tv-ili-monitora-po-tipu-philips-ambilight-za-1000-rubley.html
  • https://sprut.ai/client/article/216
  • https://alexgyver.ru/arduino_ambilight/

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации