Индикатор разряда батарей для Duo

После сборки «минипрожектора» http://www.speleokiev.org.ua/forum/viewtopic.php?f=6&t=266 выяснилось, что внутри полно свободного места (Рис. 1) которое нехорошо оставлять незадействованным. Перебрав несколько вариантов, чего бы туда запихнуть, остановился на простом индикаторе состояния батарей. Ранее хотел туда запихнуть еще и термоконтроль, и разные режимы освещения, но в результате тестов стало ясно, что термоконтроль не нужен, так как радиатор нагревается не выше 50С. Разные режимы тоже не нужны, скорее всего, даже мешают, потому что девайс используется только на максимальной мощности. Итого из всей задумки полезным остался только индикатор разряда, который предупредит о скором разряде батарей и не даст убить аккумы, если таковые используются.

Идея, как реализовать индикатор была позаимствована у дяди Petzl'а. Мигающий светодиодик, если мигает зеленым - батареи нульцовые, если желтым – чуток поюзаные, если оранжевым – хорошо поюзаные, а если красным – готовимся их менять. Реализовать такую задумку проще всего на микроконтроллере и RGB светодиоде. Также можно поизвращатся с супервизорами, компараторами, но это в мои планы не входило, поскольку готовое устройство должно отличаться компактностью. В закромах был найден AtTiny45 (далее МК) в корпусе SO-8 и маломощный SMD RGB светодиод, а также немного мелочевки. Была нарисована принципиальная схема (Рис.2) и эскиз платки (Рис.3).


Так, как новые, последовательно соединенные 4 АА батарейки в сумме дают напряжение около 6,4В, а контроллеру максимум можно скормить 5,5В в схему был введен диод D1 и резистор R1, которые гасят «лишнее» напряжение. Делитель R2-R3 обеспечивает подачу сигнала на АЦП не более 2,56В, потому что для «оцифровки» используется внутренний источник опорного напряжения на 2,56В (встроен в МК). Конденсаторы С1, С2 – блокировочные. Светодиод D2 – RGB с общим анодом, в одном корпусе размещен красный, зеленый и синий диод (синий мы использовать не будем). Изменяя токи через каждый из диодов, можно выжать практически любой цвет из видимого спектра. Это мы будем делать с помощью встроенного в МК аппаратного ШИМ. Резистор R4 выставляет общую яркость индикации. Также не забываем подключать Reset МК к + питания, иначе возможны глюки в работе. Источником тактирования Tiny45 будет выступать встроенный RC генератор на 8 Мгц. Платку стараемся сделать поменьше, чтобы влезла в корпус Ж), у меня плата получилась 25х15мм (Рис. 4).
Для управления МК была написана программа на С. Программа проста, как два пальца, инициализируется порты ввода-вывода, ШИМ, АЦП, после чего в вечном цикле считывается напряжение с АЦП и мигает соответствующим цветом (Рис.5). Также в начале программы для красоты добавил попеременное мигание красным и зеленым, что сигнализирует удачный старт МК.


Теперь осталось дело за малым – запрограммировать контроллер. За этим отсылаю сюда: http://avr.nikolaew.org/progr.htm, где популярно описано, как это можно сделать. В двух словах это выглядит так: подпаиваемся к контроллеру 5 проводков, на ножки 1,4,5,6,7, эти проводки очень аккуратно, согласно даташиту на МК http://atmel.com/dyn/resources/prod_documents/doc2586.pdf (чтобы ничего не спалить) тыкаем в свой LPT или COM порт и с помощью специальной софтины заливаем файл прошивки. Готовую программу и бинарники можно взять отсюда: http://depositfiles.com/ru/files/ga0xdltwg (проект в AVR Studio 4 в связке с WinAvr)
После тестов, платка индикации была втиснута в мой Duo (Рис.6). Для демонстрации было добавлено видео http://www.youtube.com/user/vakulasergio#p/a/u/0/lMGau2HEqg4 работы девайса. На видео с помощью потенциометра меняю напряжение питания и смотрю на реакцию. Индикатор потребляет всего 3мА тока, при сравнении с 260мА, что потребляет «минипрожектор» кажется сущей ерундой.

Некоторые могут заметить: «Зачем мол использовать дорогой Tiny45 под такую мелкую поделку как индикатор разряда, ведь Tiny13 минимум в раза 2 дешевле». Нерационально. Соглашусь с этим, но во время ваяния устройства в закромах был только Tiny45 в соике, а специально ездить на радиорынок за Tiny13-м было лень Ж) Как буду делать еще один такой – переделаю под 13-ю тиньку.
 
круто, только вот нафига теперь многодиодная сборка? Она ж синяя и электричеств этих жрёт немеряно
 
О, знакомые люди.
Ты лучше сделай на тиньке 45й весь фонарь - и управление током и режими и контроль заряда.
XP-G держить до 1.5 А, сделай максисмум в 1 А а рефимами уже выдирай что нужно.
 
О, знакомые люди.
Ты лучше сделай на тиньке 45й весь фонарь - и управление током и режими и контроль заряда.
XP-G держить до 1.5 А, сделай максисмум в 1 А а рефимами уже выдирай что нужно.

1 А много - надо шаманить с радиатором...
 
Многодиодную сборку удобно юзать на длительные выходы, когда не нужен яркий свет и нужно сэкономить батарей. У меня она даже чуток желтая, опыт пользования положительный.

Ты лучше сделай на тиньке 45й весь фонарь - и управление током и режими и контроль заряда.
XP-G держить до 1.5 А, сделай максисмум в 1 А а рефимами уже выдирай что нужно.

Уже сделал :) Есть индикация разряда батарей (как у тикки хп и мои хп, мигает диодик, его цвет сигнализирует состояние батарей ) + прикрутил 2 режима:
нормальный (0,41А через диод) и буст (0,92А через диод, но на 30 сек, диод может перегреться). Напишу об этом чуть попозже.
 
Круто!
А не подскажите, как собрать что-нить простенькое с одним диодом, который загорался бы при падении ниже 10,5В? Сам от схемотехники далёк... =(
 
Сверху