8-900-374-94-44
[email protected]
Slide Image
Меню

Лампа настроения на pic12f629: RGB светильник на PIC12F629 — Микроконтроллеры и Технологии

Лампа настроения | RadioLaba.ru — программирование микроконтроллеров PIC


Увидел я как-то в сети интересную конструкцию, цветную лампу на основе трехцветного светодиода мощностью 3Вт, то есть каждый кристалл мощностью в один ватт, с виду лампа медленно переливалась всеми цветами радуги, что очень неплохо выглядело.

Повторять конструкцию не стал, а решил все сделать с нуля и по своему, первым делом я подумал, что 3-х ваттный светодиод это несерьезно, все-таки маловато света, поэтому заказал в одном интернет магазине 10-ти ваттный трехцветный светодиод. На нем видно, что каждый “цвет” составлен из трех последовательно соединенных светодиодов мощностью в один ватт, соответственно падение напряжения для каждого цвета увеличивается, и составляет для красного 6,2В, для зеленого и синего 9,4-9,5В при номинальном токе 0,35А.


В вышеупомянутой конструкции из сети, для задания цвета применялась цветовая модель под аббревиатурой HSV, ну я ничего изобретать не стал, решил применить ту же модель. Она удобна тем, что можно независимо задавать яркость, насыщенность, тон, и на выходе мы получаем значения интенсивности для каждого канала: красного, синего и зеленого. С помощью широтно-импульсной модуляции (ШИМ) значения интенсивности можно передать на светодиоды.

В качестве микроконтроллера был выбран PIC16F676, так как мне нужен был модуль АЦП. Модуль ШИМ в данном микроконтроллере отсутствует, поэтому он реализован программно на обработчике прерываний, итого 3 канала разрядностью 8 бит и частотой 330Гц, чего достаточно, чтобы не было заметно мерцаний светодиодов. На операционных усилителях DA5, DA6 и транзисторах VT1-VT3 собраны стабилизаторы тока для светодиодов. Для примера рассмотрим стабилизатор тока на DA5. На неинвертирующий вход ОУ через делитель напряжения подано стабильное опорное напряжение от стабилизатора DA3 (TL431). Делитель напряжения собран на резисторе R13 и подстроечном резисторе R14, то есть опорное напряжение можно регулировать. Когда на инвертирующем входе ОУ напряжение больше опорного, то стабилизатор тока не работает, светодиод выключен, такое состояние устанавливается при высоком логическом уровне на линии порта RC0 (10-й вывод) микроконтроллера. При низком логическом уровне на этой линии, напряжение на инвертирующем выводе ОУ становится меньше опорного напряжения, в результате транзистор VT1 открывается и светодиод зажигается, тем самым начинается процесс стабилизации тока, ОУ начнет выравнивать напряжение на инвертирующем входе в соответствии с опорным напряжением. То есть имеем стабильное напряжение на резисторе R18, а отсюда и стабильный ток через светодиод, равный отношению опорного напряжения к сопротивлению этого резистора. Диод VD8 установлен для “отсечки” низкого логического уровня со стороны микроконтроллера, иначе стабилизатор тока не будет работать. Переменный резистор R11 установлен для регулировки параметров для разных режимов лампы. Его средний вывод подключен на вход АЦП микроконтроллера.


Устройство имеет 4 режима работы, переключение между которыми осуществляется кратковременным нажатием кнопки SB1. После подачи питания по умолчанию устанавливается пульсирующий режим, при котором лампа плавно зажигается и гаснет шестью основными цветами, это красный-голубой-фиолетовый-зеленый-желтый-синий. Следующий режим, это плавная смена цветов по всему спектру от красного до фиолетового. В обоих режимах переменным резистором R11 можно менять скорость пульсаций и скорость смены цветов. Крайнему нижнему по схеме положению движка переменного резистора соответствует высокая скорость, крайнему верхнему положению низкая скорость. В третьем режиме при помощи переменного резистора можно выбрать любой постоянный цвет свечения лампы. В четвертом режиме лампа светит белым светом, то есть интенсивность свечения всех трех светодиодов одинакова, насыщенность цвета нулевая. Переменным резистором в этом случае регулируют яркость свечения. При крайнем нижнем положении движка переменного резистора лампа погашена, крайнему верхнему положению соответствует максимальная яркость.

Теперь несколько слов о блоке питания. Трансформаторный блок питания я исключил из-за громоздкости и тяжести. За основу взял импульсный блок питания на микросхеме Viper22a от DVD плеера. Мощность этой микросхемы составляет 20Вт, а для устройства нужен блок питания не менее 10Вт. Итак, я выпаял все детали из родной платы и впаял в плату, которую специально развел и изготовил под самодельный корпус лампы. Сильноточная обмотка импульсного трансформатора была рассчитана на 5В, так что мне пришлось домотать обмотку, и подрегулировать напряжение с помощью резисторов R7, R8. Выходное напряжение установил на 11,3В, сильно увеличивать не стал, так как это приведет только к увеличению нагрева транзисторов.

В устройстве применены постоянные резисторы МЛТ. Транзисторы КТ817А заменимы на КТ815А, их необходимо установить на теплоотвод, причем для транзистора VT1 потребуется теплоотвод с большей площадью поверхности, так как падение напряжения на нем больше чем на остальных транзисторах. Подстроечные резисторы СП3-38а, переменный резистор практически любого типа, с линейной характеристикой изменения сопротивления от угла поворота. Операционные усилители желательно заменять компараторами, так как не все ОУ могут работать в режиме компаратора. Светодиод также необходимо установить на теплоотвод площадью не менее 120 см2. Резисторы R18, R24, R30 должны иметь мощность не менее 0,25-0,5 Вт, так как при протекании через них тока в 0,35 А, на них будет рассеиваться мощность в 0,122 Вт.

Перед первым включением необходимо подрегулировать ток через светодиоды. Для этого исключаем из схемы микроконтроллер, устанавливаем движки подстроечных резисторов в нижнее по схеме положение, включаем последовательно со светодиодом амперметр, и подаем питание на устройство. Вращая движок подстроечного резистора, устанавливаем ток через светодиод в пределах 0,34 – 0,35 А. Такую же процедуру проделываем для остальных светодиодов. После чего, отключаем питание и устанавливаем микроконтроллер.

В качестве корпуса я использовал матовый шарообразный рассеиватель диаметром 20 см. Купил его в магазине светотехники, вместе с основанием для крепления на стену. Рассеиватель весьма добротный, пластиковый, имеет равномерную матовость, и очень легкий. Из крепежного основания я извлек патрон, и установил туда светодиод с теплоотводом. Далее нашел корпус в виде усеченного конуса, установил в него плату и крепежное основание. После чего вкрутил рассеиватель, и вот лампа готова.

Прошивка МК и исходник

RGB ЛАМПА НА МИКРОКОНТРОЛЛЕРЕ

   Светильник является полным аналогом лампы настроения, от известных фирм. Питание лампы осуществляется от импульсного источника питания работающего на ключе TNY245, на основе AC-DC преобразователя. Драйвер 3-х ватного светодиода RGB собран на микроконтроллере Attiny13, он имеет 3 режима работы и автоматический режим. Плавное изменение цвета основано на способности микроконтроллера генерировать ШИМ сигнал разной ширины, тем самым с помощью трех основных цветов можно воспроизводить миллионы цветовых комбинаций. А последние, перед выключением, настройки, сохраняются в энергонезависимой памяти EEPROM и поэтому после включения вы будете видеть тот режим, который был последним при предыдущем включении.

   Режимы работы лампы:

  1. плавное изменение цвета RGB
  2. постоянный цвет при остановленном режиме
  3. белый цвет при максимальной мощности

   Так как нет кнопки переключения режимов, чтобы его изменить, нужно произвести кратковременное  выключение устройства и режим смениться.

   Программа написана в компиляторе Bascom, файл прошивки и EEPROM, исходники и макеты печатных плат в формате Eagle.

   Fuse-биты: частота внутреннего генератора 4,8 МГц, делитель на 8 отключен, startup time 64 мс, brown-out detector 1,8 В.

   Схема контроля за питанием состоит и диода 1N4148 и резистора на 1 килоом. Резистор позволяет быстро обнаружить превышение мощности. И когда она обнаруживается, программа ждёт 1 секунду, после этого следует проверка, если всё правильно, то изменяется режим и происходит его сохранение в энергонезависимой памяти, если нет, тогда программа деактивируется.

   Так как был использован мощный светодиод, ток потребления каждого излучателя составляет около 700 мА,  и например в 3-м режиме расходуется 2,2 A.

   Не забудьте поставить подходящие токоограничивающие резисторы, и обратите внимание, что красные излучатели имеют одинаковый ток при низком напряжении. Транзисторы берутся NPN проводимости, биполярные с мощностью канала не менее 1 А.

   О том, каким должен быть импульсный блок питания, смотрите в приложении к описанию TNY245. Можно попробовать использовать 5 В трансформатор от ATX блока питания. Обязательно помните, что 3W RGB светодиод во время работы нуждается в охлаждении, поэтому необходимо установить радиатора и обязательно проверить температуру их нагрева – не должны быть горячими.

   Очень хотелось, чтобы лампа была мощной и пригодной для использования и при дневном освещении. Эта задача была выполнена благодаря 3-х Вт светодиодам, они дают необычайно яркую интенсивность света. Смешение цветов у таких светодиодов происходит плавно, так как кристаллы расположены близко  друг к другу. Убедится, в этом, можно посмотрев на фотографии.

   Схема, п/плата, монтажная плата, файл прошивки, исходники и другие необходимые для сборки вещи – в архиве для скачивания.

RGB LED Mood Light Автономный ШИМ-контроллер для RGB-светодиодов с использованием PIC12F629

Понедельник, 12 июня 2017 г. / Ибрар Айюб

Этот проект является обновлением исходного драйвера RGB LED PWM. Новая версия позволяет использовать либо 5-миллиметровые светодиоды, либо светодиоды Superflux / Piranah с квадратным корпусом. В схеме теперь используются биполярные транзисторы, а не полевые МОП-транзисторы, что делает ее более подходящей для начинающих конструкторов, и впервые этот проект доступен в виде набора со всеми деталями, необходимыми для сборки печатной платы, включая сверхпоточные светодиоды. (блок питания не входит в комплект)

Полная схема и подробная информация о конструкции показаны на этой странице, а также прошивка для загрузки для тех, кто хочет создать свои собственные эффекты или построить свою версию на основе схемы. Если вы не занимаетесь программированием, в комплект входит микроконтроллер PIC с предварительно запрограммированной прошивкой и ряд световых эффектов.

Схема Описание

Сама схема довольно проста. Диод D1 обеспечивает защиту платы от обратной полярности при обратном подключении блока питания. C1/C2 и IC2 принимают входящее питание 12 В и обеспечивают регулируемое питание 5 В, требуемое микроконтроллером PIC.

Красный, зеленый и синий светодиоды расположены в виде трех параллельных цепочек по три светодиода. Резисторы R1, 2 и 3 ограничивают ток через светодиоды до безопасного значения при использовании блока питания 12 вольт. Низкая сторона каждой цепочки светодиодов подключается к NPN-транзистору BC547, который используется для включения и выключения светодиодов. Эти транзисторы, в свою очередь, управляются микроконтроллером PIC, который управляет каждым из транзисторов красного, зеленого и синего каналов с помощью ШИМ-сигнала для управления средней яркостью светодиодов. Переключатель S1 используется для выбора различных последовательностей эффектов. Программа прошивки, работающая на микроконтроллере PIC, является интеллектуальной частью схемы и определяет, какие цвета генерируются и как они переходят от одного цвета к другому.

Три цвета светодиодов расположены на печатной плате в неравномерном порядке для улучшения эффекта смешивания цветов при размещении позади или внутри рассеивателя, такого как шар из матового стекла.

В контроллере используются (RGB) красные, зеленые и синие светодиоды высокой яркости с широтно-импульсной модуляцией (ШИМ) для изменения интенсивности каждого цветного светодиода. Это позволяет эффективно генерировать любой цвет с быстро меняющимися стробоскопическими эффектами, быстрым и медленным исчезновением цвета, а также статическими цветами. Данные, используемые для установки и изменения цветов, хранятся в легко редактируемом файле, поэтому, если вам не нравятся предоставленные с ним последовательности, вы можете самостоятельно изменить включаемый файл данных последовательности и перепрограммировать свои собственные последовательности. (для этого вам понадобится программатор PIC и некоторые практические знания в области микроконтроллеров и программирования.)

Размеры печатной платы 50 мм x 50 мм.

Печатная плата, входящая в комплект, изготовлена ​​профессиональным производителем, покрыта паяльной маской сверху и снизу и наложена трафаретной печатью на ламинат FR4 с отделкой RoHS.

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

Готовая печатная плата, поставляемая в комплекте, имеет сквозные металлические отверстия, поэтому это не применимо.

Набор, который можно приобрести в интернет-магазине Picprojects, содержит все детали, необходимые для создания RGB LED Moodlight. Это включает в себя все компоненты, качественную двустороннюю печатную плату FR4, светодиоды Superflux и микроконтроллер PIC12F629, предварительно запрограммированный с прошивкой.

Блок питания 12 В не входит в комплект

В качестве опции доступны разъем питания постоянного тока 2,1 мм для монтажа на шасси и 100 мм красный/черный провод

Подробнее: RGB LED Mood Light Автономный ШИМ-контроллер для RGB-светодиодов с использованием PIC12F629

Категории: Проекты домашней автоматизации, Светодиодные проекты, Проекты, ШИМ-проекты с PIC12F629 — Страница хобби Пеноффа

Этот проект представляет собой небольшую схему для управления группой RGB-светодиодов с общим анодом или сгруппированными одноцветными светодиодами (как в данном случае) с помощью ШИМ-контроллера. А для того, чтобы схема была очень простой, используется минимальное количество компонентов, а также микроконтроллер low end от Microchip. Вот почему я думаю, что эту схему сможет построить даже новичок. Кроме того, нет трудно найти используемые компоненты.

Этот проект основан на идее, что самые простые вещи всегда самые лучшие. Микроконтроллер, который управляет светодиодами, PIC12F629. Это 8-контактный микроконтроллер младшего класса и соответственно низкая цена (0,70 $ на сайте Microchip). Одна кнопка используется для изменения режима освещения. Микроконтроллер работает как ШИМ-регулятор (широтно-импульсная модуляция), благодаря которому яркость светодиодов плавно меняется. Поскольку низкий уровень означает небольшое количество встроенных периферийных устройств, этот контроллер не имеет аппаратного модуля ШИМ. так реализован программный. Кроме того, не используется внешний генератор или резонатор, что ограничивает тактовую частоту до 4 МГц или 1 миллион операций в секунду. Учитывая небольшой объем программной памяти и все вышеперечисленное, накладываются некоторые ограничения.

Наиболее важными являются низкая частота ШИМ (около 400 Гц) и отсутствие ручной регулировки коэффициента заполнения для всех трех генераторов (по одному на каждый цвет).

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


Схема работает следующим образом. После подачи питания микроконтроллер инициализирует свои внутренние регистры и периферийные устройства и загружает последний запомненный режим освещения. Контакты 5, 6 и 7 посылают сигналы на транзисторы Q1, Q2 и Q3, которые управляют группами светодиодов. Необходимость использования транзисторов обусловлена ​​малым выходным током на выводах микроконтроллера, который составляет до 25 мА (лучше не превышать 20 мА) и этого достаточно только для одного светодиода. Блок питания должен иметь две линии питания: 5В и 12В с общей линией заземления. Можно также использовать источник питания 12 В и поставить стабилизатор напряжения для обеспечения 5 В для PIC. Кнопка SW1 используется для переключения всех режимов освещения, которые будут перечислены далее. Используя внутреннюю подтягивающую способность микроконтроллера, нет необходимости подключать внешний подтягивающий резистор. Базовые резисторы R1, R2 и R3 выбраны равными 1 кОм, но рекомендуется использовать большее значение, например 10 кОм, чтобы ограничить ток, протекающий через транзисторы в случае отказа или перегрузки. Выбраны транзисторы BC547C с β=500 (также известные как h31). Это означает более высокую энергоэффективность. По той же причине для светодиодного модуля используется источник питания 12 В. Как видно на нижней схеме, используются одноцветные светодиоды. Они соединены в 4 блока по 3 группы по 3 светодиода. В противном случае можно собрать 4 печатные платы, содержащие по 3 светодиода каждого цвета, или всего 9.для каждой доски. Резисторы в светодиодном модуле используются для ограничения тока через светодиоды, и их значения являются ориентировочными. Значения зависят от используемых светодиодов (падение напряжения на диоде и его номинальный ток). В случае, если вы решите строить эту схему, номиналы резисторов должны быть рассчитаны самостоятельно или найдены путем измерений.

Красные светодиоды изготовлены из полупроводников с малым падением напряжения на PN-переходе, поэтому эти светодиоды начинают излучать свет при более низком напряжении. Именно по этой причине для этих светодиодов выбирают резисторы с более высокими значениями.

Транзисторы, используемые в этом проекте, имеют номинальный ток 100 мА и рассеиваемую мощность 0,5 Вт. Следует измерить ток, протекающий через светодиодные блоки, которые он планирует подключить к контроллеру, чтобы предотвратить перегрузку. Транзистор конечно можно поменять на более мощный, но очень важно проверить ток базы, иначе выводы микроконтроллера могут быть перегружены. Чтобы предотвратить это, можно использовать полевые МОП-транзисторы, которые могут управляться сигналами ТТЛ на их затворах. Они также имеют более высокую цену (до 10 раз, а иногда и больше). МОП-транзисторы не выбираются по этой причине.

Спецификация не представлена, так как схема содержит небольшое количество компонентов, значения которых можно взять непосредственно из схемы. Также отсутствуют компоненты со специфическими характеристиками.

В целом модуль управления предлагает следующие функции:

  • 14 режимов освещения
  • запоминание выбранного режима освещения и его автоматическая загрузка при запуске (удерживать кнопку не менее 2 секунд, пока активен выбранный режим)
  • 3 выхода с открытым коллектором с номинальным током 100 мА и напряжением до 45 В

Список режимов освещения:

  1. Все светодиоды выключены
  2. Все светодиоды включены (белые)
  3. Постоянно горят красные светодиоды
  4. Зеленые светодиоды горят постоянно
  5. Синие светодиоды горят постоянно
  6. Постоянно горят красный и зеленый светодиоды
  7. Постоянно горят красный и синий светодиоды
  8. Постоянно горят зеленый и синий светодиоды
  9. Плавное изменение цвета с градацией между тремя основными цветами
  10. Плавное изменение цвета между тремя основными цветами (без градации)
  11. Плавное мигание красных светодиодов (от минимума до максимума до минимума до …)
  12. Плавное мигание зеленых светодиодов (от минимума до максимума до минимума до …)
  13. Плавное мигание синих светодиодов (от минимума до максимума до минимума до …)
  14. Плавное изменение цвета между тремя основными цветами с градацией, за которой следует плавный переход между парами цветов, заканчивающийся белым

Для использования схемы также потребуется программное обеспечение для микроконтроллера.

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *