Запрошуємо, Гість
Ім'я користувача: Пароль: Запам’ятати мене

ТЕМА: универсальный индикатор состояния аккумулятора

универсальный индикатор состояния аккумулятора 04 вер. 2019 11:13 #1

  • plasmacut
  • plasmacut аватар
  • онлайн
  • habitue
  • Дописи: 223
  • Подякували: 13
Делаю для сына блок очистки и подачи воздуха в сварочную маску. Он у меня по профессии сварщик. Столкнулся с проблемой индикации состояния батареи аккумуляторов 18650 (6шт. параллельно). В сети полно всяких устройств. В основном они на TL431. Собрал несколько. Они мне не понравились. Требуют тщательной регулировки и подбора даже светодиода, т.к. от падения напряжения на нем зависит работа устройства. Хотелось бы сделать компактное автономное устройство например на Attiny13, которое будет контролировать напряжение на аккумуляторе в заданных пределах и зажигать два светодиода. Зеленый, постоянно горит, когда выше порога (2.9-3.0в), и мигающий красный, если ниже порога. Также по возможности отдельный выход на управление реле или транзистором. Тут еще вопрос работы контроллера от напряжения около 2.85-3.0в, т.к. предполагается питание от этого же аккумулятора. В крайнем случае можно поставить миниатюрный китайский преобразователь на 5в. На рассыпухе делать не хочется ввиду не только громоздкости, но необходимости подбора номиналов для контроля уровней напряжения. У меня вопрос к уважаемому Soir: Реально ли сделать такое устройство?
Увійдіть до облікового запису, щоб писати повідомлення.

универсальный индикатор состояния аккумулятора 04 вер. 2019 11:37 #2

  • Айнцвайдрайченко
  • Айнцвайдрайченко аватар
  • Оффлайн
  • Модератор
  • Дописи: 889
  • Подякували: 368
  • sxem.org 2019,2020,2021,2022,2023 zavsehdatay Author
Такой подойдёт?

Прошивку выложу вечером.
СЛАВА УКРАЇНІ!
Ганьба агресору, смерть окупантам!
Останнє редагування: 04 вер. 2019 23:29 від Айнцвайдрайченко.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: plasmacut

универсальный индикатор состояния аккумулятора 04 вер. 2019 15:11 #3

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5142
  • sxem.org 2019,2021 Respect Author
Похожий проект у меня уже есть, немного адаптировал под Ваши запросы. Описание настройки и все материалы в архиве. Что непонятно - спрашивайте, что не так - пишите.
Долучення:
Останнє редагування: 05 вер. 2019 13:17 від Soir. Причина: Обновление прошивки
Увійдіть до облікового запису, щоб писати повідомлення.

универсальный индикатор состояния аккумулятора 04 вер. 2019 16:25 #4

  • plasmacut
  • plasmacut аватар
  • онлайн
  • habitue
  • Дописи: 223
  • Подякували: 13
В Протеусе погонял. Вроде все работает нормально: значения установок потенциометра записываются в EEPROM. Выход OUT срабатывает. Светодиоды горят как надо. У меня вопрос по работоспособности устройства на малых напряжениях питания (2.8 - 3в). Будет ли оно работать? Кажется у контроллеров AVR есть режим работы на малых напряжениях питания? Или однозначно надо делать стабильное питание 5в?
Если надо 5в, посоветуйте какую схему преобразователя применить для минимального потребления им мощности от аккумуляторов?
Останнє редагування: 04 вер. 2019 16:51 від plasmacut.
Увійдіть до облікового запису, щоб писати повідомлення.

универсальный индикатор состояния аккумулятора 04 вер. 2019 16:56 #5

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5142
  • sxem.org 2019,2021 Respect Author
Согласно даташит, ATTINY13 работает до 2,7V. МК с буквой V - до 1,8V.
Останнє редагування: 04 вер. 2019 16:57 від Soir.
Увійдіть до облікового запису, щоб писати повідомлення.

универсальный индикатор состояния аккумулятора 04 вер. 2019 17:47 #6

  • plasmacut
  • plasmacut аватар
  • онлайн
  • habitue
  • Дописи: 223
  • Подякували: 13
Уважаемый Soir, у меня такие вопросы:

- нужно ли в коде программы что-либо менять для работы на низких напряжениях (в данном случае 2.7в), чтобы объяснить контроллеру, что напряжение питания не 5в, а ниже?

- подскажите как в случае работы от питания 2.7в контроллер измеряет напряжение? В варианте питания от 5в, все ступеньки АЦП (кажется их 1024) - это 5в. Если при этом надо например индицировать максимум 10в, то с помощью резисторного делителя делим входное напряжение, так чтобы на входе АЦП из 10 в получилось 5в. В нашем случае при питании устройства от Li-Ion аккумулятора, напряжение питания "плавает" от 2.7 до 4.2в. Его же мы и собираемся измерять. Я понимаю, что есть внутренний источник опорного напряжения. В сравнении с ним идет измерение. Какое напряжение на входе АЦП соответствует максимальному числу ступенек? Не будут ли при изменении напряжения питания меняться установленные пороги напряжения зажигания светодиодов?
Останнє редагування: 04 вер. 2019 17:49 від plasmacut.
Увійдіть до облікового запису, щоб писати повідомлення.

универсальный индикатор состояния аккумулятора 04 вер. 2019 18:32 #7

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5142
  • sxem.org 2019,2021 Respect Author
plasmacut пише:
объяснить контроллеру, что напряжение питания не 5в, а ниже?
Нет, ему все равно. В FUSE ему указано, чтобы ниже 1,8V не работал, но можно и это отменить.

plasmacut пише:
Я понимаю, что есть внутренний источник опорного напряжения. В сравнении с ним идет измерение. Какое напряжение на входе АЦП соответствует максимальному числу ступенек?
Внутренний источник 1,1V. Поэтому в пределах "плавания" все должно работать адекватно. Светодиоды буду переключаться как им и положено. Конечно, если им будет достаточно напряжения питания.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: plasmacut

универсальный индикатор состояния аккумулятора 04 вер. 2019 23:28 #8

  • Айнцвайдрайченко
  • Айнцвайдрайченко аватар
  • Оффлайн
  • Модератор
  • Дописи: 889
  • Подякували: 368
  • sxem.org 2019,2020,2021,2022,2023 zavsehdatay Author
Вот прошивка для схемы Eddy71:

Вкладений файл:

Назва файлу: 58_BattControl.zip
Розмір файлу:1 KB
СЛАВА УКРАЇНІ!
Ганьба агресору, смерть окупантам!
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: plasmacut

универсальный индикатор состояния аккумулятора 05 вер. 2019 10:42 #9

  • plasmacut
  • plasmacut аватар
  • онлайн
  • habitue
  • Дописи: 223
  • Подякували: 13
Уважаемый Soir. У меня небольшая просьба: оставьте моргание красного светодиода вместо его отключения при снижении напряжения ниже установленного уровня. Пусть он моргает пока это позволяет напряжение аккумулятора.
Еще такой вопрос: поскольку блок индикации называется "универсальный", прошу пояснить на какие максимальные входные напряжения можно его применять? Как я понимаю в любом случае за счет входного делителя максимально возможное напряжение нужно поделить и привести к уровню на входе U_Batt не более напряжения питания? Или может не более 1.1В равного напряжению внутреннего источника?
Останнє редагування: 05 вер. 2019 10:52 від plasmacut.
Увійдіть до облікового запису, щоб писати повідомлення.

универсальный индикатор состояния аккумулятора 05 вер. 2019 13:25 #10

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5142
  • sxem.org 2019,2021 Respect Author
plasmacut пише:
оставьте моргание красного светодиода вместо его отключения при снижении напряжения ниже установленного уровня.
Обновил прошивку в сообщении №3.

plasmacut пише:
на какие максимальные входные напряжения можно его применять?
Согласно даташит работоспособность контроллера сохраняется в пределах напряжения питания 2,7-5,5V. Для контроллеров, имеющих в обозначении букву V, нижний предел питания 1,8V.
Входной делитель должен быть подобран таким, чтобы напряжение на входе в МК не превышало 1,1V.

Что касается именно этой разработки, то требования к делителю не такие жесткие. Главное, чтобы настройки находились в пределах измерения. То есть, на вход МК можно подать и полное напряжение питания. Но все, что более 1,1V МК преобразует в 1023 (здесь на самом деле в 255).
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: plasmacut

универсальный индикатор состояния аккумулятора 12 вер. 2019 08:45 #11

  • plasmacut
  • plasmacut аватар
  • онлайн
  • habitue
  • Дописи: 223
  • Подякували: 13
Уважаемый Soir. Начитался я в сети о возможности возгорания литиевых аккумуляторов, и подумал, что неплохо бы предусмотреть в этом устройстве защиту по температуре. Вспомнил, что в некоторых фирменных контроллерах зарядки можно найти датчик температуры (терморезистор). Предлагаю предусмотреть его использование на ADC2, а кнопку KEY перекинуть на свободный вывод. Терморезистор подключаем между выводом контроллера и VCC, а между этим же выводом и общей шиной постоянный резистор. Вместе с терморезистором получится делитель напряжения. При нагревании сопротивление терморезистора уменьшится , что обеспечит рост напряжения на входе ADC2, и при заданном при калибровке напряжении отключится выход Out. Если нет желания использовать датчик температуры, то просто закорачиваем эту ножку на "общий". Если используем, то при первом включении после калибровок напряжений переключения светодиодов и выхода Out, калибруем по такому же принципу вход ADC2.
Увійдіть до облікового запису, щоб писати повідомлення.

универсальный индикатор состояния аккумулятора 12 вер. 2019 09:33 #12

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5142
  • sxem.org 2019,2021 Respect Author
plasmacut пише:
кнопку KEY перекинуть на свободный вывод.
Проблема в том, что свободного вывода нет.
Теоретически можно использовать вывод PC5 (pin 1), но если его занять, тогда перепрошить МК можно будет только параллельным программатором (или FUSE доктор).

Можно попытаться объединить кнопку с каким-либо светодиодом (небольшие изменения в схеме). Тогда вывод освободится.
Увійдіть до облікового запису, щоб писати повідомлення.

универсальный индикатор состояния аккумулятора 12 вер. 2019 19:59 #13

  • plasmacut
  • plasmacut аватар
  • онлайн
  • habitue
  • Дописи: 223
  • Подякували: 13
Да, кажется где то встречал, что на выводы индикатора вешают еще клавиатуру. Если можно, неплохо бы сделать аналогично: на один из выводов светодиодов навесить кнопку, а освободившийся от нее вывод запустить на измерение напряжения от термодатчика. Пока не понимаю как показать светодиодами, что срабатывание произошло от датчика температуры. Может одновременное моргание зеленого и красного будет означать, что температура превышена? Начинаю осознавать прелесть 8-ногого контроллера - малые габариты при относительно неплохой функциональности.
Останнє редагування: 12 вер. 2019 20:05 від plasmacut.
Увійдіть до облікового запису, щоб писати повідомлення.

универсальный индикатор состояния аккумулятора 12 вер. 2019 21:21 #14

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5142
  • sxem.org 2019,2021 Respect Author
plasmacut пише:
Начинаю осознавать прелесть 8-ногого контроллера - малые габариты при относительно неплохой функциональности.
Скоро Вы разочаруетесь по поводу функциональности. Выводов уже не хватает, а следом не факт, что хватит памяти... Завтра посмотрю, что получается или не получается...
Увійдіть до облікового запису, щоб писати повідомлення.

универсальный индикатор состояния аккумулятора 13 вер. 2019 00:56 #15

  • plasmacut
  • plasmacut аватар
  • онлайн
  • habitue
  • Дописи: 223
  • Подякували: 13
к Atmega всегда можно успеть перейти. Зато в устройствах, где нужна компактность и минимум обвески они привлекательны. Я не слежу за появлением новинок в контроллерах, но в радиолюбительском Интернете массово применяют в основном Atmega8, Attiny2313 И Attiny13. Надеюсь, что этот индикатор превратится с Вашей помощью и в устройство безопасного контроля за аккумулятором.
Увійдіть до облікового запису, щоб писати повідомлення.

универсальный индикатор состояния аккумулятора 13 вер. 2019 11:35 #16

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5142
  • sxem.org 2019,2021 Respect Author
Изменения в схеме, см. вложение.

Изменения в алгоритме.
Установка. После установки пороговых напряжение для аккумулятора, установка максимальной температуры. Зеленый светодиод включен постоянно, красный мигает.

Работа.
При превышении температуры (увеличение напряжения TERMO) выход отключается, красный и зеленый светодиоды перемигиваются. Устройство блокируется до отключения питания.

P.S.
Теперь яркость светодиодов максимальная, подбирайте резисторы.
Долучення:
Останнє редагування: 19 вер. 2019 14:03 від Soir. Причина: Обновление прошивки
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: plasmacut, LOGR

универсальный индикатор состояния аккумулятора 13 вер. 2019 23:23 #17

  • plasmacut
  • plasmacut аватар
  • онлайн
  • habitue
  • Дописи: 223
  • Подякували: 13
Запускаю предыдущую прошивку в Протеусе- все нормально. В последней с датчиком T выдает ошибку. Экранную копию сообщения прилагаю
Увійдіть до облікового запису, щоб писати повідомлення.

универсальный индикатор состояния аккумулятора 14 вер. 2019 06:15 #18

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5142
  • sxem.org 2019,2021 Respect Author
Обновил проект.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: plasmacut

универсальный индикатор состояния аккумулятора 14 вер. 2019 20:51 #19

  • plasmacut
  • plasmacut аватар
  • онлайн
  • habitue
  • Дописи: 223
  • Подякували: 13
Проверил в Протеусе. Все работает четко. Давно не прошивал контроллеры. Раньше использовал AVREAL от параллельного порта. Работает очень быстро, в отличие от USB. Специально покупал новый компьютер с LPT портом. К сожалению наткнулся на проблему в Win10. Не работает DLIO.sys программа, которая нужна программатору. Пришлось заказать китайский USB программатор. Приедет на неделе. Буду пробовать в железе.
Увійдіть до облікового запису, щоб писати повідомлення.

универсальный индикатор состояния аккумулятора 19 вер. 2019 13:03 #20

  • plasmacut
  • plasmacut аватар
  • онлайн
  • habitue
  • Дописи: 223
  • Подякували: 13
Уважаемый Soir, сегодня я проверил обе прошивки на реальном железе. Та, что только с контролем напряжения аккумулятора(пост #3) работает как задумано. В последней, которая с контролем температуры имеется такой недостаток: все начальные настройки с помощью тактовой кнопки и сигналов на входах проходят нормально. После установки напряжения соответствующего порогу температуры и нажатия кнопки начинают перемигиваться зеленый и синий светодиоды. Дальше я отключаю питание и снижаю напряжение на температурном входе, что фактически соответствует нормальной температуре при которой устройство должно работать в нормальном режиме. Однако при включении питания, несмотря на низкое напряжение на входе температуры, устройство остается в режиме аварии: светодиоды перемигиваются и выход OUT отключен (низкий уровень). Прошу исправить работу программы, так чтобы при отключении и затем подаче питания, если на входе T напряжение ниже порога, устройство переходило в нормальный режим.
Останнє редагування: 19 вер. 2019 13:06 від plasmacut.
Увійдіть до облікового запису, щоб писати повідомлення.

универсальный индикатор состояния аккумулятора 19 вер. 2019 14:05 #21

  • Soir
  • Soir аватар
  • Оффлайн
  • Moderator
  • Дописи: 13512
  • Подякували: 5142
  • sxem.org 2019,2021 Respect Author
Исправил, проверьте еще. По-моему, там еще при установке температуры кажется светодиоды надо бы по-другому... но тут как скажете. Если устраивает, то пусть так и остается.
Увійдіть до облікового запису, щоб писати повідомлення.
Користувачі які сказали Дякую: plasmacut

универсальный индикатор состояния аккумулятора 20 вер. 2019 15:17 #22

  • plasmacut
  • plasmacut аватар
  • онлайн
  • habitue
  • Дописи: 223
  • Подякували: 13
Результаты подробного тестирования, для тех, кто будет собирать эту конструкцию.
Поскольку предусмотрено питание индикатора от того же аккумулятора, начал проверять именно в таком варианте, а не как сначала, питая контроллер от стабильного напряжения и подавая на его вход напряжение иммитирующее измеряемое на Li-Ion аккумуляторе. При этом проявилась нестабильность запоминаемых значений напряжений отключения выхода OUT, напряжений зажигания/погасания светодиодов, напряжения снимаемого от термодатчика. Пришлось применить простейший стабилизатор для питания контролера и цепи запитки датчика температуры. Под руками не оказалось нужных низковольтных стабилитронов или TL431 Для этого использовал КС119+ КД521 включенный в прямом направлении. Итого получил 2.6в. По идее еще можно было использовать светодиод, включенный в прямом направлении. Результат получился сразу обнадеживающий. Все запоминаемые значения стали отрабатываться нормально при изменении питающего напряжения от 2.7 до 5в.
Увійдіть до облікового запису, щоб писати повідомлення.
Модератори: wolf2000, Vakula, Айнцвайдрайченко, Soir