Умная RGB подсветка в выключателе на светодиодах WS2812B
Это продолжение предыдущего проекта в котором с помощью микроконтроллера Attiny13 я управлял обычным RGB светодиодом. Решение в принципе рабочее, но я решил все таки сделать RGB подсветку на умных светодиодах WS2812B.
WS2812 представляет собой RGB светодиод в корпусе SMD 5050 в корпус которого встроена микросхема WS2811.



Управлять светодиодом будем с помощью Atmega328 по CAN шине на микросхеме TJA10140. На этот раз была выбрана Atmega328 так как имеет аппаратный UART и для удобства написания программы. На будущее возможно добавить несколько эффектов для индикации каких либо событий. Код для микроконтроллера написан в среде Arduino IDE и доступен на GitHub.

Такая плата ставится в каждую группу выключателей.
Питание организовано на готовом регулируемом DC DC преобразователе, приобретенного на али. Преобразователь построен на базе микросхемы MP1584EN и поддерживает входное напряжение от 4,5 до 28 Вольт, а выходное регулируется в диапазоне от 0,8 до 25 Вольт.


Для управления устройством используется CAN шина, выполненная на микросхеме TJA1040. Команда управления имеет следующий вид:
21R150G12B70 , где 21 — адрес устройства. R150, G12 и B70 — уровень красного, зеленого и синего соответственно.
Для отправки команды сразу на все устройства используется адрес 99 (99R150G12B70).
Для записи в память устройства значения цвета, по умолчанию, т.е. при включении устройства после подачи на него питания, необходимо отправить команду с адресом 88 (88R150G12B70) и данный цвет будет записан в энергонезависимую память EEPROM микроконтроллера.




Можете сделать фото устройства, установленного в подрозетник с выключателем? Хватает места, или нужен глубокий подрозетник?
У вас одна витая пара к каждому блоку выключателей? По 2 проводникам CAN шина, а по остальным питающее напряжение? Сколько вольт?
А платы с микроконтроллером заводские или самостоятельно изготавливали? Поделитесь как это сделать? Заказать возможно?)
Плата имеет размер 32*17 мм. свободно помещается в обычный подразетник.
У меня в каждом выключателе ВВГ3*1,5 + кабель UTP 4 пары/
Питание 12 Вольт. Платы заказывал в Китае, в ближайшее время буду еще партию заказывать.
Спасибо за ответы! Но ещё остались вопросы. CAN передатчик для всех выключателей — один? Топология самой CAN шины тоже звезда? Разве шина не должна быть шиной? Или всё-таки вы так скоммутировали кабели, что получилась длинная шина (контроллер света-выключатель-контроллер света-выключатель-….)? Просто если CAN работает звездой (где выключатели — это оконечные устройства, а контроллер освещения центральный узел), то это прекрасно, очень удобно. Сколько у вас выключателей с RGB подсветкой всего? Какие примерно от них расстояния до контроллера? А платы приходят с уже распаянным компонентами или самостоятельно распаиваете? Я бы купил у вас готовых плат) Я точно также планирую сделать RGB подсветку в… Читать далее »
От каждой группы выключателей витая пара идет в шкаф, где CAN собран в одну точку на контроллер освещения. Получается обычная звезда. Расстояния до выключателей разные, от 3 метров до ~10м. Всего 6 групп, т.е. получается 6 устройств CAN не считая контроллера освещения.
Платы приезжают голые, я распаиваю все сам.
А каким устройством отправляете команды в CAN шину?
http://blog.instalator.ru/archives/657
А по какой топологии проложена витая пара до выключателей? (звездой, или шиной от выключателя к выключателю). Каждое помещение отдельной веткой или нет?
И как организована CAN шина?
Звезда. От каждого выключателя в слаботочный шкаф.
А какой волновое сопротивление витых пар (и, соответственно, терминальных резисторов)? На каких скоростях работаете?
Смущает, что либо будут отражения от концов, либо перегрузка драйвера, либо недостаточные уровни сигналов.
Не знаю волнового сопротивления витухи, скорость 19200. Резисторы уже не вспомню но общее сопротивление сети около 100 Ом если память не изменяет
А можете скинуть схему с номиналами и гербер файл, если имеется? Что бы повторить