Поступил мне тут заказ от одного хорошего знакомого, который увлекается рыбалкой. У него был простенький налобный фонарик, который обладал рядом недостатков, но полностью устраивал по размерам и внешнему виду. Ну что ж, для хорошего человека - хорошее дело, ну а для меня - просто тренировка мозгов и рук.
Приступим. Для начала выделю преимущества данного фонарика:
- компактный и легкий корпус;
- возможность регулировки фокуса;
- удобное расположение органов управления (кнопка), учитывая что фонарик налобный.
Теперь недостатки, которых куда больше:
- неудобное управление - три режима которые переключаются по циклическому алгоритму (четвёртый режим "выключено"), то есть если нужный режим пропустил, то надо "прощелкивать" все режимы по кругу, пока не "дощелкаешь" до нужного режима;
- один из режимов - мигающий - вообще бесполезный, только мешает управлению;
- нет контроля состояния аккумулятора, то есть при каждом цикле разряда портит аккумулятор, сильно разряжая его (если не выключить, может посадить аккумулятор до 1...2 вольт);
- нет стабилизации тока, то есть с разрядом аккумулятора яркость постепенно падает;
- заряд аккумулятора идет тупо через резистор, нет никакого контроля зарядного тока и отсутствует правильный алгоритм заряда литий-ионного аккумулятора (при каждом цикле заряда гробит аккумулятор);
- стоИт китайский светодиод с низкой эффективностью;
- стоИт китайский аккумулятор с завышенной емкостью на этикетке.
Теперь о том, что бы хотелось получить в итоге:
- удобное управление режимами, убрать мигающий режим;
- ввести стабилизацию тока через светодиод (поставить драйвер);
- заменить светодиод на более эффективный и надежный (CREE XPG), тёплого свечения (вместо штатного холодного);
- сделать контроль разряда аккумулятора, при разряде аккумулятора выключать фонарик;
- добавить контроллер заряда литий-ионного аккумулятора;
- заменить аккумулятор на нормальный.
Вскрываем корпус фонарика.
Здесь мы видим, что его "мозги" сделаны на основе БИС микросхемы, поэтому они не поддаются никакой модификации.
При замене светодиода на другой светодиод, выходной ток изменился почти на 50%, что говорит об отсутствии какой либо стабилизации тока. Решено выкинуть родную плату и сделать свою. В качестве управляющего контроллера я выбрал ATtiny13A-SSU ввиду следующих основных преимуществ:
- малая цена - около 30 рублей (на момент написания статьи, май 2014г.);
- компактный корпус поверхностного монтажа;
- в режиме сна потребляет менее 500 наноампер (!!!);
- возможность работы при низких напряжениях питания (вплоть до 1.8в);
- возможность работы при температуре ниже 0 градусов.
В качестве драйвера светодиода выбор пал на AMC7135 благодаря следующим характеристикам:
- возможность работы при низких напряжениях питания;
- минимальное падение напряжения на микросхеме - всего 0.15в;
- возможность ШИМ-регулировки яркости светодиода;
- компактный корпус.
Схема драйвера:
Небольшие пояснения о работе схемы и применяемых компонентах. Для измерения уровня заряда аккумулятора, используется АЦП микроконтроллера и внешний источник опорного напряжения (далее ИОН) REF3125 с выходным напряжением 2,5В. Внешний ИОН используется не просто так - с его помощью достигается измерение напряжения аккумулятора с минимальными погрешностями, так как точность встроенного в микроконтроллер ИОН'а оставляет желать лучшего. Управление AMC7135 производится при помощи ШИМ-сигнала, частотой 500 Гц. При отключении драйвера, микроконтроллер отключает AMC7135, обесточивает ИОН, и переходит в спящий режим "Power Down", потребляя менее 1 мкА. Устройство не требует какой-либо настройки и корректировки, и после сборки и прошивки начинает работать сразу. Чтобы можно было выбрать напряжение отключения драйвера "под себя", в конце статьи прилагается архив с прошивками под напряжения 3,1...3,6 Вольт с шагом 0,1В.
Развожу печатку, травлю, запаиваю, пишу софт в AVR Studio 5, прошиваю микроконтроллер. На этапе изготовления платы нужно просверлить отверстия, и соединить перемычками дорожки с обеих сторон платы. Я взял медную жилу от витой пары, залудил её, и сделал из неё перемычки.
Вот что из этого получилось. Печатку и набор прошивок можно скачать в конце статьи.
На одной стороне платы (двусторонняя диаметром 18 мм) разместились все управляющие мозги, на другой стороне платы расположился драйвер светодиода с полигоном из меди для должного охлаждения. Опционально на плату может быть установлена вторая микросхема-драйвер AMC7135 для увеличения максимального выходного тока с 350 мА до 700 мА. Небольшие размеры платы выбраны не случайно - необходимо было уместить драйвер на родное место в корпусе. Вот фотка для оценки размеров получившейся платки:
Родной контроллер управления давал на светодиод следующий ток в режимах:
- 1 режим, примерно 200 мА;
- 2 режим, примерно 60 мА;
- 3 режим, примерно 60 мА (мигающий).
Родной контроллер управляется по следующему алгоритму. При нажатии на кнопку выполнялся переход на следующий режим. 1 --> 2 --> 3 --> ВЫКЛ и так по циклу. Если нужный режим случайно пропустил, то придётся сидеть и "нащёлкивать" пока не дойдёшь до нужного режима. Также для выключения фонарика нужно "прощёлкать" все режимы. О быстром включении/отключении фонарика можно даже и не мечтать.
Моя плата контроллера с драйвером выдает следующие токи в разных режимах:
- 1 режим, 30 мА;
- 2 режим, 130 мА;
- 3 режим, 350 мА (будет использоваться кратковременно, так как в корпусе фонарика не предусмотрено должного охлаждения для светодиода).
Мой контроллер управляется по следующему алгоритму. Однократное (короткое) нажатие выполняет включение/отключение фонарика (с сохранением последнего выбранного режима). Длительное удерживание кнопки выполняет переключение режима на следующий. Таким образом, мы имеем возможность как быстро включать/отключать фонарик, так и менять режимы. Надоедливого и бесполезного режима "мигалки" теперь нету. При снижении напряжения аккумулятора до заданного в "прошивке" уровня, фонарик переходит на предыдущий режим. Тоесть если стоял режим 3, то сначала контроллер включит режим 2, затем фонарик поработает какое-то время, затем включится режим 1, фонарик поработает ещё какое-то время, и только потом он выключится. В интернете уже есть аналогичные конструкции, но они либо имеют управление при помощи разрыва цепи питания, что не всегда оправданно, либо у них не используется режим сна, а это очень важно!!
Итак, выкидываем старые мозги, а также убираем конденсатор, зачем-то подключенный параллельно кнопке. Наверно китайцы боролись с дребезгом контактов. У меня обработка дребезга будет программная, поэтому конденсатор больше не нужен.
Также достаём штатный светодиод, будем менять его на эффективный светодиод CREE XPG с тёплым свечением.
Готовим наш новый светодиод:
Собираем оптический блок:
Теперь встраиваем новую плату управляющего контроллера и драйвера светодиода:
Cобираем корпус:
Таким образом, на внешний вид не произошло никаких изменений, но внутри теперь всё как и должно быть. Контроль разряда аккумулятора, стабилизация тока, нормальное управление режимами, и "правильный" светодиод. В выключенном состоянии контроллер потребляет мало энергии, так как микроконтроллер переводится в режим сна.
Позже был установлен нормальный контроллер заряда аккумулятора на микросхеме MAX1508, а также родной китайский аккумулятор был заменён на внешний блок аккумуляторов, состоящий из 2 оригинальных банок Sanyo UR18650.
В активном режиме микроконтроллер ATtiny13A потребляет менее 500 мкА благодаря работе на тактовой частоте 128 кГц. Также в активном режиме добавляется потребление AMC7135, потребление внешнего ИОН, и потребление внутреннего АЦП микроконтроллера. Суммарный ток потребления в активном режиме зависит от используемого ИОН, и может составлять от 0,1 мА до 1 мА. Я применил ИОН REF3125, суммарное потребление схемы в рабочем режиме составило 0,5...0,8 мА.
ИОН REF3125 можно заменить на аналоги:
- ADR381
- CAT8900B250TBGT3
- ISL21010CFH325Z-TK
- ISL21070CIH325Z-TK
- ISL21080CIH325Z-TK
- ISL60002BIH325Z
- MAX6002
- MAX6025
- MAX6035BAUR25
- MAX6066
- MAX6102
- MAX6125
- MCP1525-I/TT
- REF2925
- REF3025
- REF3125
- REF3325AIDB
- TS6001
Прилагаю небольшое видео, демонстрирующее управление режимами. Видео снято давно, светодиод ещё тогда стоял родной, позже он был заменён на CREE XPG, также стоял родной аккумулятор. Лень было заново снимать видео. Также хочу предупредить, что не каждый программатор поддерживает прошивку микроконтроллеров на частоте 128 кГц. Для прошивки я использовал программатор "USBAsp" со включенной опцией "Slow SCK". Всем удачных самоделок!!
Ниже можно скачать пробную версию прошивки с ограничением по времени работы 10 минут. По истечении тестового времени, гаснет светодиод и блокируется управление. После переподключения аккумулятора, вновь получаем 10 минут тестового времени. Прошивка без ограничений предоставляется по запросу, пишите в личные сообщения.
Список радиоэлементов
Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот |
---|---|---|---|---|---|---|
МК AVR 8-бит | ATtiny13A | 1 | корпус SOIC 208 mil | Поиск в магазине Отрон | ||
Конденсатор | 1 мкФ [0603] | 1 | не менее 1 мкФ | Поиск в магазине Отрон | ||
Резистор | 4.7 кОм [0805] | 2 | или 3...10 кОм | Поиск в магазине Отрон | ||
Резистор | 100 Ом [0805] | 1 | или 50...300 ом | Поиск в магазине Отрон | ||
ИС источника опорного напряжения | REF3125 | 1 | или аналогичный ИОН | Поиск в магазине Отрон | ||
Кнопка | Любая без фиксации | 1 | Поиск в магазине Отрон | |||
Скачать список элементов (PDF)
Комментарии (49)
|
Я собрал (0) |
Подписаться
Для добавления Вашей сборки необходима регистрация
[Автор]
Немного не по теме. Не понимаю Вашего знакомого. Он наверняка тратит кучу денег на снаряжение для рыбалки/охоты, а купить нормальный фонарик - жаба давит? Лучше кента загрузить, так сказать пусть из любви к искусству работает. Просто у меня тоже такие знакомые есть, обращаются - типа доведи до ума.
[Автор]
Насчёт режимов - не соглашусь, нащелкивать кнопку нет никакого удовольствия... Фонарик чаще всего используется на среднем режиме, поэтому включение и отключение одним кликом - очень удобно
[Автор]
Хотя понимаю - любимое дело логике не поддается. Удачи Вам.
[Автор]
Управляющий контроллер жрёт менее 1мА в рабочем режиме. С ним всё отлично, его потребление можно даже не брать в расчёты.
Драйвер питается от литий-ионного аккумулятора, напряжение 3,6...4,2v. На светодиоде падает примерно 3,2v.
Предположим, аккумулятор заряжен (4.2v). Фонарик включен на максимуме (350 мА).
4,2v - 3,2v = 1v
1v * 0.35a = 0.35w идёт в тепло
3,2v * 0.35a = 1,12w потребляет светодиод
4,2v * 0.35a = 1.47w общее потребление
1,12 / 1,47 = 0,76 (КПД 76 %)
Предположим, аккумулятор практически разряжен (3,6v). Фонарик включен на максимуме (350 мА).
3,6v - 3,2v = 0.4v
0.4v * 0.35a = 0.14w идёт в тепло
3,2v * 0.35a = 1,12w потребляет светодиод
3.6v * 0.35a = 1.26w общее потребление
1,12 / 1,26 = 0,88 (КПД 88 %)
Применив импульсный преобразователь, можно поднять КПД выше 90%. Например, если мы имеем мощный аккумулятор на 4000 мА*ч, и выигрыш составит 10...15 %, то это будет уже серьезная разница...
Заряжать литий нужно правильно, иначе кол-во циклов жизни аккума вместо 1000...1500 резко сократится до 100...300
[Автор]
Минимальное падение на AMC7135 всего 0,12В
Также вряд ли у вас есть автовыключение при разряде
[Автор]
Насчет бесконтактной зарядки - приму к сведению, удобно пользоваться
HOLD_TIME 1500
[Автор]
[Автор]
В принципе я тоже чётко замечаю частоту 500 Гц, выбор обусловлен тем, что один и тот же таймер одновременно занимается генерацией ШИМ и обработкой нажатий кнопки. Например, если сделать 100 Гц - слишком заметно мерцание, если сделать 5000 Гц - слишком часто будет вызываться обработчик кнопки.
500 Гц - самый оптимальный вариант. Покачто прошивку переделывать не планирую.
P.S. В любом случае большое спасибо за проделанную работу и прошивки! Будем пробовать!
[Автор]
Вот видео в ютубе где видно как выглядит (начинка). И еще у вас на лоте в продаже есть указаная в эт ом блоге схемка и еще вторая. В чем различие и какая подойдет лучше мне.
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
Без него не работает.
Как быть и включить без него ?
Одну тиньку уже убил при программировании, осталась одна и думаю и она уже не прошьется второй раз. Ведь ее ФУЗЫ выставлены теперь не стандартными.
[Автор]
Чем шьёте фузы?