Выберите правильный резистор для светодиода RGB (откалибруйте цвета)

Откалибруйте светодиоды RGB с правильным резистором

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

Выход ШИМ микроконтроллера имеет выход 255 различных значений.

Смешивая цвет со светодиодами rgb, вы выполняете некоторые математические действия... мне нравится hsl (hsv в mc) и преобразуйте его в значения rgb.

Итак, если я хочу желтый, мне теоретически нужно включить красный и зеленый на 100%.

RGB(255,255,0);

нет... не желтый...

  1. здесь легкость не учитывается... реальные значения rgb должны быть меньше 255 pwm. все установленное на 255 должно возвращать белый цвет.
  2. синий и зеленый светодиоды ярче.

в моем коде у меня есть что-то вроде этого

red*1
green*0.2
blue*0.15

я использую только 15% синего светодиода при смешивании цветов. 20% зеленого.

Максимальное используемое значение pwm равно 38.

38 из 255 возможных значений. Отходы!


Это резисторы, которые мне нужны для правильного питания светодиодов.

Красный: 5 В @ 2,1 В-20 мА = 150 Ом

Зеленый: 5 В при 3,2-20 мА = 100 Ом

Синий: 5 В при 3,1 В-20 мА = 100 Ом (исправленная ошибка 2,1 В против 3,1 В)

Как я могу откалибровать светодиоды аппаратно?

Я знаю, что мне нужно только 15% излучаемого света, исходящего от синего светодиода... какой резистор я должен использовать?

Есть ли какой-то расчет, который позволяет мне установить правильный резистор, возможно, на основе длины волны или других характеристик, содержащихся в техническом описании?

Поможет ли простой LDR откалибровать эти светодиоды?

Если я найду правильные резисторы для хорошего оттенка на основе яркости 50%, что вернет rgb (255 255 255) ??? белый или нет?

Что вы делаете, чтобы получить приятный визуальный оттенок на светодиодах RGB?

это для Shure также поможет решить некоторые проблемы по другому вопросу, который я задал некоторое время назад.

LDR + светодиод RGB = датчик цвета. Как его откалибровать?

Если у вашего светодиода есть хорошее техническое описание, в нем будет указано типичное значение силы тока в зависимости от светоотдачи (которое не является линейным). Из-за производственных допусков для получения точных результатов вам все равно необходимо выполнить калибровку в программном обеспечении, а для этого потребуется хорошее измерительное оборудование.
"хорошее измерительное оборудование"... как?
все, что может измерять точную откалиброванную выходную мощность светового спектра.
спектрорадиометр, спектрофотометр, спектроколориметр и измеритель цветовой температуры. Значит, нет математической формулы для нахождения резистора (не нужно быть сверхточным ..)? мне нужно около 15% света, который излучает синий светодиод....
Даже не угадали??? например, светодиод включается при 1 мА, 20 мА - это максимум, и поэтому, если мне нужно 20%, я должен рассчитать резистор на 4 мА ???
Вы можете легко получить несколько небольших потенциометров, настроить их, пока ваш свет не станет удовлетворительным, а затем измерить их значения с помощью мультиметра.
потенциометр, люменметр и ldr... это то, о чем я думал... чтобы сделать его еще ближе, используйте 8 светодиодов rgb и придайте каждому оттенок 360/8... Так что я могу увидеть, если желтый и другой посредник цвета правильные.
А как насчет длины волны каждого отдельного цвета и того, что видят мои глаза? есть ли какая-то математика позади?

Ответы (1)

Для начала, кое-что из вашей математики немного не так.
Для красного светодиода , если вы используете питание 5 В, а для красного светодиода требуется 20 мА и падение напряжения 2,1 В, вам понадобится ограничительный резистор (5-2,1)/0,02 = 145 Ом .
Для зеленого светодиода необходимо (5-3.2)/0,02 = 90 Ом.
Для синего светодиода необходимо (5-3.1)/0,02 = 95 Ом.

Предполагая, что эти резисторы вызывают одинаковую засветку светодиода, а интенсивность света изменяется прямо в зависимости от тока, подаваемого на светодиод, тогда вам необходимо уменьшить токи зеленого и синего светодиодов следующим образом:

Для зеленого светодиода требуется ток (20 мА x 20% =) 4 мА. Для того же падения напряжения требуется новый токоограничивающий резистор (5-3.2)/0,004 = 450 Ом .
Для синего светодиода требуется ток (20 мА x 15%) =) 3 мА. Для того же падения напряжения требуется новый токоограничивающий резистор (5-3.1)/0,003 = 633 Ом .

Очевидно, что если допущения неточны, то и результат вычислений не будет точен.
Если требуется большая точность, вам нужно будет использовать техпаспорт светодиода.

Вы неправы. Синий имеет падение напряжения 3,1 В. Прочтите различные технические описания RGB-светодиодов. "резисторы вызывают равную засветку светодиодов" НЕТ. Также интенсивность света НЕ является линейной. Вам нужно создать карту 255 значений для интенсивности, как только вы выбрали правильный резистор для максимальной яркости. Весь вопрос основан на том, что вы не полностью используете диапазон ШИМ на микроконтроллерах. Я думал использовать LDR для измерения каждого цвета, может быть, с помощью люменметра, а как насчет длины волны ... сказал это, перечитай свой ответ. Я не минусую, так что... хорошего дня.
Я не ошибаюсь, потому что я использую ваши данные. Для синего светодиода у вас такое же падение напряжения, как и для красного светодиода. Это твоя ошибка! Причина, по которой я не ошибаюсь в остальном, заключается в том, что я четко обусловил результаты двумя предположениями. Если допущения неверны, то и результаты неверны, но метод получения номинала резистора правильный.
о ... в моем вопросе ... это ошибка типа ... у красного всегда около 2-2,5, а у синего и зеленого - около 3-4. моя ошибка сори. я исправил ошибку
Хотя это правильно, я бы отметил, что одинаковая мощность (или ток) в светодиодах не всегда соответствует тому, что визуально воспринимается как более яркое (я думаю, что зеленый цвет имеет тенденцию казаться ярче iirc)