PSS Для работы с Ardulight не забудьте cнять галку "Посылать данные только при обновлении цвета" на вкладке "Отладка".[/QUOTE]
А как сделать чтоб галка снималась при запуске програмы автоматически ? Еще заметил что как то яркость не очень большая в этой програме и раньше при черном экране подсветка была немного белой а счас она вообще не горит что не очень хорошо когда смотришь кино в темной комнате, глаза устают. А так прога понравилась, тормозит меньше. Да и спасибо за старый протокол передачи, телек снимать со стенки непришлось.
03.12.2011, 19:34
Sorgan
Re: Фоновая подсветка телевизора Ambilight
У меня подсветка немного белой не была.)) И мне кажетсо это не минус.
Яркость действительно стала меньше.
add: сохранение галки "Посылать данные только при обновлении цвета"
fix: При переключении между профилями гаснет подсветка или закрывается с ошибкой. (Для устройств работающих по COM)
06.12.2011, 18:50
Userrex
Re: Фоновая подсветка телевизора Ambilight
Цитата:
Сообщение от Chip
Попробуй вот этот скетчь и отпишись
Я его еще не проверял
Не забудь настройки в программе сделать на 18 каналов
Один нюанс с работой WMP 11(где то в теме поднимался), во вкладке
Параметры\Быстродействие, ползун Ускорение видео надо переместить в среднее положение(или было написано отключить аппаратный 3D), в противном случае при проигрывании "Во весь экран" вся подсветка выключается.
Теперь по железу и быстродействию. У меня Нетбук Acer на Atom-е.
При 6 зонах и толщине каждой зоны 5% задержка очень небольшая и смотрится достаточно комфортно.
Еще раз огромное спасибо Chip-у и Eraser-у за сей программно аппаратный комплекс.
Как и говорил, лучше вынести основные моменты в шапку темы, для удобства нахождения инфы пользователями.
у меня на 6-канальной схеме 6-й канал своей жизнью живет. даже если выключить программу он светит красным. если включить то нет синего. всю проводку проверил, все в порядке. не могу понять в чем причина (
11.12.2011, 22:26
Chip
Re: Фоновая подсветка телевизора Ambilight
Может быть выход микросхемы накрылся? Или проверь все дорожки идущий от пина до вывода контроллера
11.12.2011, 22:51
ElM_nsk
Re: Фоновая подсветка телевизора Ambilight
так, с красным разобрался. теперь другая проблема, сделал фон синим, проверил напругу на D13 и A2, на обоих по 7,8В, на А5 - 12В ( похоже накрылся выход
11.12.2011, 23:37
Chip
Re: Фоновая подсветка телевизора Ambilight
А на выходах какие ключи стоят?
12.12.2011, 00:01
ElM_nsk
Re: Фоновая подсветка телевизора Ambilight
Irlu2905
Выход на А6 можно поменять?
12.12.2011, 01:55
Chip
Re: Фоновая подсветка телевизора Ambilight
Нет не поменять. А6 и А7 работают только как аналоговые порты
12.12.2011, 17:57
Userrex
Re: Фоновая подсветка телевизора Ambilight
Цитата:
Сообщение от ElM_nsk
у меня на 6-канальной схеме 6-й канал своей жизнью живет. даже если выключить программу он светит красным. если включить то нет синего. всю проводку проверил, все в порядке. не могу понять в чем причина (
Проверяй сопротивление по всем дорогам, может отличаться от 0. Если все гуд, транзисторы подтекают, меняй.
12.12.2011, 18:51
asuz
Re: Фоновая подсветка телевизора Ambilight
Не кто не поделится скетчем для Arduino Nano на 42 канала на шифтах? А то этот не получается передалать а этот работает через одно место...
п.с. заметил что регистры греются, но не сильно, пальцем трогаю тёплые :) Это нормально? начинают греться сразу после подачи питания.
13.12.2011, 12:15
ElM_nsk
Re: Фоновая подсветка телевизора Ambilight
Цитата:
Сообщение от Userrex
Проверяй сопротивление по всем дорогам, может отличаться от 0. Если все гуд, транзисторы подтекают, меняй.
Проверил, все таки А5 сгорел (
22.12.2011, 23:43
YARiddiK
Re: Фоновая подсветка телевизора Ambilight
просмотрел половину страниц, про ленты мало инфы.
Какие уже поробованы? Может составим таблицу лент?
У меня есть RGB 5050, но красный тусклей остальных, можно с фотками названиями лент поделиться
23.12.2011, 01:01
MAKC
Re: Фоновая подсветка телевизора Ambilight
Цитата:
Сообщение от YARiddiK
просмотрел половину страниц, про ленты мало инфы.
Какие уже поробованы? Может составим таблицу лент?
У меня есть RGB 5050, но красный тусклей остальных, можно с фотками названиями лент поделиться
По идее должны светить одинаково.
На ленте для выравнивания яркости резисторы подобраны разных номиналов. У меня на каждом звене ленты по 3 светодиода расположены 2 токоограничивающих резистора по 221 ом и 1 на 391 Ом как раз на красный цвет.
Отдельные звенья являются независимыми друг от друга участками.
У меня кошак одно звено в середине ленты перегрыз, так вот это звено моргало когда его в разных местах прижимал/отпускал, а все остальные работали нормально.
Если у тебя на всей ленте красны цвет горит тускло, значит что-то с с выходом блока питания или контроллера, питающей красный цвет всей ленты. Попробуй поменять местами с каким-нито другим цветом.
23.12.2011, 20:12
YARiddiK
Re: Фоновая подсветка телевизора Ambilight
Да, проверил, если все включить, то, в принципе, белый можно назвать белым. Резисторы 151 и 330, двойная плотность, 14ватт на метр, жутко вонючая. попробуем с ней.
А кто как светодиоды зажигает? Есть осциллограммы на выходах ардуины и на ногах транзисторов?
Да, соответсвенно 24 канала получится, тк трназисторов 24 )
28.12.2011, 03:21
Chip
Re: Фоновая подсветка телевизора Ambilight
Все верно, еще добавлю что можно использовать ленты как с общим анодом так и с общим катодом. Потому что каждый выход имеет полумост состоящий из P-канального и N-канального MOSFET ключа.
28.12.2011, 10:07
Eraser
Re: Фоновая подсветка телевизора Ambilight
Софт Лайтпака (с поддержкой ардулайт) обновлён до версии 5.8.0
30.12.2011, 23:30
YARiddiK
Re: Фоновая подсветка телевизора Ambilight
Что насчет нескольких устройств? Какова реальная скорость работы на ардуино или если писать на любой другой мк от atmel на асме?
Попробовал софт лайтпак, на 17 зонах при минимальной задержке пишет частоту захвата от 12кадров до 55, врубил концерт продижи, 60кадров\в сек. Видео не виснет, прога лайтпак по диспетчеру задач всего 5% жрет.
Но вот вопрос, переварит ли это ком порт вместе с ардуиной?
Как рассчитать ту грань, за которой уже будет заметное отставание? тут был рассчет, я прикинул, для ком порта получается, где-то 96 каналов успеет протолкнуть при приемлимом обновлении или я не прав? Строго не ругайте, я не программер.
UPD многие варианты, на вимео тормозят заметно для меня. Светодиоды могу тбыстрей моргать.
Вытравил себе недавно платку на 6 транзисторов. ток до 3 А
и пару маленьких, в SOT23, такой в количестве один штука ) потянет 10см ленты двойной плотности, сверху термоклеем залить и все будет окей ;)
были под рукой кт630, переходный процесс не более 5*10^-7 , много, но светодиод все равно не быстрей 200кГц дергать )
31.12.2011, 00:50
MAKC
Re: Фоновая подсветка телевизора Ambilight
Цитата:
Сообщение от YARiddiK
Что насчет нескольких устройств? Какова реальная скорость работы на ардуино или если писать на любой другой мк от atmel на асме?
Попробовал софт лайтпак, на 17 зонах при минимальной задержке пишет частоту захвата от 12кадров до 55, врубил концерт продижи, 60кадров\в сек. Видео не виснет, прога лайтпак по диспетчеру задач всего 5% жрет.
Но вот вопрос, переварит ли это ком порт вместе с ардуиной?
Как рассчитать ту грань, за которой уже будет заметное отставание? тут был рассчет, я прикинул, для ком порта получается, где-то 96 каналов успеет протолкнуть при приемлимом обновлении или я не прав? Строго не ругайте, я не программер.
Минимальная требуемая ширина канала рассчитывается примерно так:
1 зона = 3 канала
разрядность ШИМ - 2ка в этой степени даст количество уровней яркости, например в Ардуино 8 бит - 256 - уровней яркости. Если ШИМ сделан на какой-либо другой микросхемке, то берем из её даташита. на LPD6803 - 32 уровня - 5 бит на канал, на LPD8806 - 128 градаций - 7бит, MS2801 - 256 градаций - 8 бит. Где-то попадались микросхемки с ШИМ и на 1024 уровней - 10бит.
В итоге получаем:
бит_в_секунду = количество_зон * 3 * разрядность_ШИМ * кадров_в_секунду
По приведенному тобой примеру минимальная пропускная способность только для передачи данных о яркости каждого канала без служебной информации (например адресации какой канал какая яркость) должна быть:
17зон * 3канала/зону * 8бит/канал * 55кадров/сек = 22440 бит/сек
Это самая минимальная требуемая скорость при самом оптимальном протоколе, в плане объема передаваемых данных.
Количество служебной информации будет зависеть уже от протокола обмена и адресации каждого каждого канала. если будем адресовать каждый канал отдельно, то 17 зон * 3 канала/зону = 51 канал, достаточно 6 разрядного адреса (максимум 64 адреса), если требуется больше то берем нужное значение.
Тогда получим:
17зон * 3канала/зону (6бита_адреса/канал + 8бит_яркости/канал) * 55кадров/сек = 39270 бит/сек.
31.12.2011, 02:30
YARiddiK
Re: Фоновая подсветка телевизора Ambilight
доступно. сенкс!
А нижнюю полосу кто сколько делает.
Я планирую две три максимум зоны вниз, тк внизу обычно меньше разнообразия в картине, а вверх помногу.
27.01.2012, 01:34
wmlex
Re: Фоновая подсветка телевизора Ambilight
Здравствуйте. Помогите пожалуйста проясниь ситуацию. Собрал ardulight на arduino duemilanove и ULN2803, залил скетч из первого поста на 6 зон, все работает кроме синего цвета в шестой зоне. Диод подключен к 28 ножке 168 меги (Analog pin 5) без нагрузки на нем, при отображении белого цвета в этой зоне, 4,7-5в при подключении ко входу ULN2803 напряжение падает до 1 вольта. Микроконтроллер менял, монтаж смотрел в чем может быть проблема?
27.01.2012, 02:00
Chip
Re: Фоновая подсветка телевизора Ambilight
Ошибка в скетче была, подправил
28.01.2012, 16:12
wmlex
Re: Фоновая подсветка телевизора Ambilight
Спасибо, все работает. Не могли бы вы обьяснить изменения. В секциях PORTC вы уменьшели колличество выводов с 6 до 8, а что означает вот это значение
Цитата:
for (int i=2; i < 19; i++){pinMode(i, OUTPUT);}
28.01.2012, 16:49
Chip
Re: Фоновая подсветка телевизора Ambilight
Цитата:
Не могли бы вы обьяснить изменения. В секциях PORTC вы уменьшели колличество выводов с 6 до 8
Не совсем понял вопрос
Цитата:
for (int i=2; i < 19; i++){pinMode(i, OUTPUT);}
Настраиваем выводы Carduino D2-D18 на выход
28.01.2012, 21:21
wmlex
Re: Фоновая подсветка телевизора Ambilight
В первом вырианте скетча колличество выводов было 8, а сейчас 6
Старшие два бита не являются цифровыми портами . так что без особой разницы что в эти два бита будет записано
28.01.2012, 22:02
wmlex
Re: Фоновая подсветка телевизора Ambilight
Спасибо! Получается, что предидущаа версия не работала у меня из за того, что был указан больший диапазон выводов чем есть на плате, я правильно понял?
Наоборот маленький диапазон и синий цвет небыл сконфигурирован.
Ты скетч из шапки брал?
Видео выложи посмотреть.
28.01.2012, 22:21
wmlex
Re: Фоновая подсветка телевизора Ambilight
Все, разобрался, спасибо! Видео есть но там качество плохое. Чуть позже выложу.
29.01.2012, 00:31
wmlex
Re: Фоновая подсветка телевизора Ambilight
29.01.2012, 01:10
Chip
Re: Фоновая подсветка телевизора Ambilight
Отлично!
Немножко нужно уменьшить яркость Adulight
12.02.2012, 16:58
Userrex
Re: Фоновая подсветка телевизора Ambilight
Цитата:
Сообщение от Chip
Ошибка в скетче была, подправил
Я очень извиняюсь, что до конца не протестил, собранный девайс и программу, написал, что все нормально. У меня тоже СИНИЙ канал "неустойчиво" работал. Но тем не менее картинка периодически была верной в динамике. И я это списал на текущий полевик. А вот сегодня решил это добить, поменял полевик, тоже самое, полез замерять напряжение на ардуине, и понял, что проблем в программе. И сам вычислил проблему и поменял скетч. Все заработало и решил просветить сообщество, а тут уже проблему нашли и исправили.
Сорри еще раз за поспешный ВЫВОД, теперь вроде все верно работает.
26.02.2012, 00:40
MAKC
Re: Фоновая подсветка телевизора Ambilight
Предисловие:
- Выдержка из инструкции: 1. Проверьте правильность подключения проводов.
- Анекдот: Стирает парень штаны и приговаривает: Никому нельзя доверять. Никому... Даже себе... Ведь только пукнуть хотел.
Решение получилось очень простое. Собрать может каждый, кто способен припаять 4 проводка :)
Лента была заказана перед самым новым годом.
Получена на почте в начале февраля.
3 недели ушло на то чтобы заставить её работать. Это был самый длительный и неприятный этап. Один раз по невнимательности перепутал контакты, она у меня заработала, а все следующие разы, при внимательной, аккуратной сборке по подписям ну никак не хотела работать :(. Решил уже что спалил. Настроение портилось из-за зря потраченных и спаленных 100 баксов и месяца потерянного времени. Оказалось, что хитрые китайцы с какой-то коварной целью на ленте перепутали местами подписи Data, Clock. До меня это так и не дошло, пару недель мучался, пытаясь заставить работать эту ленту. Проблему решил друг за один вечер, которому я отрезал кусок ленты для опытов (если она не рабочая, то не жалко, а если рабочая, то вдруг у него получится заставить её работать). На следующее утро он мне сказал причину проблемы. За что ему ОГРОМНОЕ СПАСИБО :) Именно к этой части всей истории относится предисловие :) http://img13.imageshost.ru/img/2012/...2835_small.jpg
Дальше уже все на приподнятых эмоциях все пошло гораздо быстрее :)
Особенности ленты:
- светодиоды сгруппированы по 3 штуки, 1 чип на 3 RGB светодиода.
- герметизация - силиконовая трубка. Для крепления на телевизор предпочтительнее залитая в силикон. Я именно такую и заказывал, но пришла эта :(. На странице ленты в отзывах другой чувак написал, что заказывал наоборот в трубке, а ему пришла в заливке. Так что аккуратнее при заказе, если решитесь заказывать у этого продавца. Без герметизации считаю неудобной по причине сложностей с протиркой регулярно копящейся неизвестно от куда берущейся пыли :)
void loop()
{
if (Serial.available() > leds)
{
if (Serial.read() == 255) //проверка префикса
{
for (int i = 0; i < zones; i++)
{
// прочитать данные о цветах из порта в массив
//byte red = Serial.read();
//byte green = Serial.read();
//byte blue = Serial.read();
byte green = Serial.read();
byte blue = Serial.read();
byte red = Serial.read();
strip.setPixelColor(i, Color(red, green, blue));
}
blank = 0;
}
}
else
{
if (blank > 100000)
{
blank = 0;
for (int i = 0; i < zones; i++)
{
strip.setPixelColor(i, Color(0, 0, 0));
}
}
blank++;
}
strip.show();
}
// Create a 24 bit color value from R,G,B
uint32_t Color(byte r, byte g, byte b)
{
uint32_t c;
c = r;
c <<= 8;
c |= g;
c <<= 8;
c |= b;
return c;
}
В качестве управляющей программы использовал LightPack 5.8.0.
Описание проекта тут http://code.google.com/p/lightpack/
Скачать софт отсюда http://code.google.com/p/lightpack/downloads/list
Использовал его как наиболее легко настраиваемый и более интуитивно понятный для простого человека, т.к. этим проектом заинтересовались мои друзья, знакомые, далекие от электроники и программирования.
LightPack c 20 зонами и с захватом 60 кадров в секунду нагружает процессор на 40%
CPU Intel Core 2 Duo E8400 3.0ГГц
RAM 6Гб
Video Asus GeForce 9600
OS Ubuntu 10.04 x64
Планы на будущее:
- хотелось бы добавить в протокол передачи данные с компа на контроллер после синхронизирующего кода 255 количество зон. Библиотека WS2801 позволяет динамически менять количество адресуемых пикселей. И это параметр позволит менять количество зон без перепрошивки контроллера. 8 бит на 1 кадр не сильно увеличат объем передаваемых данных, зато сильно упростять конфигурацию конечной пользовательской системы.
- попробовать использовать библиотеку FastSPI. Еще не ковырял её, но вроде как было написано, что она каким-то образом не хранит в памяти массив цветов каждой зоны. Это позволит снять ограничения контроллера на объем имеющейся оперативной памяти и позволит адресовать большее количество зон.
- применить RGB ленту с чипом на 1 RGB светодиод. Например вот такую http://www.aliexpress.com/product-gs...olesalers.html
Пока жаба душит расставаться с 150 баксами :) Поищу подешевле, поднакоплю денег, либо найду сил придушить жабу :)
- применить вместо большой и избыточной по всем параметром Arduino Mega 2560 мелкую Arduino Nano. Контроллер заказан, жду доставки.
- сделать управляющую программу для Andriod, т.к. имеется такая приставка к телеку и вот такая тема ambilight для телефона на andriod, и вот такое направление NetUp IPTV Android.
- также хотелось бы иметь управляющую программу для приставок Dune HD, например для TV-101
Проблемы:
- непонятно почему мне пришлось изменить порядок чтения цветов. Исходный порядок закомментирован. Рабочий порядок представлен. Если кто-то объяснит почему так? я что-то не понимаю или в лайтпаке такая особенность или еще какая вариант буду очень благодарен. Решение проблемы тут
- каким-то образом проскакивают помехи которые поджигают пиксели дальше определенного настроенного количества зон. Замечено при возникновении помех в электрической сети - переключение режимов холодильника (Холодильник относительно не древний. Двухкамерный Атлант :) ). По идее количество зон будет ограничено длиной самой ленты. Но вот вопрос/беспокойство - насколько эти помехи могут сказаться на работе девайса в целом?
Уф, вот такой отчетик по проделанной работе. Очень надеюсь, что кому-то он облегчит жизнь.
Замечания, предложения, пожелания, идеи, конструктивная критика приветствуются.
26.02.2012, 01:17
Chip
Re: Фоновая подсветка телевизора Ambilight
Молодец!
Я все никак не закажу эту ленту, думаю что поле твоего поста ускорю я это дело.
Буду заказывать с чипом на 1 RGB светодиод
Программу нужно делать для этой ленты немного другую, как приедет лента займусь
А вот по поводу помех , какое питание используешь?
26.02.2012, 01:34
MAKC
Re: Фоновая подсветка телевизора Ambilight
старенький блок питания ATX на 235 Вт
26.02.2012, 01:42
MAKC
Re: Фоновая подсветка телевизора Ambilight
Цитата:
Сообщение от Chip
Программу нужно делать для этой ленты немного другую