Реклама ⓘ
Главная » Микроконтроллеры
Призовой фонд
на апрель 2024 г.
1. 100 руб.
От пользователей

Реклама ⓘ

LED светильник с ШИМ и таймером

Данная конструкция реализована на микроконтроллере PIC12F683. Этот выбор обусловлен как размерами, так и невысокой стоимостью последнего. Схема, как видите, повторяема даже самыми начинающими из начинающих радиолюбителей, хоть немного знакомых с микроконтроллерами (хотя и знания микроконтроллеров тут не надо, просто вставил микроконтроллер в программатор, нажал на кнопку «программировать», указал .hex файл и все).

Теперь подробнее о работе программы. После включения питания программа ждет нажатия кнопки SB2. При нажатии кнопки (время нажатия < 1 с) происходит выбор времени таймера (одно нажатие - 50 секунд, второе - 300 секунд, третье - 900 секунд). При желании, можно изменить время таймера (свечения). Рассмотрим это на примере задержки равной 50 секунд ( изменим значение на 100 секунд). Итак, для этого достаточно в .с файле найти строчки:
//Delay
//Delay: 50 s
delay_s(50);
Там где значение 50, нужно подставить 100
//Delay
//Delay: 100 s
delay_s(100);

На этом изменения в коде заканчиваются. Что касается ШИМа, то в микроконтроллере PIC12F683 имеется аппаратный ШИМ, что я и использовал в этой схеме. Его работа тут сводится к минимуму: он применяется лишь для плавного включения/выключения светодиодов.

Схема устройства:

Схема LED светильника с ШИМ и таймером

Как я уже говорил, схема очень простая. Кроме микроконтроллера из внешних деталей лишь два транзистора, четыре резистора да  пару кнопок не считая светодиодов. Резисторы R4 и R1(R6, R5) для того, что бы ноги микроконтроллера не висели «в воздухе», пока кнопки не нажаты.А R2,R3 для ограничения тока(если их убрать, то микроконтроллер может выйти из строя). Кнопка SB1, как уже говорилось выше, кнопка управления, а SB2 - сброс микроконтроллера (применяется для прерывания работы таймера). Питание стандартное, 5V. Для усиления мощности портов микроконтроллера, я использовал банальные биполярные ключи. ВНИМАНИЕ! Транзистор Q1 выбирайте в зависимости от применяемых вами светодиодов, и при необходимости снабдите его радиатором! В своей схеме я использовал маломощные светодиоды, так как планировал питать светильник от аккумуляторов, либо от батарей, поэтому у меня на схеме маломощный транзистор.

Печатная плата

Печатная плата устройства разрабатывалась под два возможных варианта: микроконтроллер в корпусе DIL и детали в традиционных корпусах, и соответственно под микроконтроллер в корпусе SOIC и деталями в smd исполнении. Вот первый вариант. В нем размеры платы относительно большие, так как детали тоже относительно габаритные.

Печатная плата

Но в силу сложности изготовления второго и объемности первого было решено их совместить:

Печатная плата

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

Что касается замены деталей:
Транзистор Q2 можно заменить на КТ315(буква любая),Q1 любой n-p-n средней мощности, резисторы R1 и R4 любые от 2-х до 10-ти кОм, R2 и R3 от 2-х до 5-ти кОм. Параллельно источнику питания желательно поставить блокировочный конденсатор в пределах 0,01-0,1 микрофарад. Это предотвратит возможные помехи и сбои в работе программы. Если вы используете сетевой источник питания, то еще можно подключить параллельно ему конденсатор емкостью 1000-2200 микрофарад на напряжение 16 вольт. Микроконтроллер (без изменений в программе) другим заменить нельзя! Использовать МК PIC12F629 и PIC12F675 так же невозможно, так как у них отсутствует ШИМ.

О проблемах:
В этот раз не обошлось и без проблем, так например работу ШИМа PROTEUS ну никак моделировать не хотел (в приложении прошивка с ШИМ и без него, сами попробуйте, что вас устраивает больше). Так же в приложении выкладываю исходники программы, скомпилированную прошивку, проект в PROTEUSе (файл печатной платы в проекте есть, открывается ARES), а так же проект в Flowcode.

Управление светильником:
Управление у этого девайса очень простое. Кратковременным нажатием кнопки SB1(до выключения светодиода LED1) производится выбор времени выключения таймера (подробнее в начале статьи). Если кнопку нажать и удерживать пока светодиод не загорится второй раз, и отпустить до того как он выключится, то активируется таймер, с тем временем выключения которое вы установили кратковременными нажатиями. Обратите внимание! Если кнопка ни разу не была нажата кратковременно, то таймер не активируется и светильник опять уйдет в режим ожидания. Если нажать кнопку и отпустить ее после того как светодиод выключится второй раз, то включится режим «постоянного освещения» то есть светильник будет светить пока не разрядится аккумулятор или не сядет батарейка (в случае питания от сети будет светить постоянно). Что бы сбросить устройство в первоначальное состояние во время работы таймера используется кнопка «сброс» SB1.

P.S. Это мой первый самостоятельно созданный с нуля проект на микроконтроллере, поэтому не судите строго. Если заметите какие то неточности в схеме или прошивке - оставляйте комментарии к статье.

Ниже вы можете скачать исходники, прошивку, проект в Proteus и Flowcode

Список радиоэлементов

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
U1 МК PIC 8-бит
PIC12F629
1 Поиск в магазине ОтронВ блокнот
Q1, Q2 Биполярный транзистор
2N1711
2 Поиск в магазине ОтронВ блокнот
D1-D7 СветодиодСиний7 Поиск в магазине ОтронВ блокнот
R5-R8 Резистор
2 кОм
4 Поиск в магазине ОтронВ блокнот
SB1, SB2 Тактовая кнопка2 Поиск в магазине ОтронВ блокнот
Добавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Теги:

Ресин Евгений Евгеньевич Опубликована: 2012 г. 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (1) | Я собрал (0) | Подписаться

0
Евгений #
В программировании я ноль. Попал на ремонт аппарат Брисоль-1, когда брал сказали что вентиляторы как компьютерные, но они хоть и на 12 вольт, но потребление у них около 8 ампер на 2 вентилятора. В схеме был ШИМ, 8 светодиодов индицировали мощность ШИМ в %, а таймер от 15 до 60 минут регулировал время включения. Индикация таймера на 7 сегментном 2х разрядном индикаторе. Проблема в соли которая все разьедала, почистил кварц ЗГ и схема запустилась, но через полчаса зависла и больше МК 90USB162 признаков жизни не подает.
Без прошивки тупик, а программировать не могу.
Ищу выход из проблемы. Можно в вашу схему добавить регулировку ШИМ с кнопок больше меньше и таймер изменить на 15, 30, 45, 60 минут? Спасибо за статью, на крайний случай использую её и отдельный китайский ШИМ регулятор.
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическое сопротивление?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

Pickit 2 - USB-программатор PIC-микроконтроллеров
Pickit 2 - USB-программатор PIC-микроконтроллеров
Конструктор - темброблок на LM1036 ELM327 OBD II — адаптер с поддержкой CAN
вверх