Контроллер управления светодиодными RGB-лентами LED-C-01

В настоящее время многоцветная светодиодная лента получила большое распространение и пользуется повсеместной популярностью во многих областях человеческой деятельности. Так, в частности, RGB-ленты можно встретить в обычных квартирах и загородных домах. Нередко их используют в качестве украшения магазинов или торговых центров. В последние годы светодиодные многоцветные ленты стали служить украшением для автомобилей и применяются в тюнинге.

Для того, чтобы управлять такой лентой необходим специальный контроллер. Мы разработали электронное устройство, предназначенное для управления многоцветной светодиодной лентой — контроллер LED-C-01.

1ef4456924934447b2b9263f683478ee.jpg


Используя наш контроллер LED-C-01 можно управлять светодиодными лентами с любого устройства, на котором можно запустить интернет обозреватель, будь то стационарный компьютер, ноутбук, планшет или смартфон. Контроллер позволяет быстро и просто менять цвет ленты, включать и выключать устройство, а также просмотреть текущий статус ленты (вкл/выкл). Все это дает возможность управлять лентой на удаленном расстоянии.

Ключевые характеристики устройства


Вся элементная база построена на проверенных временем компонентах и не содержит дорогостоящих деталей, что позволило снизить стоимость контроллера и повысить его надежность.Железо

  • процессор ATmega 328;
  • управление светодиодами: методом ШИМ;
  • силовые ключи на основе полевых транзисторов IRL3716
  • 2 RGB-канала для подключения светодиодных лент;
  • интерфейс Ethernet для подключения к сети;
  • Ethernet-контроллер: ENC28J60;
  • напряжение питания – 12 В / 24 В, постоянное.


Прошивка

  • встроенный web-сервер для управления и настройки;
  • управление http-запросами (методом GET);
  • первоначальная настройка контроллера LED-C-01 осуществляется с помощью web-интерфейса.


Физические характеристики

  • пластиковый корпус;
  • габаритные размеры: 153х58х37 (мм);
  • масса: 0.25 кг;
  • рабочий диапазон температур: -25°C до 65°C.


Контроллер имеет один вход для питания. Поддерживается напряжение 12 В и 24 В (в зависимости от напряжения питания самой светодиодной ленты). Это позволяет осуществлять поддержку огромного числа светодиодных лент от разных производителей.
Помимо этого, на передней панели есть два разъема для подключения самих RGB-лент. Каждый разъем для подключения имеет три канала (для управления красным, зеленым и синими цветами ленты). Каждый канал способен выдержать нагрузку до 130 А.
Также на передней панели устройства имеется разъем RJ-45 для подключения контроллера к локальной сети «умного дома».

Изначально мы планировали использовать в каждом нашем устройстве разработанный нами Ethernet-модуль для управления девайсами посредством HTTP-запросов. Поэтому в данном контроллере мы также решили использовать этот модуль.

После того как мы выработали основные требований к нашему разрабатываемому контроллеру, мы сделали первый прототип устройства методом ЛУТ. Проверили его работу на нескольких обрезках светодиодных лент (длинных лент под рукой не было) и, убедившись, что все работает как мы и хотели, заказали первую партию плат на заводе:
c27c68cf65a14c018197dc7816e5ad8b.jpg

К тому времени как платы приехали с завода, наконец-то, была приобретена цельная лента длиной 5 метров и мы приступили к сборке девайсов.
Основная плата, без установленного Ethernet-модуля:
77c13651084d4566b2878df2a5792ea3.jpg

С установленным Ethernet-модулем:
caa2b4ddfc614c79a1e49accd8a3529d.jpg

Вид на плату со стороны разъемов:
7009b6ccfad745d296b58af698dcca59.jpg

После сборки мы подключили к устройству 5 метров светодиодной RGB-ленты и занялись тестированием.
Нас ждало разочарование. Нет, лента, конечно, загоралась и управлялась. Но передача команды на включение ленты белым цветом приводила к следующему (кликабельно):
7dfcb9a5079440c6a946d80eafe0e8a1.jpg

Мы выбрали слишком большую частоту для ШИМа (25 кГц) и лента светилась неравномерно.
После серии экспериментов с разными лентами мы остановились на частоте 750 Гц и всё стало на свои места цвета :)

Первый собранный экземпляр LED-C-01 перед установкой в квартиру моего друга мы поместили в готовый пластиковый корпус, купленный в соседнем магазинчике (на КДПВ как раз этот первый экземпляр, а ниже фото кликабельны):
73d7908554cd4f00bfae2549beca1f0a.jpg

В связи с тем, что корпус подбирался в очень сжатые сроки, пришлось воспользоваться термоклеем:
a003e5f41e75413b80f3fee1cf1fc3d0.jpg

Обратная сторона (со стороны крепления на DIN-рейку):
b31bc7b2bc8946a8b74ba267c84cf018.jpg

Девайс в сборе:
c91970682de2465185b5a570c7435e25.jpg

После того, как я намучился с этим корпусом во время его сборки, да и во время монтажа девайса в квартире друга (для подключения устройства необходимо полностью разобрать корпус, потом собрать), было принято решение изготовить корпус на 3D-принтере.

Для этого мы разработали модель корпуса:
dfc4db49bc8341bbba094489560c7953.jpg

И напечатали корпус на 3D-принтере (кликабельно):
122d40ceb6a54aad9ce3e557d5983b39.jpg a58abdb1e99a47649d5d018c07f1a2a7.jpg

f7c386013d3a410da759b902d31fc024.jpg fba9ea7fc04b42bc852e99256f537e91.jpg

В итоге второй экземпляр получился таким (кликабельно):
a07aa35ab4b245a68f5170d70a3a64f3.jpg

Как происходит управление контроллером?


Устройство управляется с помощью протокола HTTP (метод Get). Контроллер подключается к локальной сети «умного дома» (посредством разъема RJ-45) и им можно управлять с любого компьютерного устройства, также подключенного к этой сети.
В данный момент времени протокол SSL не поддерживается, и поэтому предусмотрено специальное секретное слово, с помощью которого можно ограничить управление контроллером.

Управление осуществляется следующим образом. При обращении к контроллеру из браузера с любого компьютерного устройства — открывается web-страница. На ней можно задать первоначальные параметры: установить IP-адрес устройства и секретное слово, а также установить цвет светодиодных лент, и включить и выключить ленты.

Все необходимые аргументы запроса передаются в его параметрах.
Например, включение белого цвета ленты, подключенной ко второму каналу контроллера, выполняется следующим запросом:

http://192.168.2.18/secretword/?frm=2&red2=255&green2=255&blue2=255&smo2=0


Здесь параметры red2, green2 и blue2, как можно догадаться, отвечают за цвет.
Параметр smo2 установленный в значение «0» говорит о том, что переключение цвета будет резкое, а не плавное.
Если указать smo2=8, то переключение состояния ленты будет происходить в течение восьми «условных интервалов времени» :)
Каждый «условный интервал времени» равен 5 секундам.

Для манипуляции первым каналом необходимо передавать такие же запросы, только вместо «2» во всех именах параметров будет «1». Например,

http://192.168.2.18/secretword/?frm=1&red1=255&green1=0&blue1=0&smo1=5


В результате данного запроса лента на первом канале переключится в красный цвет в течение пяти «условных интервалов времени» (то есть 25 секунд) :)

Спасибо за внимание!

В следующих статьях я расскажу о наших устройствах для:

  • Сбора информации от датчиков движения.
  • Управления электрическим тёплым полом.
  • Управления освещением лестницы.
  • Multiroom-контроллере.

С Днем учителя!

© Geektimes