|
Смешивание цветов, RGB светодиод |
|
|
|
Oct 20 2010, 12:29
|
Группа: Участник
Сообщений: 10
Регистрация: 8-06-07
Из: Беларусь
Пользователь №: 28 288

|
Доброе время суток уважаемые форумчане. Я разрабатываю светильник, в котором применяются RGB светодиоды. Светильник управляется интерфейсу (rs-485), принимая RGB значение цвета (3 байта). Яркость каждого светодиода регулируется 8-битным ШИМ. Проблема у меня с математикой смешивания цветов. Дело в том, что по даташиту каналы разных цветов светодиода имеют различные значения светового потока (например красный -30lm, зелёный-67lm, синий -8,2lm). Поэтому, например если RGB= 255 255 255 (белый цвет) и напрямую задать эти значения в ШИМ каналов светодиода, то в результате белый цвет не получается. Как правильно получить значения ШИМ для каждого канала, чтобы в результате смешанный цвет соответствовал RGB модели?
|
|
|
|
Guest_TSerg_*
|
Oct 20 2010, 12:58
|
Guests

|
Вопрос сложный, поскольку никто не гарантирует повторяемость ВАХ и светоотдачи и цветопередачи для серии светодиодов. Нужна калибровка каждого конкретного девайса.
|
|
|
|
|
Oct 20 2010, 13:21
|
Группа: Участник
Сообщений: 10
Регистрация: 8-06-07
Из: Беларусь
Пользователь №: 28 288

|
Цитата(TSerg @ Oct 20 2010, 15:58)  Вопрос сложный, поскольку никто не гарантирует повторяемость ВАХ и светоотдачи и цветопередачи для серии светодиодов. Нужна калибровка каждого конкретного девайса. Калибровка нужна обязательно, т.к. есть ещё разброс параметров регуляторов тока для светодиодов... Просто я так понимаю - основная задача - выставить баланс белого. Т.е. берём самый неяркий канал (синий). Пусть разброс яркости с учётом всех отклонений 10% от указанного в даташите (8,2). Затем подбираем такой коэффициент Kb<1 для ШИМ, что при значении RGB=0 0 255 измеренный световой поток синего канала равнялся 8,2-10%. Т.е. калибруем синий канал. Затем включаем RGB = 255 255 255 и подбираем коэффициенты для зелёного (Kg<1) и красного (Kr<1), чтобы цвет соответствовал белому(с заданной характеристикой). По идее, если теперь выставлять значение ШИМ с этими коэффициентами для каждого цвета, то смешанный цвет будет соответствовать модели RGB. Например, смешав синий и зелёный в равных пропорциях (0 50 50) я должен получить желтый.
|
|
|
|
|
Oct 20 2010, 13:34
|
Гуру
     
Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883

|
Цитата(FRANTIK @ Oct 20 2010, 17:21)  Калибровка нужна обязательно, т.к. есть ещё разброс параметров регуляторов тока для светодиодов... Просто я так понимаю - основная задача - выставить баланс белого. Вам для научной калибровки нужно - 1. Специальное устройство, имитирующее Солнце. (Его спектр) 2. Спектрометр.... или человек со стандартным зрением. Все это не так дешево и просто...
|
|
|
|
|
Oct 20 2010, 13:49
|
Группа: Участник
Сообщений: 10
Регистрация: 8-06-07
Из: Беларусь
Пользователь №: 28 288

|
Цитата(rx3apf @ Oct 20 2010, 16:34)  Правда, что ли ? Или мсье дальтоник, или все ж R + G (50 0 50). А иначе это зовется "Cyan"... Да, извиняюсь, ступил... Цитата(Tanya @ Oct 20 2010, 16:34)  Вам для научной калибровки нужно - 1. Специальное устройство, имитирующее Солнце. (Его спектр) 2. Спектрометр.... или человек со стандартным зрением. Все это не так дешево и просто... Спектрофотометр планируется приобрести, необходимо сначала определится с методикой смешивания и калибровки.
|
|
|
|
|
Oct 20 2010, 13:54
|
Гуру
     
Группа: Участник
Сообщений: 3 834
Регистрация: 14-06-06
Из: Moscow, Russia
Пользователь №: 18 047

|
Цитата(FRANTIK @ Oct 20 2010, 17:49)  Спектрофотометр планируется приобрести, необходимо сначала определится с методикой смешивания и калибровки. Для светильника спектрофотометр ? Не жирно ли ? Ну, можно, наверное, обойтись и каким-нибудь трехканальным цветосенсором (у Agilent/Avago что-то такое было), но, думаю, "на глаз" для данной задачи будет ничуть не хуже. Вот только на кой хрен (простите мой французский) нужно один байт на цвет при 8-битном ШИМ ? При восьми битах даже и 16 различимых градаций яркости будет получить затруднительно (по опыту, 32 градации, 5 битов, требуют уже 10-битного ШИМ), так что всю посылку свободно можно уместить в два байта.
|
|
|
|
|
Oct 20 2010, 13:55
|
Частый гость
 
Группа: Свой
Сообщений: 79
Регистрация: 8-04-05
Из: Санк-Петербург
Пользователь №: 3 972

|
Цитата(FRANTIK @ Oct 20 2010, 17:21)  Формула сложения основных цветов для получения белого. Е (лм)=0,177R(лм)+0,813G(лм)+0,01В (лм) Из нее можно попытаться найти ваши коэффициенты. Другое дело, что со временем характеристики уйдут и белого все-равно не станет. ЗЫ кстати если исходить из вашей методики калибровки, то белого вы рискуете не получить ибо соотношение относительно синего R:G:B - 17,7:81,3:1 т.е. при яркости синего 8,2 для получения белого надо 17,7*8,2 = 145,1 красного и 81,3*8,2 = 666,6 зеленого
|
|
|
|
|
Oct 20 2010, 14:19
|
Участник

Группа: Участник
Сообщений: 28
Регистрация: 13-03-09
Пользователь №: 46 049

|
Люмен - суть спектрально-взвешенный Ватт. Таблица взвешивания (aka кривая видности V): http://www.cie.co.at/publ/abst/datatables15_2004/y2.txtЕсли взять обратную функцию и свернуть ее с относительной спектральной характеристикой СД, то получите световой поток или яркость диода, в спектрально-незавизимых единицах, которые по смыслу соответствуют уровням RGB.
|
|
|
|
|
Oct 20 2010, 16:28
|
Группа: Участник
Сообщений: 10
Регистрация: 8-06-07
Из: Беларусь
Пользователь №: 28 288

|
Цитата(rx3apf @ Oct 20 2010, 16:54)  Для светильника спектрофотометр ? Не жирно ли ? Ну, можно, наверное, обойтись и каким-нибудь трехканальным цветосенсором (у Agilent/Avago что-то такое было), но, думаю, "на глаз" для данной задачи будет ничуть не хуже. Вот только на кой хрен (простите мой французский) нужно один байт на цвет при 8-битном ШИМ ? При восьми битах даже и 16 различимых градаций яркости будет получить затруднительно (по опыту, 32 градации, 5 битов, требуют уже 10-битного ШИМ), так что всю посылку свободно можно уместить в два байта. Не понял насчёт ШИМ. Каждый светодиод управляется импульсным регулятором тока 350 мА. Контроллер при помощи ШИМ управляет регулятором (включает-выключает выход регулятора). Для каждого канала можно обеспечить 256 градаций яркости. Причём зависимость яркости в люксах от скважности ШИМ практически линейная. Конечно, т.к. наш глаз воспринимает изменение яркости нелинейно (логарифмическая зависимость) нам кажется, что на больших значениях ШИМ она практически не изменяется. Хотя для возможности калибровки необходимо увеличить разрядность ШИМ, правда тут возникают проблеммы с регулятором тока, т.к.он не сможет обеспечить разрядность больше 9 бит...
|
|
|
|
|
Oct 21 2010, 06:50
|
Группа: Участник
Сообщений: 10
Регистрация: 8-06-07
Из: Беларусь
Пользователь №: 28 288

|
Вот интересная Application Note от Cypress. Описывается принцип смешивания цветов трёх светодиодов RGB. Правда цвет там задаётся не в RGB формате, а в xyY...
|
|
|
|
|
Oct 21 2010, 07:54
|
Группа: Участник
Сообщений: 10
Регистрация: 8-06-07
Из: Беларусь
Пользователь №: 28 288

|
Цитата(Tanya @ Oct 21 2010, 10:07)  Лучше напишите, зачем Вам это все нужно. И кто и чем это будет контролировать. Светильники управляются по DMX, 3 канала DMX для задания цвета. Необходимо так откалибровать светильник, чтобы он выдавал цвет, соответствующий RGB коду и чтобы 2,5,100... светильников установленных в ряд выдавали один и тот же цвет и световой поток (с небольшим допустимым отклонением).
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|