Мягкое включение подсветки когда прихожу, выключение когда ухожу... это шикарно. Не представляю как же я жил без этого! Мне это так понравилось, что хочу поделиться с вами этим проектом.
Начнём!
Контроллер подсветки предназначен для управления светодиодными лентами. Его основными функциями являются: плавное включение подсветки по датчику движения, регулирование яркости с помощью потенциометра и плавное выключение в отсутствие человека.
Для проекта мне понадобились отрезок светодиодной ленты, блок питания, и контроллер.
Светодиодная лента:
1. Лента должна быть рассчитана на 12В(любого свечения).
2. Максимальная потребляемая мощность ленты не должна превышать 50Вт.
Это обусловлено контроллером, силовые дорожки которого выдерживают ток до 4А.
Блок питания:
Основными параметрами блока питания являются мощность и выходное напряжение:
1. Так как мы выбрали ленту на 12 вольт, то нам необходим блок питания на это же напряжение.
2. Мощность блока питания определяется лентой.
Рассчитать её не сложно. Для этого необходимо добавить к потребляемой лентой мощности 25% запаса. Для удобного расчёта я вывел формулу. в которой так же учитывается потребление 5 вольтовой части контроллера подсветки и запас мощности. С помощью неё очень удобно рассчитать необходимую мощность для ленты любой длины и потребляемой мощности:
x = 0.3 * (4 * z * y + 1) при x < 50
Где:
x – требуемая мощность блока питания (Вт)
z – длина ленты (м)
y – мощность ленты (Вт)
Например мне нужен блок питания для ленты 1 метр(14.4Вт/м):
x = 0.3 * (4 * 1 * 14.4 + 1)
x = 17.58 Вт
То есть метровая лента потребляет от блока питания 18Вт.
Примечание: максимальная мощность блока питания для этого контроллера должна составлять около 60Вт(при 3.5 метрах ленты 14.4Вт/м), т.к контроллер выдерживает ток до 4А.
Контроллер:
Разработка началась с выбора датчика движения. Решил использовать пирометрический. При обнаружении объекта изменяющего температуру окружающий среды, он посылает высокий сигнал, который мы будем контролировать.
В качестве регулятора яркости использовал потенциометр. Его сопротивление будет измерять АЦП МК. Для непосредственного управления лентой(и регулирования её яркости) поставил силовой MOSFET, который будет использовать ШИМ сигнал с МК. Для управления затвором 5 вольт не достаточно, поэтому добавил 12 вольтовую схему управления. Она обеспечивает необходимое напряжение управления, а так же ускоряет зарядку и разрядку ёмкости затвора для быстрого переключения транзистора.
МК и периферия питаются от линейного стабилизатора, который понижает входное напряжение 12В до 5-ти. В качестве контроллера выбрал ATtiny13a. т.к у него есть АЦП, можно организовать ШИМ и достаточное количество ножек для датчиков.
Печатная плата
Разводка производилась с учётом использования технологии ЛУТ. Все дорожки расположены на нижнем слое, кроме двух перемычек по линии «земли» на верхнем слое. Исходники PDF оставлю в конце статьи.
Программа
Основная задача устройства - регулирование яркости светодиодной ленты. Для этого используется ШИМ, который генерируется на одной из ножек МК.
Для автоматического включения ленты, МК мониторит состояние порта, к которому подключён датчик движения. При возникновении высокого уровня сигнала, начинается отсчёт до выключения. Если во время срабатывания, лента была выключена, то она плавно загорается. Если во время работы ленты срабатывает прерывание, то отсчёт до выключения начинается сначала.
Для регулировки яркости, АЦП снимает показания с потенциометра и заносит их в регистр ШИМа.
Примечание: во время включения ленты, яркость возрастает до значения считанного с АЦП, следовательно до яркости, которая установлена потенциометром.
Чтобы микроконтроллер успевал обрабатывать информацию, я повысил частоту с 1.2МГц(заводскую) до 9.6МГц с помощью фьюз-битов:(E: FF, H: FF, L: 7A). Для этого снял галочку CKDIV8(деление частоты на 8) при инверсной настройке.
Я написал две программы: первая на Си, в ней реализован полный функционал работы с датчиком. Вторая на Ассемблере, в ней реализована только регулировка яркости с помощью потенциометра. Она нужна например если нет датчика или нужно проверить плату на работоспособность.
В конце статьи приложу оба исходника программы.
Корпус
Он выбирается в зависимости от места использования контроллера. Можно установить подсветку в шкаф, в этом случае корпус не нужен. А для установки контроллера на кухне необходим влагозащищенный корпус.
Итог
В конце перечислю возможные варианты модернизации контроллера. На данный момент остаётся два не использованных пина микроконтроллера. На один из них можно установить кнопку и с помощью неё фиксировать подсветку.
А на втором - измерять показания АЦП с фоторезистора и вводить как коэффициент корректировки яркости.
Желаю удачи, тем кто решится повторить проект!
Список радиоэлементов
Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот | |
---|---|---|---|---|---|---|---|
DD1 | МК AVR 8-бит | ATtiny13A | 1 | в DIP корпусе | Поиск в магазине Отрон | ||
DA1 | Линейный регулятор | LM7805 | 1 | Поиск в магазине Отрон | |||
VT1 | MOSFET-транзистор | IRF540NPBF | 1 | Поиск в магазине Отрон | |||
VT2, VT3 | Биполярный транзистор | 2N5551 | 2 | Поиск в магазине Отрон | |||
VD1 | Выпрямительный диод | BYV26C | 1 | Поиск в магазине Отрон | |||
HL1 | Светодиод | 3 мм | 1 | любого свечения | Поиск в магазине Отрон | ||
R1, R6 | Резистор | 10 кОм | 2 | Поиск в магазине Отрон | |||
R3, R4, R7 | Резистор | 1 кОм | 3 | Поиск в магазине Отрон | |||
R2 | Резистор | 470 Ом | 1 | Поиск в магазине Отрон | |||
R5 | Резистор | 10 Ом | 1 | Поиск в магазине Отрон | |||
XP2 | Переменный резистор | 10кОм | 1 | подключается к колодке XP2 | Поиск в магазине Отрон | ||
C1 | Конденсатор | 0.1 мкФ | 1 | Поиск в магазине Отрон | |||
C2 | Конденсатор | 220 мкФ | 1 | Поиск в магазине Отрон | |||
C3 | Конденсатор | 2.2 мкФ | 1 | Поиск в магазине Отрон | |||
XP1 | Разъём | PLS-3 | 1 | датчик HC-SR501 | Поиск в магазине Отрон | ||
XP2 | Разъём | PSL-4 | 1 | потенциометр и свободный порт | Поиск в магазине Отрон | ||
XP3 | Разъём | PLS-6 | 1 | Поиск в магазине Отрон | |||
XS3, XS2 | Разъём | 2x5 мм | 2 | клеммник с шагом контактов 5мм | Поиск в магазине Отрон | ||
Скачать список элементов (PDF)
Прикрепленные файлы:
- BACKLIGHT_no_sensor_ver1_0.hex (1 Кб)
- BACKLIGHT_ver1_0.hex (1 Кб)
- main.asm (2 Кб)
- main.c (2 Кб)
- PCB_BACKLIGHT_ver1_0_1_20191224155625.pdf (29 Кб)
- PCB_BACKLIGHT_ver1_0_1_20191224155706.pdf (27 Кб)
Комментарии (29) | Я собрал (0) | Подписаться
Для добавления Вашей сборки необходима регистрация
Собираюсь повторить, но одно не понятно - как построенный резистор подключать?
По поводу развития проекта:
1. Кнопку лучше сенсорную или бесконтактную.
2. Дополнительный фоторезистор для регулировки яркости - это супер! Нечто подобное я реализовал на двух 555 на кухне. Очень удобно: днем не включается, а когда ночью заходишь - свет не яркий, приглушенный.
[Автор]
По поводу сенсорной кнопки я так примерно и собираюсь.
А по поводу второго фоторезистора не думали? Чтобы яркость ночью была, например, 50%? Выйдешь ночью водички попить - будет не так ярко, но видно.
[Автор]
[Автор]
Так вот, предложенное решение круче и функционалнее + возможность развития.
Так что Ваша ремарка не совсем точна.
[Автор]
А так, конечно хотелось бы полностью нафаршированый проект :)
*режим фантазии ВКЛ
1. Фоторезистор, который будет зажигать ленту на 50-70% яркости в темноте.
2. Возможность включать свет кнопкой(сенсором). Яркость при этом как п1. И что б автовыключение мин через 15. После автовыключения работа как в статье.
*режим фантазии ВЫКЛ.
А плату я разведу, исходя из минимального размера
[Автор]
irf3205
Полностью открывается логическими уровнями, 110А. Нафиг городить каскад из 3х транзисторов, если достаточно одного.
[Автор]
Очень хочется добавить фоторезистор, который будет регулировать яркость свечения ленты в зависимости от внешнего освещения (темно - лента на 50-70% светит, если светло - 100%).
Таким образом, данный проект станет гораздо функциональнее: подсветка в шкафу, кровати, коридора и т.д.
Получится что датчик 501 со штатным ФР будет давать команду на включение начиная с сумерек и в темноте, а ФР о котором я размечтался - регулировать яркость.
Понимаю, можно ФР прикрутить вместо переменника, который уважаемый автор предусмотрел. Но диапазон регулировки будет слишком узким.
[Автор]
[Автор]