8

Заставим простую гирлянду на батарейках красиво мигать с помощью arduino.

Новый год близко. И решил я замутить гирлянду с разными эффектами мигания. Завалялась у меня с 2015 года подаренная в поход простая гирлянда на батарейках. При включении она просто горела и всё. Состоит она из 15 параллельных светодиодов подключённых к паре пальчиковых батареек.

И вот что я решил сделать.


Самое простое это разорвать цепь питания и подключить светодиоды к батарейкам через управляемую оптопару PVT322S. Оптопара нужна для потому, что ток в цепи питания гирлянды составляет > 60 мА, максимальный ток контактов управления 40 мА. Управление питанием я сделал на Arduino mini. К одному из контактов Arduino я подсоединил через резистор 1кОм управляющий контакт оптопары.


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


Всего реализовано 3 режима мигания.


1) Простое мигание гирлянды. С разными паузами включения и выключения светодиодов. Гирлянда включается и выключается от 3-х до 7-ми раз.


2) Плавное включение светодиодов и плавное выключение светодиодов. 3 - 7 раз.


3) Плавное включение светодиодов и резкое выключение. 3 - 7 раз.


На этих режимах моя художественная фантазия кончилась.


Плату управления я запаял на небольшой макетке. Получилось классно.


Это был первый вариант свечения гирлянды. Но это мне показалось скучным. У меня микроконтроллер, а я просто включаю и выключаю светодиоды. Надо реализовать управление.


Вот что я сделал. К ещё двум контактам я подключил кнопку и тумблер. Тумблером микроконтроллер переводиться в режим выбора вариантов мигания. Можно нажимая на кнопку выбрать как один любой вариант свечения, так и любые сочетания. Контролировать варианты свечения можно по трем дополнительным светодиодам на плате управления. Каждый диод на плате соответствует одному режиму мигания.


Программировал плату я целый день. Я не силён в программировании, по-этому часто получалось что что-то не работает вообще или работает не так. Искать ошибки в программе это попа. Очень долго. И вроде на вид код рабочий, а на самом деле нет.


Код выложу в комментариях.


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

P.S. Это мой первый пост