085-Контроллер RGB ленты на ATtiny2313.

Автор: | 20.05.2012

кусочки лентыВсе началось с идеи управления нагрузкой не постоянного тока, а переменного. Очень хорошая идея была предложена Сергеем (Ghjuhfvvf) вот тут. В развитии этой идеи им были разработаны и построены схемы управления нагрузкой переменного тока как с пульта так и по сенсорному управлению (но это тема отдельного топика и вероятно Сережа созреет для того, чтобы выложить свою работу на форуме). Меня же, чисто из прикладных соображений, заинтересовала возможность управлять RGB светодиодной лентой. За базу был взят вышеуказанный алгоритм.
Сразу приношу извинения за возможные нерациональности в тексте программы. Я не программист и поэтому, вероятно, мне это простительно.


1 Схема.

Схема несложная. Включение ленты делалось через сборку Дарлингтона. Для ленты самое то (при токах нагрузки до 1А на канал или при длине стандартной ленты до 2м). Она инвертирует сигнал, что как раз кстати для ленты с общим анодом (а таких в RGB варианте большинство). Для алгоритма это означает что включать свечение можно единицами.

scheme-RGB-ULN.spl7 - Схема контроллера RGB ленты на ULN
ULN2003.pdf - Даташит на сборку Дарлингтонов ULN2003


Дальше вариант для полевиков IRF640 (при больших токах нагрузки)

scheme-RGB-IRF.spl7 - Схема контроллера RGB ленты на IRF
IRF640.pdf - Даташит на полевой транзистор IRF640


2 Плата.

Печатную плату не делал — собрал на макетке. Но специально для Вас :),  набросал в сплинте оба варианта для ULN и для IRF. 
PBC-RGB-ULN.lay - Печатка контроллера RGB ленты для ULN
PBC-RGB-IRF.lay - Печатка контроллера RGB ленты для IRF


3 Алгоритм работы.

В самой программе алгоритм достаточно подробно описан в комментариях. Мне кажется все должно быть понятно. Дополнительно только скажу то, что ШИМ реализован программно, а поскольку программа не помещалась в память AtTiny2313A, то все коды кнопок пульта сразу были прописаны в алгоритме (без блока программирования кнопок). В программе также есть участок генерации случайных чисел. Я попытался в нем реализовать принцип М-последовательности. Похоже пока это лучший программный алгоритм генерации случайных чисел.
RGB controller(ULN+IRF) - Исходник контроллера RGB ленты


4 Реализация.

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

На картинке  пульта приведены коды всех кнопок для того, чтобы было легче разобраться в программе. Если кому понадобятся пояснения в последовательности записи кнопок в базу данных — спрашивайте. Вы можете заменить коды в программе на свои, считанные с пульта через UART вот этим: 074-Преобразователь IR-to-UART на ATtiny2313..


5 Прошивка.

С прошивкой все как обычно — описывать нечего…
RGB-Controller.hex - Прошивка контроллера RGB ленты для ATtiny2313
FuseBits - Фьюз биты для контроллера RGB ленты
Для Algorithm Builder и UniProf галочки ставятся как на картинке.
Для PonyProg, AVR Studio, SinaProg галочки ставятся инверсно.
Как правильно прошить AVR фьюзы


6 Демонстрация работы контроллера RGB ленты.

Видео демонстрирует как работает контроллер с лентой в различных режимах.


7 Заключение.

Хотел бы поблагодарить за помощь и подсказки в разработке соавтору Ghjuhfvvf и всем активным участникам форума, в особенности SVN и anatoliy.

В планах сделать контроллер на 3 ленты на AtTiny2313A, управляемых с одного пульта. Всех заинтересованных прошу отписываться здесь или мне на почту (Kolini1967*ukr.net   * заменить на @). Спасибо.

(Visited 10 061 times, 9 visits today)

085-Контроллер RGB ленты на ATtiny2313.: 218 комментариев

  1. Dron_333

    Собрал, все заработало, но увы устройство паразитно реагирует на пульт от телевизора LG… 🙁

  2. apollo333

    Приветствую всех! А можно вопрос? Здесь уже кто-то интересовался, но я ответ не видел. Можно ли как-то прикрутить микрофон с пред.усилителем, чтобы помимо переключения пультом, можно было включать функцию светомузыки?

  3. GetChiper

    В этом устройстве нет.

  4. apollo333

    А в каком утройстве есть такая возможность? Можно ссылку на схему прошивку описание, если не затруднит?

  5. apollo333

    Спасибо! Но это если ленты умные, а если глупые? То что делать? Я имею ввиду, если обычная лента РЖБ, на четыре контакта. Вот такое сделать http://olx.ua/obyavlenie/svetomuzyka-iz-rgb-lenty-muzykalnyy-pult-s-kontrollerom-IDgLO4g.html#3d2c5b6308 или к этому что в данной статье прикрутить микрофон, микрофонный усилитель, фильтра НЧ,СЧ,ВЧ и прицепить вместо какого-то цвета чтобы переключалось со стачиеской подсветки в динамическую, от сигнала микрофона на вход ленты, согласно частотам произвольно, или назначить каждый цвет для каждых частот например: зелёный — СЧ, красный — ВЧ, синий — НЧ.

  6. GetChiper

    В данном конкретном МК нет АЦП поэтому микрофон чисто физически не получится подключить. Это в любом случае должен быть другой МК.

  7. apollo333

    хорошо, а если сделать, отдельную схемку, только чтобы этот контроллер включал её и выключал (вместо какого-то цвета)? Скажем микрофонный усилитель с ключами управления и фильтрами включается по какой-то кнопке?

  8. apollo333

    А еще чтобы не делать дополнительные ключи, чтобы пустить с выходов фильтров на входы тех ключей что есть?

  9. GetChiper

    Если делать на другом МК то туда можно и фильтры программные заделать — поэтому нет смысла делать гибрид.

    Со временем реализую что-то для таких применений.

  10. apollo333

    А на каком другом? Мега8-16 подойдет? Ибо если покупать что-то другое, тогда дешевле готовый купить.

  11. GetChiper

    Если я буду делать, то это будет на меге328 (чтобы можно было запустить на ардуине)

  12. exxr

    А как насчет реализации 4 канала — для чистого белого цвета? Возможен ли такой вариант устройства???

  13. Remm

    Здравствуйте!
    Вопрос разработчику: а не могли бы Вы добавить еще управление энкодером?

  14. Владимир-Ульянов

    Присоединяюсь к просьбе предыдущего комментатора. Добавьте поддержку энкодера в прошивку, пожалуйста. Скажем, короткий клик кнопкой — вкл/выкл ленту с текущим цветом, при включенной ленте вращение энкодера — плавная смена яркости по кругу, при вращении с зажатой кнопкой — изменение яркости.
    В алгоритм-билдере не силён, даже чистый асмовский листинг для меня более удобочитаем, так что вся надежда на Вас, уважаемый автор.

  15. admin

    В разрезе темы AAL (http://www.getchip.net/topics/aal/) планирую сделать и модификацию для RGB-ленты. В новое устройство можно будет запихать все что угодно.

Добавить комментарий