Блок с датойБлок с временемБлок с возрастом сайта
Mr.ALB

    Анатолий Беляев (aka Mr.ALB). Персональный сайт

    Да пребудут с вами Силы СВЕТА!

     

    Ардуино (Arduino). #32

    Фонарик с регурировкой яркости

    Фонарик с возможностью регулировки яркости ступенчато на ATTiny13.

    Фонарик с регулируемой яркостью


    Описание

    В ВК в группе Радиолюбитель и Arduino Александр М. обратился с просьбой:

    Здравствуйте, подскажите пожалуйста,
    начал только разбираться с ардуино,
    ну мигаю светодиодом, там герлянда,
    и то все коды беру с интернета,
    пока ещё учусь, но вот понадобилось
    срочно сделать управление нагрузкой
    на тактовой кнопке, с режимами
    похожими на обычный налобный фонарь,
    нажал вкл нагрузка
    Нажал - 70% от мощности
    Нажал - 50 %
    Двойное нажатие отключает полностью,
    но весь интернет перерыл, вроде
    простая задача но в интернете нету,
    ищу под ардуино нано, либо под
    тини 13, тиньку могу запрограммировать
    спокойной нужен лиш код, 
    или какой-то похожий
    

    Тогда добавим в Интернет решение такой задачки улыбка.

    В качестве тренировки в программировании микроконтроллера ATTiny13 написал программу и смакетировал это устройство. Пока до конструкции дело не дошло. Как сделаю конструкцию, то обязательно дополню эту статью, а пока так, как есть.



    Схема

    Схема фонарика простая. Питается устройство от Li-Ion аккумулятора. Модуль заряда аккумулятора DA1 можно использовать любой для Li-Ion, в моём устройстве использован самодельный модуль на основе микросхемы LTC4054, а можно использовать покупной на микросхеме TP4056. Микроконтроллер используется ATTiny13A в корпусе DIP-8, который установлен на плату для программирования. Потом переставлю в панельку в сам фонарик. Кнопка SB1 позволяет настраивать яркость светодиода HL1 за счёт изменения ШИМ (PWM).

    У ATTiny13A для ШИМ(PWM) имеются два вывода: PB0, PB1. Использовал для управления светодиодом вывод PB0, так как другой вывод уже задействован на плате программирования.

    Светодиод HL2 – как индикаторный включения питания, с очень маленьким током потребления. Мощным светодиодом HL1 управляет N-канальный MOSFET IRFZ44. У него низкое напряжение открываания затвора, что в нашей низковольтной схеме достаточно важно.

    Схема фонарика. N-канальный MOSFET
    Pic 1. Схема фонарика. N-канальный MOSFET



    Подписчики просили модернизировать схему под P-канальный транзистор. Ниже привожу такую схему. Мощным светодиодом HL1 управляет P-канальный MOSFET AO3401 (A19T). У него низкое напряжение открывания затвора, а постоянный ток через кристалл до 2А, что вполне достаточно для светодиода 1 Вт (300 мА). Подписчиками проверена работа на P-канальном MOSFET транзисторе IRLML6401.

    Схема фонарика. P-канальный MOSFET
    Pic 2. Схема фонарика. P-канальный MOSFET



    Реализация в фонарике Конструкции 2. Светодиод HL2 подключен к выводу PB2. При выборе яркости 0% HL1 светодиод HL2 включается и указывает, что схема с микроконтроллером находится в рабочем состоянии. Одновременно этот светодиод можно использовать как маячок. При включении HL1 светодиод HL2 гаснет, что экономит электроэнергию аккумулятора. Максимальный ток через светодиоды HL1 и HL2 около 260 мА. Такой ток выбран чтобы экономить электроэнергию аккумулятора и уменьшить нагрев светодиодов, так как при номинальном токе 300 мА светодиоду мощностью 1 Вт требуется площадь радиатора 25...30 см2. Для светодиода HL2 можно установить резистор R9 2E2 (2,2 Ом).

    Полная схема фонарика. P-канальный MOSFET
    Pic 3. Полная схема фонарика. P-канальный MOSFET

    Скетч

    Скетч написан в среде Arduino IDE, соответственно в ней должно быть установлено ядро для ATTiny13. Программатор USBasp.

    Вначале запишите загрузчик с параметрами, которые указаны ниже. Собственно это не как таковой загрузчик, а фьюзы, для правильной работы МК. Такую процедуру нужно сделать всего один раз. Далее уже загружайте сам скетч с помощью программатора USBasp или какого другого, что у Вас есть.

      Установки в Arduino IDE:
      
      Меню -> Инструменты:
        Плата:  "ATTiny13"
        BOD:    "BOD 2.7V"
        EEPROM: "EEPROM retained/not retained"
        Clock:  "1.2 MHz internal osc."
        Расчёт времени: "Micros desabled"
        Программатор:   "USBasp slow (MicroCore)"
      
      Вначале один раз нужно записать загрузчик
      Меню -> Инструменты -> Записать загрузчик:
        Установятся фьюзы для МК
    
      Далее заливаю программу:
        Меню -> Скетч -> Загрузить через программатор
        
    

    Программировал ATTiny13A с помощью USBasp программатора.

    USBasp программатор
    Pic 4. USBasp программатор

    ATTiny13A у меня в корпусе DIP-8, поэтому программирую через небольшую платку с панелькой. Платка похожа на Digispark и стоит около 28...36 P, к её контактам как раз подходит колодка с 6-ю пинами программатора.

    Плата для программирования <i>ATTiny13A</i>
    Pic 5. Плата для программирования ATTiny13A

    Для управления яркостью фонарика используется одна кнопка SB1. При длительном нажатии более 2 секунд фонарик гаснет полностью. Краткими нажатиями возможно установить яркость пошагово: 80%, 50%, 10% и далее по кругу на 100%, 80%, 50%, 10%... Вначале, при подаче питания, LED включается на 100%.

    Версия v1.1. Скетч был модернизирован и проверен под транзистор P-канальный MOSFET AO3401 (A19T). Применил условное компилирование, чтобы в одном скетче совместить два варианта и в то же время уменьшить окончательный размер кода.

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


    Конструкция фонарика

    Конструкция похожа на конструкцию фонарика Двадцатый LED-светильник (фонарик). Эта конструкция зарекомендовала себя надёжностью и удобством за годы использования (с 2017 года).

    Вначале всегда разработка нового устройства проверяется и отлаживается на макете. Ниже на фото показан макет фонарика. В качестве LED в макете используется красный светодиод, потом поставил 1 Вт белый светодиод – работа нормальная, только его нужно ставить на радиатор, так как ток потребления около 250 мА.

    Макет фонарика
    Pic 6. Макет фонарика


    Конструкция 1

    Сама конструкция традиционная. Корпус состоит из двух частей, которые соединяются на защёлках. Вначале сделал конструкцию несколько отличающуюся от прототипа. Как бы такая конструкция легче изготавливалась. Размеры корпуса 130 * 60 * 26 мм, без учёта выступающих элементов: линз светодиодов и выключателей. С линзами длина фонарика 143 мм.

    Фонарик. Конструкция 1. Разные виды
    Pic 7. Фонарик. Конструкция 1. Разные виды

    Что внутри? Как видно на фото ниже, вся начинка уложена компактно. Над аккумулятором располагается небольшая плата с микроконтроллером регулировки яркости. Яркость регулируется только у одного 1 Вт светодиода. Другой светодиод не регулируемый. Аккумулятор литий-полимерный ёмкостью на 1000 мАч.

    Фонарик. Конструкция 1. Разные виды
    Pic 8. Фонарик. Конструкция 1. Разные виды

    В этом фонарике установил уже 3 ультрафиолетовых светодиода. Практика жизни показывает, что ультрафиолет можно использовать и для определения подлинности купюр и для проверки качества сливочного масла. Так известно, что настоящее сливочное масло в свете ультрафиолета выглядит жёлтым, а поддельные масла светятся разными оттенками синего. Светодиоды включаются микрокнопкой, расположенной сверху.

    Фонарик. Конструкция 1. Разные виды
    Pic 9. Фонарик. Конструкция 1. Разные виды

    Фонарик имеет два мощных 1 Вт светодиода. Один со световой температурой 6500К (регулируется яркость), а второй со световой температурой 3200К, что позволяет комбинировать общей световой температурой фонарика, при необходимости.

    Фонарик. Конструкция 1. Разные виды
    Pic 10. Фонарик. Конструкция 1. Разные виды

    В фонарике для зарядки аккумулятора установлен модуль на TP4056 c защитой аккумулятора от сильного разряда. Разъём для зарядки microUSB.

    Фонарик. Конструкция 1. Разные виды
    Pic 11. Фонарик. Конструкция 1. Разные виды

    В нижней крышке фонарика вставлено небольшое индикаторное окно из оргстекла. Через него происходит индикация процесса заряда аккумулятора. Красный цвет – идёт зарядка.

    Фонарик. Конструкция 1. Разные виды
    Pic 12. Фонарик. Конструкция 1. Разные виды

    Синий цвет – зарядка завершена.

    Фонарик. Конструкция 1. Разные виды
    Pic 13. Фонарик. Конструкция 1. Разные виды


    Конструкция 2

    Однако, в общем конструкция 1 оказалась объёмной по сравнению с прототипом и немного попользовавшись новым фонариком решил конструкцию переделать, хотя и с некоторыми отличиями от конструкции прототипа. Ниже несколько фото уже конструкции 2. В общем эти две конструкции отличаются лишь тем, что у второй высота корпуса 18 мм против 26 мм первой, но чтобы переделать, пришлось потратить силы и время... делать сразу легче, чем потом переделывать.

    Фонарик. Конструкция 2. Разные виды
    Pic 14. Фонарик. Конструкция 2. Разные виды

    Что внутри второй конструкции. Видно, что плата с микроконтроллером уже уложена по другому, так как по высоте не проходила на прежнем месте. Крепление радиатора светодиодов несколько иное, пришлось изрядно там всё доработать. Ультрафиолетовые светодиоды на прежнем месте. Пришлось переделывать защёлки корпуса.

    Фонарик. Конструкция 2. Разные виды
    Pic 15. Фонарик. Конструкция 2. Разные виды
    Фонарик. Конструкция 2. Разные виды
    Pic 16. Фонарик. Конструкция 2. Разные виды
    Фонарик. Конструкция 2. Разные виды
    Pic 17. Фонарик. Конструкция 2. Разные виды
    Фонарик. Конструкция 2. Разные виды
    Pic 18. Фонарик. Конструкция 2. Разные виды

    Приложение

    Материалы для повторения:

    Анатолий Беляев.

    . Mr.ALB

    . Mr.ALB
    Предыдущая страница Страница 33 Далее